diff options
author | Marius Bakke <mbakke@fastmail.com> | 2020-01-21 21:34:41 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2020-01-21 21:34:41 +0100 |
commit | 715110a8a2e9e4b1a89635950744eb5260b8ee7f (patch) | |
tree | 0d0e4c41631092a068d8b0823f4d6b0a8d725eed | |
parent | b3c2ebda5bcedcfb88475e53b7f36c3a42cac8b4 (diff) | |
parent | 79e074ea10875ff75ca613179c70de12d64b19f5 (diff) | |
download | guix-715110a8a2e9e4b1a89635950744eb5260b8ee7f.tar.gz |
Merge branch 'master' into staging
189 files changed, 7644 insertions, 2452 deletions
diff --git a/.mailmap b/.mailmap index daab7c91a1..23b5b6a1c4 100644 --- a/.mailmap +++ b/.mailmap @@ -6,6 +6,7 @@ Al McElrath <hello@yrns.org> <hello@atonesir.com> Alex Sassmannshausen <alex@pompo.co> <alex.sassmannshausen@gmail.com> Alexander I. Grafov <grafov@gmail.com> Alírio Eyng <alirioeyng@gmail.com> +Amin Bandali <mab@gnu.org> <bandali@gnu.org> Amirouche Boubekki <amirouche@hypermove.net> Andreas Enge <andreas@enge.fr> <andreas.enge@inria.fr> Andreas Enge <andreas@enge.fr> <privat@xobs-novena> diff --git a/build-aux/git-authenticate.scm b/build-aux/git-authenticate.scm index 106c843c25..980a6d8e9f 100644 --- a/build-aux/git-authenticate.scm +++ b/build-aux/git-authenticate.scm @@ -59,7 +59,8 @@ ("arunisaac" "7F73 0343 F2F0 9F3C 77BF 79D3 2E25 EE8B 6180 2BB3") ("atheia" - "3B12 9196 AE30 0C3C 0E90 A26F A715 5567 3271 9948") + ;; primary: "3B12 9196 AE30 0C3C 0E90 A26F A715 5567 3271 9948" + "9A2B 401E D001 0650 1584 BAAC 8BC4 F447 6E8A 8E00") ("bavier" ;; primary: "34FF 38BC D151 25A6 E340 A0B5 3453 2F9F AFCA 8B8E" "A0C5 E352 2EF8 EF5C 64CD B7F0 FD73 CAC7 19D3 2566") diff --git a/configure.ac b/configure.ac index 69ab9a97b8..06e86c209f 100644 --- a/configure.ac +++ b/configure.ac @@ -93,7 +93,7 @@ m4_pattern_forbid([^GUIX_]) dnl Search for 'guile' and 'guild'. This macro defines dnl 'GUILE_EFFECTIVE_VERSION'. -GUILE_PKG([2.2]) +GUILE_PKG([3.0 2.2]) GUILE_PROGS if test "x$GUILD" = "x"; then AC_MSG_ERROR(['guild' binary not found; please check your guile-2.x installation.]) diff --git a/doc/contributing.texi b/doc/contributing.texi index 5d5d50c3c0..c6586a2adf 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -240,7 +240,7 @@ that it finds source files from your checkout: To actually edit the code, Emacs already has a neat Scheme mode. But in addition to that, you must not miss -@url{http://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides +@url{https://www.emacswiki.org/emacs/ParEdit, Paredit}. It provides facilities to directly operate on the syntax tree, such as raising an s-expression or wrapping it, swallowing or rejecting the following s-expression, etc. diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi index 7c3860fbf5..477b7e3dff 100644 --- a/doc/guix-cookbook.texi +++ b/doc/guix-cookbook.texi @@ -1139,14 +1139,10 @@ For the other build systems, such as ASDF, Emacs, Perl, Ruby and many more, the process is very similar to the GNU build system except for a few specialized arguments. -Learn more about build systems in -@itemize -@item -@uref{https://www.gnu.org/software/guix/manual/en/html_node/Build-Systems.html#Build-Systems, the manual, section 4.2 Build systems}, -@item -the source code in the @samp{$GUIX_CHECKOUT/guix/build} and +@xref{Build Systems,,, guix, GNU Guix Reference Manual}, for more +information on build systems, or check the source code in the +@samp{$GUIX_CHECKOUT/guix/build} and @samp{$GUIX_CHECKOUT/guix/build-system} directories. -@end itemize @node Programmable and automated package definition @subsection Programmable and automated package definition diff --git a/doc/guix.texi b/doc/guix.texi index d2038d18e1..d674b9484f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -70,6 +70,8 @@ Copyright @copyright{} 2019 Kyle Andrews@* Copyright @copyright{} 2019 Alex Griffin@* Copyright @copyright{} 2019 Guillaume Le Vaillant@* Copyright @copyright{} 2020 Leo Prikler@* +Copyright @copyright{} 2019, 2020 Simon Tournier@* +Copyright @copyright{} 2020 Wiktor Żelazny@* Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -743,7 +745,8 @@ GNU Guix is available for download from its website at GNU Guix depends on the following packages: @itemize -@item @url{https://gnu.org/software/guile/, GNU Guile}, version 2.2.x; +@item @url{https://gnu.org/software/guile/, GNU Guile}, version 3.0.x or +2.2.x; @item @url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt}, version 0.1.0 or later; @item @@ -1095,7 +1098,7 @@ similar file. It can be converted to the OpenSSH format using @command{lsh-export-key} (@pxref{Converting keys,,, lsh, LSH Manual}): @example -$ lsh-export-key --openssh < /etc/lsh/host-key.pub +$ lsh-export-key --openssh < /etc/lsh/host-key.pub ssh-rsa AAAAB3NzaC1yc2EAAAAEOp8FoQAAAQEAs1eB46LV@dots{} @end example @@ -2002,6 +2005,8 @@ Access to @file{/dev/srX} usually requires root privileges. Once this is done, you should be able to reboot the system and boot from the USB stick or DVD. The latter usually requires you to get in the BIOS or UEFI boot menu, where you can choose to boot from the USB stick. +In order to boot from Libreboot, switch to the command mode by pressing +the @kbd{c} key and type @command{search_grub usb}. @xref{Installing Guix in a VM}, if, instead, you would like to install Guix System in a virtual machine (VM). @@ -5929,12 +5934,12 @@ Guile Reference Manual}). The value of these arguments is usually evaluated in the @dfn{build stratum}---i.e., by a Guile process launched by the daemon (@pxref{Derivations}). -The main build system is @var{gnu-build-system}, which implements the +The main build system is @code{gnu-build-system}, which implements the standard build procedure for GNU and many other packages. It is provided by the @code{(guix build-system gnu)} module. @defvr {Scheme Variable} gnu-build-system -@var{gnu-build-system} represents the GNU Build System, and variants +@code{gnu-build-system} represents the GNU Build System, and variants thereof (@pxref{Configuration, configuration and makefile conventions,, standards, GNU Coding Standards}). @@ -5987,8 +5992,8 @@ is false), copying them to the @code{debug} output when available @vindex %standard-phases The build-side module @code{(guix build gnu-build-system)} defines -@var{%standard-phases} as the default list of build phases. -@var{%standard-phases} is a list of symbol/procedure pairs, where the +@code{%standard-phases} as the default list of build phases. +@code{%standard-phases} is a list of symbol/procedure pairs, where the procedure implements the actual phase. The list of phases used for a particular package can be changed with the @@ -6011,7 +6016,7 @@ have to mention them. Other @code{<build-system>} objects are defined to support other conventions and tools used by free software packages. They inherit most -of @var{gnu-build-system}, and differ mainly in the set of inputs +of @code{gnu-build-system}, and differ mainly in the set of inputs implicitly added to the build process, and in the list of phases executed. Some of these build systems are listed below. @@ -6031,9 +6036,9 @@ build file @file{build.xml} with tasks to build the specified jar archive. In this case the parameter @code{#:source-dir} can be used to specify the source sub-directory, defaulting to ``src''. -The @code{#:main-class} parameter can be used with the minimal ant -buildfile to specify the main class of the resulting jar. This makes the -jar file executable. The @code{#:test-include} parameter can be used to +The @code{#:main-class} parameter can be used with the minimal ant +buildfile to specify the main class of the resulting jar. This makes the +jar file executable. The @code{#:test-include} parameter can be used to specify the list of junit tests to run. It defaults to @code{(list "**/*Test.java")}. The @code{#:test-exclude} can be used to disable some tests. It defaults to @code{(list "**/Abstract*.java")}, @@ -6159,7 +6164,7 @@ parameters, respectively. Compile directory and main class can be specified with the @code{#:compile-dir} and @code{#:main-class} parameters, respectively. Other parameters are documented below. -This build system is an extension of @var{ant-build-system}, but with the +This build system is an extension of @code{ant-build-system}, but with the following phases changed: @table @code @@ -6192,7 +6197,7 @@ Apart from the above, this build system also contains an additional phase: @item install-doc This phase installs all top-level files with base name matching -@var{%doc-regex}. A different regex can be specified with the +@code{%doc-regex}. A different regex can be specified with the @code{#:doc-regex} parameter. All files (recursively) inside the documentation directories specified in @code{#:doc-dirs} are installed as well. @end table @@ -6269,7 +6274,7 @@ This variable is exported by @code{(guix build-system glib-or-gtk)}. It is intended for use with packages making use of GLib or GTK+. This build system adds the following two phases to the ones defined by -@var{gnu-build-system}: +@code{gnu-build-system}: @table @code @item glib-or-gtk-wrap @@ -6443,7 +6448,7 @@ This variable is exported by @code{(guix build-system qt)}. It is intended for use with applications using Qt or KDE. This build system adds the phase @code{qt-wrap} to the ones defined by -@var{cmake-build-system}, after the @code{install} phase. +@code{cmake-build-system}, after the @code{install} phase. This phase searches for Qt5 plugin paths, QML paths and some XDG in the inputs and output. In case some path is found, all programs in the output's @@ -6583,7 +6588,7 @@ This variable is exported by @code{(guix build-system emacs)}. It implements an installation procedure similar to the packaging system of Emacs itself (@pxref{Packages,,, emacs, The GNU Emacs Manual}). -It first creates the @code{@var{package}-autoloads.el} file, then it +It first creates the @code{@code{package}-autoloads.el} file, then it byte compiles all Emacs Lisp files. Differently from the Emacs packaging system, the Info documentation files are moved to the standard documentation directory and the @file{dir} file is deleted. Each @@ -6610,7 +6615,7 @@ and @code{#:ninja} if needed. The default Meson is @code{meson-for-build}, which is special because it doesn't clear the @code{RUNPATH} of binaries and libraries when they are installed. -This build system is an extension of @var{gnu-build-system}, but with the +This build system is an extension of @code{gnu-build-system}, but with the following phases changed to some specific for Meson: @table @code @@ -6655,10 +6660,10 @@ is not enabled by default. It can be enabled with @code{#:glib-or-gtk?}. @end defvr @defvr {Scheme Variable} linux-module-build-system -@var{linux-module-build-system} allows building Linux kernel modules. +@code{linux-module-build-system} allows building Linux kernel modules. @cindex build phases -This build system is an extension of @var{gnu-build-system}, but with the +This build system is an extension of @code{gnu-build-system}, but with the following phases changed: @table @code @@ -7995,6 +8000,18 @@ Accept connections on localhost on port 37146. @item --listen=unix:/tmp/socket Accept connections on the Unix-domain socket @file{/tmp/socket}. @end table + +@item --load-path=@var{directory} +@itemx -L @var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tool. + +@item -q +Inhibit loading of the @file{~/.guile} file. By default, that +configuration file is loaded when spawning a @code{guile} REPL. @end table @c ********************************************************************* @@ -8705,6 +8722,10 @@ have created your own packages on @code{GUIX_PACKAGE_PATH} recipes. In other cases, you will be able to examine the read-only recipes for packages currently in the store. +Instead of @code{GUIX_PACKAGE_PATH}, the command-line option +@code{--load-path=@var{directory}} (or in short @code{-L +@var{directory}}) allows you to add @var{directory} to the front of the +package module search path and so make your own packages visible. @node Invoking guix download @section Invoking @command{guix download} @@ -9552,6 +9573,13 @@ the user whether to download it or not. This is the default behavior. @item --key-server=@var{host} Use @var{host} as the OpenPGP key server when importing a public key. +@item --load-path=@var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tools. + @end table The @code{github} updater uses the @@ -9837,6 +9865,13 @@ the case, @command{guix size} fails as it tries to load it. @itemx -s @var{system} Consider packages for @var{system}---e.g., @code{x86_64-linux}. +@item --load-path=@var{directory} +@itemx -L @var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tools. @end table @node Invoking guix graph @@ -10038,6 +10073,14 @@ Display the graph for @var{system}---e.g., @code{i686-linux}. The package dependency graph is largely architecture-independent, but there are some architecture-dependent bits that this option allows you to visualize. + +@item --load-path=@var{directory} +@itemx -L @var{directory} +Add @var{directory} to the front of the package module search path +(@pxref{Package Modules}). + +This allows users to define their own packages and make them visible to +the command-line tools. @end table On top of that, @command{guix graph} supports all the usual package @@ -15802,6 +15845,13 @@ this application is allowed location info access. An empty users list means that all users are allowed. @end deffn +@cindex scanner access +@deffn {Scheme Procedure} sane-service-type +This service provides access to scanners @i{via} +@uref{http://www.sane-project.org, SANE} by installing the necessary udev +rules. +@end deffn + @defvr {Scheme Variable} %standard-geoclue-applications The standard list of well-known GeoClue application configurations, granting authority to the GNOME date-and-time utility to ask for the @@ -17672,21 +17722,21 @@ Defaults to @samp{"SimpleIMAPSSLRetriever"}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} string server -Space separated list of arguments to the userdb driver. +Username to login to the mail server with. Defaults to @samp{unset}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} string username -Space separated list of arguments to the userdb driver. +Username to login to the mail server with. Defaults to @samp{unset}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} non-negative-integer port -Space separated list of arguments to the userdb driver. +Port number to connect to. Defaults to @samp{#f}. @@ -17707,28 +17757,28 @@ Defaults to @samp{()}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} string keyfile -PEM-formatted key file to use for the TLS negotiation +PEM-formatted key file to use for the TLS negotiation. Defaults to @samp{""}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} string certfile -PEM-formatted certificate file to use for the TLS negotiation +PEM-formatted certificate file to use for the TLS negotiation. Defaults to @samp{""}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} string ca-certs -CA certificates to use +CA certificates to use. Defaults to @samp{""}. @end deftypevr @deftypevr {@code{getmail-retriever-configuration} parameter} parameter-alist extra-parameters -Extra retriever parameters +Extra retriever parameters. Defaults to @samp{()}. @@ -17859,7 +17909,7 @@ Defaults to @samp{""}. If true, getmail will record a log of its actions using the system logger. -Defaults to @samp{#t}. +Defaults to @samp{#f}. @end deftypevr @@ -17868,7 +17918,7 @@ If true, getmail will log information about messages not retrieved and the reason for not retrieving them, as well as starting and ending information lines. -Defaults to @samp{#t}. +Defaults to @samp{#f}. @end deftypevr @@ -26098,7 +26148,7 @@ description: Install the given fonts on the specified ttys (fonts are per + virtual console on GNU/Linux). The value of this service is a list of + tty/font pairs. The font can be the name of a font provided by the `kbd' + package or any valid argument to `setfont', as in this example: -+ ++ + '(("tty1" . "LatGrkCyr-8x16") + ("tty2" . (file-append + font-tamzen diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 111e25fbcb..b57d71981f 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -393,6 +393,26 @@ sys_authorize_build_farms() done } +sys_create_init_profile() +{ # Create /etc/profile.d/guix.sh for better desktop integration + cat <<"EOF" > /etc/profile.d/guix.sh +# _GUIX_PROFILE: `guix pull` profile +_GUIX_PROFILE="$HOME/.config/guix/current" +[ -L $_GUIX_PROFILE ] && export PATH="$_GUIX_PROFILE/bin${PATH:+:}$PATH" + +# GUIX_PROFILE: User's default profile +GUIX_PROFILE="$HOME/.guix-profile" +[ -L $GUIX_PROFILE ] || return +GUIX_LOCPATH="$GUIX_PROFILE/lib/locale" +export GUIX_PROFILE GUIX_LOCPATH + +eval `guix package --search-paths=prefix 2> /dev/null` + +# set XDG_DATA_DIRS to include Guix installations +export XDG_DATA_DIRS="$GUIX_PROFILE/share${XDG_DATA_DIRS:+:}$XDG_DATA_DIRS" +EOF +} + welcome() { cat<<"EOF" @@ -449,6 +469,7 @@ main() sys_create_build_user sys_enable_guix_daemon sys_authorize_build_farms + sys_create_init_profile _msg "${INF}cleaning up ${tmp_path}" rm -r "${tmp_path}" diff --git a/gnu/installer/newt/final.scm b/gnu/installer/newt/final.scm index e375282613..061bcd3f78 100644 --- a/gnu/installer/newt/final.scm +++ b/gnu/installer/newt/final.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,7 +36,7 @@ (string-drop file (string-length prefix)) file)) -(define (run-config-display-page) +(define* (run-config-display-page #:key locale) (let ((width (%configuration-file-width)) (height (nearest-exact-integer (/ (screen-rows) 2)))) @@ -50,6 +50,8 @@ This will take a few minutes.") (strip-prefix (%installer-configuration-file))) #:title (G_ "Configuration file") #:file (%installer-configuration-file) + #:edit-button? #t + #:editor-locale locale #:info-textbox-width width #:file-textbox-width width #:file-textbox-height height @@ -95,7 +97,7 @@ last step, or restart the installer."))) (with-mounted-partitions user-partitions (configuration->file configuration) - (run-config-display-page) + (run-config-display-page #:locale locale) (run-install-shell locale #:users users)))) (if install-ok? (run-install-success-page) diff --git a/gnu/installer/newt/page.scm b/gnu/installer/newt/page.scm index 630efde9cc..8aea5a1109 100644 --- a/gnu/installer/newt/page.scm +++ b/gnu/installer/newt/page.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -107,7 +107,7 @@ input box, such as FLAG-PASSWORD." (list GRID-ELEMENT-COMPONENT input-visible-cb) '()))) GRID-ELEMENT-COMPONENT ok-button)) - (form (make-form))) + (form (make-form #:flags FLAG-NOF12))) (add-component-callback input-visible-cb @@ -181,7 +181,7 @@ of the page is set to TITLE." (horizontal-stacked-grid GRID-ELEMENT-COMPONENT ok-button GRID-ELEMENT-COMPONENT exit-button))) - (form (make-form))) + (form (make-form #:flags FLAG-NOF12))) (add-form-to-grid grid form #t) (make-wrapped-grid-window grid title) @@ -315,7 +315,7 @@ the current listbox item has to be selected by key." (if listbox-allow-multiple? FLAG-MULTIPLE 0)))) - (form (make-form)) + (form (make-form #:flags FLAG-NOF12)) (info-textbox (make-reflowed-textbox -1 -1 info-text info-textbox-width @@ -516,7 +516,7 @@ ITEMS when 'Ok' is pressed." GRID-ELEMENT-COMPONENT ok-button GRID-ELEMENT-COMPONENT exit-button))) (keys (fill-checkbox-tree checkbox-tree items)) - (form (make-form))) + (form (make-form #:flags FLAG-NOF12))) (add-form-to-grid grid form #t) (make-wrapped-grid-window grid title) @@ -541,6 +541,17 @@ ITEMS when 'Ok' is pressed." (lambda () (destroy-form-and-pop form)))))) +(define* (edit-file file #:key locale) + "Spawn an editor for FILE." + (clear-screen) + (newt-suspend) + ;; Use Nano because it syntax-highlights Scheme by default. + ;; TODO: Add a menu to choose an editor? + (run-shell-command (string-append "/run/current-system/profile/bin/nano " + file) + #:locale locale) + (newt-resume)) + (define* (run-file-textbox-page #:key info-text title @@ -549,55 +560,71 @@ ITEMS when 'Ok' is pressed." (file-textbox-width 50) (file-textbox-height 30) (exit-button? #t) + (edit-button? #f) + (editor-locale #f) (ok-button-callback-procedure (const #t)) (exit-button-callback-procedure (const #t))) - (let* ((info-textbox - (make-reflowed-textbox -1 -1 info-text - info-textbox-width - #:flags FLAG-BORDER)) - (file-text (read-all file)) - (file-textbox - (make-textbox -1 -1 - file-textbox-width - file-textbox-height - (logior FLAG-SCROLL FLAG-BORDER))) - (ok-button (make-button -1 -1 (G_ "OK"))) - (exit-button (make-button -1 -1 (G_ "Exit"))) - (grid (vertically-stacked-grid - GRID-ELEMENT-COMPONENT info-textbox - GRID-ELEMENT-COMPONENT file-textbox - GRID-ELEMENT-SUBGRID - (apply - horizontal-stacked-grid - GRID-ELEMENT-COMPONENT ok-button - `(,@(if exit-button? - (list GRID-ELEMENT-COMPONENT exit-button) - '()))))) - (form (make-form))) - - (set-textbox-text file-textbox - (receive (_w _h text) - (reflow-text file-text - file-textbox-width - 0 0) - text)) - (add-form-to-grid grid form #t) - (make-wrapped-grid-window grid title) - - (receive (exit-reason argument) - (run-form form) - (dynamic-wind - (const #t) - (lambda () - (case exit-reason - ((exit-component) - (cond - ((components=? argument ok-button) - (ok-button-callback-procedure)) - ((and exit-button? - (components=? argument exit-button)) - (exit-button-callback-procedure)))))) - (lambda () - (destroy-form-and-pop form)))))) + (let loop () + (let* ((info-textbox + (make-reflowed-textbox -1 -1 info-text + info-textbox-width + #:flags FLAG-BORDER)) + (file-textbox + (make-textbox -1 -1 + file-textbox-width + file-textbox-height + (logior FLAG-SCROLL FLAG-BORDER))) + (ok-button (make-button -1 -1 (G_ "OK"))) + (exit-button (make-button -1 -1 (G_ "Exit"))) + (edit-button (and edit-button? + (make-button -1 -1 (G_ "Edit")))) + (grid (vertically-stacked-grid + GRID-ELEMENT-COMPONENT info-textbox + GRID-ELEMENT-COMPONENT file-textbox + GRID-ELEMENT-SUBGRID + (apply + horizontal-stacked-grid + GRID-ELEMENT-COMPONENT ok-button + `(,@(if edit-button? + (list GRID-ELEMENT-COMPONENT edit-button) + '()) + ,@(if exit-button? + (list GRID-ELEMENT-COMPONENT exit-button) + '()))))) + (form (make-form #:flags FLAG-NOF12))) + + (add-form-to-grid grid form #t) + (make-wrapped-grid-window grid title) + + (set-textbox-text file-textbox + (receive (_w _h text) + (reflow-text (read-all file) + file-textbox-width + 0 0) + text)) + + (receive (exit-reason argument) + (run-form form) + (define result + (dynamic-wind + (const #t) + (lambda () + (case exit-reason + ((exit-component) + (cond + ((components=? argument ok-button) + (ok-button-callback-procedure)) + ((and exit-button? + (components=? argument exit-button)) + (exit-button-callback-procedure)) + ((and edit-button? + (components=? argument edit-button)) + (edit-file file)))))) + (lambda () + (destroy-form-and-pop form)))) + + (if (components=? argument edit-button) + (loop) ;recurse in tail position + result))))) diff --git a/gnu/local.mk b/gnu/local.mk index bbafa062ed..448e70aa38 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -12,7 +12,7 @@ # Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com> # Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> # Copyright © 2016, 2017, 2018, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> -# Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +# Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> # Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> # Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> # Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com> @@ -25,7 +25,7 @@ # Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de> # Copyright © 2019 Evan Straw <evan.straw99@gmail.com> # Copyright © 2019 Brett Gilio <brettg@gnu.org> -# Copyright © 2019 Amin Bandali <bandali@gnu.org> +# Copyright © 2019 Amin Bandali <mab@gnu.org> # # This file is part of GNU Guix. # @@ -367,6 +367,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/nim.scm \ %D%/packages/ninja.scm \ %D%/packages/node.scm \ + %D%/packages/node-xyz.scm \ %D%/packages/noweb.scm \ %D%/packages/nss.scm \ %D%/packages/ntp.scm \ @@ -426,6 +427,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/ragel.scm \ %D%/packages/rails.scm \ %D%/packages/ratpoison.scm \ + %D%/packages/rcm.scm \ %D%/packages/rdesktop.scm \ %D%/packages/rdf.scm \ %D%/packages/re2c.scm \ @@ -449,6 +451,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/scsi.scm \ %D%/packages/sdcc.scm \ %D%/packages/sdl.scm \ + %D%/packages/sdr.scm \ %D%/packages/search.scm \ %D%/packages/security-token.scm \ %D%/packages/selinux.scm \ @@ -981,6 +984,7 @@ dist_patch_DATA = \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/gtksourceview-2-add-default-directory.patch \ %D%/packages/patches/gzdoom-search-in-installed-share.patch \ + %D%/packages/patches/gzdoom-find-system-libgme.patch \ %D%/packages/patches/haskell-mode-unused-variables.patch \ %D%/packages/patches/haskell-mode-make-check.patch \ %D%/packages/patches/hdf4-architectures.patch \ @@ -1316,6 +1320,8 @@ dist_patch_DATA = \ %D%/packages/patches/python-libxml2-utf8.patch \ %D%/packages/patches/python-mox3-python3.6-compat.patch \ %D%/packages/patches/python-testtools.patch \ + %D%/packages/patches/python-packaging-test-arch.patch \ + %D%/packages/patches/python2-parameterized-docstring-test.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ @@ -1343,7 +1349,6 @@ 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/red-eclipse-remove-gamma-name-hack.patch \ %D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \ %D%/packages/patches/ri-li-modernize_cpp.patch \ %D%/packages/patches/ripperx-missing-file.patch \ @@ -1381,8 +1386,8 @@ dist_patch_DATA = \ %D%/packages/patches/snappy-add-O2-flag-in-CmakeLists.txt.patch \ %D%/packages/patches/sooperlooper-build-with-wx-30.patch \ %D%/packages/patches/soundconverter-remove-gconf-dependency.patch \ + %D%/packages/patches/spice-fix-test-armhf.patch \ %D%/packages/patches/steghide-fixes.patch \ - %D%/packages/patches/supercollider-boost-1.70-build-fix.patch \ %D%/packages/patches/superlu-dist-awpm-grid.patch \ %D%/packages/patches/superlu-dist-fix-mpi-deprecations.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ @@ -1404,7 +1409,6 @@ dist_patch_DATA = \ %D%/packages/patches/tcsh-fix-autotest.patch \ %D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \ %D%/packages/patches/teensy-loader-cli-help.patch \ - %D%/packages/patches/teeworlds-use-latest-wavpack.patch \ %D%/packages/patches/texinfo-5-perl-compat.patch \ %D%/packages/patches/texlive-bin-CVE-2018-17407.patch \ %D%/packages/patches/texlive-bin-luatex-poppler-compat.patch \ @@ -1441,7 +1445,6 @@ dist_patch_DATA = \ %D%/packages/patches/util-linux-tests.patch \ %D%/packages/patches/upower-builddir.patch \ %D%/packages/patches/upx-fix-CVE-2017-15056.patch \ - %D%/packages/patches/usb-modeswitch-accept-config-arg.patch \ %D%/packages/patches/valgrind-enable-arm.patch \ %D%/packages/patches/vboot-utils-fix-format-load-address.patch \ %D%/packages/patches/vboot-utils-fix-tests-show-contents.patch \ @@ -1479,6 +1482,9 @@ dist_patch_DATA = \ %D%/packages/patches/xf86-video-voodoo-pcitag.patch \ %D%/packages/patches/xfce4-panel-plugins.patch \ %D%/packages/patches/xfce4-settings-defaults.patch \ + %D%/packages/patches/xmoto-utf8.patch \ + %D%/packages/patches/xmoto-remove-glext.patch \ + %D%/packages/patches/xmoto-reproducible.patch \ %D%/packages/patches/xsane-fix-memory-leak.patch \ %D%/packages/patches/xsane-fix-pdf-floats.patch \ %D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \ diff --git a/gnu/packages.scm b/gnu/packages.scm index 143469b288..d22c992bb1 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -369,6 +369,9 @@ VERSION." (string=? (package-version p) highest)) matches)))))) +;; Prevent Guile 3 from inlining this procedure so we can mock it in tests. +(set! find-best-packages-by-name find-best-packages-by-name) + (define (generate-package-cache directory) "Generate under DIRECTORY a cache of all the available packages. diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 2b0e68fdc4..5c1285cce9 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2249,24 +2249,22 @@ background file post-processing.") (define-public supercollider (package (name "supercollider") - (version "3.10.3") + (version "3.10.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/supercollider/supercollider" "/releases/download/Version-" version "/SuperCollider-" version "-Source-linux.tar.bz2")) - (patches - (search-patches "supercollider-boost-1.70-build-fix.patch")) (sha256 (base32 - "0srm6wbazidkrd4ckjy4ypyhkdwcnx2i7k9msjyngalh0mrc9zz1")))) + "0x11g3pfw11m6v18qfpfl5w99dbmf73g4z7wvwhrj1a4qv2dn084")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on" "-DSC_QT=off" "-DSC_EL=off") ;scel is packaged individually as - ;emacs-scel. + ;emacs-scel #:modules ((guix build utils) (guix build cmake-build-system) (ice-9 ftw)) @@ -2275,8 +2273,7 @@ background file post-processing.") (add-after 'unpack 'rm-bundled-libs (lambda _ ;; The build system doesn't allow us to unbundle the following - ;; libraries. hidapi is also heavily patched and upstream not - ;; actively maintained. + ;; libraries. hidapi is also heavily patched. (let ((keep-dirs '("nova-simd" "nova-tt" "hidapi" "TLSF-2.4.6" "oscpack_1_1_0" "." ".."))) (with-directory-excursion "./external_libraries" @@ -2621,7 +2618,7 @@ disks as various audio file formats.") `(("libsndfile" ,libsndfile))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://vamp-plugins.org") + (home-page "https://vamp-plugins.org") (synopsis "Modular and extensible audio processing system") (description "Vamp is an audio processing plugin system for plugins that extract @@ -3577,52 +3574,41 @@ the following features: (define-public cli-visualizer (package (name "cli-visualizer") - (version "1.6") + (version "1.8") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/dpayne/cli-visualizer.git") - (commit version))) + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "0mirp8bk398di5xyq95iprmdyvplfghxqmrfj7jdnpy554vx7ppc")))) - (build-system gnu-build-system) + (base32 "003mbbwsz43mg3d7llphpypqa9g7rs1p1cdbqi1mbc2bfrc1gcq2")))) + (build-system cmake-build-system) (native-inputs - `(("which" ,which))) + ;; TODO: Try using the latest googletest for versions > 1.8. + `( ;; ("googletest" ,googletest-1.8) + ("which" ,which))) (inputs `(("fftw" ,fftw) - ;; TODO: Try using the latest googletest for versions > 1.6. - ("googletest" ,googletest-1.8) ("ncurses" ,ncurses) ("pulseaudio" ,pulseaudio))) (arguments - '(#:test-target "test" - #:make-flags - (list (string-append "PREFIX=" %output "/bin/") "ENABLE_PULSE=1") + '(#:tests? #f + ;; XXX Enable tests after patching them to use the system googletest. + ;; #:configure-flags (list "-DVIS_WITH_TESTS=true") #:phases (modify-phases %standard-phases - (add-after 'unpack 'remove-sudo - (lambda _ - (substitute* "install.sh" (("sudo") "")) - #t)) - (add-before 'check 'set-check-environment - (lambda _ - (setenv "CXX" "g++") - (setenv "CC" "gcc") - #t)) - (add-before 'install 'make-prefix - (lambda _ - (mkdir-p (string-append (assoc-ref %outputs "out") "/bin")) - #t)) - (add-after 'install 'data - (lambda _ - (for-each (lambda (file) - (install-file file - (string-append (assoc-ref %outputs "out") - "/share/doc"))) - (find-files "examples")) + (add-after 'install 'install-examples + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion "../source/examples" + (delete-file "mac_osx_config") + (for-each (lambda (file) + (install-file file + (string-append + (assoc-ref outputs "out") + "/share/doc"))) + (find-files "."))) #t))))) (home-page "https://github.com/dpayne/cli-visualizer/") (synopsis "Command-line audio visualizer") @@ -3988,17 +3974,17 @@ default and preferred audio driver but also supports native drivers like ALSA.") (define-public ecasound (package (name "ecasound") - (version "2.9.2") + (version "2.9.3") (source (origin (method url-fetch) - (uri (string-append "http://nosignal.fi/download/ecasound-" + (uri (string-append "https://nosignal.fi/download/ecasound-" version ".tar.gz")) (sha256 - (base32 "15rcs28fq2wfvfs66p5na7adq88b55qszbhshpizgdbyqzgr2jf1")))) + (base32 "1m7njfjdb7sqf0lhgc4swihgdr4snkg8v02wcly08wb5ar2fr2s6")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) - ;; would be nice to add mikmod to inputs if that gets packaged - ;; eventually + ;; It would be nice to add mikmod to inputs if that gets packaged + ;; eventually. (inputs `(("alsa-lib" ,alsa-lib) ("jack" ,jack-1) ("mpg123" ,mpg123) @@ -4012,7 +3998,7 @@ default and preferred audio driver but also supports native drivers like ALSA.") ("ncurses" ,ncurses) ("ladspa" ,ladspa) ("lilv" ,lilv))) - (home-page "http://nosignal.fi/ecasound/index.php") + (home-page "https://nosignal.fi/ecasound/index.php") (synopsis "Multitrack audio processing") (description "Ecasound is a software package designed for multitrack audio processing. It can be used for simple tasks like audio playback, recording and diff --git a/gnu/packages/aux-files/linux-libre/4.14-arm.conf b/gnu/packages/aux-files/linux-libre/4.14-arm.conf index bc7fe85aec..05fa8cc96f 100644 --- a/gnu/packages/aux-files/linux-libre/4.14-arm.conf +++ b/gnu/packages/aux-files/linux-libre/4.14-arm.conf @@ -8344,9 +8344,19 @@ CONFIG_LIBFDT=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.14-i686.conf b/gnu/packages/aux-files/linux-libre/4.14-i686.conf index db020b5d96..db09a41d7d 100644 --- a/gnu/packages/aux-files/linux-libre/4.14-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.14-i686.conf @@ -9514,9 +9514,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf index bf071e01b7..508c943b47 100644 --- a/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.14-x86_64.conf @@ -9386,9 +9386,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.19-arm.conf b/gnu/packages/aux-files/linux-libre/4.19-arm.conf index 72161c09ff..239e6e5f23 100644 --- a/gnu/packages/aux-files/linux-libre/4.19-arm.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-arm.conf @@ -8353,9 +8353,19 @@ CONFIG_LIBFDT=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.19-arm64.conf b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf index 47ec3c9765..45f9ab89ef 100644 --- a/gnu/packages/aux-files/linux-libre/4.19-arm64.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf @@ -8090,9 +8090,19 @@ CONFIG_LIBFDT=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.19-i686.conf b/gnu/packages/aux-files/linux-libre/4.19-i686.conf index 75a18ec5ef..03f51f4bf8 100644 --- a/gnu/packages/aux-files/linux-libre/4.19-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-i686.conf @@ -9435,9 +9435,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_SBITMAP=y diff --git a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf index f151036410..685ca2adfb 100644 --- a/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf @@ -9327,9 +9327,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_PMEM_API=y diff --git a/gnu/packages/aux-files/linux-libre/4.4-i686.conf b/gnu/packages/aux-files/linux-libre/4.4-i686.conf index 75f40b4d1a..33a5f67d85 100644 --- a/gnu/packages/aux-files/linux-libre/4.4-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.4-i686.conf @@ -8612,9 +8612,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_MMIO_FLUSH=y diff --git a/gnu/packages/aux-files/linux-libre/4.4-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.4-x86_64.conf index d78da5c71e..aabd0dfee1 100644 --- a/gnu/packages/aux-files/linux-libre/4.4-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.4-x86_64.conf @@ -8418,9 +8418,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_PMEM_API=y diff --git a/gnu/packages/aux-files/linux-libre/4.9-i686.conf b/gnu/packages/aux-files/linux-libre/4.9-i686.conf index 33512eacf6..d1a64e2772 100644 --- a/gnu/packages/aux-files/linux-libre/4.9-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.9-i686.conf @@ -9040,9 +9040,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf index 797f8f23e0..3d69605c19 100644 --- a/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.9-x86_64.conf @@ -8885,9 +8885,19 @@ CONFIG_SIGNATURE=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y # CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf b/gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf index 3f0cb3fb35..7d827afb2e 100644 --- a/gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf +++ b/gnu/packages/aux-files/linux-libre/5.4-arm-veyron.conf @@ -4814,9 +4814,19 @@ CONFIG_MPILIB=y CONFIG_LIBFDT=y CONFIG_OID_REGISTRY=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_POOL=y CONFIG_SBITMAP=y # CONFIG_STRING_SELFTEST is not set diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm.conf b/gnu/packages/aux-files/linux-libre/5.4-arm.conf index 23d3c8c26c..a54228643b 100644 --- a/gnu/packages/aux-files/linux-libre/5.4-arm.conf +++ b/gnu/packages/aux-files/linux-libre/5.4-arm.conf @@ -9106,9 +9106,19 @@ CONFIG_LIBFDT=y CONFIG_OID_REGISTRY=y CONFIG_UCS2_STRING=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_SBITMAP=y diff --git a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf index f35eb8dc17..fabd25c6a4 100644 --- a/gnu/packages/aux-files/linux-libre/5.4-arm64.conf +++ b/gnu/packages/aux-files/linux-libre/5.4-arm64.conf @@ -9069,9 +9069,19 @@ CONFIG_UCS2_STRING=y CONFIG_HAVE_GENERIC_VDSO=y CONFIG_GENERIC_GETTIMEOFDAY=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_PMEM_API=y diff --git a/gnu/packages/aux-files/linux-libre/5.4-i686.conf b/gnu/packages/aux-files/linux-libre/5.4-i686.conf index 4a1ac43279..50a41f6cc9 100644 --- a/gnu/packages/aux-files/linux-libre/5.4-i686.conf +++ b/gnu/packages/aux-files/linux-libre/5.4-i686.conf @@ -10010,9 +10010,19 @@ CONFIG_HAVE_GENERIC_VDSO=y CONFIG_GENERIC_GETTIMEOFDAY=y CONFIG_GENERIC_VDSO_32=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_POOL=y CONFIG_ARCH_STACKWALK=y CONFIG_SBITMAP=y diff --git a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf index 3dc7e8be03..30fdc4e86a 100644 --- a/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/5.4-x86_64.conf @@ -9954,9 +9954,19 @@ CONFIG_UCS2_STRING=y CONFIG_HAVE_GENERIC_VDSO=y CONFIG_GENERIC_GETTIMEOFDAY=y CONFIG_FONT_SUPPORT=y -# CONFIG_FONTS is not set +CONFIG_FONTS=y CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +# CONFIG_FONT_6x11 is not set +# CONFIG_FONT_7x14 is not set +# CONFIG_FONT_PEARL_8x8 is not set +# CONFIG_FONT_ACORN_8x8 is not set +# CONFIG_FONT_MINI_4x6 is not set +CONFIG_FONT_6x10=y +# CONFIG_FONT_10x18 is not set +# CONFIG_FONT_SUN8x16 is not set +# CONFIG_FONT_SUN12x22 is not set +CONFIG_FONT_TER16x32=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_PMEM_API=y CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y diff --git a/gnu/packages/avahi.scm b/gnu/packages/avahi.scm index e84fed6a71..ba609cf12e 100644 --- a/gnu/packages/avahi.scm +++ b/gnu/packages/avahi.scm @@ -36,7 +36,7 @@ (name "avahi") (version "0.7") (replacement avahi/fixed) - (home-page "http://avahi.org") + (home-page "https://avahi.org") (source (origin (method url-fetch) (uri (string-append home-page "/download/avahi-" diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 863b97463a..e2b4f6ea7f 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Roel Janssen <roel@gnu.org> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com> @@ -297,7 +297,7 @@ provided by UCSC (mm9, July 2007) and stored in Biostrings objects.") `(("r-bsgenome" ,r-bsgenome) ("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9))) - (home-page "http://bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9.masked/") + (home-page "https://bioconductor.org/packages/BSgenome.Mmusculus.UCSC.mm9.masked/") (synopsis "Full masked genome sequences for Mouse") (description "This package provides full genome sequences for Mus musculus (Mouse) as @@ -1053,14 +1053,14 @@ problems in CEL-level data to help evaluate performance of quality metrics.") (define-public r-affycoretools (package (name "r-affycoretools") - (version "1.58.3") + (version "1.58.4") (source (origin (method url-fetch) (uri (bioconductor-uri "affycoretools" version)) (sha256 (base32 - "12r9ljkp3xix0xq8d1488c8wb3a4whb805v48ynmv985bs3phc71")))) + "1p283ysib04qzaayxmrpsmk5bq0jdq2rlky180jrlskpyg6risfw")))) (properties `((upstream-name . "affycoretools"))) (build-system r-build-system) (propagated-inputs @@ -1071,6 +1071,7 @@ problems in CEL-level data to help evaluate performance of quality metrics.") ("r-dbi" ,r-dbi) ("r-edger" ,r-edger) ("r-gcrma" ,r-gcrma) + ("r-glimma" ,r-glimma) ("r-ggplot2" ,r-ggplot2) ("r-gostats" ,r-gostats) ("r-gplots" ,r-gplots) @@ -1165,14 +1166,14 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.18.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "0m073hrqp62zpd2blnqm5ka539hcilir05m8av14vdhzhjzp13ya")))) + "0if7r6njz3ahm545383z5mzmzw8fdvw80a9lfz160j5pcgpx2dq9")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs @@ -1399,7 +1400,7 @@ problems in genomics, brain imaging, astrophysics, and data mining.") ("r-s4vectors" ,r-s4vectors) ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-systempiper" ,r-systempiper))) - (home-page "http://bioconductor.org/packages/DiffBind") + (home-page "https://bioconductor.org/packages/DiffBind") (synopsis "Differential binding analysis of ChIP-Seq peak data") (description "This package computes differentially bound sites from multiple @@ -1428,7 +1429,7 @@ occupancy (overlap) analysis and plotting functions.") ("r-rsamtools" ,r-rsamtools) ("r-genomicalignments" ,r-genomicalignments) ("r-rtracklayer" ,r-rtracklayer))) - (home-page "http://bioconductor.org/packages/RIPSeeker") + (home-page "https://bioconductor.org/packages/RIPSeeker") (synopsis "Identifying protein-associated transcripts from RIP-seq experiments") (description @@ -1457,7 +1458,7 @@ processing to visualization and annotation.") ("r-biocgenerics" ,r-biocgenerics) ("r-biobase" ,r-biobase) ("r-mass" ,r-mass))) - (home-page "http://bioconductor.org/packages/multtest") + (home-page "https://bioconductor.org/packages/multtest") (synopsis "Resampling-based multiple hypothesis testing") (description "This package can do non-parametric bootstrap and permutation @@ -1568,7 +1569,7 @@ determining dependencies between variables, code improvement suggestions.") ("r-seqinr" ,r-seqinr) ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-venndiagram" ,r-venndiagram))) - (home-page "http://bioconductor.org/packages/ChIPpeakAnno") + (home-page "https://bioconductor.org/packages/ChIPpeakAnno") (synopsis "Peaks annotation from ChIP-seq and ChIP-chip experiments") (description "The package includes functions to retrieve the sequences around the peak, @@ -1593,7 +1594,7 @@ enrichedGO (addGeneIDs).") (build-system r-build-system) (propagated-inputs `(("r-limma" ,r-limma))) - (home-page "http://bioconductor.org/packages/marray") + (home-page "https://bioconductor.org/packages/marray") (synopsis "Exploratory analysis for two-color spotted microarray data") (description "This package contains class definitions for two-color spotted microarray data. It also includes functions for data input, diagnostic plots, @@ -1614,7 +1615,7 @@ normalization and quality checking.") (propagated-inputs `(("r-biobase" ,r-biobase) ("r-marray" ,r-marray))) - (home-page "http://bioconductor.org/packages/CGHbase") + (home-page "https://bioconductor.org/packages/CGHbase") (synopsis "Base functions and classes for arrayCGH data analysis") (description "This package contains functions and classes that are needed by the @code{arrayCGH} packages.") @@ -1637,7 +1638,7 @@ the @code{arrayCGH} packages.") ("r-impute" ,r-impute) ("r-dnacopy" ,r-dnacopy) ("r-snowfall" ,r-snowfall))) - (home-page "http://bioconductor.org/packages/CGHcall") + (home-page "https://bioconductor.org/packages/CGHcall") (synopsis "Base functions and classes for arrayCGH data analysis") (description "This package contains functions and classes that are needed by @code{arrayCGH} packages.") @@ -1666,7 +1667,7 @@ the @code{arrayCGH} packages.") ("r-matrixstats" ,r-matrixstats) ("r-r-utils" ,r-r-utils) ("r-rsamtools" ,r-rsamtools))) - (home-page "http://bioconductor.org/packages/QDNAseq") + (home-page "https://bioconductor.org/packages/QDNAseq") (synopsis "Quantitative DNA sequencing for chromosomal aberrations") (description "The genome is divided into non-overlapping fixed-sized bins, number of sequence reads in each counted, adjusted with a simultaneous @@ -1999,14 +2000,14 @@ genes or proteins in these datasets.") (define-public r-inspect (package (name "r-inspect") - (version "1.16.1") + (version "1.16.2") (source (origin (method url-fetch) (uri (bioconductor-uri "INSPEcT" version)) (sha256 (base32 - "03cf9c94ra4f847ndlf8sn2cq1kl1055514wjq0lqbvlbfdj1dq3")))) + "1g8la7k4pnyr2hvk4yjd1bwvjy6nqbbb0fwxrrh2ifgqf4h21x2p")))) (properties `((upstream-name . "INSPEcT"))) (build-system r-build-system) (propagated-inputs @@ -3459,14 +3460,14 @@ All the visualization methods are developed based on ggplot2 graphics.") (define-public r-clusterprofiler (package (name "r-clusterprofiler") - (version "3.14.2") + (version "3.14.3") (source (origin (method url-fetch) (uri (bioconductor-uri "clusterProfiler" version)) (sha256 (base32 - "1y1l3yf1r1ykl9ngipvyzl5hbxxsfz7z5q5rcywkyss2b2b6gsg8")))) + "08pd7bmqmyxncj09ilz8yb9sf1pv9ni98y8b93pz2giy7pl407hg")))) (properties `((upstream-name . "clusterProfiler"))) (build-system r-build-system) @@ -3492,14 +3493,14 @@ profiles (GO and KEGG) of gene and gene clusters.") (define-public r-mlinterfaces (package (name "r-mlinterfaces") - (version "1.66.0") + (version "1.66.2") (source (origin (method url-fetch) (uri (bioconductor-uri "MLInterfaces" version)) (sha256 (base32 - "1vnzqd3y3jk1wgxybckzrcgwk0ly7zgcz5ki1ib0bk1jwv6xk5x8")))) + "1wc280iw9vllg6f58vsdj895yaqs8w42kl7jk8sgii009gwlaj8d")))) (properties `((upstream-name . "MLInterfaces"))) (build-system r-build-system) (propagated-inputs @@ -3517,7 +3518,6 @@ profiles (GO and KEGG) of gene and gene clusters.") ("r-mlbench" ,r-mlbench) ("r-pls" ,r-pls) ("r-rcolorbrewer" ,r-rcolorbrewer) - ("r-rda" ,r-rda) ("r-rpart" ,r-rpart) ("r-sfsmisc" ,r-sfsmisc) ("r-shiny" ,r-shiny) @@ -5164,14 +5164,14 @@ packages.") (define-public r-ropls (package (name "r-ropls") - (version "1.18.0") + (version "1.18.6") (source (origin (method url-fetch) (uri (bioconductor-uri "ropls" version)) (sha256 (base32 - "05w1zrq92w3jfwq5sdyj27m5qjg4zv7acywia8vd6y5fbgcnyzlp")))) + "1sm2fmygrra9gdcs90lmk5y1ag6arga6159kggx4ij8bkhyc66vb")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -5586,14 +5586,14 @@ for other R packages to compile and link against.") (define-public r-flowworkspace (package (name "r-flowworkspace") - (version "3.34.0") + (version "3.34.1") (source (origin (method url-fetch) (uri (bioconductor-uri "flowWorkspace" version)) (sha256 (base32 - "0hvbkxyylsygra31l1lxyvbsr5hc50lqy1y7gwrfgrfil4a2m762")))) + "1ijbc6z9ljhrw3cqr02smgplhrfg44gzrb1dq4gbrpq3nj4khhpn")))) (properties `((upstream-name . "flowWorkspace"))) (build-system r-build-system) (propagated-inputs @@ -6451,14 +6451,14 @@ arrays based on fast wavelet-based functional models.") (define-public r-variancepartition (package (name "r-variancepartition") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (bioconductor-uri "variancePartition" version)) (sha256 (base32 - "1ygx7f2sp4b7ilgspm6vqcbjxs7br9s6g3gwcdb978kx03ymp4i8")))) + "02pzsff14j4am2d949mh8xgi0c7k44g09q4lr6nqm08vf92brb6g")))) (properties `((upstream-name . "variancePartition"))) (build-system r-build-system) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0e4cb5b1db..e8dac2a12b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2015, 2016 Pjotr Prins <pjotr.guix@thebird.nl> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> @@ -261,7 +261,7 @@ structure of the predicted RNA.") ("coreutils" ,coreutils))) (propagated-inputs `(("python-numpy" ,python2-numpy))) - (home-page "http://ecogenomics.github.io/BamM/") + (home-page "https://ecogenomics.github.io/BamM/") (synopsis "Metagenomics-focused BAM file manipulator") (description "BamM is a C library, wrapped in python, to efficiently generate and @@ -726,7 +726,7 @@ provides the Ribotaper pipeline.") (native-inputs `(("python-mock" ,python2-mock) ("python-nose" ,python2-nose))) - (home-page "http://public.bmi.inf.ethz.ch/user/zhongy/RiboDiff/") + (home-page "https://public.bmi.inf.ethz.ch/user/zhongy/RiboDiff/") (synopsis "Detect translation efficiency changes from ribosome footprints") (description "RiboDiff is a statistical tool that detects the protein translational efficiency change from Ribo-Seq (ribosome footprinting) and @@ -1056,7 +1056,7 @@ provide a coordinated and extensible framework to do computational biology.") (lambda _ (setenv "HOME" "/tmp") #t))))) (propagated-inputs `(("python-numpy" ,python-numpy))) - (home-page "http://biopython.org/") + (home-page "https://biopython.org/") (synopsis "Tools for biological computation in Python") (description "Biopython is a set of tools for biological computation including parsers @@ -2439,7 +2439,7 @@ accessing bigWig files.") (base32 "097hfyv2kaf4x92i4rjx0paw2cncxap48qivv8zxng4z7nhid0x9")))) (build-system python-build-system) - (home-page "http://packages.python.org/DendroPy/") + (home-page "https://dendropy.org/") (synopsis "Library for phylogenetics and phylogenetic computing") (description "DendroPy is a library for phylogenetics and phylogenetic computing: reading, @@ -2676,7 +2676,7 @@ data and settings.") texlive-latex-pgf ; tikz texlive-latex-verbatimbox))) ("imagemagick" ,imagemagick))) - (home-page "http://dorina.mdc-berlin.de/public/rajewsky/discrover/") + (home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/") (synopsis "Discover discriminative nucleotide sequence motifs") (description "Discrover is a motif discovery method to find binding sites of nucleic acid binding proteins.") @@ -2796,7 +2796,7 @@ quantitative phenotypes.") ("perl-www-robotrules" ,perl-www-robotrules) ("perl-xml-simple" ,perl-xml-simple) ("perl" ,perl))) - (home-page "http://www.ncbi.nlm.nih.gov/books/NBK179288/") + (home-page "https://www.ncbi.nlm.nih.gov/books/NBK179288/") (synopsis "Tools for accessing the NCBI's set of databases") (description "Entrez Direct (EDirect) is a method for accessing the National Center @@ -2916,7 +2916,7 @@ ChIP-Seq, and analysis of metagenomic data.") #t)))))) (inputs `(("python" ,python-2))) - (home-page "http://kiwi.cs.dal.ca/Software/ExpressBetaDiversity") + (home-page "https://github.com/dparks1134/ExpressBetaDiversity") (synopsis "Taxon- and phylogenetic-based beta diversity measures") (description "Express Beta Diversity (EBD) calculates ecological beta diversity @@ -3313,7 +3313,8 @@ association studies (GWAS).") ("python-networkx" ,python2-networkx))) (native-inputs `(("python-cython" ,python2-cython))) - (home-page "http://grit-bio.org") + ;; The canonical <http://grit-bio.org> home page times out as of 2020-01-21. + (home-page "https://github.com/nboley/grit") (synopsis "Tool for integrative analysis of RNA-seq type assays") (description "GRIT is designed to use RNA-seq, TES, and TSS data to build and quantify @@ -3380,7 +3381,7 @@ estimates transcript expression.") ;; Non-portable SSE instructions are used so building fails on platforms ;; other than x86_64. (supported-systems '("x86_64-linux")) - (home-page "http://ccb.jhu.edu/software/hisat/index.shtml") + (home-page "https://ccb.jhu.edu/software/hisat/index.shtml") (synopsis "Hierarchical indexing for spliced alignment of transcripts") (description "HISAT is a fast and sensitive spliced alignment program for mapping @@ -3434,7 +3435,7 @@ particular, reads spanning multiple exons.") `(("unzip" ,unzip) ; needed for archive from ftp ("perl" ,perl) ("pandoc" ,ghc-pandoc))) ; for documentation - (home-page "http://ccb.jhu.edu/software/hisat2/index.shtml") + (home-page "https://ccb.jhu.edu/software/hisat2/index.shtml") (synopsis "Graph-based alignment of genomic sequencing reads") (description "HISAT2 is a fast and sensitive alignment program for mapping next-generation sequencing reads (both DNA and RNA) to a population of human @@ -3494,7 +3495,7 @@ HMMs).") (inputs `(("python-pysam" ,python-pysam) ("python-matplotlib" ,python-matplotlib))) - (home-page "http://www-huber.embl.de/users/anders/HTSeq/") + (home-page "https://htseq.readthedocs.io/") (synopsis "Analysing high-throughput sequencing data with Python") (description "HTSeq is a Python package that provides infrastructure to process data @@ -3969,7 +3970,7 @@ VCF.") ("java-jbzip2" ,java-jbzip2))) (native-inputs `(("unzip" ,unzip))) - (home-page "http://www.bioinformatics.babraham.ac.uk/projects/fastqc/") + (home-page "https://www.bioinformatics.babraham.ac.uk/projects/fastqc/") (synopsis "Quality control tool for high throughput sequence data") (description "FastQC aims to provide a simple way to do some quality control @@ -4048,7 +4049,7 @@ performance.") `(("zlib" ,zlib))) (native-inputs `(("perl" ,perl))) - (home-page "http://www.htslib.org") + (home-page "https://www.htslib.org") (synopsis "C library for reading/writing high-throughput sequencing data") (description "HTSlib is a C library for reading/writing high-throughput sequencing @@ -4595,7 +4596,7 @@ assembled metagenomic sequence.") ;; Use setuptools, or else the executables are not ;; installed. (("distutils.core") "setuptools") - ;; use "gcc" instead of "cc" for compilation + ;; Use "gcc" instead of "cc" for compilation. (("^defines") "cc.set_executables( compiler='gcc', @@ -4605,8 +4606,8 @@ linker_so='gcc -shared'); defines")) #t)))) (build-system python-build-system) (arguments - `(#:python ,python-2 ; only Python 2 is supported - #:tests? #f)) ; no "test" target + `(#:python ,python-2 ; only Python 2 is supported + #:tests? #f)) ; no "test" target (inputs `(("samtools" ,samtools) ("python-numpy" ,python2-numpy) @@ -4614,9 +4615,9 @@ linker_so='gcc -shared'); defines")) ("python-scipy" ,python2-scipy) ("python-matplotlib" ,python2-matplotlib))) (native-inputs - `(("python-mock" ,python2-mock) ;for tests - ("python-pytz" ,python2-pytz))) ;for tests - (home-page "http://genes.mit.edu/burgelab/miso/index.html") + `(("python-mock" ,python2-mock) ; for tests + ("python-pytz" ,python2-pytz))) ; for tests + (home-page "https://www.genes.mit.edu/burgelab/miso/index.html") (synopsis "Mixture of Isoforms model for RNA-Seq isoform quantitation") (description "MISO (Mixture-of-Isoforms) is a probabilistic framework that quantitates @@ -4742,7 +4743,7 @@ interrupted by stop codons. OrfM finds and prints these ORFs.") `(("python-nose" ,python2-nose) ("python-sphinx" ,python2-sphinx) ("python-pyxb" ,python2-pyxb))) - (home-page "http://pacificbiosciences.github.io/pbcore/") + (home-page "https://pacificbiosciences.github.io/pbcore/") (synopsis "Library for reading and writing PacBio data files") (description "The pbcore package provides Python APIs for interacting with PacBio data @@ -4991,6 +4992,8 @@ different command-line tools: (define-public prodigal (package (name "prodigal") + ;; Check for a new home page when updating this package: + ;; https://github.com/hyattpd/Prodigal/issues/36#issuecomment-536617588 (version "2.6.3") (source (origin (method git-fetch) @@ -5003,14 +5006,14 @@ different command-line tools: "1fs1hqk83qjbjhrvhw6ni75zakx5ki1ayy3v6wwkn3xvahc9hi5s")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ;no check target + `(#:tests? #f ; no check target #:make-flags (list (string-append "INSTALLDIR=" (assoc-ref %outputs "out") "/bin")) #:phases (modify-phases %standard-phases (delete 'configure)))) - (home-page "http://prodigal.ornl.gov") + (home-page "https://github.com/hyattpd/Prodigal") (synopsis "Protein-coding gene prediction for Archaea and Bacteria") (description "Prodigal runs smoothly on finished genomes, draft genomes, and @@ -5124,7 +5127,7 @@ partial genes, and identifies translation initiation sites.") ("r-minimal" ,r-minimal) ("r-ggplot2" ,r-ggplot2) ("coreutils" ,coreutils))) - (home-page "http://sanger-pathogens.github.io/Roary") + (home-page "https://sanger-pathogens.github.io/Roary/") (synopsis "High speed stand-alone pan genome pipeline") (description "Roary is a high speed stand alone pan genome pipeline, which takes @@ -5168,7 +5171,7 @@ extremely diverse sets of genomes.") #t))))) (inputs `(("openmpi" ,openmpi))) - (home-page "http://sco.h-its.org/exelixis/web/software/raxml/index.html") + (home-page "https://cme.h-its.org/exelixis/web/software/raxml/index.html") (synopsis "Randomized Axelerated Maximum Likelihood phylogenetic trees") (description "RAxML is a tool for phylogenetic analysis and post-analysis of large @@ -6039,7 +6042,8 @@ sequence itself can be retrieved from these databases.") ("fuse" ,fuse) ("hdf5" ,hdf5) ("zlib" ,zlib))) - (home-page "http://www.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=software") + (home-page + "https://trace.ncbi.nlm.nih.gov/Traces/sra/sra.cgi?view=software") (synopsis "Tools and libraries for reading and writing sequencing data") (description "The SRA Toolkit from NCBI is a collection of tools and libraries for @@ -6265,7 +6269,7 @@ of these reads to align data quickly through a hash-based indexing scheme.") #t)))))) (inputs `(("zlib" ,zlib))) - (home-page "http://bioinfo.lifl.fr/RNA/sortmerna") + (home-page "https://bioinfo.lifl.fr/RNA/sortmerna/") (synopsis "Biological sequence analysis tool for NGS reads") (description "SortMeRNA is a biological sequence analysis tool for filtering, mapping @@ -7272,13 +7276,13 @@ also known as views, in a controlled vocabulary.") (define-public r-biocstyle (package (name "r-biocstyle") - (version "2.14.2") + (version "2.14.4") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "0nc1cbzp5zdwc0rss4r6v7cpgynmmnj3sczwmajr58nabkndwsvf")))) + "1x71in059zql40f4c87bd1gf96r945kdvwbq61jmch9d3d8nwxbb")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) @@ -7345,13 +7349,13 @@ checks on R packages that are to be submitted to the Bioconductor repository.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.24.1") + (version "0.24.2") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "1rr7ml3gn83g8fbvhgvryyzlh4p3qgpwcrsz6ii4y7gh1hqxggpx")))) + "1s1h00k2ki7sd0hz4l8n41xr6ixszag7lm0ryrbb08idgcy16ipn")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7372,13 +7376,13 @@ S4Vectors package itself.") (define-public r-iranges (package (name "r-iranges") - (version "2.20.1") + (version "2.20.2") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "0qssp04wfrc1r92hd3szy03n8sdz8vrqjdxa2mcrsc0k0n9bchz5")))) + "1jhnxb9yacmj2z82b6992gihjvj1a0gnjwbjiagyyx03fqnv23kg")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) @@ -7783,13 +7787,13 @@ tab-delimited (tabix) files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.12.1") + (version "0.12.2") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "1yr4i2x127v814nxg53aibp77p3vg76f3n3hgknpwx3snfhc81xs")))) + "09lackgix5jpm16k0mz2zkibflfb4wzidbz4q32mlxmklf40037q")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) @@ -8233,7 +8237,7 @@ throughput genetic sequencing data sets using regression methods.") (base32 "03lmvydln8b7666b6w46qbryhf83vsd11d4y2v95rfgvqgq66l1i")))) (build-system r-build-system) - (home-page "http://rqtl.org/") + (home-page "https://rqtl.org/") (synopsis "R package for analyzing QTL experiments in genetics") (description "R/qtl is an extension library for the R statistics system. It is used to analyze experimental crosses for identifying @@ -8309,7 +8313,7 @@ libraries for systems that do not have these available via other means.") (propagated-inputs `(("r-optparse" ,r-optparse) ("r-rcolorbrewer" ,r-rcolorbrewer))) - (home-page "http://www.e-rna.org/r-chie/index.cgi") + (home-page "https://www.e-rna.org/r-chie/index.cgi") (synopsis "Analysis framework for RNA secondary structure") (description "The R4RNA package aims to be a general framework for the analysis of RNA @@ -8929,7 +8933,7 @@ replacement for strverscmp.") (("['\"]matplotlib.*?['\"]") "'matplotlib'")) #t))))) - (home-page "http://multiqc.info") + (home-page "https://multiqc.info") (synopsis "Aggregate bioinformatics analysis reports") (description "MultiQC is a tool to aggregate bioinformatics results across many @@ -9599,7 +9603,7 @@ classes.") ("r-locfit" ,r-locfit) ("r-mass" ,r-mass) ("r-rcolorbrewer" ,r-rcolorbrewer))) - (home-page "http://www-huber.embl.de/users/anders/DESeq") + (home-page "https://www-huber.embl.de/users/anders/DESeq/") (synopsis "Differential gene expression analysis") (description "This package provides tools for estimating variance-mean dependence in @@ -9728,7 +9732,7 @@ by the user, helping with quick and reproducible access.") ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) ("r-s4vectors" ,r-s4vectors))) - (home-page "http://www.bioinf.jku.at/software/fastseg/index.html") + (home-page "https://www.bioinf.jku.at/software/fastseg/index.html") (synopsis "Fast segmentation algorithm for genetic sequencing data") (description "Fastseg implements a very fast and efficient segmentation algorithm. @@ -9780,7 +9784,8 @@ microarrays or GRanges for sequencing data.") `(("r-annotationdbi" ,r-annotationdbi) ("r-graph" ,r-graph) ("r-keggrest" ,r-keggrest))) - (home-page "http://www.biomedcentral.com/1471-2105/10/161") + (home-page (string-append "https://bmcbioinformatics.biomedcentral.com/" + "articles/10.1186/1471-2105-10-161")) (synopsis "Generally applicable gene-set enrichment for pathway analysis") (description "GAGE is a published method for gene set (enrichment or GSEA) or pathway @@ -10161,7 +10166,7 @@ the earlier snpMatrix package, allowing for uncertainty in genotypes.") (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is ;; located under "data/annotation/" instead of "bioc/". - (uri (string-append "http://www.bioconductor.org/packages/" + (uri (string-append "https://www.bioconductor.org/packages/" "release/data/annotation/src/contrib/" "Homo.sapiens_" version ".tar.gz")) @@ -10892,7 +10897,7 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") (inputs `(("lz4" ,lz4) ("htslib" ,htslib-for-sambamba))) - (home-page "http://lomereiter.github.io/sambamba") + (home-page "https://lomereiter.github.io/sambamba/") (synopsis "Tools for working with SAM/BAM data") (description "Sambamba is a high performance modern robust and fast tool (and library), written in the D programming language, for @@ -11009,7 +11014,7 @@ with narrow binding events such as transcription factor ChIP-seq.") ("cutadapt" ,cutadapt))) (native-inputs `(("unzip" ,unzip))) - (home-page "http://www.bioinformatics.babraham.ac.uk/projects/trim_galore/") + (home-page "https://www.bioinformatics.babraham.ac.uk/projects/trim_galore/") (synopsis "Wrapper around Cutadapt and FastQC") (description "Trim Galore! is a wrapper script to automate quality and adapter trimming as well as quality control, with some added functionality to @@ -11071,7 +11076,7 @@ matplotlib.use('Agg') ("python2-numpy" ,python2-numpy) ("python2-networkx" ,python2-networkx) ("python2-biopython" ,python2-biopython))) - (home-page "http://compbio.uthscsa.edu/GESS_Web/") + (home-page "https://compbio.uthscsa.edu/GESS_Web/") (synopsis "Detect exon-skipping events from raw RNA-seq data") (description "GESS is an implementation of a novel computational method to detect de @@ -11322,8 +11327,8 @@ models. TADbit is complemented by TADkit for visualizing 3D models.") ("libpng" ,libpng) ("mariadb" ,mariadb "lib") ("mariadb-dev" ,mariadb "dev") - ("openssl" ,openssl))) - (home-page "http://genome.cse.ucsc.edu/index.html") + ("openssl" ,openssl-1.0))) + (home-page "https://genome.cse.ucsc.edu/index.html") (synopsis "Assorted bioinformatics utilities") (description "This package provides the kentUtils, a selection of bioinformatics utilities used in combination with the UCSC genome @@ -11483,7 +11488,7 @@ Browser.") (sha256 (base32 "138mwsr4nf5qif4mrxx286mpnagxd1xwl6k8aidrjgknaqg88zyr")))) ("uglify-js" ,uglify-js))) - (home-page "http://www.bioinformatics.babraham.ac.uk/projects/bismark/") + (home-page "https://www.bioinformatics.babraham.ac.uk/projects/bismark/") (synopsis "Map bisulfite treated sequence reads and analyze methylation") (description "Bismark is a program to map bisulfite treated sequencing reads to a genome of interest and perform methylation calls in a single step. @@ -11586,7 +11591,7 @@ using nucleotide or amino-acid sequence data.") `(("hdf5" ,hdf5) ("htslib" ,htslib) ("zlib" ,zlib))) - (home-page "http://pachterlab.github.io/kallisto/") + (home-page "https://pachterlab.github.io/kallisto/") (synopsis "Near-optimal RNA-Seq quantification") (description "Kallisto is a program for quantifying abundances of transcripts from @@ -11761,7 +11766,7 @@ dependency like SeqAn.") ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://www.cs.cmu.edu/~ckingsf/software/sailfish") + (home-page "https://www.cs.cmu.edu/~ckingsf/software/sailfish/") (synopsis "Mapping-based isoform quantification from RNA-Seq reads") (description "Sailfish is a tool for genomic transcript quantification from RNA-seq data. It requires a set of target transcripts (either from a @@ -13564,7 +13569,7 @@ such as Hi-C contact matrices.") ("python-six" ,python-six) ("python-tables" ,python-tables) ("python-unidecode" ,python-unidecode))) - (home-page "http://hicexplorer.readthedocs.io") + (home-page "https://hicexplorer.readthedocs.io") (synopsis "Process, analyze and visualize Hi-C data") (description "HiCExplorer is a powerful and easy to use set of tools to process, @@ -14646,7 +14651,7 @@ to maximize phylogenetic likelihood or posterior probability according to a reference alignment. Pplacer is designed to be fast, to give useful information about uncertainty, and to offer advanced visualization and downstream analysis.") - (home-page "http://matsen.fhcrc.org/pplacer") + (home-page "https://matsen.fhcrc.org/pplacer/") (license license:gpl3)))) ;; This package is installed alongside 'pplacer'. It is a separate package so @@ -14702,14 +14707,14 @@ downstream analysis.") (build-system python-build-system) (arguments `(#:python ,python-2 - #:tests? #f)) ; some tests are interactive + #:tests? #f)) ; some tests are interactive (propagated-inputs `(("python-dendropy" ,python2-dendropy) ("python-matplotlib" ,python2-matplotlib) ("python-numpy" ,python2-numpy) ("python-pysam" ,python2-pysam) ("python-scipy" ,python2-scipy))) - (home-page "http://pypi.python.org/pypi/checkm/") + (home-page "https://pypi.org/project/Checkm/") (synopsis "Assess the quality of putative genome bins") (description "CheckM provides a set of tools for assessing the quality of genomes @@ -15361,7 +15366,7 @@ pairs.") ("r-rsamtools" ,r-rsamtools) ("r-edger" ,r-edger) ("r-igraph" ,r-igraph))) - (home-page "http://velocyto.org") + (home-page "https://velocyto.org") (synopsis "RNA velocity estimation in R") (description "This package provides basic routines for estimation of gene-specific diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 367f87e2e2..e10e684d32 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -99,6 +99,19 @@ faults or other signals. The output from unit tests can be used within source code editors and IDEs.") (license license:lgpl2.1+))) +;; Some packages require this older version. Removed once no longer needed. +(define-public check-0.12 + (package/inherit + check + (version "0.12.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/libcheck/check/releases" + "/download/" version "/check-" version ".tar.gz")) + (sha256 + (base32 + "0d22h8xshmbpl9hba9ch3xj8vb9ybm5akpsbbh7yj07fic4h2hj6")))))) + (define-public cunit (package (name "cunit") @@ -567,25 +580,43 @@ but it works for any C/C++ project.") (define-public python-parameterized (package (name "python-parameterized") - (version "0.6.1") + (version "0.7.1") (source (origin (method url-fetch) (uri (pypi-uri "parameterized" version)) (sha256 (base32 - "1qj1939shm48d9ql6fm1nrdy4p7sdyj8clz1szh5swwpf1qqxxfa")))) + "1vapry9lyfb2mlpgk2wh9079hzxzq5120bsczncxxay663mdp53a")))) (build-system python-build-system) - (arguments '(#:tests? #f)) ; there are no tests + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (invoke "nosetests" "-v") + (format #t "test suite not run~%")) + #t))))) + (native-inputs + `(("python-mock" ,python-mock) + ("python-nose" ,python-nose))) (home-page "https://github.com/wolever/parameterized") (synopsis "Parameterized testing with any Python test framework") (description "Parameterized is a Python library that aims to fix parameterized testing for every Python test framework. It supports nose, py.test, and unittest.") + (properties `((python2-variant . ,(delay python2-parameterized)))) (license license:bsd-2))) (define-public python2-parameterized - (package-with-python2 python-parameterized)) + (let ((base (package-with-python2 (strip-python2-variant + python-parameterized)))) + (package/inherit + base + (source + (origin + (inherit (package-source base)) + (patches (search-patches "python2-parameterized-docstring-test.patch"))))))) (define-public python-minimock (package @@ -1008,7 +1039,8 @@ timeout has been exceeded.") (build-system python-build-system) (native-inputs `(("python-pytest" ,python-pytest))) - (home-page "http://pythonpaste.org/scripttest/") + (home-page (string-append "https://web.archive.org/web/20161029233413/" + "http://pythonpaste.org/scripttest/")) (synopsis "Python library to test command-line scripts") (description "Scripttest is a Python helper library for testing interactive command-line applications. With it you can run a script in a diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm index 2b9868f902..3330f91dfc 100644 --- a/gnu/packages/chez.scm +++ b/gnu/packages/chez.scm @@ -77,6 +77,7 @@ (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) + ("libuuid" ,util-linux) ("libx11" ,libx11) ("xorg-rgb" ,xorg-rgb) ("nanopass" ,nanopass) @@ -87,8 +88,7 @@ `(("texlive" ,(texlive-union (list texlive-latex-oberdiek texlive-generic-epsf))) ("ghostscript" ,ghostscript) - ("netpbm" ,netpbm) - ("util-linux" ,util-linux))) + ("netpbm" ,netpbm))) (native-search-paths (list (search-path-specification (variable "CHEZSCHEMELIBDIRS") diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index dc8e041219..ecded29abd 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -242,9 +242,9 @@ from forcing GEXP-PROMISE." #:system system #:guile-for-build guile))) -(define %chromium-version "78.0.3904.108") -(define %ungoogled-revision "8f065138317a6152b20decc224027a5192ba76b1") -(define %debian-revision "e43d74632091324774a5049668782dba7b09cf72") +(define %chromium-version "79.0.3945.130") +(define %ungoogled-revision "e2fae994d786b6716fb473a47b0c880bcfdc2497") +(define %debian-revision "debian/79.0.3945.130-2") (define package-revision "0") (define %package-version (string-append %chromium-version "-" package-revision "." @@ -258,7 +258,7 @@ from forcing GEXP-PROMISE." %chromium-version ".tar.xz")) (sha256 (base32 - "03jvfz68nvmmrplygf96sh0l347p4h03c8vpw8yrglh6ycwkiigr")))) + "183vz3lf1588cr9s5vlnj65qvbmz36s8cg8k7dvr64cxmcqk86an")))) (define %ungoogled-origin (origin @@ -269,7 +269,7 @@ from forcing GEXP-PROMISE." (string-take %ungoogled-revision 7))) (sha256 (base32 - "0zix90jz82hpym9jmyf99yw19swaf13ps6szi60wccmz1gccv77g")))) + "15vmc07iba1zmzn4j7c5n2hyvyxzwwf9hc3kyym0m4jajlsyxr5f")))) (define %debian-origin (origin @@ -283,15 +283,7 @@ from forcing GEXP-PROMISE." (string-take %debian-revision 7)))) (sha256 (base32 - "1l1ajjkn1y7ql5w4zb3c3vw57hkydvy1mac7y81rycx4g5djasaz")))) - -(define (gentoo-patch name hash revision) - (origin - (method url-fetch) - (uri (string-append "https://gitweb.gentoo.org/repo/gentoo.git/plain" - "/www-client/chromium/files/" name "?id=" revision)) - (file-name name) - (sha256 (base32 hash)))) + "1rbzxcwfp7v0c6rkvn9jl9by7p363cnbdyqazwiak1z03kmw3nkz")))) ;; This is a "computed" origin that does the following: ;; *) Runs the Ungoogled scripts on a pristine Chromium tarball. @@ -336,7 +328,7 @@ from forcing GEXP-PROMISE." ;; Ungoogled-Chromium contains a forked subset of the Debian ;; patches. Disable those, as we apply newer versions later. (substitute* "patches/series" - ((".*/debian_buster/.*") + ((".*/debian/.*") "")) (format #t "Ungooglifying...~%") @@ -361,6 +353,7 @@ from forcing GEXP-PROMISE." (let loop ((line (read-line))) (unless (eof-object? line) (when (and (> (string-length line) 1) + (not (string-prefix? "#" line)) ;; Skip the Debian-specific ones. (not (string-prefix? "debianization/" line)) (not (string-prefix? "buster/" line)) @@ -429,21 +422,6 @@ from forcing GEXP-PROMISE." `(cons "--enable-custom-modes" ,flags)))))) -;; Chromium 78 requires libvpx features that are not in any release. -(define libvpx/chromium - (package/inherit - libvpx - (version "m78-3904") - (source (origin - (inherit (package-source libvpx)) - (uri (git-reference - (url "https://chromium.googlesource.com/webm/libvpx") - (commit version))) - (file-name (git-file-name "libvpx" version)) - (sha256 - (base32 - "1pphjfmg0aqq93n5cq790884v1h84di8p9mk3r28sm053wszhm7g")))))) - (define-public ungoogled-chromium (package (name "ungoogled-chromium") @@ -808,7 +786,7 @@ from forcing GEXP-PROMISE." ("libjpeg-turbo" ,libjpeg-turbo) ("libpng" ,libpng) ("libva" ,libva) - ("libvpx" ,libvpx/chromium) + ("libvpx" ,libvpx) ("libwebp" ,libwebp) ("libx11" ,libx11) ("libxcb" ,libxcb) @@ -871,13 +849,13 @@ disabled in order to protect the users privacy.") `(("wayland" ,wayland) ("wayland-protocols" ,wayland-protocols) ,@(package-inputs ungoogled-chromium))) - (arguments (substitute-keyword-arguments (package-arguments ungoogled-chromium) ((#:configure-flags flags) `(append (list "use_ozone=true" "ozone_platform_wayland=true" "ozone_auto_platforms=false" + "ozone_platform=\"wayland\"" "use_xkbcommon=true" "use_system_minigbm=true" "use_system_libwayland=true" diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index b49ac0f7c1..2006dc5173 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -47,8 +47,8 @@ #:use-module (guix build-system gnu)) (define-public cuirass - (let ((commit "e20ff86d97f7dd92dad140b5919e3cbdf2fb1ce6") - (revision "26")) + (let ((commit "46f73b6b7c05389c67b02d32c8946ca665611cba") + (revision "27")) (package (name "cuirass") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -60,7 +60,7 @@ (file-name (string-append name "-" version)) (sha256 (base32 - "1c3rcfmx7vm13x3nid9xbl18rrqljh5vb71qxps4yqid75br4hrb")))) + "1zw4g4y0cc76i0s0hdc7jbyhwkn8pz03k6x02dslq42000cyjgi2")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 2e6b50db69..6af1d413b8 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -114,14 +114,14 @@ highlighting your own code that seemed comprehensible when you wrote it.") (define-public global ; a global variable (package (name "global") - (version "6.6.3") + (version "6.6.4") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/global/global-" version ".tar.gz")) (sha256 (base32 - "0735pj47dnspf20n0j1px24p59nwjinlmlb2n32ln1hvdkprivnb")))) + "1515642wsjz7x3rsgaqk4sc7n0z2znl7idsk8jz8wgy5aswqqzlq")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses) ("libltdl" ,libltdl) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index cb73dcec75..98af41760f 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -1084,7 +1084,7 @@ well as bzip2.") (define-public snappy (package (name "snappy") - (version "1.1.7") + (version "1.1.8") (source (origin (method git-fetch) @@ -1093,7 +1093,7 @@ well as bzip2.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1x7r8sjmdqlqjz0xfiwdyrqpgaj5yrvrgb28ivgpvnxgar5qv6m2")) + (base32 "1j0kslq2dvxgkcxl1gakhvsa731yrcvcaipcp5k8k7ayicvkv9jv")) (patches (search-patches "snappy-add-O2-flag-in-CmakeLists.txt.patch")))) (build-system cmake-build-system) (arguments diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index 8277026c32..ff2490bc31 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -1293,14 +1293,14 @@ coordinates.") (define-public r-rgooglemaps (package (name "r-rgooglemaps") - (version "1.4.5") + (version "1.4.5.1") (source (origin (method url-fetch) (uri (cran-uri "RgoogleMaps" version)) (sha256 (base32 - "1acf0qc9597apcidjzrpvwhg9ihypr38jigc10jvqn33qbn1i9s7")))) + "1lrbl0nax7rzk460mh6rq9hydahdi3ckxk4kxx3xij29jl3lmijh")))) (properties `((upstream-name . "RgoogleMaps"))) (build-system r-build-system) (propagated-inputs `(("r-png" ,r-png))) @@ -1623,7 +1623,7 @@ print, summary, plot, update, etc. (sha256 (base32 "1lcq7r0q4jb8x6k023zr2ydj2dg925bqqbkhx1phpnyjrk897498")))) (build-system r-build-system) - (home-page "http://ps.r-lib.org") + (home-page "https://ps.r-lib.org") (synopsis "List, query, and manipulate system processes") (description "The ps package implements an API to list, query, and manipulate system @@ -1941,14 +1941,14 @@ compare different dendrograms to one another.") (define-public r-getoptlong (package (name "r-getoptlong") - (version "0.1.7") + (version "0.1.8") (source (origin (method url-fetch) (uri (cran-uri "GetoptLong" version)) (sha256 (base32 - "1fl3w2n602ldybc5qj7qw4xmzzb804bsjkqwf6dswzj0vf0qiadr")))) + "1l8xkvyl152bsyvxazsvx2sm1vkygn75x0lsg3sbg7xp6drdn3kc")))) (properties `((upstream-name . "GetoptLong"))) (build-system r-build-system) (inputs @@ -2034,18 +2034,15 @@ statistical functions and other utilities to ease their usage.") (define-public r-prettyunits (package (name "r-prettyunits") - (version "1.0.2") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "prettyunits" version)) (sha256 (base32 - "0p3z42hnk53x7ky4d1dr2brf7p8gv3agxr71i99m01n2hq2ri91m")))) + "0453vvslpkj1ysyv0cy9hw98q5wlnj7bvvz7vzl5ld8ij82lwy5c")))) (build-system r-build-system) - (propagated-inputs - `(("r-assertthat" ,r-assertthat) - ("r-magrittr" ,r-magrittr))) (home-page "https://github.com/gaborcsardi/prettyunits") (synopsis "Pretty, human readable formatting of quantities") (description @@ -2264,7 +2261,7 @@ quantile mixture from L-moments and trimmed L-moments.") (base32 "1mi3ig9jq0kd7yrwc5m37lmrw04p1b4lirnbsxi10z3n5yay4429")))) (build-system r-build-system) - (home-page "http://www.ral.ucar.edu/staff/ericg") + (home-page "https://ral.ucar.edu/staff/ericg/") (synopsis "Functions for confidence intervals and object information") (description "This package provides some very simple method functions for confidence @@ -2289,7 +2286,7 @@ SpatialVx.") (propagated-inputs `(("r-distillery" ,r-distillery) ("r-lmoments" ,r-lmoments))) - (home-page "http://www.assessment.ucar.edu/toolkit/") + (home-page "https://www.assessment.ucar.edu/toolkit/") (synopsis "Extreme value analysis") (description "ExtRemes is a suite of functions for carrying out analyses on the @@ -2365,14 +2362,14 @@ and S4 methods with inlined C, C++ or Fortran code supporting @code{.C} and (define-public r-bdsmatrix (package (name "r-bdsmatrix") - (version "1.3-3") + (version "1.3-4") (source (origin (method url-fetch) (uri (cran-uri "bdsmatrix" version)) (sha256 (base32 - "17ddvz4gnih7rx0lr1gzk280xyh6x796cf2x794dvplpiiq83skh")))) + "1sh6pg43rgqvips4fx0k4vmp5i9lmniix0bqwj2yq5m06gs227i5")))) (properties `((upstream-name . "bdsmatrix"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/bdsmatrix/") @@ -2555,14 +2552,14 @@ statistics/methods are implemented.") (define-public r-suppdists (package (name "r-suppdists") - (version "1.1-9.4") + (version "1.1-9.5") (source (origin (method url-fetch) (uri (cran-uri "SuppDists" version)) (sha256 (base32 - "1ffx8wigqqvz2pnh06jjc0fnf4vq9z2rhwk2y3f9aszn18ap3dgw")))) + "01j6p94m1g363nph2158fq2rmd6z3h5dvcv6aidh2d6syw131xak")))) (properties `((upstream-name . "SuppDists"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/SuppDists") @@ -2638,14 +2635,14 @@ contexts.") (define-public r-squarem (package (name "r-squarem") - (version "2017.10-1") + (version "2020.1") (source (origin (method url-fetch) (uri (cran-uri "SQUAREM" version)) (sha256 (base32 - "10xj26x7qjyvzndnbjl5krr9wabnb9cbrnp3m7xg673g8ddr12cv")))) + "0v4ax1v8diw2w7fdhfzz1z0bwixkmcrc39ax3y116f399rc06qbs")))) (properties `((upstream-name . "SQUAREM"))) (build-system r-build-system) (home-page "http://www.jhsph.edu/agingandhealth/People/Faculty_personal_pages/Varadhan.html") @@ -2910,14 +2907,14 @@ Delaunay triangulation and convex hull computation.") (define-public r-ddalpha (package (name "r-ddalpha") - (version "1.3.10") + (version "1.3.11") (source (origin (method url-fetch) (uri (cran-uri "ddalpha" version)) (sha256 (base32 - "1064g7y8d7kmvd5kjc2m48yvidmh2ci1y0xgil3pcx4ix6mf0ljz")))) + "1sdnb47r534nh138zk3a6b2mgi74nvshc7p5m304vjs9jlx4l2y3")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -3015,18 +3012,17 @@ problems as well as resampling based estimators of prediction error.") (define-public r-psych (package (name "r-psych") - (version "1.9.12") + (version "1.9.12.31") (source (origin (method url-fetch) (uri (cran-uri "psych" version)) (sha256 (base32 - "13r7fyjsl93m121awnwfhya8a0lw0l2byn60yqdbf9gp3lmb9ny0")))) + "02i9p6appf15hjdsi58g39bzs9as40f9qhy8m7ki30hd1fz1vrr5")))) (build-system r-build-system) (propagated-inputs - `(("r-foreign" ,r-foreign) - ("r-lattice" ,r-lattice) + `(("r-lattice" ,r-lattice) ("r-mnormt" ,r-mnormt) ("r-nlme" ,r-nlme))) (home-page "https://cran.r-project.org/web/packages/psych/") @@ -3104,14 +3100,14 @@ provides a one-row summary of model-level statistics.") (define-public r-recipes (package (name "r-recipes") - (version "0.1.8") + (version "0.1.9") (source (origin (method url-fetch) (uri (cran-uri "recipes" version)) (sha256 (base32 - "1n32qc2a3n9cykm8dv9qcr77kdhqfsjiqf6kgfk9s0lnpx2zaldm")))) + "1fmnka583sqm6v5bhxbllb4cd5xfqbf268aij2xgxiwckv3c0ynm")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -3641,14 +3637,14 @@ modeling for empirical income distributions.") (define-public r-vcd (package (name "r-vcd") - (version "1.4-4") + (version "1.4-5") (source (origin (method url-fetch) (uri (cran-uri "vcd" version)) (sha256 (base32 - "1lp99h0wvsc61l1dgcqjxdrcgpgw88ak430cdsv43kmm43qssqd5")))) + "0pqf1sdp0d60aqc7721hy2zfcp57902by0i28jqbn683dd50c21a")))) (build-system r-build-system) (propagated-inputs `(("r-colorspace" ,r-colorspace) @@ -3752,14 +3748,14 @@ plotting. a three dimensional point cloud.") (define-public r-ggridges (package (name "r-ggridges") - (version "0.5.1") + (version "0.5.2") (source (origin (method url-fetch) (uri (cran-uri "ggridges" version)) (sha256 (base32 - "0dhwcpy785ac2ny5bjp284595nnybi3554wd0yffsli0vzf7ry01")))) + "03pz257aw0mkh5k75rby9givkc1ky3n5scvhjhjiz9vry9fpffmh")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -3799,14 +3795,14 @@ plots in @code{ggplot2}.") (define-public r-cli (package (name "r-cli") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "cli" version)) (sha256 (base32 - "1gv3zqdipj29ivkw5dsi1qdlra7q4lcrcqvlg9fns7d670yglfki")))) + "0x28i7kj4qndk6mnn99qn9w2nfldv8csjnsn0n8phfnxq5hnmp5y")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -4012,13 +4008,13 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.11") + (version "0.12") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 - (base32 "0dncw6bqkal7nyarrrrj9arxy0y3nkdzmrbibcjh84m1cxd4phiw")))) + (base32 "0sgh8kafi9x1glmmcp1ly827pm8q7fsfngbplr41fbb4nc9363df")))) (build-system r-build-system) (home-page "https://github.com/yihui/xfun") (synopsis "Miscellaneous functions") @@ -4156,14 +4152,14 @@ terminals.") (define-public r-tinytex (package (name "r-tinytex") - (version "0.18") + (version "0.19") (source (origin (method url-fetch) (uri (cran-uri "tinytex" version)) (sha256 (base32 - "04mpbhadixbxmnazj0q6cj973cajchscvyh1k6a5b3qk26dp5krr")))) + "0jlcrvcqcbkimg7w40z5vhlnakb829vfgqpspm3pfl8karwzgqp6")))) (build-system r-build-system) (propagated-inputs `(("r-xfun" ,r-xfun))) @@ -4624,14 +4620,14 @@ interface.") (define-public r-trend (package (name "r-trend") - (version "1.1.1") + (version "1.1.2") (source (origin (method url-fetch) (uri (cran-uri "trend" version)) (sha256 (base32 - "1bd567n15k2vpmgbx02584k5kglrc58mlb5kgd07wdss3knpa48q")))) + "09b6ycyfgs4xlhx6kn6qm5rl2acp58hzhv8qclzn3kb1wjjyvxy5")))) (build-system r-build-system) (propagated-inputs `(("r-extradistr" ,r-extradistr))) @@ -5772,14 +5768,14 @@ Python to R they are converted back to R types.") (define-public r-bibtex (package (name "r-bibtex") - (version "0.4.2.1") + (version "0.4.2.2") (source (origin (method url-fetch) (uri (cran-uri "bibtex" version)) (sha256 (base32 - "1ks1w59ldwmfd1sj8ap7smyhf8dhykv7xnwrl8z9xzkcfpv1rbc0")))) + "140hkjzdp3033cvji861rd06z1ixgpnn4n5amygqsmhnixk8ff07")))) (build-system r-build-system) (propagated-inputs `(("r-stringr" ,r-stringr))) (home-page "https://github.com/romainfrancois/bibtex") @@ -6015,14 +6011,14 @@ steps and provides ggplot2-based elegant data visualization.") (define-public r-fansi (package (name "r-fansi") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "fansi" version)) (sha256 (base32 - "02f2rx7v7wz6w97m2slwky2i5y8f9iafycmkyr3siy3z3k8fj171")))) + "028ywjy538psnmdnddvy5jr3idzffr4hikzr4x97x0m30g4fws9w")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) ; for vignettes @@ -6057,14 +6053,14 @@ results to the user.") (define-public r-hdf5r (package (name "r-hdf5r") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "hdf5r" version)) (sha256 (base32 - "1pq12vkfqxvcaznwaxvjdg3acimk5a20m8h18sixvxc34vnqxw8f")))) + "0hvi2cvyv6zlxgpawnmsihxclp2ln88slbrnmaxagmjswskxsrpx")))) (build-system r-build-system) (inputs `(("hdf5" ,hdf5) @@ -6387,14 +6383,14 @@ other add-on packages.") (define-public r-insight (package (name "r-insight") - (version "0.7.1") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "insight" version)) (sha256 (base32 - "0scjmr8qvwaswb9wfq2lxp1v5fl72way8cid9agrf0z1agp0adad")))) + "1bkcwvjpfy4q4k478x8x42yiqz6v0fk6z6hfp6fli3h63smlmck0")))) (build-system r-build-system) (home-page "https://easystats.github.io/insight/") (synopsis "Easy access to model information for various model objects") @@ -6442,14 +6438,14 @@ vice versa), or to deal with multiple declared missing values.") (define-public r-sjmisc (package (name "r-sjmisc") - (version "2.8.2") + (version "2.8.3") (source (origin (method url-fetch) (uri (cran-uri "sjmisc" version)) (sha256 (base32 - "0rl0bmk91wc4dxdgy008fl0dwkx3ffvys30vgpnr78lb4pk45nb2")))) + "0w8l9grmp4q775jrf4q6rxx36ld5daz9b0gdxyyh42xfihk6m62h")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -6871,14 +6867,14 @@ containing one or more SNPs that evolved under directional selection.") (define-public r-proc (package (name "r-proc") - (version "1.15.3") + (version "1.16.1") (source (origin (method url-fetch) (uri (cran-uri "pROC" version)) (sha256 (base32 - "1jx8af9p6sxbypqvj1cci7q9sbyaw310inbjxibjcr3acj59h45h")))) + "0qkp1byl2xspxaaf0by6mvvrhg7wlz6fxmynz2hkh0ds24w7ig9m")))) (properties `((upstream-name . "pROC"))) (build-system r-build-system) (propagated-inputs @@ -8225,14 +8221,14 @@ packages maintained by Torsten Hothorn.") (define-public r-multcomp (package (name "r-multcomp") - (version "1.4-11") + (version "1.4-12") (source (origin (method url-fetch) (uri (cran-uri "multcomp" version)) (sha256 (base32 - "0jw9661hs4396wz9vflk3rak0ryzj1cg2pnndsn1gb4fjyf2vlhb")))) + "14c2f10rz546w7ly5f4r6wnd07yj5gic38an17gxny1vf2nsff0b")))) (build-system r-build-system) (propagated-inputs `(("r-codetools" ,r-codetools) @@ -8383,14 +8379,14 @@ Bayesian modeling.") (define-public r-tmb (package (name "r-tmb") - (version "1.7.15") + (version "1.7.16") (source (origin (method url-fetch) (uri (cran-uri "TMB" version)) (sha256 (base32 - "1r2d8c5iazihba42sn33yarv0dcfiy989sx64zcf14zr8k6cgjzs")))) + "0lly12hdi99iklwr0vg9xkyhi038w4gncbf895qcwbndmqp0lx44")))) (properties `((upstream-name . "TMB"))) (build-system r-build-system) (propagated-inputs @@ -8699,7 +8695,7 @@ back to file after modifications.") `(("r-rcpp" ,r-rcpp))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://fs.r-lib.org") + (home-page "https://fs.r-lib.org") (synopsis "Cross-platform file system operations based on libuv") (description "This package provides a cross-platform interface to file system @@ -11692,14 +11688,14 @@ the local machine to, say, distributed processing on a remote compute cluster.") (define-public r-future-apply (package (name "r-future-apply") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (cran-uri "future.apply" version)) (sha256 (base32 - "0wd3bh114zkvrqlpn8gqz4ix1igr9hr8x72h2g00a7mqkfjfqx33")))) + "1kgq6dv96hdy35kysqkn606nj7s9dp4ibgpm6n46gqhc5n75lzkk")))) (properties `((upstream-name . "future.apply"))) (build-system r-build-system) (propagated-inputs @@ -12108,14 +12104,14 @@ transformation, respectively.") (define-public r-shinyjs (package (name "r-shinyjs") - (version "1.0") + (version "1.1") (source (origin (method url-fetch) (uri (cran-uri "shinyjs" version)) (sha256 (base32 - "113zpijri0l80rlgrvqn6bxk0sdqgl79h7yhja2p76f9dc9i2sr8")))) + "14k8y313ppj23m9rhlk8jc94x6sbn3qrsnx6xrijiyv8m8dii1l9")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -13620,13 +13616,13 @@ SELECT or UPDATE queries to an end-point.") (define-public r-bookdown (package (name "r-bookdown") - (version "0.16") + (version "0.17") (source (origin (method url-fetch) (uri (cran-uri "bookdown" version)) (sha256 (base32 - "1gwgvx1yg6q3wccnhidr3gshdvlgr42i4pvlg4h29kpsa7smjiv1")))) + "10b4gnd6z3w13pysqqan43blxcbk7bgbzc7wr83b23ag1lh2n40j")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) @@ -13915,14 +13911,14 @@ interaction search in high-dimensional data.") (define-public r-rttf2pt1 (package (name "r-rttf2pt1") - (version "1.3.7") + (version "1.3.8") (source (origin (method url-fetch) (uri (cran-uri "Rttf2pt1" version)) (sha256 (base32 - "12hf9r3mhjr9sawdvf7qhjf1zph2q64f77i81jwvy7awidbm0kja")))) + "0b3f2zkmbyshn19cnaaf042d0zwf43l9jnkqizfhxxwb93a4c1jn")))) (properties `((upstream-name . "Rttf2pt1"))) (build-system r-build-system) (home-page "https://github.com/wch/Rttf2pt1") @@ -15040,14 +15036,14 @@ extends the lme4 package.") (define-public r-batchtools (package (name "r-batchtools") - (version "0.9.11") + (version "0.9.12") (source (origin (method url-fetch) (uri (cran-uri "batchtools" version)) (sha256 (base32 - "02mj21ypcjv5fs7ajf63p6bq0cyvihdl55hlpqx6kmsfjin1cr0v")))) + "16x524hvy9d8p7r4fi1c8mixcvzgsjbf3y0vxaa56ssbbab4p7f9")))) (build-system r-build-system) (propagated-inputs `(("r-backports" ,r-backports) @@ -15350,14 +15346,14 @@ easily.") (define-public r-umap (package (name "r-umap") - (version "0.2.4.0") + (version "0.2.4.1") (source (origin (method url-fetch) (uri (cran-uri "umap" version)) (sha256 (base32 - "1dzbwq96k5vqr64wk6s26ks4311h570xg6gf0prr4vnn033pqnch")))) + "1pnh3hv8ihiz2nszqp797lkrdhhna2a6mzpizbsk0s9m8cj4wxva")))) (build-system r-build-system) (propagated-inputs `(("r-openssl" ,r-openssl) @@ -15881,14 +15877,14 @@ in pipelines.") (define-public r-parameters (package (name "r-parameters") - (version "0.3.0") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "parameters" version)) (sha256 (base32 - "0ifb9g1h8sn661q7jf9d8glk58gxdcym5ywbmx7phwn0y3is5wdv")))) + "0z1hdxgippchij28h8xbbz6l29kkyakwxxj5vxnpic40cpkqqdd6")))) (properties `((upstream-name . "parameters"))) (build-system r-build-system) (propagated-inputs @@ -16038,13 +16034,13 @@ programming problems.") (define-public r-desolve (package (name "r-desolve") - (version "1.27") + (version "1.27.1") (source (origin (method url-fetch) (uri (cran-uri "deSolve" version)) (sha256 - (base32 "1qhjq4vxlxd9qmhf6i26x1k7bzhldlxzbby1zgcplicdvlqk951d")))) + (base32 "05sax045qrk550gsn2i7krb9rbg51rx88x4v190acsigqknxffrv")))) (properties `((upstream-name . "deSolve"))) (build-system r-build-system) (native-inputs @@ -17640,7 +17636,7 @@ forest) is fit on the kernel matrix of a subset of the training data.") "01f84crqx17xd6xy55qxlvsj3knm8lhw7jl26p2rh2w3y0nvqlbm")))) (properties `((upstream-name . "dummies"))) (build-system r-build-system) - (home-page "http://www.decisionpatterns.com") + (home-page "https://decisionpatterns.com") (synopsis "Create dummy/indicator variables flexibly and efficiently") (description "This package lets you expand factors, characters and other eligible @@ -17883,14 +17879,14 @@ allowed.") (define-public r-gdina (package (name "r-gdina") - (version "2.7.3") + (version "2.7.8") (source (origin (method url-fetch) (uri (cran-uri "GDINA" version)) (sha256 (base32 - "0875xfbm36gqzr0116xzlbm8rlff85rybr4s4hjzfflfvjdhgvfx")))) + "1aj2ssd7vpszl7p22srkkkpx4a7gkc38vrv3bq7j1zr32096y4zj")))) (properties `((upstream-name . "GDINA"))) (build-system r-build-system) (propagated-inputs @@ -18380,6 +18376,36 @@ simple, modern C++ library for image processing.") it may be seen by an animal with less acute vision.") (license license:gpl2+))) +(define-public r-caret + (package + (name "r-caret") + (version "6.0-85") + (source + (origin + (method url-fetch) + (uri (cran-uri "caret" version)) + (sha256 + (base32 + "0jxbf2zcvbb5s2pnjzg182awjvylc57q7z5plx6gs6gm62zxjafs")))) + (build-system r-build-system) + (propagated-inputs + `(("r-foreach" ,r-foreach) + ("r-ggplot2" ,r-ggplot2) + ("r-lattice" ,r-lattice) + ("r-modelmetrics" ,r-modelmetrics) + ("r-nlme" ,r-nlme) + ("r-plyr" ,r-plyr) + ("r-proc" ,r-proc) + ("r-recipes" ,r-recipes) + ("r-reshape2" ,r-reshape2) + ("r-withr" ,r-withr))) + (home-page "https://github.com/topepo/caret") + (synopsis "Classification and regression training") + (description + "This package provides miscellaneous functions for training and plotting +classification and regression models.") + (license license:gpl2+))) + (define-public r-adabag (package (name "r-adabag") @@ -18845,14 +18871,14 @@ Langford (2006) @url{doi:10.1145/1143844.1143857}.") (define-public r-poibin (package (name "r-poibin") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (cran-uri "poibin" version)) (sha256 (base32 - "1rllgmk7yanb5amysl33kmi11lx86q5kqblyb8qqb3ckj2w4jhm2")))) + "1sxryvwwz6ldsnkzdy56p8c895s5yvpcai9ndyjv1x5q3l05wf9v")))) (properties `((upstream-name . "poibin"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/poibin/") diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 1fe21fc7d0..19a84f5cdb 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2019 John Soo <jsoo1@asu.edu> +;;; Copyright © 2019, 2020 John Soo <jsoo1@asu.edu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,7 +25,14 @@ #:use-module (guix build-system cargo) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages)) + #:use-module (guix packages) + #:use-module (gnu packages compression) + #:use-module (gnu packages jemalloc) + #:use-module (gnu packages pcre) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages ssh) + #:use-module (gnu packages tls) + #:use-module (gnu packages version-control)) ;;; ;;; Please: Try to add new module packages in alphabetic order. @@ -34,7 +41,7 @@ (define-public rust-adler32-1.0 (package (name "rust-adler32") - (version "1.0.3") + (version "1.0.4") (source (origin (method url-fetch) @@ -42,15 +49,18 @@ (file-name (string-append name "-" version ".crate")) (sha256 - (base32 - "0p7fxlnks9l7p7rwfqi7aqgnk2bps5zc0rjiw00mdw19nnbjjlky")))) + (base32 + "1hnan4fgmnidgn2k84hh2i67c3wp2c5iwd5hs61yi7gwwx1p6bjx")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.4)))) (home-page "https://github.com/remram44/adler32-rs") (synopsis "Implementation of the Adler32 rolling hash algorithm") (description "This library is an implementation of the Adler32 rolling hash algorithm in the Rust programming language.") - (properties '((hidden? . #t))) (license (list license:bsd-3 license:zlib)))) @@ -126,7 +136,7 @@ Rust, using gimli.") (define-public rust-aho-corasick-0.7 (package (name "rust-aho-corasick") - (version "0.7.3") + (version "0.7.6") (source (origin (method url-fetch) @@ -135,17 +145,46 @@ Rust, using gimli.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0k1nqabiz37mnfnlrn084qi9yf8pj6a38qgbb3lc5zlr1jp89x76")))) + "0b8dh20fhdc59dhhnfi89n2bi80a8zbagzd5c122hf1vv2amxysq")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t - #:cargo-inputs (("rust-memchr" ,rust-memchr-2.2)))) + #:cargo-inputs (("rust-memchr" ,rust-memchr-2.2)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/BurntSushi/aho-corasick") (synopsis "Fast multiple substring searching") (description "Fast multiple substring searching.") (license (list license:unlicense license:expat)))) +(define-public rust-aho-corasick-0.6 + (package + (inherit rust-aho-corasick-0.7) + (name "rust-aho-corasick") + (version "0.6.10") + (source + (origin + (method url-fetch) + (uri (crate-uri "aho-corasick" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "19f8v503ibvlyr824g5ynicrh1lsmp2i0zmpszr8lqay0qw3vkl1")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-memchr" ,rust-memchr-2.2)) + #:cargo-development-inputs + (("rust-csv" ,rust-csv-1.1) + ("rust-docopt" ,rust-docopt-1.1) + ("rust-memmap" ,rust-memmap-0.6) + ("rust-quickcheck" ,rust-quickcheck-0.7) + ("rust-rand" ,rust-rand-0.5) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0)))))) + (define-public rust-ansi-term-0.11 (package (name "rust-ansi-term") @@ -183,12 +222,12 @@ text or blue underlined text, on ANSI terminals.") (base32 "19g2sw2qa2ibnh4x7j1snk46593jgx6y7rnvva496ynq61af5z9l")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/sfackler/rust-antidote") (synopsis "Poison-free Mutex and RwLock types") (description - "These types expose identical APIs to the standard library @code{Mutex} and + "These types expose identical APIs to the standard library @code{Mutex} and @code{RwLock} except that they do not return @code{PoisonError}s.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -249,10 +288,61 @@ text or blue underlined text, on ANSI terminals.") (description "This package provides an atomically swappable Arc.") (license (list license:expat license:asl2.0)))) -(define-public rust-arrayvec-0.4 +(define-public rust-argon2rs-0.2 + (package + (name "rust-argon2rs") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "argon2rs" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "14mkgkrjd4b4zy92pflz6yb4j1wn2chbd8jczxknxbkdm2vb0rrz")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-blake2-rfc" ,rust-blake2-rfc-0.2) + ("rust-scoped-threadpool" ,rust-scoped-threadpool-0.1)) + #:cargo-development-inputs + (("rust-cargon" ,rust-cargon-0.0)))) + (home-page "https://github.com/bryant/argon2rs") + (synopsis "Rust password hashing library that runs on Argon2") + (description "This package provides a pure Rust password hashing library +that runs on Argon2.") + (license license:expat))) + +(define-public rust-arrayref-0.3 + (package + (name "rust-arrayref") + (version "0.3.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "arrayref" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1vphy316jbgmgckk4z7m8csvlyc8hih9w95iyq48h8077xc2wf0d")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-quickcheck" ,rust-quickcheck-0.6)))) + (home-page "https://github.com/droundy/arrayref") + (synopsis "Macros to take array references of slices") + (description + "Macros to take array references of slices.") + (license license:bsd-2))) + +(define-public rust-arrayvec-0.5 (package (name "rust-arrayvec") - (version "0.4.10") + (version "0.5.1") (source (origin (method url-fetch) @@ -261,13 +351,12 @@ text or blue underlined text, on ANSI terminals.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0wcch3ca9qvkixgdbd2afrv1xa27l83vpraf7frsh9l8pivgpiwj")))) + "1f5mca8kiiwhvhxd1mbnq68j6v6rk139sch567zwwzl6hs37vxyg")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-nodrop" ,rust-nodrop-0.1) - ("rust-serde" ,rust-serde-1.0)) + (("rust-serde" ,rust-serde-1.0)) #:cargo-development-inputs (("rust-bencher" ,rust-bencher-0.1) ("rust-matches" ,rust-matches-0.1) @@ -280,6 +369,30 @@ array (it can be stored on the stack too). Implements fixed capacity ArrayVec and ArrayString.") (license (list license:expat license:asl2.0)))) +(define-public rust-arrayvec-0.4 + (package + (inherit rust-arrayvec-0.5) + (name "rust-arrayvec") + (version "0.4.10") + (source + (origin + (method url-fetch) + (uri (crate-uri "arrayvec" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0wcch3ca9qvkixgdbd2afrv1xa27l83vpraf7frsh9l8pivgpiwj")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-nodrop" ,rust-nodrop-0.1) + ("rust-serde" ,rust-serde-1.0)) + #:cargo-development-inputs + (("rust-bencher" ,rust-bencher-0.1) + ("rust-matches" ,rust-matches-0.1) + ("rust-serde-test" ,rust-serde-test-1.0)))))) + (define-public rust-ascii-0.9 (package (name "rust-ascii") @@ -320,11 +433,15 @@ ArrayVec and ArrayString.") (base32 "140sswp1bwqwc4zk80bxkbnfb3g936hgrb77g9g0k1zcld3wc0qq")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/softprops/atty") - (synopsis "A simple interface for querying atty") + (synopsis "Simple interface for querying atty") (description "This package provides a simple interface for querying atty.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-autocfg-0.1 @@ -340,13 +457,13 @@ ArrayVec and ArrayString.") (base32 "1chwgimpx5z7xbag7krr9d8asxfqbh683qhgl9kn3hxk2l0djj8x")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/cuviper/autocfg") (synopsis "Automatic cfg for Rust compiler features") (description "Rust library for build scripts to automatically configure code based on compiler support. Code snippets are dynamically tested to see if the @code{rustc} will accept them, rather than hard-coding specific version support.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -392,7 +509,7 @@ trace (backtrace) at runtime in a Rust program.") (define-public rust-backtrace-sys-0.1 (package (name "rust-backtrace-sys") - (version "0.1.31") + (version "0.1.32") (source (origin (method url-fetch) @@ -400,13 +517,20 @@ trace (backtrace) at runtime in a Rust program.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0as2pk77br4br04daywhivpi1ixxb8y2c7f726kj849dxys31a42")))) + "14c406z8bdmms8a5l8cv79jfkz1mk10qk5p97izf4vai53qparax")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-compiler-builtins" ,rust-compiler-builtins-0.1) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc-1.0)))) (home-page "https://github.com/rust-lang/backtrace-rs") (synopsis "Bindings to the libbacktrace gcc library") (description "This package provides bindings to the libbacktrace gcc library.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -440,7 +564,7 @@ trace (backtrace) at runtime in a Rust program.") (define-public rust-base-x-0.2 (package (name "rust-base-x") - (version "0.2.5") + (version "0.2.6") (source (origin (method url-fetch) @@ -448,12 +572,17 @@ trace (backtrace) at runtime in a Rust program.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0hv4y5cdhv6bk0ghk2434clw8v4mmk5cc9lsh6qrpri92zlfmx3n")))) + "1hfy0wv7j5ynd73yk1vyr32pqa77rp15lkrc54f8ky9c6hcbc80v")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-bencher" ,rust-bencher-0.1) + ("rust-json" ,rust-json-0.11) + ("rust-rand" ,rust-rand-0.3)))) (home-page "https://github.com/OrKoN/base-x-rs") (synopsis "Encode/decode any base") (description "This library provides for encoding and decoding any base.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-bencher-0.1 @@ -469,13 +598,13 @@ trace (backtrace) at runtime in a Rust program.") (base32 "1x8p2xblgqssay8cdykp5pkfc0np0jk5bs5cx4f5av097aav9zbx")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/bencher/") (synopsis "Port of the libtest benchmark runner to Rust stable") (description "This package provides a port of the libtest (unstable Rust) benchmark runner to Rust stable releases. Supports running benchmarks and filtering based on the name. Benchmark execution works exactly the same way and no more (caveat: black_box is still missing!).") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -638,7 +767,7 @@ libraries.") (define-public rust-bitflags-1 (package (name "rust-bitflags") - (version "1.1.0") + (version "1.2.1") (source (origin (method url-fetch) @@ -646,16 +775,72 @@ libraries.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1zc1qb1hwsnl2d8rhzicsv9kqd5b2hwbrscrcfw5as4sfr35659x")))) + "14qnd5nq8p2almk79m4m8ydqhd413yaxsyjp5xd19g3mikzf47fg")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bitflags/bitflags") (synopsis "Macro to generate structures which behave like bitflags") (description "This package provides a macro to generate structures which behave like a set of bitflags.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) +(define-public rust-blake2-rfc-0.2 + (package + (name "rust-blake2-rfc") + (version "0.2.18") + (source + (origin + (method url-fetch) + (uri (crate-uri "blake2-rfc" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0034g47hyq2bzmk40895ill1mbnpmmjakdq3dmm9clidvl5m6vax")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-arrayvec" ,rust-arrayvec-0.4) + ("rust-clippy" ,rust-clippy-0.0) + ("rust-constant-time-eq" ,rust-constant-time-eq-0.1)) + #:cargo-development-inputs + (("rust-data-encoding" ,rust-data-encoding-2.1)))) + (home-page "https://github.com/cesarb/blake2-rfc") + (synopsis "Rust implementation of BLAKE2 based on RFC 7693") + (description + "This package provides a pure Rust implementation of BLAKE2 based on RFC +7693.") + (license (list license:asl2.0 license:expat)))) + +(define-public rust-blake2b-simd-0.5 + (package + (name "rust-blake2b-simd") + (version "0.5.10") + (source + (origin + (method url-fetch) + (uri (crate-uri "blake2b-simd" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "12icvk8ixlivv3jv5nyrg01sajp4s279zb1kmif0nfja4ms2vyyq")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-arrayref" ,rust-arrayref-0.3) + ("rust-arrayvec" ,rust-arrayvec-0.5) + ("rust-constant-time-eq" ,rust-constant-time-eq-0.1)))) + (home-page "https://github.com/oconnor663/blake2_simd") + (synopsis "Pure Rust BLAKE2b implementation with dynamic SIMD") + (description + "This package provides a pure Rust implementation of the BLAKE2b and +BLAKE2bp hash functions.") + (license license:expat))) + (define-public rust-blas-sys-0.7 (package (name "rust-blas-sys") @@ -669,11 +854,13 @@ behave like a set of bitflags.") (base32 "0h14zjycwc76v15h8qll9z1xiryvmpvsb5gam97pqpdjrrwv5c8k")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-libc" ,rust-libc-0.2)))) (home-page "https://github.com/blas-lapack-rs/blas-sys") (synopsis "Bindings to BLAS (Fortran)") (description "Ths package provides bindings to BLAS (Fortran).") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1005,12 +1192,15 @@ capabilities") (base32 "1cszlab7jk736p0lb50ag4l9nv72m7j41bwrmygl0lr4iz0350w2")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-gcc" ,rust-gcc-0.3)))) (home-page "https://github.com/bryant/argon2rs") (synopsis "Thin wrapper around the Argon2 C library") (description "This package provides a thin wrapper around the Argon2 C library. It is used in argon2rs' bench suite.") - (properties '((hidden? . #t))) (license license:wtfpl2))) (define-public rust-cast-0.2 @@ -1051,18 +1241,20 @@ used in argon2rs' bench suite.") (base32 "0rgsn3klhhh09d8qf3b87zl4rwk93l2g0qzh9hhb0lff5kcfrzmn")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-libc" ,rust-libc-0.2)))) (home-page "https://github.com/blas-lapack-rs/cblas-sys") (synopsis "Bindings to CBLAS (C)") (description "The package provides bindings to CBLAS (C).") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-cc-1.0 (package (name "rust-cc") - (version "1.0.41") + (version "1.0.50") (source (origin (method url-fetch) @@ -1070,15 +1262,20 @@ used in argon2rs' bench suite.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1zxzd559dbbf1iwdzmkj7czapzccs17kqqmsj9ayijpdix5rrbld")))) + "1kdqm8ka7xg9h56b694pcz29ka33fsz27mzrphqc78gx96h8zqlm")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-jobserver" ,rust-jobserver-0.1)) + #:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile-3.1)))) (home-page "https://github.com/alexcrichton/cc-rs") (synopsis "Invoke the native C compiler") (description "This package provides a build-time dependency for Cargo build scripts to assist in invoking the native C compiler to compile native C code into a static archive to be linked into Rustcode.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1156,12 +1353,16 @@ archive to be linked into Rustcode.") (base32 "08h80ihs74jcyp24cd75wwabygbbdgl05k6p5dmq8akbr78vv1a7")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-compiler-builtins" ,rust-compiler-builtins-0.1) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)))) (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 #[cfg] parameters. Structured like an @code{if-else} chain, the first matching branch is the item that gets emitted.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1274,7 +1475,7 @@ Command Line Argument Parser.") (define-public rust-clicolors-control-1.0 (package (name "rust-clicolors-control") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) @@ -1282,14 +1483,20 @@ Command Line Argument Parser.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1y80cgarxhrd1bz5yjm81r444v6flvy36aaxrrsac0yhfd6gvavk")))) + "07klix8nbpwk0cg1k4h0kkiijm1jxvrzndqdkr7dqr6xvkjjw24h")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-atty" ,rust-atty-0.2) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/mitsuhiko/clicolors-control") (synopsis "Common utility library to control CLI colorization") (description "This package provides a common utility library to control CLI colorization.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-clippy-0.0 @@ -1331,11 +1538,14 @@ pitfalls in Rust.") (base32 "0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-bitflags" ,rust-bitflags-1)))) (home-page "https://nuxi.nl/cloudabi/") (synopsis "Low level interface to CloudABI") (description "Low level interface to CloudABI. Contains all syscalls and related types.") - (properties '((hidden? . #t))) (license license:bsd-2))) (define-public rust-cmake-0.1 @@ -1351,13 +1561,15 @@ pitfalls in Rust.") (base32 "0qkwibkvx5xjazvv9v8gvdlpky2jhjxvcz014nrixgzqfyv2byw1")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-cc" ,rust-cc-1.0)))) (home-page "https://github.com/alexcrichton/cmake-rs") (synopsis "Rust build dependency for running cmake") (description "This package provides a build dependency for running @code{cmake} to build a native library. The CMake executable is assumed to be @code{cmake} unless the CMAKE environmental variable is set.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1366,7 +1578,7 @@ CMAKE environmental variable is set.") (define-public rust-compiler-builtins-0.1 (package (name "rust-compiler-builtins") - (version "0.1.19") + (version "0.1.23") (source (origin (method url-fetch) @@ -1374,15 +1586,20 @@ CMAKE environmental variable is set.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1fpabpmg8paj4r5a37vmidh1jx1b7a6ilxm4s3xsxczx27ybjcjf")))) + "0m8rfikg08av2plyp32drjfsv7i10nf2kwzajjjkvl13yhj9s5fn")))) (build-system cargo-build-system) - (home-page "https://github.com/rust-lang-nursery/compiler-builtins") + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc-1.0)))) + (home-page "https://github.com/rust-lang/compiler-builtins") (synopsis "Compiler intrinsics used by the Rust compiler") (description "This package provides compiler intrinsics used by the Rust compiler. This package is primarily useful when building the @code{core} crate yourself and you need compiler-rt intrinsics.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1486,7 +1703,7 @@ that logs panics to @code{console.error}.") (define-public rust-constant-time-eq-0.1 (package (name "rust-constant-time-eq") - (version "0.1.4") + (version "0.1.5") (source (origin (method url-fetch) @@ -1494,15 +1711,15 @@ that logs panics to @code{console.error}.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "083icpr9xb72rrdxw3p4068dcspn6ai22jy7rhl2a8grfz448nlr")))) + "1g3vp04qzmk6cpzrd19yci6a95m7ap6wy7wkwgiy2pjklklrfl14")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/cesarb/constant_time_eq") (synopsis "Compares two equal-sized byte strings in constant time") (description "This package compares two equal-sized byte strings in constant time. It is inspired by the Linux kernel's @code{crypto_memneq}.") - (properties '((hidden? . #t))) (license license:cc0))) (define-public rust-core-arch-0.1 @@ -1544,11 +1761,11 @@ intrinsics.") (base32 "0fzsw1j9g1x598yhwklg59l15hwzc0pyvs01w9fg2kin4598mjp7")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/servo/core-foundation-rs") (synopsis "Bindings to Core Foundation for OS X") (description "Bindings to Core Foundation for OS X.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -1720,28 +1937,28 @@ intrinsics.") (description "Tools for concurrent programming.") (license (list license:expat license:asl2.0)))) -(define-public rust-crossbeam-channel-0.3 +(define-public rust-crossbeam-channel-0.4 (package (name "rust-crossbeam-channel") - (version "0.3.8") + (version "0.4.0") (source - (origin - (method url-fetch) - (uri (crate-uri "crossbeam-channel" version)) - (file-name - (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0azpymyk0ld4akrjfy69ck5pzfgz1f2gb3smm2ywld92vsjd23hg")))) + (origin + (method url-fetch) + (uri (crate-uri "crossbeam-channel" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "135ncx9680afs8jkjz8g3iq3naay9rn7942gxrdg2n9m1cxrmv5c")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6) - ("rust-smallvec" ,rust-smallvec-0.6)) - #:cargo-development-inputs - (("rust-rand" ,rust-rand-0.4) - ("rust-signal-hook" ,rust-signal-hook-0.1)))) + (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7)) + #:cargo-development-inputs + (("rust-num-cpus" ,rust-num-cpus-1.10) + ("rust-rand" ,rust-rand-0.6) + ("rust-signal-hook" ,rust-signal-hook-0.1)))) (home-page "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-channel") (synopsis @@ -1752,10 +1969,33 @@ intrinsics.") license:asl2.0 license:bsd-2)))) +(define-public rust-crossbeam-channel-0.3 + (package + (inherit rust-crossbeam-channel-0.4) + (name "rust-crossbeam-channel") + (version "0.3.9") + (source + (origin + (method url-fetch) + (uri (crate-uri "crossbeam-channel" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ylyzb1m9qbvd1nd3vy38x9073wdmcy295ncjs7wf7ap476pzv68")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)) + #:cargo-development-inputs + (("rust-num-cpus" ,rust-num-cpus-1.10) + ("rust-rand" ,rust-rand-0.6) + ("rust-signal-hook" ,rust-signal-hook-0.1)))))) + (define-public rust-crossbeam-deque-0.7 (package (name "rust-crossbeam-deque") - (version "0.7.1") + (version "0.7.2") (source (origin (method url-fetch) @@ -1764,15 +2004,15 @@ intrinsics.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0was9x71cz5g1y3670cyy6jdmsdfg6k9mbf0ddz2k1mdd7hx535i")))) + "1jm3rqb3qfpfywrakyy81f61xnl4jsim7lam9digw6w6cdfr9an3")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-crossbeam-epoch" ,rust-crossbeam-epoch-0.7) - ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)) + (("rust-crossbeam-epoch" ,rust-crossbeam-epoch-0.8) + ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7)) #:cargo-development-inputs - (("rust-rand" ,rust-rand-0.4)))) + (("rust-rand" ,rust-rand-0.6)))) (home-page "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-deque") (synopsis "Concurrent work-stealing deque") @@ -1794,8 +2034,40 @@ intrinsics.") (base32 "04rcpgjs6ns57vag8a3dzx26190dhbvy2l0p9n22b9p1yf64pr05")))))) +(define-public rust-crossbeam-epoch-0.8 + (package + (name "rust-crossbeam-epoch") + (version "0.8.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "crossbeam-epoch" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1b2mgc2gxxvyzyxgd5wvn9k42gr6f9phi2swwjawpqswy3dynr2h")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-autocfg" ,rust-autocfg-0.1) + ("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-memoffset" ,rust-memoffset-0.5) + ("rust-scopeguard" ,rust-scopeguard-1.0)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.6)))) + (home-page + "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-epoch") + (synopsis "Epoch-based garbage collection") + (description "Epoch-based garbage collection.") + (license (list license:expat license:asl2.0)))) + (define-public rust-crossbeam-epoch-0.7 (package + (inherit rust-crossbeam-epoch-0.8) (name "rust-crossbeam-epoch") (version "0.7.1") (source @@ -1807,7 +2079,6 @@ intrinsics.") (sha256 (base32 "1d408b9x82mdbnb405gw58v5mmdbj2rl28a1h7b9rmn25h8f7j84")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -1818,17 +2089,12 @@ intrinsics.") ("rust-memoffset" ,rust-memoffset-0.2) ("rust-scopeguard" ,rust-scopeguard-0.3)) #:cargo-development-inputs - (("rust-rand" ,rust-rand-0.4)))) - (home-page - "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-epoch") - (synopsis "Epoch-based garbage collection") - (description "Epoch-based garbage collection.") - (license (list license:expat license:asl2.0)))) + (("rust-rand" ,rust-rand-0.4)))))) -(define-public rust-crossbeam-queue-0.1 +(define-public rust-crossbeam-queue-0.2 (package (name "rust-crossbeam-queue") - (version "0.1.2") + (version "0.2.1") (source (origin (method url-fetch) @@ -1837,26 +2103,49 @@ intrinsics.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0jsa9dbxnwqcxfws09vaschf92d4imlbbikmcn4ka8z7rzb9r5vw")))) + "1nwkjh185bdwjrv1zj2g7an9lglv8sp4459268m4fwvi3v5fx5f6")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)) + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7)) #:cargo-development-inputs - (("rust-rand" ,rust-rand-0.4)))) + (("rust-rand" ,rust-rand-0.6)))) (home-page "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-utils") - (synopsis "Concurrent queues") - (description "Concurrent queues.") + (synopsis "Concurrent queues in Rust") + (description + "This crate provides concurrent queues that can be shared among threads.") (license (list license:expat license:asl2.0 license:bsd-2)))) -(define-public rust-crossbeam-utils-0.6 +(define-public rust-crossbeam-queue-0.1 + (package + (inherit rust-crossbeam-queue-0.2) + (name "rust-crossbeam-queue") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "crossbeam-queue" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0jsa9dbxnwqcxfws09vaschf92d4imlbbikmcn4ka8z7rzb9r5vw")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.4)))))) + +(define-public rust-crossbeam-utils-0.7 (package (name "rust-crossbeam-utils") - (version "0.6.5") + (version "0.7.0") (source (origin (method url-fetch) @@ -1865,15 +2154,16 @@ intrinsics.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0p5aa8k3wpsn17md4rx038ac2azm9354knbxdfvn7dd7yk76yc7q")))) + "1x1rn35q2v05qif14ijfg7800d3rf3ji2cg79awnacfw5jq6si6f")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-cfg-if" ,rust-cfg-if-0.1) + (("rust-autocfg" ,rust-autocfg-0.1) + ("rust-cfg-if" ,rust-cfg-if-0.1) ("rust-lazy-static" ,rust-lazy-static-1.3)) #:cargo-development-inputs - (("rust-rand" ,rust-rand-0.4)))) + (("rust-rand" ,rust-rand-0.6)))) (home-page "https://github.com/crossbeam-rs/crossbeam/tree/master/crossbeam-utils") (synopsis "Utilities for concurrent programming") @@ -1881,6 +2171,28 @@ intrinsics.") "Utilities for concurrent programming.") (license (list license:expat license:asl2.0)))) +(define-public rust-crossbeam-utils-0.6 + (package + (inherit rust-crossbeam-utils-0.7) + (name "rust-crossbeam-utils") + (version "0.6.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "crossbeam-utils" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0p5aa8k3wpsn17md4rx038ac2azm9354knbxdfvn7dd7yk76yc7q")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-lazy-static" ,rust-lazy-static-1.3)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.4)))))) + (define-public rust-csv-1.1 (package (name "rust-csv") @@ -1986,18 +2298,18 @@ intrinsics.") (base32 "15xd6afhsjl08285piwczrafmckpp8i29padj8v12xhahshprx7l")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/ia0/data-encoding") (synopsis "Efficient and customizable data-encoding functions") (description "This library provides encodings for many different common cases, including hexadecimal, base32, and base64.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-defmac-0.2 (package (name "rust-defmac") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) @@ -2005,12 +2317,12 @@ hexadecimal, base32, and base64.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "01ff3jdmcc5waffkwllndnx5hsn414r7x1rq4ib73n7awsyzxkxv")))) + "14cqfvc0f1pkd6gdhjxa2wv3iibqprc0n203ims8lvg96752ynfm")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/defmac") (synopsis "Macro to define lambda-like macros inline") (description "A macro to define lambda-like macros inline.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -2184,18 +2496,24 @@ hexadecimal, base32, and base64.") "Traits for cryptographic hash functions.") (license (list license:expat license:asl2.0)))) -(define-public rust-dirs-1.0 +(define-public rust-dirs-2.0 (package (name "rust-dirs") - (version "1.0.3") + (version "2.0.2") (source (origin (method url-fetch) (uri (crate-uri "dirs" version)) - (file-name (string-append name "-" version ".crate")) + (file-name + (string-append name "-" version ".tar.gz")) (sha256 (base32 - "02vigc566z5i6n9wr2x8sch39qp4arn89xhhrh18fhpm3jfc0ygn")))) + "1qymhyq7w7wlf1dirq6gsnabdyzg6yi2yyxkx6c4ldlkbjdaibhk")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-dirs-sys" ,rust-dirs-sys-0.3)))) (build-system cargo-build-system) (home-page "https://github.com/soc/dirs-rs") (synopsis "Abstractions for standard locations for various platforms") @@ -2205,9 +2523,56 @@ platform-specific standard locations of directories for config, cache and other data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by the XDG base/user directory specifications on Linux, the Known Folder API on Windows, and the Standard Directory guidelines on macOS.") - (properties '((hidden? . #t))) (license (list license:expat license:asl2.0)))) +(define-public rust-dirs-1.0 + (package + (inherit rust-dirs-2.0) + (name "rust-dirs") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "dirs" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "02vigc566z5i6n9wr2x8sch39qp4arn89xhhrh18fhpm3jfc0ygn")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))))) + +(define-public rust-dirs-sys-0.3 + (package + (name "rust-dirs-sys") + (version "0.3.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "dirs-sys" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0yyykdcmbc476z1v9m4z5jb8y91dw6kgzpkiqi2ig07xx0yv585g")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("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/soc/dirs-sys-rs") + (synopsis + "System-level helper functions for the dirs and directories crates") + (description + "This package provides system-level helper functions for the @code{dirs} +and @code{directories} crates.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-discard-1.0 (package (name "rust-discard") @@ -2221,12 +2586,12 @@ Windows, and the Standard Directory guidelines on macOS.") (base32 "1h67ni5bxvg95s91wgicily4ix7lcw7cq0a5gy9njrybaibhyb91")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/Pauan/rust-discard") (synopsis "Allow for intentionally leaking memory") (description "There are situations where you need to intentionally leak some memory but not other memory. This package provides a discard trait which allows for intentionally leaking memory") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-doc-comment-0.3 @@ -2242,11 +2607,11 @@ for intentionally leaking memory") (base32 "15rsqxgarfpb1yim9sbp9yfgj7p2dq6v51c6bq1a62paii9ylgcj")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/GuillaumeGomez/doc-comment") (synopsis "Macro to generate doc comments") (description "This package provides a way to generate doc comments from macros.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-docopt-1.1 @@ -2288,11 +2653,11 @@ from macros.") (base32 "0phbm7i0dpn44gzi07683zxaicjap5064w62pidci4fhhciv8mza")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/dtolnay/dtoa") (synopsis "Fast functions for printing floating-point primitives") (description "This crate provides fast functions for printing floating-point primitives to an @code{io::Write}.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -2629,10 +2994,10 @@ Standard.") "Streaming transcoding for encoding_rs.") (license (list license:asl2.0 license:expat)))) -(define-public rust-env-logger-0.6 +(define-public rust-env-logger-0.7 (package (name "rust-env-logger") - (version "0.6.2") + (version "0.7.1") (source (origin (method url-fetch) @@ -2641,25 +3006,90 @@ Standard.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1lx2s5nk96xx4i3m4zc4ghqgi8kb07dsnyiv8jk2clhax42dxz5a")))) + "0djx8h8xfib43g5w94r1m1mkky5spcw4wblzgnhiyg5vnfxknls4")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-atty" ,rust-atty-0.2) - ("rust-humantime" ,rust-humantime-1.2) + ("rust-humantime" ,rust-humantime-1.3) ("rust-log" ,rust-log-0.4) ("rust-regex" ,rust-regex-1.1) ("rust-termcolor" ,rust-termcolor-1.0)))) - (home-page - "https://github.com/sebasmagri/env_logger/") - (synopsis - "Logging implementation for @code{log}") + (home-page "https://github.com/sebasmagri/env_logger/") + (synopsis "Logging implementation for @code{log}") (description "This package provides a logging implementation for @code{log} which is configured via an environment variable.") (license (list license:expat license:asl2.0)))) +(define-public rust-env-logger-0.6 + (package + (inherit rust-env-logger-0.7) + (name "rust-env-logger") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "env_logger" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lx2s5nk96xx4i3m4zc4ghqgi8kb07dsnyiv8jk2clhax42dxz5a")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-atty" ,rust-atty-0.2) + ("rust-humantime" ,rust-humantime-1.2) + ("rust-log" ,rust-log-0.4) + ("rust-regex" ,rust-regex-1.1) + ("rust-termcolor" ,rust-termcolor-1.0)))))) + +(define-public rust-env-logger-0.5 + (package + (inherit rust-env-logger-0.7) + (name "rust-env-logger") + (version "0.5.13") + (source + (origin + (method url-fetch) + (uri (crate-uri "env-logger" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0f0c4i4c65jh8lci0afl5yg74ac0lbnpxcp81chj114zwg9a9c0m")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-atty" ,rust-atty-0.2) + ("rust-humantime" ,rust-humantime-1.2) + ("rust-log" ,rust-log-0.4) + ("rust-regex" ,rust-regex-1.1) + ("rust-termcolor" ,rust-termcolor-1.0)))))) + +(define-public rust-env-logger-0.4 + (package + (inherit rust-env-logger-0.7) + (name "rust-env-logger") + (version "0.4.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "env-logger" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0nydz2lidsvx9gs0v2zcz68rzqx8in7fzmiprgsrhqh17vkj3prx")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-log" ,rust-log-0.3) + ("rust-regex" ,rust-regex-0.2)))))) + (define-public rust-envmnt-0.6 (package (name "rust-envmnt") @@ -2853,7 +3283,7 @@ is configured via an environment variable.") `(#:skip-build? #t #:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2-0.4) - ("rust-quote" ,rust-quote-1.0) + ("rust-quote" ,rust-quote-0.6) ("rust-syn" ,rust-syn-0.15) ("rust-synstructure" ,rust-synstructure-0.10)) #:cargo-development-inputs @@ -2876,20 +3306,20 @@ is configured via an environment variable.") (base32 "1xq759lsr8gqss7hva42azn3whgrbrs2sd9xpn92c5ickxm1fhs4")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/sfackler/rust-fallible-iterator") (synopsis "Fallible iterator traits") (description "If the @code{std} or @code{alloc} features are enabled, this crate provides implementations for @code{Box}, @code{Vec}, @code{BTreeMap}, and @code{BTreeSet}. If the @code{std} feature is enabled, this crate additionally provides implementations for @code{HashMap} and @code{HashSet}.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-filetime-0.2 (package (name "rust-filetime") - (version "0.2.7") + (version "0.2.8") (source (origin (method url-fetch) @@ -2897,8 +3327,17 @@ provides implementations for @code{HashMap} and @code{HashSet}.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0sflihq2l77xjrza7yjalnxsc7dxzg25rhzcfbd9vmyfah5kimvb")))) + "0zfc90802dbw11bx6kmm8zw6r88k7glm4q6l8riqw35an3dd9xhz")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-redox-syscall" ,rust-redox-syscall-0.1) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile-3.0)))) (home-page "https://github.com/alexcrichton/filetime") (synopsis "Platform-agnostic accessors of timestamps in File metadata") (description @@ -2907,7 +3346,6 @@ various timestamps of files in Rust. This library takes into account cross-platform differences in terms of where the timestamps are located, what they are called, and how to convert them into a platform-independent representation.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -2924,12 +3362,16 @@ representation.") (base32 "1n2vagn0q5yim32hxkwi1cjgp3yn1dm45p7z8nw6lapywihhs9mi")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-libc" ,rust-libc-0.2)))) (home-page "https://github.com/gimli-rs/findshlibs") (synopsis "Find the set of shared libraries loaded in the current process") (description "Find the set of shared libraries loaded in the current process with a cross platform API.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -2946,10 +3388,10 @@ cross platform API.") (base32 "0czam11mi80dbyhf4rd4lz0ihcf7vkfchrdcrn45wbs0h40dxm46")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/petgraph/fixedbitset") (synopsis "FixedBitSet is a simple bitset collection") (description "FixedBitSet is a simple bitset collection.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -3059,11 +3501,11 @@ streams.") (base32 "1ww56bi1r5b8id3ns9j3qxbi7w5h005rzhiryy0zi9h97raqbb9g")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/servo/rust-fnv") - (synopsis "implementation of the Fowler-Noll-Vo hash function") + (synopsis "Implementation of the Fowler-Noll-Vo hash function") (description "The @code{fnv} hash function is a custom @code{Hasher} implementation that is more efficient for smaller hash keys.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -3114,7 +3556,7 @@ APIs.") ("rust-quote" ,rust-quote-1.0) ("rust-syn" ,rust-syn-0.15)))) (home-page "https://github.com/sfackler/foreign-types") - (synopsis "An internal crate used by foreign-types") + (synopsis "Internal crate used by foreign-types") (description "An internal crate used by foreign-types.") (license (list license:expat license:asl2.0)))) @@ -3134,7 +3576,7 @@ APIs.") (build-system cargo-build-system) (arguments `(#:skip-build? #t)) (home-page "https://github.com/sfackler/foreign-types") - (synopsis "An internal crate used by foreign-types") + (synopsis "Internal crate used by foreign-types") (description "An internal crate used by foreign-types.") (license (list license:asl2.0 @@ -3168,12 +3610,12 @@ APIs.") (base32 "0x6675wdhsx277k1k1235jwcv38naf20d8kwrk948ds26hh4lajz")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/webdesus/fs_extra") (synopsis "Extra filesystem methods") (description "Expanding opportunities standard library @code{std::fs} and @code{std::io}. Recursively copy folders with recept information about process and much more.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-fuchsia-cprng-0.1 @@ -3189,11 +3631,12 @@ process and much more.") (base32 "1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0")))) (build-system cargo-build-system) - (home-page "https://fuchsia.googlesource.com/fuchsia/+/master/garnet/public/rust/fuchsia-cprng") + (arguments '(#:skip-build? #t)) + (home-page + "https://fuchsia.googlesource.com/fuchsia/+/master/garnet/public/rust/fuchsia-cprng") (synopsis "Fuchsia cryptographically secure pseudorandom number generator") (description "Rust crate for the Fuchsia cryptographically secure pseudorandom number generator") - (properties '((hidden? . #t))) (license license:bsd-3))) (define-public rust-fuchsia-zircon-0.3 @@ -3209,10 +3652,14 @@ pseudorandom number generator") (base32 "10jxc5ks1x06gpd0xg51kcjrxr35nj6qhx2zlc5n7bmskv3675rf")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-bitflags" ,rust-bitflags-1) + ("rust-fuchsia-zircon-sys" ,rust-fuchsia-zircon-sys-0.3)))) (home-page "https://fuchsia.googlesource.com/garnet/") (synopsis "Rust bindings for the Zircon kernel") (description "Rust bindings for the Zircon kernel.") - (properties '((hidden? . #t))) (license license:bsd-3))) (define-public rust-fuchsia-zircon-sys-0.3 @@ -3228,10 +3675,10 @@ pseudorandom number generator") (base32 "19zp2085qsyq2bh1gvcxq1lb8w6v6jj9kbdkhpdjrl95fypakjix")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://fuchsia.googlesource.com/garnet/") (synopsis "Low-level Rust bindings for the Zircon kernel") (description "Low-level Rust bindings for the Zircon kernel.") - (properties '((hidden? . #t))) (license license:bsd-3))) (define-public rust-futf-0.1 @@ -3261,7 +3708,7 @@ pseudorandom number generator") (define-public rust-futures-0.1 (package (name "rust-futures") - (version "0.1.28") + (version "0.1.29") (source (origin (method url-fetch) @@ -3269,13 +3716,13 @@ pseudorandom number generator") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0saq8ffjw1pwf1pzhw3kq1z7dfq6wpd8x93dnni6vbkc799kkp25")))) + "1vq3cw37knnd0afw3rcjzh71i2l01v5m4ysinrrqdvnn2ql0z60v")))) (build-system cargo-build-system) - (home-page "https://github.com/rust-lang-nursery/futures-rs") + (arguments '(#:skip-build? #t)) + (home-page "https://github.com/rust-lang/futures-rs") (synopsis "Implementation of zero-cost futures in Rust") (description "An implementation of @code{futures} and @code{streams} featuring zero allocations, composability, and iterator-like interfaces.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -3589,7 +4036,7 @@ archive to be linked into Rustcode.") (define-public rust-getopts-0.2 (package (name "rust-getopts") - (version "0.2.17") + (version "0.2.21") (source (origin (method url-fetch) @@ -3597,12 +4044,19 @@ archive to be linked into Rustcode.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "018yhq97zgcrcxwhj3pxh31h83704sgaiijdnpl0r1ir366c005r")))) + "1mgb3qvivi26gs6ihqqhh8iyhp3vgxri6vwyrwg28w0xqzavznql")))) (build-system cargo-build-system) - (home-page "https://github.com/rust-lang-nursery/getopts") + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-unicode-width" ,rust-unicode-width-0.1) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0) + ("rust-rustc-std-workspace-std" ,rust-rustc-std-workspace-std-1.0)) + #:cargo-development-inputs + (("rust-log" ,rust-log-0.3)))) + (home-page "https://github.com/rust-lang/getopts") (synopsis "Rust library for option parsing for CLI utilities") (description "This library provides getopts-like option parsing.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -3674,10 +4128,10 @@ retrieving random data from system source.") DWARF debugging format.") (license (list license:asl2.0 license:expat)))) -(define-public rust-git2-0.9 +(define-public rust-git2-0.11 (package (name "rust-git2") - (version "0.9.1") + (version "0.11.0") (source (origin (method url-fetch) @@ -3686,23 +4140,23 @@ DWARF debugging format.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0cayf5w7wkvclvs8brbi7lyfxbdklwls9s49mpf2brl655yjwjwj")))) + "1i0fgsr91r97hsjbgqnymkcyiyg0057m7m04116k3vmyqpvrwlbp")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-bitflags" ,rust-bitflags-1) ("rust-libc" ,rust-libc-0.2) - ("rust-libgit2-sys" ,rust-libgit2-sys-0.8) + ("rust-libgit2-sys" ,rust-libgit2-sys-0.10) ("rust-log" ,rust-log-0.4) ("rust-openssl-probe" ,rust-openssl-probe-0.1) ("rust-openssl-sys" ,rust-openssl-sys-0.9) - ("rust-url" ,rust-url-1.7)) + ("rust-url" ,rust-url-2.1)) #:cargo-development-inputs (("rust-docopt" ,rust-docopt-1.1) ("rust-serde" ,rust-serde-1.0) ("rust-serde-derive" ,rust-serde-derive-1.0) - ("rust-tempdir" ,rust-tempdir-0.3) + ("rust-tempfile" ,rust-tempfile-3.1) ("rust-thread-id" ,rust-thread-id-3.3) ("rust-time" ,rust-time-0.1)))) (home-page "https://github.com/rust-lang/git2-rs") @@ -3713,6 +4167,38 @@ This library is both threadsafe and memory safe and allows both reading and writing git repositories.") (license (list license:asl2.0 license:expat)))) +(define-public rust-git2-0.9 + (package + (inherit rust-git2-0.11) + (name "rust-git2") + (version "0.9.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "git2" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0cayf5w7wkvclvs8brbi7lyfxbdklwls9s49mpf2brl655yjwjwj")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-bitflags" ,rust-bitflags-1) + ("rust-libc" ,rust-libc-0.2) + ("rust-libgit2-sys" ,rust-libgit2-sys-0.8) + ("rust-log" ,rust-log-0.4) + ("rust-openssl-probe" ,rust-openssl-probe-0.1) + ("rust-openssl-sys" ,rust-openssl-sys-0.9) + ("rust-url" ,rust-url-1.7)) + #:cargo-development-inputs + (("rust-docopt" ,rust-docopt-1.1) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-tempdir" ,rust-tempdir-0.3) + ("rust-thread-id" ,rust-thread-id-3.3) + ("rust-time" ,rust-time-0.1)))))) + (define-public rust-glob-0.3 (package (name "rust-glob") @@ -3726,12 +4212,15 @@ reading and writing git repositories.") (base32 "0x25wfr7vg3mzxc9x05dcphvd3nwlcmbnxrvwcvrrdwplcrrk4cv")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir-0.3)))) (home-page "https://github.com/rust-lang-nursery/glob") (synopsis "Match file paths against Unix shell style patterns") (description "This package provides support for matching file paths against Unix shell style patterns.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -3996,7 +4485,7 @@ standard printing of search results, similar to grep itself.") (define-public rust-grep-searcher-0.1 (package (name "rust-grep-searcher") - (version "0.1.5") + (version "0.1.6") (source (origin (method url-fetch) @@ -4005,7 +4494,7 @@ standard printing of search results, similar to grep itself.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0pj85m7q6k6jpl3q57v1gwq5jxmqnza2xg7jjcxky3q325z8lcjy")))) + "09ag16im12v6k0lzkyvbvamn1iw15kfx1jbfldb7z5xa7208l04a")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -4050,6 +4539,78 @@ standard printing of search results, similar to grep itself.") IEEE 754-2008 binary16 type.") (license (list license:expat license:asl2.0)))) +(define-public rust-handlebars-2.0 + (package + (name "rust-handlebars") + (version "2.0.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "handlebars" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1m99gwjd7q7q79bk4f716wsdvcyhsrcsq4vbzcavbkmc48d194mg")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-hashbrown" ,rust-hashbrown-0.5) + ("rust-log" ,rust-log-0.4) + ("rust-pest" ,rust-pest-2.1) + ("rust-pest-derive" ,rust-pest-derive-2.1) + ("rust-quick-error" ,rust-quick-error-1.2) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-json" ,rust-serde-json-1.0) + ("rust-walkdir" ,rust-walkdir-2.2)) + #:cargo-development-inputs + (("rust-criterion" ,rust-criterion-0.2) + ("rust-env-logger" ,rust-env-logger-0.6) + ("rust-maplit" ,rust-maplit-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-tempfile" ,rust-tempfile-3.0)))) + (home-page "https://github.com/sunng87/handlebars-rust") + (synopsis "Handlebars templating implemented in Rust") + (description + "This package provides handlebars templating implemented in Rust. It is +the template engine that renders the official Rust website") + (license license:expat))) + +(define-public rust-hashbrown-0.5 + (package + (name "rust-hashbrown") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "hashbrown" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0lr3gsicplw7czapsscmii87hgzpvxf5ch92v7pi95xsipxl3pp1")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-compiler-builtins" ,rust-compiler-builtins-0.1) + ("rust-rayon" ,rust-rayon-1.1) + ("rust-rustc-std-workspace-alloc" ,rust-rustc-std-workspace-alloc-1.0) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0) + ("rust-serde" ,rust-serde-1.0)) + #:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-rand" ,rust-rand-0.5) + ("rust-rayon" ,rust-rayon-1.1) + ("rust-rustc-hash" ,rust-rustc-hash-1.0) + ("rust-serde-test" ,rust-serde-test-1.0)))) + (home-page "https://github.com/rust-lang/hashbrown") + (synopsis "Rust port of Google's SwissTable hash map") + (description + "This package provides a Rust port of Google's SwissTable hash map.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-heapsize-0.4 (package (name "rust-heapsize") @@ -4063,12 +4624,14 @@ IEEE 754-2008 binary16 type.") (base32 "0q94q9ppqjgrw71swiyia4hgby2cz6dldp7ij57nkvhd6zmfcy8n")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/servo/heapsize") (synopsis "Measure the total runtime size of an object on the heap") (description "Infrastructure for measuring the total runtime size of an object on the heap.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -4084,7 +4647,10 @@ heap.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m")))))) + "0dmwc37vgsdjzk10443dj4f23439i9gch28jcwzmry3chrwx8v2m")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-kernel32-sys" ,rust-kernel32-sys-0.2)))))) ;; This package makes use of removed features (define-public rust-heapsize-plugin-0.1 @@ -4100,35 +4666,78 @@ heap.") (base32 "1i72isf699q9jl167g2kg4xd6h3cd05rc79zaph58aqjy0g0m9y9")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-heapsize" ,rust-heapsize-0.3)))) (home-page "https://github.com/servo/heapsize") (synopsis "Measure runtime size of an object on the heap") (description "This package automatically generates infrastructure for measuring the total runtime size of an object on the heap") - (properties `((hidden? . #t))) (license license:mpl2.0))) -(define-public rust-hex-0.3 +(define-public rust-heck-0.3 + (package + (name "rust-heck") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "heck" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "01a2v7yvkiqxakdqz4hw3w3g4sm52ivz9cs3qcsv2arxsmw4wmi0")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-unicode-segmentation" ,rust-unicode-segmentation-1.3)))) + (home-page "https://github.com/withoutboats/heck") + (synopsis "Case conversion library") + (description + "This library exists to provide case conversion between common cases like +CamelCase and snake_case. It is intended to be unicode aware, internally +consistent, and reasonably well performing.") + (license (list license:asl2.0 + license:expat)))) + +(define-public rust-hex-0.4 (package (name "rust-hex") - (version "0.3.2") + (version "0.4.0") (source (origin (method url-fetch) (uri (crate-uri "hex" version)) - (file-name (string-append name "-" version ".crate")) + (file-name + (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0xsdcjiik5j750j67zk42qdnmm4ahirk3gmkmcqgq7qls2jjcl40")))) + "0glsfrx2pxfsf6ivxj7vfrvd7g78j4z47ssgm5idm8p376z3jfq2")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/KokaKiwi/rust-hex") (synopsis "Encode and decode data to/from hexadecimals") (description "This crate allows for encoding and decoding data into/from hexadecimal representation.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) +(define-public rust-hex-0.3 + (package + (inherit rust-hex-0.4) + (name "rust-hex") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "hex" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "0xsdcjiik5j750j67zk42qdnmm4ahirk3gmkmcqgq7qls2jjcl40")))))) + (define-public rust-hex-literal-0.2 (package (name "rust-hex-literal") @@ -4272,10 +4881,10 @@ requests and responses.") "This package provides a tiny, safe, speedy, zero-copy HTTP/1.x parser.") (license (list license:asl2.0 license:expat)))) -(define-public rust-humantime-1.2 +(define-public rust-humantime-1.3 (package (name "rust-humantime") - (version "1.2.0") + (version "1.3.0") (source (origin (method url-fetch) @@ -4284,7 +4893,7 @@ requests and responses.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "057ilhy6vc9iqhhby5ymh45m051pgxwq2z437gwkbnqhw7rfb9rw")))) + "0krwgbf35pd46xvkqg14j070vircsndabahahlv3rwhflpy4q06z")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -4294,8 +4903,7 @@ requests and responses.") (("rust-chrono" ,rust-chrono-0.4) ("rust-rand" ,rust-rand-0.4) ("rust-time" ,rust-time-0.1)))) - (home-page - "https://github.com/tailhook/humantime") + (home-page "https://github.com/tailhook/humantime") (synopsis "Parser and formatter for Duration and SystemTime") (description @@ -4303,6 +4911,21 @@ requests and responses.") SystemTime}}.") (license (list license:expat license:asl2.0)))) +(define-public rust-humantime-1.2 + (package + (inherit rust-humantime-1.3) + (name "rust-humantime") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "humantime" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "057ilhy6vc9iqhhby5ymh45m051pgxwq2z437gwkbnqhw7rfb9rw")))))) + (define-public rust-hostname-0.1 (package (name "rust-hostname") @@ -4316,17 +4939,21 @@ SystemTime}}.") (base32 "0kprf862qaa7lwdms6aw7f3275h0j2rwhs9nz5784pm8hdmb9ki1")))) (build-system cargo-build-system) - (home-page "https://github.com/fengcen/hostname") + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-winutil" ,rust-winutil-0.1)))) + (home-page "https://github.com/svartalf/hostname") (synopsis "Get hostname for Rust") (description "Get hostname for Rust.") - (properties '((hidden? . #t))) (license license:expat))) -(define-public rust-idna-0.1 +(define-public rust-idna-0.2 (package (name "rust-idna") - (version "0.1.5") + (version "0.2.0") (source (origin (method url-fetch) @@ -4335,7 +4962,7 @@ SystemTime}}.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0kl4gs5kaydn4v07c6ka33spm9qdh2np0x7iw7g5zd8z1c7rxw1q")))) + "1a9066imqpdrm1aavfasdyb1zahqaz8jmdcwdawvb1pf60y6gqh2")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -4344,14 +4971,38 @@ SystemTime}}.") ("rust-unicode-bidi" ,rust-unicode-bidi-0.3) ("rust-unicode-normalization" ,rust-unicode-normalization-0.1)) #:cargo-development-inputs - (("rust-rustc-serialize" ,rust-rustc-serialize-0.3) - ("rust-rustc-test" ,rust-rustc-test-0.3)))) + (("rust-rustc-test" ,rust-rustc-test-0.3) + ("rust-serde-json" ,rust-serde-json-1.0)))) (home-page "https://github.com/servo/rust-url/") (synopsis "Internationalizing Domain Names in Applications and Punycode") (description "IDNA (Internationalizing Domain Names in Applications) and Punycode.") (license (list license:expat license:asl2.0)))) +(define-public rust-idna-0.1 + (package + (inherit rust-idna-0.2) + (name "rust-idna") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "idna" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0kl4gs5kaydn4v07c6ka33spm9qdh2np0x7iw7g5zd8z1c7rxw1q")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-matches" ,rust-matches-0.1) + ("rust-unicode-bidi" ,rust-unicode-bidi-0.3) + ("rust-unicode-normalization" ,rust-unicode-normalization-0.1)) + #:cargo-development-inputs + (("rust-rustc-serialize" ,rust-rustc-serialize-0.3) + ("rust-rustc-test" ,rust-rustc-test-0.3)))))) + (define-public rust-ignore-0.4 (package (name "rust-ignore") @@ -4494,7 +5145,7 @@ immutable interval tree.") (define-public rust-iovec-0.1 (package (name "rust-iovec") - (version "0.1.2") + (version "0.1.4") (source (origin (method url-fetch) @@ -4502,13 +5153,15 @@ immutable interval tree.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "025vi072m22299z3fg73qid188z2iip7k41ba6v5v5yhwwby9rnv")))) + "0ph73qygwx8i0mblrf110cj59l00gkmsgrpzz1rm85syz5pymcxj")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-libc" ,rust-libc-0.2)))) (home-page "https://github.com/carllerche/iovec") (synopsis "Portable buffer type for scatter/gather I/O operations") (description "Portable buffer type for scatter/gather I/O operations.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -4585,11 +5238,11 @@ and functions.") (base32 "0zvg2d9qv3avhf3d8ggglh6fdyw8kkwqg3r4622ly5yhxnvnc4jh")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/dtolnay/itoa") (synopsis "Fast functions for printing integer primitives") (description "This crate provides fast functions for printing integer primitives to an @code{io::Write}.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -4607,6 +5260,36 @@ primitives to an @code{io::Write}.") (base32 "18g7p2hrb3dk84z3frfgmszfc9hjb4ps9vp99qlb1kmf9gm8hc5f")))))) +(define-public rust-jobserver-0.1 + (package + (name "rust-jobserver") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (crate-uri "jobserver" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1q2w80v8p2pbfm8ayhjs6zi11a1hp4535z4ck8kg872z8ldnrc37")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2)) + #:cargo-development-inputs + (("rust-futures" ,rust-futures-0.1) + ("rust-num-cpus" ,rust-num-cpus-1.10) + ("rust-tempdir" ,rust-tempdir-0.3) + ("rust-tokio-core" ,rust-tokio-core-0.1) + ("rust-tokio-process" ,rust-tokio-process-0.2)))) + (home-page "https://github.com/alexcrichton/jobserver-rs") + (synopsis "GNU make jobserver for Rust") + (description + "An implementation of the GNU make jobserver for Rust.") + (license (list license:expat license:asl2.0)))) + (define-public rust-js-sys-0.3 (package (name "rust-js-sys") @@ -4650,22 +5333,30 @@ wasm-bindgen crate.") (base32 "0ify9vlql01qhfxlj7d4p9jvcp90mj2h69nkbq7slccvbhzryfqd")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'override-jemalloc - ; (lambda* (#:key inputs #:allow-other-keys) - ; (let ((jemalloc (assoc-ref inputs "jemalloc"))) - ; (delete-file-recursively "jemalloc") - ; (setenv "JEMALLOC_OVERRIDE" - ; (string-append jemalloc "/lib/libjemalloc_pic.a"))) - ; #t))))) - ;(inputs - ; `(("jemalloc" ,jemalloc))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ;; Build dependencies: + ("rust-cc" ,rust-cc-1.0) + ("rust-fs-extra" ,rust-fs-extra-1.1)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'override-jemalloc + (lambda* (#:key inputs #:allow-other-keys) + (let ((jemalloc (assoc-ref inputs "jemalloc"))) + (delete-file-recursively "jemalloc") + (delete-file-recursively + (string-append "guix-vendor/rust-jemalloc-sys-" + ,(package-version rust-jemalloc-sys-0.3) + ".crate/jemalloc")) + (setenv "JEMALLOC_OVERRIDE" + (string-append jemalloc "/lib/libjemalloc_pic.a"))) + #t))))) + (native-inputs + `(("jemalloc" ,jemalloc))) (home-page "https://github.com/gnzlbg/jemallocator") (synopsis "Rust FFI bindings to jemalloc") (description "This package provides Rust FFI bindings to jemalloc.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -4699,7 +5390,7 @@ wasm-bindgen crate.") (define-public rust-json-0.11 (package (name "rust-json") - (version "0.11.14") + (version "0.11.15") (source (origin (method url-fetch) @@ -4707,13 +5398,13 @@ wasm-bindgen crate.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1hj8c6xj5c2aqqszi8naaflmcdbya1i9byyjrq4iybxjb4q91mq1")))) + "1rg9jxf6bpbwis3ixd5ak8rp37him7n4z8awz4ssrxl6hyplbhlj")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/maciejhirsz/json-rust") (synopsis "JSON implementation in Rust") (description "This crate provides a JSON implementation in Rust, reducing friction with idiomatic Rust structs to ease interopability.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -4730,11 +5421,15 @@ friction with idiomatic Rust structs to ease interopability.") (base32 "1389av0601a9yz8dvx5zha9vmkd6ik7ax0idpb032d28555n41vm")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-winapi" ,rust-winapi-0.2) + ("rust-winapi-build" ,rust-winapi-build-0.1)))) (home-page "https://github.com/retep998/winapi-rs") (synopsis "Function definitions for the Windows API library kernel32") (description "Contains function definitions for the Windows API library kernel32.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-language-tags-0.2 @@ -4750,6 +5445,11 @@ kernel32.") (base32 "16hrjdpa827carq5x4b8zhas24d8kg4s16m6nmmn1kb7cr5qh7d9")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-heapsize" ,rust-heapsize-0.3) + ("rust-heapsize-plugin" ,rust-heapsize-plugin-0.1)))) (home-page "https://github.com/pyfisch/rust-language-tags") (synopsis "Language tags for Rust") (description @@ -4758,13 +5458,12 @@ script, countries and other regions. They are commonly used in HTML and HTTP @code{Content-Language} and @code{Accept-Language} header fields. This package currently supports parsing (fully conformant parser), formatting and comparing language tags.") - (properties '((hidden? . #t))) (license license:expat))) -(define-public rust-lazy-static-1.3 +(define-public rust-lazy-static-1.4 (package (name "rust-lazy-static") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) @@ -4772,11 +5471,13 @@ language tags.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "052ac27w189hrf1j3hz7sga46rp84zl2hqnzyihxv78mgzr2jmxw")))) + "0in6ikhw8mgl33wjv6q6xfrb5b9jr16q8ygjy803fay4zcisvaz2")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t - #:cargo-inputs (("rust-spin" ,rust-spin-0.5)))) + #:cargo-inputs (("rust-spin" ,rust-spin-0.5)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/rust-lang-nursery/lazy-static.rs") (synopsis "Macro for declaring lazily evaluated statics in Rust") (description @@ -4788,6 +5489,23 @@ requires non-const function calls to be computed.") (license (list license:asl2.0 license:expat)))) +(define-public rust-lazy-static-1.3 + (package + (inherit rust-lazy-static-1.4) + (name "rust-lazy-static") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "lazy_static" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "052ac27w189hrf1j3hz7sga46rp84zl2hqnzyihxv78mgzr2jmxw")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-spin" ,rust-spin-0.5)))))) + (define-public rust-lazycell-1.2 (package (name "rust-lazycell") @@ -4849,7 +5567,7 @@ requires non-const function calls to be computed.") (define-public rust-libc-0.2 (package (name "rust-libc") - (version "0.2.65") + (version "0.2.66") (source (origin (method url-fetch) @@ -4857,28 +5575,30 @@ requires non-const function calls to be computed.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1s14bjxnz6haw0gr1h3j4sr7s2s407hpgm8dxhwnl7yzgxia0c8s")))) + "0n0mwry21fxfwc063k33mvxk8xj7ia5ar8m42c9ymbam2ksb25fm")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)))) (home-page "https://github.com/rust-lang/libc") (synopsis "Raw FFI bindings to platform libraries like libc") (description - "libc provides all of the definitions necessary to easily -interoperate with C code (or \"C-like\" code) on each of the platforms -that Rust supports. This includes type definitions (e.g., c_int), -constants (e.g., EINVAL) as well as function headers (e.g., malloc). + "The rust libc crate provides all of the definitions necessary to easily +interoperate with C code (or \"C-like\" code) on each of the platforms that Rust +supports. This includes type definitions (e.g., c_int), constants (e.g., EINVAL) +as well as function headers (e.g., malloc). -This crate exports all underlying platform types, functions, and -constants under the crate root, so all items are accessible as -@samp{libc::foo}. The types and values of all the exported APIs match -the platform that libc is compiled for.") - (properties '((hidden? . #t))) +This crate exports all underlying platform types, functions, and constants under +the crate root, so all items are accessible as @samp{libc::foo}. The types and +values of all the exported APIs match the platform that libc is compiled for.") (license (list license:expat license:asl2.0)))) -(define-public rust-libgit2-sys-0.8 +(define-public rust-libgit2-sys-0.10 (package (name "rust-libgit2-sys") - (version "0.8.2") + (version "0.10.0") (source (origin (method url-fetch) @@ -4886,33 +5606,67 @@ the platform that libc is compiled for.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0y2mibmx7wy91s2kmb2gfb29mrqlqaxpy5wcwr8s1lwws7b9w5sc")) )) + "0l9fvki7qxsl97vgzqwlv75nl213a5vxw7b1jaik97ala356pv6r")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'find-openssl - ; (lambda* (#:key inputs #:allow-other-keys) - ; (let ((openssl (assoc-ref inputs "openssl"))) - ; (setenv "OPENSSL_DIR" openssl)) - ; (delete-file-recursively "libgit2") - ; (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") - ; (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") - ; #t))))) - ;(native-inputs - ; `(("pkg-config" ,pkg-config))) - ;(inputs - ; `(("libgit2" ,libgit2) - ; ("openssl" ,openssl) - ; ("zlib" ,zlib))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-libz-sys" ,rust-libz-sys-1.0) + ("rust-libssh2-sys" ,rust-libssh2-sys-0.2) + ("rust-openssl-sys" ,rust-openssl-sys-0.9) + ;; Build dependencies: + ("rust-cc" ,rust-cc-1.0) + ("rust-pkg-config" ,rust-pkg-config-0.3)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'dont-vendor-sources + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + (delete-file-recursively "libgit2") + (delete-file-recursively + (string-append "guix-vendor/rust-libgit2-sys-" + ,(package-version rust-libgit2-sys-0.10) + ".crate/libgit2")) + (delete-file-recursively + (string-append "guix-vendor/rust-libz-sys-" + ,(package-version rust-libz-sys-1.0) + ".crate/src/zlib")) + (delete-file-recursively + (string-append "guix-vendor/rust-libssh2-sys-" + ,(package-version rust-libssh2-sys-0.2) + ".crate/libssh2")) + (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") + #t))))) + (native-inputs + `(("libgit2" ,libgit2) + ("openssl" ,openssl) + ("pkg-config" ,pkg-config) + ("zlib" ,zlib))) (home-page "https://github.com/rust-lang/git2-rs") (synopsis "Native bindings to the libgit2 library") (description "This package provides native rust bindings to the @code{libgit2} library.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) +(define-public rust-libgit2-sys-0.8 + (package + (inherit rust-libgit2-sys-0.10) + (name "rust-libgit2-sys") + (version "0.8.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "libgit2-sys" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "0y2mibmx7wy91s2kmb2gfb29mrqlqaxpy5wcwr8s1lwws7b9w5sc")))) + (arguments '()) + (properties '((hidden? . #t))))) + (define-public rust-libgit2-sys-0.7 (package (inherit rust-libgit2-sys-0.8) @@ -4926,7 +5680,8 @@ the platform that libc is compiled for.") (sha256 (base32 "1wcvg2qqra2aviasvqcscl8gb2rnjnd6h998wy5dlmf2bnriqi28")))) - (build-system cargo-build-system))) + (arguments '()) + (properties '((hidden? . #t))))) (define-public rust-libloading-0.5 (package @@ -4941,6 +5696,12 @@ the platform that libc is compiled for.") (base32 "0lyply8rcqc8agajzxs7bq6ivba9dnn1i68kgb9z2flnfjh13cgj")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-cc" ,rust-cc-1.0)))) (home-page "https://github.com/nagisa/rust_libloading/") (synopsis "Rust library for loading dynamic libraries") (description @@ -4949,13 +5710,12 @@ The most important safety guarantee by this library is prevention of dangling-Symbols that may occur after a Library is unloaded. Using this library allows loading dynamic libraries (also known as shared libraries) as well as use functions and static variables these libraries contain.") - (properties '((hidden? . #t))) (license license:isc))) (define-public rust-libssh2-sys-0.2 (package (name "rust-libssh2-sys") - (version "0.2.12") + (version "0.2.14") (source (origin (method url-fetch) @@ -4963,36 +5723,51 @@ functions and static variables these libraries contain.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1zb6gsw795nq848nk5x2smzpfnn1s15wjlzjnvr8ihlz2l5x2549")))) + "042gsgbvxgm5by4mk906j3zm4qdvzcfhjxrb55is1lrr6f0nxain")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'find-openssl - ; (lambda* (#:key inputs #:allow-other-keys) - ; (let ((openssl (assoc-ref inputs "openssl"))) - ; (setenv "OPENSSL_DIR" openssl)) - ; (delete-file-recursively "libssh2") - ; (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") - ; #t))))) - ;(native-inputs - ; `(("pkg-config" ,pkg-config))) - ;(inputs - ; `(("libssh2" ,libssh2) - ; ("openssl" ,openssl) - ; ("zlib" ,zlib))) + (arguments + `(#:skip-build? #t ; it wants rust-openssl-src + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-libz-sys" ,rust-libz-sys-1.0) + ("rust-openssl-sys" ,rust-openssl-sys-0.9) + ;; Build dependencies: + ("rust-cc" ,rust-cc-1.0) + ("rust-pkg-config" ,rust-pkg-config-0.3) + ("rust-vcpkg" ,rust-vcpkg-0.2)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'dont-vendor-sources + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + (delete-file-recursively "libssh2") + (delete-file-recursively + (string-append "guix-vendor/rust-libssh2-sys-" + ,(package-version rust-libssh2-sys-0.2) + ".crate/libssh2")) + (delete-file-recursively + (string-append "guix-vendor/rust-libz-sys-" + ,(package-version rust-libz-sys-1.0) + ".crate/src/zlib")) + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") + #t))))) + (native-inputs + `(("libssh2" ,libssh2) + ("openssl" ,openssl) + ("pkg-config" ,pkg-config) + ("zlib" ,zlib))) (home-page "https://github.com/alexcrichton/ssh2-rs") (synopsis "Native bindings to the libssh2 library") (description "This package provides native rust bindings to the @code{libssh2} library.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-lock-api-0.3 (package (name "rust-lock-api") - (version "0.3.1") + (version "0.3.3") (source (origin (method url-fetch) @@ -5001,7 +5776,7 @@ functions and static variables these libraries contain.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1p04271jikw69ja0ap0plrfwm9incf1iny48g0b3ma9k4mw2x4gq")))) + "0yzlz7f5xl5sm129dq8jqsrcrkyv7jjnqwd4zr4ijsdlxjaxxckr")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -5045,7 +5820,11 @@ functions and static variables these libraries contain.") (sha256 (base32 "0b24q9mh258xa52ap636q1sxz0j5vrnp0hwbbh7ddjka3wwz3sv2")))) - (properties '((hidden? . #t))))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-scopeguard" ,rust-scopeguard-0.3) + ("rust-owning-ref" ,rust-owning-ref-0.4)))))) (define-public rust-log-0.4 (package @@ -5129,23 +5908,29 @@ functions and static variables these libraries contain.") (base32 "14gyj256yh0wm77jbvmlc39v7lfn0navpfrja4alczarzlc8ir2k")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'unbundle-xz - ; (lambda* (#:key inputs #:allow-other-keys) - ; (let ((xz (assoc-ref inputs "xz"))) - ; (delete-file-recursively "xz-5.2")) - ; #t))))) - ;(inputs - ; `(("pkg-config" ,pkg-config) - ; ("xz" ,xz))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-cc" ,rust-cc-1.0) + ("rust-pkg-config" ,rust-pkg-config-0.3)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'unbundle-xz + (lambda _ + (delete-file-recursively "xz-5.2") + (delete-file-recursively + (string-append "guix-vendor/rust-lzma-sys-" + ,(package-version rust-lzma-sys-0.1) + ".crate/xz-5.2")) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("xz" ,xz))) (home-page "https://github.com/alexcrichton/xz2-rs") (synopsis "Bindings to liblzma for lzma and xz stream encoding/decoding") (description "This package contains the raw bindings to liblzma which contains an implementation of LZMA and xz stream encoding/decoding.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5173,7 +5958,7 @@ implementation of LZMA and xz stream encoding/decoding.") (define-public rust-maplit-1.0 (package (name "rust-maplit") - (version "1.0.1") + (version "1.0.2") (source (origin (method url-fetch) @@ -5181,13 +5966,13 @@ implementation of LZMA and xz stream encoding/decoding.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0hsczmvd6zkqgzqdjp5hfyg7f339n68w83n4pxvnsszrzssbdjq8")))) + "07b5kjnhrrmfhgqm9wprjw8adx6i225lqp49gasgqg74lahnabiy")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/maplit") (synopsis "Collection of Map macros") (description "This crate provides a collection of @code{literal} macros for @code{HashMap}, @code{HashSet}, @code{BTreeMap}, and @code{BTreeSet.}") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5238,13 +6023,40 @@ implementation of LZMA and xz stream encoding/decoding.") (base32 "020axl4q7rk9vz90phs7f8jas4imxal9y9kxl4z4v7a6719mrz3z")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/SimonSapin/rust-std-candidates") - (synopsis "Macro to evaluate whether an expression matches a pattern.") + (synopsis "Macro to evaluate whether an expression matches a pattern") (description "This package provides a macro to evaluate, as a boolean, whether an expression matches a pattern.") - (properties '((hidden? . #t))) (license license:expat))) +(define-public rust-matrixmultiply-0.1 + (package + (name "rust-matrixmultiply") + (version "0.1.15") + (source + (origin + (method url-fetch) + (uri (crate-uri "matrixmultiply" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "00p0fpjhm45qdzi37mgv7ggsy8b9gqvq4999yrbgyn1dxkf6gbfw")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-rawpointer" ,rust-rawpointer-0.1)) + #:cargo-development-inputs (("rust-bencher" ,rust-bencher-0.1)))) + (home-page "https://github.com/bluss/matrixmultiply/") + (synopsis "General matrix multiplication for f32 and f64 matrices") + (description "General matrix multiplication for f32 and f64 matrices. +Operates on matrices with general layout (they can use arbitrary row and column +stride). Detects and uses AVX or SSE2 on x86 platforms transparently for higher +performance. Uses a microkernel strategy, so that the implementation is easy to +parallelize and optimize.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-md5-0.6 (package (name "rust-md5") @@ -5258,17 +6070,17 @@ whether an expression matches a pattern.") (base32 "17b2xm4h4cvxsdjsf3kdrzqv2za60kak961xzi5kmw6g6djcssvy")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/stainless-steel/md5") (synopsis "MD5 hash function in Rust") (description "The package provides the MD5 hash function.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-memchr-2.2 (package (name "rust-memchr") - (version "2.2.0") + (version "2.2.1") (source (origin (method url-fetch) @@ -5277,7 +6089,7 @@ whether an expression matches a pattern.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0f8wdra7yaggsr4jzlrvpd8yknnqhd990iijdr6llgc8gk2ppz1f")))) + "13j6ji9x9ydpi9grbss106gqqr3xn3bcfp28aydqfa4751qrfmw8")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -5320,12 +6132,18 @@ for searching bytes.") (base32 "0ns7kkd1h4pijdkwfvw4qlbbmqmlmzwlq3g2676dcl5vwyazv1b5")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-tempdir" ,rust-tempdir-0.3)))) (home-page "https://github.com/danburkert/memmap-rs") (synopsis "Rust library for cross-platform memory mapped IO") (description "This package provides a cross-platform Rust API for memory-mapped file IO.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5343,10 +6161,10 @@ file IO.") (base32 "1zy6s0ni0lx9rjzq3gq2zz9r8zgjmbp02332g3gsj4fyhv4s5zz2")))))) -(define-public rust-memoffset-0.2 +(define-public rust-memoffset-0.5 (package (name "rust-memoffset") - (version "0.2.1") + (version "0.5.3") (source (origin (method url-fetch) @@ -5355,20 +6173,41 @@ file IO.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1cvm2z7dy138s302ii7wlzcxbka5a8yfl5pl5di7lbdnw9hw578g")))) + "1fblqzc25hfaym8m0pj112s66pqq87avvaqm5hp5rskib2w9w63m")))) (build-system cargo-build-system) - (arguments `(#:skip-build? #t)) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rustc-version" ,rust-rustc-version-0.2)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/Gilnaa/memoffset") (synopsis - "offset_of functionality for Rust structs") - (description - "@code{offset_of} functionality for Rust structs.") + "C-like offset_of functionality for Rust structs") + (description "This package provides C-like @code{offset_of} functionality +for Rust structs.") (license license:expat))) +(define-public rust-memoffset-0.2 + (package + (inherit rust-memoffset-0.5) + (name "rust-memoffset") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "memoffset" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cvm2z7dy138s302ii7wlzcxbka5a8yfl5pl5di7lbdnw9hw578g")))) + (arguments `(#:skip-build? #t)))) + (define-public rust-mime-0.3 (package (name "rust-mime") - (version "0.3.13") + (version "0.3.16") (source (origin (method url-fetch) @@ -5376,13 +6215,13 @@ file IO.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "09clbyvdkwflp8anwjhqdib0sw8191gphcchdp80nc8ayhhwl9ry")))) + "13dcm9lh01hdwfjcg74ppljyjfj1c6w3a3cwkhxf0w8wa37cfq1a")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/hyperium/mime") (synopsis "Strongly Typed Mimes") (description "Support MIME (HTTP Media Types) as strong types in Rust.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5466,11 +6305,15 @@ drop-in replacement for miniz.") (base32 "00l2r4anm8g35x0js2zfdnwfbrih9m43vphdpb77c5ga3kjkm7hy")))) (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ;; Build dependencies: + ("rust-cc" ,rust-cc-1.0)))) (home-page "https://github.com/alexcrichton/flate2-rs") (synopsis "Bindings to the miniz.c library") (description "This package provides bindings to the @code{miniz.c} library.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5510,6 +6353,36 @@ drop-in replacement for miniz.") (description "Lightweight non-blocking IO.") (license license:expat))) +(define-public rust-mio-named-pipes-0.1 + (package + (name "rust-mio-named-pipes") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "mio-named-pipes" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1cwwfx1yr9vws8x971x34ijnirs377vcxi47frdirki5yppp9qzm")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-log" ,rust-log-0.4) + ("rust-mio" ,rust-mio-0.6) + ("rust-miow" ,rust-miow-0.3) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-env-logger" ,rust-env-logger-0.4) + ("rust-rand" ,rust-rand-0.4)))) + (home-page "https://github.com/alexcrichton/mio-named-pipes") + (synopsis "Windows named pipe bindings for mio") + (description + "A library for integrating Windows Named Pipes with mio.") + (license `(,license:asl2.0 ,license:expat)))) + (define-public rust-mio-uds-0.6 (package (name "rust-mio-uds") @@ -5551,12 +6424,18 @@ drop-in replacement for miniz.") (base32 "09ljvx6wg30f2xlv7b7hhpkw7k312n3hjgmrbhwzhz9x03ra0sir")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-socket2" ,rust-socket2-0.3) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.4)))) (home-page "https://github.com/alexcrichton/miow") (synopsis "Rust I/O library for Windows") (description "This package provides a zero overhead I/O library for Windows, focusing on IOCP and Async I/O abstractions.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5572,7 +6451,16 @@ IOCP and Async I/O abstractions.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc")))))) + "06g9b8sqlh5gxakwqq4rrib07afwanfnxgxajrldwcgk3hxjy7wc")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-kernel32-sys" ,rust-kernel32-sys-0.2) + ("rust-net2" ,rust-net2-0.2) + ("rust-winapi" ,rust-winapi-0.2) + ("rust-ws2-32-sys" ,rust-ws2-32-sys-0.2)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.3)))))) (define-public rust-model-0.1 (package @@ -5634,12 +6522,17 @@ checking.") (base32 "126g3fgfxp06zimc1l9iyxnn9cif1hjsg7sd81nlls5nnyghsma2")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/rust-lang-nursery/net2-rs") (synopsis "Extensions to the standard library's networking types") (description "This library contains extensions to the standard library's networking types as proposed in RFC 1158.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5703,22 +6596,31 @@ types as proposed in RFC 1158.") (base32 "1gjycyl2283525abks98bhxa4r259m617xfm5z52p3p3c8ry9d9f")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'delete-vendored-zlib - ; (lambda _ - ; (delete-file-recursively "src/zlib") - ; #t))))) - ;(inputs - ; `(("pkg-config" ,pkg-config) - ; ("zlib" ,zlib))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ;; Build dependencies: + ("rust-cc" ,rust-cc-1.0) + ("rust-pkg-config" ,rust-pkg-config-0.3) + ("rust-vcpkg" ,rust-vcpkg-0.2)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'delete-vendored-zlib + (lambda _ + (delete-file-recursively "src/zlib") + (delete-file-recursively + (string-append "guix-vendor/rust-libz-sys-" + ,(package-version rust-libz-sys-1.0) + ".crate/src/zlib")) + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("zlib" ,zlib))) (home-page "https://github.com/rust-lang/libz-sys") (synopsis "Bindings to the system libz library") (description "This package provides bindings to the system @code{libz} library (also known as zlib).") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -5934,11 +6836,16 @@ combinators library.") (base32 "0wrj3zvj6h3q26sqj9zxpd59frjb54n7jhjwf307clq31ic47vxw")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/seanmonstar/num_cpus") (synopsis "Get the number of CPUs on a machine") (description "Get the number of CPUs on a machine.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -6241,22 +7148,30 @@ system for OpenSSL.") (sha256 (base32 "0vvk8vzrc73y8n5rf4yj3x8ygyxjaz7wxrbxiwqi7qy0gyp1cpa6")))) (build-system cargo-build-system) - ;(arguments - ; `(#:phases - ; (modify-phases %standard-phases - ; (add-after 'unpack 'find-openssl - ; (lambda* (#:key inputs #:allow-other-keys) - ; (let ((openssl (assoc-ref inputs "openssl"))) - ; (setenv "OPENSSL_DIR" openssl)) - ; #t))))) - ;(inputs - ; `(("openssl" ,openssl) - ; ("pkg-config" ,pkg-config))) + (arguments + `(#:skip-build? #t ; it wants rust-openssl-src + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ;; Build dependencies: + ("rust-autocfg" ,rust-autocfg-0.1) + ("rust-cc" ,rust-cc-1.0) + ("rust-pkg-config" ,rust-pkg-config-0.3) + ;("rust-openssl-src" ,rust-openssl-src-111) + ("rust-vcpkg" ,rust-vcpkg-0.2)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-openssl + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl)) + #t))))) + (native-inputs + `(("openssl" ,openssl) + ("pkg-config" ,pkg-config))) (home-page "https://github.com/sfackler/rust-openssl") (synopsis "FFI bindings to OpenSSL") (description "This package provides FFI bindings to OpenSSL for use in rust crates.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-ordermap-0.3 @@ -6634,11 +7549,23 @@ deserialization, and interpreter in Rust.") "0nwdvc43dkb89qmm5q8gw1zyll0wsfqw7kczpn23mljra3874v47")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t - #:cargo-inputs + `(#:cargo-inputs (("rust-libc" ,rust-libc-0.2) ("rust-pkg-config" ,rust-pkg-config-0.3) - ("rust-cc" ,rust-cc-1.0)))) + ("rust-cc" ,rust-cc-1.0)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'unbundle-sources + (lambda _ + (delete-file-recursively "pcre2") + (delete-file-recursively + (string-append "guix-vendor/rust-pcre2-sys-" + ,(package-version rust-pcre2-sys-0.2) + ".tar.gz/pcre2")) + #t))))) + (native-inputs + `(("pcre2" ,pcre2) + ("pkg-config" ,pkg-config))) (home-page "https://github.com/BurntSushi/rust-pcre2") (synopsis "Low level bindings to PCRE2") @@ -6716,13 +7643,13 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}. (base32 "0b1pzh48j86v46wxngch6k1kx9cdw3jr3lwa86gd6jd4bmxzz1xn")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/permutohedron") (synopsis "Generate permutations of sequences") (description "Generate permutations of sequences. Either lexicographical order permutations, or a minimal swaps permutation sequence implemented using Heap's algorithm.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -6778,7 +7705,7 @@ algorithm.") (define-public rust-pest-generator-2.1 (package (name "rust-pest-generator") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) @@ -6787,16 +7714,16 @@ algorithm.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0ipnv77lqhj4d4fpfxi8m168lcjp482kszaknlardmpgqiv0a4k3")))) + "1h3z8jccki87mn7gppy4292s1ah98z4md998w5pd04jpkclwz7vv")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-pest" ,rust-pest-2.1) ("rust-pest-meta" ,rust-pest-meta-2.1) - ("rust-proc-macro2" ,rust-proc-macro2-0.4) + ("rust-proc-macro2" ,rust-proc-macro2-1.0) ("rust-quote" ,rust-quote-1.0) - ("rust-syn" ,rust-syn-0.15)))) + ("rust-syn" ,rust-syn-1.0)))) (home-page "https://pest.rs/") (synopsis "Pest code generator") (description "Pest code generator.") @@ -6805,7 +7732,7 @@ algorithm.") (define-public rust-pest-meta-2.1 (package (name "rust-pest-meta") - (version "2.1.1") + (version "2.1.2") (source (origin (method url-fetch) @@ -6814,15 +7741,14 @@ algorithm.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0kaprdz3jis9bjfwhri1zncbsvack5m3gx2g5flspdy7wxnyljgj")))) + "0iymvrh7lcfi8iarkgq0hwgarr00np3l4xg4bx42rmvgi6czshyz")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-maplit" ,rust-maplit-1.0) - ("rust-pest" ,rust-pest-2.1)) - #:cargo-development-inputs - (("rust-sha-1" ,rust-sha-1-0.8)))) + ("rust-pest" ,rust-pest-2.1) + ("rust-sha-1" ,rust-sha-1-0.8)))) (home-page "https://pest.rs") (synopsis "Pest meta language parser and validator") (description @@ -7338,7 +8264,7 @@ in terms of the upstream unstable API.") (define-public rust-quick-error-1.2 (package (name "rust-quick-error") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) @@ -7346,13 +8272,13 @@ in terms of the upstream unstable API.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1w6kgwwv7p7zr0yyg5rb315lkk24bimywklwx7fsvsbwi10bjx4j")))) + "1q6za3v78hsspisc197bg3g7rpc989qycy8ypr8ap8igv10ikl51")))) (build-system cargo-build-system) + (arguments `(#:skip-build? #t)) (home-page "https://github.com/tailhook/quick-error") (synopsis "Macro which makes error types pleasant to write") (description "This crate provides a macro which makes error types pleasant to write.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -7387,6 +8313,69 @@ to write.") "Automatic property based testing with shrinking.") (license (list license:expat license:unlicense)))) +(define-public rust-quickcheck-0.7 + (package + (inherit rust-quickcheck-0.8) + (name "rust-quickcheck") + (version "0.7.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "quickcheck" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "05pqzja6fwdyrs1za5vmxb9ifb993knmpdsrs1fs2wyz9qz7slyl")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-env-logger" ,rust-env-logger-0.5) + ("rust-log" ,rust-log-0.4) + ("rust-rand" ,rust-rand-0.5) + ("rust-rand-core" ,rust-rand-core-0.2)))))) + +(define-public rust-quickcheck-0.6 + (package + (inherit rust-quickcheck-0.8) + (name "rust-quickcheck") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "quickcheck" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1dyazm2fcq0v9fscq1a7597zsvdl9f0j8c2bfj1jm2nlzz2sn6y0")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-env-logger" ,rust-env-logger-0.5) + ("rust-log" ,rust-log-0.4) + ("rust-rand" ,rust-rand-0.4)))))) + +(define-public rust-quickcheck-0.5 + (package + (inherit rust-quickcheck-0.8) + (name "rust-quickcheck") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "quickcheck" version)) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jzm1ygfbn4igaq14b9nipc8yvsn6c8panpgd1qiy5r2insjllyd")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-env-logger" ,rust-env-logger-0.4) + ("rust-log" ,rust-log-0.3) + ("rust-rand" ,rust-rand-0.3)))))) + (define-public rust-quote-1.0 (package (name "rust-quote") @@ -7420,8 +8409,44 @@ to write.") (base32 "1nw0klza45hf127kfyrpxsxd5jw2l6h21qxalil3hkr7bnf7kx7s")))))) +(define-public rust-rand-0.7 + (package + (name "rust-rand") + (version "0.7.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "00sdaimkbz491qgi6qxkv582yivl32m2jd401kzbn94vsiwicsva")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-getrandom" ,rust-getrandom-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-log" ,rust-log-0.4) + ("rust-packed-simd" ,rust-packed-simd-0.3) + ("rust-rand-chacha" ,rust-rand-chacha-0.2) + ("rust-rand-core" ,rust-rand-core-0.5) + ("rust-rand-hc" ,rust-rand-hc-0.2) + ("rust-rand-pcg" ,rust-rand-pcg-0.2)) + #:cargo-development-inputs + (("rust-rand-hc" ,rust-rand-hc-0.2) + ("rust-rand-pcg" ,rust-rand-pcg-0.2)))) + (home-page "https://crates.io/crates/rand") + (synopsis "Random number generators and other randomness functionality") + (description + "Rand provides utilities to generate random numbers, to convert them to +useful types and distributions, and some randomness-related algorithms.") + (license (list license:asl2.0 + license:expat)))) + (define-public rust-rand-0.6 (package + (inherit rust-rand-0.7) (name "rust-rand") (version "0.6.5") (source @@ -7432,7 +8457,6 @@ to write.") (sha256 (base32 "1jl4449jcl4wgmzld6ffwqj5gwxrp8zvx8w573g1z368qg6xlwbd")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -7447,17 +8471,39 @@ to write.") ("rust-rand-os" ,rust-rand-os-0.1) ("rust-rand-pcg" ,rust-rand-pcg-0.1) ("rust-rand-xorshift" ,rust-rand-xorshift-0.1) + ("rust-winapi" ,rust-winapi-0.3) + ("rust-autocfg" ,rust-autocfg-0.1)) ; build-dependency + #:cargo-development-inputs + (("rust-rand-xoshiro" ,rust-rand-xoshiro-0.1)))))) + +(define-public rust-rand-0.5 + (package + (inherit rust-rand-0.7) + (name "rust-rand") + (version "0.5.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1fdcgja9167hlzkf4g5daqwp498lwiyq7aqm05whklpbsdyc8666")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cloudabi" ,rust-cloudabi-0.0) + ("rust-fuchsia-cprng" ,rust-fuchsia-cprng-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-log" ,rust-log-0.4) + ("rust-rand-core" ,rust-rand-core-0.3) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-stdweb" ,rust-stdweb-0.4) ("rust-winapi" ,rust-winapi-0.3)) #:cargo-development-inputs - (("rust-autocfg" ,rust-autocfg-0.1) - ("rust-rand-xoshiro" ,rust-rand-xoshiro-0.3)))) - (home-page "https://crates.io/crates/rand") - (synopsis "Random number generators and other randomness functionality") - (description - "Rand provides utilities to generate random numbers, to convert them to -useful types and distributions, and some randomness-related algorithms.") - (license (list license:asl2.0 - license:expat)))) + (("rust-bincode" ,rust-bincode-1.1)))))) (define-public rust-rand-0.4 (package @@ -7503,7 +8549,7 @@ useful types and distributions, and some randomness-related algorithms.") (define-public rust-rand-chacha-0.2 (package (name "rust-rand-chacha") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) @@ -7512,15 +8558,13 @@ useful types and distributions, and some randomness-related algorithms.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "178d36jfkc4v95s25scc2vibj2hd2hlk64cs6id4hvzg89whd4z1")))) + "0lv8imzzl4h2glm6sjj8mkvasgi8jym23ya48dakyln7m06sk8h3")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-c2-chacha" ,rust-c2-chacha-0.2) - ("rust-rand-core" ,rust-rand-core-0.5)) - #:cargo-development-inputs - (("rust-autocfg" ,rust-autocfg-0.1)))) + ("rust-rand-core" ,rust-rand-core-0.5)))) (home-page "https://crates.io/crates/rand-chacha") (synopsis "ChaCha random number generator") (description "ChaCha random number generator.") @@ -7549,7 +8593,7 @@ useful types and distributions, and some randomness-related algorithms.") (define-public rust-rand-core-0.5 (package (name "rust-rand-core") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) @@ -7558,14 +8602,13 @@ useful types and distributions, and some randomness-related algorithms.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1jis94x9ri8xlxki2w2w5k29sjpfwgzkjylg7paganp74hrnhpk1")))) + "06bdvx08v3rkz451cm7z59xwwqn1rkfh6v9ay77b14f8dwlybgch")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-getrandom" ,rust-getrandom-0.1) - ("rust-serde" ,rust-serde-1.0) - ("rust-serde-derive" ,rust-serde-derive-1.0)))) + ("rust-serde" ,rust-serde-1.0)))) (home-page "https://crates.io/crates/rand-core") (synopsis "Core random number generator traits and tools for implementation") @@ -7610,10 +8653,29 @@ useful types and distributions, and some randomness-related algorithms.") `(#:skip-build? #t #:cargo-inputs (("rand-core" ,rust-rand-core-0.4)))))) -(define-public rust-rand-hc-0.1 +(define-public rust-rand-core-0.2 + (package + (inherit rust-rand-core-0.5) + (name "rust-rand-core") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand-core" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0wikbw2a36bz8ywjyycjrd7db6ra3yzj14zs1ysxz2fiqhia8q8r")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rand-core" ,rust-rand-core-0.3)))))) + +(define-public rust-rand-hc-0.2 (package (name "rust-rand-hc") - (version "0.1.0") + (version "0.2.0") (source (origin (method url-fetch) @@ -7621,15 +8683,36 @@ useful types and distributions, and some randomness-related algorithms.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1i0vl8q5ddvvy0x8hf1zxny393miyzxkwqnw31ifg6p0gdy6fh3v")))) + "0g31sqwpmsirdlwr0svnacr4dbqyz339im4ssl9738cjgfpjjcfa")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rand-hc" ,rust-rand-core-0.5)))) (home-page "https://crates.io/crates/rand_hc") (synopsis "HC128 random number generator") - (description "HC128 random number generator") - (properties '((hidden? . #t))) + (description "This package provides a cryptographically secure random number +generator that uses the HC-128 algorithm.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rand-hc-0.1 + (package + (inherit rust-rand-hc-0.2) + (name "rust-rand-hc") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand_hc" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "1i0vl8q5ddvvy0x8hf1zxny393miyzxkwqnw31ifg6p0gdy6fh3v")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-rand-core" ,rust-rand-core-0.3)))))) + (define-public rust-rand-isaac-0.1 (package (name "rust-rand-isaac") @@ -7723,10 +8806,10 @@ useful types and distributions, and some randomness-related algorithms.") ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2) ("rust-winapi" ,rust-winapi-0.3)))))) -(define-public rust-rand-pcg-0.1 +(define-public rust-rand-pcg-0.2 (package (name "rust-rand-pcg") - (version "0.1.2") + (version "0.2.1") (source (origin (method url-fetch) @@ -7734,17 +8817,46 @@ useful types and distributions, and some randomness-related algorithms.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0i0bdla18a8x4jn1w0fxsbs3jg7ajllz6azmch1zw33r06dv1ydb")))) + "0ab4h6s6x3py833jk61lwadq83qd1c8bih2hgi6yps9rnv0x1aqn")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rand-core" ,rust-rand-core-0.5) + ("rust-serde" ,rust-serde-1.0)) + #:cargo-development-inputs + (("rust-bincode" ,rust-bincode-1.1)))) (home-page "https://crates.io/crates/rand_pcg") (synopsis - "Selected PCG random number generators") + "Selected PCG random number generators") (description - "Selected PCG random number generators") - (properties '((hidden? . #t))) + "Implements a selection of PCG random number generators.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rand-pcg-0.1 + (package + (inherit rust-rand-pcg-0.2) + (name "rust-rand-pcg") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand_pcg" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "0i0bdla18a8x4jn1w0fxsbs3jg7ajllz6azmch1zw33r06dv1ydb")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-autocfg" ,rust-autocfg-0.1) + ("rust-rand-core" ,rust-rand-core-0.4) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0)) + #:cargo-development-inputs + (("rust-bincode" ,rust-bincode-1.1)))))) + (define-public rust-rand-xorshift-0.2 (package (name "rust-rand-xorshift") @@ -7822,6 +8934,29 @@ useful types and distributions, and some randomness-related algorithms.") "Xoshiro, xoroshiro and splitmix64 random number generators.") (license (list license:expat license:asl2.0)))) +(define-public rust-rand-xoshiro-0.1 + (package + (inherit rust-rand-xoshiro-0.3) + (name "rust-rand-xoshiro") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rand_xoshiro" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ac9ha6ll8b6l1930bd99k29jrjpsbpddvr6ycrnbi5rkwb1id03")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-byteorder" ,rust-byteorder-1.3) + ("rust-rand-core" ,rust-rand-core-0.3)) + #:cargo-development-inputs + (("rust-rand" ,rust-rand-0.6)))))) + (define-public rust-rawpointer-0.1 (package (name "rust-rawpointer") @@ -7835,12 +8970,12 @@ useful types and distributions, and some randomness-related algorithms.") (base32 "06ghpm9y7gacks78s3maakha07kbnwrxif5q37r2l7z1sali3b7b")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/rawpointer/") (synopsis "Extra methods for raw pointers") (description "Extra methods for raw pointers. For example @code{.post_inc()} and @code{.pre_dec()} (c.f. @code{ptr++} and @code{--ptr}) and @code{ptrdistance}.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -7872,8 +9007,42 @@ For example creation from raw pointers and start, end pointer accessors.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rayon-1.3 + (package + (name "rust-rayon") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rayon" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1650g13bxlmywhdlw65q3g1zyyb7l0wcm35v45kf31cwgwly6v6v")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7) + ("rust-either" ,rust-either-1.5) + ("rust-rayon-core" ,rust-rayon-core-1.7)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3) + ("rust-docopt" ,rust-docopt-1.1) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-rand" ,rust-rand-0.7) + ("rust-rand-xorshift" ,rust-rand-xorshift-0.2) + ("rust-serde" ,rust-serde-1.0)))) + (home-page "https://github.com/rayon-rs/rayon") + (synopsis "Simple work-stealing parallelism for Rust") + (description + "Simple work-stealing parallelism for Rust.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-rayon-1.1 (package + (inherit rust-rayon-1.3) (name "rust-rayon") (version "1.1.0") (source @@ -7885,7 +9054,6 @@ accessors.") (sha256 (base32 "190hkbcdfvcphyyzkdg52zdia2y9d9yanpm072bmnzbn49p1ic54")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -7899,15 +9067,43 @@ accessors.") ("rust-rand" ,rust-rand-0.4) ("rust-rand-xorshift" ,rust-rand-xorshift-0.2) ("rust-serde" ,rust-serde-1.0) - ("rust-serde-derive" ,rust-serde-derive-1.0)))) + ("rust-serde-derive" ,rust-serde-derive-1.0)))))) + +(define-public rust-rayon-core-1.7 + (package + (name "rust-rayon-core") + (version "1.7.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rayon-core" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ac55kpnh2390ah7r071vnjbiy308qpznql0n597x5dgxx39pa08")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-crossbeam-deque" ,rust-crossbeam-deque-0.7) + ("rust-crossbeam-queue" ,rust-crossbeam-queue-0.2) + ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.7) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-num-cpus" ,rust-num-cpus-1.10)) + #:cargo-development-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-rand" ,rust-rand-0.7) + ("rust-rand-xorshift" ,rust-rand-xorshift-0.2) + ("rust-scoped-tls" ,rust-scoped-tls-1.0)))) (home-page "https://github.com/rayon-rs/rayon") - (synopsis "Simple work-stealing parallelism for Rust") - (description - "Simple work-stealing parallelism for Rust.") - (license (list license:asl2.0 license:expat)))) + (synopsis "Core APIs for Rayon") + (description "Core APIs for Rayon.") + (license (list license:expat license:asl2.0)))) (define-public rust-rayon-core-1.5 (package + (inherit rust-rayon-core-1.7) (name "rust-rayon-core") (version "1.5.0") (source @@ -7919,7 +9115,6 @@ accessors.") (sha256 (base32 "1ljva6blaf1wmzvg77h1i9pd0hsmsbbcmdk7sjbw7h2s8gw0vgpb")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -7932,11 +9127,7 @@ accessors.") (("rust-libc" ,rust-libc-0.2) ("rust-rand" ,rust-rand-0.4) ("rust-rand-xorshift" ,rust-rand-xorshift-0.2) - ("rust-scoped-tls" ,rust-scoped-tls-1.0)))) - (home-page "https://github.com/rayon-rs/rayon") - (synopsis "Core APIs for Rayon") - (description "Core APIs for Rayon.") - (license (list license:expat license:asl2.0)))) + ("rust-scoped-tls" ,rust-scoped-tls-1.0)))))) (define-public rust-rdrand-0.4 (package @@ -7951,12 +9142,15 @@ accessors.") (base32 "1cjq0kwx1bk7jx3kzyciiish5gqsj7620dm43dc52sr8fzmm9037")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rand-core" ,rust-rand-core-0.3)))) (home-page "https://github.com/nagisa/rust_rdrand/") (synopsis "Random number generator") (description "This package is an implementation of random number generator based on -@code{rdrand} and @cpde{rdseed} instructions") - (properties '((hidden? . #t))) +@code{rdrand} and @code{rdseed} instructions") (license license:isc))) ;; This package requires features which are unavailable @@ -7974,11 +9168,11 @@ accessors.") (base32 "110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://gitlab.redox-os.org/redox-os/syscall") (synopsis "Rust library to access raw Redox system calls") (description "This package provides a Rust library to access raw Redox system calls.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-redox-termios-0.1 @@ -7994,11 +9188,42 @@ system calls.") (base32 "0xhgvdh62mymgdl3jqrngl8hr4i8xwpnbsxnldq0l47993z1r2by")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-redox-syscall" ,rust-redox-syscall-0.1)))) (home-page "https://github.com/redox-os/termios") (synopsis "Rust library to access Redox termios functions") (description "This package provides a Rust library to access Redox termios functions.") - (properties '((hidden? . #t))) + (license license:expat))) + +(define-public rust-redox-users-0.3 + (package + (name "rust-redox-users") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "redox_users" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0vdn688q9wg997b1x5abx2gf7406rn1lvd62ypcgh1gj7g5dpkjf")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-failure" ,rust-failure-0.1) + ("rust-rand-os" ,rust-rand-os-0.1) + ("rust-redox-syscall" ,rust-redox-syscall-0.1) + ("rust-rust-argon2" ,rust-rust-argon2-0.5)))) + (home-page "https://gitlab.redox-os.org/redox-os/users") + (synopsis "Access Redox users and groups") + (description + "This package provides a Rust library to access Redox users and groups +functionality.") (license license:expat))) (define-public rust-ref-cast-0.2 @@ -8051,10 +9276,10 @@ system calls.") "Derive implementation for ref_cast::RefCast.") (license (list license:asl2.0 license:expat)))) -(define-public rust-regex-1.1 +(define-public rust-regex-1.3 (package (name "rust-regex") - (version "1.1.7") + (version "1.3.3") (source (origin (method url-fetch) @@ -8063,7 +9288,7 @@ system calls.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1pabajpp0wzb7dm2x32gy8w7k0mwykr6zsvzn0fgpr6pww40hbqb")))) + "11syqmfvbsah805z6ih8vxf8p6jssdsz1gjsjqcwprz484cqql5m")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8071,13 +9296,12 @@ system calls.") (("rust-aho-corasick" ,rust-aho-corasick-0.7) ("rust-memchr" ,rust-memchr-2.2) ("rust-regex-syntax" ,rust-regex-syntax-0.6) - ("rust-thread-local" ,rust-thread-local-0.3) - ("rust-utf8-ranges" ,rust-utf8-ranges-1.0)) + ("rust-thread-local" ,rust-thread-local-1.0)) #:cargo-development-inputs (("rust-doc-comment" ,rust-doc-comment-0.3) ("rust-lazy-static" ,rust-lazy-static-1.3) ("rust-quickcheck" ,rust-quickcheck-0.8) - ("rust-rand" ,rust-rand-0.4)))) + ("rust-rand" ,rust-rand-0.6)))) (home-page "https://github.com/rust-lang/regex") (synopsis "Regular expressions for Rust") (description @@ -8085,6 +9309,62 @@ system calls.") uses finite automata and guarantees linear time matching on all inputs.") (license (list license:expat license:asl2.0)))) +(define-public rust-regex-1.1 + (package + (inherit rust-regex-1.3) + (name "rust-regex") + (version "1.1.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "regex" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1pabajpp0wzb7dm2x32gy8w7k0mwykr6zsvzn0fgpr6pww40hbqb")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-aho-corasick" ,rust-aho-corasick-0.7) + ("rust-memchr" ,rust-memchr-2.2) + ("rust-regex-syntax" ,rust-regex-syntax-0.6) + ("rust-thread-local" ,rust-thread-local-0.3) + ("rust-utf8-ranges" ,rust-utf8-ranges-1.0)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-quickcheck" ,rust-quickcheck-0.8) + ("rust-rand" ,rust-rand-0.4)))))) + +(define-public rust-regex-0.2 + (package + (inherit rust-regex-1.3) + (name "rust-regex") + (version "0.2.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "regex" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1163ir1k5zjspirfjl4wqbviwrxlhmfwy95xxb69y4irkv4snack")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-aho-corasick" ,rust-aho-corasick-0.6) + ("rust-memchr" ,rust-memchr-2.2) + ("rust-regex-syntax" ,rust-regex-syntax-0.5) + ("rust-thread-local" ,rust-thread-local-0.3) + ("rust-utf8-ranges" ,rust-utf8-ranges-1.0)) + #:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-quickcheck" ,rust-quickcheck-0.6) + ("rust-rand" ,rust-rand-0.4)))))) + (define-public rust-regex-automata-0.1 (package (name "rust-regex-automata") @@ -8122,7 +9402,7 @@ uses finite automata and guarantees linear time matching on all inputs.") (define-public rust-regex-syntax-0.6 (package (name "rust-regex-syntax") - (version "0.6.10") + (version "0.6.13") (source (origin (method url-fetch) @@ -8130,12 +9410,9 @@ uses finite automata and guarantees linear time matching on all inputs.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0p47lf38yj2g2fnmvnraccqlxwk35zr76hlnqi8yva932nzqam6d")))) + "141xi6yiji0bc04c4skamd4ny9vnd1jrwc7qzfga425lyn8yhd77")))) (build-system cargo-build-system) - (arguments - `(#:skip-build? #t - #:cargo-inputs - (("rust-ucd-util" ,rust-ucd-util-0.1)))) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/rust-lang/regex") (synopsis "Regular expression parser") (description @@ -8143,6 +9420,25 @@ uses finite automata and guarantees linear time matching on all inputs.") (license (list license:asl2.0 license:expat)))) +(define-public rust-regex-syntax-0.5 + (package + (inherit rust-regex-syntax-0.6) + (name "rust-regex-syntax") + (version "0.5.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "regex-syntax" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "19zp25jr3dhmclg3qqjk3bh1yrn7bqi05zgr5v52szv3l97plw3x")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-ucd-util" ,rust-ucd-util-0.1)))))) + (define-public rust-remove-dir-all-0.5 (package (name "rust-remove-dir-all") @@ -8156,12 +9452,17 @@ uses finite automata and guarantees linear time matching on all inputs.") (base32 "0bkrlyg26mgizpiy1yb2hhpgscxcag8r5fnckqsvk25608vzm0sa")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/XAMPPRocky/remove_dir_all") (synopsis "Implementation of remove_dir_all for Windows") (description "This package provides a safe, reliable implementation of @code{remove_dir_all} for Windows") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8178,11 +9479,15 @@ uses finite automata and guarantees linear time matching on all inputs.") (base32 "1jvdsmksdf6yiipm3aqahyv8n1cjd7wqc8sa0p0gzsax3fmb8qxj")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-quick-error" ,rust-quick-error-1.2) + ("rust-hostname", rust-hostname-0.1)))) (home-page "https://github.com/tailhook/resolv-conf") - (synopsis "/etc/resolv.conf parser") + (synopsis "Parser for /etc/resolv.conf") (description "An /etc/resolv.conf parser crate for Rust.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8215,6 +9520,34 @@ uses finite automata and guarantees linear time matching on all inputs.") (license (list license:asl2.0 license:expat)))) +(define-public rust-rust-argon2-0.5 + (package + (name "rust-rust-argon2") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "rust-argon2" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1krjkmyfn37hy7sfs6lqia0fsvw130nn1z2850glsjcva7pym92c")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-base64" ,rust-base64-0.10) + ("rust-blake2b-simd" ,rust-blake2b-simd-0.5) + ("rust-crossbeam-utils" ,rust-crossbeam-utils-0.6)) + #:cargo-development-inputs + (("rust-hex" ,rust-hex-0.3)))) + (home-page "https://github.com/sru-systems/rust-argon2") + (synopsis "Rust implementation of the Argon2 password hashing function") + (description "This package contans a rust implementation of the Argon2 +password hashing function.") + (license (list license:expat license:asl2.0)))) + (define-public rust-rustc-demangle-0.1 (package (name "rust-rustc-demangle") @@ -8228,18 +9561,22 @@ uses finite automata and guarantees linear time matching on all inputs.") (base32 "10qp42sl1wrdbgbbh8rnay2grm976z7hqgz32c4y09l1c071qsac")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-compiler-builtins" ,rust-compiler-builtins-0.1) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1.0)))) (home-page "https://github.com/alexcrichton/rustc-demangle") (synopsis "Rust compiler symbol demangling") (description "This package demanges the symbols from the Rust compiler.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-rustc-hash-1.0 (package (name "rust-rustc-hash") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) @@ -8247,13 +9584,16 @@ uses finite automata and guarantees linear time matching on all inputs.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "114bf72466bl63i5hh8fgqfnhihs0w1m9c9jz505095agfixnvg0")))) + "1f4cnbcmz2c3zjidqszc9c4fip37ch4xl74nkkp9dw291j5zqh3m")))) (build-system cargo-build-system) - (home-page "https://github.com/rust-lang-nursery/rustc-hash") + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-byteorder" ,rust-byteorder-1.3)))) + (home-page "https://github.com/rust-lang/rustc-hash") (synopsis "Speedy, non-cryptographic hash used in rustc") (description "This package provides a speedy, non-cryptographic hash used in rustc.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8270,6 +9610,10 @@ uses finite automata and guarantees linear time matching on all inputs.") (base32 "1nkg3vasg7nk80ffkazizgiyv3hb1l9g3d8h17cajbkx538jiwfw")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-rand" ,rust-rand-0.3)))) (home-page "https://github.com/rust-lang-deprecated/rustc-serialize") (synopsis "Generic serialization/deserialization support") (description @@ -8277,10 +9621,29 @@ uses finite automata and guarantees linear time matching on all inputs.") corresponding to the @code{derive(RustcEncodable, RustcDecodable)} mode in the compiler. Also includes support for hex, base64, and json encoding and decoding.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) +(define-public rust-rustc-std-workspace-alloc-1.0 + (package + (name "rust-rustc-std-workspace-alloc") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-std-workspace-alloc" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "11psmqk6glglxl3zwh8slz6iynfxaifh4spd2wcnws552dqdarpz")))) + (build-system cargo-build-system) + (arguments `(#:skip-build? #t)) + (home-page "https://crates.io/crates/rustc-std-workspace-alloc") + (synopsis "Rust workspace hack") + (description "This package is a Rust workspace hack.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-rustc-std-workspace-core-1.0 (package (name "rust-rustc-std-workspace-core") @@ -8294,14 +9657,34 @@ decoding.") (base32 "1309xhwyai9xpz128xrfjqkmnkvgjwddznmj7brbd8i8f58zamhr")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://crates.io/crates/rustc-std-workspace-core") (synopsis "Explicitly empty crate for rust-lang/rust integration") (description "This crate provides an explicitly empty crate for rust-lang/rust integration.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) +(define-public rust-rustc-std-workspace-std-1.0 + (package + (name "rust-rustc-std-workspace-std") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "rustc-std-workspace-std" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1vq4vaclamwhk0alf4f7wq3i9wxa993sxpmhy6qfaimy1ai7d9mb")))) + (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) + (home-page "https://crates.io/crates/rustc-std-workspace-std") + (synopsis "Workaround for rustbuild") + (description "This package provides a workaround for rustbuild.") + (license (list license:expat license:asl2.0)))) + (define-public rust-rustc-test-0.3 (package (name "rust-rustc-test") @@ -8322,10 +9705,9 @@ rust-lang/rust integration.") (("rust-getopts" ,rust-getopts-0.2) ("rust-libc" ,rust-libc-0.2) ("rust-rustc-serialize" ,rust-rustc-serialize-0.3) - ("rust-term" ,rust-term-0.5) - ("rust-time" ,rust-time-0.1)) - #:cargo-development-inputs - (("rust-rustc-version" ,rust-rustc-version-0.2)))) + ("rust-term" ,rust-term-0.4) + ("rust-time" ,rust-time-0.1) + ("rust-rustc-version" ,rust-rustc-version-0.2)))) (home-page "https://github.com/servo/rustc-test") (synopsis "Fork of Rust's test crate") (description @@ -8444,7 +9826,7 @@ using a fork-like interface.") (define-public rust-safemem-0.3 (package (name "rust-safemem") - (version "0.3.2") + (version "0.3.3") (source (origin (method url-fetch) @@ -8452,20 +9834,20 @@ using a fork-like interface.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1l1ljkm4lpyryrv2ndaxi1f7z1f3v9bwy1rzl9f9mbhx04iq9c6j")))) + "0wp0d2b2284lw11xhybhaszsczpbq1jbdklkxgifldcknmy3nw7g")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/abonander/safemem") (synopsis "Safe wrappers for memory-accessing functions") (description "Safe wrappers for memory-accessing functions, like @code{std::ptr::copy()}.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) (define-public rust-same-file-1.0 (package (name "rust-same-file") - (version "1.0.5") + (version "1.0.6") (source (origin (method url-fetch) @@ -8473,21 +9855,26 @@ using a fork-like interface.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "08a4zy10pjindf2rah320s6shgswk13mqw7s61m8i1y1xpf8spjq")))) + "00h5j1w87dmhnvbv9l8bic3y7xxsnjmssvifw2ayvgx9mb1ivz4k")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-winapi-util" ,rust-winapi-util-0.1)) + #:cargo-development-inputs + (("rust-doc-comment" ,rust-doc-comment-0.3)))) (home-page "https://github.com/BurntSushi/same-file") (synopsis "Determine whether two file paths point to the same file") (description "This package provides a simple crate for determining whether two file paths point to the same file.") - (properties '((hidden? . #t))) (license (list license:unlicense license:expat)))) (define-public rust-schannel-0.1 (package (name "rust-schannel") - (version "0.1.15") + (version "0.1.16") (source (origin (method url-fetch) @@ -8495,14 +9882,18 @@ paths point to the same file.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0f9k4pm8yc3z0n1n8hazvnrvg52f0sfxjc91bhf3r76rb3rapxpj")))) + "08d0p5iy574vdrax4l3laazic0crj7rp7vp3if5rrfkcdfq51xc7")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/steffengy/schannel-rs") (synopsis "Rust bindings to the Windows SChannel APIs") (description "Rust bindings to the Windows SChannel APIs providing TLS client and server functionality.") - (properties '((hidden? . #t))) (license license:expat))) (define-public rust-scoped-threadpool-0.1 @@ -8518,16 +9909,19 @@ server functionality.") (base32 "1a26d3lk40s9mrf4imhbik7caahmw2jryhhb6vqv6fplbbgzal8x")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static-1.3)))) (home-page "https://github.com/Kimundi/scoped-threadpool-rs") - (synopsis "library for scoped and cached threadpools") + (synopsis "Library for scoped and cached threadpools") (description "This crate provides a stable, safe and scoped threadpool. It can be used to execute a number of short-lived jobs in parallel without the need to respawn the underlying threads. Jobs are runnable by borrowing the pool for a given -scope, during which an arbitrary number of them can be executed. These jobs can +scope, during which an arbitrary number of them can be executed. These jobs can access data of any lifetime outside of the pools scope, which allows working on non-'static references in parallel.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8544,12 +9938,12 @@ non-'static references in parallel.") (base32 "1hj8lifzvivdb1z02lfnzkshpvk85nkgzxsy2hc0zky9wf894spa")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/alexcrichton/scoped-tls") (synopsis "Rust library providing the old standard library's scoped_thread_local") (description "This crate provides a library implementation of the standard library's old @code{scoped_thread_local!} macro for providing scoped access to @dfn{thread local storage} (TLS) so any type can be stored into TLS.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8580,6 +9974,7 @@ library's old @code{scoped_thread_local!} macro for providing scoped access to (base32 "03aay84r1f6w87ckbpj6cc4rnsxkxcfs13n5ynxjia0qkgjiabml")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/bluss/scopeguard") (synopsis "Scope guard which will run a closure even out of scope") (description "This package provides a RAII scope guard that will run a @@ -8587,7 +9982,6 @@ given closure when it goes out of scope, even if the code between panics (assuming unwinding panic). Defines the macros @code{defer!}, @code{defer_on_unwind!}, @code{defer_on_success!} as shorthands for guards with one of the implemented strategies.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -8777,7 +10171,7 @@ proven statistical guarantees.") (define-public rust-serde-1.0 (package (name "rust-serde") - (version "1.0.101") + (version "1.0.104") (source (origin (method url-fetch) @@ -8785,7 +10179,7 @@ proven statistical guarantees.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1p8r24hagcsrl92w5z32nfrg9040qkgqf8iwwnf7mzigpavwk5lp")))) + "0ja4mgw4p42syjk7jkzwhj2yg6llfrfm7vn8rvy7v3c1bzr1aha1")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8833,7 +10227,7 @@ proven statistical guarantees.") (define-public rust-serde-cbor-0.10 (package (name "rust-serde-cbor") - (version "0.10.1") + (version "0.10.2") (source (origin (method url-fetch) @@ -8842,7 +10236,7 @@ proven statistical guarantees.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0jcb4j637vdlqk2z38jixaqmp6f92h36r17kclv5brjay32911ii")))) + "0kyizacjabsa78p9f7qvj31zirpnsgsr4zpfv1p6lwpcb3biw27p")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8860,7 +10254,7 @@ proven statistical guarantees.") (define-public rust-serde-derive-1.0 (package (name "rust-serde-derive") - (version "1.0.101") + (version "1.0.104") (source (origin (method url-fetch) @@ -8868,7 +10262,7 @@ proven statistical guarantees.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0bn0wz3j48248187mfmypyqnh73mq734snxxhr05vmgcl51kl4sb")))) + "0r7gjlwfry44b4ylz524ynjp9v3qiwdj4c588lh94aas78q9x3qj")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8888,7 +10282,7 @@ proven statistical guarantees.") (define-public rust-serde-json-1.0 (package (name "rust-serde-json") - (version "1.0.41") + (version "1.0.44") (source (origin (method url-fetch) @@ -8896,7 +10290,7 @@ proven statistical guarantees.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1hipk84x40454mf599752mi7l08wb8qakz8vd6d3zp57d0mfnwig")))) + "1mysl675nqhzzkbcrqy4x63cbbsrrx3gcc7k8ydx1gajrkh7bia8")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8910,7 +10304,7 @@ proven statistical guarantees.") ("rust-serde-derive" ,rust-serde-derive-1.0) ("rust-trybuild" ,rust-trybuild-1.0)))) (home-page "https://github.com/serde-rs/json") - (synopsis "A JSON serialization file format") + (synopsis "JSON serialization file format") (description "This package provides a JSON serialization file format.") (license (list license:expat license:asl2.0)))) @@ -8946,7 +10340,7 @@ proven statistical guarantees.") (define-public rust-serde-yaml-0.8 (package (name "rust-serde-yaml") - (version "0.8.9") + (version "0.8.11") (source (origin (method url-fetch) @@ -8955,7 +10349,7 @@ proven statistical guarantees.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "10mmjpnshgrwij01a13679nxy1hnh5yfr0343kh0y9p5j2d8mc1q")))) + "0d9wdjrlx9gxg80kzc6pvdwz5pwhja2n8n0bxja9vv61kzqif6v9")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t @@ -8966,8 +10360,7 @@ proven statistical guarantees.") ("rust-yaml-rust" ,rust-yaml-rust-0.4)) #:cargo-development-inputs (("rust-serde-derive" ,rust-serde-derive-1.0) - ("rust-unindent" ,rust-unindent-0.1) - ("rust-version-sync" ,rust-version-sync-0.8)))) + ("rust-unindent" ,rust-unindent-0.1)))) (home-page "https://github.com/dtolnay/serde-yaml") (synopsis "YAML support for Serde") @@ -9949,10 +11342,10 @@ deleting all contents when it's dropped.") (license (list license:asl2.0 license:expat)))) -(define-public rust-tempfile-3.0 +(define-public rust-tempfile-3.1 (package (name "rust-tempfile") - (version "3.0.8") + (version "3.1.0") (source (origin (method url-fetch) @@ -9960,14 +11353,14 @@ deleting all contents when it's dropped.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1vqk7aq2l04my2r3jiyyxirnf8f90nzcvjasvrajivb85s7p7i3x")))) + "1a9cfdqw70n7bcnkx05aih9xdba8lqazmqlkjpkmn2la6gcj8vks")))) (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs (("rust-cfg-if" ,rust-cfg-if-0.1) ("rust-libc" ,rust-libc-0.2) - ("rust-rand" ,rust-rand-0.6) + ("rust-rand" ,rust-rand-0.7) ("rust-redox-syscall" ,rust-redox-syscall-0.1) ("rust-remove-dir-all" ,rust-remove-dir-all-0.5) ("rust-winapi" ,rust-winapi-0.3)))) @@ -9979,6 +11372,29 @@ directories.") (license (list license:asl2.0 license:expat)))) +(define-public rust-tempfile-3.0 + (package + (inherit rust-tempfile-3.1) + (name "rust-tempfile") + (version "3.0.8") + (source + (origin + (method url-fetch) + (uri (crate-uri "tempfile" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "1vqk7aq2l04my2r3jiyyxirnf8f90nzcvjasvrajivb85s7p7i3x")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-rand" ,rust-rand-0.6) + ("rust-redox-syscall" ,rust-redox-syscall-0.1) + ("rust-remove-dir-all" ,rust-remove-dir-all-0.5) + ("rust-winapi" ,rust-winapi-0.3)))))) + (define-public rust-tendril-0.4 (package (name "rust-tendril") @@ -10023,11 +11439,16 @@ directories.") (base32 "0hkgjrfisj6zjwz525639pmsvzhlc48a0h65nw87qrdp6jihdlgd")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-byteorder" ,rust-byteorder-1.3) + ("rust-dirs" ,rust-dirs-1.0) + ("rust-winapi" ,rust-winapi-0.3)))) (home-page "https://github.com/Stebalien/term") (synopsis "Terminal formatting library") (description "This package provides a terminal formatting library in rust.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -10043,7 +11464,61 @@ directories.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1wbh8ngqkqr3f6wz902yplf60bd5yapnckvrkgmzp5nffi7n8qzs")))))) + "1wbh8ngqkqr3f6wz902yplf60bd5yapnckvrkgmzp5nffi7n8qzs")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-kernel32-sys" ,rust-kernel32-sys-0.2) + ("rust-winapi" ,rust-winapi-0.2)))))) + +(define-public rust-term-size-1.0 + (package + (name "rust-term-size") + (version "1.0.0-beta1") + (source + (origin + (method url-fetch) + (uri (crate-uri "term_size" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "13w9cqjhzh3mmx6zami8lxyf42xx53yy866zxhxqcm71k637v8d8")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-clippy" ,rust-clippy-0.0) + ("rust-kernel32-sys" ,rust-kernel32-sys-0.2) + ("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))) + (home-page "https://github.com/clap-rs/term_size-rs") + (synopsis "Determine terminal sizes and dimensions") + (description + "Functions for determining terminal sizes and dimensions") + (license (list license:asl2.0 license:expat)))) + +(define-public rust-term-size-0.3 + (package + (inherit rust-term-size-1.0) + (name "rust-term-size") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "term_size" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "09wk3173ngmb710qs9rwgibq4w250q8lgnwjvb9cypc1vdk9lnwy")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-clippy" ,rust-clippy-0.0) + ("rust-kernel32-sys" ,rust-kernel32-sys-0.2) + ("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.2)))))) (define-public rust-termcolor-1.0 (package @@ -10211,10 +11686,10 @@ different for every thread.") (license (list license:asl2.0 license:expat)))) -(define-public rust-thread-local-0.3 +(define-public rust-thread-local-1.0 (package (name "rust-thread-local") - (version "0.3.6") + (version "1.0.1") (source (origin (method url-fetch) @@ -10222,15 +11697,34 @@ different for every thread.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "06rzik99p8c5js8238yhc8rk6np543ylb1dy9nrw5v80j0r3xdf6")))) + "054vlrr1vsdy1h4b7n99mr24pnj8928ig9qwzg36wnkld4dns36l")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-lazy-static" ,rust-lazy-static-1.4)))) (home-page "https://github.com/Amanieu/thread_local-rs") (synopsis "Per-object thread-local storage") - (description "Per-object thread-local storage") - (properties '((hidden? . #t))) + (description "Per-object thread-local storage.") (license (list license:asl2.0 license:expat)))) +(define-public rust-thread-local-0.3 + (package + (inherit rust-thread-local-1.0) + (name "rust-thread-local") + (version "0.3.6") + (source + (origin + (method url-fetch) + (uri (crate-uri "thread_local" version)) + (file-name (string-append name "-" version ".crate")) + (sha256 + (base32 + "06rzik99p8c5js8238yhc8rk6np543ylb1dy9nrw5v80j0r3xdf6")))) + (arguments + `(#:skip-build? #t + #:cargo-inputs (("rust-lazy-static" ,rust-lazy-static-1.4)))))) + (define-public rust-threadpool-1.7 (package (name "rust-threadpool") @@ -10256,7 +11750,7 @@ fixed set of worker threads.") (define-public rust-time-0.1 (package (name "rust-time") - (version "0.1.39") + (version "0.1.42") (source (origin (method url-fetch) @@ -10264,14 +11758,23 @@ fixed set of worker threads.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "161hqx0gw722ikydanpahky447vaxqncwmkj66rny282vzqpalx1")))) + "0vsbvsz0ryxb35dy9j4anxvy8zlaplmjmi0a4z4l64bc135cz3fv")))) (build-system cargo-build-system) - (home-page "https://github.com/rust-lang-deprecated/time") + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-redox-syscall" ,rust-redox-syscall-0.1) + ("rust-rustc-serialize" ,rust-rustc-serialize-0.3) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-log" ,rust-log-0.4) + ("rust-winapi" ,rust-winapi-0.3)))) + (home-page "https://github.com/time-rs/time") (synopsis "Simple time handling in Rust") (description "This package provides utilities for working with time-related functions in Rust.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -10385,6 +11888,54 @@ backed applications.") "Utilities for encoding and decoding frames.") (license license:expat))) +(define-public rust-tokio-core-0.1 + (package + (name "rust-tokio-core") + (version "0.1.17") + (source + (origin + (method url-fetch) + (uri (crate-uri "tokio-core" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0wbgg59mxfvrhzv97y56nh3gmnmw3jj9dhgkmvz27410jjxzpvxf")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-bytes" ,rust-bytes-0.4) + ("rust-futures" ,rust-futures-0.1) + ("rust-iovec" ,rust-iovec-0.1) + ("rust-log" ,rust-log-0.4) + ("rust-mio" ,rust-mio-0.6) + ("rust-scoped-tls" ,rust-scoped-tls-0.1) + ("rust-tokio" ,rust-tokio-0.1) + ("rust-tokio-executor" ,rust-tokio-executor-0.1) + ("rust-tokio-io" ,rust-tokio-io-0.1) + ("rust-tokio-reactor" ,rust-tokio-reactor-0.1) + ("rust-tokio-timer" ,rust-tokio-timer-0.2)) + #:cargo-development-inputs + (("rust-env-logger" ,rust-env-logger-0.4) + ("rust-flate2" ,rust-flate2-1.0) + ("rust-futures-cpupool" ,rust-futures-cpupool-0.1) + ("rust-http" ,rust-http-0.1) + ("rust-httparse" ,rust-httparse-1.3) + ("rust-libc" ,rust-libc-0.2) + ("rust-num-cpus" ,rust-num-cpus-1.10) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-serde-json" ,rust-serde-json-1.0) + ("rust-time" ,rust-time-0.1)))) + (home-page "https://tokio.rs") + (synopsis + "Core I/O and event loop primitives for asynchronous I/O in Rust") + (description + "Core I/O and event loop primitives for asynchronous I/O in Rust. +Foundation for the rest of the tokio crates.") + (license (list license:expat license:asl2.0)))) + (define-public rust-tokio-current-thread-0.1 (package (name "rust-tokio-current-thread") @@ -10550,6 +12101,46 @@ futures efficiently") (properties '((hidden? . #t))) (license license:expat))) +(define-public rust-tokio-process-0.2 + (package + (name "rust-tokio-process") + (version "0.2.4") + (source + (origin + (method url-fetch) + (uri (crate-uri "tokio-process" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1s6vi5n5iax4ksx3bzpfdhfbngj49mvq5n40np1d4aycp3qnxgdg")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-crossbeam-queue" ,rust-crossbeam-queue-0.1) + ("rust-futures" ,rust-futures-0.1) + ("rust-lazy-static" ,rust-lazy-static-1.3) + ("rust-libc" ,rust-libc-0.2) + ("rust-log" ,rust-log-0.4) + ("rust-mio" ,rust-mio-0.6) + ("rust-mio-named-pipes" ,rust-mio-named-pipes-0.1) + ("rust-tokio-io" ,rust-tokio-io-0.1) + ("rust-tokio-reactor" ,rust-tokio-reactor-0.1) + ("rust-tokio-signal" ,rust-tokio-signal-0.2) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-failure" ,rust-failure-0.1) + ("rust-log" ,rust-log-0.4) + ("rust-tokio" ,rust-tokio-0.1)))) + (home-page "https://github.com/tokio-rs/tokio") + (synopsis + "Asynchronous process management backed futures") + (description + "An implementation of an asynchronous process management backed +futures.") + (license license:expat))) + (define-public rust-tokio-reactor-0.1 (package (name "rust-tokio-reactor") @@ -10589,6 +12180,42 @@ futures efficiently") "Event loop that drives Tokio I/O resources.") (license license:expat))) +(define-public rust-tokio-signal-0.2 + (package + (name "rust-tokio-signal") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (crate-uri "tokio-signal" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "15l27cvhfcjsahwnm2pgsm0690w0xj1h1sbdl5wy6p50dqkwavfx")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-futures" ,rust-futures-0.1) + ("rust-libc" ,rust-libc-0.2) + ("rust-mio" ,rust-mio-0.6) + ("rust-mio-uds" ,rust-mio-uds-0.6) + ("rust-signal-hook" ,rust-signal-hook-0.1) + ("rust-tokio-executor" ,rust-tokio-executor-0.1) + ("rust-tokio-io" ,rust-tokio-io-0.1) + ("rust-tokio-reactor" ,rust-tokio-reactor-0.1) + ("rust-winapi" ,rust-winapi-0.3)) + #:cargo-development-inputs + (("rust-tokio" ,rust-tokio-0.1)))) + (home-page "https://github.com/tokio-rs/tokio") + (synopsis + "Asynchronous Unix signal handling backed futures") + (description + "An implementation of an asynchronous Unix signal handling backed +futures.") + (license license:expat))) + (define-public rust-tokio-sync-0.1 (package (name "rust-tokio-sync") @@ -10809,7 +12436,7 @@ pool.") (define-public rust-toml-0.5 (package (name "rust-toml") - (version "0.5.3") + (version "0.5.6") (source (origin (method url-fetch) @@ -10817,8 +12444,16 @@ pool.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "093p48vpqm4bb8q3514xsij0dkljxlr3jp9ypxr4p48xjisvxan7")))) + "06n7j8z63hj6g0kj2x6sqwxnm4q3s0q5d873bdk41vqy1cb2vjgz")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-indexmap" ,rust-indexmap-1.0) + ("rust-serde" ,rust-serde-1.0)) + #:cargo-development-inputs + (("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-serde-json" ,rust-serde-json-1.0)))) (home-page "https://github.com/alexcrichton/toml-rs") (synopsis "Rust encoder and decoder of TOML-formatted files and streams") (description @@ -10826,7 +12461,6 @@ pool.") files and streams. Provides implementations of the standard Serialize/Deserialize traits for TOML data to facilitate deserializing and serializing Rust structures.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -11206,7 +12840,7 @@ described in Unicode Standard Annex #15.") (arguments `(#:skip-build? #t #:cargo-development-inputs - (("rust-quickcheck" ,rust-quickcheck-0.8)))) + (("rust-quickcheck" ,rust-quickcheck-0.7)))) (home-page "https://github.com/unicode-rs/unicode-segmentation") (synopsis "Grapheme Cluster, Word and Sentence boundaries") (description @@ -11354,8 +12988,40 @@ untrusted inputs in Rust.") (properties '((hidden? . #t))) (license license:isc))) +(define-public rust-url-2.1 + (package + (name "rust-url") + (version "2.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "url" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jw7cw8br4xvjb92ddrrh1r7jvqhyhiknnnfpgq9np63fs24m7c2")))) + (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-idna" ,rust-idna-0.2) + ("rust-matches" ,rust-matches-0.1) + ("rust-percent-encoding" ,rust-percent-encoding-2.1) + ("rust-serde" ,rust-serde-1.0)) + #:cargo-development-inputs + (("rust-bencher" ,rust-bencher-0.1) + ("rust-rustc-test" ,rust-rustc-test-0.3) + ("rust-serde-json" ,rust-serde-json-1.0)))) + (home-page "https://github.com/servo/rust-url") + (synopsis "URL library for Rust, based on the WHATWG URL Standard") + (description + "URL library for Rust, based on the WHATWG URL Standard.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-url-1.7 (package + (inherit rust-url-2.1) (name "rust-url") (version "1.7.2") (source @@ -11367,7 +13033,6 @@ untrusted inputs in Rust.") (sha256 (base32 "0nim1c90mxpi9wgdw2xh8dqd72vlklwlzam436akcrhjac6pqknx")))) - (build-system cargo-build-system) (arguments `(#:skip-build? #t #:cargo-inputs @@ -11382,12 +13047,7 @@ untrusted inputs in Rust.") (("rust-bencher" ,rust-bencher-0.1) ("rust-rustc-serialize" ,rust-rustc-serialize-0.3) ("rust-rustc-test" ,rust-rustc-test-0.3) - ("rust-serde-json" ,rust-serde-json-1.0)))) - (home-page "https://github.com/servo/rust-url") - (synopsis "URL library for Rust, based on the WHATWG URL Standard") - (description - "URL library for Rust, based on the WHATWG URL Standard.") - (license (list license:asl2.0 license:expat)))) + ("rust-serde-json" ,rust-serde-json-1.0)))))) (define-public rust-utf-8-0.7 (package @@ -11971,7 +13631,7 @@ UTF-32 types are provided, including support for malformed encoding.") (("winapi-i686-pc-windows-gnu" ,rust-winapi-i686-pc-windows-gnu-0.4) ("winapi-x86-64-pc-windows-gnu" ,rust-winapi-x86-64-pc-windows-gnu-0.4)))) (home-page "https://github.com/retep998/winapi-rs") - (synopsis "Raw FFI bindings for all of Windows API.") + (synopsis "Raw FFI bindings for all of Windows API") (description "Raw FFI bindings for all of Windows API.") (license (list license:asl2.0 @@ -12167,12 +13827,17 @@ color in a Windows console.") (base32 "0k556fb6f5jc907975j9c8iynl2fqz3rf0w6fiig83i4yi0kfk14")))) (build-system cargo-build-system) + (arguments + `(#:skip-build? #t + #:cargo-inputs + (("rust-libc" ,rust-libc-0.2)) + #:cargo-development-inputs + (("rust-tempfile" ,rust-tempfile-3.0)))) (home-page "https://github.com/Stebalien/xattr") (synopsis "Unix extended filesystem attributes") (description "This package provide a small library for setting, getting, and listing extended attributes.") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) @@ -12189,12 +13854,12 @@ extended attributes.") (base32 "0mws8a0fr3cqk5nh7aq9lmkmhzghvasqy4mhw6nnza06l4d6i2fh")))) (build-system cargo-build-system) + (arguments '(#:skip-build? #t)) (home-page "https://github.com/whitequark/rust-xdg") (synopsis "Store and retrieve files according to XDG specification") (description "This package provides a library for storing and retrieving files according to XDG Base Directory specification") - (properties '((hidden? . #t))) (license (list license:asl2.0 license:expat)))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 1c6e759c83..3eb2466e3c 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -70,7 +70,6 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) - #:use-module (guix build utils) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26)) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 283c8920d9..d06d586f70 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -23,7 +23,7 @@ ;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017, 2018 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> @@ -38,6 +38,7 @@ ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -126,7 +127,6 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system scons) #:use-module (guix build-system trivial) - #:use-module ((guix build utils) #:hide (which)) #:use-module (guix utils) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) @@ -919,6 +919,31 @@ Language.") as a drop-in replacement of MySQL.") (license license:gpl2))) +(define-public mariadb-connector-c + (package + (name "mariadb-connector-c") + (version "3.1.6") + (source (origin + (method url-fetch) + (uri (string-append + "https://downloads.mariadb.org/f/connector-c-" + version "/mariadb-connector-c-" + version "-src.tar.gz")) + (sha256 + (base32 + "083724f5daaqyzdcx508caz6fk2hs89jff85zg28ih43vxkvnrnj")))) + (inputs + `(("openssl" ,openssl))) + (build-system cmake-build-system) + (arguments + ;; No tests. + '(#:tests? #f)) + (home-page "https://mariadb.com/kb/en/mariadb-connector-c/") + (synopsis "Client library to connect to MySQL or MariaDB") + (description "The MariaDB Connector/C is used to connect applications +developed in C/C++ to MariaDB and MySQL databases.") + (license license:lgpl2.1+))) + ;; Don't forget to update the other postgresql packages when upgrading this one. (define-public postgresql (package @@ -970,27 +995,27 @@ pictures, sounds, or video.") (package (inherit postgresql) (name "postgresql") - (version "11.5") + (version "11.6") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "106ikalvrilihlvhq7xj7snq98hgbgq6qsgjrd252wgw1c327pvz")))))) + "0w1iq488kpzfgfnlw4k32lz5by695mpnkq461jrgsr99z5zlz4j9")))))) (define-public postgresql-9.6 (package (inherit postgresql) (name "postgresql") - (version "9.6.15") + (version "9.6.16") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "02hp69h2p02asfblkaahblzdz2zmawd2r11h6237y5j7yadgxn9w")))))) + "1rr2dgv4ams8r2lp13w85c77rkmzpb88fjlc28mvlw6zq2fblv2w")))))) (define-public python-pymysql (package @@ -1836,14 +1861,14 @@ similar to BerkeleyDB, LevelDB, etc.") (define-public redis (package (name "redis") - (version "4.0.10") + (version "5.0.7") (source (origin (method url-fetch) (uri (string-append "http://download.redis.io/releases/redis-" version".tar.gz")) (sha256 (base32 - "194cydhv3hf4v95ifvjvsqrs4jn3ffrkg5lvxj5d3y04lwsp9dhx")))) + "0ax8sf3vw0yadr41kzc04917scrg5wir1d94zmbz00b8pzm79nv1")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; tests related to master/slave and replication fail @@ -2043,7 +2068,7 @@ database.") (define-public lmdb (package (name "lmdb") - (version "0.9.23") + (version "0.9.24") (source (origin (method git-fetch) @@ -2052,7 +2077,7 @@ database.") (commit (string-append "LMDB_" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0ag7l5180ajvm73y59m7sn3p52xm8m972d08cshxhpwgwa4v35k6")))) + (base32 "088q6m8fvr12w43s461h7cvpg5hj8csaqj6n9pci150dz7bk5lxm")))) (build-system gnu-build-system) (arguments `(#:test-target "test" diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index 1aa54d9167..af6cef71d3 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> @@ -283,8 +283,7 @@ and a Python library.") (add-after 'install 'emacs-install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (dest (string-append out "/share/emacs/site-lisp/guix.d/" - ,name "-" ,version)) + (dest (string-append out "/share/emacs/site-lisp")) (emacs (string-append (assoc-ref inputs "emacs") "/bin/emacs"))) (install-file "google-translate-mode.el" dest) (emacs-generate-autoloads ,name dest))))) diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index a362285051..6be2b7f9fc 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -67,7 +67,7 @@ #:use-module (ice-9 match)) (define-public diffoscope - (let ((version "134")) + (let ((version "135")) (package (name "diffoscope") (version version) @@ -79,7 +79,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "04078cn3lazcrpgzzzy1s9721hprkylrvfa58izm4dcvgd7a593z")))) + "0rkpvajkp3qryi6dxkrh8aq5xg79aybnw8iy73wsblcnfq6yhba7")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index d2e1afdbce..8a17e8ddbb 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -582,12 +582,12 @@ automatically finding out which program to use for what file type.") (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) - ("util-linux" ,util-linux) ("swig" ,swig) ("python" ,python-3))) ; used to generate the Python bindings (inputs `(("cryptsetup" ,cryptsetup) ("nss" ,nss) + ("libblkid" ,util-linux) ("lvm2" ,lvm2) ; for "-ldevmapper" ("glib" ,glib) ("gpgme" ,gpgme))) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 7e7bc5d002..f0551d8269 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -36,7 +36,8 @@ #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages sphinx) - #:use-module (gnu packages time)) + #:use-module (gnu packages time) + #:use-module (gnu packages xml)) (define-public python-django (package diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 60e392de0d..e5148d5bc9 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2016 ng0 <ng0@n0.is> -;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net> @@ -390,14 +390,14 @@ to result in system-wide compromise.") (define-public unbound (package (name "unbound") - (version "1.9.4") + (version "1.9.5") (source (origin (method url-fetch) (uri (string-append "https://www.unbound.net/downloads/unbound-" version ".tar.gz")) (sha256 - (base32 "1c2bjm13x8bkw0ds1mhn9ivd2gzmfrb0x5y76bkz09a04bxjagix")))) + (base32 "0myv8l886gmlh9nh4j3q5549idxnl51hf9cw20yxfqbwd47l13ca")))) (build-system gnu-build-system) (outputs '("out" "python")) (native-inputs diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index d114e24ee7..098c2b4dfb 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -40,7 +40,7 @@ (version "4.5") (source (origin (method url-fetch) - (uri (string-append "http://www.docbook.org/xml/" version + (uri (string-append "https://www.docbook.org/xml/" version "/docbook-xml-" version ".zip")) (sha256 (base32 @@ -66,7 +66,7 @@ #t)) #:modules ((guix build utils)))) (native-inputs `(("unzip" ,unzip))) - (home-page "http://docbook.org") + (home-page "https://docbook.org") (synopsis "DocBook XML DTDs for document authoring") (description "DocBook is general purpose XML and SGML document type particularly well @@ -79,7 +79,7 @@ by no means limited to these applications.) This package provides XML DTDs.") (version "4.4") (source (origin (method url-fetch) - (uri (string-append "http://www.docbook.org/xml/" version + (uri (string-append "https://www.docbook.org/xml/" version "/docbook-xml-" version ".zip")) (sha256 (base32 @@ -90,7 +90,7 @@ by no means limited to these applications.) This package provides XML DTDs.") (version "4.3") (source (origin (method url-fetch) - (uri (string-append "http://www.docbook.org/xml/" version + (uri (string-append "https://www.docbook.org/xml/" version "/docbook-xml-" version ".zip")) (sha256 (base32 @@ -101,7 +101,7 @@ by no means limited to these applications.) This package provides XML DTDs.") (version "4.2") (source (origin (method url-fetch) - (uri (string-append "http://www.docbook.org/xml/" version + (uri (string-append "https://www.docbook.org/xml/" version "/docbook-xml-" version ".zip")) (sha256 (base32 @@ -112,7 +112,7 @@ by no means limited to these applications.) This package provides XML DTDs.") (version "4.1.2") (source (origin (method url-fetch) - (uri (string-append "http://www.docbook.org/xml/" version + (uri (string-append "https://www.docbook.org/xml/" version "/docbkx412.zip")) (sha256 (base32 @@ -174,7 +174,7 @@ by no means limited to these applications.) This package provides XML DTDs.") (native-inputs `(("bzip2" ,bzip2) ("xz" ,xz) ;needed for repacked tarballs ("tar" ,tar))) - (home-page "http://docbook.org") + (home-page "https://docbook.org") (synopsis "DocBook XSL style sheets for document authoring") (description "This package provides XSL style sheets for DocBook.") diff --git a/gnu/packages/drones.scm b/gnu/packages/drones.scm index 18b2621e4a..1bc096293e 100644 --- a/gnu/packages/drones.scm +++ b/gnu/packages/drones.scm @@ -23,6 +23,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages xml) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix git-download) diff --git a/gnu/packages/easyrpg.scm b/gnu/packages/easyrpg.scm index 046b9dfb92..05cdc42449 100644 --- a/gnu/packages/easyrpg.scm +++ b/gnu/packages/easyrpg.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org> -;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -39,7 +39,7 @@ (define-public liblcf (package (name "liblcf") - (version "0.6.0") + (version "0.6.1") (source (origin (method url-fetch) (uri (string-append @@ -47,7 +47,7 @@ "/liblcf-" version ".tar.gz")) (sha256 (base32 - "0dcw9l800314f5c29mqrcg64rkcb6cwqjfnpvwsmvc2l2q5hwlag")))) + "1qz387r4shbx48r3z7k8llkzz4b039zmak98wxpiwn6a23cssdn5")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -75,7 +75,7 @@ It can read and write LCF and XML files.") (define-public easyrpg-player (package (name "easyrpg-player") - (version "0.6.0") + (version "0.6.1") (source (origin (method url-fetch) (uri (string-append @@ -83,7 +83,7 @@ It can read and write LCF and XML files.") "/easyrpg-player-" version ".tar.gz")) (sha256 (base32 - "0zdzp64sshjdl943jklsvzwzzja1fnapslvbd7xss51ym9ra4r6k")))) + "1x81d1952w6vb939155bvs5p3shgsncxy305770izpp4pva1a8z0")))) (build-system gnu-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index f91088351f..583faa6372 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -51,7 +51,7 @@ ;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr> ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk> -;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> +;;; Copyright © 2019 Amin Bandali <mab@gnu.org> ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2019 Stephen Webber <montokapro@gmail.com> @@ -969,7 +969,7 @@ in certain cases. It also enables recursion for anonymous functions.") (base32 "1km4x92pii8c4bcimks4xzhmwpypdf183z0zh7raj062jz4jb74r")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/xr.html") + (home-page "https://elpa.gnu.org/packages/xr.html") (synopsis "Convert string regexp to rx notation") (description "This is an inverse companion to the @code{rx} package for translating @@ -1243,7 +1243,7 @@ or unexpected behavior inside an elisp configuration file (typically "wget" (string-append (assoc-ref outputs "out") "/share/emacs/site-lisp/")) #t))))) - (home-page "http://www.emacswiki.org/emacs/EmacsWget") + (home-page "https://www.emacswiki.org/emacs/EmacsWget") (synopsis "Simple file downloader for Emacs based on wget") (description "Emacs-wget is an emacs interface for the wget file downloader.") @@ -1787,7 +1787,7 @@ environment set through Direnv.") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/ggtags-" + (uri (string-append "https://elpa.gnu.org/packages/ggtags-" version ".el")) (sha256 (base32 @@ -5382,7 +5382,7 @@ line program.") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/rudel-" + (uri (string-append "https://elpa.gnu.org/packages/rudel-" version ".tar")) (sha256 (base32 @@ -5669,7 +5669,7 @@ highlighted. Pressing that character will switch to that window.") (sha256 (base32 "0wr3w2id95wx2rma8n1ifjrv9rx37ly26ijc5zi58id0yrip3hnc")))) (build-system emacs-build-system) - (home-page "http://www.emacswiki.org/emacs/Iedit") + (home-page "https://www.emacswiki.org/emacs/Iedit") (synopsis "Edit multiple regions in the same way simultaneously") (description "This package is an Emacs minor mode and allows you to edit one @@ -7998,7 +7998,7 @@ distribution, primarily targeting Clojure users") (base32 "0zbqkk540rax32s8szp5zgz3a02zw88fc1dmjmyw6h3ls04m91kl")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/orgalist.html") + (home-page "https://elpa.gnu.org/packages/orgalist.html") (synopsis "Manage Org-like lists in non-Org buffers") (description "Write Org mode's plain lists in non-Org buffers. More specifically, Orgalist supports the syntax of Org mode for numbered, @@ -9018,13 +9018,13 @@ consistent and well-integrated user interface.") (source (origin (method url-fetch) (uri (string-append - "http://elpa.gnu.org/packages/adaptive-wrap-" + "https://elpa.gnu.org/packages/adaptive-wrap-" version ".el")) (sha256 (base32 "0qi7gjprcpywk2daivnlavwsx53hl5wcqvpxbwinvigg42vxh3ll")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/adaptive-wrap.html") + (home-page "https://elpa.gnu.org/packages/adaptive-wrap.html") (synopsis "Smart line-wrapping with wrap-prefix") (description "This Emacs package provides the @code{adaptive-wrap-prefix-mode} @@ -9782,7 +9782,7 @@ with gnuplot.") (source (origin (method url-fetch) - (uri "http://www.emacswiki.org/emacs/download/transpose-frame.el") + (uri "https://www.emacswiki.org/emacs/download/transpose-frame.el") (file-name (string-append "transpose-frame-" version ".el")) (sha256 (base32 @@ -10854,7 +10854,7 @@ database of references on life sciences.") #:test-command '("emacs" "--batch" "-l" "websocket-test.el" "-f" "ert-run-tests-batch-and-exit"))) - (home-page "http://elpa.gnu.org/packages/websocket.html") + (home-page "https://elpa.gnu.org/packages/websocket.html") (synopsis "Emacs WebSocket client and server") (description "This is an Elisp library for WebSocket clients to talk to WebSocket servers, and for WebSocket servers to accept connections from @@ -10876,7 +10876,7 @@ itself.") (base32 "0ydkc9jazsnbbvfhd47mql52y7k06n3z7r0naqxkwb99j9blqsmp")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/oauth2.html") + (home-page "https://elpa.gnu.org/packages/oauth2.html") (synopsis "OAuth 2.0 authorization protocol implementation") (description "This package provides an Elisp implementation of the OAuth 2.0 draft. @@ -13004,12 +13004,12 @@ timestamps and date-time format strings library for Emacs.") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/seq-" version ".tar")) + (uri (string-append "https://elpa.gnu.org/packages/seq-" version ".tar")) (sha256 (base32 "0vrpx6nnyjb0gsypknzagimlhvcvi5y1rcdkpxyqr42415zr8d0n")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/seq.html") + (home-page "https://elpa.gnu.org/packages/seq.html") (synopsis "Sequence manipulation functions") (description "Sequence-manipulation functions that complement basic functions provided by @file{subr.el}.") @@ -14574,7 +14574,7 @@ using user-provided rules.") (origin (method url-fetch) (uri (string-append - "http://elpa.gnu.org/packages/on-screen-" version ".el")) + "https://elpa.gnu.org/packages/on-screen-" version ".el")) (file-name (string-append name "-" version ".el")) (sha256 (base32 "0ga4hw23ki583li2z2hr7l6hk1nc2kdg4afndg06cm9jn158wza7")))) @@ -14677,12 +14677,12 @@ modes of SLIME.") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/sml-mode-" + (uri (string-append "https://elpa.gnu.org/packages/sml-mode-" version ".el")) (sha256 (base32 "1bdg9ywpvj85hxqah9w1raxlcrhkyx67nw22jwd1bd5j0fhmgqij")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/sml-mode.html") + (home-page "https://elpa.gnu.org/packages/sml-mode.html") (synopsis "Major mode for editing (Standard) ML") (description "SML-MODE is a major Emacs mode for editing Standard ML. It provides syntax highlighting and automatic indentation and @@ -19395,7 +19395,7 @@ between \"frame-width\" and \"frame-height\", between \"public\", (base32 "039ffvp7c810mjyargmgw1i87g0z8qs8qicq826sd9aiz9hprfaz")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/ediprolog.html") + (home-page "https://elpa.gnu.org/packages/ediprolog.html") (synopsis "Emacs Does Interactive Prolog") (description "This package provides a major mode that let the user interact with SWI-Prolog in all buffers. For instance, one can consult Prolog @@ -20422,8 +20422,8 @@ fish-completion. It can be used in both Eshell and M-x shell.") ;; This package has versions newer than indicated on MELPA. ;; Get the current version from `telega-version` in telega.el. ;; or by running M-x telega-version. - (let ((commit "4497a3c19d9806eb9edfe13d326d6d9cbb895f64") - (revision "3") + (let ((commit "69565cc4de72e28148c8041de8930a122a39b800") + (revision "4") (version "0.5.4")) (package (name "emacs-telega") @@ -20436,7 +20436,7 @@ fish-completion. It can be used in both Eshell and M-x shell.") (commit commit))) (sha256 (base32 - "1g0gbbgs8rbcip6kqjxdmnsjlq0ixgknb0qcda7siaha9gd7fjh2")) + "0blvj07f1sbdmp68qwlwgnhnv42ib0mjai5ndf8scbi12drn4rmk")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments @@ -20523,6 +20523,7 @@ fish-completion. It can be used in both Eshell and M-x shell.") `(("ffmpeg" ,ffmpeg))) ; mp4/gif support. (propagated-inputs `(("emacs-visual-fill-column" ,emacs-visual-fill-column) + ("emacs-company" ,emacs-company) ("libwebp" ,libwebp))) ; sticker support. (native-inputs `(("tdlib" ,tdlib) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index ebe47d7186..b26c928e87 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2019 Jesse John Gildersleve <jessejohngildersleve@zohomail.eu> ;;; Copyright © 2019 Valentin Ignatev <valentignatev@gmail.com> ;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at> -;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> +;;; Copyright © 2019 Amin Bandali <mab@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index 67c6fdafdc..1f73e78fe0 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -32,7 +32,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system trivial) - #:use-module (guix build utils) + #:use-module ((guix build utils) #:select (alist-replace)) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module ((gnu packages base) #:prefix base:) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index ffcdc65265..f805c8b969 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> -;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 David Wilson <david@daviwil.com> @@ -1194,15 +1194,14 @@ multi-system game/emulator system.") (define-public scummvm (package (name "scummvm") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) (uri (string-append "http://www.scummvm.org/frs/scummvm/" version "/scummvm-" version ".tar.xz")) (sha256 - (base32 - "09zp2mxmida6sz5vrr5bzyv8c3yjvq2xqmpmcllbadhmd9cwcl3b")))) + (base32 "1a6waf1ybp91nwva8g650cljlfb1di4l0jv13vg6yfgkas9pclsp")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;require "git" @@ -1213,7 +1212,7 @@ multi-system game/emulator system.") ;; XXX: The following works around a build failure introduced when ;; Fluidsynth was updated to version 2.1. It has been applied ;; upstream as 68758a879e0c8ecc0d40962516d4e808aa4e15e5 and can be - ;; removed once ScummVM 2.1.1+ is out. + ;; removed once this commit makes it into a release. (lambda _ (substitute* "audio/softsynth/fluidsynth.cpp" (("#include <fluidsynth.h>") "") @@ -1425,7 +1424,7 @@ play them on systems for which they were never designed!") ("flac" ,flac) ("fontconfig" ,fontconfig) ("glm" ,glm) - ("libjpeg" ,libjpeg-8) ;jpeg_read_header argument error in libjpeg-9 + ("libjpeg" ,libjpeg-turbo) ("libxi" ,libxi) ("libxinerama" ,libxinerama) ("lua" ,lua) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 19f990848c..378491227c 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net> ;;; Copyright © 2019 Sebastian Schott <sschott@mailbox.org> +;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,11 +52,14 @@ #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages crypto) + #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) #:use-module (gnu packages dns) #:use-module (gnu packages emacs) #:use-module (gnu packages dbm) + #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) @@ -67,9 +71,11 @@ #:use-module (gnu packages libunwind) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages man) #:use-module (gnu packages multiprecision) #:use-module (gnu packages networking) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages popt) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) @@ -1202,3 +1208,96 @@ offers confimations after less than 5 seconds and have significantly lower fees that BTC. Bitcoin ABC is the reference implementation of the Bitcoin Cash protocol. This package provides the Bitcoin Cash command line client and a client based on Qt. This is a fork of Bitcoin Core."))) + +(define-public libofx + (package + (name "libofx") + (version "0.9.15") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libofx/libofx") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jx56ma351p8af8dvavygjwf6ipa7qbgq7bpdsymwj27apdnixfy")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags + (list (string-append "--with-opensp-includes=" + (assoc-ref %build-inputs "opensp") + "/include/OpenSP")))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gengetopt" ,gengetopt) + ("help2man" ,help2man) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("curl" ,curl) + ("libxml++-2" ,libxml++-2) + ("opensp" ,opensp))) + (home-page "http://libofx.sourceforge.net/") + (synopsis "Library supporting the Open Financial Exchange format") + (description + "The LibOFX library is an API designed to allow applications to very easily +support OFX command responses, usually provided by financial institutions. The +following three utilities are included with the library: +@enumerate +@item @code{ofxdump} +@item @code{ofx2qif} +@item @code{ofxconnect} +@end enumerate") + (license license:gpl2+))) + +(define-public opensp + (package + (name "opensp") + (version "1.5.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/openjade/opensp/" + version "/OpenSP-" version ".tar.gz")) + (sha256 + (base32 + "1khpasr6l0a8nfz6kcf3s81vgdab8fm2dj291n5r2s53k228kx2p")))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gettext-minimal))) + (inputs + `(("docbook-xml" ,docbook-xml-4.1.2) + ("docbook-xsl" ,docbook-xsl) + ("xmlto" ,xmlto))) + (arguments + `(;; TODO: Fix and enable tests. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((xmldoc (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook")) + (xsldoc (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)))) + (substitute* (find-files "docsrc" "\\.xml$") + (("/usr/share/sgml/docbook/xml-dtd-4.1.2") xmldoc) + (("http://.*/docbookx\\.dtd") + (string-append xmldoc "/docbookx.dtd"))) + ;; Directly pass the path to the stylesheet to xmlto. + (substitute* "docsrc/Makefile.in" + (("\\$\\(XMLTO\\)") + (string-append "$(XMLTO) -x " xsldoc + "/manpages/docbook.xsl"))) + #t)))))) + (home-page "http://openjade.sourceforge.net/") + (synopsis "Suite of SGML/XML processing tools") + (description "OpenSP is an object-oriented toolkit for SGML parsing and +entity management.") + (license + ;; expat license with added clause regarding advertising + (license:non-copyleft + "file://COPYING" + "See COPYING in the distribution.")))) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 4bcba89e38..1cb8b1c053 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -511,7 +511,7 @@ variants.") (base32 "1mkmxq8g2hjcglb3zajfqj20r4r88l78ymsp2xyl5yav8w3f7dz4")))) (build-system font-build-system) - (home-page "https://wenq.org/wqy2/") + (home-page "http://wenq.org/wqy2/") (synopsis "CJK font") (description "WenQuanYi Zen Hei is a Hei-Ti style (sans-serif type) Chinese outline diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index 556eae3624..988129f373 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> +;;; Copyright © 2019 Amin Bandali <mab@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 7aef6b09d2..ee8dea23b5 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2017, 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> -;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at> +;;; Copyright © 2019, 2020 Leo Prikler <leo.prikler@student.tugraz.at> ;;; Copyright © 2019 Jethro Cao <jethrocao@gmail.com> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; @@ -1086,39 +1086,31 @@ developed mainly for Ren'py.") (setenv "RENPY_DEPS_INSTALL" (string-join (map cdr inputs) ":")) #t)) (replace 'build - (lambda args - (apply - (lambda* (build-root #:key inputs outputs #:allow-other-keys) - ;; The "module" subdirectory contains a python (really cython) - ;; project, which is built using a script, that is thankfully - ;; named "setup.py". - (chdir "module") - (apply (assoc-ref %standard-phases 'build) args) - ;; the above causes renpy.__init__ to be compiled but does not - ;; compile anything else, hence we do that here - (chdir build-root) - (delete-file "renpy/__init__.pyc") - (invoke "python" "-m" "compileall" "renpy")) - (getcwd) args) + (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) + ;; The "module" subdirectory contains a python (really cython) + ;; project, which is built using a script, that is thankfully + ;; named "setup.py". + (with-directory-excursion "module" + (apply (assoc-ref %standard-phases 'build) args)) + ;; the above causes renpy.__init__ to be compiled but does not + ;; compile anything else, hence we do that here + (delete-file "renpy/__init__.pyc") + (invoke "python" "-m" "compileall" "renpy") #t)) (replace 'install - (lambda args - (apply - (lambda* (build-root #:key inputs outputs #:allow-other-keys) - ;; Again, we have to wrap the module installation. - ;; Additionally, we want to install the python code - ;; (both source and compiled) in the same directory. - (let* ((out (assoc-ref outputs "out")) - (site (string-append "/lib/python" - ,(version-major+minor - (package-version python-2)) - "/site-packages"))) - (chdir "module") - (apply (assoc-ref %standard-phases 'install) args) - (chdir build-root) - (copy-recursively "renpy" - (string-append out site "/renpy")))) - (getcwd) args) + (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) + ;; Again, we have to wrap the module installation. + ;; Additionally, we want to install the python code + ;; (both source and compiled) in the same directory. + (let* ((out (assoc-ref outputs "out")) + (site (string-append "/lib/python" + ,(version-major+minor + (package-version python-2)) + "/site-packages"))) + (with-directory-excursion "module" + (apply (assoc-ref %standard-phases 'install) args)) + (copy-recursively "renpy" + (string-append out site "/renpy"))) #t))))) (inputs `(("ffmpeg" ,ffmpeg) @@ -2029,3 +2021,31 @@ environments and virtual creatures. It is currently used in many computer games, 3D authoring tools and simulation tools.") ;; Software is dual-licensed. (license (list license:lgpl2.1+ license:expat)))) + +(define-public chipmunk + (package + (name "chipmunk") + (version "7.0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/slembcke/Chipmunk2D.git") + (commit (string-append "Chipmunk-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1qmkn01g06p3rnhmbyffmjns6wj5vhgf9cscigk3wzxcpwv1hyxb")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;no test + #:configure-flags '("-DBUILD_STATIC=OFF" + "-DBUILD_DEMOS=OFF"))) + (inputs + `(("freeglut" ,freeglut) + ("libxmu" ,libxmu) + ("libxrandr" ,libxrandr))) + (home-page "https://chipmunk-physics.net/") + (synopsis "Fast and lightweight 2D game physics library") + (description "Chipmunk is a simple, lightweight, fast and portable 2D +rigid body physics library written in C.") + (license license:expat))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 1f6064d082..f348cafb67 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -30,7 +30,7 @@ ;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017 Roel Janssen <roel@gnu.org> -;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 okapi <okapi@firemail.cc> ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018 Madalin Ionel-Patrascu <madalinionel.patrascu@mdc-berlin.de> @@ -42,8 +42,8 @@ ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com> ;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl> -;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> -;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si> +;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw> ;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; @@ -462,6 +462,62 @@ want what you have.") (define-public cataclysm-dark-days-ahead (deprecated-package "cataclysm-dark-days-ahead" cataclysm-dda)) +(define-public corsix-th + (package + (name "corsix-th") + (version "0.63") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CorsixTH/CorsixTH.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1rkyk8g55xny276s0hr5k8mq6f4nzz56d3k2mp09dzfymrqb8hgi")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-binary + (lambda _ + ;; Set Lua module paths and default MIDI soundfont on startup. + (let* ((out (assoc-ref %outputs "out")) + (fluid (assoc-ref %build-inputs "fluid-3")) + (lua-version ,(version-major+minor (package-version lua))) + (lua-cpath + (map (lambda (lib) + (string-append + (assoc-ref %build-inputs (string-append "lua-" lib)) + "/lib/lua/" lua-version "/?.so")) + '("filesystem" "lpeg")))) + (wrap-program (string-append out "/bin/corsix-th") + `("LUA_CPATH" ";" = ,lua-cpath) + `("SDL_SOUNDFONTS" ":" suffix + (,(string-append fluid "/share/soundfonts/FluidR3Mono_GM.sf3"))))) + #t))) + #:tests? #f)) ; TODO need busted package to run tests + ;; Omit Lua-Socket dependency to disable automatic updates. + (inputs + `(("ffmpeg" ,ffmpeg) + ("fluid-3" ,fluid-3) + ("freetype" ,freetype) + ("lua" ,lua) + ("lua-filesystem" ,lua-filesystem) + ("lua-lpeg" ,lua-lpeg) + ("sdl2" ,sdl2) + ("sdl2-mixer" ,sdl2-mixer))) + (home-page "https://corsixth.com") + (synopsis "Implementation of the @i{Theme Hospital} game engine") + (description + "This package provides a reimplementation of the 1997 Bullfrog business +simulation game @i{Theme Hospital}. As well as faithfully recreating the +original engine, CorsixTH adds support for high resolutions, custom levels and +more. This package does @emph{not} provide the game assets.") + (license (list + license:expat ; main license + license:bsd-3)))) ; CorsixTH/Src/random.c + (define-public cowsay (package (name "cowsay") @@ -654,7 +710,7 @@ real-time combat.") (define-public golly (package (name "golly") - (version "3.2") + (version "3.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/golly/golly/golly-" @@ -662,7 +718,7 @@ real-time combat.") "-src.tar.gz")) (sha256 (base32 - "0cg9mbwmf4q6qxhqlnzrxh9y047banxdb8pd3hgj3smmja2zf0jd")))) + "1j3ksnar4rdam4xiyspgyrs1pifbvxfxkrn65brkwxpx39mpgzc8")))) (build-system gnu-build-system) (arguments '(#:make-flags (list "CC=gcc" @@ -739,6 +795,34 @@ automata. The following features are available: @end enumerate") (license license:gpl2+))) +(define-public julius + (package + (name "julius") + (version "1.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bvschaik/julius.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0kgyzfjii4dhpy2h05977alwdmxyxb4jxznnrhlgb21m0ybncmvp")))) + (build-system cmake-build-system) + (inputs + `(("sdl2" ,sdl2) + ("sdl2-mixer" ,sdl2-mixer))) + (home-page "https://github.com/bvschaik/julius") + (synopsis "Re-implementation of Caesar III game engine") + (description + "Engine for Caesar III, a city-building real-time strategy game. +Julius includes some UI enhancements while preserving the logic (including +bugs) of the original game, so that saved games are compatible. This package +does not include game data.") + (license (list license:agpl3 + license:expat ; ext/dirent + license:zlib)))) ; ext/tinyfiledialogs + (define-public meandmyshadow (package (name "meandmyshadow") @@ -822,8 +906,8 @@ destroying an ancient book using a special wand.") (source (origin (method url-fetch) - (uri (string-append "http://files.gnubg.org/media/sources/gnubg-release-" - version "-sources." "tar.gz")) + (uri (string-append "mirror://gnu/gnubg/gnubg-release-" + version "-sources.tar.gz")) (sha256 (base32 "11xwhcli1h12k6rnhhyq4jphzrhfik7i8ah3k32pqw803460n6yf")))) @@ -838,7 +922,27 @@ destroying an ancient book using a special wand.") ("libcanberra" ,libcanberra))) (native-inputs `(("python-2" ,python-2) ("pkg-config" ,pkg-config))) - (home-page "http://gnubg.org") + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (apps (string-append out "/share/applications"))) + (mkdir-p apps) + (with-output-to-file (string-append apps "/gnubg.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=GNU Backgammon~@ + Exec=~a/bin/gnubg -w~@ + Icon=gnubg~@ + Categories=Game;~@ + Terminal=false~@ + Type=Application~%" + out)))) + #t))))) + (home-page "https://www.gnu.org/software/gnubg/") (synopsis "Backgammon game") (description "The GNU backgammon application (also known as \"gnubg\") can be used for playing, analyzing and teaching the game. It has an advanced @@ -1527,16 +1631,21 @@ a C library, so they can easily be integrated into other programs.") (define-public cmatrix (package (name "cmatrix") - (version "1.2a") + (version "2.0") (source (origin - (method url-fetch) - (uri (string-append "http://www.asty.org/cmatrix/dist/cmatrix-" version - ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/abishekvashok/cmatrix.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0k06fw2n8nzp1pcdynhajp5prba03gfgsbj91bknyjr5xb5fd9hz")))) + "1h9jz4m4s5l8c3figaq46ja0km1gimrkfxm4dg7mf4s84icmasbm")))) (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) (arguments '(#:phases (modify-phases %standard-phases @@ -1886,7 +1995,7 @@ match, cannon keep, and grave-itation pit.") (define minetest-data (package (name "minetest-data") - (version "5.1.0") + (version "5.1.1") (source (origin (method git-fetch) (uri (git-reference @@ -1914,13 +2023,13 @@ match, cannon keep, and grave-itation pit.") (synopsis "Main game data for the Minetest game engine") (description "Game data for the Minetest infinite-world block sandbox game.") - (home-page "http://minetest.net") + (home-page "https://www.minetest.net/") (license license:lgpl2.1+))) (define-public minetest (package (name "minetest") - (version "5.1.0") + (version "5.1.1") (source (origin (method git-fetch) (uri (git-reference @@ -1929,16 +2038,10 @@ match, cannon keep, and grave-itation pit.") (file-name (git-file-name name version)) (sha256 (base32 - "184n9gxfa7yr0j85z2x736maaymsnppd5jzm326wlqri3c0qqy3z")) + "0cjj63333b7j4ydfq0h9yc6d2jvmyjd7n7zbd08yrf0rcibrj2k0")) (modules '((guix build utils))) (snippet '(begin - ;; Mimic upstream commit 706b6aad06, for compatibility with - ;; newer jsoncpp. Remove this for > 5.1.0. - (substitute* "cmake/Modules/FindJson.cmake" - (("features\\.h") - "allocator.h")) - ;; Delete bundled libraries. (delete-file-recursively "lib") #t)))) @@ -1988,7 +2091,7 @@ various types of blocks in a three-dimensional open world. This allows forming structures in every possible creation, on multiplayer servers or as a single player. Mods and texture packs allow players to personalize the game in different ways.") - (home-page "http://minetest.net") + (home-page "https://www.minetest.net/") (license license:lgpl2.1+))) (define glkterm @@ -2061,7 +2164,7 @@ using the @code{curses.h} library for screen control.") (install-file "glulxe" bin)) #t)) (delete 'configure)))) ; no configure script - (home-page "http://www.eblong.com/zarf/glulx/") + (home-page "https://www.eblong.com/zarf/glulx/") (synopsis "Interpreter for Glulx VM") (description "Glulx is a 32-bit portable virtual machine intended for writing and @@ -2285,7 +2388,7 @@ This game is based on the GPL version of the famous game TuxRacer.") (define-public supertuxkart (package (name "supertuxkart") - (version "1.0") + (version "1.1") (source (origin (method url-fetch) @@ -2293,7 +2396,7 @@ This game is based on the GPL version of the famous game TuxRacer.") version "/supertuxkart-" version "-src.tar.xz")) (sha256 (base32 - "106rlp99hq18b4q1kdri3pl06cc4v7iqfp1hp9k2f8751lzz923d")) + "1s0ai07g3sswck9mr0142989mrgzzq1njc1qxk5als5b245jpc79")) (modules '((guix build utils))) (snippet ;; Delete bundled library sources @@ -2301,7 +2404,7 @@ This game is based on the GPL version of the famous game TuxRacer.") ;; Supertuxkart uses modified versions of the Irrlicht engine ;; and the bullet library. The developers gave an explanation ;; here: http://forum.freegamedev.net/viewtopic.php?f=17&t=3906 - ;; FIXME: try to unbundle angelscript + ;; FIXME: try to unbundle angelscript and libraqm (for-each delete-file-recursively '("lib/zlib" "lib/libpng" @@ -2319,6 +2422,9 @@ This game is based on the GPL version of the famous game TuxRacer.") "-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE" "-DUSE_SYSTEM_GLEW=TRUE" "-DUSE_SYSTEM_ENET=TRUE" + ;; In order to use the system ENet library, IPv6 support (added in + ;; SuperTuxKart version 1.1) must be disabled. + "-DUSE_IPV6=FALSE" ;; FIXME: needs libopenglrecorder "-DBUILD_RECORDER=0" ;; Irrlicht returns an integer instead of a boolean @@ -2330,6 +2436,7 @@ This game is based on the GPL version of the famous game TuxRacer.") ("libvorbis" ,libvorbis) ("freetype" ,freetype) ("fribidi" ,fribidi) + ("harfbuzz" ,harfbuzz) ("mesa" ,mesa) ("libx11" ,libx11) ("libxrandr" ,libxrandr) @@ -2341,7 +2448,7 @@ This game is based on the GPL version of the famous game TuxRacer.") ("enet" ,enet))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "https://supertuxkart.net/") + (home-page "https://supertuxkart.net/Main_Page") (synopsis "3D kart racing game") (description "SuperTuxKart is a 3D kart racing game, with a focus on having fun over realism. You can play with up to 4 friends on one PC, racing @@ -3141,45 +3248,8 @@ http://lavachat.symlynx.com/unix/") (license license:gpl2+))) (define-public red-eclipse - (let ((release "1.6.0") - (revision 0) - (data-sources - '(("acerspyro" "12b0bngl7hlxw4iwdbn99jp081yl6z1ic0s788nm349drbr2pck8") - ("actors" "0x7qqx67679q6ark9zz02skwhzgabid69kwi6zmhfpfgicn4927r") - ("appleflap" "08xslwqfqz3j4m03pv5ry2gdzj5k2ns51z8n6sln3sa94i9x8qkm") - ("blendbrush" "18zf5i2ax4p14x4c9nhk9fq6l1xgbxw62gm72vx59vbfdpjrw3cg") - ("caustics" "172fxwx7kbz5nmbjq98kr52ips505wb99fibgnpg8cj02syrya8k") - ("crosshairs" "14w8ysqzdsx9bzpfbl700jzngbh14rdghhjdf6zd6jlkvrl6754r") - ("dziq" "056imqszvp90j7cgz52ly0f31px64gsrmvm9k2c78ldbx87jnhc3") - ("elyvisions" "1bsgr0gr7njydj8fqclh0a27lrsyic3xfd5a4vwggw7g54azpgk2") - ("fonts" "00ibisza1qci0ghf2rynyf28l6r3nqhfzjf80k6gg76q4v7p1myx") - ("freezurbern" "07l9ldk9b82f12c13wcg5xxdf15bw0yjxk3vvk8v3ygrl2mwksyr") - ("john" "1jdmwkrdi5b9pivkm22rxhmkk1db9dx6l54wzcc23cvdz04ij93k") - ("jojo" "0f7kjy43fbk9kw8fip6bbw4gn3pryh0fndlahjfkaysrx98krdj3") - ("jwin" "0nc8dndnpqk2ad6316a8k6kgzsrkpwvk8s4gyh7aqfi4axfclril") - ("luckystrike" "04jiipqahphmvz5cd74dygr62dlvv6l4iglb8hzh4pp8frhls8bq") - ("maps" "0an46ipjvw4h0nxvb6qvnzp1cdkzlkiinqz4zh9lmxy1ds0gclim") - ("mayhem" "15k10imm2wr6c6fq35n4r99k7kz7n9zdnjlw6dmdq6fba67i6sbc") - ("mikeplus64" "0v4wiiivm3829j4phlavy22n4c6k6ib9ixxpdz7r6ysg5cdkaw33") - ("misc" "13rfgwrlfhflz6inbkg3fypyf8im0m49sw112b17qrw2zgp8i1rz") - ("nieb" "0z0h9jdn2gkkjil3vsvwidb1p2k09pi5n3wjxza12hhvqmcs7q8f") - ("nobiax" "08bfp4q6gbfis18bp1h4d0hqssk79jc4fhyjxnv21dbam4v4mnkn") - ("particles" "1vsx3fgg19xggxfhz3vlrh6nqhmw7kl9kmxrvb2j84blp00vd6z2") - ("philipk" "14irscg80607i5k5l2ci0n9nwibvda2f3xsykgv96d0vldrp5n5a") - ("projectiles" "09bnfsrywirwgjm6d7ff5nicx6w6b7w9568x9pb5q0ncaps3l85s") - ("props" "1dlabbprlkif8af3daf9nbgcwgxiymvj0yiphqhlri8ylfy2vpz4") - ("skyboxes" "14bi3md5y47cvb9ybipdvksz40gqsqw2r0lh3zzqb4acq367w18y") - ("snipergoth" "0m8rvvy5n8n9pm0b5cqvzsxsw51mqk8m7s1h3qc849b38isliwq2") - ("sounds" "0ivf3w5bphz5pzzx6kwcb67vbly1l19cgv3s0cyp8n87afiqj5rd") - ("textures" "0qdmgx7zbcqnb9rrga2izr93p5inirczhddfxs504rsnv0v8vyxm") - ("torley" "05ppyhghq859cbbxzj3dnl9fcx3ghy04ds1pylypwg2hsxzbjwcd") - ("trak" "0g3vq86q91a3syli38lwc8ca4ychfwsmmqf85kqzfzyd627ybclm") - ("ulukai" "0asa5fz400impklcg6dy2f7jiaqfc1sn1c36fpg8jd01gw66lw93") - ("unnamed" "0rz5683j7sfwkcycfypbv4b0ihp0qwn9rzskfsabwc1s5g324917") - ("vanities" "13f18783rc8cjf22p61zr8m5g1migzlx05fzl8xnbjdkqq4cdyix") - ("vegetation" "1y5d97nfmvax7y4fr0y5v0c8zb1ajkqwx76kjd4qc9n4spdsi5sc") - ("weapons" "103g1dhxv5ffz4ddg2xcbshbgv9606chsbas3pzk6h9ybqsyjrqh") - ("wicked" "1884rk34a2dj83gz82rc4zh3ch0dyj5221hvsr0a5h60578i7yj6")))) + (let ((release "2.0.0") + (revision 0)) (package (name "red-eclipse") (version (if (zero? revision) @@ -3190,13 +3260,18 @@ http://lavachat.symlynx.com/unix/") (origin (method git-fetch) (uri (git-reference - (url "https://github.com/red-eclipse/base.git") - (commit (string-append "v" release)))) + (url "https://github.com/redeclipse/base.git") + (commit (string-append "v" release)) + (recursive? #t))) ; for game data (file-name (git-file-name name version)) (sha256 - (base32 "0qy9kmq21wc4bdhwifasxc5dv1y5c53sn7dfmyc5y3zyz8wjyij4")) - (patches - (search-patches "red-eclipse-remove-gamma-name-hack.patch")))) + (base32 "0sz0mqhwx8r9n4mk3qrxw420nlsm3y0n48gd0lazgd64lfqjh3ab")) + (modules '((guix build utils))) + (snippet + ;; Remove proprietary libraries and other pre-compiled binaries. + '(begin + (delete-file-recursively "bin") + #t)))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -3207,34 +3282,13 @@ http://lavachat.symlynx.com/unix/") (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases - (add-after 'unpack 'unpack-data - (lambda* (#:key inputs #:allow-other-keys) - (delete-file-recursively "data") - (mkdir "data") - (with-directory-excursion "data" - (for-each (lambda (name) - (copy-recursively (assoc-ref inputs name) name)) - (list ,@(map car data-sources)))) - #t)) - (add-after 'unpack-data 'add-store-data-package-path-as-default + (add-after 'unpack 'add-store-data-package-path-as-default (lambda* (#:key outputs #:allow-other-keys) (substitute* "src/engine/server.cpp" - (("(else[[:space:]]*)((addpackagedir\\()\"data\"(\\);))" - _ - else_part - addpackagedir_original - addpackagedir_open - addpackagedir_close) - (string-append else_part - "{ " - addpackagedir_open - "\"" + (("data = \"data\"") + (string-append "data = \"" (assoc-ref outputs "out") - "/share/redeclipse/data\"" - addpackagedir_close - " " - addpackagedir_original - " }"))) + "/share/redeclipse/data\""))) #t)) (delete 'configure) ; no configure script (add-after 'set-paths 'set-sdl-paths @@ -3291,37 +3345,27 @@ exec -a \"$0\" ~a/.redeclipse_server_linux-real~%" `(("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl) + ("freetype" ,freetype) ("glu" ,glu) ("sdl-union" ,(sdl-union (list sdl2 sdl2-image - sdl2-mixer))) - ;; Create origin records for the many separate data packages. - ,@(map (match-lambda - ((name hash) - (list name - (origin - (method git-fetch) - (uri - (git-reference - (url (string-append "https://github.com/" - "red-eclipse/" name ".git")) - (commit (string-append "v" release)))) - (sha256 (base32 hash)) - (file-name (git-file-name name version)))))) - data-sources))) - (home-page "http://redeclipse.net/") + sdl2-mixer))))) + (home-page "https://redeclipse.net/") (synopsis "Arena shooter derived from the Cube 2 engine") (description "Red Eclipse is an arena shooter, created from the Cube2 engine. Offering an innovative parkour system and distinct but all potent weapons, Red Eclipse provides fast paced and accessible gameplay.") ;; The engine is under Zlib; data files are covered by the other - ;; licenses. More details at <http://redeclipse.net/wiki/License>. + ;; licenses. More details at file:///doc/all-licenses.txt. (license (list license:expat license:zlib + license:cc-by-sa4.0 license:cc-by-sa3.0 license:cc-by3.0 - license:cc0))))) + license:cc0 + license:public-domain + license:silofl1.1))))) (define-public grue-hunter (package @@ -3800,16 +3844,16 @@ a style similar to the original Super Mario games.") (define-public tintin++ (package (name "tintin++") - (version "2.01.7") + (version "2.02.00") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/tintin/TinTin++ Source Code/" - (version-major+minor version) + (string-drop-right version 1) "/tintin-" version ".tar.gz")) (sha256 (base32 - "033n84pyxml3n3gd4dq0497n9w331bnrr1gppwipz9ashmq8jz7v")))) + "02qmbhzhh2sdy5b37v54gihs9k4bxmlz3j96gyx7icvx2grkbg5i")))) (inputs `(("gnutls" ,gnutls) ("pcre" ,pcre) @@ -3825,14 +3869,14 @@ a style similar to the original Super Mario games.") (chdir "src") #t))))) (build-system gnu-build-system) - (home-page "http://tintin.sourceforge.net/") + (home-page "https://tintin.mudhalla.net/") (synopsis "MUD client") (description "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol), MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs, as well as those required to login via telnet on Linux / Mac OS X servers, and an auto mapper with a VT100 map display.") - (license license:gpl2+))) + (license license:gpl3+))) (define-public laby (package @@ -4486,7 +4530,7 @@ small robot living in the nano world, repair its maker.") (define-public teeworlds (package (name "teeworlds") - (version "0.7.2") + (version "0.7.4") (source (origin (method git-fetch) (uri (git-reference @@ -4495,7 +4539,7 @@ small robot living in the nano world, repair its maker.") (file-name (git-file-name name version)) (sha256 (base32 - "15l988qcsqgb6rjais0qd5sd2rjanm2708jmzvkariqzz0d6pb93")) + "1lxdb1k2cdj2421vyz1z0ximzfnpkh2y4y84zpn2gqsa1nzwbryb")) (modules '((guix build utils) (ice-9 ftw) (ice-9 regex) @@ -4507,9 +4551,7 @@ small robot living in the nano world, repair its maker.") (cut string-append base-dir <>)) (remove (cut string-match "(^.)|(^md5$)" <>) (scandir base-dir))) - #t)) - (patches - (search-patches "teeworlds-use-latest-wavpack.patch")))) + #t)))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests included @@ -4520,19 +4562,6 @@ small robot living in the nano world, repair its maker.") (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) - ;; The bundled json-parser uses an old API. - ;; To use the latest non-bundled version, we need to pass the - ;; length of the data in all 'json_parse_ex' calls. - (define (use-latest-json-parser file) - (substitute* file - (("engine/external/json-parser/json\\.h") - "json-parser/json.h") - (("json_parse_ex\\(&JsonSettings, pFileData, aError\\);") - "json_parse_ex(&JsonSettings, - pFileData, - strlen(pFileData), - aError);"))) - ;; Embed path to assets. (substitute* "src/engine/shared/storage.cpp" (("#define DATA_DIR.*") @@ -4564,13 +4593,6 @@ settings.link.libs:Add(\"wavpack\")") (substitute* "src/engine/client/sound.cpp" (("engine/external/wavpack/wavpack\\.h") "wavpack/wavpack.h")) - (for-each use-latest-json-parser - '("src/game/client/components/countryflags.cpp" - "src/game/client/components/menus_settings.cpp" - "src/game/client/components/skins.cpp" - "src/game/client/localization.cpp" - "src/game/editor/auto_map.h" - "src/game/editor/editor.cpp")) #t)) (replace 'build (lambda _ @@ -5314,15 +5336,14 @@ Tales of Maj’Eyal offers engaging roguelike gameplay for the 21st century.") (define-public quakespasm (package (name "quakespasm") - (version "0.93.1") + (version "0.93.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/quakespasm/Source/quakespasm-" version ".tgz")) (sha256 - (base32 - "1bimv18f6rzhyjz78yvw2vqr5n0kdqbcqmq7cb3m951xgsxfcgpd")))) + (base32 "0qm0j5drybvvq8xadfyppkpk3rxqsxbywzm6iwsjwdf0iia3gss5")))) (arguments `(#:tests? #f #:make-flags '("CC=gcc" @@ -5685,24 +5706,29 @@ You can save humanity and get programming skills!") (define-public gzdoom (package (name "gzdoom") - (version "3.7.2") - (source (origin - (method url-fetch) - (uri - (string-append "https://zdoom.org/files/gzdoom/src/gzdoom-src-g" - version ".zip")) - (sha256 - (base32 - "0182f160m8d0c3nywjw3dxvnz93xjs4cn8akx7137cha4s05wdq7")) - (patches (search-patches "gzdoom-search-in-installed-share.patch")) - (modules '((guix build utils))) - (snippet - '(begin - (delete-file-recursively "bzip2") - (delete-file-recursively "game-music-emu") - (delete-file-recursively "jpeg") - (delete-file-recursively "zlib") - #t)))) + (version "4.3.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/coelckers/gzdoom.git") + (commit (string-append "g" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0i4hyg72z84fc6ca2ic9q82q5cbgrbd7bynl3kpkypxvyasq08wz")) + (patches (search-patches "gzdoom-search-in-installed-share.patch" + "gzdoom-find-system-libgme.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove some bundled libraries. XXX There are more, but removing + ;; them would require, at least, patching the build system. + (with-directory-excursion "libraries" + (delete-file-recursively "bzip2") + (delete-file-recursively "game-music-emu") + (delete-file-recursively "jpeg") + (delete-file-recursively "zlib")) + #t)))) (arguments '(#:tests? #f #:configure-flags @@ -5712,8 +5738,12 @@ You can save humanity and get programming skills!") "-DCMAKE_CXX_FLAGS:=" "-DSHARE_DIR=\\\"" out "/share/\\\" " "-DGUIX_OUT_PK3=\\\"" out "/share/games/doom\\\"") - ;; look for libraries at buildtime instead of - ;; dynamically finding them at runtime + + ;; The build requires some extra convincing not to use the bundled + ;; libgme previously deleted in the soure snippet. + "-DFORCE_INTERNAL_GME=OFF" + + ;; Link libraries at build time instead of loading them at run time. "-DDYN_OPENAL=OFF" "-DDYN_FLUIDSYNTH=OFF" "-DDYN_GTK=OFF" @@ -5733,19 +5763,19 @@ You can save humanity and get programming skills!") (string-append "COMMAND " (which "sh")))) (substitute* - "src/sound/mididevices/music_fluidsynth_mididevice.cpp" + "libraries/zmusic/mididevices/music_fluidsynth_mididevice.cpp" (("/usr/share/sounds/sf2/FluidR3_GM.sf2") (string-append fluid-3 "/share/soundfonts/FluidR3Mono_GM.sf3"))) (substitute* - "src/sound/mididevices/music_timiditypp_mididevice.cpp" + "libraries/zmusic/mididevices/music_timiditypp_mididevice.cpp" (("exename = \"timidity\"") (string-append "exename = \"" timidity++ "/bin/timidity\""))) #t)))))) (build-system cmake-build-system) (inputs `(("bzip2" ,bzip2) ("fluid-3" ,fluid-3) - ("fluidsynth" ,fluidsynth-1) ;XXX: try using 2.x when updating + ("fluidsynth" ,fluidsynth) ("gtk+3" ,gtk+) ("libgme" ,libgme) ("libjpeg" ,libjpeg) @@ -5776,7 +5806,7 @@ Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.") (define-public odamex (package (name "odamex") - (version "0.8.0") + (version "0.8.1") (source (origin (method url-fetch) @@ -5784,10 +5814,9 @@ Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.") "mirror://sourceforge/odamex/Odamex/" version "/" "odamex-src-" version ".tar.gz")) (sha256 - (base32 - "1sh6lqj7vsdmnqz17hw0b6vy7xx6dp41k2sdw99ympsfa2xd1d2j")))) + (base32 "1ywbqkfacc9fc5di3dn95y5ah2ys9i241j64q3f37a73x92llw1i")))) (build-system cmake-build-system) - (arguments `(#:tests? #f)) ; no tests. + (arguments `(#:tests? #f)) ; no tests (inputs `(("sdl" ,sdl) ("sdl-mixer" ,sdl-mixer) @@ -5840,7 +5869,7 @@ affect gameplay).") (package (inherit chocolate-doom) (name "crispy-doom") - (version "5.6.3") + (version "5.6.4") (source (origin (method git-fetch) (uri (git-reference @@ -5848,7 +5877,7 @@ affect gameplay).") (commit (string-append "crispy-doom-" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0f319979wqfgm4pvsa6y5clg30p55l441kmrr8db0p5smyv3x2s4")))) + (base32 "1ls4v2kpb7vi7xji5yqbmyc5lfkz497h1vvj9w86wkrw8k59hlg2")))) (native-inputs (append (package-native-inputs chocolate-doom) @@ -5858,7 +5887,7 @@ affect gameplay).") `(#:phases (modify-phases %standard-phases (replace 'bootstrap - ;; the autogen.sh script in the source tree doesn't work + ;; The bundled autogen.sh script unconditionally runs ./configure. (lambda _ (invoke "autoreconf" "-vif")))))) (synopsis "Limit-removing enhanced-resolution Doom source port based on Chocolate Doom") @@ -5870,10 +5899,79 @@ entirely config file, savegame, netplay and demo compatible with the original.") (home-page "https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom"))) +(define shlomif-cmake-modules + (origin + (method url-fetch) + (uri (string-append "https://bitbucket.org/shlomif/shlomif-cmake-modules/" + "raw/c505713d7a7cda608f97f01577e5868a711b883e/" + "shlomif-cmake-modules/Shlomif_Common.cmake")) + (sha256 + (base32 "0kx9s1qqhhzprp1w3b67xmsns0n0v506bg5hgrshxaxpy6lqiwb2")))) + +(define-public rinutils + (package + (name "rinutils") + (version "0.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/shlomif/rinutils.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1fpxyg86ggv0h7j8aarjjxrvwlj7jycd3bw066c0dwkq2fszxsf2")))) + (native-inputs + `(("perl" ,perl) + ;; The following is only needed for tests. + ("perl-file-find-object" ,perl-file-find-object) + ("perl-test-differences" ,perl-test-differences) + ("perl-class-xsaccessor" ,perl-class-xsaccessor) + ("perl-io-all" ,perl-io-all) + ("perl-test-runvalgrind" ,perl-test-runvalgrind) + ("cmake-rules" ,shlomif-cmake-modules) + ("pkg-config" ,pkg-config))) + (inputs + `(("cmocka" ,cmocka) + ("perl-env-path", perl-env-path) + ("perl-inline" ,perl-inline) + ("perl-inline-c" ,perl-inline-c) + ("perl-string-shellquote" ,perl-string-shellquote) + ("perl-test-trailingspace" ,perl-test-trailingspace) + ("perl-file-find-object-rule" ,perl-file-find-object-rule) + ("perl-text-glob" ,perl-text-glob) + ("perl-number-compare" ,perl-number-compare) + ("perl-moo" ,perl-moo))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-build-env + (lambda* (#:key inputs #:allow-other-keys) + (use-modules (guix build utils)) + (let* ((cmake-rules (assoc-ref inputs "cmake-rules"))) + (copy-file cmake-rules + (string-append "cmake/" + (strip-store-file-name cmake-rules))) + #t))) + (replace 'check + (lambda _ + (with-directory-excursion "../source" + (setenv "FCS_TEST_BUILD" "1") + (setenv "RINUTILS_TEST_BUILD" "1") + ;; TODO: Run tests after setting RINUTILS_TEST_TIDY to `1', + ;; which requires tidy-all. + ;; (setenv "RINUTILS_TEST_TIDY" "1") + (invoke "perl" "CI-testing/continuous-integration-testing.pl"))))))) + (build-system cmake-build-system) + (home-page "https://www.shlomifish.org/open-source/projects/") + (synopsis "C11 / gnu11 utilities C library") + (description "This package provides C11 / gnu11 utilities C library") + (license license:expat))) + (define-public fortune-mod (package (name "fortune-mod") - (version "2.6.2") + (version "2.12.0") (source (origin (method git-fetch) @@ -5883,7 +5981,7 @@ original.") (file-name (git-file-name name version)) (sha256 (base32 - "11xff87s8ifw2dqs90n0rjq0psv4i7ykybygmibsqjj7id3xxw4c")))) + "0laxgqsdg7kvpvvm1f54b94ga9r0cr9g3ffii8avg8fy65x6pzc9")))) (build-system cmake-build-system) (arguments `(#:test-target "check" @@ -5922,14 +6020,8 @@ original.") ("perl-class-xsaccessor" ,perl-class-xsaccessor) ("perl-io-all" ,perl-io-all) ("perl-test-runvalgrind" ,perl-test-runvalgrind) - ("cmake-rules" - ,(origin - (method url-fetch) - (uri (string-append "https://bitbucket.org/shlomif/shlomif-cmake-modules/" - "raw/c505713d7a7cda608f97f01577e5868a711b883e/" - "shlomif-cmake-modules/Shlomif_Common.cmake")) - (sha256 - (base32 "0kx9s1qqhhzprp1w3b67xmsns0n0v506bg5hgrshxaxpy6lqiwb2")))))) + ("cmake-rules" ,shlomif-cmake-modules) + ("rinutils" ,rinutils))) (home-page "http://www.shlomifish.org/open-source/projects/fortune-mod/") (synopsis "The Fortune Cookie program from BSD games") (description "Fortune is a command-line utility which displays a random @@ -6596,7 +6688,7 @@ civilized than your own.") ("gtk+" ,gtk+-2) ("jsoncpp" ,jsoncpp) ("libpng" ,libpng) - ("libjpeg" ,libjpeg-8) + ("libjpeg" ,libjpeg-turbo) ("libmad" ,libmad) ("libogg" ,libogg) ("libva" ,libva) @@ -9487,3 +9579,88 @@ control of the board by capturing or adding to one square. This package is part of the KDE games module.") (license (list license:gpl2+ license:fdl1.2+)))) + +(define-public xmoto + (package + (name "xmoto") + (version "0.5.11") + (source + (origin + (method url-fetch) + (uri (string-append + "http://download.tuxfamily.org/xmoto/xmoto/" version "/" + "xmoto-" version "-src.tar.gz")) + (sha256 + (base32 "1ci6r8zd0l7z28cy92ddf9dmqbdqwinz2y1cny34c61b57wsd155")) + (patches + (search-patches + "xmoto-remove-glext.patch" ;fixes licensing issue + "xmoto-reproducible.patch" + "xmoto-utf8.patch")) + ;; Unbundle ODE. + (modules '((guix build utils))) + (snippet + `(begin + (delete-file-recursively "src/ode") + #t)))) + (build-system gnu-build-system) + (arguments + ;; XXX: First flag prevents a build error with GCC7+. The second + ;; flag works around missing text in game. Both are fixed + ;; upstream. Remove once xmoto 0.5.12+ is released. + `(#:make-flags '("CXXFLAGS=-fpermissive -D_GLIBCXX_USE_CXX11_ABI=0") + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-desktop-file + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (apps (string-append out "/share/applications")) + (pixmaps (string-append out "/share/pixmaps"))) + (install-file "extra/xmoto.desktop" apps) + (install-file "extra/xmoto.xpm" pixmaps) + #t))) + (add-after 'install-desktop-file 'install-fonts + (lambda* (#:key outputs inputs #:allow-other-keys) + (let ((font-dir (string-append (assoc-ref inputs "font-dejavu") + "/share/fonts/truetype/")) + (target-dir (string-append (assoc-ref outputs "out") + "/share/xmoto/Textures/Fonts/"))) + (for-each (lambda (f) + (let ((font (string-append font-dir f)) + (target (string-append target-dir f))) + (delete-file target) + (symlink font target))) + '("DejaVuSans.ttf" "DejaVuSansMono.ttf")) + #t))) + (add-after 'install-fonts 'install-man-page + (lambda* (#:key outputs #:allow-other-keys) + (install-file "xmoto.6" + (string-append (assoc-ref outputs "out") + "/share/man/man6")) + #t))))) + (native-inputs + `(("gettext" ,gettext-minimal))) + (inputs + `(("curl" ,curl) + ("font-dejavu" ,font-dejavu) + ("glu" ,glu) + ("libjpeg" ,libjpeg) + ("libpng" ,libpng) + ("libxdg-basedir" ,libxdg-basedir) + ("libxml2" ,libxml2) + ("lua" ,lua-5.2) + ("ode" ,ode) + ("sdl" ,(sdl-union (list sdl sdl-mixer sdl-net sdl-ttf))) + ("sqlite" ,sqlite) + ("zlib" ,zlib))) + (home-page "https://xmoto.tuxfamily.org/") + (synopsis "2D motocross platform game") + (description "X-Moto is a challenging 2D motocross platform game, where +physics play an all important role in the gameplay. You need to control your +bike to its limit, if you want to have a chance finishing the more difficult +challenges.") + (license (list license:gpl2+ ;whole project + license:bsd-4 ;src/bzip + license:bsd-3 ;src/md5sum + license:lgpl2.1+ ;src/iqsort.h + license:expat)))) diff --git a/gnu/packages/genealogy.scm b/gnu/packages/genealogy.scm index bb3ed3d0aa..869f69add8 100644 --- a/gnu/packages/genealogy.scm +++ b/gnu/packages/genealogy.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +39,7 @@ (define-public gramps (package (name "gramps") - (version "5.1.1") + (version "5.1.2") (source (origin (method git-fetch) @@ -47,8 +48,7 @@ (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 - "1zrvr543zzsiapda75vdd2669fgijmx4cv7nfj5d1jsyz4qnif7b")))) + (base32 "175iwvdp6c1a8rskl2wpk4yvzl437j7hm23v481974a85qy43iv8")))) (build-system python-build-system) (native-inputs `(("gettext" ,gettext-minimal) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 32cdc2b53a..61b8e55e52 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> ;;; Copyright © 2018, 2019 Julien Lepiller <julien@lepiller.eu> -;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz> ;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> @@ -36,6 +36,7 @@ #:use-module (guix build-system go) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (guix build-system qt) #:use-module (guix build-system scons) #:use-module (guix build-system r) #:use-module (guix download) @@ -1307,7 +1308,7 @@ associated with an address.") `(#:tests? #f)) ;; Tests require a copy of the maxmind database (inputs `(("libmaxminddb" ,libmaxminddb))) - (home-page "http://www.maxmind.com/") + (home-page "https://www.maxmind.com/") (synopsis "Reader for the MaxMind DB format") (description "MaxMind DB is a binary file format that stores data indexed by IP address subnets (IPv4 or IPv6). This is a Python module for reading @@ -1331,8 +1332,130 @@ MaxMind DB files.") (inputs `(("python-maxminddb" ,python-maxminddb) ("python-requests" ,python-requests))) - (home-page "http://www.maxmind.com/") + (home-page "https://www.maxmind.com/") (synopsis "MaxMind GeoIP2 API") (description "Provides an API for the GeoIP2 web services and databases. The API also works with MaxMind’s free GeoLite2 databases.") (license license:asl2.0))) + +(define-public routino + (package + (name "routino") + (version "3.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.routino.org/download/routino-" + version ".tgz")) + (sha256 + (base32 + "1ccx3s99j8syxc1gqkzsaqkmyf44l7h3adildnc5iq2md7bp8wab")))) + (build-system gnu-build-system) + (native-inputs + `(("perl" ,perl))) + (inputs + `(("bzip2" ,bzip2) + ("xz" ,xz) + ("zlib" ,zlib))) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile.conf" + (("prefix=/usr/local") + (string-append "prefix=" (assoc-ref outputs "out"))) + (("LDFLAGS_LDSO=-Wl,-R\\.") + "LDFLAGS_LDSO=-Wl,-R$(libdir)") + (("#CFLAGS\\+=-DUSE_XZ") + "CFLAGS+=-DUSE_XZ") + (("#LDFLAGS\\+=-llzma") + "LDFLAGS+=-llzma")) + #t))))) + (synopsis "Routing application for OpenStreetMap data") + (description + "Routino is an application for finding a route between two points +using the dataset of topographical information collected by +@url{https://www.OpenStreetMap.org}.") + (home-page "https://www.routino.org/") + (license license:agpl3+))) + +(define-public qmapshack + (package + (name "qmapshack") + (version "1.14.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Maproom/qmapshack.git") + (commit (string-append "V_" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07c2hrq9sn456w7l3gdr599rmjfv2k6mh159zza7p1py8r7ywksa")))) + (build-system qt-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (inputs + `(("gdal" ,gdal) + ("libjpeg-turbo" ,libjpeg-turbo) + ("proj" ,proj) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtlocation" ,qtlocation) + ("qtwebchannel" ,qtwebchannel) + ("qtwebengine" ,qtwebengine) + ("quazip" ,quazip) + ("routino" ,routino) + ("sqlite" ,sqlite-with-column-metadata) ; See wrap phase + ("zlib" ,zlib))) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-cmake-modules + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + (("find_package\\(Qt5PrintSupport REQUIRED\\)" all) + (string-append all "\nfind_package(Qt5Positioning REQUIRED)"))) + (substitute* "cmake/Modules/FindROUTINO.cmake" + (("/usr/local") + (assoc-ref inputs "routino"))) + ;; The following fixes are included as patches in the sources + ;; of QMapShack, but they are not applied by default, for + ;; some reason... + (invoke "patch" "-p1" "-i" "FindPROJ4.patch") + (invoke "patch" "-p1" "-i" "FindQuaZip5.patch") + #t)) + (add-after 'install 'wrap + ;; The program fails to run with the error: + ;; undefined symbol: sqlite3_column_table_name16 + ;; Forcing the program to use sqlite-with-column-metadata instead + ;; of sqlite using LD_LIBRARY_PATH solves the problem. + ;; + ;; The program also fails to find the QtWebEngineProcess program, + ;; so we set QTWEBENGINEPROCESS_PATH to help it. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin")) + (qtwebengineprocess (string-append + (assoc-ref inputs "qtwebengine") + "/lib/qt5/libexec/QtWebEngineProcess")) + (sqlite-lib (string-append (assoc-ref inputs "sqlite") + "/lib"))) + (for-each (lambda (program) + (wrap-program program + `("LD_LIBRARY_PATH" ":" prefix (,sqlite-lib)) + `("QTWEBENGINEPROCESS_PATH" = + (,qtwebengineprocess)))) + (find-files bin ".*"))) + #t))))) + (synopsis "GPS mapping application") + (description + "QMapShack can be used to plan your next outdoor trip or to visualize and +archive all the GPS recordings of your past trips. It is the successor of the +QLandkarte GT application.") + (home-page "https://github.com/Maproom/qmapshack/wiki") + (license license:gpl3+))) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 2e5f129a07..cadd4d0655 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> -;;; 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> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2015 Federico Beffa <beffa@fbengineering.ch> @@ -11,7 +11,7 @@ ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net> ;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net> @@ -34,7 +34,7 @@ ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2018, 2019 Timothy Sample <samplet@ngyro.com> ;;; Copyright © 2019 Danny Milosavljevic <dannym@scratchpost.org> -;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de> ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org> @@ -165,13 +165,11 @@ #:use-module (gnu packages virtualization) #:use-module (gnu packages vpn) #:use-module (gnu packages web) - #:use-module (gnu packages web) #:use-module (gnu packages webkit) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) - #:use-module (gnu packages xorg) #:use-module (gnu artwork) #:use-module (guix build-system cargo) #:use-module (guix build-system cmake) @@ -335,6 +333,131 @@ It has miners for Facebook, Flickr, Google, ownCloud and SkyDrive.") (home-page "https://wiki.gnome.org/Projects/GnomeOnlineMiners") (license license:gpl2+))) +(define-public gssdp + (package + (name "gssdp") + (version "1.2.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "195hi10vrsvh6i927mm6rm1ld5sxah3h5sr3bsjm90vb8lxrxfya")))) + (build-system meson-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("gtk+" ,gtk+) + ("libsoup" ,libsoup))) + (synopsis "GObject-based API over @acronym{SSDP, Simple Service Discovery +Protocol} for GNOME") + (description "This package provides a library to handle resource discovery +and announcement over @acronym{SSDP, Simple Service Discovery Protocol} and +a debugging tool, @command{gssdp-device-sniffer}.") + (home-page "https://gitlab.gnome.org/GNOME/gssdp") + (license license:lgpl2.0+))) + +(define-public gupnp + (package + (name "gupnp") + (version "1.2.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "12cr3isww4zl0d4himpd2fhl2wmy3jh8sbxp4snp51sw7savv04s")))) + (build-system meson-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("gssdp" ,gssdp) + ("gtk+" ,gtk+) + ("libsoup" ,libsoup))) + (synopsis "PnP API for GNOME") + (description "This package provides GUPnP, an object-oriented framework +for creating UPnP devices and control points, written in C using +@code{GObject} and @code{libsoup}.") + (home-page "https://gitlab.gnome.org/GNOME/gupnp") + (license license:lgpl2.0+))) + +(define-public gupnp-dlna + (package + (name "gupnp-dlna") + (version "0.10.5") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0spzd2saax7w776p5laixdam6d7smyynr9qszhbmq7f14y13cghj")))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("libxml" ,libxml2) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("gstreamer" ,gstreamer) + ("gupnp" ,gupnp))) + (propagated-inputs + `(("gst-plugins-base" ,gst-plugins-base) + ("gst-plugins-good" ,gst-plugins-good))) + (synopsis "GUPnP DLNA for GNOME") + (description "This package provides a small utility library to +support DLNA-related tasks such as media profile guessing, transcoding to a +given profile, etc. DLNA is a subset of UPnP A/V.") + (home-page "https://gitlab.gnome.org/GNOME/gupnp-dlna") + (license license:lgpl2.0+))) + +(define-public gupnp-av + (package + (name "gupnp-av") + (version "0.12.11") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1p3grslwqm9bc8rmpn4l48d7v9s84nina4r9xbd932dbj8acz7b8")))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("libxml" ,libxml2) + ("pkg-config" ,pkg-config))) + (inputs + `(("gtk+" ,gtk+) + ("gupnp" ,gupnp))) + (synopsis "GUPnP A/V for GNOME") + (description "This package provides a small library for handling +and implementation of UPnP A/V profiles.") + (home-page "https://gitlab.gnome.org/GNOME/gupnp-av") + (license license:lgpl2.0+))) + (define-public libmediaart (package (name "libmediaart") @@ -364,6 +487,241 @@ extraction, and lookup for applications on the desktop.") (home-page "https://gitlab.gnome.org/GNOME/libmediaart") (license license:lgpl2.1+))) +(define-public gnome-initial-setup + (package + (name "gnome-initial-setup") + (version "3.32.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/gnome-initial-setup/" + (version-major+minor version) + "/gnome-initial-setup-" version ".tar.xz")) + (sha256 + (base32 + "1gwhp7dalyc8zsb2pa66cmpdrj2d6drbq5p331sq6zp8ds10k9ry")))) + (build-system meson-build-system) + (arguments + '(#:configure-flags '(;; Enable camera support for user selfie. + "-Dcheese=auto" + "-Dsystemd=false"))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config))) + (inputs + `(("accountsservice" ,accountsservice) + ;("adwaita-icon-theme" ,adwaita-icon-theme) + ("gdm" ,gdm) + ("geoclue" ,geoclue) + ("gnome-desktop" ,gnome-desktop) + ("gnome-getting-started-docs" ,gnome-getting-started-docs) + ("gnome-online-accounts" ,gnome-online-accounts) + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") + ("gstreamer" ,gstreamer) + ("ibus" ,ibus) + ("json-glib" ,json-glib) + ("krb5" ,mit-krb5) + ("libgweather" ,libgweather) + ("libsecret" ,libsecret) + ("network-manager" ,network-manager) + ("network-manager-applet" ,network-manager-applet) + ("packagekit" ,packagekit) + ("polkit" ,polkit) + ("pwquality" ,libpwquality) + ("rest" ,rest) + ("upower" ,upower) + ("webkitgtk" ,webkitgtk))) + (synopsis "Initial setup wizard for GNOME desktop") + (description "This package provides a set-up wizard when a +user logs into GNOME for the first time. It typically provides a +tour of all gnome components and allows the user to set them up.") + (home-page "https://gitlab.gnome.org/GNOME/gnome-initial-setup") + (license license:gpl2))) + +(define-public gnome-user-share + (package + (name "gnome-user-share") + (version "3.33.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "0lf790pyamdyj7180ils8vizjl8brxcg7jsm1iavfp9ay4wa8mz7")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:configure-flags + `("-Dsystemd=false" + ;; Enable nautilus extension for file sharing. + "-Dnautilus_extension=true"))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config) + ("yelp-tools" ,yelp-tools))) + (inputs + `(("glib" ,glib) + ("gnome-bluetooth" ,gnome-bluetooth) + ("gtk+" ,gtk+) + ("libcanberra" ,libcanberra) + ("libnotify" ,libnotify) + ("nautilus" ,nautilus))) ; For nautilus extension. + (synopsis "File sharing for GNOME desktop") + (description "GNOME User Share is a small package that binds together +various free software projects to bring easy to use user-level file +sharing to the masses.") + (home-page "https://gitlab.gnome.org/GNOME/gnome-user-share") + (license license:gpl2+))) + +(define-public sushi + (package + (name "sushi") + (version "3.32.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "02idvqjk76lii9xyg3b1yz4rw721709bdm5j8ikjym6amcghl0aj")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t + #:phases + (modify-phases %standard-phases + (add-after 'glib-or-gtk-wrap 'wrap-typelib + (lambda* (#:key outputs #:allow-other-keys) + (let ((prog (string-append (assoc-ref outputs "out") + "/bin/sushi"))) + ;; Put existing typelibs before sushi's deps, so as to correctly + ;; infer gdk-pixbuf + (wrap-program prog + `("GI_TYPELIB_PATH" suffix (,(getenv "GI_TYPELIB_PATH")))) + #t)))))) + (native-inputs + `(("glib:bin" ,glib "bin") + ("gettext" ,gettext-minimal) + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config))) + (inputs + `(("clutter" ,clutter) + ("clutter-gst" ,clutter-gst) + ("clutter-gtk" ,clutter-gtk) + ("evince" ,evince) ; For file previewing. + ("freetype" ,freetype) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gjs" ,gjs) + ("gst-plugins-base" ,gst-plugins-base) + ("gstreamer" ,gstreamer) + ("gtksourceview" ,gtksourceview-3) + ("harfbuzz" ,harfbuzz) + ("libepoxy" ,libepoxy) + ("libmusicbrainz" ,libmusicbrainz) + ("libxml2" ,libxml2) + ("neon" ,neon) + ("webkitgtk" ,webkitgtk))) + (synopsis "File previewer for the GNOME desktop") + (description "Sushi is a DBus-activated service that allows applications to +preview files on the GNOME desktop.") + (home-page "https://gitlab.gnome.org/GNOME/sushi") + (license license:gpl2+))) + +(define-public rygel + (package + (name "rygel") + (version "0.38.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "003xficqb08r1dgid20i7cn889lbfwrglpx78rjd5nkvgxbimhh8")))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config) + ("vala" ,vala))) + (inputs + `(("gdk-pixbuf" ,gdk-pixbuf) + ("gssdp" ,gssdp) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("gtk+" ,gtk+) + ("gupnp" ,gupnp) + ("gupnp-av" ,gupnp-av) + ("gupnp-dlna" ,gupnp-dlna) + ("libgee" ,libgee) + ("libmediaart" ,libmediaart) + ("libsoup" ,libsoup) + ("libxslt" ,libxslt) + ("libunistring" ,libunistring) + ("tracker" ,tracker))) + (synopsis "Share audio, video, and pictures with other devices") + (description + "Rygel is a home media solution (@dfn{UPnP AV MediaServer and +MediaRenderer}) for GNOME that allows you to easily share audio, video, and +pictures, and to control a media player on your home network. + +Rygel achieves interoperability with other devices by trying to conform to the +strict requirements of DLNA and by converting media on-the-fly to formats that +client devices can handle.") + (home-page "https://wiki.gnome.org/Projects/Rygel") + (license (list + ;; For logo (data/icons/*). + license:cc-by-sa3.0 + ;; For all others. + license:lgpl2.1+)))) + +(define-public libnma + (package + (name "libnma") + (version "1.8.26") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1w9lld38risnk1krknfwln24kabdxnj274pyz4jhndphwigrshaf")))) + (build-system meson-build-system) + (arguments + `(#:glib-or-gtk? #t)) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gtk-doc" ,gtk-doc) + ("gobject-introspection" ,gobject-introspection) + ("pkg-config" ,pkg-config))) + (inputs + `(("adwaita-icon-theme" ,adwaita-icon-theme) + ("gcr" ,gcr) + ("gtk+" ,gtk+) + ("iso-codes" ,iso-codes) + ("mobile-broadband-provider-info" ,mobile-broadband-provider-info) + ("network-manager" ,network-manager))) + (synopsis "Network Manager's applet library") + (description "Libnma is an applet library for Network Manager. It was +initially part of network-manager-applet and has now become a separate +project.") + (home-page "https://gitlab.gnome.org/GNOME/libnma") + + ;; Some files carry the "GPL-2.0+" SPDX identifier while others say + ;; "LGPL-2.1+". + (license license:gpl2+))) + (define-public gnome-menus (package (name "gnome-menus") @@ -1144,7 +1502,7 @@ forgotten when the session ends.") "05q6v9lssd21623mnj2p49clj9v9csw9kay7n4nklki025grbh1w")))) (build-system glib-or-gtk-build-system) (arguments - `(#:configure-flags '("--disable-nautilus") + `(#:configure-flags '("--disable-nautilus" "--enable-introspection") #:phases (modify-phases %standard-phases (add-before 'install 'skip-gtk-update-icon-cache @@ -1188,6 +1546,7 @@ forgotten when the session ends.") `(("itstool" ,itstool) ("intltool" ,intltool) ("glib" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) ("pkg-config" ,pkg-config) ("xmllint" ,libxml2))) (home-page @@ -1522,7 +1881,7 @@ some form of information without getting in the user's way.") (define-public libpeas (package (name "libpeas") - (version "1.22.0") + (version "1.24.1") (source (origin (method url-fetch) @@ -1531,8 +1890,19 @@ some form of information without getting in the user's way.") name "-" version ".tar.xz")) (sha256 (base32 - "0qm908kisyjzjxvygdl18hjqxvvgkq9w0phs2g55pck277sw0bsv")))) - (build-system gnu-build-system) + "1162dr7smmfb02czmhshr0f93hqj7w0nw29bys5lzfvwarxcyflw")))) + (build-system meson-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + (setenv "DISPLAY" disp) + ;; Tests require a running X server. + (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)) + #t)))))) (inputs `(("gtk+" ,gtk+) ("glade" ,glade3) @@ -1540,9 +1910,10 @@ some form of information without getting in the user's way.") ("python-pygobject" ,python-pygobject))) (native-inputs `(("pkg-config" ,pkg-config) + ("gettext" ,gettext-minimal) ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) - ("intltool" ,intltool))) + ("xorg-server" ,xorg-server-for-tests))) (propagated-inputs ;; The .pc file "Requires" gobject-introspection. `(("gobject-introspection" ,gobject-introspection))) @@ -1811,77 +2182,76 @@ from forcing GEXP-PROMISE." (lambda (crate) (delete-file-recursively (string-append "vendor/" (car crate))) (invoke "tar" "xvf" (cdr crate) "-C" "vendor")) - '( -;; aho-corasick 0.7 + '(("aho-corasick" . #+(package-source rust-aho-corasick-0.7)) ;; alga 0.9 -;; approx 0.3 -;; arrayvec 0.4 + ("approx" . #+(package-source rust-approx-0.3)) + ("arrayvec" . #+(package-source rust-arrayvec-0.4)) ("atty" . #+(package-source rust-atty-0.2)) ("autocfg" . #+(package-source rust-autocfg-0.1)) ("bitflags" . #+(package-source rust-bitflags-1)) ;; block 0.1 -;; bstr 0.2 -;; byteorder 1.3 + ("bstr" . #+(package-source rust-bstr-0.2)) + ("byteorder" . #+(package-source rust-byteorder-1.3)) ;; cairo-rs 0.7 ;; cairo-sys-rs 0.9 -;; cast 0.2 + ("cast" . #+(package-source rust-cast-0.2)) ("cfg-if" . #+(package-source rust-cfg-if-0.1)) ("clap" . #+(package-source rust-clap-2)) - ;("cloudabi" . #+(package-source rust-cloudabi-0.0)) -;; criterion 0.2 -;; criterion-plot 0.3 -;; crossbeam-deque 0.7 -;; crossbeam-epoch 0.7 -;; crossbeam-queue 0.1 -;; crossbeam-utils 0.6 + ("cloudabi" . #+(package-source rust-cloudabi-0.0)) + ("criterion" . #+(package-source rust-criterion-0.2)) + ("criterion-plot" . #+(package-source rust-criterion-plot-0.3)) + ("crossbeam-deque" . #+(package-source rust-crossbeam-deque-0.7)) + ("crossbeam-epoch" . #+(package-source rust-crossbeam-epoch-0.8)) + ("crossbeam-queue" . #+(package-source rust-crossbeam-queue-0.2)) + ("crossbeam-utils" . #+(package-source rust-crossbeam-utils-0.7)) ;; cssparser 0.25 ;; cssparser-macros 0.3 -;; csv 1.1 -;; csv-core 0.1 + ("csv" . #+(package-source rust-csv-1.1)) + ("csv-core" . #+(package-source rust-csv-core-0.1)) ;; data-url 0.1 ;; downcast-rs 1.0 ("dtoa" . #+(package-source rust-dtoa-0.4)) ;; dtoa-short 0.3 -;; either 1.5 -;; encoding 0.2 -;; encoding-index-japanese 1.20141219.5 -;; encoding-index-korean 1.20141219.5 -;; encoding-index-simpchinese 1.20141219.5 -;; encoding-index-singlebyte 1.20141219.5 -;; encoding-index-tradchinese 1.20141219.5 -;; encoding_index_tests 0.1 + ("either" . #+(package-source rust-either-1.5)) + ("encoding" . #+(package-source rust-encoding-0.2)) + ("encoding-index-japanese" . #+(package-source rust-encoding-index-japanese-1.20141219)) + ("encoding-index-korean" . #+(package-source rust-encoding-index-korean-1.20141219)) + ("encoding-index-simpchinese" . #+(package-source rust-encoding-index-simpchinese-1.20141219)) + ("encoding-index-singlebyte" . #+(package-source rust-encoding-index-singlebyte-1.20141219)) + ("encoding-index-tradchinese" . #+(package-source rust-encoding-index-tradchinese-1.20141219)) + ("encoding_index_tests" . #+(package-source rust-encoding-index-tests-0.1)) ;; float-cmp 0.5 ;; fragile 0.3 - ;("fuchsia-cprng" . #+(package-source rust-fuchsia-cprng-0.1)) -;; futf 0.1 + ("fuchsia-cprng" . #+(package-source rust-fuchsia-cprng-0.1)) + ("futf" . #+(package-source rust-futf-0.1)) ;; gdk-pixbuf 0.7 ;; gdk-pixbuf-sys 0.9 -;; generic-array 0.12 + ("generic-array" . #+(package-source rust-generic-array-0.12)) ;; gio 0.7 ;; gio-sys 0.9 ;; glib 0.8 ;; glib-sys 0.9 ;; gobject-sys 0.9 -;; idna 0.2 -;; itertools 0.8 + ("idna" . #+(package-source rust-idna-0.2)) + ("itertools" . #+(package-source rust-itertools-0.8)) ("itoa" . #+(package-source rust-itoa-0.4)) - ;("language-tags" . #+(package-source rust-language-tags-0.2)) + ("language-tags" . #+(package-source rust-language-tags-0.2)) ("lazy_static" . #+(package-source rust-lazy-static-1.3)) ("libc" . #+(package-source rust-libc-0.2)) ;; libm 0.1 ;; locale_config 0.3 ("log" . #+(package-source rust-log-0.4)) -;; mac 0.1 + ("mac" . #+(package-source rust-mac-0.1)) ;; malloc_buf 0.0 ;; markup5ever 0.9 - ;("matches" . #+(package-source rust-matches-0.1)) + ("matches" . #+(package-source rust-matches-0.1)) ;; matrixmultiply 0.2 -;; memchr 2.2 -;; memoffset 0.5 + ("memchr" . #+(package-source rust-memchr-2.2)) + ("memoffset" . #+(package-source rust-memoffset-0.5)) ;; nalgebra 0.18 -;; new_debug_unreachable 1.0 + ("new_debug_unreachable" . #+(package-source rust-new-debug-unreachable-1.0)) ("nodrop" . #+(package-source rust-nodrop-0.1)) -;; num-complex 0.2 + ("num-complex" . #+(package-source rust-num-complex-0.2)) ("num-integer" . #+(package-source rust-num-integer-0.1)) ;; num-rational 0.2 ("num-traits" . #+(package-source rust-num-traits-0.2)) @@ -1894,16 +2264,16 @@ from forcing GEXP-PROMISE." ;; pangocairo 0.8 ;; pangocairo-sys 0.10 ("percent-encoding" . #+(package-source rust-percent-encoding-2.1)) -;; phf 0.7.24 -;; phf_codegen 0.7.24 -;; phf_generator 0.7.24 -;; phf_shared 0.7.24 - ;("pkg-config" . #+(package-source rust-pkg-config-0.3)) -;; precomputed-hash 0.1 + ("phf" . #+(package-source rust-phf-0.7)) + ("phf_codegen" . #+(package-source rust-phf-codegen-0.7)) + ("phf_generator" . #+(package-source rust-phf-generator-0.7)) + ("phf_shared" . #+(package-source rust-phf-shared-0.7)) + ("pkg-config" . #+(package-source rust-pkg-config-0.3)) + ("precomputed-hash" . #+(package-source rust-precomputed-hash-0.1)) ("proc-macro2" . #+(package-source rust-proc-macro2-1.0)) ;; procedural-masquerade 0.1 ("quote" . #+(package-source rust-quote-1.0)) - ;("rand" . #+(package-source rust-rand-0.6)) + ("rand" . #+(package-source rust-rand-0.6)) ("rand_chacha" . #+(package-source rust-rand-chacha-0.1)) ("rand_core-0.3.1" . #+(package-source rust-rand-core-0.3)) ("rand_core" . #+(package-source rust-rand-core-0.4)) @@ -1913,46 +2283,46 @@ from forcing GEXP-PROMISE." ("rand_os" . #+(package-source rust-rand-os-0.1)) ("rand_pcg" . #+(package-source rust-rand-pcg-0.1)) ("rand_xorshift" . #+(package-source rust-rand-xorshift-0.1)) -;; rand_xoshiro 0.1 - ;("rawpointer" . #+(package-source rust-rawpointer-0.1)) -;; rayon 1.2 -;; rayon-core 1.6 + ("rand_xoshiro" . #+(package-source rust-rand-xoshiro-0.1)) +;; rawpointer 0.2 + ("rayon" . #+(package-source rust-rayon-1.3)) + ("rayon-core" . #+(package-source rust-rayon-core-1.7)) ;; rctree 0.3 ("rdrand" . #+(package-source rust-rdrand-0.4)) -;; regex 1.3 -;; regex-automata 0.1 - ;("regex-syntax" . #+(package-source rust-regex-syntax-0.6)) -;; rustc_version 0.2 + ("regex" . #+(package-source rust-regex-1.3)) + ("regex-automata" . #+(package-source rust-regex-automata-0.1)) + ("regex-syntax" . #+(package-source rust-regex-syntax-0.6)) + ("rustc_version" . #+(package-source rust-rustc-version-0.2)) ("ryu" . #+(package-source rust-ryu-1.0)) ("same-file" . #+(package-source rust-same-file-1.0)) ("scopeguard" . #+(package-source rust-scopeguard-1.0)) -;; semver 0.9 - ;("semver-parser" . #+(package-source rust-semver-parser-0.7)) + ("semver" . #+(package-source rust-semver-0.9)) + ("semver-parser" . #+(package-source rust-semver-parser-0.7)) ("serde" . #+(package-source rust-serde-1.0)) ("serde_derive" . #+(package-source rust-serde-derive-1.0)) ("serde_json" . #+(package-source rust-serde-json-1.0)) -;; siphasher 0.2 -;; smallvec 0.6 -;; string_cache 0.7 -;; string_cache_codegen 0.4 -;; string_cache_shared 0.3 + ("siphasher" . #+(package-source rust-siphasher-0.2)) + ("smallvec" . #+(package-source rust-smallvec-0.6)) + ("string_cache" . #+(package-source rust-string-cache-0.7)) + ;("string_cache_codegen" . #+(package-source rust-string-cache-codegen-0.4)) + ("string_cache_shared" . #+(package-source rust-string-cache-shared-0.3)) ("syn" . #+(package-source rust-syn-1.0)) -;; tendril 0.4 + ("tendril" . #+(package-source rust-tendril-0.4)) ("textwrap" . #+(package-source rust-textwrap-0.11)) - ;("thread_local" . #+(package-source rust-thread-local-0.3)) -;; tinytemplate 1.0 - ;("typenum" . #+(package-source rust-typenum-1.10)) -;; unicode-bidi 0.3 -;; unicode-normalization 0.1 + ("thread_local" . #+(package-source rust-thread-local-1.0)) + ("tinytemplate" . #+(package-source rust-tinytemplate-1.0)) + ("typenum" . #+(package-source rust-typenum-1.10)) + ("unicode-bidi" . #+(package-source rust-unicode-bidi-0.3)) + ("unicode-normalization" . #+(package-source rust-unicode-normalization-0.1)) ("unicode-width" . #+(package-source rust-unicode-width-0.1)) ("unicode-xid" . #+(package-source rust-unicode-xid-0.2)) -;; url 2.1 -;; utf-8 0.7 + ("url" . #+(package-source rust-url-2.1)) + ("utf-8" . #+(package-source rust-utf-8-0.7)) ("walkdir" . #+(package-source rust-walkdir-2.2)) ("winapi" . #+(package-source rust-winapi-0.3)) - ;("winapi-i686-pc-windows-gnu" . #+(package-source rust-winapi-i686-pc-windows-gnu-0.4)) + ("winapi-i686-pc-windows-gnu" . #+(package-source rust-winapi-i686-pc-windows-gnu-0.4)) ("winapi-util" . #+(package-source rust-winapi-util-0.1)) - ;("winapi-x86_64-pc-windows-gnu" . #+(package-source rust-winapi-x86-64-pc-windows-gnu-0.4)) + ("winapi-x86_64-pc-windows-gnu" . #+(package-source rust-winapi-x86-64-pc-windows-gnu-0.4)) ;; xml-rs 0.8 ))) (format #t "Replacing vendored crates in the tarball and repacking ...~%") @@ -3805,7 +4175,20 @@ faster results and to avoid unnecessary server load.") (sha256 (base32 "1vxxvmz2cxb1qy6ibszaz5bskqdy9nd9fxspj9fv3gfmrjzzzdb4")) - (patches (search-patches "upower-builddir.patch")))) + (patches (search-patches "upower-builddir.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Upstream commit + ;; <https://cgit.freedesktop.org/upower/commit/?id=18457c99b68786cd729b315723d680e6860d9cfa> + ;; moved 'dbus-1/system.d' from etc/ to share/. However, + ;; 'dbus-configuration-directory' in (gnu services dbus) + ;; expects it in etc/. Thus, move it back to its previous + ;; location. + (substitute* "src/Makefile.in" + (("^dbusconfdir =.*$") + "dbusconfdir = $(sysconfdir)/dbus-1/system.d\n")) + #t)))) (build-system glib-or-gtk-build-system) (arguments '( ;; The tests want to contact the system bus, which can't be done in the @@ -4472,7 +4855,7 @@ for application developers.") (define-public grilo-plugins (package (name "grilo-plugins") - (version "0.3.3") + (version "0.3.10") (source (origin (method url-fetch) @@ -4481,44 +4864,41 @@ for application developers.") name "-" version ".tar.xz")) (sha256 (base32 - "172vr1y98d2mzlmg5akjn4ibrcj3gh22cwnb3cv9rvvzhj3yhrpy")))) - (build-system gnu-build-system) + "0jldaixc4kzycn5v8ixkjld1n0z3dp0l1p3vchgdwpvdvc7kcfw0")))) + (build-system meson-build-system) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-mkenums and glib-genmarshal - ("intltool" ,intltool) + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gtk+:bin" ,gtk+ "bin") ("itstool" ,itstool) ("pkg-config" ,pkg-config))) + ;; TODO: ahavi, gstreamer (inputs `(("grilo" ,grilo) - ("glib" ,glib) - ("libxml2" ,libxml2) - ("sqlite" ,sqlite) + ;("gmime" ,gmime) ; unused + ("gnome-online-accounts:lib" ,gnome-online-accounts "lib") ("gom" ,gom) - ;; XXX TODO: Add oauth - ;; XXX TODO: Add goa - ;; XXX TODO: Add gdata (e.g. needed for youtube plugin) - ;; XXX TODO: Add lua (needs help finding it) + ;("gssdp" ,gssdp) ; unused + ;("gupnp" ,gupnp) ; unused + ;("gupnp-av" ,gupnp-av) ; unused ("json-glib" ,json-glib) ("avahi" ,avahi) - ("gmime" ,gmime) + ("libgdata" ,libgdata) + ("libmediaart" ,libmediaart) + ;("librest" ,rest) ; unused ("libsoup" ,libsoup) - ("libarchive" ,libarchive) - ("totem-pl-parser" ,totem-pl-parser))) + ("totam-pl-parser" ,totem-pl-parser) + ("tracker" ,tracker))) ; unused because it's too old (arguments - `(#:make-flags (list (string-append "GRL_PLUGINS_DIR=" - %output - "/lib/grilo-" - ,(version-major+minor version))) - ;; XXX FIXME: Try to get the test suite working. It appears to require - ;; a working system dbus. Inside the build container, all tests fail - ;; with: "assertion failed: (source)". Outside of the build container, - ;; most tests succeed. - #:tests? #f)) + `(#:glib-or-gtk? #t + ;;Disable lua-factory as it needs missing dependencies + #:configure-flags '("-Denable-lua-factory=no"))) (home-page "https://live.gnome.org/Grilo") (synopsis "Plugins for the Grilo media discovery library") (description "Grilo is a framework focused on making media discovery and browsing easy -for application developers.") +for application developers. This package provides plugins for common media +discovery protocols.") (license license:lgpl2.1+))) (define-public totem @@ -6007,7 +6387,7 @@ Evolution (hence the name), but is now used by other packages as well.") ("gobject-introspection" ,gobject-introspection) ("intltool" ,intltool) ("pkg-config" ,pkg-config) - ("python" ,python-2) ; incompatible with Python 3 (print syntax) + ("python" ,python) ("vala" ,vala) ("xsltproc" ,libxslt))) (propagated-inputs @@ -6020,7 +6400,7 @@ Evolution (hence the name), but is now used by other packages as well.") `(("clutter" ,clutter) ("dconf" ,dconf) ("gtk+-2" ,gtk+-2) - ("python-pygobject" ,python2-pygobject))) + ("python-pygobject" ,python-pygobject))) (synopsis "Text entry and UI navigation application") (home-page "https://wiki.gnome.org/Projects/Caribou") (description @@ -7397,6 +7777,68 @@ associations for GNOME.") (license license:gpl3+) (home-page #f))) +(define-public libgovirt + (package + (name "libgovirt") + (version "0.3.6") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "19pb71pag3vsi83kbv8h08kimwym4hpw36kjl6a5ik5nk50mc8sg")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config))) + (inputs + `(("glib-networking" ,glib-networking) ; GIO plugin--for the tests + ("librest" ,rest))) + (synopsis "GoVirt Library") + (description "GoVirt is a GObject wrapper for the oVirt REST API.") + (home-page "https://gitlab.gnome.org/GNOME/libgovirt") + (license license:gpl2+))) + +(define-public gnome-weather + (package + (name "gnome-weather") + (version "3.34.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1g63xzs17i36if923b36k9fwbk0nqa5vz6zh1k6q2axrzhhpx1i4")))) + (build-system meson-build-system) + (native-inputs + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("pkg-config" ,pkg-config))) + (inputs + `( ;("adwaita-icon-theme" ,adwaita-icon-theme) + ("appstream-glib" ,appstream-glib) + ("geoclue" ,geoclue) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gjs" ,gjs) + ("gnome-desktop" ,gnome-desktop) + ("libgweather" ,libgweather))) + (synopsis "Weather monitoring for GNOME desktop") + (description "GNOME Weather is a small application that allows you to +monitor the current weather conditions for your city, or anywhere in the +world.") + (home-page "https://wiki.gnome.org/Apps/Weather") + (license license:gpl2+))) + (define-public gnome (package (name "gnome") @@ -7861,7 +8303,7 @@ functionality and behavior.") ("inkscape" ,inkscape) ("optipng" ,optipng) ("pkg-config" ,pkg-config) - ("sassc" ,sassc))) + ("sassc" ,sassc/libsass-3.5))) (synopsis "A flat GTK+ theme with transparent elements") (description "Arc is a flat theme with transparent elements for GTK 3, GTK 2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index 8050fee43e..43aad3ed02 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -37,6 +37,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) + #:use-module (gnu packages finance) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -76,6 +77,7 @@ ("libdbi" ,libdbi) ("libdbi-drivers" ,libdbi-drivers) ("libgnomecanvas" ,libgnomecanvas) + ("libofx" ,libofx) ("libxml2" ,libxml2) ("libxslt" ,libxslt) ("webkitgtk" ,webkitgtk) @@ -90,11 +92,12 @@ ("googletest" ,googletest) ("gnucash-docs" ,gnucash-docs) ("pkg-config" ,pkg-config))) + (propagated-inputs + ;; dconf is required at runtime according to README.dependencies. + `(("dconf" ,dconf))) (outputs '("out" "doc" "debug")) (arguments `(#:test-target "check" - #:configure-flags - (list "-DWITH_OFX=OFF") ; libofx is not available yet #:make-flags '("GUILE_AUTO_COMPILE=0") #:modules ((guix build cmake-build-system) ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 62b4390eab..ae0c58eedb 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> @@ -10,6 +10,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com> +;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -41,6 +42,7 @@ #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system cargo) + #:use-module (guix build-system trivial) #:use-module (gnu packages admin) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) @@ -756,6 +758,7 @@ from forcing GEXP-PROMISE." ;; and related comments in the 'remove-bundled-libraries' phase. ;; UNBUNDLE-ME! ("nspr" ,nspr) ;; UNBUNDLE-ME! ("nss" ,nss) + ("shared-mime-info" ,shared-mime-info) ("sqlite" ,sqlite) ("startup-notification" ,startup-notification) ("unzip" ,unzip) @@ -882,6 +885,10 @@ from forcing GEXP-PROMISE." (ice-9 match) (srfi srfi-34) (srfi srfi-35) + (rnrs bytevectors) + (rnrs io ports) + (guix elf) + (guix build gremlin) ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases @@ -966,11 +973,31 @@ from forcing GEXP-PROMISE." #t)) (add-after 'link-libxul-with-libraries 'fix-ffmpeg-runtime-linker (lambda* (#:key inputs #:allow-other-keys) - ;; Arrange to load libavcodec.so by its absolute file name. - (substitute* "dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp" - (("libavcodec\\.so") - (string-append (assoc-ref inputs "ffmpeg") "/lib/libavcodec.so"))) - #t)) + (let* ((ffmpeg (assoc-ref inputs "ffmpeg")) + (libavcodec (string-append ffmpeg "/lib/libavcodec.so"))) + ;; Arrange to load libavcodec.so by its absolute file name. + (substitute* "dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp" + (("libavcodec\\.so") + libavcodec)) + ;; Populate the sandbox read-path whitelist as needed by ffmpeg. + (let* ((mime-info (assoc-ref inputs "shared-mime-info")) + (libavcodec-runpath (call-with-input-file libavcodec + (compose elf-dynamic-info-runpath + elf-dynamic-info + parse-elf + get-bytevector-all))) + (whitelist (cons (string-append mime-info "/share/mime/") + (map (lambda (dir) + (string-append dir "/")) + libavcodec-runpath))) + (whitelist-string (string-join whitelist ",")) + (port (open-file "browser/app/profile/icecat.js" "a"))) + (format #t "setting 'security.sandbox.content.read_path_whitelist' to '~a'~%" + whitelist-string) + (format port "~%pref(\"security.sandbox.content.read_path_whitelist\", ~S);~%" + whitelist-string) + (close-output-port port)) + #t))) (replace 'bootstrap (lambda _ (invoke "sh" "-c" "autoconf old-configure.in > old-configure") @@ -1102,3 +1129,43 @@ standards of the IceCat project.") ;; The Conkeror web browser relied on XULRunner, which IceCat > 50 no longer ;; provides. See <http://conkeror.org> for the original web page. (deprecated-package "conkeror" icecat)) + +(define-public firefox-decrypt + (package + (name "firefox-decrypt") + (version "0.7.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Unode/firefox_decrypt.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17yyyxp47z4m8hnflcq34rc1y871515kr3f1y42j1l0yx3g0il07")))) + (build-system trivial-build-system) + (inputs + `(("nss" ,nss) + ("python" ,python))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (setenv "PATH" + (string-append + (assoc-ref %build-inputs "python") "/bin")) + (copy-file (string-append (assoc-ref %build-inputs "source") + "/firefox_decrypt.py") + "firefox_decrypt.py") + (substitute* "firefox_decrypt.py" + (("/usr/bin/env python") (which "python3")) + (("libnss3.so") (string-append (assoc-ref %build-inputs "nss") + "/lib/nss/libnss3.so"))) + (install-file "firefox_decrypt.py" (string-append %output "/bin")) + #t))) + (home-page "https://github.com/Unode/firefox_decrypt/") + (synopsis "Tool to extract passwords from Mozilla profiles") + (description "Firefox Decrypt is a tool to extract passwords from +Mozilla (Firefox, Waterfox, Thunderbird, SeaMonkey) profiles.") + (license license:gpl3+))) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index 4095926af3..982def62c6 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -183,7 +183,7 @@ model.") `(("r-graph" ,r-graph))) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://bioconductor.org/packages/Rgraphviz") + (home-page "https://bioconductor.org/packages/Rgraphviz") (synopsis "Plotting capabilities for R graph objects") (description "This package interfaces R with the graphviz library for plotting R graph diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index 3ef420cf05..217ccb4ece 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2017, 2018 Ben Woodcroft <donttrustben@gmail.com> -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Alex Kost <alezost@gmail.com> ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net> @@ -88,14 +88,14 @@ (define-public blender (package (name "blender") - (version "2.81") + (version "2.81a") (source (origin (method url-fetch) (uri (string-append "https://download.blender.org/source/" "blender-" version ".tar.xz")) (sha256 (base32 - "1prp0f2152f1sz23jlc86vndfvmplb7qhllikkirq7hgpykrshna")))) + "1zl0ar95qkxsrbqw9miz2hrjijlqjl06vg3clfk9rm7krr2l3b2j")))) (build-system cmake-build-system) (arguments (let ((python-version (version-major+minor (package-version python)))) diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index f9667e873b..365fe1a113 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -166,16 +167,31 @@ interfaces for other technical domains.") (define-public python-graphviz (package (name "python-graphviz") - (version "0.8.4") + (version "0.13.2") (source (origin (method url-fetch) (uri (pypi-uri "graphviz" version ".zip")) (sha256 (base32 - "17v8h7j2yz8hy1jf7q8p0ik8dmf32m58lc6v11x7aqc4pnfa2n29")))) + "009alrilzx0v7kl41khbq7k6k8b8pxyvbsi1b1ai933f6kpbxb30")))) (build-system python-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests #:allow-other-keys) + (if tests + (invoke "pytest" "-vv") + (format #t "test suite not run~%")) + #t))))) (native-inputs - `(("unzip" ,unzip))) + `(("unzip" ,unzip) + + ;; For tests. + ("graphviz" ,graphviz) + ("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-mock" ,python-pytest-mock))) (home-page "https://github.com/xflr6/graphviz") (synopsis "Simple Python interface for Graphviz") (description @@ -330,13 +346,13 @@ graphs in Graphviz's DOT language, written in pure Python.") (define-public dot2tex (package (name "dot2tex") - (version "2.9.0") + (version "2.11.3") (source (origin (method url-fetch) (uri (pypi-uri "dot2tex" version)) (sha256 (base32 - "0jhdwp0wv2h0xb7j2s5xiv7i8yaqgfpwwqcyrjvaxkfwsynm8gkx")))) + "1kp77wiv7b5qib82i3y3sn9r49rym43aaqm5aw1bwnzfbbq2m6i9")))) (build-system python-build-system) (arguments `(#:python ,python-2)) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index db88c84413..a3e19827f5 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1328,6 +1328,16 @@ produces identical output on all those targets.") `(("gtk+" ,gtk+-2))) (propagated-inputs `(("perl-pango" ,perl-pango))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'remove-broken-test + ;; See https://gitlab.gnome.org/GNOME/perl-gtk2/issues/3. + (lambda _ + (substitute* "t/GdkPixbuf.t" + (("tests => 112") "tests => 111") + (("ok \\(defined \\$pixbuf, \"Don't crash on partial pixmap data\"\\);") + "# ok (defined $pixbuf, \"Don't crash on partial pixmap data\");"))))))) (home-page "https://metacpan.org/release/Gtk2") (synopsis "Perl interface to the 2.x series of the Gimp Toolkit library") (description "Perl bindings to the 2.x series of the Gtk+ widget set. diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 80ff00b23b..e9a15babfb 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -496,7 +496,29 @@ Unix-style DSV format and RFC 4180 format.") version ".tar.gz")) (sha256 (base32 - "0vjkg72ghgdgphzbjz9ig8al8271rq8974viknb2r1rg4lz92ld0")))) + "0vjkg72ghgdgphzbjz9ig8al8271rq8974viknb2r1rg4lz92ld0")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Allow builds with Guile 3.0. + (substitute* "configure" + (("search=\"2\\.2\"") + "search=\"3.0 2.2\"")) + + ;; Explicitly include system headers rather than relying on + ;; <libguile.h> to do it for us. + (substitute* "epoll.c" + (("#include.*libguile\\.h.*$" all) + (string-append "#include <unistd.h>\n" + "#include <string.h>\n" + all "\n"))) + + ;; Import (ice-9 threads) for 'current-processor-count'. + (substitute* "tests/channels.scm" + (("#:use-module \\(fibers\\)") + (string-append "#:use-module (fibers)\n" + "#:use-module (ice-9 threads)\n"))) + #t)))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases @@ -532,6 +554,16 @@ is not available for Guile 2.0.") (home-page "https://github.com/wingo/fibers") (license license:lgpl3+))) +(define-public guile3.0-fibers + (package + (inherit guile-fibers) + (name "guile3.0-fibers") + (arguments + ;; The code uses 'scm_t_uint64' et al., which are deprecated in 3.0. + `(#:configure-flags '("CFLAGS=-Wno-error=deprecated-declarations") + ,@(package-arguments guile-fibers))) + (inputs `(("guile" ,guile-3.0))))) + (define-public guile-syntax-highlight (package (name "guile-syntax-highlight") @@ -544,7 +576,15 @@ is not available for Guile 2.0.") version ".tar.gz")) (sha256 (base32 - "1p771kq15x83483m23bhah1sz6vkalg3drm7x279f4j1cxligkzi")))) + "1p771kq15x83483m23bhah1sz6vkalg3drm7x279f4j1cxligkzi")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Allow builds with Guile 3.0. + (substitute* "configure" + (("2\\.2 2\\.0") + "3.0 2.2 2.0")) + #t)))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -558,6 +598,12 @@ HTML (via SXML) or any other format for rendering.") (home-page "http://dthompson.us/projects/guile-syntax-highlight.html") (license license:lgpl3+))) +(define-public guile3.0-syntax-highlight + (package + (inherit guile-syntax-highlight) + (name "guile3.0-syntax-highlight") + (inputs `(("guile" ,guile-3.0))))) + (define-public guile-sjson (package (name "guile-sjson") @@ -643,6 +689,12 @@ using Guile's foreign function interface.") "Guile-colorized provides you with a colorized REPL for GNU Guile.") (license license:gpl3+))) +(define-public guile3.0-colorized + (package + (inherit guile-colorized) + (name "guile3.0-colorized") + (native-inputs `(("guile" ,guile-next))))) + (define-public guile-pfds (package (name "guile-pfds") @@ -715,6 +767,45 @@ Vicare Scheme and IronScheme. Right now it contains: @end itemize\n") (license license:bsd-3))) +(define-public guile3.0-pfds + (package + (inherit guile-pfds) + (name "guile3.0-pfds") + (native-inputs `(("guile" ,guile-3.0))) + (arguments + '(#:source-directory "src" + #:compile-flags '("--r6rs") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'move-files-around + (lambda _ + ;; See bug #39210. + (substitute* '("fingertrees.sls" + "queues/private/condition.sls" + "deques/private/condition.sls") + (("&assertion") "&violation")) + ;; Move files under a pfds/ directory to reflect the module + ;; hierarchy. + (mkdir-p "src/pfds") + (for-each (lambda (file) + (rename-file file + (string-append "src/pfds/" + file))) + '("bbtrees.sls" + "deques" + "deques.sls" + "dlists.sls" + "fingertrees.sls" + "hamts.sls" + "heaps.sls" + "private" + "psqs.sls" + "queues" + "queues.sls" + "sequences.sls" + "sets.sls")) + #t))))))) + (define-public guile-aa-tree (package (name "guile-aa-tree") @@ -777,6 +868,12 @@ convenient nested tree operations.") messaging library.") (license license:gpl3+)))) +(define-public guile3.0-simple-zmq + (package + (inherit guile-simple-zmq) + (name "guile3.0-simple-zmq") + (native-inputs `(("guile" ,guile-next))))) + (define-public jupyter-guile-kernel (let ((commit "a7db9245a886e104138474df46c3e88b95cff629") (revision "1")) @@ -984,7 +1081,20 @@ format.") (file-name (git-file-name name version)) (sha256 (base32 - "1w7qy4dw1f4bx622l6hw8mv49sf1ha8kch8j4nganyk8fj0wn695")))) + "1w7qy4dw1f4bx622l6hw8mv49sf1ha8kch8j4nganyk8fj0wn695")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Allow builds with Guile 3.0. + (substitute* "configure.ac" + (("^GUILE_PKG.*") + "GUILE_PKG([3.0 2.2 2.0])\n")) + + ;; Remove "guile.m4" since it contains an obsolete version + ;; of 'GUILE_PKG' that doesn't work with development + ;; versions such as 2.9. + (delete-file "m4/guile.m4") + #t)))) (build-system gnu-build-system) (arguments '(#:make-flags @@ -1004,6 +1114,13 @@ Scheme by using Guile’s foreign function interface.") (home-page "https://gitlab.com/mothacehe/guile-newt") (license license:gpl3+))) +(define-public guile3.0-newt + (package + (inherit guile-newt) + (name "guile3.0-newt") + (inputs `(("guile" ,guile-next) + ,@(alist-delete "guile" (package-inputs guile-newt)))))) + (define-public guile-mastodon (package (name "guile-mastodon") @@ -1045,7 +1162,20 @@ microblogging service.") (file-name (git-file-name name version)) (sha256 (base32 - "01qmv6xnbbq3wih0dl9bscvca2d7zx7bjiqf35y6dkaqsp8nvdxf")))) + "01qmv6xnbbq3wih0dl9bscvca2d7zx7bjiqf35y6dkaqsp8nvdxf")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Allow builds with Guile 3.0. + (substitute* "configure.ac" + (("^GUILE_PKG.*") + "GUILE_PKG([3.0 2.2 2.0])\n")) + + ;; Remove "guile.m4" since it contains an obsolete version + ;; of 'GUILE_PKG' that doesn't work with development + ;; versions such as 2.9. + (delete-file "m4/guile.m4") + #t)))) (build-system gnu-build-system) (arguments '(#:make-flags @@ -1067,6 +1197,15 @@ written in pure Scheme by using Guile's foreign function interface.") (home-page "https://gitlab.com/mothacehe/guile-parted") (license license:gpl3+))) +(define-public guile3.0-parted + (package + (inherit guile-parted) + (name "guile3.0-parted") + (inputs `(("guile" ,guile-next) + ,@(alist-delete "guile" (package-inputs guile-parted)))) + (propagated-inputs + `(("guile-bytestructures" ,guile3.0-bytestructures))))) + (define-public guile-xosd (package (name "guile-xosd") @@ -1236,15 +1375,16 @@ PostgreSQL.") (define-public guile-config (package (name "guile-config") - (version "0.3") + (version "0.3.1") (source (origin (method git-fetch) (uri (git-reference (url "https://gitlab.com/a-sassmannshausen/guile-config") - (commit "ce12de3f438c6b2b59c43ee21bcd58251835fdf3"))) - (file-name "guile-config-0.3-checkout") - (sha256 (base32 "02zbpin0r9m2vxmr7mv68v3xdn247dcck56kbzjn0gj4c2rhih85")))) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 (base32 + "0gglsqwpw77gvrqcny8irpqfl7qdf2v8n9ggwrswanxalj4vcbvf")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -1266,10 +1406,17 @@ above command-line parameters.") "https://gitlab.com/a-sassmannshausen/guile-config") (license license:gpl3+))) +(define-public guile3.0-config + (package + (inherit guile-config) + (name "guile3.0-config") + (inputs `(("guile" ,guile-next) + ,@(alist-delete "guile" (package-inputs guile-config)))))) + (define-public guile-hall (package (name "guile-hall") - (version "0.2") + (version "0.2.1") (source (origin (method git-fetch) @@ -1278,7 +1425,7 @@ above command-line parameters.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 - "1bkbqgj24xh5b65sw2m98iggpi67b72szx1dsiq3cpzlcxplmgaz")))) + "0dwx5iyg0dmdf64wq0b4w306bapr86jwnw35npgbjq4cqm8qbzqn")))) (build-system gnu-build-system) (arguments `(#:modules @@ -1344,6 +1491,17 @@ provides tight coupling to Guix.") (home-page "https://gitlab.com/a-sassmannshausen/guile-hall") (license license:gpl3+))) +(define-public guile3.0-hall + (package + (inherit guile-hall) + (name "guile3.0-hall") + (inputs `(("guile" ,guile-next) + ,@(alist-delete "guile" (package-inputs guile-hall)))) + (propagated-inputs + `(("guile-config" ,guile3.0-config) + ,@(alist-delete "guile-config" + (package-propagated-inputs guile-hall)))))) + (define-public guile-ics (package (name "guile-ics") @@ -1450,6 +1608,22 @@ whitespace-significant language. It may be easier on the eyes for some users and in some situations.") (license license:gpl3+))) +(define-public guile3.0-wisp + (package + (inherit guile-wisp) + (name "guile3.0-wisp") + (inputs `(("guile" ,guile-3.0))) + (arguments + (substitute-keyword-arguments (package-arguments guile-wisp) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'support-guile-3.0 + (lambda _ + (substitute* "configure" + (("_guile_versions_to_search=\"2.2") + "_guile_versions_to_search=\"3.0 2.2")) + #t)))))))) + (define-public guile-sly (package (name "guile-sly") @@ -1906,7 +2080,15 @@ key-value cache and store.") "/" name "-" version ".tar.gz")) (sha256 (base32 - "17lrsdisa3kckh24q114vfmzdc4wkqa6ccwl4hdlrng5wpn1iman")))) + "17lrsdisa3kckh24q114vfmzdc4wkqa6ccwl4hdlrng5wpn1iman")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Allow builds with Guile 3.0. + (substitute* "configure" + (("2\\.2 2\\.0") + "3.0 2.2 2.0")) + #t)))) (build-system gnu-build-system) (inputs `(("guile" ,guile-2.2))) @@ -1922,6 +2104,12 @@ is no support for parsing block and inline level HTML.") (home-page "https://github.com/OrangeShark/guile-commonmark") (license license:lgpl3+))) +(define-public guile3.0-commonmark + (package + (inherit guile-commonmark) + (name "guile3.0-commonmark") + (inputs `(("guile" ,guile-3.0))))) + (define-public guile2.0-commonmark (package (inherit guile-commonmark) @@ -2010,6 +2198,12 @@ format is also supported.") The picture values can directly be displayed in Geiser.") (license license:lgpl3+)))) +(define-public guile3.0-picture-language + (package + (inherit guile-picture-language) + (name "guile3.0-picture-language") + (inputs `(("guile" ,guile-3.0))))) + (define-public guile-studio (package (name "guile-studio") diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bcb8ff1a56..c8c44b7fcb 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -283,19 +283,19 @@ without requiring the source code to be rewritten.") (base32 "07p3g0v2ba2vlfbfidqzlgbhnzdx46wh2rgc5gszq1mjyx5bks6r")))))) -(define-public guile-next - ;; This is the upcoming Guile 3.0, with JIT support. +(define-public guile-3.0 + ;; This is the latest Guile stable version. (package (inherit guile-2.2) - (name "guile-next") - (version "2.9.8") + (name "guile-next") ;to be renamed to "guile" + (version "3.0.0") (source (origin (inherit (package-source guile-2.2)) - (uri (string-append "ftp://alpha.gnu.org/gnu/guile/guile-" + (uri (string-append "ftp://ftp.gnu.org/gnu/guile/guile-" version ".tar.xz")) (sha256 (base32 - "09icv9ymdb7hchn34c32s7x8ycilqj74mirmi4b3bm5zp1izd32a")))) + "0x8ca6q1qdmk29lh12gj6ngvgn7kp79w42rxfgwrpxm9jmjqs4y9")))) (native-search-paths (list (search-path-specification (variable "GUILE_LOAD_PATH") @@ -303,13 +303,13 @@ without requiring the source code to be rewritten.") (search-path-specification (variable "GUILE_LOAD_COMPILED_PATH") (files '("lib/guile/3.0/site-ccache" - "share/guile/site/3.0"))))) - (properties '((ftp-server . "alpha.gnu.org") - (upstream-name . "guile"))))) + "share/guile/site/3.0"))))))) -(define (make-guile-readline guile) +(define-public guile-next guile-3.0) + +(define* (make-guile-readline guile #:optional (name "guile-readline")) (package - (name "guile-readline") + (name name) (version (package-version guile)) (source (package-source guile)) (build-system gnu-build-system) @@ -366,6 +366,9 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its (define-public guile-readline (make-guile-readline guile-2.2)) +(define-public guile3.0-readline + (make-guile-readline guile-next "guile3.0-readline")) + (define (guile-variant-package-name prefix) (lambda (name) "Return NAME with PREFIX instead of \"guile-\", when applicable." @@ -595,8 +598,16 @@ Guile's foreign function interface.") "0q0habjiy3h9cigb7q1br9kz6z212dn2ab31f6dgd3rrmsfn5rvb")))) (build-system gnu-build-system) (arguments - '(#:make-flags - '("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings + `(#:make-flags '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings + + #:phases (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (package ,(package-full-name this-package "-")) + (doc (string-append out "/share/doc/" package))) + (install-file "README.md" doc) + #t)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -623,36 +634,19 @@ type system, elevating types to first-class status.") (define-public guile-git (package (name "guile-git") - (version "0.2.0") + (version "0.3.0") (home-page "https://gitlab.com/guile-git/guile-git.git") (source (origin - (method git-fetch) - (uri (git-reference (url home-page) - (commit (string-append "v" version)))) + (method url-fetch) + (uri (string-append "https://gitlab.com/guile-git/guile-git/uploads/" + "4c563d8e7e1ff84396abe8ca7011bcaf/guile-git-" + version ".tar.gz")) (sha256 (base32 - "018hmfsh0rjwfvr4h7y10jc6k8a2k9xsirngghy3pjasin4nd2yz")) - (file-name (git-file-name name version)) - (modules '((guix build utils))) - (snippet - '(begin - ;; Allow builds with Guile 3.0. - (substitute* "configure.ac" - (("^GUILE_PKG.*") - "GUILE_PKG([3.0 2.2 2.0])\n")) - - ;; The 'guile.m4' that's shipped is too old and fails to - ;; recognize Guile 2.9/3.0. Delete it and pick the one - ;; provided by the Guile we're using. - (delete-file "m4/guile.m4") - - #t)))) + "0c5i3d16hp7gp9rd78vk9zc45js8bphf92m4lbb5gyi4l1yl7kkm")))) (build-system gnu-build-system) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("texinfo" ,texinfo) - ("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.2) ("libgit2" ,libgit2))) diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm index dab49c7cc0..4c9c45bc48 100644 --- a/gnu/packages/hardware.scm +++ b/gnu/packages/hardware.scm @@ -238,7 +238,7 @@ be dangerous and may void your CPU or system board's warranty.") (define-public wavemon (package (name "wavemon") - (version "0.9.0") + (version "0.9.1") (source (origin (method git-fetch) @@ -247,7 +247,7 @@ be dangerous and may void your CPU or system board's warranty.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "07cid0h3mcyr74nnrzzf8k5n1p9a4y3wij43jbiaqmkpxilcc1i6")))) + (base32 "109ycwnjjqc2vpnd8b86njfifczlxglnyv4rh2qmbn2i5nw2wryg")))) (build-system gnu-build-system) (arguments `(#:make-flags diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 3a9880f58c..fd2f11ce72 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -2797,7 +2797,7 @@ providing an @code{rnf} implementation.") (native-inputs `(("ghc-hspec" ,ghc-hspec) ("ghc-quickcheck" ,ghc-quickcheck))) - (home-page "http://hackage.haskell.org/package/dense-linear-algebra") + (home-page "https://hackage.haskell.org/package/dense-linear-algebra") (synopsis "Simple and incomplete implementation of linear algebra") (description "This library is simply a collection of linear-algebra related modules split from the statistics library.") @@ -5008,7 +5008,7 @@ combine hash values.") `(#:cabal-revision ("2" "006phc5y9rrvsshdcmjmhxzxh8dpgs685mpqbkjm9c40xb1ydjbz"))) (inputs `(("ghc-hashable" ,ghc-hashable))) - (home-page "http://hackage.haskell.org/package/hashable-time") + (home-page "https://hackage.haskell.org/package/hashable-time") (synopsis "Hashable instances for Data.Time") (description "This package provides @code{Hashable} instances for types in @@ -7194,7 +7194,7 @@ used both from lens and microlens).") `(("ghc-errorcall-eq-instance" ,ghc-errorcall-eq-instance) ("ghc-quickcheck" ,ghc-quickcheck) ("ghc-hunit" ,ghc-hunit))) - (home-page "http://software.complete.org/missingh") + (home-page "https://software.complete.org/missingh") (synopsis "Large utility library") (description "MissingH is a library of all sorts of utility functions for Haskell @@ -9890,7 +9890,7 @@ award winning Linux port of \"Civilization: Call To Power.\"") (native-inputs `(("ghc-weigh" ,ghc-weigh) ("pkg-config" ,pkg-config))) - (home-page "http://hackage.haskell.org/package/sdl2") + (home-page "https://hackage.haskell.org/package/sdl2") (synopsis "High- and low-level bindings to the SDL library") (description "This package contains bindings to the SDL 2 library, in both high- and diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index eef2866b4b..85d3a153e7 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> @@ -12,6 +12,7 @@ ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com> ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> +;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,11 +41,15 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages algebra) #:use-module (gnu packages boost) + #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages curl) + #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) @@ -59,6 +64,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) #:use-module (gnu packages)) @@ -455,16 +461,16 @@ including CBZ, CB7, CBT, LHA.") (define-public qview (package (name "qview") - (version "2.0") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/jurplel/qView.git") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1s29hz44rb5dwzq8d4i4bfg77dr0v3ywpvidpa6xzg7hnnv3mhi5")))) + (version "3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jurplel/qView.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "15a91bs3wcqhgf76wzigbn10hayg628j84pq4j2vaxar94ak0vk7")))) (build-system gnu-build-system) (arguments `(#:phases @@ -524,3 +530,69 @@ including animated GIFs, into ANSI/Unicode character output that can be displayed in a terminal.") (home-page "https://hpjansson.org/chafa/") (license license:lgpl3+))) + +(define-public imv + (package + (name "imv") + (version "4.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/eXeC64/imv") + (commit (string-append "v" version)))) + (sha256 + (base32 + "0gk8g178i961nn3bls75a8qpv6wvfvav6hd9lxca1skaikd33zdx")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'install 'record-absolute-file-names + (lambda* (#:key outputs #:allow-other-keys) + ;; 'imv' is a script that execs 'imv-x11' or 'imv-wayland'. + ;; Record their absolute file name. + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (substitute* (string-append bin "/imv") + (("imv-") + (string-append bin "/imv-"))) + #t)))) + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "CONFIGPREFIX=" + (assoc-ref %outputs "out") "/etc")))) + (inputs + `(("asciidoc" ,asciidoc) + ("freeimage" ,freeimage) + ("glu" ,glu) + ("librsvg" ,librsvg) + ("libxkbcommon" ,libxkbcommon) + ("pango" ,pango) + ("wayland" ,wayland))) + (native-inputs + `(("cmocka" ,cmocka) + ("pkg-config" ,pkg-config))) + (synopsis "Image viewer for tiling window managers") + (description "@code{imv} is a command line image viewer intended for use +with tiling window managers. Features include: + +@itemize +@item Native Wayland and X11 support. +@item Support for dozens of image formats including: +@itemize +@item PNG +@item JPEG +@item Animated GIFs +@item SVG +@item TIFF +@item Various RAW formats +@item Photoshop PSD files +@end itemize +@item Configurable key bindings and behavior. +@item Highly scriptable with IPC via imv-msg. +@end itemize\n") + (home-page "https://github.com/eXeC64/imv") + (license license:expat))) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 6306a3d20b..a79d63fb5d 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2014, 2017 John Darrington <jmd@gnu.org> ;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> @@ -321,7 +321,7 @@ and other PNG optimizers.") (define-public pngquant (package (name "pngquant") - (version "2.12.3") + (version "2.12.6") (source (origin (method git-fetch) @@ -330,7 +330,7 @@ and other PNG optimizers.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1yiwbcihn4311fpfd568gg8zmmhqwg80jmhbhkb5msiipgd9xv33")))) + (base32 "15hanshahxqs6s9fyc3aym02251dcys7bf78g3inp0y233amdbl3")))) (build-system gnu-build-system) (arguments `(#:test-target "test" diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index c4cbcbdc1b..6abd0c8360 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -1,4 +1,3 @@ - ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> @@ -6809,7 +6808,7 @@ printed.") (version "2.7.7") (source (origin (method url-fetch) - (uri (string-append "http://www.antlr2.org/download/antlr-" + (uri (string-append "https://www.antlr2.org/download/antlr-" version ".tar.gz")) (sha256 (base32 @@ -6856,7 +6855,7 @@ printed.") ("java" ,icedtea "jdk"))) (inputs `(("java" ,icedtea))) - (home-page "http://www.antlr2.org") + (home-page "https://www.antlr2.org") (synopsis "Framework for constructing recognizers, compilers, and translators") (description "ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) is a language tool that provides a framework for constructing recognizers, @@ -7080,7 +7079,7 @@ import org.antlr.grammar.v3.ANTLRTreePrinter;")) `(("stringtemplate" ,java-stringtemplate-3) ("antlr" ,antlr2) ("stringtemplate4" ,java-stringtemplate-4.0.6))) - (home-page "http://www.antlr3.org") + (home-page "https://www.antlr3.org") (synopsis "Framework for constructing recognizers, compilers, and translators") (description "ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) is a language tool that provides a framework for constructing recognizers, @@ -8970,7 +8969,7 @@ file when the JVM loads it.") #:jdk ,icedtea-8 #:tests? #f; requires testng which depends on jcommander #:source-dir "src/main/java")) - (home-page "http://jcommander.org") + (home-page "https://jcommander.org") (synopsis "Command line parameters parser") (description "JCommander is a very small Java framework that makes it trivial to parse command line parameters. Parameters are declared with diff --git a/gnu/packages/lean.scm b/gnu/packages/lean.scm index 235113d475..e71b4c93ae 100644 --- a/gnu/packages/lean.scm +++ b/gnu/packages/lean.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2019 Amin Bandali <bandali@gnu.org> +;;; Copyright © 2019 Amin Bandali <mab@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 038031b800..93474dbdbf 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -75,7 +75,6 @@ #:use-module (gnu packages perl-compression) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) - #:use-module (gnu packages python-xyz) #:use-module (gnu packages rdf) #:use-module (gnu packages scanner) #:use-module (gnu packages tls) diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index 878f9e58ed..abf11400e3 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -525,14 +525,16 @@ devices.") (define-public hidapi (package (name "hidapi") - (version "0.8.0-rc1") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/signal11/hidapi/archive/hidapi-" - version ".tar.gz")) - (sha256 - (base32 - "0qdgyj9rgb7n0nk3ghfswrhzzknxqn4ibn3wj8g4r828pw07451w")))) + (version "0.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libusb/hidapi.git") + (commit (string-append "hidapi-" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1p4g8lgwj4rki6lbn5l6rvwj0xlbn1xfh4d255bg5pvgczmwmc4i")))) (build-system gnu-build-system) (inputs `(("libusb" ,libusb) @@ -542,7 +544,7 @@ devices.") ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) - (home-page "http://www.signal11.us/oss/hidapi/") + (home-page "https://github.com/libusb/hidapi") (synopsis "HID API library") (description "HIDAPI is a library which allows an application to interface with USB and Bluetooth diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 7242894f46..4f8400ba53 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> @@ -357,42 +357,42 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." "linux-" version ".tar.xz")) (sha256 hash))) -(define-public linux-libre-5.4-version "5.4.10") +(define-public linux-libre-5.4-version "5.4.13") (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1p9f0h9fl1xy13dag1x7j2ic8kdv0zsp42c8baxn7cz3llc04g7j"))) + (hash (base32 "1mva73ywb2r5lrmzp5m7hyy0zpgxdg91nw42c1z1sz3ydpcjkys9"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.94") +(define-public linux-libre-4.19-version "4.19.97") (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "0rvlz94mjl7ygpmhz0yn2whx9dq9fmy0w1472bj16hkwbaki0an6"))) + (hash (base32 "1nln2ksfm0ddkqdmhvxwzqq96av1myx89kr1wxs54m2yw0la7clg"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.163") +(define-public linux-libre-4.14-version "4.14.166") (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "0jdh54rqdsb3b908v2q4xjn8y45b7rdnwgab0s4qf5alznfcqagb"))) + (hash (base32 "003wax7dsahlv1iv9yqhkjbxx20crmwyd9464cx974i03a0vzclb"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.208") +(define-public linux-libre-4.9-version "4.9.210") (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "0njjw1i8dilihn1hz62zra4b9y05fb3r2k2sqlkd0wfn86c1rbdp"))) + (hash (base32 "04skcbbp1yv54hwipa1pjx04lb21013r0lh2swycq0kdhc1m54d0"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.208") +(define-public linux-libre-4.4-version "4.4.210") (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "03jj91z5dc0ybpjy9w6aanb3k53gcj7gsjc32h3ldf72hlmgz6aq"))) + (hash (base32 "1pg754s3138d2lq5y2zd1z7dagdy8pl4ifmp0754sa1rkjd3h0ns"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -927,7 +927,7 @@ and should be used with caution, especially on untested models.") (define-public vhba-module (package (name "vhba-module") - (version "20190831") + (version "20200106") (source (origin (method url-fetch) (uri (string-append @@ -935,7 +935,7 @@ and should be used with caution, especially on untested models.") version ".tar.bz2")) (sha256 (base32 - "1ybbk6l06n0y11n5wnfmvdz0baizmq55l458ywimghdyz0n7g0ws")))) + "10rlvsfj0fw6n0qmwcnvhimqnsnhi7n55lyl7fq1pkwggf5218sr")))) (build-system linux-module-build-system) (arguments ;; TODO: No tests? @@ -1316,7 +1316,7 @@ slabtop, and skill.") (define-public e2fsprogs (package (name "e2fsprogs") - (version "1.45.4") + (version "1.45.5") (source (origin (method url-fetch) (uri (string-append @@ -1325,7 +1325,7 @@ slabtop, and skill.") name "-" version ".tar.xz")) (sha256 (base32 - "00nwl1ppjalxbnx40dsm895r3q793p8nni6n81saj7faj2szdyk5")))) + "1pmf8inp736l587rqq7qsd8bv0mmg5cwrivxg5p5awqgv70crypr")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (native-inputs `(("pkg-config" ,pkg-config) @@ -3662,7 +3662,7 @@ arrays when needed.") (define-public multipath-tools (package (name "multipath-tools") - (version "0.8.2") + (version "0.8.3") (source (origin (method url-fetch) (uri (string-append "https://git.opensvc.com/?p=multipath-tools/" @@ -3670,7 +3670,7 @@ arrays when needed.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0kb4mhzwyygdbikikmby6hj39pb3nrzv05v526c75wnycwnpxg31")) + "1c6ay97wlfv1fl0y8hcfpxhkps14hlnw9gzmj7884micsp7pa9yv")) (modules '((guix build utils))) (snippet '(begin @@ -4686,7 +4686,7 @@ not as a replacement for it.") ("cryptsetup" ,cryptsetup) ("lvm2" ,lvm2) ("nss" ,nss))) - (home-page "http://ecryptfs.org/") + (home-page "https://ecryptfs.org/") (synopsis "eCryptfs cryptographic file system utilities") (description "eCryptfs is a POSIX-compliant stacked cryptographic file system for Linux. @@ -4764,14 +4764,14 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.") (define-public mcelog (package (name "mcelog") - (version "154") + (version "168") (source (origin (method url-fetch) (uri (string-append "https://git.kernel.org/cgit/utils/cpu/mce/" "mcelog.git/snapshot/v" version ".tar.gz")) (sha256 (base32 - "07628cr05f50m7lsvw26wxlnb7qcl0x6rymdpp5spqzhz91l58p3")) + "1c4faayg1gcm3002b2fdrfnv76z92mvfzccvx8w9crjp0d17sp24")) (file-name (string-append name "-" version ".tar.gz")) (modules '((guix build utils))) (snippet @@ -5459,14 +5459,14 @@ available in the kernel Linux.") (define-public cpuid (package (name "cpuid") - (version "20180519") + (version "20200116") (source (origin (method url-fetch) (uri (string-append "http://www.etallen.com/cpuid/cpuid-" version ".src.tar.gz")) (sha256 (base32 - "16pzwyifc9glpk1hm6bqb5d1a7cw0qnqiamh5sbvqg7j6sz26y4n")))) + "1gxi4iwy6j366l6bkj1yyxhrk1rxmwfp498gikfxn8xwhij9dn0a")))) (build-system gnu-build-system) (arguments '(#:make-flags '("CC=gcc") @@ -5974,10 +5974,10 @@ IP addresses and routes, and configure IPsec.") (lambda _ (invoke "make" "install-dev")))))) (native-inputs - `(("gettext" ,gettext-minimal) - ("util-linux" ,util-linux))) + `(("gettext" ,gettext-minimal))) (inputs - `(("python" ,python-wrapper))) + `(("libuuid" ,util-linux) + ("python" ,python-wrapper))) (home-page "https://xfs.wiki.kernel.org/") (synopsis "XFS file system tools") (description "This package provides commands to create and check XFS diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index cffd43cfc7..d0cc685969 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -51,6 +51,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) + #:use-module (gnu packages libevent) #:use-module (gnu packages libffi) #:use-module (gnu packages lisp) #:use-module (gnu packages maths) @@ -1668,7 +1669,7 @@ also be supported.") (define-public sbcl-ironclad (package (name "sbcl-ironclad") - (version "0.46") + (version "0.48") (source (origin (method git-fetch) @@ -1677,7 +1678,7 @@ also be supported.") (commit (string-append "v" version)))) (sha256 (base32 - "1s391awi2lsl7m1dbjirgpkm4p9p8wd076pakgvsvpn1rrznisnd")) + "1wzczpgvgjc5h8ghz75kxi7iykmqxqchdhgdhkif9j99kyqvbyam")) (file-name (git-file-name name version)))) (build-system asdf-build-system/sbcl) (native-inputs @@ -1685,8 +1686,7 @@ also be supported.") `(("rt" ,sbcl-rt))) (inputs `(("bordeaux-threads" ,sbcl-bordeaux-threads) - ("flexi-streams" ,sbcl-flexi-streams) - ("nibbles" ,sbcl-nibbles))) + ("flexi-streams" ,sbcl-flexi-streams))) (synopsis "Cryptographic toolkit written in Common Lisp") (description "Ironclad is a cryptography library written entirely in Common Lisp. @@ -9168,3 +9168,544 @@ visualization.") (define-public cl-ana (sbcl-package->cl-source-package sbcl-cl-ana)) + +(define-public sbcl-archive + (let ((commit "631271c091ed02994bec3980cb288a2cf32c7cdc") + (revision "1")) + (package + (name "sbcl-archive") + (version (git-version "0.9" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sharplispers/archive.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0pvsc9fmybx7rxd0kmzq4shi6hszdpwdc1sfy7jwyfxf8n3hnv4p")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("cl-fad" ,sbcl-cl-fad) + ("trivial-gray-streams" ,sbcl-trivial-gray-streams))) + (synopsis "Common Lisp library for tar and cpio archives") + (description + "This is a Common Lisp library to read and write disk-based file +archives such as those generated by the tar and cpio programs on Unix.") + (home-page "https://github.com/sharplispers/archive") + (license license:bsd-3)))) + +(define-public cl-archive + (sbcl-package->cl-source-package sbcl-archive)) + +(define-public ecl-archive + (sbcl-package->ecl-package sbcl-archive)) + +(define-public sbcl-misc-extensions + (let ((commit "101c05112bf2f1e1bbf527396822d2f50ca6327a") + (revision "1")) + (package + (name "sbcl-misc-extensions") + (version (git-version "3.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.common-lisp.net/misc-extensions/devel.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0gz5f4p70qzilnxsnf5lih2n9m4wjcw8hlw4w8mpn9jyhyppyyv0")))) + (build-system asdf-build-system/sbcl) + (synopsis "Collection of small macros and extensions for Common Lisp") + (description + "This project is intended as a catchall for small, general-purpose +extensions to Common Lisp. It contains: + +@itemize +@item @code{new-let}, a macro that combines and generalizes @code{let}, +@code{let*} and @code{multiple-value-bind}, +@item @code{gmap}, an iteration macro that generalizes @code{map}. +@end itemize\n") + (home-page "https://common-lisp.net/project/misc-extensions/") + (license license:public-domain)))) + +(define-public cl-misc-extensions + (sbcl-package->cl-source-package sbcl-misc-extensions)) + +(define-public ecl-misc-extensions + (sbcl-package->ecl-package sbcl-misc-extensions)) + +(define-public sbcl-mt19937 + (package + (name "sbcl-mt19937") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://common-lisp.net/project/asdf-packaging/" + "mt19937-latest.tar.gz")) + (sha256 + (base32 + "1iw636b0iw5ygkv02y8i41lh7xj0acglv0hg5agryn0zzi2nf1xv")))) + (build-system asdf-build-system/sbcl) + (synopsis "Mersenne Twister pseudo-random number generator") + (description + "MT19937 is a portable Mersenne Twister pseudo-random number generator +for Common Lisp.") + (home-page "https://www.cliki.net/mt19937") + (license license:public-domain))) + +(define-public cl-mt19937 + (sbcl-package->cl-source-package sbcl-mt19937)) + +(define-public ecl-mt19937 + (sbcl-package->ecl-package sbcl-mt19937)) + +(define-public sbcl-fset + (let ((commit "6d2f9ded8934d2b42f2571a0ba5bda091037d852") + (revision "1")) + (package + (name "sbcl-fset") + (version (git-version "1.3.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/slburson/fset") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "127acblwrbqicx47h6sgvknz1cqyfn8p4xkhkn1m7hxh8w5gk1zy")) + (snippet '(begin + ;; Remove obsolete copy of system definition. + (delete-file "Code/fset.asd") + #t)))) + (build-system asdf-build-system/sbcl) + (inputs + `(("misc-extensions" ,sbcl-misc-extensions) + ("mt19937" ,sbcl-mt19937) + ("named-readtables" ,sbcl-named-readtables))) + (synopsis "Functional set-theoretic collections library") + (description + "FSet is a functional set-theoretic collections library for Common Lisp. +Functional means that all update operations return a new collection rather than +modifying an existing one in place. Set-theoretic means that collections may +be nested arbitrarily with no additional programmer effort; for instance, sets +may contain sets, maps may be keyed by sets, etc.") + (home-page "https://common-lisp.net/project/fset/Site/index.html") + (license license:llgpl)))) + +(define-public cl-fset + (sbcl-package->cl-source-package sbcl-fset)) + +(define-public sbcl-cl-cont + (let ((commit "fc1fa7e6eb64894fdca13e688e6015fad5290d2a") + (revision "1")) + (package + (name "sbcl-cl-cont") + (version (git-version "0.3.8" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.common-lisp.net/cl-cont/cl-cont.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1zf8zvb0i6jm3hhfks4w74hibm6avgc6f9s1qwgjrn2bcik8lrvz")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("closer-mop" ,sbcl-closer-mop))) + (native-inputs + `(("rt" ,sbcl-rt))) + (synopsis "Delimited continuations for Common Lisp") + (description + "This is a library that implements delimited continuations by +transforming Common Lisp code to continuation passing style.") + (home-page "https://common-lisp.net/project/cl-cont/") + (license license:llgpl)))) + +(define-public cl-cont + (sbcl-package->cl-source-package sbcl-cl-cont)) + +(define-public ecl-cl-cont + (sbcl-package->ecl-package sbcl-cl-cont)) + +(define-public sbcl-cl-coroutine + (let ((commit "de098f8d5debd8b14ef6864b5bdcbbf5ddbcfd72") + (revision "1")) + (package + (name "sbcl-cl-coroutine") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/takagi/cl-coroutine.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1cqdhdjxffgfs116l1swjlsmcbly0xgcgrckvaajd566idj9yj4l")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("cl-cont" ,sbcl-cl-cont))) + (native-inputs + `(("prove" ,sbcl-prove))) + (arguments + `(;; TODO: Fix the tests. They fail with: + ;; "Component CL-COROUTINE-ASD::CL-COROUTINE-TEST not found" + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* "cl-coroutine-test.asd" + (("cl-test-more") + "prove")) + #t))))) + (synopsis "Coroutine library for Common Lisp") + (description + "This is a coroutine library for Common Lisp implemented using the +continuations of the @code{cl-cont} library.") + (home-page "https://github.com/takagi/cl-coroutine") + (license license:llgpl)))) + +(define-public cl-coroutine + (sbcl-package->cl-source-package sbcl-cl-coroutine)) + +(define-public ecl-cl-coroutine + (sbcl-package->ecl-package sbcl-cl-coroutine)) + +(define-public sbcl-vom + (let ((commit "1aeafeb5b74c53741b79497e0ef4acf85c92ff24") + (revision "1")) + (package + (name "sbcl-vom") + (version (git-version "0.1.4" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orthecreedence/vom.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0536kppj76ax4lrxhv42npkfjsmx45km2g439vf9jmw3apinz9cy")))) + (build-system asdf-build-system/sbcl) + (synopsis "Tiny logging utility for Common Lisp") + (description + "Vom is a logging library for Common Lisp. It's goal is to be useful +and small. It does not provide a lot of features as other loggers do, but +has a small codebase that's easy to understand and use.") + (home-page "https://github.com/orthecreedence/vom") + (license license:expat)))) + +(define-public cl-vom + (sbcl-package->cl-source-package sbcl-vom)) + +(define-public ecl-vom + (sbcl-package->ecl-package sbcl-vom)) + +(define-public sbcl-cl-libuv + (let ((commit "32100c023c518038d0670a103eaa4d50dd785d29") + (revision "1")) + (package + (name "sbcl-cl-libuv") + (version (git-version "0.1.6" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orthecreedence/cl-libuv.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1kwix4si8a8hza34ab2k7whrh7z0yrmx39v2wc3qblv9m244jkh1")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("cffi" ,sbcl-cffi) + ("cffi-grovel" ,sbcl-cffi-grovel) + ("libuv" ,libuv))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "lib.lisp" + (("/usr/lib/libuv.so") + (string-append (assoc-ref inputs "libuv") + "/lib/libuv.so"))) + #t)) + (add-after 'fix-paths 'fix-system-definition + (lambda _ + (substitute* "cl-libuv.asd" + (("#:cffi #:alexandria") + "#:cffi #:cffi-grovel #:alexandria")) + #t))))) + (synopsis "Common Lisp bindings to libuv") + (description + "This library provides low-level libuv bindings for Common Lisp.") + (home-page "https://github.com/orthecreedence/cl-libuv") + (license license:expat)))) + +(define-public cl-libuv + (sbcl-package->cl-source-package sbcl-cl-libuv)) + +(define-public ecl-cl-libuv + (sbcl-package->ecl-package sbcl-cl-libuv)) + +(define-public sbcl-cl-async-base + (let ((commit "f6423e44404a44434d803605e0d2e17199158e28") + (revision "1")) + (package + (name "sbcl-cl-async-base") + (version (git-version "0.6.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orthecreedence/cl-async.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11xi9dxb8mjgwzrkj88i0xkgk26z9w9ddxzbv6xsvfc1d4x5cf4x")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("bordeaux-threads" ,sbcl-bordeaux-threads) + ("cffi" ,sbcl-cffi) + ("cl-libuv" ,sbcl-cl-libuv))) + (arguments + `(#:asd-file "cl-async.asd")) + (synopsis "Base system for cl-async") + (description + "Cl-async is a library for general purpose, non-blocking programming in +Common Lisp. It uses the libuv library as backend.") + (home-page "https://orthecreedence.github.io/cl-async/") + (license license:expat)))) + +(define-public cl-async-base + (sbcl-package->cl-source-package sbcl-cl-async-base)) + +(define-public ecl-cl-async-base + (sbcl-package->ecl-package sbcl-cl-async-base)) + +(define-public sbcl-cl-async-util + (package + (inherit sbcl-cl-async-base) + (name "sbcl-cl-async-util") + (inputs + `(("bordeaux-threads" ,sbcl-bordeaux-threads) + ("cffi" ,sbcl-cffi) + ("cl-async-base" ,sbcl-cl-async-base) + ("cl-libuv" ,sbcl-cl-libuv) + ("cl-ppcre" ,sbcl-cl-ppcre) + ("fast-io" ,sbcl-fast-io) + ("vom" ,sbcl-vom))) + (synopsis "Internal utilities for cl-async"))) + +(define-public cl-async-util + (sbcl-package->cl-source-package sbcl-cl-async-util)) + +(define-public ecl-cl-async-util + (sbcl-package->ecl-package sbcl-cl-async-util)) + +(define-public sbcl-cl-async + (package + (inherit sbcl-cl-async-base) + (name "sbcl-cl-async") + (inputs + `(("babel" ,sbcl-babel) + ("cffi" ,sbcl-cffi) + ("cl-async-base" ,sbcl-cl-async-base) + ("cl-async-util" ,sbcl-cl-async-util) + ("cl-libuv" ,sbcl-cl-libuv) + ("cl-ppcre" ,sbcl-cl-ppcre) + ("static-vectors" ,sbcl-static-vectors) + ("trivial-features" ,sbcl-trivial-features) + ("trivial-gray-streams" ,sbcl-trivial-gray-streams))) + (synopsis "Asynchronous operations for Common Lisp"))) + +(define-public cl-async + (sbcl-package->cl-source-package sbcl-cl-async)) + +(define-public ecl-cl-async + (sbcl-package->ecl-package sbcl-cl-async)) + +(define-public sbcl-cl-async-repl + (package + (inherit sbcl-cl-async-base) + (name "sbcl-cl-async-repl") + (inputs + `(("bordeaux-threads" ,sbcl-bordeaux-threads) + ("cl-async" ,sbcl-cl-async))) + (arguments + (substitute-keyword-arguments (package-arguments sbcl-cl-async-base) + ((#:asd-file _ "") "cl-async-repl.asd"))) + (synopsis "REPL integration for cl-async"))) + +(define-public cl-async-repl + (sbcl-package->cl-source-package sbcl-cl-async-repl)) + +(define-public ecl-cl-async-repl + (sbcl-package->ecl-package sbcl-cl-async-repl)) + +(define-public sbcl-cl-async-ssl + (package + (inherit sbcl-cl-async-base) + (name "sbcl-cl-async-ssl") + (inputs + `(("cffi" ,sbcl-cffi) + ("cl-async" ,sbcl-cl-async) + ("openssl" ,openssl) + ("vom" ,sbcl-vom))) + (arguments + (substitute-keyword-arguments (package-arguments sbcl-cl-async-base) + ((#:asd-file _ "") "cl-async-ssl.asd") + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/ssl/package.lisp" + (("libcrypto\\.so") + (string-append (assoc-ref inputs "openssl") + "/lib/libcrypto.so")) + (("libssl\\.so") + (string-append (assoc-ref inputs "openssl") + "/lib/libssl.so"))) + #t)))))) + (synopsis "SSL wrapper around cl-async socket implementation"))) + +(define-public cl-async-ssl + (sbcl-package->cl-source-package sbcl-cl-async-ssl)) + +(define-public ecl-cl-async-ssl + (sbcl-package->ecl-package sbcl-cl-async-ssl)) + +(define-public sbcl-blackbird + (let ((commit "d361f81c1411dec07f6c2dcb11c78f7aea9aaca8") + (revision "1")) + (package + (name "sbcl-blackbird") + (version (git-version "0.5.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orthecreedence/blackbird.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xfds5yaya64arzr7w1x38karyz11swzbhxx1afldpradj9dh19c")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("vom" ,sbcl-vom))) + (native-inputs + `(("cl-async" ,sbcl-cl-async) + ("fiveam" ,sbcl-fiveam))) + (synopsis "Promise implementation for Common Lisp") + (description + "This is a standalone promise implementation for Common Lisp. It is +the successor to the now-deprecated cl-async-future project.") + (home-page "http://orthecreedence.github.io/blackbird/") + (license license:expat)))) + +(define-public cl-blackbird + (sbcl-package->cl-source-package sbcl-blackbird)) + +(define-public ecl-blackbird + (sbcl-package->ecl-package sbcl-blackbird)) + +(define-public sbcl-cl-async-future + (let ((commit "ee36c22a69a9516407458d2ed8b475f1fc473959") + (revision "1")) + (package + (name "sbcl-cl-async-future") + (version (git-version "0.4.4.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/orthecreedence/cl-async-future.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0z0sc7qlzzxk99f4l26zp6rai9kv0kj0f599sxai5s44p17zbbvh")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("blackbird" ,sbcl-blackbird))) + (native-inputs + `(("cl-async" ,sbcl-cl-async) + ("eos" ,sbcl-eos))) + (synopsis "Futures implementation for Common Lisp") + (description + "This is futures implementation for Common Lisp. It plugs in nicely +to cl-async.") + (home-page "http://orthecreedence.github.io/cl-async/future") + (license license:expat)))) + +(define-public cl-async-future + (sbcl-package->cl-source-package sbcl-cl-async-future)) + +(define-public ecl-cl-async-future + (sbcl-package->ecl-package sbcl-cl-async-future)) + +(define-public sbcl-green-threads + (let ((commit "fff5ebecb441a37e5c511773716aafd84a3c5840") + (revision "1")) + (package + (name "sbcl-green-threads") + (version (git-version "0.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/thezerobit/green-threads.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1czw7nr0dwfps76h8hjvglk1wdh53yqbfbvv30whwbgqx33iippz")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("cl-async-future" ,sbcl-cl-async-future) + ("cl-cont" ,sbcl-cl-cont))) + (native-inputs + `(("prove" ,sbcl-prove))) + (arguments + `(;; TODO: Fix the tests. They fail with: + ;; "The function BLACKBIRD::PROMISE-VALUES is undefined" + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + (substitute* "green-threads-test.asd" + (("cl-test-more") + "prove")) + #t))))) + (synopsis "Cooperative multitasking library for Common Lisp") + (description + "This library allows for cooperative multitasking with help of cl-cont +for continuations. It tries to mimic the API of bordeaux-threads as much as +possible.") + (home-page "https://github.com/thezerobit/green-threads") + (license license:bsd-3)))) + +(define-public cl-green-threads + (sbcl-package->cl-source-package sbcl-green-threads)) + +(define-public ecl-green-threads + (sbcl-package->ecl-package sbcl-green-threads)) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index f2f483e0d4..f82288a5ac 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com> -;;; Copyright © 2019 Katherine Cox-Buday <cox.katherine.e@gmail.com> +;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2019 Jesse Gildersleve <jessejohngildersleve@protonmail.com> ;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net> ;;; @@ -88,6 +88,41 @@ :collect `(:directory (,dir \"systems\"))" ,lisp)))) +(define-public cl-asdf + (package + (name "cl-asdf") + (version "3.3.3") + (source + (origin + (method url-fetch) + (uri + (string-append "https://common-lisp.net/project/asdf/archives/asdf-" + version ".lisp")) + (sha256 + (base32 "18lr6kxvzhr79c9rx3sdricz30aby866fj0m24w27zxsqlyvn3rd")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build lisp-utils)) + #:builder + (begin + (use-modules (guix build utils) + (guix build lisp-utils)) + (let* ((out (string-append (assoc-ref %outputs "out"))) + (asdf-install (string-append out %source-install-prefix + "/source/asdf/")) + (asdf (string-append (assoc-ref %build-inputs "source")))) + (mkdir-p asdf-install) + (copy-file asdf (string-append asdf-install "asdf.lisp")))))) + (home-page "https://common-lisp.net/project/asdf/") + (synopsis "Another System Definition Facility") + (description + "ASDF is what Common Lisp hackers use to build and load software. It is +the successor of the Lisp DEFSYSTEM of yore. ASDF stands for Another System +Definition Facility.") + ;; MIT License + (license license:expat))) + (define-public gcl (let ((commit "d3335e2b3deb63f930eb0328e9b05377744c9512") (revision "2")) ;Guix package revision @@ -195,28 +230,36 @@ interface to the Tk widget system.") "https://common-lisp.net/project/ecl/static/files/release/" name "-" version ".tgz")) (sha256 - (base32 "0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn")) - (modules '((guix build utils))) - (snippet - ;; Add ecl-bundle-systems to 'default-system-source-registry'. - `(begin - (substitute* "contrib/asdf/asdf.lisp" - ,@(asdf-substitutions name)) - #t)))) + (base32 "0m0j24w5d5a9dwwqyrg0d35c0nys16ijb4r0nyk87yp82v38b9bn")))) (build-system gnu-build-system) ;; src/configure uses 'which' to confirm the existence of 'gzip'. - (native-inputs `(("which" ,which))) + (native-inputs `(("cl-asdf" ,cl-asdf) + ("which" ,which))) (inputs `(("gmp" ,gmp) ("libatomic-ops" ,libatomic-ops) ("libgc" ,libgc) ("libffi" ,libffi))) (arguments - '(#:configure-flags '("--without-rt") + `(#:configure-flags '("--without-rt") #:tests? #t #:parallel-tests? #f #:phases (modify-phases %standard-phases (delete 'check) + (add-after 'unpack 'replace-asdf + ;; Use system ASDF instead of bundled one. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((cl-asdf (assoc-ref inputs "cl-asdf")) + (guix-asdf (string-append + cl-asdf + "/share/common-lisp/source/asdf/asdf.lisp")) + (out (string-append (assoc-ref outputs "out"))) + (contrib-asdf "contrib/asdf/asdf.lisp")) + (copy-file guix-asdf contrib-asdf) + ;; Add ecl-bundle-systems to 'default-system-source-registry'. + (substitute* contrib-asdf + ,@(asdf-substitutions name))) + #t)) (add-after 'install 'wrap (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((ecl (assoc-ref outputs "out")) @@ -329,14 +372,7 @@ an interpreter, a compiler, a debugger, and much more.") (uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-" version "-source.tar.bz2")) (sha256 - (base32 "1krgd69cirp4ili2pfsh1a0mfvq722jbknlvmf17qhsxh1b94dlh")) - (modules '((guix build utils))) - (snippet - ;; Add sbcl-bundle-systems to 'default-system-source-registry'. - `(begin - (substitute* "contrib/asdf/asdf.lisp" - ,@(asdf-substitutions name)) - #t)))) + (base32 "1krgd69cirp4ili2pfsh1a0mfvq722jbknlvmf17qhsxh1b94dlh")))) (build-system gnu-build-system) (outputs '("out" "doc")) (native-inputs @@ -365,11 +401,12 @@ an interpreter, a compiler, a debugger, and much more.") `(("clisp" ,clisp))) (_ `(("clisp" ,clisp)))) - ("which" ,which) - ("inetutils" ,inetutils) ;for hostname(1) + ("cl-asdf" ,cl-asdf) ("ed" ,ed) - ("texlive" ,(texlive-union (list texlive-tex-texinfo))) + ("inetutils" ,inetutils) ;for hostname(1) ("texinfo" ,texinfo) + ("texlive" ,(texlive-union (list texlive-tex-texinfo))) + ("which" ,which) ("zlib" ,zlib))) (arguments `(#:modules ((guix build gnu-build-system) @@ -378,6 +415,24 @@ an interpreter, a compiler, a debugger, and much more.") #:phases (modify-phases %standard-phases (delete 'configure) + (add-after 'unpack 'replace-asdf + ;; SBCL developers have not committed to keeping ASDF up to date + ;; due to breaking changes [1]. Guix can handle this situation + ;; easily, and it behooves us to have more control over what version + ;; of ASDF we use to build software; therefore, replace the contrib + ;; ASDF with the version packaged into Guix. + ;; [1] - https://bugs.launchpad.net/sbcl/+bug/1823442 + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((cl-asdf (assoc-ref inputs "cl-asdf")) + (guix-asdf (string-append + cl-asdf + "/share/common-lisp/source/asdf/asdf.lisp")) + (out (string-append (assoc-ref outputs "out"))) + (contrib-asdf "contrib/asdf/asdf.lisp")) + (copy-file guix-asdf contrib-asdf) + (substitute* contrib-asdf + ,@(asdf-substitutions name))) + #t)) (add-before 'build 'patch-unix-tool-paths (lambda* (#:key outputs inputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) @@ -477,8 +532,8 @@ an interpreter, a compiler, a debugger, and much more.") new-doc/sbcl-dir) (delete-file-recursively old-doc-dir) #t)))) - ;; No 'check' target, though "make.sh" (build phase) runs tests. - #:tests? #f)) + ;; No 'check' target, though "make.sh" (build phase) runs tests. + #:tests? #f)) (native-search-paths (list (search-path-specification (variable "XDG_DATA_DIRS") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 7d56949ae9..67afea68fb 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -141,14 +141,14 @@ (define-public mailutils (package (name "mailutils") - (version "3.7") + (version "3.8") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mailutils/mailutils-" version ".tar.xz")) (sha256 (base32 - "1gwajsl39f1dkzrjld0dm9px8hrj7l7rwzazz00h5rwghk9mhwhq")))) + "1wkn9ch664477r4d8jk9153w5msljsbj99907k7zgzpmywbs6ba7")))) (build-system gnu-build-system) (arguments '(#:phases @@ -160,10 +160,10 @@ (("/bin/cat") (which "cat"))) - ;; Tests try to invoke 'maidag' such that it looks up the + ;; Tests try to invoke 'mda' such that it looks up the ;; 'root' user, which does not exist in the build ;; environment. - (substitute* "maidag/tests/testsuite" + (substitute* "mda/tests/testsuite" (("root <") "nobody <") (("spool/root") "spool/nobody") (("root@localhost") "nobody@localhost")) @@ -405,7 +405,7 @@ operating systems.") (define-public neomutt (package (name "neomutt") - (version "20191102") + (version "20191207") (source (origin (method git-fetch) @@ -414,7 +414,7 @@ operating systems.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0x5f9zbvxsxg5y2ir4xq4xw1q2snaxkidhdyhcxw5ljw3qqwhlyq")))) + (base32 "147yjpqnsbfy01fhsflxlixk0985r91a6bjmqq3cwmf7gka3sihm")))) (build-system gnu-build-system) (inputs `(("cyrus-sasl" ,cyrus-sasl) @@ -489,7 +489,7 @@ operating systems.") (apply invoke bash (string-append (getcwd) "/configure") flags))))))) - (home-page "https://www.neomutt.org/") + (home-page "https://neomutt.org/") (synopsis "Command-line mail reader based on Mutt") (description "NeoMutt is a command-line mail reader which is based on mutt. @@ -2152,18 +2152,17 @@ converts them to maildir format directories.") (define-public mpop (package (name "mpop") - (version "1.4.6") + (version "1.4.7") (source (origin (method url-fetch) (uri (string-append "https://marlam.de/mpop/releases/" "mpop-" version ".tar.xz")) (sha256 - (base32 "0q4ifzvl1gcndvqqqk7n9mc599r4s2knxjc7alflwb366fql58gv")))) + (base32 "0c6n5afn9pr4p7gxkv462lysrw52w9fhvavzm99c78dcp9dj5xnk")))) (build-system gnu-build-system) (inputs - `(("gnutls" ,gnutls) - ("libidn" ,libidn))) + `(("gnutls" ,gnutls))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://marlam.de/mpop/") @@ -2172,9 +2171,9 @@ converts them to maildir format directories.") fetchmail replacement. mpop supports multiple accounts, header based mail filtering, delivery -to mbox files, maildir folders or a Mail Delivery Agent (MDA), -TLS/SSL, several authentication methods, Internationalized Domain -Names (IDN) and SOCKS proxies.") +to mbox files, maildir folders or an @acronym{MDA, Mail Delivery Agent}, +TLS/SSL, several authentication methods, @acronym{IDN, Internationalized Domain +Names} and SOCKS proxies.") (license gpl3+))) (define-public mhonarc diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index f05efccece..98c58eb0e7 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -227,14 +227,14 @@ automatically.") (define-public help2man/latest (package (inherit help2man) - (version "1.47.11") + (version "1.47.12") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/help2man/help2man-" version ".tar.xz")) (sha256 (base32 - "123vsimgx8zq1h077sbyh3bd0hbmlc3wih2231wwh133z1bv51ar")))))) + "0q5ixbxz1v7wqnpg4bq7k7nbv9ssnmcvdbqsq5ycjvniz56ac2vx")))))) (define-public scdoc (package diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index ee6e4fdac8..8f4478b6bb 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be> -;;; Copyright © 2017, 2018, 2019 Paul Garlick <pgarlick@tourbillion-technology.com> +;;; Copyright © 2017, 2018, 2019, 2020 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; Copyright © 2017 ng0 <ng0@n0.is> ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> @@ -29,7 +29,7 @@ ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Eric Brown <brown@fastmail.com> ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> -;;; Copyright © 2018 Amin Bandali <bandali@gnu.org> +;;; Copyright © 2018 Amin Bandali <mab@gnu.org> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com> ;;; Copyright © 2019 Robert Smith <robertsmith@posteo.net> @@ -908,12 +908,12 @@ incompatible with HDF5.") (find-files ex ".*")) (delete-file-recursively ex)) #t))))) - (home-page "http://www.hdfgroup.org") + (home-page "https://www.hdfgroup.org") (synopsis "Management suite for extremely large and complex data") (description "HDF5 is a suite that makes possible the management of extremely large and complex data collections.") (license (license:x11-style - "http://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING")))) + "https://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING")))) (define-public hdf5-1.10 (package (inherit hdf5) @@ -942,7 +942,7 @@ extremely large and complex data collections.") (origin (method url-fetch) (uri (string-append - "http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-" + "https://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-" version "/src/CMake-hdfjava-" version ".tar.gz")) (sha256 (base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr")) @@ -1175,7 +1175,7 @@ Swath).") (source (origin (method url-fetch) - (uri (string-append "http://www.hdfgroup.org/ftp/HDF5/tools/" + (uri (string-append "https://www.hdfgroup.org/ftp/HDF5/tools/" "h5check/src/h5check-" version ".tar.gz")) (sha256 (base32 @@ -1270,7 +1270,7 @@ similar to MATLAB, GNU Octave or SciPy.") #t))) #:parallel-tests? #f)) ;various race conditions - (home-page "http://www.unidata.ucar.edu/software/netcdf/") + (home-page "https://www.unidata.ucar.edu/software/netcdf/") (synopsis "Library for scientific data") (description "NetCDF is an interface for scientific data access and a software library that provides an implementation of the interface. The netCDF @@ -1921,13 +1921,13 @@ September 2004}") (copy-recursively exdir exdir') (delete-file-recursively exdir) #t)))))) - (home-page "http://www.mcs.anl.gov/petsc") + (home-page "https://www.mcs.anl.gov/petsc") (synopsis "Library to solve PDEs") (description "PETSc, pronounced PET-see (the S is silent), is a suite of data structures and routines for the scalable (parallel) solution of scientific applications modeled by partial differential equations.") (license (license:non-copyleft - "http://www.mcs.anl.gov/petsc/documentation/copyright.html")))) + "https://www.mcs.anl.gov/petsc/documentation/copyright.html")))) (define-public petsc-complex (package (inherit petsc) @@ -1994,14 +1994,14 @@ scientific applications modeled by partial differential equations.") (define-public python-petsc4py (package (name "python-petsc4py") - (version "3.10.1") + (version "3.11.0") (source (origin (method url-fetch) (uri (pypi-uri "petsc4py" version)) (sha256 (base32 - "094hcnran0r2z1wlvmjswsz3ski1m9kqrl5l0ax8jjhnk55x0flh")))) + "1rm1qj5wlkhxl39by9n78lh3gbmii31wsnb8j1rr5hvfr5xgbx2q")))) (build-system python-build-system) (arguments `(#:phases @@ -2164,14 +2164,14 @@ arising after the discretization of partial differential equations.") (define-public python-slepc4py (package (name "python-slepc4py") - (version "3.10.0") + (version "3.11.0") (source (origin (method url-fetch) (uri (pypi-uri "slepc4py" version)) (sha256 (base32 - "0x049dyc8frgh79fvvavf4vlbqp4mgm61nsaivzdav4316vvlv1j")))) + "1ksp08kxf4wg408b9nn39z3qfhy643j22d4rfbl30vzxk2rxh4lq")))) (build-system python-build-system) (arguments `(#:phases @@ -2644,7 +2644,7 @@ YACC = bison -pscotchyy -y -b y (install-file f (string-append out "/lib"))) (find-files "../lib/" ".*metis\\..*")) #t)))))) - (home-page "http://www.labri.fr/perso/pelegrin/scotch/") + (home-page "https://www.labri.fr/perso/pelegrin/scotch/") (synopsis "Programs and libraries for graph algorithms") (description "SCOTCH is a set of programs and libraries which implement the static mapping and sparse matrix reordering algorithms developed within @@ -4278,7 +4278,7 @@ symmetric matrices.") (base32 "1687xpjjzig27y2pnqv7hv09smpijyfdpz7qjgmcxf4shfajlfkc")))) (build-system cmake-build-system) - (home-page "http://libelemental.org") + (home-page "https://github.com/elemental/Elemental") (native-inputs `(("gfortran" ,gfortran))) (inputs diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index b524388853..839f718134 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -173,16 +173,17 @@ end-to-end encryption.") (define-public bitlbee (package (name "bitlbee") - (version "3.5.1") + (version "3.6") (source (origin (method url-fetch) (uri (string-append "https://get.bitlbee.org/src/bitlbee-" version ".tar.gz")) (sha256 - (base32 "0sgsn0fv41rga46mih3fyv65cvfa6rvki8x92dn7bczbi7yxfdln")))) + (base32 "0zhhcbcr59sx9h4maf8zamzv2waya7sbsl7w74gbyilvy93dw5cz")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) - ("check" ,check))) + ;; Note: Change to 'check' for versions > 3.6. + ("check" ,check-0.12))) (inputs `(("glib" ,glib) ("libotr" ,libotr) ("gnutls" ,gnutls) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 1ff1f39389..2550c124b5 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> -;;; Copyright © 2016, 2018, 2019 Leo Famulari <leo@famulari.name> +;;; Copyright © 2016, 2018, 2019, 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Evan Straw <evan.straw99@gmail.com> ;;; @@ -92,7 +92,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.21.17") + (version "0.21.18") (source (origin (method url-fetch) (uri @@ -101,7 +101,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "0qka4g4dd6a6fxi03jnrd8ya70vfijmsxz642adfjqa626gam644")))) + "0hllkq426hql1s80xxvy28ypvw3dbfrrclbjc0lckmmgsmnfd0l7")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=true"))) ;the default is 'false'... @@ -237,7 +237,7 @@ terminal using ncurses.") `(("pkg-config" ,pkg-config))) (arguments '(#:configure-flags - '("BOOST_LIB_SUFFIX=" "--with-taglib"))) + '("BOOST_LIB_SUFFIX=" "--with-taglib" "--enable-clock"))) (synopsis "Featureful ncurses based MPD client inspired by ncmpc") (description "Ncmpcpp is an mpd client with a UI very similar to ncmpc, but it provides new useful features such as support for regular expressions diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index e607306282..ad369bd3a8 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -2978,7 +2978,7 @@ for improved Amiga ProTracker 2/3 compatibility.") (define-public schismtracker (package (name "schismtracker") - (version "20190614") + (version "20190805") (source (origin (method git-fetch) (uri (git-reference @@ -2987,7 +2987,7 @@ for improved Amiga ProTracker 2/3 compatibility.") (file-name (git-file-name name version)) (sha256 (base32 - "0cg0q5bkn8a06v03vmj69xyhi4xxpl729k4008q4hiakh9gy2x49")) + "0qqps20vvn3rgpg8174bjrrm38gqcci2z5z4c1r1vhbccclahgsd")) (modules '((guix build utils))) (snippet ;; Remove use of __DATE__ and __TIME__ for reproducibility. @@ -3838,7 +3838,8 @@ are a C compiler and glib. Full API documentation and examples are included.") ("libsndfile1" ,libsndfile) ("libxft" ,libxft) ("freetype2" ,freetype) - ("fftw3f" ,fftwf))) + ("fftw3f" ,fftwf) + ("jack" ,jack-1))) (home-page "https://lmms.io/") (synopsis "Music composition tool") (description "LMMS is a digital audio workstation. It includes tools for sequencing diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 28c683ea83..5f03c8f172 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -427,14 +427,14 @@ receiving NDP messages.") (define-public ethtool (package (name "ethtool") - (version "5.3") + (version "5.4") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/network/" "ethtool/ethtool-" version ".tar.xz")) (sha256 (base32 - "1i14zrg4a84zjpwvqi8an0zx0hm06g614a79zc2syrkhrvdw1npk")))) + "0srbqp4a3x9ryrbm5q854375y04ni8j0bmsrl89nmsyn4x4ixy12")))) (build-system gnu-build-system) (home-page "https://www.kernel.org/pub/software/network/ethtool/") (synopsis "Display or change Ethernet device settings") diff --git a/gnu/packages/nim.scm b/gnu/packages/nim.scm index 5694eae63b..22dac0b58a 100644 --- a/gnu/packages/nim.scm +++ b/gnu/packages/nim.scm @@ -50,10 +50,12 @@ #t))) (add-after 'patch-source-shebangs 'patch-more-shebangs (lambda _ - (substitute* (append '("tests/stdlib/tosprocterminate.nim" - "lib/pure/osproc.nim") - (find-files "c_code" "stdlib_osproc.c")) - (("/bin/sh") (which "sh"))) + (let ((sh (which "sh"))) + (substitute* '("tests/stdlib/tosprocterminate.nim" + "lib/pure/osproc.nim") + (("/bin/sh") sh)) + (substitute* (find-files "c_code" "stdlib_osproc.c") + (("\"/bin/sh\", 7") (format "~s, ~s" sh (string-length sh))))) #t)) (replace 'build (lambda _ diff --git a/gnu/packages/node-xyz.scm b/gnu/packages/node-xyz.scm new file mode 100644 index 0000000000..44236ec469 --- /dev/null +++ b/gnu/packages/node-xyz.scm @@ -0,0 +1,246 @@ +;;; 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 packages node-xyz) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build-system node)) + +(define-public node-color-name + (package + (name "node-color-name") + (version "1.1.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/colorjs/color-name") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09rbmj16nfwcwkhrybqxyy66bkrs50vpw6hkdqqb14l3gsyxpr74")))) + (build-system node-build-system) + (home-page "https://github.com/colorjs/color-name") + (synopsis "JSON with CSS color names") + (description + "This package provides a JSON list with color names and their values.") + (license license:expat))) + +(define-public node-env-variable + (package + (name "node-env-variable") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bigpipe/env-variable") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0nnpxjxfhy4na7fixb7p3ww6ard5xgggfm83b78i333867r4gmsq")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/bigpipe/env-variable") + (synopsis "Environment variables for Node with fallbacks") + (description "This package provides environment variables with +@code{process.env}, @code{window.name}, @code{location.hash} and +@code{localStorage} fallbacks.") + (license license:expat))) + +(define-public node-far + (package + (name "node-far") + (version "0.0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-far") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "083rv1rszjn0i91zcpaghlid0kwhk0angmpj4hiflrlyhd6cmjzw")))) + (build-system node-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; We skip the two tests which are supposed to fail. + (invoke "bin/node-far" "-v" "test/" "-e" "test.*fail.js")))))) + (inputs + `(("node-oop" ,node-oop))) + (home-page "https://github.com/felixge/node-far") + (synopsis "Node.js test runner") + (description "This package provides a simple test runner that finds and runs +multiple node.js files, while providing useful information about output and exit +codes.") + (license license:expat))) + +(define-public node-long-stack-traces + (package + (name "node-long-stack-traces") + (version "0.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tlrobinson/long-stack-traces") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0famwsyc6xawi30v25zi65d8fhbvlvh976bqydf1dqn5gz200cl3")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/tlrobinson/long-stack-traces") + (synopsis "Long stacktraces implemented in user-land JavaScript") + (description "This package provides long stacktraces for V8 implemented in +user-land JavaScript.") + (license license:expat))) ; in README + +(define-public node-mersenne + (package + (name "node-mersenne") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jwatte/node-mersenne") + ;; The actual release lacks a git tag. + (commit "f9fa01694ee49d6ae6ff9d90cfda594bddd3ccef"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "034iaiq2pdqn342p2404cpz364g282d2hkp9375hysnh9i968wbb")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "http://www.enchantedage.com/node-mersenne") + (synopsis "Node.js module for generating Mersenne Twister random numbers") + (description "Thix package provides a node.js port of the Mersenne Twister +random number generator.") + (license license:bsd-3))) + +(define-public node-oop + ;; No releases, last commit was February 2013. + (let ((commit "f9d87cda0958886955c14a0a716e57021ed295dc") + (revision "1")) + (package + (name "node-oop") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-oop") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mqrcf0xi2jbwffwkk00cljpqfsri1jk8s6kz8jny45apn7zjds1")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; Tests run during build phase. + (home-page "https://github.com/felixge/node-oop") + (synopsis "Simple, light-weight oop module for Node") + (description "This library tries to bring basic oop features to JavaScript +while being as light-weight and simple as possible.") + (license license:expat)))) + +(define-public node-stack-trace + ;; There have been improvements since the last release. + (let ((commit "4fd379ee78965ce7ce8820b436f1b1b590d5dbcf") + (revision "1")) + (package + (name "node-stack-trace") + (version (git-version "0.0.10" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/node-stack-trace") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pk19wcpy8i95z5jr77fybd57qj7xmzmniap4dy47vjlmpkqia4i")))) + (build-system node-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'skip-intentionally-failing-test + (lambda _ + (substitute* "test/run.js" + (("far.include") "far.exclude(/test-parse.js/)\nfar.include")) + #t))))) + (native-inputs + `(("node-far" ,node-far) + ("node-long-stack-traces" ,node-long-stack-traces))) + (home-page "https://github.com/felixge/node-stack-trace") + (synopsis "Get v8 stack traces as an array of CallSite objects") + (description "Get v8 stack traces as an array of CallSite objects.") + (license license:expat)))) + +(define-public node-statsd-parser + (package + (name "node-statsd-parser") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dscape/statsd-parser") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "049rnczsd6pv6bk282q4w72bhqc5cs562djgr7yncy7lk0wzq5j3")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No tests. + (home-page "https://github.com/dscape/statsd-parser") + (synopsis "Streaming parser for the statsd protocol") + (description "This package provides a streaming parser for the statsd +protocol used in @code{node-lynx}.") + (license license:asl2.0))) + +(define-public node-util-deprecate + (package + (name "node-util-deprecate") + (version "1.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/TooTallNate/util-deprecate") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rk94nl3qc7znsk8400bnga30v0m7j2mmvz9ldwjinxv1d3n11xc")))) + (build-system node-build-system) + (arguments '(#:tests? #f)) ; No test suite. + (home-page "https://github.com/TooTallNate/util-deprecate") + (synopsis "Node.js `util.deprecate()` function with browser support") + (description "This package provides the Node.js @code{util.deprecate()} +function with browser support.") + (license license:expat))) diff --git a/gnu/packages/noweb.scm b/gnu/packages/noweb.scm index 0954e79952..7d8d402b94 100644 --- a/gnu/packages/noweb.scm +++ b/gnu/packages/noweb.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,25 +19,41 @@ (define-module (gnu packages noweb) #:use-module (guix packages) - #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) - #:use-module (guix licenses)) + #:use-module (guix licenses) + #:use-module (gnu packages perl)) (define-public noweb (package (name "noweb") - (version "2.11b") - (source (origin - (method url-fetch) - (uri (string-append "ftp://www.eecs.harvard.edu/pub/nr/noweb-" - version ".tgz")) - (sha256 - (base32 - "10hdd6mrk26kyh4bnng4ah5h1pnanhsrhqa7qwqy6dyv3rng44y9")))) + (version "2.12") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nrnrnr/noweb") + (commit (string-append "v" (string-join (string-split version #\.) + "_"))))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1160i2ghgzqvnb44kgwd6s3p4jnk9668rmc15jlcwl7pdf3xqm95")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases + (add-after 'unpack 'bind-early + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (substitute* (list "src/lib/nwmtime" + "src/shell/htmltoc") + (("exec perl ") + (format #f "exec ~a " (which "perl")))) + (substitute* "src/shell/noweb" + ((" cpif ") + (format #f " ~a/cpif " bin))) + #t))) (add-before 'install 'pre-install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -69,11 +86,6 @@ (lambda _ ;; Jump in the source. (chdir "src") - - ;; The makefile reads "source: FAQ", but FAQ isn't - ;; available. - (substitute* "Makefile" - (("FAQ") "")) #t))) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "BIN=" out "/bin") @@ -82,7 +94,9 @@ (string-append "TEXINPUTS=" out "/share/texmf/tex/latex"))) #:tests? #f)) ; no tests - (home-page "http://www.cs.tufts.edu/~nr/noweb/") + (inputs + `(("perl" ,perl))) + (home-page "https://www.cs.tufts.edu/~nr/noweb/") (synopsis "Literate programming tool") (description "Noweb is designed to meet the needs of literate programmers while @@ -92,4 +106,6 @@ with other literate-programming tools. noweb uses 5 control sequences to WEB's 27. The noweb manual is only 4 pages; an additional page explains how to customize its LaTeX output. noweb works “out of the box” with any programming language, and supports TeX, LaTeX, HTML, and troff back ends.") - (license (fsf-free "http://www.cs.tufts.edu/~nr/noweb/#copyright")))) + (license + (list bsd-2 ; dual-licenced under this and… + (fsf-free "https://www.cs.tufts.edu/~nr/noweb/#copyright"))))) diff --git a/gnu/packages/nutrition.scm b/gnu/packages/nutrition.scm index 0e5533433e..bae166de3f 100644 --- a/gnu/packages/nutrition.scm +++ b/gnu/packages/nutrition.scm @@ -29,7 +29,8 @@ #:use-module (gnu packages glib) #:use-module (gnu packages image) #:use-module (gnu packages python) - #:use-module (gnu packages python-xyz)) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages xml)) (define-public gourmet (package diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 3253d0285a..31e200f3d5 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016-2018 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2016-2020 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Peter Kreye <kreyepr@gmail.com> @@ -131,10 +131,10 @@ "/lib/ocaml/site-lib")) #:phases (modify-phases %standard-phases (delete 'configure)))) -(define-public ocaml-4.07 +(define-public ocaml-4.09 (package (name "ocaml") - (version "4.07.1") + (version "4.09.0") (source (origin (method url-fetch) (uri (string-append @@ -143,7 +143,7 @@ "/ocaml-" version ".tar.xz")) (sha256 (base32 - "1f07hgj5k45cylj1q3k5mk8yi02cwzx849b1fwnwia8xlcfqpr6z")))) + "1v3z5ar326f3hzvpfljg4xj8b9lmbrl53fn57yih1bkbx3gr3yzj")))) (build-system gnu-build-system) (native-search-paths (list (search-path-specification @@ -162,10 +162,7 @@ ("gcc:lib" ,(canonical-package gcc) "lib") ("zlib" ,zlib))) ;also needed for objdump support (arguments - `(#:modules ((guix build gnu-build-system) - (guix build utils) - (web server)) - #:phases + `(#:phases (modify-phases %standard-phases (add-after 'unpack 'patch-/bin/sh-references (lambda* (#:key inputs #:allow-other-keys) @@ -184,21 +181,11 @@ patch-/bin/sh-references: ~a: changing `\"/bin/sh\"' to `~a'~%" quoted-sh)))) (find-files "." "\\.ml$")) #t)))) - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (mandir (string-append out "/share/man"))) - ;; Custom configure script doesn't recognize - ;; --prefix=<PREFIX> syntax (with equals sign). - (invoke "./configure" - "--prefix" out - "--mandir" mandir)))) (replace 'build (lambda _ (invoke "make" "-j" (number->string (parallel-job-count)) "world.opt"))) - (delete 'check) - (add-after 'install 'check + (replace 'check (lambda _ (with-directory-excursion "testsuite" (invoke "make" "all"))))))) @@ -214,6 +201,33 @@ functional, imperative and object-oriented styles of programming.") ;; distributed under lgpl2.0. (license (list license:qpl license:lgpl2.0)))) +(define-public ocaml-4.07 + (package + (inherit ocaml-4.09) + (version "4.07.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://caml.inria.fr/pub/distrib/ocaml-" + (version-major+minor version) + "/ocaml-" version ".tar.xz")) + (sha256 + (base32 + "1f07hgj5k45cylj1q3k5mk8yi02cwzx849b1fwnwia8xlcfqpr6z")))) + (arguments + (substitute-keyword-arguments (package-arguments ocaml-4.09) + ((#:phases phases) + `(modify-phases ,phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (mandir (string-append out "/share/man"))) + ;; Custom configure script doesn't recognize + ;; --prefix=<PREFIX> syntax (with equals sign). + (invoke "./configure" + "--prefix" out + "--mandir" mandir)))))))))) + (define-public ocaml ocaml-4.07) (define-public ocamlbuild @@ -430,7 +444,7 @@ the opam file fomat.") (define-public opam (package (name "opam") - (version "2.0.5") + (version "2.0.6") (source (origin (method git-fetch) (uri (git-reference @@ -439,7 +453,7 @@ the opam file fomat.") (file-name (git-file-name name version)) (sha256 (base32 - "0pf2smq2sdcxryq5i87hz3dv05pb3zasb1is3kxq1pi1s4cn55mx")))) + "1vyga2jllsfsikppxyzljm4isfnnnl8k0rb44h8xaddjzdg1d4m8")))) (build-system ocaml-build-system) (arguments `(#:configure-flags @@ -483,6 +497,10 @@ the opam file fomat.") "add_sys_mounts /gnu /run/current-system /usr")) (substitute* "src/client/opamInitDefaults.ml" (("\"bwrap\"") (string-append "\"" bwrap "\""))) + ;; Generating the documentation needs write access + (for-each + (lambda (f) (chmod f #o644)) + (find-files "doc" ".")) #t))) (add-before 'check 'pre-check (lambda _ @@ -519,7 +537,7 @@ Git-friendly development workflow.") (define-public camlp5 (package (name "camlp5") - (version "7.07") + (version "7.10") (source (origin (method git-fetch) @@ -528,7 +546,7 @@ Git-friendly development workflow.") (commit (string-append "rel" (string-delete #\. version))))) (file-name (git-file-name name version)) (sha256 - (base32 "1c8v45553ccbqha2ypfranqlgw06rr5wjr2hlnrx5bf9jfq0h0dn")))) + (base32 "1a1lgsc8350afdwmsznsys7m0c0cks4nw6irqz2f92g8g4vkk9b7")))) (build-system gnu-build-system) (inputs `(("ocaml" ,ocaml))) @@ -1122,7 +1140,7 @@ GNU CC attributes. It provides also a C pretty printer as an example of use.") (define-public ocaml-qcheck (package (name "ocaml-qcheck") - (version "0.11") + (version "0.12") (source (origin (method git-fetch) @@ -1131,14 +1149,22 @@ GNU CC attributes. It provides also a C pretty printer as an example of use.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0d2wih4zxn2zm7kxd9dnf5nlp838km3vz6wv80fa3m51609fb24i")))) + (base32 "1llnfynhlndwyjig7wrayjnds2b3mggp5lw20dwxhn2i2lkkb22m")))) (build-system dune-build-system) (arguments - `(#:test-target ".")) - (native-inputs + `(#:test-target "." + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-deprecated + (lambda _ + (substitute* "src/core/QCheck.ml" + (("Pervasives.compare") "compare")) + #t))))) + (propagated-inputs `(("ocaml-alcotest" ,ocaml-alcotest) - ("ocaml-ounit" ,ocaml-ounit) - ("ocamlbuild" ,ocamlbuild))) + ("ocaml-ounit" ,ocaml-ounit))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/c-cube/qcheck") (synopsis "QuickCheck inspired property-based testing for OCaml") (description "QuickCheck inspired property-based testing for OCaml. This @@ -1150,7 +1176,7 @@ instances and printing them.") (define-public ocaml-qtest (package (name "ocaml-qtest") - (version "2.9") + (version "2.10.1") (source (origin (method git-fetch) (uri (git-reference @@ -1159,7 +1185,7 @@ instances and printing them.") (file-name (git-file-name name version)) (sha256 (base32 - "1ifxc8jndwah82g5k8xaa7jskbv866j4zpd0w41f0pskg4y0z9g1")))) + "0gddzan4vzs0vklsxhirdjrvx3rp7hhh2yr20vi13nq8rwkn9w29")))) (build-system dune-build-system) (arguments `(#:jbuild? #t @@ -1713,10 +1739,30 @@ lets the client choose the concrete timeline.") through Transport Layer Security (@dfn{TLS}) encrypted connections.") (license license:lgpl2.1))) +(define-public ocaml-mmap + (package + (name "ocaml-mmap") + (version "1.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mirage/mmap") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1jaismy5d1bhbbanysmr2k79px0yv6ya265dri3949nha1l23i60")))) + (build-system dune-build-system) + (home-page "https://github.com/mirage/mmap") + (synopsis "File mapping for OCaml") + (description "This project provides a @command{Mmap.map_file} function +for mapping files in memory. This function is the same as the +@command{Unix.map_file} funciton added in OCaml >= 4.06.") + (license (list license:qpl license:lgpl2.0)))) + (define-public ocaml-lwt (package (name "ocaml-lwt") - (version "4.1.0") + (version "5.1.1") (source (origin (method url-fetch) @@ -1724,29 +1770,22 @@ through Transport Layer Security (@dfn{TLS}) encrypted connections.") ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0mhh019bjkg5xfvpy1pxs4xdxb759fyydmgb6l4j0qww1qgr8klp")))) + "0gwdmhn0qx03agc45dplj73ia5y1gb42aan64ywfxmll3lsnr2h7")))) (build-system dune-build-system) (arguments - `(#:tests? #f; require lwt_ppx - #:jbuild? #t - #:phases - (modify-phases %standard-phases - (add-before 'build 'configure - (lambda _ - (invoke "ocaml" "src/util/configure.ml" "-use-libev" "true") - #t))))) + `(#:package "lwt")) (native-inputs - `(("ocaml-cppo" ,ocaml-cppo) - ("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree) - ("pkg-config" ,pkg-config) - ("ppx-tools-versioned" ,ocaml-ppx-tools-versioned))) + `(("ocaml-bisect-ppx" ,ocaml-bisect-ppx) + ("ocaml-cppo" ,ocaml-cppo) + ("pkg-config" ,pkg-config))) (inputs `(("libev" ,libev) ("glib" ,glib))) (propagated-inputs - `(("result" ,ocaml-result) - ("ocaml-ssl" ,ocaml-ssl) - ("ocaml-react" ,ocaml-react))) + `(("ocaml-mmap" ,ocaml-mmap) + ("ocaml-ocplib-endian" ,ocaml-ocplib-endian) + ("ocaml-result" ,ocaml-result) + ("ocaml-seq" ,ocaml-seq))) (home-page "https://github.com/ocsigen/lwt") (synopsis "Cooperative threads and I/O in monadic style") (description "Lwt provides typed, composable cooperative threads. These @@ -5024,7 +5063,7 @@ the full Core is not available, such as in Javascript.") (define-public ocaml-markup (package (name "ocaml-markup") - (version "0.8.1") + (version "0.8.2") (home-page "https://github.com/aantron/markup.ml") (source (origin @@ -5035,14 +5074,20 @@ the full Core is not available, such as in Javascript.") (file-name (git-file-name name version)) (sha256 (base32 - "0gzdjfnkv56vhmpvi9xpv1p05z50y55izhn156bkmb35s6izxds3")))) + "13zcrwzjmifniv3bvjbkd2ah8wwa3ld75bxh1d8hrzdvfxzh9szn")))) (build-system dune-build-system) + (arguments + `(#:package "markup")) + (inputs + `(("libev" ,libev))) (propagated-inputs `(("ocaml-bisect-ppx" ,ocaml-bisect-ppx) ("ocaml-uchar" ,ocaml-uchar) ("ocaml-uutf" ,ocaml-uutf) ("ocaml-lwt" ,ocaml-lwt))) - (native-inputs `(("ocaml-ounit" ,ocaml-ounit))) + (native-inputs + `(("ocaml-ounit" ,ocaml-ounit) + ("pkg-config" ,pkg-config))) (synopsis "Error-recovering functional HTML5 and XML parsers and writers") (description "Markup.ml provides an HTML parser and an XML parser. The parsers are wrapped in a simple interface: they are functions that transform @@ -5102,7 +5147,7 @@ combinators.") (define-public ocaml-bisect-ppx (package (name "ocaml-bisect-ppx") - (version "1.4.1") + (version "1.4.2") (source (origin (method git-fetch) @@ -5112,7 +5157,7 @@ combinators.") (file-name (git-file-name name version)) (sha256 (base32 - "1vp3qvrkz7q25nbmvd40vhsnz2k9aqh17bnd21i3q8q0xlr5hdag")))) + "0900vli5kw7s5kdam0n4cqsfsfqb7mdb3azn3i55595gilg1vyn8")))) (build-system dune-build-system) (propagated-inputs `(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index c976d8aafb..0d87691cd7 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -33,6 +33,7 @@ #:use-module (gnu packages time) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) + #:use-module (gnu packages xml) #:use-module (guix build-system python) #:use-module (guix download) #:use-module ((guix licenses) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 6becdb22a9..422d4f1959 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -110,8 +110,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.0.1") - (commit "f38eabe952608478230895e380ef441d65ea625e") - (revision 11)) + (commit "50299ade040e934fa5533768aacb081eb340af3f") + (revision 13)) (package (name "guix") @@ -127,7 +127,7 @@ (commit commit))) (sha256 (base32 - "1wnm1wqa38dpd5bk6avyfm0rgx72vlx36a06scyg8d57kl47mzjf")) + "0rbnyy0vqmsl7z350cdazm5xzx74cdia3nxp0msk8xalyb76hff4")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -397,6 +397,21 @@ the Nix package manager.") (define-public guile2.0-guix (deprecated-package "guile2.0-guix" guix)) +(define-public guile3.0-guix + (package + (inherit guix) + (name "guile3.0-guix") + (inputs + `(("guile" ,guile-3.0) + ,@(alist-delete "guile" (package-inputs guix)))) + (propagated-inputs + `(("gnutls" ,guile3.0-gnutls) + ("guile-gcrypt" ,guile3.0-gcrypt) + ("guile-json" ,guile3.0-json) + ("guile-sqlite3" ,guile3.0-sqlite3) + ("guile-ssh" ,guile3.0-ssh) + ("guile-git" ,guile3.0-git))))) + (define-public guix-minimal ;; A version of Guix which is built with the minimal set of dependencies, as ;; outlined in the README "Requirements" section. Intended as a CI job, so diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index db5f54e1d9..e896e3db2d 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -114,7 +114,7 @@ human.") (define-public keepassxc (package (name "keepassxc") - (version "2.5.1") + (version "2.5.2") (source (origin (method url-fetch) @@ -122,8 +122,7 @@ human.") "/releases/download/" version "/keepassxc-" version "-src.tar.xz")) (sha256 - (base32 - "0c5g5hn2cr2m00xgpxg884ihy8gnn09kc487y1m9jywshn5jaczg")))) + (base32 "0lvwc3nxyz7d7vymb6cmgwxylb9g6gsjnq247vbh4lk1ifjir58j")))) (build-system cmake-build-system) (arguments '(#:configure-flags '("-DWITH_XC_ALL=YES" diff --git a/gnu/packages/patches/gzdoom-find-system-libgme.patch b/gnu/packages/patches/gzdoom-find-system-libgme.patch new file mode 100644 index 0000000000..a7f277d614 --- /dev/null +++ b/gnu/packages/patches/gzdoom-find-system-libgme.patch @@ -0,0 +1,21 @@ +--- /CMakeLists.txt 2020-01-20 21:47:35.460119141 +0100 ++++ /CMakeLists.txt 2020-01-20 21:47:47.690112400 +0100 +@@ -195,12 +195,12 @@ + #endif() + + # GME +-#find_path( GME_INCLUDE_DIR gme/gme.h ) +-#find_library( GME_LIBRARIES gme ) +-#mark_as_advanced( GME_INCLUDE_DIR GME_LIBRARIES ) +-#FIND_PACKAGE_HANDLE_STANDARD_ARGS( GME +-# REQUIRED_VARS GME_LIBRARIES GME_INCLUDE_DIR +-#) ++find_path( GME_INCLUDE_DIR gme/gme.h ) ++find_library( GME_LIBRARIES gme ) ++mark_as_advanced( GME_INCLUDE_DIR GME_LIBRARIES ) ++FIND_PACKAGE_HANDLE_STANDARD_ARGS( GME ++ REQUIRED_VARS GME_LIBRARIES GME_INCLUDE_DIR ++) + + if( MSVC ) + # Eliminate unreferenced functions and data diff --git a/gnu/packages/patches/python-packaging-test-arch.patch b/gnu/packages/patches/python-packaging-test-arch.patch new file mode 100644 index 0000000000..df80a62544 --- /dev/null +++ b/gnu/packages/patches/python-packaging-test-arch.patch @@ -0,0 +1,65 @@ +Fix tests that are "hard coded" to expect x86_64 output by mocking the platform interface. + +Submitted upstream: +https://github.com/pypa/packaging/pull/176 + +diff --git a/tests/test_tags.py b/tests/test_tags.py +index 1eacf68..0a3f1b4 100644 +--- a/tests/test_tags.py ++++ b/tests/test_tags.py +@@ -435,37 +435,43 @@ class TestManylinuxPlatform: + linux_platform = list(tags._linux_platforms(is_32bit=False)) + assert linux_platform == ["linux_x86_64"] + +- def test_linux_platforms_manylinux1(self, monkeypatch): ++ def test_linux_platforms_manylinux1(self, is_x86, monkeypatch): + monkeypatch.setattr( + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux1" + ) +- if platform.system() != "Linux": ++ if platform.system() != "Linux" or not is_x86: + monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++ monkeypatch.setattr(platform, "machine", lambda: "x86_64") + platforms = list(tags._linux_platforms(is_32bit=False)) +- assert platforms == ["manylinux1_x86_64", "linux_x86_64"] ++ arch = platform.machine() ++ assert platforms == ["manylinux1_" + arch, "linux_" + arch] + +- def test_linux_platforms_manylinux2010(self, monkeypatch): ++ def test_linux_platforms_manylinux2010(self, is_x86, monkeypatch): + monkeypatch.setattr( + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2010" + ) +- if platform.system() != "Linux": ++ if platform.system() != "Linux" or not is_x86: + monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++ monkeypatch.setattr(platform, "machine", lambda: "x86_64") + platforms = list(tags._linux_platforms(is_32bit=False)) +- expected = ["manylinux2010_x86_64", "manylinux1_x86_64", "linux_x86_64"] ++ arch = platform.machine() ++ expected = ["manylinux2010_" + arch, "manylinux1_" + arch, "linux_" + arch] + assert platforms == expected + +- def test_linux_platforms_manylinux2014(self, monkeypatch): ++ def test_linux_platforms_manylinux2014(self, is_x86, monkeypatch): + monkeypatch.setattr( + tags, "_is_manylinux_compatible", lambda name, _: name == "manylinux2014" + ) +- if platform.system() != "Linux": ++ if platform.system() != "Linux" or not is_x86: + monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") ++ monkeypatch.setattr(platform, "machine", lambda: "x86_64") + platforms = list(tags._linux_platforms(is_32bit=False)) ++ arch = platform.machine() + expected = [ +- "manylinux2014_x86_64", +- "manylinux2010_x86_64", +- "manylinux1_x86_64", +- "linux_x86_64", ++ "manylinux2014_" + arch, ++ "manylinux2010_" + arch, ++ "manylinux1_" + arch, ++ "linux_" + arch, + ] + assert platforms == expected + diff --git a/gnu/packages/patches/python2-parameterized-docstring-test.patch b/gnu/packages/patches/python2-parameterized-docstring-test.patch new file mode 100644 index 0000000000..14691e1904 --- /dev/null +++ b/gnu/packages/patches/python2-parameterized-docstring-test.patch @@ -0,0 +1,18 @@ +Skip unicode docstring test, required when running on Python 2. + +See <https://github.com/wolever/parameterized/issues/44>. + +--- a/parameterized/test.py ++++ b/parameterized/test.py +@@ -284,11 +284,6 @@ + " More" %(foo, ) + ) + +- @parameterized.expand([param("foo")]) +- def test_unicode_docstring(self, foo): +- u"""Döcumentation.""" +- self._assert_docstring(u"Döcumentation [with foo=%r]." %(foo, )) +- + @parameterized.expand([param("foo", )]) + def test_default_values_get_correct_value(self, foo, bar=12): + """Documentation""" diff --git a/gnu/packages/patches/red-eclipse-remove-gamma-name-hack.patch b/gnu/packages/patches/red-eclipse-remove-gamma-name-hack.patch deleted file mode 100644 index 573920cb99..0000000000 --- a/gnu/packages/patches/red-eclipse-remove-gamma-name-hack.patch +++ /dev/null @@ -1,52 +0,0 @@ -From b16b4963c1ad81bb9ef784bc4913a4c8ab5f1bb4 Mon Sep 17 00:00:00 2001 -From: Lee Salzman <lsalzman@gmail.com> -Date: Tue, 12 Sep 2017 14:45:10 -0400 -Subject: [PATCH] remove gamma name hack - ---- - src/engine/main.cpp | 6 +++--- - src/shared/cube.h | 8 -------- - 2 files changed, 3 insertions(+), 11 deletions(-) - -diff --git a/src/engine/main.cpp b/src/engine/main.cpp -index 1032004d..77c9233a 100644 ---- a/src/engine/main.cpp -+++ b/src/engine/main.cpp -@@ -278,10 +278,10 @@ static void setgamma(int val) - } - - static int curgamma = 100; --VARF(IDF_PERSIST, gamma, 30, 100, 300, -+VARFN(IDF_PERSIST, gamma, reqgamma, 30, 100, 300, - { -- if(initing || gamma == curgamma) return; -- curgamma = gamma; -+ if(initing || reqgamma == curgamma) return; -+ curgamma = reqgamma; - setgamma(curgamma); - }); - -diff --git a/src/shared/cube.h b/src/shared/cube.h -index 3864c492..7ff5e267 100644 ---- a/src/shared/cube.h -+++ b/src/shared/cube.h -@@ -3,19 +3,11 @@ - - #define _FILE_OFFSET_BITS 64 - --#ifdef __GNUC__ --#define gamma __gamma --#endif -- - #ifdef WIN32 - #define _USE_MATH_DEFINES - #endif - #include <math.h> - --#ifdef __GNUC__ --#undef gamma --#endif -- - #include <string.h> - #include <stdio.h> - #include <stdlib.h> diff --git a/gnu/packages/patches/spice-fix-test-armhf.patch b/gnu/packages/patches/spice-fix-test-armhf.patch new file mode 100644 index 0000000000..5c51bd6ede --- /dev/null +++ b/gnu/packages/patches/spice-fix-test-armhf.patch @@ -0,0 +1,19 @@ +Fix test failure on armhf and ppc64el: +https://gitlab.freedesktop.org/spice/spice-server/issues/31 + +Taken from upstream: +https://gitlab.freedesktop.org/spice/spice/commit/19f9f454e0777d851f26d14df0c7984267c57015 + +diff --git a/server/tests/test-qxl-parsing.c b/server/tests/test-qxl-parsing.c +index 60ca8f88c62441e02577ced21e4f60a08ad4171a..234bdabc9ce619d0799b5136f1d72357b0b2f490 100644 +--- a/server/tests/test-qxl-parsing.c ++++ b/server/tests/test-qxl-parsing.c +@@ -96,7 +96,7 @@ static void test_memslot_invalid_slot_id(void) + RedMemSlotInfo mem_info; + init_meminfo(&mem_info); + +- memslot_get_virt(&mem_info, 1 << mem_info.memslot_id_shift, 16, 0); ++ memslot_get_virt(&mem_info, UINT64_C(1) << mem_info.memslot_id_shift, 16, 0); + } + + static void test_memslot_invalid_addresses(void) diff --git a/gnu/packages/patches/supercollider-boost-1.70-build-fix.patch b/gnu/packages/patches/supercollider-boost-1.70-build-fix.patch deleted file mode 100644 index 073044fccb..0000000000 --- a/gnu/packages/patches/supercollider-boost-1.70-build-fix.patch +++ /dev/null @@ -1,28 +0,0 @@ -Patches taken from https://gitweb.gentoo.org/repo/gentoo.git/tree/media-sound/supercollider/files/supercollider-3.10.2-boost-1.70.patch?id=a420618dc766bba0654dbe0ef67008fdc5e901c6 to fix supercollider build with boost 1.70. - -diff --git a/server/supernova/sc/sc_osc_handler.cpp b/server/supernova/sc/sc_osc_handler.cpp -index 5116a1be87..96e937ec25 100644 ---- a/server/supernova/sc/sc_osc_handler.cpp -+++ b/server/supernova/sc/sc_osc_handler.cpp -@@ -728,7 +728,8 @@ void sc_osc_handler::tcp_connection::handle_message() { - - - void sc_osc_handler::start_tcp_accept(void) { -- tcp_connection::pointer new_connection = tcp_connection::create(tcp_acceptor_.get_io_service()); -+ tcp_connection::pointer new_connection = -+ tcp_connection::create((boost::asio::io_context&)tcp_acceptor_.get_executor().context()); - - tcp_acceptor_.async_accept( - new_connection->socket(), -diff --git a/server/supernova/utilities/utils.hpp b/server/supernova/utilities/utils.hpp -index 35b8ab5ad..a7c191f2d 100644 ---- a/server/supernova/utilities/utils.hpp -+++ b/server/supernova/utilities/utils.hpp -@@ -23,6 +23,7 @@ - - #include <type_traits> - -+#include <boost/checked_delete.hpp> - #include <boost/intrusive_ptr.hpp> - #include <boost/noncopyable.hpp> - #include <boost/detail/atomic_count.hpp> diff --git a/gnu/packages/patches/teeworlds-use-latest-wavpack.patch b/gnu/packages/patches/teeworlds-use-latest-wavpack.patch deleted file mode 100644 index 3ad1340d2e..0000000000 --- a/gnu/packages/patches/teeworlds-use-latest-wavpack.patch +++ /dev/null @@ -1,126 +0,0 @@ -Downloaded from https://salsa.debian.org/games-team/teeworlds/raw/master/debian/patches/new-wavpack.patch. - -From: Markus Koschany <apo@debian.org> -Date: Thu, 25 Oct 2018 20:52:27 +0200 -Subject: new-wavpack - -Make wavpack compatible with Debian's version. ---- - src/engine/client/sound.cpp | 33 +++++++++++++++------------------ - src/engine/client/sound.h | 4 ---- - 2 files changed, 15 insertions(+), 22 deletions(-) - -diff --git a/src/engine/client/sound.cpp b/src/engine/client/sound.cpp -index 048ec24..80de3c5 100644 ---- a/src/engine/client/sound.cpp -+++ b/src/engine/client/sound.cpp -@@ -325,10 +325,6 @@ void CSound::RateConvert(int SampleID) - pSample->m_NumFrames = NumFrames; - } - --int CSound::ReadData(void *pBuffer, int Size) --{ -- return io_read(ms_File, pBuffer, Size); --} - - ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - { -@@ -336,6 +332,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - int SampleID = -1; - char aError[100]; - WavpackContext *pContext; -+ char aWholePath[1024]; -+ IOHANDLE File; - - // don't waste memory on sound when we are stress testing - if(g_Config.m_DbgStress) -@@ -349,25 +347,29 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - return CSampleHandle(); - - lock_wait(m_SoundLock); -- ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL); -- if(!ms_File) -+ File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL, aWholePath, sizeof(aWholePath)); -+ if(!File) - { - dbg_msg("sound/wv", "failed to open file. filename='%s'", pFilename); - lock_unlock(m_SoundLock); - return CSampleHandle(); - } -+ else -+ { -+ io_close(File); -+ } - - SampleID = AllocID(); - if(SampleID < 0) - { -- io_close(ms_File); -- ms_File = 0; -+ io_close(File); -+ File = 0; - lock_unlock(m_SoundLock); - return CSampleHandle(); - } - pSample = &m_aSamples[SampleID]; - -- pContext = WavpackOpenFileInput(ReadData, aError); -+ pContext = WavpackOpenFileInput(aWholePath, aError, OPEN_2CH_MAX, 0); - if (pContext) - { - int m_aSamples = WavpackGetNumSamples(pContext); -@@ -385,8 +387,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - if(pSample->m_Channels > 2) - { - dbg_msg("sound/wv", "file is not mono or stereo. filename='%s'", pFilename); -- io_close(ms_File); -- ms_File = 0; -+ io_close(File); -+ File = 0; - lock_unlock(m_SoundLock); - return CSampleHandle(); - } -@@ -401,8 +403,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - if(BitsPerSample != 16) - { - dbg_msg("sound/wv", "bps is %d, not 16, filname='%s'", BitsPerSample, pFilename); -- io_close(ms_File); -- ms_File = 0; -+ io_close(File); -+ File = 0; - lock_unlock(m_SoundLock); - return CSampleHandle(); - } -@@ -429,9 +431,6 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) - dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError); - } - -- io_close(ms_File); -- ms_File = NULL; -- - if(g_Config.m_Debug) - dbg_msg("sound/wv", "loaded %s", pFilename); - -@@ -560,7 +559,5 @@ bool CSound::IsPlaying(CSampleHandle SampleID) - return Ret; - } - --IOHANDLE CSound::ms_File = 0; -- - IEngineSound *CreateEngineSound() { return new CSound; } - -diff --git a/src/engine/client/sound.h b/src/engine/client/sound.h -index ff357c0..cec2cde 100644 ---- a/src/engine/client/sound.h -+++ b/src/engine/client/sound.h -@@ -21,10 +21,6 @@ public: - - static void RateConvert(int SampleID); - -- // TODO: Refactor: clean this mess up -- static IOHANDLE ms_File; -- static int ReadData(void *pBuffer, int Size); -- - virtual bool IsSoundEnabled() { return m_SoundEnabled != 0; } - - virtual CSampleHandle LoadWV(const char *pFilename); diff --git a/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch b/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch deleted file mode 100644 index 9c050f7ee6..0000000000 --- a/gnu/packages/patches/usb-modeswitch-accept-config-arg.patch +++ /dev/null @@ -1,42 +0,0 @@ ---- old/usb_modeswitch.tcl 1970-01-01 01:00:00.000000000 +0100 -+++ usb_modeswitch.tcl 2019-06-12 08:39:42.140000000 +0200 -@@ -41,7 +41,7 @@ - global scsi usb config match device flags setup devdir loginit - - set flags(config) "" --Log "[ParseGlobalConfig]" -+Log "[ParseGlobalConfig $argv]" - - if {$flags(stordelay) > 0} { - SetStorageDelay $flags(stordelay) -@@ -496,9 +496,21 @@ - # end of proc {MatchDevice} - - --proc {ParseGlobalConfig} {} { -+proc {ParseGlobalConfig} {argv} { - - global flags -+ -+set configFileParam "" -+for {set i 0} {$i < [llength $argv]} {incr i} { -+ switch -glob -- [set v [lindex $argv $i]] { -+ --config-file=* { -+ set configFileParam $v -+ } -+ } -+} -+if {$configFileParam != ""} { -+ set configFile [string range $configFileParam [string length "--config-file="] end] -+} else { - set configFile "" - set places [list /etc/usb_modeswitch.conf /etc/sysconfig/usb_modeswitch /etc/default/usb_modeswitch] - foreach cfg $places { -@@ -507,6 +519,7 @@ - break - } - } -+} - if {$configFile == ""} {return} - - set rc [open $configFile r] diff --git a/gnu/packages/patches/xmoto-remove-glext.patch b/gnu/packages/patches/xmoto-remove-glext.patch new file mode 100644 index 0000000000..ad0c848d1d --- /dev/null +++ b/gnu/packages/patches/xmoto-remove-glext.patch @@ -0,0 +1,23 @@ +Description: Allow building without upstream-supplied glext.h +Author: Stephen Kitt <steve@sk2.org> +Bug: http://todo.xmoto.tuxfamily.org/index.php?do=details&task_id=803 + +--- xmoto-0.5.9+dfsg.orig/src/include/xm_OpenGL.h ++++ xmoto-0.5.9+dfsg/src/include/xm_OpenGL.h +@@ -1,7 +1,6 @@ + #ifdef ENABLE_OPENGL + /* Pull in OpenGL headers */ + /* following scissored from SDL_opengl.h */ +-#define __glext_h_ /* Don't let gl.h include glext.h */ + #ifdef HAVE_APPLE_OPENGL_FRAMEWORK + #include <OpenGL/gl.h> /* Header File For The OpenGL Library */ + #include <OpenGL/glu.h> /* Header File For The GLU Library */ +@@ -12,8 +11,5 @@ + #include <GL/gl.h> /* Header File For The OpenGL Library */ + #include <GL/glu.h> /* Header File For The GLU Library */ + #endif +-#undef __glext_h_ +- +-#include "../glext.h" + + #endif diff --git a/gnu/packages/patches/xmoto-reproducible.patch b/gnu/packages/patches/xmoto-reproducible.patch new file mode 100644 index 0000000000..606f4ec714 --- /dev/null +++ b/gnu/packages/patches/xmoto-reproducible.patch @@ -0,0 +1,24 @@ +Description: Avoid __DATE__ and __TIME__ to build reproducibly +Author: Stephen Kitt <skitt@debian.org> + +--- a/src/GameInit.cpp ++++ b/src/GameInit.cpp +@@ -248,7 +248,6 @@ + Logger::setActiv(XMSession::instance()->noLog() == false); /* apply log activ mode */ + + LogInfo(std::string("X-Moto " + XMBuild::getVersionString(true)).c_str()); +- LogInfo("compiled at "__DATE__" "__TIME__); + if(SwapEndian::bigendien) { + LogInfo("Systeme is bigendien"); + } else { +--- a/src/states/StateOptions.cpp ++++ b/src/states/StateOptions.cpp +@@ -1233,8 +1233,6 @@ + int p=25; + makeWindowOptions_infos_line(v_window, "Version", "X-Moto " + XMBuild::getVersionString(true), p); + p+=20; +- makeWindowOptions_infos_line(v_window, "Compilation date", __DATE__ " " __TIME__, p); +- p+=20; + makeWindowOptions_infos_line(v_window, "User data directory", XMFS::getUserDir(FDT_DATA), p); + p+=20; + makeWindowOptions_infos_line(v_window, "User config directory", XMFS::getUserDir(FDT_CONFIG), p); diff --git a/gnu/packages/patches/xmoto-utf8.patch b/gnu/packages/patches/xmoto-utf8.patch new file mode 100644 index 0000000000..e5d0dfb2a4 --- /dev/null +++ b/gnu/packages/patches/xmoto-utf8.patch @@ -0,0 +1,16 @@ +Description: Build with g++'s new utf8.h +Author: Stephen Kitt <skitt@debian.org> + +--- a/src/helpers/utf8.h ++++ b/src/helpers/utf8.h +@@ -18,8 +18,8 @@ + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + =============================================================================*/ + +-#ifndef __UTF8_H__ +-#define __UTF8_H__ ++#ifndef __XMOTO_UTF8_H__ ++#define __XMOTO_UTF8_H__ + + #include <vector> + #include <string> diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c94afbc4b9..13f038d466 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -52,10 +52,12 @@ #:use-module (gnu packages compression) #:use-module (gnu packages freedesktop) #:use-module (gnu packages less) + #:use-module (gnu packages ncurses) #:use-module (gnu packages perl-check) #:use-module (gnu packages perl-compression) #:use-module (gnu packages perl-web) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages readline) #:use-module (gnu packages textutils)) ;;; @@ -8491,6 +8493,40 @@ other terminal related features, including retrieval/modification of the screen size, and retrieval/modification of the control characters.") (license (package-license perl)))) +(define-public perl-term-readline-gnu + (package + (name "perl-term-readline-gnu") + (version "1.36") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/H/HA/HAYASHI/" + "Term-ReadLine-Gnu-" version ".tar.gz")) + (sha256 + (base32 + "09b9mcmp09kdfh5jaqdr528yny8746hvn3f185aqd6rw06jgf24s")))) + (build-system perl-build-system) + (inputs + `(("readline" ,readline) + ("ncurses" ,ncurses))) + (arguments + `(#:tests? #f ; Tests fail without other Term::ReadLine interfaces present + #:phases (modify-phases %standard-phases + (add-before 'configure 'patch-search-lib + (lambda _ + (substitute* "Makefile.PL" + ;; The configuration provides no way to pass + ;; additional directories to search for the ncurses + ;; library, so just skip the search. + (("&search_lib\\('-lncurses'\\)") "'-lncurses'"))))))) + (home-page "https://metacpan.org/release/Term-ReadLine-Gnu") + (synopsis "GNU Readline/History Library interface for Perl") + (description "This module implements an interface to the GNU Readline +library. It gives you input line editing facilities, input history management +facilities, completion facilities, etc. Term::ReadLine::Gnu is upwards +compatible with Term::ReadLine.") + (license (package-license perl)))) + (define-public perl-term-size-any (package (name "perl-term-size-any") diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index df9821b9d8..237baa932c 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org> -;;; Copyright © 2016, 2017, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2016, 2017, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -37,7 +37,9 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) + #:use-module (gnu packages qt) #:use-module (gnu packages texinfo) #:use-module (gnu packages tex) #:use-module (gnu packages compression) @@ -180,14 +182,14 @@ colors, styles, options and details.") (define-public asymptote (package (name "asymptote") - (version "2.61") + (version "2.62") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/asymptote/" version "/asymptote-" version ".src.tgz")) (sha256 (base32 - "0gcd75yixn67lpiky70yhaa0ylr8g1cn65bpr9zx78h2vrpsmk7k")))) + "0510vnlpfyrvshsxr5lh3klwyhmn2cf4ba1ja476mbv5dcqqbc30")))) (build-system gnu-build-system) ;; Note: The 'asy' binary retains a reference to docdir for use with its ;; "help" command in interactive mode, so adding a "doc" output is not @@ -196,7 +198,7 @@ colors, styles, options and details.") `(("emacs" ,emacs-minimal) ("gs" ,ghostscript) ;For tests ("perl" ,perl) - ("texinfo" ,texinfo) ;For generating documentation + ("texinfo" ,texinfo) ;For generating documentation ;; For the manual and the tests. ("texlive" ,(texlive-union (list texlive-amsfonts texlive-epsf @@ -214,6 +216,9 @@ colors, styles, options and details.") ("gsl" ,gsl) ("libgc" ,libgc) ("python" ,python) + ("python-cson" ,python-cson) + ("python-numpy" ,python-numpy) + ("python-pyqt" ,python-pyqt) ("readline" ,readline) ("zlib" ,zlib))) (arguments @@ -271,6 +276,14 @@ colors, styles, options and details.") (for-each (cut install-file <> lisp-dir) (find-files "." "\\.el$")) (emacs-generate-autoloads ,name lisp-dir)) + #t)) + (add-after 'install-Emacs-data 'wrap-python-script + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure 'xasy' runs with the correct PYTHONPATH. + (let* ((out (assoc-ref outputs "out")) + (path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/share/asymptote/GUI/xasy.py") + `("PYTHONPATH" ":" prefix (,path)))) #t))))) (home-page "http://asymptote.sourceforge.net") (synopsis "Script-based vector graphics language") diff --git a/gnu/packages/popt.scm b/gnu/packages/popt.scm index 7f6a2e8e6a..2e77368d20 100644 --- a/gnu/packages/popt.scm +++ b/gnu/packages/popt.scm @@ -62,8 +62,14 @@ line syntax.") (version "1.16") (source (origin (method url-fetch) - (uri (string-append "http://rpm5.org/files/popt/popt-" - version ".tar.gz")) + (uri (list (string-append "http://rpm5.org/files/popt/popt-" + version ".tar.gz") + ;; The rpm5.org domain does not resolve since 2019-06-13, + ;; so fallback to Debians copy. + (string-append "https://deb.debian.org/debian/pool/main" + "/p/popt/popt_" version ".orig.tar.gz"))) + ;; Ensure the file name stays the same. + (file-name (string-append "popt-" version ".tar.gz")) (sha256 (base32 "1j2c61nn2n351nhj4d25mnf3vpiddcykq005w2h6kw79dwlysa77")))) diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index 671dcd1563..8e67779e95 100644 --- a/gnu/packages/pulseaudio.scm +++ b/gnu/packages/pulseaudio.scm @@ -51,6 +51,7 @@ #:use-module (gnu packages python-web) #:use-module (gnu packages pkg-config) #:use-module (gnu packages xiph) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) (define-public libsndfile diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index caa398752e..a4d065d5e7 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -120,7 +120,8 @@ interactions, which will update them to correspond to the new API.") (base32 "0j6j1gvj6x451y3qsx4xbaq9p1w9gg3mwk7n0w80cy8vdyjkngb0")))) (build-system python-build-system) (propagated-inputs - `(("python-importlib-metadata" ,python-importlib-metadata) + `(("python-docutils" ,python-docutils) + ("python-importlib-metadata" ,python-importlib-metadata) ("python-more-itertools" ,python-more-itertools))) (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm))) diff --git a/gnu/packages/python-compression.scm b/gnu/packages/python-compression.scm index 0f2bc78c12..70abc7bad1 100644 --- a/gnu/packages/python-compression.scm +++ b/gnu/packages/python-compression.scm @@ -211,31 +211,38 @@ install: libbitshuffle.so (define-public python-zipp (package (name "python-zipp") - (version "0.5.1") + (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "zipp" version)) (sha256 (base32 - "1hsv4zwy1pwnbrr63wjjkpwrmnk36ngbkkqw01bj5hcwh1z3m56a")))) + "0v3qayhqv7vyzydpydwcp51bqciw8p2ajddw68x5k8zppc0vx3yk")))) (build-system python-build-system) (propagated-inputs - `(("python-contextlib2" ,python-contextlib2) - ("python-pathlib2" ,python-pathlib2) - ("python-rst.linker" ,python-rst.linker))) + `(("python-more-itertools" ,python-more-itertools))) (native-inputs - `(("python-setuptools-scm" ,python-setuptools-scm) - ("python-sphinx" ,python-sphinx) - ("python-unittest2" ,python-unittest2))) + `(("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/jaraco/zipp") (synopsis "Backport of pathlib-compatible object wrapper for zip files") (description "This package provides a @code{pathlib}-compatible @code{Zipfile} object wrapper. It provides a backport of the @code{Path} object.") + (properties `((python2-variant . ,(delay python2-zipp)))) (license license:expat))) +(define-public python2-zipp + (let ((base (package-with-python2 (strip-python2-variant python-zipp)))) + (package/inherit + base + (native-inputs + `(("python-contextlib2" ,python2-contextlib2) + ("python-pathlib2" ,python2-pathlib2) + ("python-unittest2" ,python2-unittest2) + ,@(package-native-inputs base)))))) + (define-public python-zstandard (package (name "python-zstandard") diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index 4a262ec793..b4241362ba 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -37,6 +37,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages sphinx) #:use-module (gnu packages time) + #:use-module (gnu packages xml) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 179e64e0a1..7808b7631e 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -14,7 +14,7 @@ ;;; Copyright © 2015 Cyril Roelandt <tipecaml@gmail.com> ;;; Copyright © 2015, 2016, 2017, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> -;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2015, 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2015, 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com> @@ -1679,7 +1679,7 @@ and to spawn subprocesses to handle requests.") (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose))) - (home-page "http://pythonpaste.org/deploy/") + (home-page "https://pylonsproject.org/") (synopsis "Load, configure, and compose WSGI applications and servers") (description @@ -1712,7 +1712,7 @@ file.") ("python-webob" ,python-webob) ("python-six" ,python-six) ("python-beautifulsoup4" ,python-beautifulsoup4))) - (home-page "http://webtest.pythonpaste.org/") + (home-page "https://docs.pylonsproject.org/projects/webtest/") (synopsis "Helper to test WSGI applications") (description "Webtest allows you to test your Python web applications without starting an HTTP server. It supports anything that supports the @@ -2748,17 +2748,26 @@ List.") (define-public python-publicsuffix2 (package (name "python-publicsuffix2") - (version "2.20160818") + (version "2.20191221") (source (origin (method url-fetch) - (uri (pypi-uri "publicsuffix2" version ".tar.bz2")) + (uri (pypi-uri "publicsuffix2" version)) (sha256 - (base32 - "1bb55yka9vkn7i6y1kjzxa516kh6v4gsrxa90w5wdz5p5n968r68")))) + (base32 "0yzysvfj1najr1mb4pcqrbmjir3xpb69rlffln95a3cdm8qwry00")))) (build-system python-build-system) (arguments - '(#:tests? #f)) ; The test suite requires network access. + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'ignore-maintainer-inputs + (lambda _ + ;; Comment out a demand for python-requests, which is used only by + ;; the unused ‘update_psl’ helper command. + (substitute* "setup.py" + (("'requests " match) + (format "# ~a" match))) + #t))) + #:tests? #f)) ; the test suite requires network access (home-page "https://github.com/pombredanne/python-publicsuffix2") (synopsis "Get a public suffix for a domain name using the Public Suffix List") (description "Get a public suffix for a domain name using the Public Suffix @@ -2885,7 +2894,7 @@ available in Django, but is a standalone package.") ("python-nose" ,python-nose))) (propagated-inputs `(("python-six" ,python-six))) - (home-page "http://pythonpaste.org") + (home-page "https://pythonpaste.readthedocs.io/") (synopsis "Python web development tools, focusing on WSGI") (description @@ -2914,7 +2923,8 @@ follows ideas flowing from WSGI (Web Standard Gateway Interface).") (propagated-inputs `(("python-paste" ,python-paste) ("python-pastedeploy" ,python-pastedeploy))) - (home-page "http://pythonpaste.org/script/") + (home-page (string-append "https://web.archive.org/web/20161025192515/" + "http://pythonpaste.org/script/")) (arguments '(;; Unfortunately, this requires the latest unittest2, ;; but that requires traceback2 which requires linecache2 which requires @@ -3413,7 +3423,7 @@ hard or impossible to fix in cssselect.") ("python-pytest-cov" ,python-pytest-cov) ("python-sphinx" ,python-sphinx) ("texinfo" ,texinfo))) - (home-page "http://gunicorn.org/") + (home-page "https://gunicorn.org/") (synopsis "Python WSGI HTTP Server for UNIX") (description "Gunicorn ‘Green Unicorn’ is a Python WSGI HTTP Server for UNIX. It’s a pre-fork worker model ported from Ruby’s diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d6f2ac8179..583420e6fa 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26,7 +26,7 @@ ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org> ;;; Copyright © 2016 David Craven <david@craven.ch> -;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org> ;;; Copyright © 2016, 2017, 2019 Alex Vong <alexvong1995@gmail.com> @@ -51,7 +51,7 @@ ;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; Copyright © 2016, 2018 Tomáš Čech <sleep_walker@gnu.org> -;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018, 2019 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018, 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> @@ -112,6 +112,7 @@ #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) + #:use-module (gnu packages kerberos) #:use-module (gnu packages libevent) #:use-module (gnu packages libffi) #:use-module (gnu packages linux) @@ -1908,18 +1909,20 @@ with sensible defaults out of the box.") (define-public python-wheel (package (name "python-wheel") - (version "0.32.3") + (version "0.33.6") (source (origin (method url-fetch) (uri (pypi-uri "wheel" version)) (sha256 (base32 - "1dhxl1bf18bx9szmqcnxbg6204hp3im8089q3hkwh5jfa6zh75q2")))) + "0ii6f34rvpjg3nmw4bc2h7fhdsy38y1h93hghncfs5akfrldmj8h")))) (build-system python-build-system) - (native-inputs - `(("python-jsonschema" ,python-jsonschema) - ("python-pytest-cov" ,python-pytest-cov))) + (arguments + ;; FIXME: The test suite runs "python setup.py bdist_wheel", which in turn + ;; fails to find the newly-built bdist_wheel library, even though it is + ;; available on PYTHONPATH. What search path is consulted by setup.py? + '(#:tests? #f)) (home-page "https://bitbucket.org/pypa/wheel/") (synopsis "Format for built Python packages") (description @@ -1930,15 +1933,10 @@ packages will be properly installed with only the @code{Unpack} step and the unpacked archive preserves enough information to @code{Spread} (copy data and scripts to their final locations) at any later time. Wheel files can be installed with a newer @code{pip} or with wheel's own command line utility.") - (license license:expat) - (properties `((python2-variant . ,(delay python2-wheel)))))) + (license license:expat))) (define-public python2-wheel - (let ((wheel (package-with-python2 - (strip-python2-variant python-wheel)))) - (package (inherit wheel) - (native-inputs `(("python2-functools32" ,python2-functools32) - ,@(package-native-inputs wheel)))))) + (package-with-python2 python-wheel)) (define-public python-vcversioner (package @@ -2586,6 +2584,30 @@ important tasks for becoming a daemon process: ;; Only setup.py is gpl3+, everything else is apache 2.0 licensed. (license (list license:asl2.0 license:gpl3+)))) +(define-public python-anytree + (package + (name "python-anytree") + (version "2.8.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "anytree" version)) + (sha256 + (base32 + "1aycpc387wqz7h9w2p53qxn43qsh3m6by6ak4kkc66x9aprr63rz")))) + (build-system python-build-system) + (propagated-inputs + `(("python-six" ,python-six))) + (native-inputs + `(;; For tests. + ("graphviz" ,graphviz) ;for 'dot' + ("python-nose" ,python-nose))) + (home-page "https://github.com/c0fec0de/anytree") + (synopsis "Lightweight tree data library") + (description + "@code{anytree} is a simple, lightweight, and extensible tree data +structure for Python.") + (license license:asl2.0))) + (define-public python-docutils (package (name "python-docutils") @@ -3055,14 +3077,14 @@ Server (PLS).") (define-public python-language-server (package (name "python-language-server") - (version "0.31.4") + (version "0.31.6") (source (origin (method url-fetch) (uri (pypi-uri "python-language-server" version)) (sha256 (base32 - "1nrs56jpx7dvghaas0kc5k9lxas5vr3awj3k87p4akki43nsblb8")))) + "0cqrffd5272p2hifa35rf1h1g6dss741jmjkwa43jninifmbz0df")))) (build-system python-build-system) (propagated-inputs `(("python-pluggy" ,python-pluggy) @@ -4961,27 +4983,47 @@ all the newest features of the standard @code{pathlib} can be used also on older Python versions.") (license license:expat))) +(define-public python2-importlib-resources + (package + (name "python2-importlib-resources") + (version "1.0.2") + (source (origin + (method url-fetch) + (uri (pypi-uri "importlib_resources" version)) + (sha256 + (base32 + "0y3hg12iby1qyaspnbisz4s4vxax7syikk3skznwqizqyv89y9yk")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2)) + (native-inputs + `(("python-wheel" ,python2-wheel))) + (propagated-inputs + `(("python-pathlib2" ,python2-pathlib2) + ("python-typing" ,python2-typing))) + (home-page "https://gitlab.com/python-devs/importlib_resources") + (synopsis "Backport of @code{importlib.resources} from Python 3.7") + (description + "This package provides an implementation of @code{importlib.resources} +for older versions of Python.") + (license license:asl2.0))) + (define-public python-importlib-metadata (package (name "python-importlib-metadata") - (version "0.23") + (version "1.4.0") (source (origin (method url-fetch) (uri (pypi-uri "importlib_metadata" version)) (sha256 - (base32 "09mdqdfv5rdrwz80jh9m379gxmvk2vhjfz0fg53hid00icvxf65a")))) + (base32 "1n76444v7zn910xrhh8954jdn4byxbn9f1jck6b85a716mbh2z7i")))) (build-system python-build-system) (propagated-inputs - `(("python-configparser" ,python-configparser) - ("python-contextlib2" ,python-contextlib2) - ("python-docutils" ,python-docutils) - ("python-pathlib2" ,python-pathlib2) - ("python-rst.linker" ,python-rst.linker) - ("python-zipp" ,python-zipp))) + `(("python-zipp" ,python-zipp))) (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm) - ("python-sphinx" ,python-sphinx))) + ("python-packaging" ,python-packaging))) (home-page "https://importlib-metadata.readthedocs.io/") (synopsis "Read metadata from Python packages") (description @@ -4991,8 +5033,22 @@ its top-level name. This functionality intends to replace most uses of @code{pkg_resources} entry point API and metadata API. Along with @code{importlib.resources} in Python 3.7 and newer, this can eliminate the need to use the older and less efficient @code{pkg_resources} package.") + (properties `((python2-variant . ,(delay python2-importlib-metadata)))) (license license:asl2.0))) +(define-public python2-importlib-metadata + (let ((base (package-with-python2 (strip-python2-variant + python-importlib-metadata)))) + (package/inherit + base + (name "python2-importlib-metadata") + (propagated-inputs + `(("python-configparser" ,python2-configparser) + ("python-contextlib2" ,python2-contextlib2) + ("python-importlib-resources" ,python2-importlib-resources) + ("python-pathlib2" ,python2-pathlib2) + ,@(package-propagated-inputs base)))))) + (define-public python-jaraco-packaging (package (name "python-jaraco-packaging") @@ -5754,35 +5810,6 @@ the GObject Introspection bindings to libnotify for non-GTK applications.") (define-public python2-notify2 (package-with-python2 python-notify2)) -(define-public python-lxml - (package - (name "python-lxml") - (version "4.4.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "lxml" version)) - (sha256 - (base32 "01nvb5j8vs9nk4z5s3250b1m22b4d08kffa36if3g1mdygdrvxpg")))) - (build-system python-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "make" "test")))))) - (inputs - `(("libxml2" ,libxml2) - ("libxslt" ,libxslt))) - (home-page "https://lxml.de/") - (synopsis "Python XML processing library") - (description - "The lxml XML toolkit is a Pythonic binding for the C libraries -libxml2 and libxslt.") - (license license:bsd-3))) ; and a few more, see LICENSES.txt - -(define-public python2-lxml - (package-with-python2 python-lxml)) - ;; beautifulsoup4 has a totally different namespace than 3.x, ;; and pypi seems to put it under its own name, so I guess we should too (define-public python-beautifulsoup4 @@ -9983,14 +10010,14 @@ are synchronized with data exchanges on \"channels\".") (define-public python-objgraph (package (name "python-objgraph") - (version "3.4.0") + (version "3.4.1") (source (origin (method url-fetch) (uri (pypi-uri "objgraph" version)) (sha256 (base32 - "184m09am5gpbqfaiy7l0hwh476mczbrly1dffs0rw2p1d1i2q32a")))) + "19qmqsh984zq1rzzjy4vqnmviaqnymcyl8h7z99pnicbgwnm2adz")))) (build-system python-build-system) (propagated-inputs `(("python-graphviz" ,python-graphviz))) @@ -10004,6 +10031,9 @@ are synchronized with data exchanges on \"channels\".") graphviz.") (license license:expat))) +(define-public python2-objgraph + (package-with-python2 python-objgraph)) + (define-public python-gevent (package (name "python-gevent") @@ -10289,25 +10319,24 @@ are optionally backed by a C extension built on librdkafka.") (package-with-python2 python-pykafka)) (define-public python-wcwidth - (package - (name "python-wcwidth") - (version "0.1.7") - (source - (origin - (method url-fetch) - (uri (pypi-uri "wcwidth" version)) - (sha256 - (base32 - "0pn6dflzm609m4r3i8ik5ni9ijjbb5fa3vg1n7hn6vkd49r77wrx")))) - (build-system python-build-system) - (home-page "https://github.com/jquast/wcwidth") - (synopsis "Measure number of terminal column cells of wide-character codes") - (description "Wcwidth measures the number of terminal column cells of + (package + (name "python-wcwidth") + (version "0.1.8") + (source (origin + (method url-fetch) + (uri (pypi-uri "wcwidth" version)) + (sha256 + (base32 + "1a1pzds3xzfylm5mnc5f6c1p8kiig0daqjc9gygd9rc3cj53x2zj")))) + (build-system python-build-system) + (home-page "https://github.com/jquast/wcwidth") + (synopsis "Measure number of terminal column cells of wide-character codes") + (description "Wcwidth measures the number of terminal column cells of wide-character codes. It is useful for those implementing a terminal emulator, or programs that carefully produce output to be interpreted by one. It is a Python implementation of the @code{wcwidth} and @code{wcswidth} C functions specified in POSIX.1-2001 and POSIX.1-2008.") - (license license:expat))) + (license license:expat))) (define-public python2-wcwidth (package-with-python2 python-wcwidth)) @@ -10600,7 +10629,6 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.") ("python-html5lib" ,python-html5lib) ("python-jsonschema" ,python-jsonschema) ("python-msgpack" ,python-msgpack) - ("python-pathlib2" ,python-pathlib2) ("python-pkginfo" ,python-pkginfo) ("python-pyparsing" ,python-pyparsing) ("python-pyrsistent" ,python-pyrsistent) @@ -13050,14 +13078,17 @@ several utilities, as well as an API for building localization tools.") (define-public python-packaging (package (name "python-packaging") - (version "19.2") + (version "20.0") (source (origin (method url-fetch) (uri (pypi-uri "packaging" version)) + ;; XXX: The URL in the patch file is wrong, it should be + ;; <https://github.com/pypa/packaging/pull/256>. + (patches (search-patches "python-packaging-test-arch.patch")) (sha256 (base32 - "0izwlz9h0bw171a1chr311g2y7n657zjaf4mq4rgm8pp9lbj9f98")))) + "1y2ip3a4ykkpgnwgn85j6hkspcl0cg3mzms97f40mk57vwqq67gy")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -15772,14 +15803,14 @@ that is accessible to other projects developed in Cython.") (define-public python-sortedcontainers (package (name "python-sortedcontainers") - (version "2.0.4") + (version "2.1.0") (source (origin (method url-fetch) (uri (pypi-uri "sortedcontainers" version)) (sha256 (base32 - "10hrk2k0hbf9x78vd3f0lj277m1yzfhzzxr0hja718liwb398wk0")))) + "0fm0w5id2yhqld95hg2m636vjgkz377rvgdfqaxc25vbylr9lklp")))) (build-system python-build-system) (native-inputs `(("python-tox" ,python-tox))) @@ -16592,31 +16623,6 @@ for manual interpretation.") (description "Library for simple routing on OSM data") (license license:gpl3+))) -(define-public python-elementpath - (package - (name "python-elementpath") - (version "1.2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "elementpath" version)) - (sha256 - (base32 - "1syn2z543brab23dskh3fjd9pqvz6npqbcicrs2d88dbg26xl08p")))) - (build-system python-build-system) - (home-page - "https://github.com/sissaschool/elementpath") - (synopsis - "XPath 1.0/2.0 parsers and selectors for ElementTree and lxml") - (description - "The proposal of this package is to provide XPath 1.0 and 2.0 selectors -for Python's ElementTree XML data structures, both for the standard -ElementTree library and for the @uref{http://lxml.de, lxml.etree} library. - -For lxml.etree this package can be useful for providing XPath 2.0 selectors, -because lxml.etree already has it's own implementation of XPath 1.0.") - (license license:expat))) - (define-public python-bibtexparser (package (name "python-bibtexparser") @@ -17098,3 +17104,214 @@ scripts to load entry points more quickly.") functional combinators. Parser combinators are just higher-order functions that take parsers as their arguments and return them as result values.") (license license:expat))) + +(define-public python-speg + (package + (name "python-speg") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "speg" version ".zip")) + (sha256 + (base32 "0w9y4jf4787dzhy6rvhwi0mpl0r8qkqmqmyv2hpwdpv8w53yzjqh")))) + (arguments + `(#:tests? #f)) ;FIXME: tests fail, not sure why + (native-inputs + `(("unzip" ,unzip))) + (build-system python-build-system) + (home-page "https://github.com/avakar/speg") + (synopsis "PEG-based parser interpreter with memoization") + (description "This package is a PEG-based parser and interpreter with +memoization.") + (license license:expat))) + +(define-public python-cson + (package + (name "python-cson") + (version "0.8") + (source + (origin + (method url-fetch) + (uri (pypi-uri "cson" version)) + (sha256 + (base32 "00cyvigg4npbph39ghkg77xbxisa6plf75vii24igxfizik0337f")))) + (build-system python-build-system) + (propagated-inputs + `(("python-speg" ,python-speg))) + (home-page "https://github.com/avakar/pycson") + (synopsis "Parser for Coffeescript Object Notation (CSON)") + (description "This package is a parser for Coffeescript Object +Notation (CSON).") + (license license:expat))) + +(define-public python-asynctest + (package + (name "python-asynctest") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "asynctest" version)) + (sha256 + (base32 + "1b3zsy7p84gag6q8ai2ylyrhx213qdk2h2zb6im3xn0m5n264y62")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "python" "-X" "dev" "-m" "unittest" "-v" "test"))) + (add-after 'unpack 'disable-tests + (lambda* _ + (substitute* "test/test_selector.py" + ;; XXX: This test fails for unknown reason inside the build + ;; environment. + (("def test_events_watched_outside_test_are_ignored") + "@unittest.skip('disabled by guix') + def test_events_watched_outside_test_are_ignored"))))))) + (home-page "https://github.com/Martiusweb/asynctest") + (synopsis "Extension of unittest for testing asyncio libraries") + (description + "The package asynctest is built on top of the standard unittest module +and cuts down boilerplate code when testing libraries for asyncio.") + (license license:asl2.0))) + +(define-public python-aionotify + (package + (name "python-aionotify") + (version "0.2.0") + (source + (origin + ;; Source tarball on PyPi lacks tests + (method git-fetch) + (uri (git-reference + (url "https://github.com/rbarrois/aionotify") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1sk9i8czxgsbrswsf1nlb4c82vgnlzi8zrvrxdip92w2z8hqh43y")))) + (build-system python-build-system) + (native-inputs `(("python-asynctest" ,python-asynctest))) + (home-page "https://github.com/rbarrois/aionotify") + (synopsis "Asyncio-powered inotify library") + (description + "@code{aionotify} is a simple, asyncio-based inotify library.") + (license license:bsd-3))) + +(define-public python-forbiddenfruit + (package + (name "python-forbiddenfruit") + (version "0.1.3") + (source + (origin + ;; Source tarball on PyPi lacks Makefile that builds and runs tests + (method git-fetch) + (uri (git-reference + (url "https://github.com/clarete/forbiddenfruit") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1fp2xvdqpi910j9r3q68x38phpxbm700gjdi2m2j5gs91xdnyyh2")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "make" "SKIP_DEPS=1")))))) + (native-inputs + `(("python-nose" ,python-nose) + ("python-coverage" ,python-coverage))) + (home-page "https://github.com/clarete/forbiddenfruit") + (synopsis "Patch python built-in objects") + (description "This project allows Python code to extend built-in types.") + (license (list license:gpl3+ license:expat)))) + +(define-public python-shouldbe + (package + (name "python-shouldbe") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "shouldbe" version)) + (sha256 + (base32 + "16zbvjxf71dl4yfbgcr6idyim3mdrfvix1dv8b95p0s9z07372pj")))) + (build-system python-build-system) + (propagated-inputs + `(("python-forbiddenfruit" ,python-forbiddenfruit))) + (native-inputs + `(("python-nose" ,python-nose))) + (home-page "https://github.com/directxman12/should_be") + (synopsis "Python Assertion Helpers inspired by Shouldly") + (description + "Python Assertion Helpers inspired by Shouldly.") + (license license:isc))) + +(define-public python-k5test + (package + (name "python-k5test") + (version "0.9.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "k5test" version)) + (sha256 + (base32 + "1lqp3jgfngyhaxjgj3n230hn90wsylwilh120yjf62h7b1s02mh8")))) + (build-system python-build-system) + (propagated-inputs + `(("python-six" ,python-six) + ;; `which`, `kadmin.local` binaries called inside library + ("which" ,which) + ("mit-krb5" ,mit-krb5))) + (native-inputs `(("mit-krb5" ,mit-krb5))) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-paths + (lambda* _ + (substitute* "k5test/realm.py" + (("'kadmin_local'") "'kadmin.local'"))))))) + (home-page "https://github.com/pythongssapi/k5test") + (synopsis "Library for setting up self-contained Kerberos 5 environments") + (description + "@code{k5test} is a library for setting up self-contained Kerberos 5 +environments, and running Python unit tests inside those environments. It is +based on the file of the same name found alongside the MIT Kerberos 5 unit +tests.") + (license license:isc))) + +(define-public python-gssapi + (package + (name "python-gssapi") + (version "1.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "gssapi" version)) + (sha256 + (base32 + "1gymg4asvwrz7y13qpwp2s5g8qwq179d72gkj09q6bfcgs82l5wr")))) + (build-system python-build-system) + (propagated-inputs + `(("python-decorator" ,python-decorator) + ("python-six" ,python-six))) + (inputs + `(("mit-krb5" ,mit-krb5))) + ;; for tests + (native-inputs + `(("python-shouldbe" ,python-shouldbe) + ("python-parameterized" ,python-parameterized) + ("python-k5test" ,python-k5test) + ("python-nose" ,python-nose))) + (home-page "https://github.com/pythongssapi/python-gssapi") + (synopsis "Python GSSAPI Wrapper") + (description + "Python-GSSAPI provides both low-level and high level wrappers around the +GSSAPI C libraries. While it focuses on the Kerberos mechanism, it should +also be useable with other GSSAPI mechanisms.") + (license license:isc))) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 8dc771a5f8..80570c00dd 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -39,6 +39,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (guix build-system python) #:use-module (guix packages) #:use-module (guix deprecation) #:use-module (guix utils) @@ -215,7 +216,7 @@ system, and the core design of Django is reused in Grantlee.") ("xcb-util-renderutil" ,xcb-util-renderutil) ("xcb-util-wm" ,xcb-util-wm) ("zlib" ,zlib) - ("libjpeg" ,libjpeg-8) + ("libjpeg" ,libjpeg-turbo) ("libsm" ,libsm) ("openssl" ,openssl-1.0))) (native-inputs @@ -1958,6 +1959,17 @@ module provides support functions to the automatically generated code.") ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases + ;; When building python-pyqtwebengine, <qprinter.h> can not be + ;; included. Here we substitute the full path to the header in the + ;; store. + (add-before 'configure 'substitute-source + (lambda* (#:key inputs #:allow-other-keys) + (let* ((qtbase (assoc-ref inputs "qtbase")) + (qtprinter.h (string-append "\"" qtbase "/include/qt5/QtPrintSupport/qprinter.h\""))) + (substitute* "sip/QtPrintSupport/qprinter.sip" + (("<qprinter.h>") + qtprinter.h)) + #t))) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1997,6 +2009,88 @@ framework. The bindings are implemented as a set of Python modules and contain over 620 classes.") (license license:gpl3))) +(define-public python-pyqtwebengine + (package + (name "python-pyqtwebengine") + (version "5.12.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://www.riverbankcomputing.com/static/Downloads/PyQtWebEngine/" + version "/PyQtWebEngine_gpl-" version ".tar.gz")) + (sha256 + (base32 + "0wylkd7fh2g27y3710rpxmj9wx0wpi3z7qbv6khiddm15rkh81w6")))) + (build-system gnu-build-system) + (native-inputs + `(("python" ,python) + ("python-sip" ,python-sip) + ;; qtbase is required for qmake + ("qtbase" ,qtbase))) + (inputs + `(("python" ,python-wrapper) + ("python-sip" ,python-sip) + ("python-pyqt" ,python-pyqt) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtdeclarative" ,qtdeclarative) + ("qtwebchannel" ,qtwebchannel) + ("python-pyqt" ,python-pyqt) + ("qtwebengine" ,qtwebengine))) + (arguments + `(#:modules ((srfi srfi-1) + ,@%gnu-build-system-modules) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (sipdir (string-append out "/share/sip")) + (pyqt-sipdir (string-append + (assoc-ref inputs "python-pyqt") "/share/sip")) + (python (assoc-ref inputs "python")) + (python-version + (last (string-split python #\-))) + (python-major+minor + (string-join + (take (string-split python-version #\.) 2) ".")) + (lib (string-append out "/lib/python" + python-major+minor + "/site-packages/PyQt5")) + (stubs (string-append lib "/PyQt5"))) + + (mkdir-p sipdir) + (invoke "python" "configure.py" + "-w" + "--no-dist-info" + "--destdir" lib + "--no-qsci-api" + "--stubsdir" stubs + "--sipdir" sipdir + "--pyqt-sipdir" pyqt-sipdir)))) + ;; Because this has a different prefix than python-pyqt then we need + ;; to make this a namespace of it's own + (add-after 'install 'make-namespace + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((__init__.py (string-append + (assoc-ref outputs "out") + "/lib/python3.7/site-packages/PyQt5/__init__.py"))) + (with-output-to-file __init__.py + (lambda _ (display " +from pkgutil import extend_path +__path__ = extend_path(__path__, __name__) +"))) + #t)))))) + (home-page "https://www.riverbankcomputing.com/software/pyqtwebengine/intro") + (synopsis "Python bindings for QtWebEngine") + (description + "PyQtWebEngine is a set of Python bindings for The Qt Company's Qt +WebEngine libraries. The bindings sit on top of PyQt5 and are implemented as a +set of three modules. Prior to v5.12 these bindings were part of PyQt +itself.") + (license license:gpl3))) + ;; XXX: This is useful because qtwebkit does not build reliably at this time. ;; Ultimately, it would be nicer to have a more modular set of python-pyqt-* ;; packages that could be used together. diff --git a/gnu/packages/rcm.scm b/gnu/packages/rcm.scm new file mode 100644 index 0000000000..c61626d114 --- /dev/null +++ b/gnu/packages/rcm.scm @@ -0,0 +1,62 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw> +;;; +;;; 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 rcm) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (guix licenses) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages perl)) + +(define-public rcm + (package + (name "rcm") + (version "1.3.3") + (source (origin + (method url-fetch) + (uri (string-append "https://thoughtbot.github.io/rcm/dist/rcm-" + version ".tar.gz")) + (sha256 + (base32 "1bqk7rrp1ckzvsvl9wghsr77m8xl3a7yc5gqdsisz492dx2j8mck")))) + (build-system gnu-build-system) + (arguments '(#:phases + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'patch-tests + (lambda _ + (substitute* '("test/rcrc-tilde.t" + "test/rcdn-hooks-run-in-order.t" + "test/rcup-hooks-run-in-order.t") + (("/bin/sh") (which "sh"))) + (substitute* "test/rcup-hooks.t" + (("/usr/bin/env") (which "env"))) + #t))) + #:parallel-tests? #f)) + (native-inputs `(("perl" ,perl) + ("python-cram" ,python-cram))) + (synopsis "Management suite for dotfiles") + (description "The rcm suite of tools is for managing dotfiles directories. This is +a directory containing all the @code{.*rc} files in your home directory +(@code{.zshrc}, @code{.vimrc}, and so on). These files have gone by many +names in history, such as “rc files” because they typically end in rc +or “dotfiles” because they begin with a period. This suite is useful +for committing your rc files to a central repository to share, but it also +scales to a more complex situation such as multiple source directories +shared between computers with some host-specific or task-specific files.") + (license bsd-3) + (home-page "https://github.com/thoughtbot/rcm"))) diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index 75b2975421..ef0d5d854b 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -30,7 +30,7 @@ (define-public re2 (package (name "re2") - (version "2019-12-01") + (version "2020-01-01") (home-page "https://github.com/google/re2") (source (origin (method git-fetch) @@ -38,7 +38,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0drfhy32a0ndlwc4zi1khx07ifslkrc0w14hj8skqhddkrg55x0l")))) + "0gcli7y2ax3karx7m1q1r9qm49danaxbgxslywjwmya5nmr7x3p4")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) diff --git a/gnu/packages/rsync.scm b/gnu/packages/rsync.scm index fad995bc88..7be18cb8e3 100644 --- a/gnu/packages/rsync.scm +++ b/gnu/packages/rsync.scm @@ -41,7 +41,7 @@ (version "3.1.3") (source (origin (method url-fetch) - (uri (string-append "http://rsync.samba.org/ftp/rsync/src/rsync-" + (uri (string-append "https://rsync.samba.org/ftp/rsync/src/rsync-" version ".tar.gz")) (sha256 (base32 @@ -57,7 +57,7 @@ Its delta-transfer algorithm reduces the amount of data sent over the network by sending only the differences between the source files and the existing files in the destination.") (license license:gpl3+) - (home-page "http://rsync.samba.org/"))) + (home-page "https://rsync.samba.org/"))) (define-public librsync (package diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index ad675dc488..c5c4d8672d 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -5968,7 +5968,7 @@ name and provides query methods such as @{RubyEngine.mri?}.") colorful and informative. TURN displays each test on a separate line with failures being displayed immediately instead of at the end of the tests. Note that TURN is no longer being maintained.") - (home-page "http://rubygems.org/gems/turn") + (home-page "https://rubygems.org/gems/turn") (license license:expat))) (define-public ruby-mimemagic @@ -7755,7 +7755,7 @@ the @file{spec} directory.") (native-inputs `(("ruby-sass-spec" ,ruby-sass-spec) ("ruby-mathn" ,ruby-mathn))) - (home-page "http://sass-lang.com/") + (home-page "https://sass-lang.com/") (synopsis "CSS extension language") (description "Sass is a CSS extension language. It extends CSS with features that don't exist yet like variables, nesting, mixins and inheritance.") diff --git a/gnu/packages/rust-apps.scm b/gnu/packages/rust-apps.scm index 215955214c..8ad3c0ced4 100644 --- a/gnu/packages/rust-apps.scm +++ b/gnu/packages/rust-apps.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2019 John Soo <jsoo1@asu.edu> -;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2019, 2020 John Soo <jsoo1@asu.edu> +;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,7 +22,11 @@ #:use-module (guix build-system cargo) #:use-module (guix download) #:use-module (guix packages) - #:use-module (gnu packages crates-io)) + #:use-module (gnu packages compression) + #:use-module (gnu packages crates-io) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) + #:use-module (gnu packages version-control)) (define-public ripgrep (package @@ -66,7 +70,7 @@ gitignore rules.") (define-public rust-cbindgen (package (name "rust-cbindgen") - (version "0.9.1") + (version "0.12.2") (source (origin (method url-fetch) @@ -74,7 +78,7 @@ gitignore rules.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1zgamxahlxmg4warzivaa8m1f8d6b45mhznm7n6d7p5l18acdblx")))) + "13jzbmjz1bmmfr0i80hw6ar484mgabx3hbpb2ynhk0ddqi0yr58m")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs @@ -86,11 +90,84 @@ gitignore rules.") ("serde-json" ,rust-serde-json-1.0) ("syn" ,rust-syn-1.0) ("tempfile" ,rust-tempfile-3.0) - ("toml" ,rust-toml-0.5)) - #:cargo-development-inputs - (("autocfg" ,rust-autocfg-0.1)))) + ("toml" ,rust-toml-0.5)))) (home-page "https://github.com/eqrion/cbindgen/") (synopsis "Tool for generating C bindings to Rust code") (description "This package provides a tool for generating C/C++ bindings to Rust code.") (license license:mpl2.0))) + +(define-public tokei + (package + (name "tokei") + (version "10.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "tokei" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "07f5laqw2k9l3k8wrg9h8p2m5d9hkfxngyacwrn3vs7mlnw8l81m")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-clap" ,rust-clap-2) + ("rust-crossbeam-channel" ,rust-crossbeam-channel-0.4) + ("rust-dirs" ,rust-dirs-2.0) + ("rust-encoding-rs-io" ,rust-encoding-rs-io-0.1) + ("rust-env-logger" ,rust-env-logger-0.7) + ("rust-grep-searcher" ,rust-grep-searcher-0.1) + ("rust-hex" ,rust-hex-0.4) + ("rust-ignore" ,rust-ignore-0.4) + ("rust-log" ,rust-log-0.4) + ("rust-rayon" ,rust-rayon-1.3) + ("rust-serde" ,rust-serde-1.0) + ("rust-serde-cbor" ,rust-serde-cbor-0.10) + ("rust-serde-derive" ,rust-serde-derive-1.0) + ("rust-serde-json" ,rust-serde-json-1.0) + ("rust-serde-yaml" ,rust-serde-yaml-0.8) + ("rust-term-size" ,rust-term-size-0.3) + ("rust-toml" ,rust-toml-0.5)) + #:cargo-development-inputs + (("rust-git2" ,rust-git2-0.11) + ("rust-handlebars" ,rust-handlebars-2.0) + ("rust-ignore" ,rust-ignore-0.4) + ("rust-lazy-static" ,rust-lazy-static-1.4) + ("rust-regex" ,rust-regex-1.3) + ("rust-serde-json" ,rust-serde-json-1.0) + ("rust-tempfile" ,rust-tempfile-3.0)) + #:phases + (modify-phases %standard-phases + (add-after 'configure 'unvendor-libraries-from-crates + (lambda* (#:key inputs #:allow-other-keys) + (let ((openssl (assoc-ref inputs "openssl"))) + (setenv "OPENSSL_DIR" openssl) + (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1") + (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1") + (delete-file-recursively + (string-append "guix-vendor/rust-libgit2-sys-" + ,(package-version rust-libgit2-sys-0.10) + ".crate/libgit2")) + (delete-file-recursively + (string-append "guix-vendor/rust-libssh2-sys-" + ,(package-version rust-libssh2-sys-0.2) + ".crate/libssh2")) + (delete-file-recursively + (string-append "guix-vendor/rust-libz-sys-" + ,(package-version rust-libz-sys-1.0) + ".crate/src/zlib"))) + #t))))) + (native-inputs + `(("libgit2" ,libgit2) + ("openssl" ,openssl) + ("pkg-config" ,pkg-config) + ("zlib" ,zlib))) + (home-page "https://tokei.rs") + (synopsis "Count code, quickly") + (description + "Tokei is a program that displays statistics about your code. Tokei will +show number of files, total lines within those files and code, comments, and +blanks grouped by language.") + (license (list license:expat license:asl2.0)))) diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm index a749f5633a..2cc50f7b6a 100644 --- a/gnu/packages/sagemath.scm +++ b/gnu/packages/sagemath.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> -;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -275,7 +275,7 @@ on numerical types, while GiNaC depends on CLN for this purpose.") (define-public zn-poly (package (name "zn-poly") - (version "0.9.1") + (version "0.9.2") (source (origin (method git-fetch) @@ -285,8 +285,7 @@ on numerical types, while GiNaC depends on CLN for this purpose.") (commit version))) (file-name (git-file-name "zn_poly" version)) (sha256 - (base32 - "0ra5vy585bqq7g3317iw6fp44iqgqvds3j0l1va6mswimypq4vxb")))) + (base32 "1wbc3apxcldxfcw1dnwnn7fvlfb6bwvlr8glvgv6hf79p9r2s4j0")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) @@ -332,7 +331,7 @@ coefficients of which are modular integers.") (define-public brial (package (name "brial") - (version "1.2.5") + (version "1.2.6") (source (origin (method git-fetch) @@ -341,8 +340,7 @@ coefficients of which are modular integers.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "1nv56fp3brpzanxj7vwvxqdafqfsfhdgq5imr3m94psw5gdfqwja")))) + (base32 "1mc1zjr3mxcx6bg0js5k9jx65japg7644b0aj1al75m4nwh2ygab")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -365,7 +363,7 @@ for the underlying polynomial rings and subsets of the powerset of the Boolean variables. As a unique approach, binary decision diagrams are used as internal storage type for polynomial structures.") (license license:gpl2+) - (home-page "https://gitlab.com/sagemath/zn_poly"))) + (home-page "https://github.com/BRiAl/BRiAl/"))) (define-public lcalc (package diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 8a1fad5e43..6cd875df46 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -362,14 +362,14 @@ many event types, including timers, signals, and the classic file descriptor eve (define-public ldb (package (name "ldb") - (version "1.6.3") + (version "1.5.6") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" version ".tar.gz")) (sha256 (base32 - "01livdy3g073bm6xnc8zqnqrxg53sw8q66d1903z62hd6g87whsa")) + "0nwpkqidsna4yz3vhjzzadm4hpviwnyk80yml8ay82gi1d6lg0pz")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index a320cbf831..b0da2ac36b 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -1001,7 +1001,7 @@ The core is 12 builtin special forms and 33 builtin functions.") (define-public gauche (package (name "gauche") - (version "0.9.7") + (version "0.9.9") (home-page "http://practical-scheme.net/gauche/index.html") (source (origin @@ -1010,11 +1010,10 @@ The core is 12 builtin special forms and 33 builtin functions.") "mirror://sourceforge/gauche/Gauche/Gauche-" version ".tgz")) (sha256 - (base32 - "181nycikma0rwrb1h6mi3kys11f8628pq8g5r3fg5hiz5sabscrd")) + (base32 "1yzpszhw52vkpr65r5d4khf3489mnnvnw58dd2wsvvx7499k5aac")) (modules '((guix build utils))) (snippet '(begin - ;; Remove libatomic-ops + ;; Remove libatomic-ops. (delete-file-recursively "gc/libatomic_ops") #t)))) (build-system gnu-build-system) @@ -1023,13 +1022,13 @@ The core is 12 builtin special forms and 33 builtin functions.") ("zlib" ,zlib))) (native-inputs `(("texinfo" ,texinfo) - ("openssl" ,openssl) ; needed for tests - ("pkg-config" ,pkg-config))) ; needed to find external libatomic-ops + ("openssl" ,openssl) ; needed for tests + ("pkg-config" ,pkg-config))) ; needed to find external libatomic-ops (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'patch-/bin/sh - ;; needed only for tests + ;; Needed only for tests. (lambda _ (substitute* '("configure" "test/www.scm" @@ -1046,14 +1045,14 @@ The core is 12 builtin special forms and 33 builtin functions.") (invoke "make" "info")) #t)) (add-before 'check 'patch-normalize-test - ;; neutralize sys-normalize-pathname test as it relies on - ;; the home directory; (setenv "HOME" xx) isn't enough) + ;; Neutralize sys-normalize-pathname test as it relies on + ;; the home directory; (setenv "HOME" xx) isn't enough). (lambda _ (substitute* "test/system.scm" (("~/abc") "//abc")) #t)) (add-before 'check 'patch-network-tests - ;; remove net checks + ;; Remove net checks. (lambda _ (substitute* "ext/Makefile" (("binary net termios") "binary termios")) diff --git a/gnu/packages/sdr.scm b/gnu/packages/sdr.scm new file mode 100644 index 0000000000..f6c9050503 --- /dev/null +++ b/gnu/packages/sdr.scm @@ -0,0 +1,58 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2019 Christopher Howard <christopher@librehacker.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 sdr) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages) + #:use-module (gnu packages algebra) + #:use-module (gnu packages autotools)) + +(define-public liquid-dsp + (package + (name "liquid-dsp") + (version "1.3.2") + (source + (origin (method git-fetch) + (uri (git-reference + (url "https://github.com/jgaeddert/liquid-dsp.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1n6dbg13q8ga5qhg1yiszwly4jj0rxqr6f1xwm9waaly5z493xsd")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf))) + (inputs + `(("fftw" ,fftw) + ("fftwf" ,fftwf))) + (home-page "https://liquidsdr.org") + (synopsis "Signal processing library for software-defined radios") + (description + "Liquid DSP is a @dfn{digital signal processing} (DSP) library designed +specifically for software-defined radios on embedded platforms. The aim is to +provide a lightweight DSP library that does not rely on a myriad of external +dependencies or proprietary and otherwise cumbersome frameworks. All signal +processing elements are designed to be flexible, scalable, and dynamic, +including filters, filter design, oscillators, modems, synchronizers, complex +mathematical operations, and much more.") + (license license:expat))) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 1d2f754e4a..a679810e97 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -483,7 +483,7 @@ ksh, and tcsh.") #:tests? #f)) (inputs `(("python-ply" ,python-ply))) - (home-page "http://xon.sh/") + (home-page "https://xon.sh/") (synopsis "Python-ish shell") (description "Xonsh is a Python-ish, BASHwards-looking shell language and command diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index edc6135fbd..a57e0151ca 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -197,6 +197,7 @@ which allows users to view a desktop computing environment.") (uri (string-append "https://www.spice-space.org/download/releases/" "spice-server/spice-" version ".tar.bz2")) + (patches (search-patches "spice-fix-test-armhf.patch")) (sha256 (base32 "19r999py9v9c7md2bb8ysj809ag1hh6djl1ik8jcgx065s4b60xj")))) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index ec4f00d8e6..d203bb1455 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 ng0 <ng0@n0.is> @@ -617,7 +617,7 @@ basis for almost any application.") ;; Tests rely on $USER being set. (setenv "USER" "guix")))))) - (home-page "http://www.lysator.liu.se/~nisse/lsh/") + (home-page "https://www.lysator.liu.se/~nisse/lsh/") (synopsis "GNU implementation of the Secure Shell (ssh) protocols") (description "GNU lsh is a free implementation of the SSH version 2 protocol. It is @@ -675,16 +675,15 @@ monitor it, restarting it as necessary should it die or stop passing traffic.") (define-public pdsh (package (name "pdsh") - (version "2.33") + (version "2.34") (source (origin (method url-fetch) (uri (string-append "https://github.com/chaos/pdsh/" "releases/download/pdsh-" version "/pdsh-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "0bwlkl9inj66iwvafg00pi3sk9n673phdi0kcc59y9nn55s0hs3k")))) + (base32 "1s91hmhrz7rfb6h3l5k97s393rcm1ww3svp8dx5z8vkkc933wyxl")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e7fd5bd084..ec2994dc33 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -739,14 +739,14 @@ curves, Cox models, and parametric accelerated failure time models.") (define-public r-bit (package (name "r-bit") - (version "1.1-14") + (version "1.1-15.1") (source (origin (method url-fetch) (uri (cran-uri "bit" version)) (sha256 (base32 - "0m7jrqzpa1pk8ixcl814x06jf96nlvvr16x6did6cfk4zghsrfjw")))) + "0y351ajlrn9ywbiai46mjpwmw5pqc9ik2z24rf0bnbdcvaxdr7r8")))) (build-system r-build-system) (home-page "http://ff.r-forge.r-project.org") (synopsis "Class for vectors of 1-bit booleans") @@ -1015,14 +1015,14 @@ solution for sending email, including attachments, from within R.") (define-public r-stringi (package (name "r-stringi") - (version "1.4.3") + (version "1.4.5") (source (origin (method url-fetch) (uri (cran-uri "stringi" version)) (sha256 (base32 - "1vbr6g9p1iyzdj7wfw6afyizvnd1a2srfvkl72pq23vhdcwwpkhk")))) + "0gdmdf4i3ik8rcs7af1vlsfnilcmw3z28jx4278rpq2asigps89k")))) (build-system r-build-system) (inputs `(("icu4c" ,icu4c))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1260,13 +1260,13 @@ R/DBMS implementations.") (define-public r-bh (package (name "r-bh") - (version "1.72.0-2") + (version "1.72.0-3") (source (origin (method url-fetch) (uri (cran-uri "BH" version)) (sha256 (base32 - "0y1cxnzdajcdsc9jlaby53253hril65h496wval08qlxsqnfc3ia")))) + "1ay8vb6i730lipg8b8g3893vqglhw2kqpc29lwdrxdkb66iw33l8")))) (build-system r-build-system) (home-page "https://github.com/eddelbuettel/bh") (synopsis "R package providing subset of Boost headers") @@ -2455,14 +2455,14 @@ were originally a part of the r-devtools package.") (define-public r-hms (package (name "r-hms") - (version "0.5.2") + (version "0.5.3") (source (origin (method url-fetch) (uri (cran-uri "hms" version)) (sha256 (base32 - "0h24dsagn4kcr65arn73mpqapcg002kw4kyxfqyff95j6s6cjifl")))) + "1baki0qw5ijgiflvsdvqj3apg4yanf12vx14kwbqdzk5rz46fasf")))) (build-system r-build-system) (propagated-inputs `(("r-rlang" ,r-rlang) @@ -2617,13 +2617,13 @@ vectors.") (define-public r-catools (package (name "r-catools") - (version "1.17.1.3") + (version "1.17.1.4") (source (origin (method url-fetch) (uri (cran-uri "caTools" version)) (sha256 (base32 - "04m7vbydxb1nipday97w29p2miykyzxw572j9lda6jxmmp2kb1yp")))) + "151vsfakg32jn9msfdjcizhizm8k8yxlfpnsbagns9ihr59s3w49")))) (properties `((upstream-name . "caTools"))) (build-system r-build-system) (propagated-inputs @@ -2778,13 +2778,13 @@ a column in data frame.") (define-public r-rsqlite (package (name "r-rsqlite") - (version "2.1.5") + (version "2.2.0") (source (origin (method url-fetch) (uri (cran-uri "RSQLite" version)) (sha256 (base32 - "0b1cjnk9g1lrxy0wajfq744qps7fila0xdh5j9chy1vrrwfiwzl0")))) + "1m38sj8rwbf3p2lhqabcp7c7djk7s9ng37cz39yxk706v9pi4380")))) (properties `((upstream-name . "RSQLite"))) (build-system r-build-system) (propagated-inputs @@ -3592,15 +3592,15 @@ vignettes.") (define-public r-mvtnorm (package (name "r-mvtnorm") - (version "1.0-11") + (version "1.0-12") (source (origin (method url-fetch) (uri (cran-uri "mvtnorm" version)) (sha256 (base32 - "0lkjph661blc1nwfzg9w48a60wvj6ffh4zjwlisvracsx4nn2883")))) + "03rfmii9j8x8fjv7hp8qd28z0svl4w0x54k2f4jpwv4qa7079i24")))) (build-system r-build-system) - (inputs + (native-inputs `(("gfortran" ,gfortran))) (home-page "http://mvtnorm.R-forge.R-project.org") (synopsis "Package for multivariate normal and t-distributions") @@ -4216,14 +4216,14 @@ including: (define-public r-gplots (package (name "r-gplots") - (version "3.0.1.1") + (version "3.0.1.2") (source (origin (method url-fetch) (uri (cran-uri "gplots" version)) (sha256 (base32 - "033plcfs9w8pmn84n24mdhiixdirc2a7pz6dvm61fpd20gwh7cbx")))) + "0vrm7wqrmqsmfrc070r9chpzb0vv60pay2lyar9qxfry6bsrvx86")))) (build-system r-build-system) (propagated-inputs `(("r-catools" ,r-catools) @@ -4286,13 +4286,13 @@ mechanism.") (define-public r-zoo (package (name "r-zoo") - (version "1.8-6") + (version "1.8-7") (source (origin (method url-fetch) (uri (cran-uri "zoo" version)) (sha256 (base32 - "1k1pmzr9nfwbxq1xf0jzn3nawv4sgnkxkgzxnm1i887jcbrs85r2")))) + "1w4542zs53bm261g95086a60576v334g1jrhnbgdqni4izf2s1wy")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -4442,13 +4442,13 @@ Wall Street Journal, among others. This package also provides (define-public r-statmod (package (name "r-statmod") - (version "1.4.32") + (version "1.4.33") (source (origin (method url-fetch) (uri (cran-uri "statmod" version)) (sha256 (base32 - "083yyp84xj85zg4bhz7i90bqzl3p6155ch4abwsfc9k1lv7s2rrg")))) + "1fbi5m4c0lingm2vvi0g6jf8f2mg1h01xwyz5rnymrq7gs0ibiks")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/statmod") (native-inputs @@ -4743,14 +4743,14 @@ and resampling-based inference.") (define-public r-prabclus (package (name "r-prabclus") - (version "2.3-1") + (version "2.3-2") (source (origin (method url-fetch) (uri (cran-uri "prabclus" version)) (sha256 (base32 - "1h5k13w8mmmdy74l145zh64f339wy78z1nlg8xr3zg23gmv98cpg")))) + "0hg4d7y1w18jpgvw10z8833bbbcnlkwiasx0wh6iwa2pnnybq8gl")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) @@ -5063,14 +5063,14 @@ decompositions of such matrices, and solutions of linear systems.") (define-public r-modelmetrics (package (name "r-modelmetrics") - (version "1.2.2") + (version "1.2.2.1") (source (origin (method url-fetch) (uri (cran-uri "ModelMetrics" version)) (sha256 (base32 - "158ddbw2snlyzd2q6mdaif5i67kq4qfvadylwjxgv1w2cmszrmk6")))) + "17yw46yr0n9hddvlhh73jdpmpdlpa581n5xjpwkr6cpr2f7xxpqc")))) (properties `((upstream-name . "ModelMetrics"))) (build-system r-build-system) (propagated-inputs @@ -5264,35 +5264,6 @@ Companion to Applied Regression, Third Edition, Sage.") to Applied regression, Second Edition, Sage, 2011.") (license license:gpl2+))) -(define-public r-caret - (package - (name "r-caret") - (version "6.0-84") - (source - (origin - (method url-fetch) - (uri (cran-uri "caret" version)) - (sha256 - (base32 - "03898irgb70q0p01kq99yb6q6xji0jx4jmj0yxlv8wcwd841r0x1")))) - (build-system r-build-system) - (propagated-inputs - `(("r-foreach" ,r-foreach) - ("r-ggplot2" ,r-ggplot2) - ("r-lattice" ,r-lattice) - ("r-modelmetrics" ,r-modelmetrics) - ("r-nlme" ,r-nlme) - ("r-plyr" ,r-plyr) - ("r-recipes" ,r-recipes) - ("r-reshape2" ,r-reshape2) - ("r-withr" ,r-withr))) - (home-page "https://github.com/topepo/caret") - (synopsis "Classification and regression training") - (description - "This package provides misc functions for training and plotting -classification and regression models.") - (license license:gpl2+))) - (define-public r-rcppprogress (package (name "r-rcppprogress") @@ -5414,14 +5385,14 @@ diagnostic tools (@code{ctlcurves} and @code{DiscrFact}).") (define-public r-ranger (package (name "r-ranger") - (version "0.11.2") + (version "0.12.1") (source (origin (method url-fetch) (uri (cran-uri "ranger" version)) (sha256 (base32 - "1sxyzxmjc6lm8wcmq15j6sscnza7aay4mr3dyri2zngx6fa8mb0k")))) + "1vr5akgh388iivrxi0g4pl2npq9dc4cim3ljk4kjf637q058wc7w")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp) diff --git a/gnu/packages/synergy.scm b/gnu/packages/synergy.scm index 9de3ee57e4..367bb323b3 100644 --- a/gnu/packages/synergy.scm +++ b/gnu/packages/synergy.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2014, 2015, 2016, 2020 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> @@ -37,17 +37,17 @@ (define-public synergy (package (name "synergy") - (version "1.10.1") + (version "1.11.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/symless/synergy-core.git") - (commit (string-append "v" version "-stable")))) + (commit (string-append version "-stable")))) (file-name (git-file-name name version)) (sha256 (base32 - "112w2xrp04cysd14xk1ax7cllqpcki0pyica4ivrdngr5qw0r9hp")) + "1jk60xw4h6s5crha89wk4y8rrf1f3bixgh5mzh3cq3xyrkba41gh")) (modules '((guix build utils))) (snippet ;; Remove unnecessary bundled source and binaries @@ -64,13 +64,6 @@ (setenv "CPLUS_INCLUDE_PATH" (string-append (assoc-ref inputs "avahi") "/include/avahi-compat-libdns_sd")) - ;; See https://github.com/symless/synergy-core/pull/6359/ - (substitute* "src/gui/src/ScreenSetupView.cpp" - (("#include <QtGui>" m) - (string-append m "\n#include <QHeaderView>"))) - (substitute* "src/gui/src/ActionDialog.cpp" - (("#include <QtGui>" m) - (string-append m "\n#include <QButtonGroup>"))) #t))))) (inputs `(("avahi" ,avahi) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 8e7384bf85..a645c58562 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -246,7 +246,7 @@ internet.") (define-public libsrtp (package (name "libsrtp") - (version "2.2.0") + (version "2.3.0") (source (origin (method git-fetch) (uri (git-reference @@ -255,13 +255,25 @@ internet.") (file-name (git-file-name name version)) (sha256 (base32 - "1ac7xs1djb03j131f1gmqyfmrplblid9qqyxahs0shdy707r5ll6")))) + "1f7i3jdh1wzdv7zjlz7gs3xw5jqig9zw8z9awsqqcp54f94xdpvd")))) (native-inputs `(("psmisc" ,psmisc) ;some tests require 'killall' ("procps" ,procps))) (build-system gnu-build-system) (arguments - '(#:test-target "runtest")) + '(#:test-target "runtest" + #:phases (modify-phases %standard-phases + (add-after 'build 'build-shared + (lambda* (#:key (make-flags '()) #:allow-other-keys) + ;; Build the shared library separately because + ;; the test runner requires a static build. + (apply invoke "make" "shared_library" make-flags) + #t)) + (add-after 'install 'remove-static-library + (lambda* (#:key outputs #:allow-other-keys) + (delete-file (string-append (assoc-ref outputs "out") + "/lib/libsrtp2.a")) + #t))))) (synopsis "Secure RTP (SRTP) Reference Implementation") (description "This package provides an implementation of the Secure Real-time Transport diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 60eed99dbf..863ac7e584 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,6 +33,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system glib-or-gtk) + #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages assembly) @@ -45,6 +46,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) + #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages libbsd) #:use-module (gnu packages libreoffice) #:use-module (gnu packages lua) @@ -354,6 +356,108 @@ OpenBSD team.") environment with Markdown markup.") (license license:gpl3+))) ; icons/* under CC-BY-SA3 +(define-public manuskript + (package + (name "manuskript") + (version "0.10.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/olivierkes/manuskript.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0q413vym7hzjpyg3krj5y63hwpncdifjkyswqmr76zg5yqnklnh3")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ;no test + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (share (string-append out "/share/manuskript"))) + ;; Install data. + (mkdir-p share) + (for-each + (lambda (d) + (let ((destination (string-append share "/" d))) + (mkdir-p destination) + (copy-recursively d destination))) + '("bin" "i18n" "icons" "libs" "manuskript" "resources")) + ;; Install documentation. + (let ((doc (string-append out + "/doc/manuskript-" ,version + "/sample-projects"))) + (mkdir-p doc) + (copy-recursively "sample-projects" doc)) + ;; Wrap executable in "$out/share/manuskript/bin" and + ;; link to it from "$out/bin". + (let ((bin (string-append out "/bin")) + (executable (string-append share "/bin/manuskript"))) + (wrap-program executable + (list "PYTHONPATH" 'prefix (list (getenv "PYTHONPATH")))) + (mkdir-p bin) + (with-directory-excursion bin + (symlink (string-append share "/bin/manuskript") + "manuskript"))) + ;; Install icons and create .desktop file. + (let ((apps (string-append out "/share/applications")) + (icons-dir (string-append out "/share/pixmaps"))) + (install-file "icons/Manuskript/manuskript.svg" icons-dir) + (mkdir-p apps) + (with-output-to-file (string-append apps "/manuskript.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=Manuskript~@ + MimeType=application/x-manuskript-book;~@ + Exec=~a/bin/manuskript %f~@ + Comment=Tool for writers~@ + Comment[es]=Herramienta para escritores/as~@ + Keywords=manuskript;office;write;edit;novel;text;msk~@ + Terminal=false~@ + Type=Application~@ + Icon=manuskript~@ + Categories=Office;WordProcessor;~%" + out)))) + #t)))))) + (inputs + `(("ghc-pandoc" ,ghc-pandoc) + ("python-lxml" ,python-lxml) + ("python-markdown" ,python-markdown) + ("python-pyqt" ,python-pyqt) + ("qtsvg" ,qtsvg))) + (home-page "http://www.theologeek.ch/manuskript/") + (synopsis "Tool for writers") + (description "Manuskript provides a rich environment to help +writers create their first draft and then further refine and edit +their masterpiece. With Manuskript you can: + +@itemize +@item Grow your premise from one sentence, to a paragraph, to a full +summary, +@item Create characters, +@item Conceive plots, +@item Construct outlines (Outline mode and/or Index cards), +@item Write with focus (Distraction free mode), +@item Build worlds, +@item Track items, +@item Edit and re-organize chapters and scenes, +@item View Story line, +@item Compose with fiction or non-fiction templates and writing modes, +@item Import and export document formats such as HTML, ePub, +OpenDocument, DocX, and more. +@end itemize + +Additionally Manuskript can help in many more ways with a spell +checker, markdown highlighter, frequency analyzer, and automatic save +in plain text file format.") + (license license:gpl3+))) + (define-public editorconfig-core-c (package (name "editorconfig-core-c") diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 86358fa02d..cc38ee25f1 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -462,7 +462,7 @@ application code.") (base32 "1nxkfm7zliq3rmr7yp871sppwfnz71iz364m2sgazny71pzykggc")))) (build-system cmake-build-system) - (home-page "http://biit.cs.ut.ee/pfff/") + (home-page "https://biit.cs.ut.ee/pfff/") (synopsis "Probabilistic fast file fingerprinting tool") (description "pfff is a tool for calculating a compact digital fingerprint of a file diff --git a/gnu/packages/tryton.scm b/gnu/packages/tryton.scm index 31a2d481e5..a2952f2b80 100644 --- a/gnu/packages/tryton.scm +++ b/gnu/packages/tryton.scm @@ -27,6 +27,7 @@ #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages time) + #:use-module (gnu packages xml) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system python)) diff --git a/gnu/packages/uml.scm b/gnu/packages/uml.scm index 4e8a580757..41fb66c3b9 100644 --- a/gnu/packages/uml.scm +++ b/gnu/packages/uml.scm @@ -82,7 +82,7 @@ (inputs `(("graphviz" ,graphviz) ("jre" ,icedtea))) - (home-page "http://plantuml.com/") + (home-page "https://plantuml.com/") (synopsis "Draw UML diagrams from simple textual description") (description "Plantuml is a tool to generate sequence, usecase, class, activity, diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm index 390a3387ab..8f3c887a68 100644 --- a/gnu/packages/upnp.scm +++ b/gnu/packages/upnp.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> -;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2019 Jens Mølgaard <jens@zete.tk> ;;; @@ -42,14 +42,14 @@ (define-public miniupnpc (package (name "miniupnpc") - (version "2.1.20190824") + (version "2.1.20191224") (source (origin (method url-fetch) (uri (string-append "https://miniupnp.tuxfamily.org/files/" "miniupnpc-" version ".tar.gz")) (sha256 - (base32 "0rg1i51lnyq8zgflhcg981kq4348vgq03ndmbgiv7knd1vmfzb8z")))) + (base32 "1kv6dpj93gckvwvgzxl4vdqpwnicb0c8p0xw53m2gh5naiw44ys4")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) diff --git a/gnu/packages/usb-modeswitch.scm b/gnu/packages/usb-modeswitch.scm index 7e4526ae46..6de810d23d 100644 --- a/gnu/packages/usb-modeswitch.scm +++ b/gnu/packages/usb-modeswitch.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright 2019 Florian Pelz <pelzflorian@pelzflorian.de> +;;; Copyright 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,15 +32,15 @@ (define-public usb-modeswitch-data (package (name "usb-modeswitch-data") - (version "20170806") + (version "20191128") (source (origin (method url-fetch) (uri (string-append - "http://www.draisberghof.de/usb_modeswitch/" + "https://www.draisberghof.de/usb_modeswitch/" "usb-modeswitch-data-" version ".tar.bz2")) (sha256 (base32 - "0b1wari3aza6qjggqd0hk2zsh93k1q8scgmwh6f8wr0flpr3whff")))) + "1ygahl3r26r38ai8yyblq9nhf3v5i6n6r6672p5wf88wg5h9n0rz")))) (build-system trivial-build-system) (native-inputs `(("tar" ,tar) ("bzip2" ,bzip2))) @@ -67,7 +67,7 @@ (install-file (string-append files "/40-usb_modeswitch.rules") udev-dir) (install-file (string-append files "/COPYING") license-dir))))) - (home-page "http://www.draisberghof.de/usb_modeswitch/") + (home-page "https://www.draisberghof.de/usb_modeswitch/") (synopsis "Data package for USB_ModeSwitch") (description "This package contains data about devices and a UDEV rules file for use with USB_ModeSwitch.") @@ -76,23 +76,15 @@ file for use with USB_ModeSwitch.") (define-public usb-modeswitch (package (name "usb-modeswitch") - (version "2.5.2") + (version "2.6.0") (source (origin (method url-fetch) (uri (string-append - "http://www.draisberghof.de/usb_modeswitch/" + "https://www.draisberghof.de/usb_modeswitch/" "usb-modeswitch-" version ".tar.bz2")) (sha256 (base32 - "19ifi80g9ns5dmspchjvfj4ykxssq9yrci8m227dgb3yr04srzxb")) - (modules '((guix build utils))) - (snippet - ;; Remove bundled jimtcl. - '(begin - (delete-file-recursively "jim") - #t)) - (patches - (search-patches "usb-modeswitch-accept-config-arg.patch")))) + "18wbbxc5cfsmikba0msdvd5qlaga27b32nhrzicyd9mdddp265f2")))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("libusb" ,libusb) ("jimtcl" ,jimtcl) @@ -145,7 +137,7 @@ file for use with USB_ModeSwitch.") (rename-file "usb_modeswitch.sh" "usb_modeswitch") (install-file "usb_modeswitch" udev) - (rename-file "usb_modeswitch.tcl" "usb_modeswitch_dispatcher") + (rename-file "usb_modeswitch_dispatcher.tcl" "usb_modeswitch_dispatcher") (substitute* "usb_modeswitch_dispatcher" (("/usr/bin/tclsh") (string-append jimtcl "/bin/jimsh")) @@ -155,7 +147,7 @@ file for use with USB_ModeSwitch.") (install-file "usb_modeswitch_dispatcher" dispatcher-bin) #t))))))) - (home-page "http://www.draisberghof.de/usb_modeswitch/") + (home-page "https://www.draisberghof.de/usb_modeswitch/") (synopsis "Mode switching tool for controlling `multi-mode' USB devices") (description "USB_ModeSwitch is a mode switching tool for controlling USB devices with multiple @dfn{modes}. When plugged in for the first time many @@ -163,4 +155,5 @@ USB devices (primarily high-speed WAN modems) act like a flash storage containing installers for Windows drivers. USB_ModeSwitch replays the sequence the Windows drivers would send to switch their mode from storage to modem (or whatever the thing is supposed to do).") - (license license:gpl2+))) + (license (list license:gpl2+ ;"this program" according to home page + license:bsd-2)))) ;dispatcher.c diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index ca8af00752..20db6b4b08 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is> -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 André <eu@euandre.org> @@ -73,6 +73,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages image) #:use-module (gnu packages linux) + #:use-module (gnu packages mail) #:use-module (gnu packages maths) #:use-module (gnu packages nano) #:use-module (gnu packages ncurses) @@ -147,14 +148,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git-source' input to cgit ;; needs to be updated as well. - (version "2.24.1") + (version "2.25.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "0ql5z31vgl7b785gwrf00m129mg7zi9pa65n12ij3mpxx3f28gvj")))) + "1l58v42aazj0x9276gk8r9mwyl9pgp9w99aakz4xfhzv7wd2jq60")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -167,7 +168,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "1yzy5jikkv67ynp576j926kg8zdldh8j4b57l0ixcnjdcyr4lc17")))) + "1gf8b1k6i4dlwskwq7dd2vz9bzc3m1qnknj9daq2vp39vmxpg5nk")))) ;; For subtree documentation. ("asciidoc" ,asciidoc) ("docbook-xsl" ,docbook-xsl) @@ -678,7 +679,8 @@ collaboration using typical untrusted file hosts or services.") (define-public cgit (package (name "cgit") - (version "1.2.1") + ;; Update the ‘git-source’ input as well. + (version "1.2.2") (source (origin (method url-fetch) (uri (string-append @@ -686,7 +688,7 @@ collaboration using typical untrusted file hosts or services.") version ".tar.xz")) (sha256 (base32 - "1gw2j5xc5qdx2hwiwkr8h6kgya7v9d9ff9j32ga1dys0cca7qm1w")))) + "0dmjsisigjz5k4gw7gm55qhm3wazzbm4cg7a5dwf0gqg9nacx5rz")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; XXX: fail to build the in-source git. @@ -764,11 +766,11 @@ collaboration using typical untrusted file hosts or services.") ("git-source" ,(origin (method url-fetch) - ;; XXX CGit is currently incompatible with Git > 2.18. - (uri "mirror://kernel.org/software/scm/git/git-2.18.2.tar.xz") + ;; cgit is tightly bound to git. Use GIT_VER from the Makefile, + ;; which may not match the current (package-version git). + (uri "mirror://kernel.org/software/scm/git/git-2.25.0.tar.xz") (sha256 - (base32 - "1gmcz5k8sa6phzhhv6zjl8izbyqnxcdb8ns8kd2czyak0g409vrq")))) + (base32 "1l58v42aazj0x9276gk8r9mwyl9pgp9w99aakz4xfhzv7wd2jq60")))) ("openssl" ,openssl) ("groff" ,groff) ("python" ,python) @@ -783,6 +785,47 @@ collaboration using typical untrusted file hosts or services.") a built-in cache to decrease server I/O pressure.") (license license:gpl2))) +(define-public python-git-multimail + (package + (name "python-git-multimail") + (version "1.5.0.post1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "git-multimail" version)) + (sha256 + (base32 + "1zkrbsa70anwpw86ysfwalrb7nsr064kygfiyikyq1pl9pcl969y")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "git-multimail/git_multimail.py" + (("GIT_EXECUTABLE = 'git'") + (string-append "GIT_EXECUTABLE = '" + (assoc-ref inputs "git") "/bin/git" + "'")) + (("/usr/sbin/sendmail") + (string-append (assoc-ref inputs "sendmail") + "/usr/sbin/sendmail"))) + #t))))) + (inputs + `(("git" ,git) + ("sendmail" ,sendmail))) + (home-page "https://github.com/git-multimail/git-multimail") + (synopsis "Send notification emails for Git pushes") + (description + "This hook sends emails describing changes introduced by pushes to a Git +repository. For each reference that was changed, it emits one ReferenceChange +email summarizing how the reference was changed, followed by one Revision +email for each new commit that was introduced by the reference change. + +This script is designed to be used as a post-receive hook in a Git +repository") + (license license:gpl2))) + (define-public python-ghp-import (package (name "python-ghp-import") @@ -1006,7 +1049,7 @@ lot easier.") (define-public stgit (package (name "stgit") - (version "0.18") + (version "0.21") (source (origin (method git-fetch) @@ -1015,20 +1058,36 @@ lot easier.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0ydgg744m671nkhg7h4q2z3b9vpbc9914rbc0wcgimqfqsxkxx2y")))) + (base32 "00pmz93znl418lsjwy4mr0chp8i2w27h1xjysa05f62smsv91yyc")))) (build-system python-build-system) + (native-inputs + `(("perl" ,perl))) (inputs `(("git" ,git))) (arguments - `(#:python ,python-2 - #:phases + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'hard-code-version + (lambda _ + ;; setup.py tries to cleverly extract the version number from the + ;; git history, which the source checkout lacks. Hard-code one. + (substitute* "setup.py" + (("get_ver\\(\\)") + (format #f "'~a'" ,version))) + #t)) + (add-before 'check 'patch-tests + (lambda _ + (substitute* (list "t/t1900-mail.sh" + "t/t7504-commit-msg-hook.sh") + (("/bin/sh") + (which "bash"))) + #t)) (replace 'check (lambda _ - ;; Two tests will fail -> disable them. TODO: fix the failing tests - (delete-file "t/t3300-edit.sh") - (delete-file "t/t7504-commit-msg-hook.sh") - (invoke "make" "test")))))) + (invoke "make" + "PERL_PATH=perl" + (string-append "SHELL_PATH=" (which "bash")) + "test")))))) (home-page "http://procode.org/stgit/") (synopsis "Stacked Git") (description @@ -1244,26 +1303,39 @@ control to Git repositories.") `(#:phases (modify-phases %standard-phases (replace 'check - (lambda _ - ;; The following tests are known to fail. - (for-each (lambda (file) - (delete-file (string-append "tests/" file))) - '("test-extdiff.t" - "test-hghave.t" - "test-hgwebdir.t" - "test-http-branchmap.t" - "test-logtoprocess.t" - "test-merge-combination.t" - "test-nointerrupt.t" - "test-patchbomb.t" - "test-pull-bundle.t" - "test-push-http.t" - "test-run-tests.t" - "test-serve.t" - "test-subrepo-deep-nested-change.t" - "test-subrepo-recursion.t" - "test-transplant.t")) - (invoke "make" "check")))))) + (lambda* (#:key tests? #:allow-other-keys) + (with-directory-excursion "tests" + ;; The following tests are known to fail. + (for-each (lambda (file) + (delete-file file)) + '("test-extdiff.t" + "test-hghave.t" + "test-hgwebdir.t" + "test-http-branchmap.t" + "test-logtoprocess.t" + "test-merge-combination.t" + "test-nointerrupt.t" + "test-patchbomb.t" + "test-pull-bundle.t" + "test-push-http.t" + "test-run-tests.t" + "test-serve.t" + "test-subrepo-deep-nested-change.t" + "test-subrepo-recursion.t" + "test-transplant.t")) + (when tests? + (invoke "./run-tests.py" + ;; ‘make check’ does not respect ‘-j’. + (string-append "-j" (number->string + (parallel-job-count))) + ;; The default time-outs are too low for many systems. + ;; Raise them generously: Guix enforces its own. + "--timeout" "86400" + "--slowtimeout" "86400" + ;; The test suite takes a long time and produces little + ;; output by default. Prevent timeouts due to silence. + "-v")) + #t)))))) ;; The following inputs are only needed to run the tests. (native-inputs `(("python-nose" ,python-nose) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index a04bd3549a..730d5a408f 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com> ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca> ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> -;;; Copyright © 2016, 2018, 2019 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2016, 2018, 2019, 2020 Eric Bavier <bavier@posteo.net> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017 Feng Shu <tumashu@163.com> ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> @@ -828,14 +828,14 @@ operate properly.") (define-public ffmpeg (package (name "ffmpeg") - (version "4.2.1") + (version "4.2.2") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "1m5nkc61ihgcf0b2wabm0zyqa8sj3c0w8fi6kr879lb0kdzciiyf")))) + "176jn1lcdf0gk7sa5l2mv0faqp5dsqdhx1gqcrgymqhfmdal4xfb")))) (build-system gnu-build-system) (inputs `(("dav1d" ,dav1d) @@ -1349,7 +1349,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (define-public mpv (package (name "mpv") - (version "0.30.0") + (version "0.31.0") (source (origin (method git-fetch) (uri (git-reference @@ -1358,7 +1358,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (file-name (git-file-name name version)) (sha256 (base32 - "17mxjgcfljlv6h0ik3332xsqbs0ybvk6dkwflyl0cjh15vl1iv6f")))) + "138m09l4wi6ifbi15z76j578plmxkclhlzfryasfcdp8hswhs59r")))) (build-system waf-build-system) (native-inputs `(("perl" ,perl) ; for zsh completion file @@ -1484,7 +1484,7 @@ To load this plugin, specify the following option when starting mpv: (define-public libvpx (package (name "libvpx") - (version "1.8.1") + (version "1.8.2") (source (origin ;; XXX: Upstream does not provide tarballs for > 1.6.1. (method git-fetch) @@ -1494,7 +1494,7 @@ To load this plugin, specify the following option when starting mpv: (file-name (git-file-name name version)) (sha256 (base32 - "0mm1dcfa268rwsrgzqpbbgq4lwrvdzgp90h9dxsnkhai70l7gipq")) + "0gyq4fkbd2fv7m1mm9xrvn6rk6f4jsmbv8bnlhingmnrvyncnmnr")) (patches (search-patches "libvpx-CVE-2016-2818.patch")))) (build-system gnu-build-system) (arguments @@ -1543,7 +1543,7 @@ To load this plugin, specify the following option when starting mpv: (define-public youtube-dl (package (name "youtube-dl") - (version "2020.01.01") + (version "2020.01.15") (source (origin (method url-fetch) (uri (string-append "https://github.com/ytdl-org/youtube-dl/" @@ -1551,7 +1551,7 @@ To load this plugin, specify the following option when starting mpv: version ".tar.gz")) (sha256 (base32 - "0p8v18jpf0ijpqlgavqs5vky9v956dhhck7drsv7gkzfw2y6mc0a")))) + "0dyjc8nxyg9ry2ylmblh3fwavpais3mdfj6ndw4i0yc2vkw12rsm")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -1721,7 +1721,7 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (define-public youtube-viewer (package (name "youtube-viewer") - (version "3.5.8") + (version "3.7.0") (source (origin (method git-fetch) (uri (git-reference @@ -1730,12 +1730,10 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (file-name (git-file-name name version)) (sha256 (base32 - "0zz0r3vd2pg9zzykhrq0vnvqp5842dbgsg8cfygw9vzb9j8mlq0a")))) + "1h0m8rn7najdrzvg5md9albiax287273b40ncrihh9amsvvb47c9")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) - ;; FIXME: Add optional dependencies once available: - ;; perl-lwp-useragent-cached and perl-term-readline-gnu (inputs `(("perl-data-dump" ,perl-data-dump) ("perl-file-sharedir" ,perl-file-sharedir) @@ -1743,8 +1741,11 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") ("perl-json" ,perl-json) ("perl-libwww" ,perl-libwww) ("perl-lwp-protocol-https" ,perl-lwp-protocol-https) + ("perl-lwp-useragent-cached" ,perl-lwp-useragent-cached) ("perl-mozilla-ca" ,perl-mozilla-ca) + ("perl-term-readline-gnu" ,perl-term-readline-gnu) ("perl-unicode-linebreak" ,perl-unicode-linebreak) + ("xdg-utils" ,xdg-utils) ;; Some videos play without youtube-dl, but others silently fail to. ("youtube-dl" ,youtube-dl))) @@ -1761,6 +1762,11 @@ audio, images) from the Web. It can use either mpv or vlc for playback.") (("'youtube-dl'") (format #f "'~a/bin/youtube-dl'" (assoc-ref inputs "youtube-dl")))) + (substitute* '("bin/gtk2-youtube-viewer" + "bin/gtk3-youtube-viewer") + (("'xdg-open'") + (format #f "'~a/bin/xdg-open'" + (assoc-ref inputs "xdg-utils")))) #t)) (add-after 'install 'install-desktop (lambda* (#:key outputs #:allow-other-keys) @@ -2682,14 +2688,14 @@ supported players in addition to this package.") (define-public handbrake (package (name "handbrake") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (string-append "https://download.handbrake.fr/releases/" version "/HandBrake-" version "-source.tar.bz2")) (sha256 (base32 - "15hxncswmaj62hb40fxixsa6d519zb712z9xbdq979q4rasjxa59")) + "09rcrq0kjs1lc1as7w3glbpbfvzldwpx3xv0pfmkn4pl7acxw1f0")) (modules '((guix build utils))) (snippet ;; Remove "contrib" and source not necessary for @@ -2803,7 +2809,7 @@ of modern, widely supported codecs.") (define-public intel-vaapi-driver (package (name "intel-vaapi-driver") - (version "2.3.0") + (version "2.4.0") (source (origin (method url-fetch) @@ -2811,7 +2817,7 @@ of modern, widely supported codecs.") "releases/download/" version "/intel-vaapi-driver-" version ".tar.bz2")) (sha256 - (base32 "1qyzxh3p8cw4fv8bz9zd4kc8hajlaps7xryzh6pad814n3m5sbjw")))) + (base32 "12fhydgwpvyh97gxqlgv77wsf9yax321h46vi49j4sxghpcxvqki")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 44d27dc119..e29c1e7d03 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -118,7 +118,7 @@ shared-secret IPSec authentication with Xauth, AES (256, 192, 128), 3DES, 1DES, MD5, SHA1, DH1/2/5 and IP tunneling. It runs entirely in userspace. Only \"Universal TUN/TAP device driver support\" is needed in the kernel.") (license license:gpl2+) ; some file are bsd-2, see COPYING - (home-page "http://www.unix-ag.uni-kl.de/~massar/vpnc/"))) + (home-page "https://www.unix-ag.uni-kl.de/~massar/vpnc/"))) (define-public vpnc-scripts (let ((commit "1000e0f6dd7d6bff163169a46359211c1fc3a6d2")) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 137dccab81..0c18191cc7 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -68,8 +68,8 @@ (version "3.0.5") (source (origin (method url-fetch) - (uri (string-append "http://www.dillo.org/download/" - name "-" version ".tar.bz2")) + (uri (string-append "https://www.dillo.org/download/" + "dillo-" version ".tar.bz2")) (sha256 (base32 "12ql8n1lypv3k5zqgwjxlw1md90ixz3ag6j1gghfnhjq3inf26yv")))) @@ -90,7 +90,7 @@ (synopsis "Very small and fast graphical web browser") (description "Dillo is a minimalistic web browser particularly intended for older or slower computers and embedded systems.") - (home-page "http://www.dillo.org") + (home-page "https://www.dillo.org") (license license:gpl3+))) (define-public links @@ -276,7 +276,7 @@ access.") (define-public qutebrowser (package (name "qutebrowser") - (version "1.8.3") + (version "1.9.0") (source (origin (method url-fetch) @@ -285,11 +285,10 @@ access.") "qutebrowser-" version ".tar.gz")) (sha256 (base32 - "055zmzk3q0m3hx1742nfy2mdawfllrkvijnbzp1hiv01dj1bxaf8")))) + "1y0yq1qfr6g1s7kf3w2crd0b025dv2dfknhlz3v0001ns3rgwj17")))) (build-system python-build-system) (native-inputs - `(("asciidoc" ,asciidoc) - ("python-attrs" ,python-attrs))) ; for tests + `(("python-attrs" ,python-attrs))) ; for tests (inputs `(("python-colorama" ,python-colorama) ("python-cssutils" ,python-cssutils) @@ -298,23 +297,29 @@ access.") ("python-pygments" ,python-pygments) ("python-pypeg2" ,python-pypeg2) ("python-pyyaml" ,python-pyyaml) + ;; FIXME: python-pyqtwebengine needs to come before python-pyqt so + ;; that it's __init__.py is used first. + ("python-pyqtwebengine" ,python-pyqtwebengine) ("python-pyqt" ,python-pyqt) - ("qtwebkit" ,qtwebkit))) + ;; While qtwebengine is provided by python-pyqtwebengine, it's + ;; included here so we can wrap QTWEBENGINEPROCESS_PATH. + ("qtwebengine" ,qtwebengine))) (arguments - `(;; FIXME: Tests have been added to Qutebrowser. But they currently fail on - ;; trying to locate QtWebEngine, and run it on a specific display. - ;; There does not seem to be a trivial way to suppress this test. - ;; Either fix this, or wait for a liberated QtWebEngine to make into GNU Guix. - ;; Change this according to <https://bugs.gnu.org/35866>. + `(;; FIXME: With the existance of qtwebengine, tests can now run. But + ;; they are still disabled because test phase hangs. It's not readily + ;; apparent as to why. #:tests? #f #:phases (modify-phases %standard-phases + (add-before 'check 'set-env-offscreen + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") + #t)) (add-after 'install 'install-more (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (app (string-append out "/share/applications")) (hicolor (string-append out "/share/icons/hicolor"))) - (invoke "a2x" "-f" "manpage" "doc/qutebrowser.1.asciidoc") (install-file "doc/qutebrowser.1" (string-append out "/share/man/man1")) (for-each @@ -331,11 +336,21 @@ access.") (("Exec=qutebrowser") (string-append "Exec=" out "/bin/qutebrowser"))) (install-file "misc/org.qutebrowser.qutebrowser.desktop" app) + #t))) + (add-after 'wrap 'wrap-qt-process-path + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/qutebrowser")) + (qt-process-path (string-append + (assoc-ref inputs "qtwebengine") + "/lib/qt5/libexec/QtWebEngineProcess"))) + (wrap-program bin + `("QTWEBENGINEPROCESS_PATH" ":" prefix (,qt-process-path))) #t)))))) (home-page "https://qutebrowser.org/") (synopsis "Minimal, keyboard-focused, vim-like web browser") (description "qutebrowser is a keyboard-focused browser with a minimal -GUI. It is based on PyQt5 and QtWebKit.") +GUI. It is based on PyQt5 and QtWebEngine.") (license license:gpl3+))) (define-public vimb diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 5b457ccc5b..feeb3dac01 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -16,7 +16,7 @@ ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> @@ -24,7 +24,7 @@ ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> -;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net> +;;; Copyright © 2017, 2019, 2020 Christopher Baines <mail@cbaines.net> ;;; Copyright © 2018, 2019 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> @@ -1516,6 +1516,7 @@ minimum to provide high performance operation.") (define-public libsass (package (name "libsass") + ;; When updating, check whether sassc/libsass-3.5 is still needed. (version "3.6.3") (source (origin (method git-fetch) @@ -1565,8 +1566,7 @@ stylesheets, you'll need to use another program that uses this library, `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))) - ;; I don't believe sassc contains any tests - #:tests? #f + #:tests? #f ; no test suite #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-Makefile @@ -1579,9 +1579,9 @@ stylesheets, you'll need to use another program that uses this library, (("install: libsass-install-\\$\\(BUILD\\) \\\\") "install: \\")) #t)) - ;; This phase fails for some reason + ;; This phase fails for some reason. (delete 'bootstrap) - ;; There is no configure script + ;; There is no configure script. (delete 'configure) (add-before 'build 'setup-environment (lambda _ @@ -1593,9 +1593,32 @@ stylesheets, you'll need to use another program that uses this library, (synopsis "CSS pre-processor") (description "SassC is a compiler written in C for the CSS pre-processor language known as SASS.") - (home-page "http://sass-lang.com/libsass") + (home-page "https://sass-lang.com/libsass") (license license:expat))) +(define-public sassc/libsass-3.5 + ;; Newer libsass versions suffor from a memory leak when building (some?) + ;; GTK themes <https://github.com/sass/libsass/issues/3033>. + (package + (inherit sassc) + (name "sassc") + (inputs + `(("libsass" , + (package + (inherit libsass) + (name "libsass") + (version "3.5.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sass/libsass.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0830pjcvhzxh6yixj82x5k5r1xnadjqzi16kp53213icbly0r9ma")))))))))) + (define-public perl-apache-logformat-compiler (package @@ -3487,6 +3510,28 @@ exists it is used instead.") https schemed URLs with LWP.") (license license:perl-license))) +(define-public perl-lwp-useragent-cached + (package + (name "perl-lwp-useragent-cached") + (version "0.08") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/O/OL/OLEG/" + "LWP-UserAgent-Cached-" version ".tar.gz")) + (sha256 + (base32 + "1hw7wy7f82kl61xjwkgmhv1ixgg56dhgfr45wxn6ahc0qys5mkix")))) + (build-system perl-build-system) + (propagated-inputs + `(("perl-libwww" ,perl-libwww))) + (home-page "https://metacpan.org/release/LWP-UserAgent-Cached") + (synopsis "Simple caching for LWP::UserAgent") + (description "LWP::UserAgent::Cached is an LWP::UserAgent subclass with +cache support. It returns responses from the local filesystem if available +instead of making an HTTP request.") + (license license:perl-license))) + (define-public perl-lwp-useragent-determined (package (name "perl-lwp-useragent-determined") @@ -4194,8 +4239,8 @@ CDF, Atom 0.3, and Atom 1.0 feeds.") (package-with-python2 python-feedparser)) (define-public guix-data-service - (let ((commit "c7e3a1bd0b0648561211f52bd9f674358da59223") - (revision "16")) + (let ((commit "bf25a8db0278b49ef2149c69ef5d6dd2201fd413") + (revision "17")) (package (name "guix-data-service") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -4207,7 +4252,7 @@ CDF, Atom 0.3, and Atom 1.0 feeds.") (file-name (git-file-name name version)) (sha256 (base32 - "08c6bpzmsh62ng4bx008xcgayrrxz815jbpb96n98didk2zyzfg0")))) + "0s6faybczdn10zwrkn22nfq5lvf538513hbmjfaqlkhfmwc4s1qd")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -5188,14 +5233,14 @@ tools like SSH (Secure Shell) to reach the outside world.") (define-public stunnel (package (name "stunnel") - (version "5.55") + (version "5.56") (source (origin (method url-fetch) (uri (string-append "https://www.stunnel.org/downloads/stunnel-" version ".tar.gz")) (sha256 - (base32 "0qjc0wkjf6bqz29fvwwsn9hnjhm6alsm10jcwx4jad2q3ks6kplh")))) + (base32 "08kb4gi9fzqngrczykvba6xhaxhq9m4wmdbhxvgrva5rasrvz13k")))) (build-system gnu-build-system) (native-inputs ;; For tests. diff --git a/gnu/packages/wireservice.scm b/gnu/packages/wireservice.scm index 362b69575f..eab76970f4 100644 --- a/gnu/packages/wireservice.scm +++ b/gnu/packages/wireservice.scm @@ -28,7 +28,8 @@ #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages sphinx) - #:use-module (gnu packages time)) + #:use-module (gnu packages time) + #:use-module (gnu packages xml)) ;; Common package definition for packages from https://github.com/wireservice. (define-syntax-rule (wireservice-package extra-fields ...) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 9832f0079c..52d7042806 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -987,15 +987,14 @@ dynamic and extensible using the Lua programming language.") (define-public menumaker (package (name "menumaker") - (version "0.99.10") + (version "0.99.11") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/menumaker/" "menumaker-" version ".tar.gz")) (sha256 - (base32 - "1mm4cvg3kphkkd8nwrhcg6d9nm5ar7mgc0wf6fxk6zck1l7xn8ky")))) + (base32 "0dprndnhwm7b803zkp4pisiq06ic9iv8vr42in5is47jmvdim0wx")))) (build-system gnu-build-system) (inputs `(("python" ,python))) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 459efd6626..e79404ca7a 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -1616,8 +1616,8 @@ or playing a PCM encoded WAVE file.") (version "2.2") (source (origin (method url-fetch) - (uri (string-append "http://www.ibiblio.org/pub/linux/X11/screensavers/" - name "-" version ".tgz")) + (uri (string-append "https://www.ibiblio.org/pub/linux/X11/" + "screensavers/xautolock-" version ".tgz")) (sha256 (base32 "18jd3k3pvlm5x1adyqw63z2b3f4ixh9mfvz9asvnskk3fm8jgw0i")))) @@ -1653,7 +1653,7 @@ or playing a PCM encoded WAVE file.") (add-after 'install 'install/man (lambda _ (invoke "make" "install.man")))))) - (home-page "http://ibiblio.org/pub/Linux/X11/screensavers/") + (home-page "https://ibiblio.org/pub/Linux/X11/screensavers/") (synopsis "Program launcher for idle X sessions") (description "Xautolock monitors input devices under the X Window System, and launches a program of your choice if there is no activity after diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 5b9082cb26..9984e92f17 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -13,7 +13,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2017 Gregor Giesen <giesen@zaehlwerk.net> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> @@ -21,6 +21,7 @@ ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Jack Hill <jackhill@jackhill.us> +;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2050,6 +2051,98 @@ server using HTTP, and gets back the response as XML. This library provides a modular implementation of XML-RPC for C and C++.") (license (list license:psfl license:expat)))) +(define-public python-elementpath + (package + (name "python-elementpath") + (version "1.3.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "elementpath" version)) + (sha256 + (base32 + "1rb8892zli74wk1c4hyg77ja9wglq9hplgxwak1rmj3s9p6xnf0p")))) + (build-system python-build-system) + (home-page + "https://github.com/sissaschool/elementpath") + (synopsis + "XPath 1.0/2.0 parsers and selectors for ElementTree and lxml") + (description + "The proposal of this package is to provide XPath 1.0 and 2.0 selectors +for Python's ElementTree XML data structures, both for the standard +ElementTree library and for the @uref{http://lxml.de, lxml.etree} library. + +For lxml.etree this package can be useful for providing XPath 2.0 selectors, +because lxml.etree already has it's own implementation of XPath 1.0.") + (license license:expat))) + +(define-public python-lxml + (package + (name "python-lxml") + (version "4.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "lxml" version)) + (sha256 + (base32 "01nvb5j8vs9nk4z5s3250b1m22b4d08kffa36if3g1mdygdrvxpg")))) + (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "make" "test")))))) + (inputs + `(("libxml2" ,libxml2) + ("libxslt" ,libxslt))) + (home-page "https://lxml.de/") + (synopsis "Python XML processing library") + (description + "The lxml XML toolkit is a Pythonic binding for the C libraries +libxml2 and libxslt.") + (license license:bsd-3))) ; and a few more, see LICENSES.txt + +(define-public python2-lxml + (package-with-python2 python-lxml)) + +(define-public python-xmlschema + (package + (name "python-xmlschema") + (version "1.0.18") + (source (origin + (method url-fetch) + (uri (pypi-uri "xmlschema" version)) + (sha256 + (base32 + "1inwqwr7d3qah9xf9rfzkpva433jpr4n7n43zybf2gdpz4q1g0ry")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key (tests? #t) #:allow-other-keys) + (if tests? + (begin + (setenv "PYTHONPATH" + (string-append "./build/lib:" + (getenv "PYTHONPATH"))) + (invoke "python" "xmlschema/tests/test_all.py")) + (format #t "test suite not run~%")) + #t))))) + (native-inputs + `(("python-lxml" ,python-lxml))) ;for tests + (propagated-inputs + `(("python-elementpath" ,python-elementpath))) + (home-page "https://github.com/sissaschool/xmlschema") + (synopsis "XML Schema validator and data conversion library") + (description + "The @code{xmlschema} library is an implementation of +@url{https://www.w3.org/2001/XMLSchema, XML Schema} for Python. It has +full support for the XSD 1.0 and 1.1 standards, an XPath-based API for +finding schema's elements and attributes; and can encode and decode +XML data to JSON and other formats.") + (license license:expat))) + (define-public python-xmltodict (package (name "python-xmltodict") diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 706faff32e..cd6c3218a8 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -5073,7 +5073,7 @@ over Xlib, including: (define-public xorg-server (package (name "xorg-server") - (version "1.20.6") + (version "1.20.7") (source (origin (method url-fetch) @@ -5082,7 +5082,7 @@ over Xlib, including: "xorg-server-" version ".tar.bz2")) (sha256 (base32 - "1laib9z17jksgzb67z69blcmnpbvj7i7m604b5ns7s760iii85k3")) + "18bfl04ihw1jr3h0fs522nnxxq5ixjay77y9dcymnkzk23q8cndx")) (patches (list ;; See: diff --git a/gnu/services/avahi.scm b/gnu/services/avahi.scm index 547d826551..54656708ca 100644 --- a/gnu/services/avahi.scm +++ b/gnu/services/avahi.scm @@ -175,7 +175,7 @@ service switch (NSS) with support for @code{.local} host name resolution.") avahi-service-type "Return a service that runs @command{avahi-daemon}, a system-wide mDNS/DNS-SD responder that allows for service discovery and -\"zero-configuration\" host name lookups (see @uref{http://avahi.org/}), and +\"zero-configuration\" host name lookups (see @uref{https://avahi.org/}), and extends the name service cache daemon (nscd) so that it can resolve @code{.local} host names using @uref{http://0pointer.de/lennart/projects/nss-mdns/, nss-mdns}. Additionally, diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index ec31489d48..473ece4e97 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -463,7 +463,8 @@ storage: mysql-configuration make-mysql-configuration mysql-configuration? (mysql mysql-configuration-mysql (default mariadb)) - (port mysql-configuration-port (default 3306))) + (port mysql-configuration-port (default 3306)) + (extra-content mysql-configuration-extra-content (default ""))) (define %mysql-accounts (list (user-group @@ -478,11 +479,12 @@ storage: (define mysql-configuration-file (match-lambda - (($ <mysql-configuration> mysql port) + (($ <mysql-configuration> mysql port extra-content) (mixed-text-file "my.cnf" "[mysqld] datadir=/var/lib/mysql socket=/run/mysqld/mysqld.sock port=" (number->string port) " +" extra-content " ")))) (define (%mysql-activation config) @@ -524,7 +526,7 @@ port=" (number->string port) " (for-each (lambda (sql) (call-with-input-file - (string-append #$mysql "/share/mysql/" sql) + (string-append #$mysql:lib "/share/mysql/" sql) (lambda (in) (dump-port in p)))) '("mysql_system_tables.sql" "mysql_performance_tables.sql" diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 1be05fda4e..9dcdf38be1 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.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> ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com> @@ -48,6 +48,7 @@ #:use-module (gnu packages xfce) #:use-module (gnu packages avahi) #:use-module (gnu packages xdisorg) + #:use-module (gnu packages scanner) #:use-module (gnu packages suckless) #:use-module (gnu packages linux) #:use-module (gnu packages libusb) @@ -109,6 +110,7 @@ accountsservice-service cups-pk-helper-service-type + sane-service-type gnome-desktop-configuration gnome-desktop-configuration? @@ -837,6 +839,29 @@ accountsservice web site} for more information." ;;; +;;; Scanner access via SANE. +;;; + +(define %sane-accounts + ;; The '60-libsane.rules' udev rules refers to the "scanner" group. + (list (user-group (name "scanner") (system? #t)))) + +(define sane-service-type + (service-type + (name 'sane) + (description + "This service provides access to scanners @i{via} +@uref{http://www.sane-project.org, SANE} by installing the necessary udev +rules.") + (default-value sane-backends-minimal) + (extensions + (list (service-extension udev-service-type list) + (service-extension account-service-type + (const %sane-accounts)))))) + + + +;;; ;;; GNOME desktop service. ;;; @@ -1154,6 +1179,8 @@ or setting its password with passwd."))) ;; Add udev rules for MTP devices so that non-root users can access ;; them. (simple-service 'mtp udev-service-type (list libmtp)) + ;; Add udev rules for scanners. + (service sane-service-type) ;; Add polkit rules, so that non-root users in the wheel group can ;; perform administrative tasks (similar to "sudo"). polkit-wheel-service diff --git a/gnu/services/getmail.scm b/gnu/services/getmail.scm index b3d86cb65c..7d77888517 100644 --- a/gnu/services/getmail.scm +++ b/gnu/services/getmail.scm @@ -112,13 +112,13 @@ @samp{passwd} and @samp{static}.") (server (string 'unset) - "Space separated list of arguments to the userdb driver.") + "Name or IP adddress of the server to retrieve mail from.") (username (string 'unset) - "Space separated list of arguments to the userdb driver.") + "Username to login to the mail server with.") (port (non-negative-integer #f) - "Space separated list of arguments to the userdb driver.") + "Port number to connect to.") (password (string "") "Override fields from passwd.") @@ -127,16 +127,16 @@ "Override fields from passwd.") (keyfile (string "") - "PEM-formatted key file to use for the TLS negotiation") + "PEM-formatted key file to use for the TLS negotiation.") (certfile (string "") - "PEM-formatted certificate file to use for the TLS negotiation") + "PEM-formatted certificate file to use for the TLS negotiation.") (ca-certs (string "") - "CA certificates to use") + "CA certificates to use.") (extra-parameters (parameter-alist '()) - "Extra retriever parameters")) + "Extra retriever parameters.")) (define (serialize-getmail-destination-configuration field-name val) (serialize-configuration val getmail-destination-configuration-fields)) @@ -203,11 +203,11 @@ session with the server. A value of @samp{0} disables this feature.") "Getmail will record a log of its actions to the named file. A value of @samp{\"\"} disables this feature.") (message-log-syslog - (boolean #t) + (boolean #f) "If true, getmail will record a log of its actions using the system logger.") (message-log-verbose - (boolean #t) + (boolean #f) "If true, getmail will log information about messages not retrieved and the reason for not retrieving them, as well as starting and ending information lines.") @@ -360,7 +360,8 @@ notifications. This depends on the server supporting the IDLE extension.") (list #$@environment-variables) #:log-file #$(string-append "/var/log/getmail-" - (symbol->string name))))))) + (symbol->string name)))) + (stop #~(make-kill-destructor))))) configs)) (define getmail-service-type diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 8842d48df8..d475bda2c7 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -546,8 +546,8 @@ where /gnu lives on a separate partition.") (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) - ;; Add a kernel module for RAID-0 (aka. "stripe"). - (initrd-modules (cons "raid0" %base-initrd-modules)) + ;; Add a kernel module for RAID-1 (aka. "mirror"). + (initrd-modules (cons "raid1" %base-initrd-modules)) (mapped-devices (list (mapped-device (source (list "/dev/vda2" "/dev/vda3")) @@ -578,11 +578,11 @@ guix --version export GUIX_BUILD_OPTIONS=--no-grafts parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 600M \\ - mkpart primary ext2 600M 1200M \\ + mkpart primary ext2 3M 1.4G \\ + mkpart primary ext2 1.4G 2.8G \\ set 1 boot on \\ set 1 bios_grub on -mdadm --create /dev/md0 --verbose --level=stripe --raid-devices=2 \\ +yes | mdadm --create /dev/md0 --verbose --level=mirror --raid-devices=2 \\ /dev/vdb2 /dev/vdb3 mkfs.ext4 -L root-fs /dev/md0 mount /dev/md0 /mnt @@ -605,7 +605,7 @@ by 'mdadm'.") %raid-root-os-source #:script %raid-root-installation-script - #:target-size (* 1300 MiB))) + #:target-size (* 2800 MiB))) (command (qemu-command/writable-image image))) (run-basic-test %raid-root-os `(,@command) "raid-root-os"))))) diff --git a/gnu/tests/mail.scm b/gnu/tests/mail.scm index f064da5f53..bb446da8f9 100644 --- a/gnu/tests/mail.scm +++ b/gnu/tests/mail.scm @@ -572,5 +572,3 @@ Subject: Hello Nice to meet you!") (name "getmail") (description "Connect to a running Getmail server.") (value (run-getmail-test)))) - -%getmail-os diff --git a/guix/build/clojure-utils.scm b/guix/build/clojure-utils.scm index 9f7334bc8d..a9ffad3c8f 100644 --- a/guix/build/clojure-utils.scm +++ b/guix/build/clojure-utils.scm @@ -69,10 +69,7 @@ (define-with-docs %doc-regex "Default regex for matching the base name of top-level documentation files." - (format #f - "(~a)|(\\.(html|markdown|md|txt)$)" - (@@ (guix build guile-build-system) - %documentation-file-regexp))) + "^(README.*|.*\\.html|.*\\.org|.*\\.md|\\.markdown|\\.txt)$") (define* (install-doc #:key doc-dirs @@ -185,10 +182,12 @@ canonicalized." (apply find-files "./" args)))) ;;; FIXME: should be moved to (guix build utils) -(define-with-docs file-sans-extension - "Strip extension from path, if any." - (@@ (guix build guile-build-system) - file-sans-extension)) +(define (file-sans-extension file) ;TODO: factorize + "Return the substring of FILE without its extension, if any." + (let ((dot (string-rindex file #\.))) + (if dot + (substring file 0 dot) + file))) (define (relative-path->clojure-lib-string path) "Convert PATH to a clojure library string." diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index 248d6761fc..ae79a9708f 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.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> ;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> @@ -1140,7 +1140,7 @@ exception if it's already taken." ;; at this point. (if (= ENOSYS (system-error-errno (cons key args))) #f - (apply throw args))) + (apply throw key args))) (_ (apply throw key args))))))) (dynamic-wind (lambda () diff --git a/guix/import/cpan.scm b/guix/import/cpan.scm index ec86f11743..7a97c7f8e8 100644 --- a/guix/import/cpan.scm +++ b/guix/import/cpan.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,20 +28,42 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) #:use-module (json) + #:use-module (guix json) #:use-module (gcrypt hash) #:use-module (guix store) #:use-module (guix utils) #:use-module (guix base32) #:use-module (guix ui) #:use-module ((guix download) #:select (download-to-store url-fetch)) - #:use-module ((guix import utils) #:select (factorize-uri - flatten assoc-ref*)) + #:use-module ((guix import utils) #:select (factorize-uri)) #:use-module (guix import json) #:use-module (guix packages) #:use-module (guix upstream) #:use-module (guix derivations) - #:export (cpan->guix-package - %cpan-updater)) + #:export (cpan-dependency? + cpan-dependency-relationship + cpan-dependency-phase + cpan-dependency-module + cpan-dependency-version + + cpan-release? + cpan-release-license + cpan-release-author + cpan-release-version + cpan-release-modle + cpan-release-distribution + cpan-release-download-url + cpan-release-abstract + cpan-release-home-page + cpan-release-dependencies + json->cpan-release + + cpan-fetch + cpan->guix-package + metacpan-url->mirror-url + %cpan-updater + + %metacpan-base-url)) ;;; Commentary: ;;; @@ -49,6 +72,49 @@ ;;; ;;; Code: +(define %metacpan-base-url + ;; Base URL of the MetaCPAN API. + (make-parameter "https://fastapi.metacpan.org/v1/")) + +;; Dependency of a "release". +(define-json-mapping <cpan-dependency> make-cpan-dependency cpan-dependency? + json->cpan-dependency + (relationship cpan-dependency-relationship "relationship" + string->symbol) ;requires | suggests + (phase cpan-dependency-phase "phase" + string->symbol) ;develop | configure | test | runtime + (module cpan-dependency-module) ;string + (version cpan-dependency-version)) ;string + +;; Release as returned by <https://fastapi.metacpan.org/v1/release/PKG>. +(define-json-mapping <cpan-release> make-cpan-release cpan-release? + json->cpan-release + (license cpan-release-license) + (author cpan-release-author) + (version cpan-release-version "version" + (match-lambda + ((? number? version) + ;; Version is sometimes not quoted in the module json, so + ;; it gets imported into Guile as a number, so convert it + ;; to a string (example: "X11-Protocol-Other"). + (number->string version)) + ((? string? version) + ;; Sometimes we get a "v" prefix. Strip it. + (if (string-prefix? "v" version) + (string-drop version 1) + version)))) + (module cpan-release-module "main_module") ;e.g., "Test::Script" + (distribution cpan-release-distribution) ;e.g., "Test-Script" + (download-url cpan-release-download-url "download_url") + (abstract cpan-release-abstract "abstract") + (home-page cpan-release-home-page "resources" + (match-lambda + (#f #f) + ((lst ...) (assoc-ref lst "homepage")))) + (dependencies cpan-release-dependencies "dependency" + (lambda (vector) + (map json->cpan-dependency (vector->list vector))))) + (define string->license (match-lambda ;; List of valid values from https://metacpan.org/pod/CPAN::Meta::Spec. @@ -89,7 +155,7 @@ module is distributed with 'Test::Simple', so (module->dist-name \"ok\") would return \"Test-Simple\"" (assoc-ref (json-fetch (string-append - "https://fastapi.metacpan.org/v1/module/" + (%metacpan-base-url) "/module/" module "?fields=distribution")) "distribution")) @@ -111,32 +177,25 @@ return \"Test-Simple\"" (_ #f))))) (define (cpan-fetch name) - "Return an alist representation of the CPAN metadata for the perl module MODULE, -or #f on failure. MODULE should be e.g. \"Test::Script\"" + "Return a <cpan-release> record for Perl module MODULE, +or #f on failure. MODULE should be the distribution name, such as +\"Test-Script\" for the \"Test::Script\" module." ;; This API always returns the latest release of the module. - (json-fetch (string-append "https://fastapi.metacpan.org/v1/release/" name))) + (json->cpan-release + (json-fetch (string-append (%metacpan-base-url) "/release/" + name)))) (define (cpan-home name) (string-append "https://metacpan.org/release/" name)) -(define (cpan-source-url meta) - "Return the download URL for a module's source tarball." +(define (metacpan-url->mirror-url url) + "Replace 'https://cpan.metacpan.org' in URL with 'mirror://cpan'." (regexp-substitute/global #f "http[s]?://cpan.metacpan.org" - (assoc-ref meta "download_url") + url 'pre "mirror://cpan" 'post)) -(define (cpan-version meta) - "Return the version number from META." - (match (assoc-ref meta "version") - ((? number? version) - ;; version is sometimes not quoted in the module json, so it gets - ;; imported into Guile as a number, so convert it to a string. - (number->string version)) - (version - ;; Sometimes we get a "v" prefix. Strip it. - (if (string-prefix? "v" version) - (string-drop version 1) - version)))) +(define cpan-source-url + (compose metacpan-url->mirror-url cpan-release-download-url)) (define (perl-package) "Return the 'perl' package. This is a lazy reference so that we don't @@ -179,42 +238,38 @@ depend on (gnu packages perl)." first perl-version last)))) (loop))))))))))) -(define (cpan-module->sexp meta) - "Return the `package' s-expression for a CPAN module from the metadata in -META." +(define (cpan-module->sexp release) + "Return the 'package' s-expression for a CPAN module from the release data +in RELEASE, a <cpan-release> record." (define name - (assoc-ref meta "distribution")) + (cpan-release-distribution release)) (define (guix-name name) (if (string-prefix? "perl-" name) (string-downcase name) (string-append "perl-" (string-downcase name)))) - (define version (cpan-version meta)) - (define source-url (cpan-source-url meta)) + (define version (cpan-release-version release)) + (define source-url (cpan-source-url release)) (define (convert-inputs phases) ;; Convert phase dependencies into a list of name/variable pairs. - (match (flatten - (map (lambda (ph) - (filter-map (lambda (t) - (assoc-ref* meta "metadata" "prereqs" ph t)) - '("requires" "recommends" "suggests"))) - phases)) - (#f - '()) + (match (filter-map (lambda (dependency) + (and (memq (cpan-dependency-phase dependency) + phases) + (cpan-dependency-module dependency))) + (cpan-release-dependencies release)) ((inputs ...) (sort (delete-duplicates ;; Listed dependencies may include core modules. Filter those out. (filter-map (match-lambda - (("perl" . _) ;implicit dependency - #f) - ((module . _) - (and (not (core-module? module)) - (let ((name (guix-name (module->dist-name module)))) - (list name - (list 'unquote (string->symbol name))))))) + ("perl" #f) ;implicit dependency + ((? core-module?) #f) + (module + (let ((name (guix-name (module->dist-name module)))) + (list name + (list 'unquote (string->symbol name)))))) inputs)) (lambda args (match args @@ -247,19 +302,19 @@ META." ;; which says they are required during building. We ;; have not yet had a need for cross-compiled perl ;; modules, however, so we leave it out. - (convert-inputs '("configure" "build" "test"))) + (convert-inputs '(configure build test))) ,@(maybe-inputs 'propagated-inputs - (convert-inputs '("runtime"))) + (convert-inputs '(runtime))) (home-page ,(cpan-home name)) - (synopsis ,(assoc-ref meta "abstract")) + (synopsis ,(cpan-release-abstract release)) (description fill-in-yourself!) - (license ,(string->license (assoc-ref meta "license")))))) + (license ,(string->license (cpan-release-license release)))))) (define (cpan->guix-package module-name) "Fetch the metadata for PACKAGE-NAME from metacpan.org, and return the `package' s-expression corresponding to that package, or #f on failure." - (let ((module-meta (cpan-fetch (module->name module-name)))) - (and=> module-meta cpan-module->sexp))) + (let ((release (cpan-fetch (module->name module-name)))) + (and=> release cpan-module->sexp))) (define (cpan-package? package) "Return #t if PACKAGE is a package from CPAN." @@ -285,7 +340,7 @@ META." "Return an <upstream-source> for the latest release of PACKAGE." (match (cpan-fetch (package->upstream-name package)) (#f #f) - (meta + (release (let ((core-inputs (match (package-direct-inputs package) (((_ inputs _ ...) ...) @@ -303,8 +358,8 @@ META." (warning (G_ "input '~a' of ~a is in Perl core~%") module (package-name package))) core-inputs))) - (let ((version (cpan-version meta)) - (url (cpan-source-url meta))) + (let ((version (cpan-release-version release)) + (url (cpan-source-url release))) (upstream-source (package (package-name package)) (version version) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index 13771ec598..bcb37ed250 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -54,7 +54,10 @@ cran-package? bioconductor-package? bioconductor-data-package? - bioconductor-experiment-package?)) + bioconductor-experiment-package? + + description->alist + description->package)) ;;; Commentary: ;;; @@ -270,6 +273,10 @@ empty list when the FIELD cannot be found." (string-any char-set:whitespace item))) (map string-trim-both items)))))) +;; Trick Guile 3 so that it keeps the 'listify' binding accessible *and* +;; private even though this module is declarative. +(set! listify listify) + (define default-r-packages (list "base" "compiler" diff --git a/guix/import/crate.scm b/guix/import/crate.scm index 405a26a877..57823c3639 100644 --- a/guix/import/crate.scm +++ b/guix/import/crate.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 David Craven <david@craven.ch> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net> ;;; ;;; This file is part of GNU Guix. @@ -40,6 +40,7 @@ #:use-module (srfi srfi-26) #:export (crate->guix-package guix-package->crate-name + string->license crate-recursive-import %crate-updater)) diff --git a/guix/import/elpa.scm b/guix/import/elpa.scm index 83354d3f04..2d4487dba0 100644 --- a/guix/import/elpa.scm +++ b/guix/import/elpa.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> -;;; Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2016, 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -72,6 +72,7 @@ NAMES (strings)." "Retrieve the URL of REPO." (let ((elpa-archives '((gnu . "https://elpa.gnu.org/packages") + (gnu/http . "http://elpa.gnu.org/packages") ;for testing (melpa-stable . "https://stable.melpa.org/packages") (melpa . "https://melpa.org/packages")))) (assq-ref elpa-archives repo))) @@ -251,7 +252,7 @@ type '<elpa-package>'." (package ;; ELPA is known to contain only GPLv3+ code. Other repos may contain ;; code under other license but there's no license metadata. - (let ((license (and (eq? 'gnu repo) 'license:gpl3+))) + (let ((license (and (memq repo '(gnu gnu/http)) 'license:gpl3+))) (elpa-package->sexp package license))))) diff --git a/guix/import/opam.scm b/guix/import/opam.scm index e258c4197f..394415fdd4 100644 --- a/guix/import/opam.scm +++ b/guix/import/opam.scm @@ -1,3 +1,4 @@ +;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; ;;; This file is part of GNU Guix. @@ -38,7 +39,14 @@ #:use-module ((guix licenses) #:prefix license:) #:export (opam->guix-package opam-recursive-import - %opam-updater)) + %opam-updater + + ;; The following patterns are exported for testing purposes. + string-pat + multiline-string + list-pat + dict + condition)) ;; Define a PEG parser for the opam format (define-peg-pattern comment none (and "#" (* STRCHR) "\n")) @@ -233,8 +241,8 @@ path to the repository." (list dependency (list 'unquote (string->symbol dependency)))) (ocaml-names->guix-names lst))) -(define (opam-fetch name) - (and-let* ((repository (get-opam-repository)) +(define* (opam-fetch name #:optional (repository (get-opam-repository))) + (and-let* ((repository repository) (version (find-latest-version name repository)) (file (string-append repository "/packages/" name "/" name "." version "/opam"))) `(("metadata" ,@(get-metadata file)) @@ -242,8 +250,11 @@ path to the repository." (substring version 1) version))))) -(define (opam->guix-package name) - (and-let* ((opam-file (opam-fetch name)) +(define* (opam->guix-package name #:key repository) + "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)) (version (assoc-ref opam-file "version")) (opam-content (assoc-ref opam-file "metadata")) (url-dict (metadata-ref opam-content "url")) diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm index d528aace9a..a84683ef6f 100644 --- a/guix/import/texlive.scm +++ b/guix/import/texlive.scm @@ -38,7 +38,10 @@ #:use-module (guix packages) #:use-module (gnu packages) #:use-module (guix build-system texlive) - #:export (texlive->guix-package)) + #:export (texlive->guix-package + + fetch-sxml + sxml->package)) ;;; Commentary: ;;; diff --git a/guix/inferior.scm b/guix/inferior.scm index c4969cd56a..0236fb61ad 100644 --- a/guix/inferior.scm +++ b/guix/inferior.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,7 +44,8 @@ #:use-module (guix derivations) #:use-module (guix base32) #:use-module (gcrypt hash) - #:autoload (guix cache) (maybe-remove-expired-cache-entries) + #:autoload (guix cache) (maybe-remove-expired-cache-entries + file-expiration-time) #:autoload (guix ui) (show-what-to-build*) #:autoload (guix build utils) (mkdir-p) #:use-module (srfi srfi-1) diff --git a/guix/lint.scm b/guix/lint.scm index ed2f06bc64..24fbf05202 100644 --- a/guix/lint.scm +++ b/guix/lint.scm @@ -300,6 +300,7 @@ of a package, and INPUT-NAMES, a list of package specifications such as "gobject-introspection" "googletest-source" "groff" + "gtk-doc" "help2man" "intltool" "itstool" @@ -904,16 +905,31 @@ descriptions maintained upstream." (origin-uris origin)) '()))) +(cond-expand + (guile-3 + ;; Guile 3.0.0 does not export this predicate. + (define exception-with-kind-and-args? + (exception-predicate &exception-with-kind-and-args))) + (else ;Guile 2 + (define exception-with-kind-and-args? + (const #f)))) + (define (check-derivation package) "Emit a warning if we fail to compile PACKAGE to a derivation." (define (try system) - (catch #t + (catch #t ;TODO: Remove 'catch' when Guile 2.x is no longer supported. (lambda () (guard (c ((store-protocol-error? c) (make-warning package (G_ "failed to create ~a derivation: ~a") (list system (store-protocol-error-message c)))) + ((exception-with-kind-and-args? c) + (make-warning package + (G_ "failed to create ~a derivation: ~s") + (list system + (cons (exception-kind c) + (exception-args c))))) ((message-condition? c) (make-warning package (G_ "failed to create ~a derivation: ~a") @@ -1013,8 +1029,11 @@ the NIST server non-fatal." (package-version package)))) ((force lookup) name version))))) -(define (check-vulnerabilities package) - "Check for known vulnerabilities for PACKAGE." +(define* (check-vulnerabilities package + #:optional (package-vulnerabilities + package-vulnerabilities)) + "Check for known vulnerabilities for PACKAGE. Obtain the list of +vulnerability records for PACKAGE by calling PACKAGE-VULNERABILITIES." (let ((package (or (package-replacement package) package))) (match (package-vulnerabilities package) (() diff --git a/guix/lzlib.scm b/guix/lzlib.scm index 24c7b4b448..2fc326ba34 100644 --- a/guix/lzlib.scm +++ b/guix/lzlib.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,7 +32,8 @@ call-with-lzip-input-port call-with-lzip-output-port %default-member-length-limit - %default-compression-level)) + %default-compression-level + dictionary-size+match-length-limit)) ;;; Commentary: ;;; @@ -569,20 +570,27 @@ the number of uncompressed bytes written, a non-negative integer." ;; Alist of (levels (dictionary-size match-length-limit)). 0 is the fastest. ;; See bbexample.c in lzlib's source. (define %compression-levels - `((0 (65535 16)) - (1 (,(bitwise-arithmetic-shift-left 1 20) 5)) - (2 (,(bitwise-arithmetic-shift-left 3 19) 6)) - (3 (,(bitwise-arithmetic-shift-left 1 21) 8)) - (4 (,(bitwise-arithmetic-shift-left 3 20) 12)) - (5 (,(bitwise-arithmetic-shift-left 1 22) 20)) - (6 (,(bitwise-arithmetic-shift-left 1 23) 36)) - (7 (,(bitwise-arithmetic-shift-left 1 24) 68)) - (8 (,(bitwise-arithmetic-shift-left 3 23) 132)) - (9 (,(bitwise-arithmetic-shift-left 1 25) 273)))) + `((0 65535 16) + (1 ,(bitwise-arithmetic-shift-left 1 20) 5) + (2 ,(bitwise-arithmetic-shift-left 3 19) 6) + (3 ,(bitwise-arithmetic-shift-left 1 21) 8) + (4 ,(bitwise-arithmetic-shift-left 3 20) 12) + (5 ,(bitwise-arithmetic-shift-left 1 22) 20) + (6 ,(bitwise-arithmetic-shift-left 1 23) 36) + (7 ,(bitwise-arithmetic-shift-left 1 24) 68) + (8 ,(bitwise-arithmetic-shift-left 3 23) 132) + (9 ,(bitwise-arithmetic-shift-left 1 25) 273))) (define %default-compression-level 6) +(define (dictionary-size+match-length-limit level) + "Return two values: the dictionary size for LEVEL, and its match-length +limit. LEVEL must be a compression level, an integer between 0 and 9." + (match (assv-ref %compression-levels level) + ((dictionary-size match-length-limit) + (values dictionary-size match-length-limit)))) + (define* (make-lzip-input-port port) "Return an input port that decompresses data read from PORT, a file port. PORT is automatically closed when the resulting port is closed." @@ -602,8 +610,9 @@ PORT is automatically closed when the resulting port is closed." "Return an output port that compresses data at the given LEVEL, using PORT, a file port, as its sink. PORT is automatically closed when the resulting port is closed." - (define encoder (apply lz-compress-open - (car (assoc-ref %compression-levels level)))) + (define encoder + (call-with-values (lambda () (dictionary-size+match-length-limit level)) + lz-compress-open)) (define (write! bv start count) (lzwrite encoder bv port start count)) @@ -626,8 +635,9 @@ port is closed." (level %default-compression-level)) "Return an input port that compresses data read from PORT, with the given LEVEL. PORT is automatically closed when the resulting port is closed." - (define encoder (apply lz-compress-open - (car (assoc-ref %compression-levels level)))) + (define encoder + (call-with-values (lambda () (dictionary-size+match-length-limit level)) + lz-compress-open)) (define input-buffer (make-bytevector 8192)) (define input-len 0) diff --git a/guix/records.scm b/guix/records.scm index 99507dc384..4bda5426a3 100644 --- a/guix/records.scm +++ b/guix/records.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Mark H Weaver <mhw@netris.org> ;;; ;;; This file is part of GNU Guix. @@ -70,14 +70,22 @@ interface\" (ABI) for TYPE is equal to COOKIE." "~a: record ABI mismatch; recompilation needed" (list #,type) '())))) - (define (report-invalid-field-specifier name bindings) - "Report the first invalid binding among BINDINGS." + (define* (report-invalid-field-specifier name bindings + #:optional parent-form) + "Report the first invalid binding among BINDINGS. PARENT-FORM is used for +error-reporting purposes." (let loop ((bindings bindings)) (syntax-case bindings () (((field value) rest ...) ;good (loop #'(rest ...))) ((weird _ ...) ;weird! - (syntax-violation name "invalid field specifier" #'weird))))) + ;; WEIRD may be an identifier, thus lacking source location info, and + ;; BINDINGS is a list, also lacking source location info. Hopefully + ;; PARENT-FORM provides source location info. + (apply syntax-violation name "invalid field specifier" + (if parent-form + (list parent-form #'weird) + (list #'weird))))))) (define (report-duplicate-field-specifier name ctor) "Report the first duplicate identifier among the bindings in CTOR." @@ -233,7 +241,8 @@ of TYPE matches the expansion-time ABI." ;; Report precisely which one is faulty, instead of letting the ;; "source expression failed to match any pattern" error. (report-invalid-field-specifier 'name - #'(bindings (... ...)))))))))) + #'(bindings (... ...)) + s)))))))) (define-syntax-rule (define-field-property-predicate predicate property) "Define PREDICATE as a procedure that takes a syntax object and, when passed diff --git a/guix/scripts/challenge.scm b/guix/scripts/challenge.scm index ebeebd5cbe..65e2427033 100644 --- a/guix/scripts/challenge.scm +++ b/guix/scripts/challenge.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2016, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,7 +25,7 @@ #:use-module (guix monads) #:use-module (guix base32) #:use-module (guix packages) - #:use-module (guix progress) + #:use-module ((guix progress) #:hide (dump-port*)) #:use-module (guix serialization) #:use-module (guix scripts substitute) #:use-module (rnrs bytevectors) @@ -193,9 +193,6 @@ taken since we do not import the archives." ;;; Reporting. ;;; -(define dump-port* ;FIXME: deduplicate - (@@ (guix serialization) dump)) - (define (port-sha256* port size) ;; Like 'port-sha256', but limited to SIZE bytes. (let-values (((out get) (open-sha256-port))) diff --git a/guix/scripts/edit.scm b/guix/scripts/edit.scm index da3d2775e8..a6fd1d2751 100644 --- a/guix/scripts/edit.scm +++ b/guix/scripts/edit.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,6 +21,7 @@ (define-module (guix scripts edit) #:use-module (guix ui) #:use-module (guix scripts) + #:use-module ((guix scripts build) #:select (%standard-build-options)) #:use-module (guix utils) #:use-module (gnu packages) #:use-module (srfi srfi-1) @@ -28,7 +30,10 @@ guix-edit)) (define %options - (list (option '(#\h "help") #f #f + (list (find (lambda (option) + (member "load-path" (option-names option))) + %standard-build-options) + (option '(#\h "help") #f #f (lambda args (show-help) (exit 0))) @@ -41,6 +46,9 @@ Start $VISUAL or $EDITOR to edit the definitions of PACKAGE...\n")) (newline) (display (G_ " + -L, --load-path=DIR prepend DIR to the package module search path")) + (newline) + (display (G_ " -h, --help display this help and exit")) (display (G_ " -V, --version display version information and exit")) diff --git a/guix/scripts/graph.scm b/guix/scripts/graph.scm index 7558cb1e85..53f407b2fc 100644 --- a/guix/scripts/graph.scm +++ b/guix/scripts/graph.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +36,7 @@ #:use-module ((guix scripts build) #:select (show-transformation-options-help options->transformation + %standard-build-options %transformation-options)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) @@ -473,6 +475,9 @@ package modules, while attempting to retain user package modules." (lambda (opt name arg result) (alist-cons 'system arg (alist-delete 'system result eq?)))) + (find (lambda (option) + (member "load-path" (option-names option))) + %standard-build-options) (option '(#\h "help") #f #f (lambda args (show-help) @@ -501,6 +506,9 @@ Emit a representation of the dependency graph of PACKAGE...\n")) (display (G_ " -s, --system=SYSTEM consider the graph for SYSTEM--e.g., \"i686-linux\"")) (newline) + (display (G_ " + -L, --load-path=DIR prepend DIR to the package module search path")) + (newline) (show-transformation-options-help) (newline) (display (G_ " diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index ea16435d2d..1cb0d382bf 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2013, 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2016 Alex Kost <alezost@gmail.com> @@ -39,7 +39,7 @@ #:use-module (guix scripts) #:use-module (guix scripts build) #:use-module (guix describe) - #:autoload (guix store roots) (gc-roots) + #:autoload (guix store roots) (gc-roots user-owned?) #:use-module ((guix build utils) #:select (directory-exists? mkdir-p)) #:use-module ((guix build syscalls) @@ -63,6 +63,8 @@ delete-matching-generations guix-package + transaction-upgrade-entry ;mostly for testing + (%options . %package-options) (%default-options . %package-default-options) guix-package*)) @@ -135,9 +137,6 @@ denote ranges as interpreted by 'matching-generations'." specified in MANIFEST, a manifest object. When ALLOW-COLLISIONS? is true, do not treat collisions in MANIFEST as an error. HOOKS is a list of \"profile hooks\" run when building the profile." - (when (equal? profile %current-profile) - (ensure-default-profile)) - (let* ((prof-drv (run-with-store store (profile-derivation manifest #:allow-collisions? allow-collisions? @@ -205,7 +204,7 @@ non-zero relevance score." (package-full-name package2)) (> score1 score2)))))))))) -(define (transaction-upgrade-entry entry transaction) +(define (transaction-upgrade-entry store entry transaction) "Return a variant of TRANSACTION that accounts for the upgrade of ENTRY, a <manifest-entry>." (define (supersede old new) @@ -242,7 +241,7 @@ non-zero relevance score." transaction) ((=) (let ((candidate-path (derivation->output-path - (package-derivation (%store) pkg)))) + (package-derivation store pkg)))) ;; XXX: When there are propagated inputs, assume we need to ;; upgrade the whole entry. (if (and (string=? path candidate-path) @@ -600,7 +599,7 @@ and upgrades." (define upgraded (fold (lambda (entry transaction) (if (upgrade? (manifest-entry-name entry)) - (transaction-upgrade-entry entry transaction) + (transaction-upgrade-entry (%store) entry transaction) transaction)) transaction (manifest-entries manifest))) @@ -863,6 +862,12 @@ processed, #f otherwise." (package-version item) (manifest-entry-version entry)))))) + (when (equal? profile %current-profile) + ;; Normally the daemon created %CURRENT-PROFILE when we connected, unless + ;; it's a version that lacks the fix for <https://bugs.gnu.org/37744> + ;; (aka. CVE-2019-18192). Ensure %CURRENT-PROFILE exists so that + ;; 'with-profile-lock' can create its lock file below. + (ensure-default-profile)) ;; First, acquire a lock on the profile, to ensure only one guix process ;; is modifying it at a time. diff --git a/guix/scripts/publish.scm b/guix/scripts/publish.scm index 71a349d2fe..f5b2f5fd4e 100644 --- a/guix/scripts/publish.scm +++ b/guix/scripts/publish.scm @@ -64,6 +64,7 @@ #:use-module ((guix build syscalls) #:select (set-thread-name)) #:export (%public-key %private-key + signed-string guix-publish)) @@ -237,7 +238,8 @@ if ITEM is already compressed." ("Priority" . 100))) (define (signed-string s) - "Sign the hash of the string S with the daemon's key." + "Sign the hash of the string S with the daemon's key. Return a canonical +sexp for the signature." (let* ((public-key (%public-key)) (hash (bytevector->hash-data (sha256 (string->utf8 s)) #:key-type (key-type public-key)))) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index daf6fcf947..efada1df5a 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +28,7 @@ #:use-module (guix ui) #:use-module (gcrypt hash) #:use-module (guix scripts) + #:use-module ((guix scripts build) #:select (%standard-build-options)) #:use-module (guix store) #:use-module (guix utils) #:use-module (guix packages) @@ -116,6 +118,19 @@ (leave (G_ "unsupported policy: ~a~%") arg))))) + ;; The short option -L is already used by --list-updaters, therefore + ;; it needs to be removed from %standard-build-options. + (let ((load-path-option (find (lambda (option) + (member "load-path" + (option-names option))) + %standard-build-options))) + (option + (filter (lambda (name) (not (equal? #\L name))) + (option-names load-path-option)) + (option-required-arg? load-path-option) + (option-optional-arg? load-path-option) + (option-processor load-path-option))) + (option '(#\h "help") #f #f (lambda args (show-help) @@ -166,6 +181,9 @@ specified with `--select'.\n")) used when 'key-download' is not specified")) (newline) (display (G_ " + --load-path=DIR prepend DIR to the package module search path")) + (newline) + (display (G_ " -h, --help display this help and exit")) (display (G_ " -V, --version display version information and exit")) diff --git a/guix/scripts/repl.scm b/guix/scripts/repl.scm index e1cc759fc8..ff1f208894 100644 --- a/guix/scripts/repl.scm +++ b/guix/scripts/repl.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +21,6 @@ #:use-module (guix ui) #:use-module (guix scripts) #:use-module (guix repl) - #:use-module (guix utils) - #:use-module (guix packages) - #:use-module (gnu packages) #:use-module (srfi srfi-1) #:use-module (srfi srfi-37) #:use-module (ice-9 match) @@ -52,7 +50,16 @@ (alist-cons 'type (string->symbol arg) result))) (option '("listen") #t #f (lambda (opt name arg result) - (alist-cons 'listen arg result))))) + (alist-cons 'listen arg result))) + (option '(#\q) #f #f + (lambda (opt name arg result) + (alist-cons 'ignore-dot-guile? #t result))) + (option '(#\L "load-path") #t #f + (lambda (opt name arg result) + ;; XXX: Imperatively modify the search paths. + (set! %load-path (cons arg %load-path)) + (set! %load-compiled-path (cons arg %load-compiled-path)) + result)))) (define (show-help) @@ -60,6 +67,13 @@ Start a Guile REPL in the Guix execution environment.\n")) (display (G_ " -t, --type=TYPE start a REPL of the given TYPE")) + (display (G_ " + --listen=ENDPOINT listen to ENDPOINT instead of standard input")) + (display (G_ " + -q inhibit loading of ~/.guile")) + (newline) + (display (G_ " + -L, --load-path=DIR prepend DIR to the package module search path")) (newline) (display (G_ " -h, --help display this help and exit")) @@ -129,6 +143,11 @@ call THUNK." (leave (G_ "~A: extraneous argument~%") arg)) %default-options)) + (define user-config + (and=> (getenv "HOME") + (lambda (home) + (string-append home "/.guile")))) + (with-error-handling (let ((type (assoc-ref opts 'type))) (call-with-connection (assoc-ref opts 'listen) @@ -138,11 +157,11 @@ call THUNK." (save-module-excursion (lambda () (set-current-module user-module) - (and=> (getenv "HOME") - (lambda (home) - (let ((guile (string-append home "/.guile"))) - (when (file-exists? guile) - (load guile))))) + (when (and (not (assoc-ref opts 'ignore-dot-guile?)) + user-config + (file-exists? user-config)) + (load user-config)) + ;; Do not exit repl on SIGINT. ((@@ (ice-9 top-repl) call-with-sigint) (lambda () diff --git a/guix/scripts/size.scm b/guix/scripts/size.scm index f549ce05b8..2446b84587 100644 --- a/guix/scripts/size.scm +++ b/guix/scripts/size.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,6 +20,7 @@ (define-module (guix scripts size) #:use-module (guix ui) #:use-module (guix scripts) + #:use-module (guix scripts build) #:use-module (guix store) #:use-module (guix monads) #:use-module (guix combinators) @@ -242,6 +244,9 @@ Report the size of PACKAGE and its dependencies.\n")) -m, --map-file=FILE write to FILE a graphical map of disk usage")) (newline) (display (G_ " + -L, --load-path=DIR prepend DIR to the package module search path")) + (newline) + (display (G_ " -h, --help display this help and exit")) (display (G_ " -V, --version display version information and exit")) @@ -273,6 +278,9 @@ Report the size of PACKAGE and its dependencies.\n")) (option '(#\m "map-file") #t #f (lambda (opt name arg result) (alist-cons 'map-file arg result))) + (find (lambda (option) + (member "load-path" (option-names option))) + %standard-build-options) (option '(#\h "help") #f #f (lambda args (show-help) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index 3bf9b8735f..dfb975a24a 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -557,7 +557,7 @@ initial connection on which HTTP requests are sent." (('connection 'close) (close-port p) (connect #f ;try again - (append tail (drop requests processed)) + (drop requests (+ 1 processed)) result)) (_ (loop tail (+ 1 processed) result)))))))))) ;keep going diff --git a/guix/serialization.scm b/guix/serialization.scm index f793feb53d..9452303730 100644 --- a/guix/serialization.scm +++ b/guix/serialization.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -36,6 +36,7 @@ write-string-pairs write-store-path read-store-path write-store-path-list read-store-path-list + (dump . dump-port*) &nar-error nar-error? diff --git a/guix/ui.scm b/guix/ui.scm index 023e604085..4857a88827 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -55,7 +55,9 @@ ;; in 5d669883ecc104403c5d3ba7d172e9c02234577c, #:hide ;; unwanted bindings instead of #:select'ing the needed ;; bindings. - #:hide (package-name->name+version)) + #:hide (package-name->name+version + ;; Avoid "overrides core binding" warning. + delete)) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-19) @@ -173,7 +175,11 @@ information, or #f if it could not be found." (previous frame)) (if (not frame) previous - (if (frame-source frame) + + ;; On Guile 3, the latest frame with source may be that of + ;; 'raise-exception' in boot-9.scm. Skip it. + (if (and (frame-source frame) + (not (eq? 'raise-exception (frame-procedure-name frame)))) frame (loop (frame-previous frame) frame))))) @@ -370,9 +376,10 @@ ARGS is the list of arguments received by the 'throw' handler." (format (current-error-port) (G_ "~amissing closing parenthesis~%") location)) (apply throw args))) - (('syntax-error proc message properties form . rest) + (('syntax-error proc message properties form subform . rest) (let ((loc (source-properties->location properties))) - (report-error loc (G_ "~a~%") message))) + (report-error loc (G_ "~s: ~a~%") + (or subform form) message))) (('unbound-variable _ ...) (report-unbound-variable-error args #:frame frame)) (((or 'srfi-34 '%exception) obj) diff --git a/tests/cpan.scm b/tests/cpan.scm index 189dd027e6..b4db9e60e4 100644 --- a/tests/cpan.scm +++ b/tests/cpan.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co> +;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,9 +22,10 @@ #:use-module (guix import cpan) #:use-module (guix base32) #:use-module (gcrypt hash) - #:use-module (guix tests) + #:use-module (guix tests http) #:use-module (guix grafts) #:use-module (srfi srfi-64) + #:use-module (web client) #:use-module (ice-9 match)) ;; Globally disable grafts because they can trigger early builds. @@ -32,13 +34,6 @@ (define test-json "{ \"metadata\" : { - \"prereqs\" : { - \"runtime\" : { - \"requires\" : { - \"Test::Script\" : \"1.05\", - } - } - } \"name\" : \"Foo-Bar\", \"version\" : \"0.1\" } @@ -47,6 +42,13 @@ \"license\" : [ \"perl_5\" ], + \"dependency\": [ + { \"relationship\": \"requires\", + \"phase\": \"runtime\", + \"version\": \"1.05\", + \"module\": \"Test::Script\" + } + ], \"abstract\" : \"Fizzle Fuzz\", \"download_url\" : \"http://example.com/Foo-Bar-0.1.tar.gz\", \"author\" : \"Guix\", @@ -56,67 +58,51 @@ (define test-source "foobar") +;; Avoid collisions with other tests. +(%http-server-port 10400) + (test-begin "cpan") (test-assert "cpan->guix-package" ;; Replace network resources with sample data. - (mock ((guix build download) url-fetch - (lambda* (url file-name - #:key - (mirrors '()) verify-certificate?) - (with-output-to-file file-name - (lambda () - (display - (match url - ("http://example.com/Foo-Bar-0.1.tar.gz" - test-source) - (_ (error "Unexpected URL: " url)))))))) - (mock ((guix http-client) http-fetch - (lambda (url . rest) - (match url - ("https://fastapi.metacpan.org/v1/release/Foo-Bar" - (values (open-input-string test-json) - (string-length test-json))) - ("https://fastapi.metacpan.org/v1/module/Test::Script?fields=distribution" - (let ((result "{ \"distribution\" : \"Test-Script\" }")) - (values (open-input-string result) - (string-length result)))) - (_ (error "Unexpected URL: " url))))) - (match (cpan->guix-package "Foo::Bar") - (('package - ('name "perl-foo-bar") - ('version "0.1") - ('source ('origin - ('method 'url-fetch) - ('uri ('string-append "http://example.com/Foo-Bar-" - 'version ".tar.gz")) - ('sha256 - ('base32 - (? string? hash))))) - ('build-system 'perl-build-system) - ('propagated-inputs - ('quasiquote - (("perl-test-script" ('unquote 'perl-test-script))))) - ('home-page "https://metacpan.org/release/Foo-Bar") - ('synopsis "Fizzle Fuzz") - ('description 'fill-in-yourself!) - ('license 'perl-license)) - (string=? (bytevector->nix-base32-string - (call-with-input-string test-source port-sha256)) - hash)) - (x - (pk 'fail x #f)))))) + (with-http-server `((200 ,test-json) + (200 ,test-source) + (200 "{ \"distribution\" : \"Test-Script\" }")) + (parameterize ((%metacpan-base-url (%local-url)) + (current-http-proxy (%local-url))) + (match (cpan->guix-package "Foo::Bar") + (('package + ('name "perl-foo-bar") + ('version "0.1") + ('source ('origin + ('method 'url-fetch) + ('uri ('string-append "http://example.com/Foo-Bar-" + 'version ".tar.gz")) + ('sha256 + ('base32 + (? string? hash))))) + ('build-system 'perl-build-system) + ('propagated-inputs + ('quasiquote + (("perl-test-script" ('unquote 'perl-test-script))))) + ('home-page "https://metacpan.org/release/Foo-Bar") + ('synopsis "Fizzle Fuzz") + ('description 'fill-in-yourself!) + ('license 'perl-license)) + (string=? (bytevector->nix-base32-string + (call-with-input-string test-source port-sha256)) + hash)) + (x + (pk 'fail x #f)))))) -(test-equal "source-url-http" - ((@@ (guix import cpan) cpan-source-url) - `(("download_url" . - "http://cpan.metacpan.org/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz"))) - "mirror://cpan/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz") +(test-equal "metacpan-url->mirror-url, http" + "mirror://cpan/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz" + (metacpan-url->mirror-url + "http://cpan.metacpan.org/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz")) -(test-equal "source-url-https" - ((@@ (guix import cpan) cpan-source-url) - `(("download_url" . - "https://cpan.metacpan.org/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz"))) - "mirror://cpan/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz") +(test-equal "metacpan-url->mirror-url, https" + "mirror://cpan/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz" + (metacpan-url->mirror-url + "https://cpan.metacpan.org/authors/id/T/TE/TEST/Foo-Bar-0.1.tar.gz")) (test-end "cpan") diff --git a/tests/cran.scm b/tests/cran.scm index d785ec5db1..70d2277198 100644 --- a/tests/cran.scm +++ b/tests/cran.scm @@ -53,7 +53,7 @@ Date/Publication: 2015-07-14 14:15:16 ") (define description-alist - ((@@ (guix import cran) description->alist) description)) + (description->alist description)) (define simple-alist '(("Key" . "Value") @@ -72,7 +72,7 @@ Date/Publication: 2015-07-14 14:15:16 "Date/Publication"))) (lset= string=? keys (map car description-alist)))) -(test-equal "listify: return empty list if key cannot be found" +(test-equal "listifyx: return empty list if key cannot be found" '() ((@@ (guix import cran) listify) simple-alist "Letters")) @@ -105,7 +105,7 @@ Date/Publication: 2015-07-14 14:15:16 ("mirror://cran/src/contrib/My-Example_1.2.3.tar.gz" "source") (_ (error "Unexpected URL: " url)))))))) - (match ((@@ (guix import cran) description->package) 'cran description-alist) + (match (description->package 'cran description-alist) (('package ('name "r-my-example") ('version "1.2.3") diff --git a/tests/crate.scm b/tests/crate.scm index 61933a8de8..aa51faebf9 100644 --- a/tests/crate.scm +++ b/tests/crate.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson <davet@gnu.org> ;;; Copyright © 2016 David Craven <david@craven.ch> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -233,9 +233,6 @@ (define test-source-hash "") -(define string->license - (@@ (guix import crate) string->license)) - (test-begin "crate") (test-equal "guix-package->crate-name" diff --git a/tests/elpa.scm b/tests/elpa.scm index 44e3914f2e..b70539bda6 100644 --- a/tests/elpa.scm +++ b/tests/elpa.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> +;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,10 +19,11 @@ (define-module (test-elpa) #:use-module (guix import elpa) - #:use-module (guix tests) + #:use-module (guix tests http) #:use-module (srfi srfi-1) #:use-module (srfi srfi-64) - #:use-module (ice-9 match)) + #:use-module (ice-9 match) + #:use-module (web client)) (define elpa-mock-archive '(1 @@ -37,77 +39,42 @@ nil "Integrated environment for *TeX*" tar ((:url . "http://www.gnu.org/software/auctex/"))]))) -(define auctex-readme-mock "This is the AUCTeX description.") - -(define* (elpa-package-info-mock name #:optional (repo "gnu")) - "Simulate retrieval of 'archive-contents' file from REPO and extraction of -information about package NAME. (Function 'elpa-package-info'.)" - (let* ((archive elpa-mock-archive) - (info (filter (lambda (p) (eq? (first p) (string->symbol name))) - (cdr archive)))) - (if (pair? info) (first info) #f))) - -(define elpa-version->string - (@@ (guix import elpa) elpa-version->string)) - -(define package-source-url - (@@ (guix import elpa) package-source-url)) - -(define ensure-list - (@@ (guix import elpa) ensure-list)) - -(define package-home-page - (@@ (guix import elpa) package-home-page)) - -(define make-elpa-package - (@@ (guix import elpa) make-elpa-package)) +;; Avoid collisions with other tests. +(%http-server-port 10300) (test-begin "elpa") (define (eval-test-with-elpa pkg) - (mock - ;; replace the two fetching functions - ((guix import elpa) fetch-elpa-package - (lambda* (name #:optional (repo "gnu")) - (let ((pkg (elpa-package-info-mock name repo))) - (match pkg - ((name version reqs synopsis kind . rest) - (let* ((name (symbol->string name)) - (ver (elpa-version->string version)) - (url (package-source-url kind name ver repo))) - (make-elpa-package name ver - (ensure-list reqs) synopsis kind - (package-home-page (first rest)) - auctex-readme-mock - url))) - (_ #f))))) - (mock - ((guix build download) url-fetch - (lambda (url file . _) - (call-with-output-file file - (lambda (port) - (display "fake tarball" port))))) - - (match (elpa->guix-package pkg) - (('package - ('name "emacs-auctex") - ('version "11.88.6") - ('source - ('origin - ('method 'url-fetch) - ('uri ('string-append - "https://elpa.gnu.org/packages/auctex-" 'version ".tar")) - ('sha256 ('base32 (? string? hash))))) - ('build-system 'emacs-build-system) - ('home-page "http://www.gnu.org/software/auctex/") - ('synopsis "Integrated environment for *TeX*") - ('description (? string?)) - ('license 'license:gpl3+)) - #t) - (x - (pk 'fail x #f)))))) + ;; Set up an HTTP server and use it as a pseudo-proxy so that + ;; 'elpa->guix-package' talks to it. + (with-http-server `((200 ,(object->string elpa-mock-archive)) + (200 "This is the description.") + (200 "fake tarball contents")) + (parameterize ((current-http-proxy (%local-url))) + (match (elpa->guix-package pkg 'gnu/http) + (('package + ('name "emacs-auctex") + ('version "11.88.6") + ('source + ('origin + ('method 'url-fetch) + ('uri ('string-append + "http://elpa.gnu.org/packages/auctex-" 'version ".tar")) + ('sha256 ('base32 (? string? hash))))) + ('build-system 'emacs-build-system) + ('home-page "http://www.gnu.org/software/auctex/") + ('synopsis "Integrated environment for *TeX*") + ('description "This is the description.") + ('license 'license:gpl3+)) + #t) + (x + (pk 'fail x #f)))))) (test-assert "elpa->guix-package test 1" (eval-test-with-elpa "auctex")) (test-end "elpa") + +;; Local Variables: +;; eval: (put 'with-http-server 'scheme-indent-function 1) +;; End: diff --git a/tests/guix-graph.sh b/tests/guix-graph.sh index 2d4b3fac3f..4c37b61b38 100644 --- a/tests/guix-graph.sh +++ b/tests/guix-graph.sh @@ -1,5 +1,6 @@ # GNU Guix --- Functional package management for GNU # Copyright © 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org> +# Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com> # # This file is part of GNU Guix. # @@ -20,10 +21,29 @@ # Test the 'guix graph' command-line utility. # -tmpfile1="t-guix-graph1-$$" -tmpfile2="t-guix-graph2-$$" +module_dir="t-guix-graph-$$" +mkdir "$module_dir" +trap "rm -rf $module_dir" EXIT + +tmpfile1="$module_dir/t-guix-graph1-$$" +tmpfile2="$module_dir/t-guix-graph2-$$" trap 'rm -f "$tmpfile1" "$tmpfile2"' EXIT + +cat > "$module_dir/foo.scm"<<EOF +(define-module (foo) + #:use-module (guix packages) + #:use-module (gnu packages base)) + +(define-public dummy + (package (inherit hello) + (name "dummy") + (version "42") + (synopsis "dummy package") + (description "dummy package. Only used for testing purposes."))) +EOF + + guix graph --version for package in guile-bootstrap coreutils python @@ -59,3 +79,6 @@ guix graph git | grep 'label = "openssl' guix graph git --with-input=openssl=libressl | grep 'label = "libressl' if guix graph git --with-input=openssl=libressl | grep 'label = "openssl' then false; else true; fi + +# Try --load-path +guix graph -L $module_dir dummy | grep 'label = "dummy' diff --git a/tests/guix-system.sh b/tests/guix-system.sh index 1b2c425725..3a831cba1d 100644 --- a/tests/guix-system.sh +++ b/tests/guix-system.sh @@ -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> # Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> # Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> # @@ -120,7 +120,12 @@ EOF if guix system build "$tmpfile" -n 2> "$errorfile" then false else - if test "`guile -c '(display (effective-version))'`" = 2.2 + if test "`guile -c '(display (effective-version))'`" = 3.0 + then + # FIXME: With Guile 3.3.0 the error is reported on line 11. + # See <https://bugs.gnu.org/38388>. + grep "$tmpfile:[0-9]\+:[0-9]\+:.*GRUB-config.*[Uu]nbound variable" "$errorfile" + elif test "`guile -c '(display (effective-version))'`" = 2.2 then # FIXME: With Guile 2.2.0 the error is reported on line 4. # See <http://bugs.gnu.org/26107>. @@ -130,6 +135,26 @@ else fi fi +cat > "$tmpfile" <<EOF +(use-modules (gnu)) ; 1 + +(operating-system ; 3 + (file-systems (cons (file-system ; 4 + (device (file-system-label "root")) + (mount-point "/") ; 6 + (type "ext4")))) ; 7 (!!) + %base-file-systems) +EOF + +if guix system build "$tmpfile" -n 2> "$errorfile" +then false +else + # Here '%base-file-systems' appears as if it were a field specified of the + # enclosing 'operating-system' form due to parenthesis mismatch. + grep "$tmpfile:3:[0-9]\+:.*%base-file-system.*invalid field specifier" \ + "$errorfile" +fi + OS_BASE=' (host-name "antelope") (timezone "Europe/Paris") diff --git a/tests/lint.scm b/tests/lint.scm index 3a9b539a24..4ce45b4a70 100644 --- a/tests/lint.scm +++ b/tests/lint.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013 Cyril Roelandt <tipecaml@gmail.com> ;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org> -;;; 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> ;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Alex Kost <alezost@gmail.com> @@ -756,14 +756,16 @@ (test-equal "cve: one vulnerability" "probably vulnerable to CVE-2015-1234" - (mock ((guix lint) package-vulnerabilities + (let ((dummy-vulnerabilities (lambda (package) - (list (make-struct/no-tail (@@ (guix cve) <vulnerability>) - "CVE-2015-1234" - (list (cons (package-name package) - (package-version package))))))) - (single-lint-warning-message - (check-vulnerabilities (dummy-package "pi" (version "3.14")))))) + (list (make-struct/no-tail + (@@ (guix cve) <vulnerability>) + "CVE-2015-1234" + (list (cons (package-name package) + (package-version package)))))))) + (single-lint-warning-message + (check-vulnerabilities (dummy-package "pi" (version "3.14")) + dummy-vulnerabilities)))) (test-equal "cve: one patched vulnerability" '() diff --git a/tests/lzlib.scm b/tests/lzlib.scm index d8d0e6edf8..63d1e15641 100644 --- a/tests/lzlib.scm +++ b/tests/lzlib.scm @@ -87,8 +87,7 @@ (test-assert* "Bytevector of size relative to Lzip internal buffers (2 * dictionary)" (compress-and-decompress (random-bytevector - (* 2 (car (car (assoc-ref (@@ (guix lzlib) %compression-levels) - (@@ (guix lzlib) %default-compression-level)))))))) + (* 2 (dictionary-size+match-length-limit %default-compression-level))))) (test-assert* "Bytevector of size relative to Lzip internal buffers (64KiB)" (compress-and-decompress (random-bytevector (* 64 1024)))) diff --git a/tests/opam.scm b/tests/opam.scm index d3626fd010..68b5908e3f 100644 --- a/tests/opam.scm +++ b/tests/opam.scm @@ -85,36 +85,33 @@ url { (with-output-to-file (string-append my-package "/opam") (lambda _ (format #t "~a" test-opam-file)))) - (mock ((guix import opam) get-opam-repository - (lambda _ - test-repo)) - (match (opam->guix-package "foo") - (('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)))))) + (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))))) ;; Test the opam file parser ;; We fold over some test cases. Each case is a pair of the string to parse and the @@ -123,7 +120,7 @@ url { (fold (lambda (test acc) (display test) (newline) (and acc - (let ((result (peg:tree (match-pattern (@@ (guix import opam) string-pat) (car test))))) + (let ((result (peg:tree (match-pattern string-pat (car test))))) (if (equal? result (cdr test)) #t (pk 'fail (list (car test) result (cdr test)) #f))))) @@ -138,7 +135,7 @@ url { (fold (lambda (test acc) (display test) (newline) (and acc - (let ((result (peg:tree (match-pattern (@@ (guix import opam) multiline-string) (car test))))) + (let ((result (peg:tree (match-pattern multiline-string (car test))))) (if (equal? result (cdr test)) #t (pk 'fail (list (car test) result (cdr test)) #f))))) @@ -150,7 +147,7 @@ url { (test-assert "parse-lists" (fold (lambda (test acc) (and acc - (let ((result (peg:tree (match-pattern (@@ (guix import opam) list-pat) (car test))))) + (let ((result (peg:tree (match-pattern list-pat (car test))))) (if (equal? result (cdr test)) #t (pk 'fail (list (car test) result (cdr test)) #f))))) @@ -164,7 +161,7 @@ url { (test-assert "parse-dicts" (fold (lambda (test acc) (and acc - (let ((result (peg:tree (match-pattern (@@ (guix import opam) dict) (car test))))) + (let ((result (peg:tree (match-pattern dict (car test))))) (if (equal? result (cdr test)) #t (pk 'fail (list (car test) result (cdr test)) #f))))) @@ -176,7 +173,7 @@ url { (test-assert "parse-conditions" (fold (lambda (test acc) (and acc - (let ((result (peg:tree (match-pattern (@@ (guix import opam) condition) (car test))))) + (let ((result (peg:tree (match-pattern condition (car test))))) (if (equal? result (cdr test)) #t (pk 'fail (list (car test) result (cdr test)) #f))))) diff --git a/tests/packages.scm b/tests/packages.scm index 423c5061aa..1ff35ec9c4 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; ;;; This file is part of GNU Guix. @@ -100,7 +100,8 @@ (let* ((old (dummy-package "foo" (version "1"))) (tx (mock ((gnu packages) find-best-packages-by-name (const '())) - ((@@ (guix scripts package) transaction-upgrade-entry) + (transaction-upgrade-entry + #f ;no store access needed (manifest-entry (inherit (package->manifest-entry old)) (item (string-append (%store-prefix) "/" @@ -113,7 +114,8 @@ (new (dummy-package "foo" (version "2"))) (tx (mock ((gnu packages) find-best-packages-by-name (const (list new))) - ((@@ (guix scripts package) transaction-upgrade-entry) + (transaction-upgrade-entry + #f ;no store access needed (manifest-entry (inherit (package->manifest-entry old)) (item (string-append (%store-prefix) "/" @@ -130,7 +132,8 @@ (dep (deprecated-package "foo" new)) (tx (mock ((gnu packages) find-best-packages-by-name (const (list dep))) - ((@@ (guix scripts package) transaction-upgrade-entry) + (transaction-upgrade-entry + #f ;no store access needed (manifest-entry (inherit (package->manifest-entry old)) (item (string-append (%store-prefix) "/" diff --git a/tests/publish.scm b/tests/publish.scm index 204cfb4974..e43310ef00 100644 --- a/tests/publish.scm +++ b/tests/publish.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 David Thompson <davet@gnu.org> -;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -153,8 +153,7 @@ References: ~a~%" (signature (base64-encode (string->utf8 (canonical-sexp->string - ((@@ (guix scripts publish) signed-string) - unsigned-info)))))) + (signed-string unsigned-info)))))) (format #f "~aSignature: 1;~a;~a~%" unsigned-info (gethostname) signature)) (utf8->string @@ -184,8 +183,7 @@ References: ~%" (signature (base64-encode (string->utf8 (canonical-sexp->string - ((@@ (guix scripts publish) signed-string) - unsigned-info)))))) + (signed-string unsigned-info)))))) (format #f "~aSignature: 1;~a;~a~%" unsigned-info (gethostname) signature)) diff --git a/tests/records.scm b/tests/records.scm index 16b7a9c35e..2c55a61720 100644 --- a/tests/records.scm +++ b/tests/records.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -286,10 +286,11 @@ (lambda () (eval exp (test-module)) #f) - (lambda (key proc message location form . args) + (lambda (key proc message location form subform . _) (and (eq? proc 'foo) (string-match "invalid field" message) - (equal? form '(baz 1 2 3 4 5)) + (equal? subform '(baz 1 2 3 4 5)) + (equal? form '(foo (baz 1 2 3 4 5))) ;; Make sure the location is that of the field specifier. ;; See <http://bugs.gnu.org/23969>. @@ -299,6 +300,33 @@ ,@(alist-delete 'line loc))) (pk 'actual-loc location))))))) +(test-assert "define-record-type* & wrong field specifier, identifier" + (let ((exp '(begin + (define-record-type* <foo> foo make-foo + foo? + (bar foo-bar (default 42)) + (baz foo-baz)) + + (foo + baz))) ;syntax error + (loc (current-source-location))) ;keep this alignment! + (catch 'syntax-error + (lambda () + (eval exp (test-module)) + #f) + (lambda (key proc message location form subform . _) + (and (eq? proc 'foo) + (string-match "invalid field" message) + (equal? subform 'baz) + (equal? form '(foo baz)) + + ;; Here the location is that of the parent form. + (lset= equal? + (pk 'expected-loc + `((line . ,(- (assq-ref loc 'line) 2)) + ,@(alist-delete 'line loc))) + (pk 'actual-loc location))))))) + (test-assert "define-record-type* & missing initializers" (catch 'syntax-error (lambda () diff --git a/tests/texlive.scm b/tests/texlive.scm index e28eda175c..f7e5515c4c 100644 --- a/tests/texlive.scm +++ b/tests/texlive.scm @@ -20,10 +20,12 @@ #:use-module (gnu packages tex) #:use-module (guix import texlive) #:use-module (guix tests) + #:use-module (guix tests http) #:use-module (guix build utils) #:use-module (srfi srfi-1) #:use-module (srfi srfi-64) #:use-module (srfi srfi-26) + #:use-module (web client) #:use-module (ice-9 match)) (test-begin "texlive") @@ -67,12 +69,14 @@ (keyval (@ (value "tests") (key "topic"))) "\n null\n"))) +;; Avoid collisions with other tests. +(%http-server-port 10200) + (test-equal "fetch-sxml: returns SXML for valid XML" sxml - (mock ((guix http-client) http-fetch - (lambda (url) - xml)) - ((@@ (guix import texlive) fetch-sxml) "foo"))) + (with-http-server `((200 ,xml)) + (parameterize ((current-http-proxy (%local-url))) + (fetch-sxml "foo")))) ;; TODO: (test-assert "sxml->package" @@ -86,7 +90,7 @@ (with-output-to-file (string-append directory "/foo") (lambda () (display "source"))))) - (let ((result ((@@ (guix import texlive) sxml->package) sxml))) + (let ((result (sxml->package sxml))) (match result (('package ('name "texlive-latex-foo") |