Merge branch 'master' into staging
This commit is contained in:
		
						commit
						651478aa18
					
				
					 119 changed files with 5261 additions and 1457 deletions
				
			
		
							
								
								
									
										112
									
								
								doc/guix.texi
									
										
									
									
									
								
							
							
						
						
									
										112
									
								
								doc/guix.texi
									
										
									
									
									
								
							|  | @ -58,12 +58,13 @@ Copyright @copyright{} 2018 Rutger Helling@* | |||
| Copyright @copyright{} 2018 Oleg Pykhalov@* | ||||
| Copyright @copyright{} 2018 Mike Gerwitz@* | ||||
| Copyright @copyright{} 2018 Pierre-Antoine Rouby@* | ||||
| Copyright @copyright{} 2018 Gábor Boskovits@* | ||||
| Copyright @copyright{} 2018, 2019 Gábor Boskovits@* | ||||
| Copyright @copyright{} 2018, 2019 Florian Pelz@* | ||||
| Copyright @copyright{} 2018 Laura Lazzati@* | ||||
| Copyright @copyright{} 2018 Alex Vong@* | ||||
| Copyright @copyright{} 2019 Josh Holland@* | ||||
| Copyright @copyright{} 2019 Diego Nicola Barbato@* | ||||
| Copyright @copyright{} 2019 Ivan Petkov@* | ||||
| 
 | ||||
| Permission is granted to copy, distribute and/or modify this document | ||||
| under the terms of the GNU Free Documentation License, Version 1.3 or | ||||
|  | @ -569,7 +570,7 @@ you may have to run @code{su -} or @code{sudo -i}.  As @code{root}, run: | |||
| @example | ||||
| # cd /tmp | ||||
| # tar --warning=no-timestamp -xf \ | ||||
|      guix-binary-@value{VERSION}.@var{system}.tar.xz | ||||
|      /path/to/guix-binary-@value{VERSION}.@var{system}.tar.xz | ||||
| # mv var/guix /var/ && mv gnu / | ||||
| @end example | ||||
| 
 | ||||
|  | @ -5814,10 +5815,21 @@ This variable is exported by @code{(guix build-system cargo)}.  It | |||
| supports builds of packages using Cargo, the build tool of the | ||||
| @uref{https://www.rust-lang.org, Rust programming language}. | ||||
| 
 | ||||
| In its @code{configure} phase, this build system replaces dependencies | ||||
| specified in the @file{Cargo.toml} file with inputs to the Guix package. | ||||
| The @code{install} phase installs the binaries, and it also installs the | ||||
| source code and @file{Cargo.toml} file. | ||||
| It adds @code{rustc} and @code{cargo} to the set of inputs. | ||||
| A different Rust package can be specified with the @code{#:rust} parameter. | ||||
| 
 | ||||
| Regular cargo dependencies should be added to the package definition via the | ||||
| @code{#:cargo-inputs} parameter as a list of name and spec pairs, where the | ||||
| spec can be a package or a source definition.  Note that the spec must | ||||
| evaluate to a path to a gzipped tarball which includes a @code{Cargo.toml} | ||||
| file at its root, or it will be ignored.  Similarly, cargo dev-dependencies | ||||
| should be added to the package definition via the | ||||
| @code{#:cargo-development-inputs} parameter. | ||||
| 
 | ||||
| In its @code{configure} phase, this build system will make any source inputs | ||||
| specified in the @code{#:cargo-inputs} and @code{#:cargo-development-inputs} | ||||
| parameters available to cargo.  The @code{install} phase installs any crate | ||||
| the binaries if they are defined by the crate. | ||||
| @end defvr | ||||
| 
 | ||||
| @cindex Clojure (programming language) | ||||
|  | @ -6433,7 +6445,7 @@ Connect to the daemon over the Unix-domain socket at @var{uri} (a string).  When | |||
| extra space on the file system so that the garbage collector can still | ||||
| operate should the disk become full.  Return a server object. | ||||
| 
 | ||||
| @var{file} defaults to @var{%default-socket-path}, which is the normal | ||||
| @var{file} defaults to @code{%default-socket-path}, which is the normal | ||||
| location given the options that were passed to @command{configure}. | ||||
| @end deffn | ||||
| 
 | ||||
|  | @ -10345,7 +10357,7 @@ configuration options. | |||
| The @code{packages} field lists packages that will be globally visible | ||||
| on the system, for all user accounts---i.e., in every user's @code{PATH} | ||||
| environment variable---in addition to the per-user profiles | ||||
| (@pxref{Invoking guix package}).  The @var{%base-packages} variable | ||||
| (@pxref{Invoking guix package}).  The @code{%base-packages} variable | ||||
| provides all the tools one would expect for basic user and administrator | ||||
| tasks---including the GNU Core Utilities, the GNU Networking Utilities, | ||||
| the GNU Zile lightweight text editor, @command{find}, @command{grep}, | ||||
|  | @ -10406,7 +10418,7 @@ customize them.  To do this, use @code{modify-services} (@pxref{Service | |||
| Reference, @code{modify-services}}) to modify the list. | ||||
| 
 | ||||
| For example, suppose you want to modify @code{guix-daemon} and Mingetty | ||||
| (the console log-in) in the @var{%base-services} list (@pxref{Base | ||||
| (the console log-in) in the @code{%base-services} list (@pxref{Base | ||||
| Services, @code{%base-services}}).  To do that, you can write the | ||||
| following in your operating system declaration: | ||||
| 
 | ||||
|  | @ -10430,7 +10442,7 @@ following in your operating system declaration: | |||
| 
 | ||||
| This changes the configuration---i.e., the service parameters---of the | ||||
| @code{guix-service-type} instance, and that of all the | ||||
| @code{mingetty-service-type} instances in the @var{%base-services} list. | ||||
| @code{mingetty-service-type} instances in the @code{%base-services} list. | ||||
| Observe how this is accomplished: first, we arrange for the original | ||||
| configuration to be bound to the identifier @code{config} in the | ||||
| @var{body}, and then we write the @var{body} so that it evaluates to the | ||||
|  | @ -10461,15 +10473,15 @@ This example refers to the @file{/boot/efi} file system by its UUID, | |||
| as returned by the @command{blkid} command. | ||||
| 
 | ||||
| @xref{Desktop Services}, for the exact list of services provided by | ||||
| @var{%desktop-services}.  @xref{X.509 Certificates}, for background | ||||
| @code{%desktop-services}.  @xref{X.509 Certificates}, for background | ||||
| information about the @code{nss-certs} package that is used here. | ||||
| 
 | ||||
| Again, @var{%desktop-services} is just a list of service objects.  If | ||||
| Again, @code{%desktop-services} is just a list of service objects.  If | ||||
| you want to remove services from there, you can do so using the | ||||
| procedures for list filtering (@pxref{SRFI-1 Filtering and | ||||
| Partitioning,,, guile, GNU Guile Reference Manual}).  For instance, the | ||||
| following expression returns a list that contains all the services in | ||||
| @var{%desktop-services} minus the Avahi service: | ||||
| @code{%desktop-services} minus the Avahi service: | ||||
| 
 | ||||
| @example | ||||
| (remove (lambda (service) | ||||
|  | @ -10588,7 +10600,7 @@ A procedure that returns an initial RAM disk for the Linux | |||
| kernel.  This field is provided to support low-level customization and | ||||
| should rarely be needed for casual use.  @xref{Initial RAM Disk}. | ||||
| 
 | ||||
| @item @code{firmware} (default: @var{%base-firmware}) | ||||
| @item @code{firmware} (default: @code{%base-firmware}) | ||||
| @cindex firmware | ||||
| List of firmware packages loadable by the operating system kernel. | ||||
| 
 | ||||
|  | @ -10623,7 +10635,7 @@ device, provided that the necessary device mapping and file system are | |||
| also specified.  @xref{Mapped Devices} and @ref{File Systems}. | ||||
| 
 | ||||
| @item @code{users} (default: @code{%base-user-accounts}) | ||||
| @itemx @code{groups} (default: @var{%base-groups}) | ||||
| @itemx @code{groups} (default: @code{%base-groups}) | ||||
| List of user accounts and groups.  @xref{User Accounts}. | ||||
| 
 | ||||
| If the @code{users} list lacks a user account with UID@tie{}0, a | ||||
|  | @ -10643,11 +10655,11 @@ For instance, a valid value may look like this: | |||
|                           (activate-readline)"))) | ||||
| @end example | ||||
| 
 | ||||
| @item @code{issue} (default: @var{%default-issue}) | ||||
| @item @code{issue} (default: @code{%default-issue}) | ||||
| A string denoting the contents of the @file{/etc/issue} file, which is | ||||
| displayed when users log in on a text console. | ||||
| 
 | ||||
| @item @code{packages} (default: @var{%base-packages}) | ||||
| @item @code{packages} (default: @code{%base-packages}) | ||||
| The set of packages installed in the global profile, which is accessible | ||||
| at @file{/run/current-system/profile}. | ||||
| 
 | ||||
|  | @ -10666,7 +10678,7 @@ causes @command{guix system} to fail. | |||
| The name of the default locale (@pxref{Locale Names,,, libc, The GNU C | ||||
| Library Reference Manual}).  @xref{Locales}, for more information. | ||||
| 
 | ||||
| @item @code{locale-definitions} (default: @var{%default-locale-definitions}) | ||||
| @item @code{locale-definitions} (default: @code{%default-locale-definitions}) | ||||
| The list of locale definitions to be compiled and that may be used at | ||||
| run time.  @xref{Locales}. | ||||
| 
 | ||||
|  | @ -10675,12 +10687,12 @@ The list of GNU@tie{}libc packages whose locale data and tools are used | |||
| to build the locale definitions.  @xref{Locales}, for compatibility | ||||
| considerations that justify this option. | ||||
| 
 | ||||
| @item @code{name-service-switch} (default: @var{%default-nss}) | ||||
| @item @code{name-service-switch} (default: @code{%default-nss}) | ||||
| Configuration of the libc name service switch (NSS)---a | ||||
| @code{<name-service-switch>} object.  @xref{Name Service Switch}, for | ||||
| details. | ||||
| 
 | ||||
| @item @code{services} (default: @var{%base-services}) | ||||
| @item @code{services} (default: @code{%base-services}) | ||||
| A list of service objects denoting system services.  @xref{Services}. | ||||
| 
 | ||||
| @cindex essential services | ||||
|  | @ -11545,7 +11557,7 @@ more. | |||
| 
 | ||||
| This is the default value of the @code{services} field of | ||||
| @code{operating-system} declarations.  Usually, when customizing a | ||||
| system, you will want to append services to @var{%base-services}, like | ||||
| system, you will want to append services to @code{%base-services}, like | ||||
| this: | ||||
| 
 | ||||
| @example | ||||
|  | @ -12042,7 +12054,7 @@ Whether to authorize the substitute keys listed in | |||
| (@pxref{Substitutes}). | ||||
| 
 | ||||
| @vindex %default-authorized-guix-keys | ||||
| @item @code{authorized-keys} (default: @var{%default-authorized-guix-keys}) | ||||
| @item @code{authorized-keys} (default: @code{%default-authorized-guix-keys}) | ||||
| The list of authorized key files for archive imports, as a list of | ||||
| string-valued gexps (@pxref{Invoking guix archive}).  By default, it | ||||
| contains that of @code{@value{SUBSTITUTE-SERVER}} (@pxref{Substitutes}). | ||||
|  | @ -12050,7 +12062,7 @@ contains that of @code{@value{SUBSTITUTE-SERVER}} (@pxref{Substitutes}). | |||
| @item @code{use-substitutes?} (default: @code{#t}) | ||||
| Whether to use substitutes. | ||||
| 
 | ||||
| @item @code{substitute-urls} (default: @var{%default-substitute-urls}) | ||||
| @item @code{substitute-urls} (default: @code{%default-substitute-urls}) | ||||
| The list of URLs where to look for substitutes by default. | ||||
| 
 | ||||
| @item @code{max-silent-time} (default: @code{0}) | ||||
|  | @ -12211,7 +12223,7 @@ allows users to use the mouse in the console, notably to select, copy, | |||
| and paste text. | ||||
| 
 | ||||
| The value for services of this type must be a @code{gpm-configuration} | ||||
| (see below).  This service is not part of @var{%base-services}. | ||||
| (see below).  This service is not part of @code{%base-services}. | ||||
| @end defvr | ||||
| 
 | ||||
| @deftp {Data Type} gpm-configuration | ||||
|  | @ -12233,7 +12245,7 @@ The GPM package to use. | |||
| @anchor{guix-publish-service-type} | ||||
| @deffn {Scheme Variable} guix-publish-service-type | ||||
| This is the service type for @command{guix publish} (@pxref{Invoking | ||||
| guix publish}).  Its value must be a @code{guix-configuration} | ||||
| guix publish}).  Its value must be a @code{guix-publish-configuration} | ||||
| object, as described below. | ||||
| 
 | ||||
| This assumes that @file{/etc/guix} already contains a signing key pair as | ||||
|  | @ -12656,6 +12668,44 @@ The ModemManager package to use. | |||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @cindex USB_ModeSwitch | ||||
| @cindex Modeswitching | ||||
| 
 | ||||
| @defvr {Scheme Variable} usb-modeswitch-service-type | ||||
| This is the service type for the | ||||
| @uref{http://www.draisberghof.de/usb_modeswitch/, USB_ModeSwitch} service. The | ||||
| value for this service type is a @code{usb-modeswitch-configuration} record. | ||||
| 
 | ||||
| When plugged in, some USB modems (and other USB devices) initially present | ||||
| themselves as a read-only storage medium and not as a modem.  They need to be | ||||
| @dfn{modeswitched} before they are usable.  The USB_ModeSwitch service type | ||||
| installs udev rules to automatically modeswitch these devices when they are | ||||
| plugged in. | ||||
| 
 | ||||
| This service is part of @code{%desktop-services} (@pxref{Desktop | ||||
| Services}). | ||||
| @end defvr | ||||
| 
 | ||||
| @deftp {Data Type} usb-modeswitch-configuration | ||||
| Data type representing the configuration of USB_ModeSwitch. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{usb-modeswitch} (default: @code{usb-modeswitch}) | ||||
| The USB_ModeSwitch package providing the binaries for modeswitching. | ||||
| 
 | ||||
| @item @code{usb-modeswitch-data} (default: @code{usb-modeswitch-data}) | ||||
| The package providing the device data and udev rules file used by | ||||
| USB_ModeSwitch. | ||||
| 
 | ||||
| @item @code{config-file} (default: @code{#~(string-append #$usb-modeswitch:dispatcher "/etc/usb_modeswitch.conf")}) | ||||
| Which config file to use for the USB_ModeSwitch dispatcher.  By default the | ||||
| config file shipped with USB_ModeSwitch is used which disables logging to | ||||
| @file{/var/log} among other default settings.  If set to @code{#f}, no config | ||||
| file is used. | ||||
| 
 | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @cindex NetworkManager | ||||
| 
 | ||||
| @defvr {Scheme Variable} network-manager-service-type | ||||
|  | @ -14682,7 +14732,7 @@ services that users typically expect on a machine with a graphical | |||
| environment and networking: | ||||
| 
 | ||||
| @defvr {Scheme Variable} %desktop-services | ||||
| This is a list of services that builds upon @var{%base-services} and | ||||
| This is a list of services that builds upon @code{%base-services} and | ||||
| adds or adjusts services for a typical ``desktop'' setup. | ||||
| 
 | ||||
| In particular, it adds a graphical login manager (@pxref{X Window, | ||||
|  | @ -14697,7 +14747,7 @@ name service switch service configured to be able to use @code{nss-mdns} | |||
| (@pxref{Name Service Switch, mDNS}). | ||||
| @end defvr | ||||
| 
 | ||||
| The @var{%desktop-services} variable can be used as the @code{services} | ||||
| The @code{%desktop-services} variable can be used as the @code{services} | ||||
| field of an @code{operating-system} declaration (@pxref{operating-system | ||||
| Reference, @code{services}}). | ||||
| 
 | ||||
|  | @ -16706,7 +16756,7 @@ Data type representing the configuration of opensmtpd. | |||
| @item @code{package} (default: @var{opensmtpd}) | ||||
| Package object of the OpenSMTPD SMTP server. | ||||
| 
 | ||||
| @item @code{config-file} (default: @var{%default-opensmtpd-file}) | ||||
| @item @code{config-file} (default: @code{%default-opensmtpd-file}) | ||||
| File-like object of the OpenSMTPD configuration file to use.  By default | ||||
| it listens on the loopback network interface, and allows for mail from | ||||
| users and daemons on the local machine, as well as permitting email to | ||||
|  | @ -19821,7 +19871,7 @@ A simple setup for cat-avatar-generator can look like this: | |||
| @subsubheading Hpcguix-web | ||||
| 
 | ||||
| @cindex hpcguix-web | ||||
| The @uref{hpcguix-web, https://github.com/UMCUGenetics/hpcguix-web/} | ||||
| The @uref{https://github.com/UMCUGenetics/hpcguix-web/, hpcguix-web} | ||||
| program is a customizable web interface to browse Guix packages, | ||||
| initially designed for users of high-performance computing (HPC) | ||||
| clusters. | ||||
|  | @ -24313,7 +24363,7 @@ to the @code{packages} field of the @code{operating-system} declaration | |||
| @code{nss-certs}, which is a set of CA certificates provided as part of | ||||
| Mozilla's Network Security Services. | ||||
| 
 | ||||
| Note that it is @emph{not} part of @var{%base-packages}, so you need to | ||||
| Note that it is @emph{not} part of @code{%base-packages}, so you need to | ||||
| explicitly add it.  The @file{/etc/ssl/certs} directory, which is where | ||||
| most applications and libraries look for certificates by default, points | ||||
| to the certificates installed globally. | ||||
|  | @ -24407,7 +24457,7 @@ want is to have @code{.local} host lookup working. | |||
| Note that, in this case, in addition to setting the | ||||
| @code{name-service-switch} of the @code{operating-system} declaration, | ||||
| you also need to use @code{avahi-service-type} (@pxref{Networking Services, | ||||
| @code{avahi-service-type}}), or @var{%desktop-services}, which includes it | ||||
| @code{avahi-service-type}}), or @code{%desktop-services}, which includes it | ||||
| (@pxref{Desktop Services}).  Doing this makes @code{nss-mdns} accessible | ||||
| to the name service cache daemon (@pxref{Base Services, | ||||
| @code{nscd-service}}). | ||||
|  |  | |||
							
								
								
									
										22
									
								
								gnu/local.mk
									
										
									
									
									
								
							
							
						
						
									
										22
									
								
								gnu/local.mk
									
										
									
									
									
								
							|  | @ -15,7 +15,7 @@ | |||
| # Copyright © 2017, 2018, 2019 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 Gábor Boskovits <boskovits@gmail.com>
 | ||||
| # Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
 | ||||
| # Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
 | ||||
| # Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
 | ||||
| # Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
 | ||||
|  | @ -121,6 +121,7 @@ GNU_SYSTEM_MODULES =				\ | |||
|   %D%/packages/cpp.scm 				\
 | ||||
|   %D%/packages/cppi.scm				\
 | ||||
|   %D%/packages/cran.scm				\
 | ||||
|   %D%/packages/crates-io.scm			\
 | ||||
|   %D%/packages/cross-base.scm			\
 | ||||
|   %D%/packages/crypto.scm			\
 | ||||
|   %D%/packages/cryptsetup.scm			\
 | ||||
|  | @ -261,6 +262,7 @@ GNU_SYSTEM_MODULES =				\ | |||
|   %D%/packages/jrnl.scm				\
 | ||||
|   %D%/packages/jose.scm				\
 | ||||
|   %D%/packages/julia.scm			\
 | ||||
|   %D%/packages/kawa.scm				\
 | ||||
|   %D%/packages/kde.scm				\
 | ||||
|   %D%/packages/kde-frameworks.scm		\
 | ||||
|   %D%/packages/kde-plasma.scm			\
 | ||||
|  | @ -468,6 +470,7 @@ GNU_SYSTEM_MODULES =				\ | |||
|   %D%/packages/uml.scm				\
 | ||||
|   %D%/packages/unrtf.scm			\
 | ||||
|   %D%/packages/upnp.scm				\
 | ||||
|   %D%/packages/usb-modeswitch.scm		\
 | ||||
|   %D%/packages/uucp.scm				\
 | ||||
|   %D%/packages/valgrind.scm			\
 | ||||
|   %D%/packages/version-control.scm		\
 | ||||
|  | @ -688,6 +691,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/bazaar-CVE-2017-14176.patch		\
 | ||||
|   %D%/packages/patches/beets-python-3.7-fix.patch		\
 | ||||
|   %D%/packages/patches/beignet-correct-file-names.patch		\
 | ||||
|   %D%/packages/patches/benchmark-unbundle-googletest.patch	\
 | ||||
|   %D%/packages/patches/biber-fix-encoding-write.patch		\
 | ||||
|   %D%/packages/patches/binutils-loongson-workaround.patch	\
 | ||||
|   %D%/packages/patches/blender-2.79-newer-ffmpeg.patch		\
 | ||||
|  | @ -736,6 +740,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/cursynth-wave-rand.patch			\
 | ||||
|   %D%/packages/patches/cvs-2017-12836.patch			\
 | ||||
|   %D%/packages/patches/dbus-helper-search-path.patch		\
 | ||||
|   %D%/packages/patches/dbus-CVE-2019-12749.patch		\
 | ||||
|   %D%/packages/patches/dealii-mpi-deprecations.patch		\
 | ||||
|   %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch	\
 | ||||
|   %D%/packages/patches/dfu-programmer-fix-libusb.patch		\
 | ||||
|  | @ -749,6 +754,8 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/docker-use-fewer-modprobes.patch		\
 | ||||
|   %D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch	\
 | ||||
|   %D%/packages/patches/doxygen-test.patch			\
 | ||||
|   %D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch	\
 | ||||
|   %D%/packages/patches/dstat-skip-devices-without-io.patch	\
 | ||||
|   %D%/packages/patches/dvd+rw-tools-add-include.patch 		\
 | ||||
|   %D%/packages/patches/elfutils-tests-ptrace.patch		\
 | ||||
|   %D%/packages/patches/elixir-path-length.patch			\
 | ||||
|  | @ -759,7 +766,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
 | ||||
|   %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch	\
 | ||||
|   %D%/packages/patches/emacs-source-date-epoch.patch		\
 | ||||
|   %D%/packages/patches/emacs-realgud-fix-configure-ac.patch	\
 | ||||
|   %D%/packages/patches/emacs-unpackaged-req.patch		\
 | ||||
|   %D%/packages/patches/emacs-undohist-ignored.patch	\
 | ||||
|   %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch	\
 | ||||
|   %D%/packages/patches/emacs-zones-called-interactively.patch	\
 | ||||
|  | @ -929,7 +936,6 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/id3lib-CVE-2007-4460.patch			\
 | ||||
|   %D%/packages/patches/idris-test-no-node.patch			\
 | ||||
|   %D%/packages/patches/ilmbase-fix-tests.patch			\
 | ||||
|   %D%/packages/patches/inkscape-poppler-compat3.patch		\
 | ||||
|   %D%/packages/patches/intltool-perl-compatibility.patch	\
 | ||||
|   %D%/packages/patches/irrlicht-use-system-libs.patch		\
 | ||||
|   %D%/packages/patches/isl-0.11.1-aarch64-support.patch	\
 | ||||
|  | @ -1126,6 +1132,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/openssl-1.1-c-rehash-in.patch		\
 | ||||
|   %D%/packages/patches/openssl-c-rehash-in.patch		\
 | ||||
|   %D%/packages/patches/openssl-CVE-2019-1559.patch		\
 | ||||
|   %D%/packages/patches/open-zwave-hidapi.patch			\
 | ||||
|   %D%/packages/patches/orpheus-cast-errors-and-includes.patch	\
 | ||||
|   %D%/packages/patches/osip-CVE-2017-7853.patch			\
 | ||||
|   %D%/packages/patches/ots-no-include-missing-file.patch	\
 | ||||
|  | @ -1228,6 +1235,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/randomjungle-disable-static-build.patch	\
 | ||||
|   %D%/packages/patches/rapicorn-isnan.patch			\
 | ||||
|   %D%/packages/patches/raptor2-heap-overflow.patch		\
 | ||||
|   %D%/packages/patches/ratpoints-sturm_and_rp_private.patch	\
 | ||||
|   %D%/packages/patches/ratpoison-shell.patch			\
 | ||||
|   %D%/packages/patches/rcs-5.9.4-noreturn.patch			\
 | ||||
|   %D%/packages/patches/rct-add-missing-headers.patch		\
 | ||||
|  | @ -1235,6 +1243,7 @@ dist_patch_DATA =						\ | |||
|   %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		\
 | ||||
|   %D%/packages/patches/rpcbind-CVE-2017-8779.patch		\
 | ||||
|   %D%/packages/patches/rtags-separate-rct.patch			\
 | ||||
|  | @ -1274,6 +1283,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/sssd-curl-compat.patch			\
 | ||||
|   %D%/packages/patches/steghide-fixes.patch			\
 | ||||
|   %D%/packages/patches/streamlink-update-test.patch		\
 | ||||
|   %D%/packages/patches/stumpwm-fix-broken-read-one-line.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		\
 | ||||
|  | @ -1282,7 +1292,10 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/swig-guile-gc.patch			\
 | ||||
|   %D%/packages/patches/swish-e-search.patch			\
 | ||||
|   %D%/packages/patches/swish-e-format-security.patch		\
 | ||||
|   %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch	\
 | ||||
|   %D%/packages/patches/symmetrica-bruch.patch			\
 | ||||
|   %D%/packages/patches/symmetrica-int32.patch			\
 | ||||
|   %D%/packages/patches/symmetrica-return_values.patch 		\
 | ||||
|   %D%/packages/patches/symmetrica-sort_sum_rename.patch 	\
 | ||||
|   %D%/packages/patches/t1lib-CVE-2010-2642.patch		\
 | ||||
|   %D%/packages/patches/t1lib-CVE-2011-0764.patch		\
 | ||||
|   %D%/packages/patches/t1lib-CVE-2011-1552+.patch		\
 | ||||
|  | @ -1332,6 +1345,7 @@ 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	\
 | ||||
|  |  | |||
|  | @ -438,7 +438,7 @@ hostname.") | |||
| (define-public shadow | ||||
|   (package | ||||
|     (name "shadow") | ||||
|     (version "4.6") | ||||
|     (version "4.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -446,7 +446,7 @@ hostname.") | |||
|                     "download/" version "/shadow-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "10smy01km2bqjjvsd2jz17zvrxbzj89qczyb1amk38j28bcci609")))) | ||||
|                 "0v71474rx38lg9kidrm4xbk35sg3icv3s5pk2b42icp3lyj9dqg5")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(;; Assume System V `setpgrp (void)', which is the default on GNU | ||||
|  | @ -482,7 +482,7 @@ hostname.") | |||
|                                   "-linux") | ||||
|                  `(("linux-pam" ,linux-pam)) | ||||
|                  '())) | ||||
|     (home-page "http://pkg-shadow.alioth.debian.org/") | ||||
|     (home-page "https://github.com/shadow-maint/shadow") | ||||
|     (synopsis "Authentication-related tools such as passwd, su, and login") | ||||
|     (description | ||||
|      "Shadow provides a number of authentication-related tools, including: | ||||
|  | @ -1734,13 +1734,13 @@ of supported upstream metrics systems simultaneously.") | |||
| (define-public ansible | ||||
|   (package | ||||
|     (name "ansible") | ||||
|     (version "2.8.0") | ||||
|     (version "2.8.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "ansible" version)) | ||||
|        (sha256 | ||||
|         (base32 "1bpk5r5x6vdgn839n74yv2chd2ja10yfrhav0fzwa38mi5yxsd3j")))) | ||||
|         (base32 "0ia4x17ywym3r1m96ar4h0wc2xlylhbjp6x4wzwkh4p2i0x1vmg1")))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|      `(("python-bcrypt" ,python-bcrypt) | ||||
|  | @ -2133,16 +2133,32 @@ results (ndiff), and a packet generation and response analysis tool (nping).") | |||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name "dstat" version)) | ||||
|        (sha256 | ||||
|         (base32 "1qnmkhqmjd1m3if05jj29dvr5hn6kayq9bkkkh881w472c0zhp8v")))) | ||||
|         (base32 "1qnmkhqmjd1m3if05jj29dvr5hn6kayq9bkkkh881w472c0zhp8v")) | ||||
|        (patches (search-patches "dstat-fix-crash-when-specifying-delay.patch" | ||||
|                                 "dstat-skip-devices-without-io.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                      ; no make check | ||||
|        #:make-flags (let ((out (assoc-ref %outputs "out"))) | ||||
|                       (list (string-append "DESTDIR=" out) | ||||
|                             "prefix=/")) | ||||
|        ;; No configure script. | ||||
|        #:phases (modify-phases %standard-phases (delete 'configure)))) | ||||
|     (inputs `(("python-2" ,python-2))) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'fix-python3-DeprecationWarning | ||||
|            (lambda _ | ||||
|              (substitute* "dstat" | ||||
|                (("collections") "collections.abc")) | ||||
|              #t)) | ||||
|          (delete 'configure)            ; no configure script | ||||
|          (add-after 'install 'wrap | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (wrap-program (string-append out "/bin/dstat") | ||||
|                  `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("python" ,python-wrapper) | ||||
|        ("python-six" ,python-six))) | ||||
|     (synopsis "Versatile resource statistics tool") | ||||
|     (description "Dstat is a versatile replacement for @command{vmstat}, | ||||
| @command{iostat}, @command{netstat}, and @command{ifstat}.  Dstat overcomes | ||||
|  |  | |||
|  | @ -43,6 +43,7 @@ | |||
|   #:use-module (gnu packages mpi) | ||||
|   #:use-module (gnu packages multiprecision) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages pulseaudio) | ||||
|   #:use-module (gnu packages python) | ||||
|   #:use-module (gnu packages python-xyz) | ||||
|  | @ -92,6 +93,27 @@ multiplication routines such as Toom–Cook and the FFT.") | |||
|    (license license:lgpl3+) | ||||
|    (home-page "http://mpfrcx.multiprecision.org/"))) | ||||
| 
 | ||||
| (define-public gf2x | ||||
|   (package | ||||
|    (name "gf2x") | ||||
|    (version "1.2") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append | ||||
|                   "https://gforge.inria.fr/frs/download.php/file/36934/gf2x-" | ||||
|                   version ".tar.gz")) | ||||
|             (sha256 | ||||
|              (base32 | ||||
|               "0d6vh1mxskvv3bxl6byp7gxxw3zzpkldrxnyajhnl05m0gx7yhk1")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (synopsis "Arithmetic of polynomials over binary finite fields") | ||||
|    (description | ||||
|     "The gf2x library provides arithmetic of polynomials over finite fields | ||||
| of characteristic 2.  It implements the multiplication, squaring and | ||||
| greatest common divisor operations.") | ||||
|    (license license:gpl3+) | ||||
|    (home-page "https://gforge.inria.fr/projects/gf2x/"))) | ||||
| 
 | ||||
| (define-public cm | ||||
|   (package | ||||
|    (name "cm") | ||||
|  | @ -122,24 +144,82 @@ line applications.") | |||
| 
 | ||||
| (define-public fplll | ||||
|   (package | ||||
|    (name "fplll") | ||||
|    (version "4.0.4") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append | ||||
|                   "http://perso.ens-lyon.fr/damien.stehle/fplll/libfplll-" | ||||
|                   version ".tar.gz")) | ||||
|             (sha256 (base32 | ||||
|                      "1cbiby7ykis4z84swclpysrljmqhfcllpkcbll1m08rzskgb1a6b")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (inputs `(("gmp" ,gmp) | ||||
|              ("mpfr" ,mpfr))) | ||||
|    (synopsis "Library for LLL-reduction of euclidean lattices") | ||||
|    (description | ||||
|     "fplll LLL-reduces euclidean lattices.  Since version 3, it can also | ||||
| solve the shortest vector problem.") | ||||
|    (license license:lgpl2.1+) | ||||
|    (home-page "http://perso.ens-lyon.fr/damien.stehle/fplll/"))) | ||||
|     (name "fplll") | ||||
|     (version "5.2.1") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/fplll/fplll.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "015qmrd7nfaysbv1hbwiprz9g6hnww1y1z1xw8f43ysb7k1b5nbg")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (inputs | ||||
|      `(("gmp" ,gmp) | ||||
|        ("mpfr" ,mpfr))) | ||||
|     (home-page "https://github.com/fplll/fplll") | ||||
|     (synopsis "Library for LLL-reduction of euclidean lattices") | ||||
|     (description | ||||
|      "fplll contains implementations of several lattice algorithms. | ||||
| The implementation relies on floating-point orthogonalization, and LLL | ||||
| is central to the code, hence the name. | ||||
| 
 | ||||
| It includes implementations of floating-point LLL reduction | ||||
| algorithms, offering different speed/guarantees ratios.  It contains | ||||
| a @emph{wrapper} choosing the estimated best sequence of variants in | ||||
| order to provide a guaranteed output as fast as possible.  In the case | ||||
| of the wrapper, the succession of variants is oblivious to the user. | ||||
| 
 | ||||
| It includes an implementation of the BKZ reduction algorithm, | ||||
| including the BKZ-2.0 improvements (extreme enumeration | ||||
| pruning, pre-processing of blocks, early termination).  Additionally, | ||||
| Slide reduction and self dual BKZ are supported. | ||||
| 
 | ||||
| It also includes a floating-point implementation of the | ||||
| Kannan-Fincke-Pohst algorithm that finds a shortest non-zero lattice | ||||
| vector.  For the same task, the GaussSieve algorithm is also available | ||||
| in fplll.  Finally, it contains a variant of the enumeration algorithm | ||||
| that computes a lattice vector closest to a given vector belonging to | ||||
| the real span of the lattice.") | ||||
|     (license license:lgpl2.1+))) | ||||
| 
 | ||||
| (define-public python-fpylll | ||||
|   (package | ||||
|     (name "python-fpylll") | ||||
|     (version "0.4.1") | ||||
|     (source | ||||
|      (origin | ||||
|        ;; Pypi contains and older release, so we use a tagged release from | ||||
|        ;; Github instead. | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/fplll/fpylll.git") | ||||
|              (commit (string-append version "dev")))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "01x2sqdv0sbjj4g4waj0hj4rcn4bq7h17442xaqwbznym9azmn9w")))) | ||||
|     (build-system python-build-system) | ||||
|     (inputs | ||||
|      `(("fplll" ,fplll) | ||||
|        ("gmp" ,gmp) | ||||
|        ("mpfr" ,mpfr) | ||||
|        ("pari-gp" ,pari-gp))) | ||||
|     (propagated-inputs | ||||
|      `(("cysignals" ,python-cysignals) | ||||
|        ("cython" ,python-cython) | ||||
|        ("flake8" ,python-flake8) | ||||
|        ("numpy" ,python-numpy) | ||||
|        ("pytest" ,python-pytest))) | ||||
|     (home-page "https://github.com/fplll/fpylll") | ||||
|     (synopsis "Python interface for fplll") | ||||
|     (description "fpylll is a Python wrapper for fplll.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public pari-gp | ||||
|   (package | ||||
|  | @ -928,7 +1008,7 @@ xtensor provides: | |||
| (define-public gap | ||||
|   (package | ||||
|     (name "gap") | ||||
|     (version "4.10.0") | ||||
|     (version "4.10.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -939,7 +1019,7 @@ xtensor provides: | |||
|                            ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1dmb8v4p7j1nnf7sx8sg54b49yln36bi9acwp7w1d3a1nxj17ird")) | ||||
|          "136s0zvhcw41fshj5zgsrjcy2kd58cdh2m3ddp5rdizi4rx54f10")) | ||||
|        (modules '((guix build utils) (ice-9 ftw) (srfi srfi-1))) | ||||
|        (snippet | ||||
|         '(begin | ||||
|  | @ -967,20 +1047,20 @@ xtensor provides: | |||
|                    ;; Optional packages, searched for at start, | ||||
|                    ;; and their depedencies. | ||||
|                    "alnuth-3.1.0" | ||||
|                    "AutoDoc-2018.09.20" | ||||
|                    "autpgrp-1.10" | ||||
|                    "crisp-1.4.4"     ; bsd-2 | ||||
|                    ; "ctbllib"       ; no explicit license, drop | ||||
|                    "ctbllib"       ; gpl3+ according to doc/chap0.txt | ||||
|                    "FactInt-1.6.2" | ||||
|                    "fga" | ||||
|                    "irredsol-1.4"    ; bsd-2 | ||||
|                    "laguna-3.9.0" | ||||
|                    "laguna-3.9.2" | ||||
|                    "polenta-1.3.8" | ||||
|                    "polycyclic-2.14" | ||||
|                    "radiroot-2.8" | ||||
|                    "resclasses-4.7.1" | ||||
|                    "sophus-1.24" | ||||
|                    ; "tomlib-1.2.7"  ; no explicit license, drop | ||||
|                    "tomlib-1.2.7"  ; gpl2+, clarified in the git repository | ||||
|                                    ; and the next release | ||||
|                    "utils-0.59")))) | ||||
|            #t)))) | ||||
|     (build-system gnu-build-system) | ||||
|  | @ -988,7 +1068,11 @@ xtensor provides: | |||
|      `(("gmp" ,gmp) | ||||
|        ("zlib" ,zlib))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|      `(#:modules ((ice-9 ftw) | ||||
|                   (srfi srfi-26) | ||||
|                   (guix build gnu-build-system) | ||||
|                   (guix build utils)) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'build 'build-packages | ||||
|            ;; Compile all packages that have not been deleted by the | ||||
|  | @ -1004,19 +1088,16 @@ xtensor provides: | |||
|              (with-directory-excursion "doc" | ||||
|                (invoke "./make_doc")) | ||||
|              #t)) | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              ;; "make check" is expected to appear in gap-4.10.1 | ||||
|              (invoke "./gap" "tst/testinstall.g") | ||||
|              #t)) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (bin (string-append out "/bin")) | ||||
|                     (lib (string-append out "/lib")) | ||||
|                     (prog (string-append bin "/gap")) | ||||
|                     (prog-real (string-append bin "/.gap-real")) | ||||
|                     (share (string-append out "/share/gap")) | ||||
|                     (include (string-append out "/include/gap"))) | ||||
|                     (include (string-append out "/include/gap")) | ||||
|                     (include-hpc (string-append include "/hpc"))) | ||||
|                ;; Install only the gap binary; the gac compiler is left | ||||
|                ;; for maybe later. "Wrap" it in a shell script that calls | ||||
|                ;; the binary with the correct parameter. | ||||
|  | @ -1030,12 +1111,37 @@ xtensor provides: | |||
|                            prog-real | ||||
|                            share))) | ||||
|                (chmod prog #o755) | ||||
|                ;; Install the headers and the library, which are needed by | ||||
|                ;; Sage. The Makefile targets are available in gap-4.10.0, | ||||
|                ;; but planned to be removed in gap-4.10.1. | ||||
|                (invoke "make" "install-headers") | ||||
|                (invoke "make" "install-libgap") | ||||
|                ;; Install the headers, which are needed by Sage. The | ||||
|                ;; Makefile target "install-headers" was available in | ||||
|                ;; gap-4.10.0, but has been commented out in gap-4.10.1. | ||||
|                (mkdir-p include-hpc) | ||||
|                (install-file "gen/config.h" include) | ||||
|                (let ((file-name-predicate-without-stat | ||||
|                        (lambda (regex) | ||||
|                          (cut (file-name-predicate regex) <> #f)))) | ||||
|                  (with-directory-excursion "src" | ||||
|                    (for-each | ||||
|                      (cut install-file <> include) | ||||
|                      (scandir "." | ||||
|                               (file-name-predicate-without-stat ".*\\.h$")))) | ||||
|                  (with-directory-excursion "src/hpc" | ||||
|                    (for-each | ||||
|                      (cut install-file <> include-hpc) | ||||
|                      (scandir "." | ||||
|                               (file-name-predicate-without-stat ".*\\.h$"))))) | ||||
|                ;; Install the library, which is needed by Sage. The | ||||
|                ;; Makefile target "install-libgap" was available in | ||||
|                ;; gap-4.10.0, but has been commented out in gap-4.10.1. | ||||
|                ;; Compared to the Makefile, which used libtool, the | ||||
|                ;; following approach of copying files and making symlinks | ||||
|                ;; is rather pedestrian. There is hope that some later | ||||
|                ;; version of gap reinstates and completes the install | ||||
|                ;; targets. | ||||
|                (invoke "make" "libgap.la") | ||||
|                (install-file "libgap.la" lib) | ||||
|                (install-file ".libs/libgap.so.0.0.0" lib) | ||||
|                (symlink "libgap.so.0.0.0" (string-append lib "/libgap.so"))  | ||||
|                (symlink "libgap.so.0.0.0" (string-append lib "/libgap.so.0")) | ||||
|                ;; Install a certain number of files and directories to | ||||
|                ;; SHARE, where the wrapped shell script expects them. | ||||
|                ;; Remove information on the build directory from sysinfo.gap. | ||||
|  | @ -1068,3 +1174,411 @@ objects.") | |||
|     ;; means that the gpl2+ licence of GAP itself applies, but to be on the | ||||
|     ;; safe side, we drop them for now. | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public givaro | ||||
|   (package | ||||
|     (name "givaro") | ||||
|     (version "4.1.1") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/givaro") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "11wz57q6ijsvfs5r82masxgr319as92syi78lnl9lgdblpc6xigk")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (propagated-inputs | ||||
|      `(("gmp" ,gmp))) ; gmp++.h includes gmpxx.h | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'bootstrap 'setenv | ||||
|            ;; Prevent the autogen.sh script to carry out the configure | ||||
|            ;; script, which has not yet been patched to replace /bin/sh. | ||||
|            (lambda _ | ||||
|              (setenv "NOCONFIGURE" "yes") | ||||
|              #t))))) | ||||
|     (synopsis "Algebraic computations with exact rings and fields") | ||||
|     (description | ||||
|      "Givaro is a C++ library implementing the basic arithmetic of various | ||||
| algebraic objects: prime fields, extension fields, finite fields, finite | ||||
| rings, polynomials, algebraic numbers, arbitrary precision integers and | ||||
| rationals (C++ wrappers over gmp), fixed precision integers.  It also | ||||
| provides data-structures and templated classes for the manipulation of | ||||
| compound objects, such as vectors, matrices and univariate polynomials.") | ||||
|     (license license:cecill-b) | ||||
|     (home-page "https://github.com/linbox-team/givaro"))) | ||||
| 
 | ||||
| (define-public fflas-ffpack | ||||
|   (package | ||||
|     (name "fflas-ffpack") | ||||
|     (version "2.4.3") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/fflas-ffpack") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1ynbjd72qrwp0b4kpn0p5d7gddpvj8dlb5fwdxajr5pvkvi3if74")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("openblas" ,openblas))) | ||||
|     (propagated-inputs | ||||
|      `(("givaro" ,givaro))) ; required according to the .pc file | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "--with-blas-libs=" | ||||
|                             (assoc-ref %build-inputs "openblas") | ||||
|                             "/lib/libopenblas.so")) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'bootstrap 'setenv | ||||
|            ;; Prevent the autogen.sh script to carry out the configure | ||||
|            ;; script, which has not yet been patched to replace /bin/sh. | ||||
|            (lambda _ | ||||
|              (setenv "NOCONFIGURE" "yes") | ||||
|              #t))))) | ||||
|     (synopsis "C++ library for linear algebra over finite fields") | ||||
|     (description | ||||
|      "FFLAS-FFPACK is a C++ template library for basic linear algebra | ||||
| operations over a finite field. | ||||
| FFLAS (Finite Field Linear Algebra Subprograms) provides the implementation | ||||
| of a subset of routines of the numerical BLAS; it also supports sparse | ||||
| matrix-vector products. | ||||
| FFPACK (Finite Field Linear Algebra Package) is inspired by the LAPACK | ||||
| library to provide functionalities of higher level, using the kernel | ||||
| of a BLAS.  Additionally, it provides routines specific to exact linear | ||||
| algebra, such as the row echelon form.") | ||||
|     (license license:lgpl2.1+) | ||||
|     (home-page "https://linbox-team.github.io/fflas-ffpack/"))) | ||||
| 
 | ||||
| (define-public linbox | ||||
|   (package | ||||
|     (name "linbox") | ||||
|     (version "1.6.3") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/linbox") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "10j6dspbsq7d2l4q3y0c1l1xwmaqqba2fxg59q5bhgk9h5d7q571")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("fflas-ffpack" ,fflas-ffpack))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'bootstrap 'setenv | ||||
|            ;; Prevent the autogen.sh script to carry out the configure | ||||
|            ;; script, which has not yet been patched to replace /bin/sh. | ||||
|            (lambda _ | ||||
|              (setenv "NOCONFIGURE" "yes") | ||||
|              #t))))) | ||||
|     (synopsis "C++ library for linear algebra over exact rings") | ||||
|     (description | ||||
|      "LinBox is a C++ template library for exact linear algebra computation | ||||
| with dense, sparse, and structured matrices over the integers and over | ||||
| finite fields.") | ||||
|     (license license:lgpl2.1+) | ||||
|     (home-page "https://linbox-team.github.io/linbox/"))) | ||||
| 
 | ||||
| (define-public m4ri | ||||
|   (package | ||||
|     (name "m4ri") | ||||
|     (version "20140914") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://bitbucket.org/malb/m4ri") | ||||
|                     (commit (string-append "release-" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0xfg6pffbn8r1s0y7bn9b8i55l00d41dkmhrpf7pwk53qa3achd3")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("libpng" ,libpng))) | ||||
|     (synopsis "Arithmetic of dense matrices over F_2") | ||||
|     (description "M4RI is a library for fast arithmetic with dense matrices | ||||
| over F2.  The name M4RI comes from the first implemented algorithm: The | ||||
| Method of the Four Russians inversion algorithm published by Gregory Bard. | ||||
| This algorithm in turn is named after the Method of the Four Russians | ||||
| multiplication algorithm.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "https://bitbucket.org/malb/m4ri/"))) | ||||
| 
 | ||||
| (define-public ratpoints | ||||
|   (package | ||||
|     (name "ratpoints") | ||||
|     (version "2.1.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|                     "http://www.mathe2.uni-bayreuth.de/stoll/programs/" | ||||
|                     "ratpoints-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0zhad84sfds7izyksbqjmwpfw4rvyqk63yzdjd3ysd32zss5bgf4")) | ||||
|               (patches | ||||
|                ;; Taken from | ||||
|                ;; <https://git.sagemath.org/sage.git/plain/build/pkgs/ratpoints/patches/> | ||||
|                (search-patches "ratpoints-sturm_and_rp_private.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:test-target "test" | ||||
|        #:make-flags | ||||
|        (list (string-append "INSTALL_DIR=" (assoc-ref %outputs "out"))) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure)            ;no configure script | ||||
|          (add-before 'install 'create-install-directories | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (mkdir-p out) | ||||
|                (with-directory-excursion out | ||||
|                  (for-each (lambda (d) (mkdir-p d)) | ||||
|                            '("bin" "include" "lib")))) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("gmp" ,gmp))) | ||||
|     (home-page "http://www.mathe2.uni-bayreuth.de/stoll/programs/") | ||||
|     (synopsis "Find rational points on hyperelliptic curves") | ||||
|     (description "Ratpoints tries to find all rational points within | ||||
| a given height bound on a hyperelliptic curve in a very efficient way, | ||||
| by using an optimized quadratic sieve algorithm.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public symmetrica | ||||
|   (package | ||||
|     (name "symmetrica") | ||||
|     (version "2.0") | ||||
|     (source (origin | ||||
|               (method url-fetch/tarbomb) | ||||
|               (uri (let ((v (string-join (string-split version #\.) "_"))) | ||||
|                      (string-append "http://www.algorithm.uni-bayreuth.de/" | ||||
|                                     "en/research/SYMMETRICA/" | ||||
|                                     "SYM" v "_tar.gz"))) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1qhfrbd5ybb0sinl9pad64rscr08qvlfzrzmi4p4hk61xn6phlmz")) | ||||
|               ;; Taken from <https://git.sagemath.org/sage.git/plain/build/pkgs/symmetrica/patches/> | ||||
|               (patches (search-patches "symmetrica-bruch.patch" | ||||
|                                        "symmetrica-int32.patch" | ||||
|                                        "symmetrica-return_values.patch" | ||||
|                                        "symmetrica-sort_sum_rename.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                      ;no test | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'fix-makefile | ||||
|            (lambda _ | ||||
|              (substitute* "makefile" | ||||
|                (("cc -c") "gcc -c")) | ||||
|              #t)) | ||||
|          (add-after 'fix-makefile 'turn-off-banner | ||||
|            (lambda _ | ||||
|              (substitute* "de.c" | ||||
|                (("(INT no_banner = )FALSE" _ pre) (string-append pre "TRUE"))) | ||||
|              #t)) | ||||
|          (delete 'configure)            ;no configure script | ||||
|          (replace 'install              ;no install target | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (lib (string-append out "/lib")) | ||||
|                     (inc (string-append out "/include/symmetrica")) | ||||
|                     (doc (string-append out "/share/doc/symmetrica-" ,version)) | ||||
|                     (static "libsymmetrica.a")) | ||||
|                ;; Build static library. | ||||
|                (apply invoke "ar" "crs" static (find-files "." "\\.o$")) | ||||
|                (invoke "ranlib" static) | ||||
|                ;; Install static library and headers. | ||||
|                (for-each (lambda (f) (install-file f inc)) | ||||
|                          (find-files "." "\\.h$")) | ||||
|                (install-file "libsymmetrica.a" lib) | ||||
|                ;; Install documentation. | ||||
|                (for-each (lambda (f) (install-file f doc)) | ||||
|                          (find-files "." "\\.doc$")) | ||||
|                #t)))))) | ||||
|     (home-page "http://www.algorithm.uni-bayreuth.de/en/research/SYMMETRICA/") | ||||
|     (synopsis "Combinatoric C Library") | ||||
|     (description "Symmetrica is a library for combinatorics.  It has support | ||||
| for the representation theory of the symmetric group and related groups, | ||||
| combinatorics of tableaux, symmetric functions and polynomials, Schubert | ||||
| polynomials, and the representation theory of Hecke algebras of type A_n.") | ||||
|     (license license:public-domain))) | ||||
| 
 | ||||
| (define-public m4rie | ||||
|   (package | ||||
|     (name "m4rie") | ||||
|     (version "20150908") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://bitbucket.org/malb/m4rie") | ||||
|                     (commit (string-append "release-" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0r8lv46qx5mkz5kp3ay2jnsp0mbhlqr5z2z220wdk73wdshcznss")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (inputs | ||||
|      `(("m4ri" ,m4ri))) | ||||
|     (synopsis "Arithmetic of dense matrices over F_{2^e}") | ||||
|     (description "M4RI is a library for fast arithmetic with dense matrices | ||||
| over finite fields of characteristic 2.  So it extends the functionality | ||||
| of M4RI from F_2 to F_{2^e}.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "https://bitbucket.org/malb/m4rie/"))) | ||||
| 
 | ||||
| (define-public eclib | ||||
|   (package | ||||
|     (name "eclib") | ||||
|     (version "20190226") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/JohnCremona/eclib/") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1910np1xzyjzszay24xn4b81qhpsvhp5aix9vdpknplni2mq8kwb")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (inputs | ||||
|      `(("gmp" ,gmp) | ||||
|        ("ntl" ,ntl) | ||||
|        ("pari-gp" ,pari-gp))) | ||||
|     (synopsis "Ranks of elliptic curves and modular symbols") | ||||
|     (description "The eclib package includes mwrank (for 2-descent on | ||||
| elliptic curves over Q) and modular symbol code; it has been written by | ||||
| John Cremona to compute his elliptic curve database.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page (string-append "http://homepages.warwick.ac.uk/staff/" | ||||
|                               "J.E.Cremona/mwrank/index.html")))) | ||||
| 
 | ||||
| (define-public lrcalc | ||||
|   (package | ||||
|     (name "lrcalc") | ||||
|     (version "1.2") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://bitbucket.org/asbuch/lrcalc") | ||||
|                     (commit (string-append "lrcalc-" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1c12d04jdyxkkav4ak8d1aqrv594gzihwhpxvc6p9js0ry1fahss")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'build 'fix-permission | ||||
|            (lambda _ | ||||
|              (chmod "lrcalc.maple.src" #o644) | ||||
|              #t))))) | ||||
|     (synopsis "Littlewood-Richardson calculator in algebraic combinatorics") | ||||
|     (description "The Littlewood-Richardson Calculator (lrcalc) is a | ||||
| program designed to compute Littlewood-Richardson coefficients.  It computes | ||||
| single Littlewood-Richardson coefficients, products of Schur functions, or | ||||
| skew Schur functions.  In addition it computes products in the small quantum | ||||
| cohomology ring of a Grassmann variety.  The software package also includes | ||||
| a program that performs fast computation of the more general multiplicative | ||||
| structure constants of Schubert polynomials.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "http://sites.math.rutgers.edu/~asbuch/lrcalc/"))) | ||||
| 
 | ||||
| (define-public iml | ||||
|   (package | ||||
|     (name "iml") | ||||
|     (version "1.0.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "http://www.cs.uwaterloo.ca/~astorjoh/iml-" | ||||
|                            version ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0akwhhz9b40bz6lrfxpamp7r7wkk48p455qbn04mfnl9a1l6db8x")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("gmp", gmp) | ||||
|        ("cblas" ,openblas))) ; or any other BLAS library; the documentation | ||||
|                              ; mentions ATLAS in particular | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list | ||||
|         (string-append "--with-gmp-include=" | ||||
|                        (assoc-ref %build-inputs "gmp") "/include") | ||||
|         (string-append "--with-gmp-lib=" | ||||
|                        (assoc-ref %build-inputs "gmp") "/lib") | ||||
|         "--with-cblas=-lopenblas" | ||||
|         (string-append "--with-cblas-include=" | ||||
|                        (assoc-ref %build-inputs "cblas") "/include") | ||||
|         (string-append "--with-cblas-lib=" | ||||
|                        (assoc-ref %build-inputs "cblas") "/lib")))) | ||||
|     (home-page "https://cs.uwaterloo.ca/~astorjoh/iml.html") | ||||
|     (synopsis | ||||
|      "Solver for systems of linear equations over the integers") | ||||
|     (description | ||||
|      "IML is a C library implementing algorithms for computing exact | ||||
| solutions to dense systems of linear equations over the integers. | ||||
| Currently, IML provides the following functionality: | ||||
| 
 | ||||
| @itemize | ||||
| @item Nonsingular rational system solving: | ||||
| compute the unique rational solution X to the system AX=B, where A and B | ||||
| are integer matrices, A nonsingular. | ||||
| @item Compute the right nullspace or kernel of an integer matrix. | ||||
| @item Certified linear system solving: | ||||
| compute a minimal denominator solution x to a system Ax=b, where b is an | ||||
| integer vector and A is an integer matrix with arbitrary shape and | ||||
| rank profile. | ||||
| @end itemize | ||||
| 
 | ||||
| In addition, IML provides some low level routines for a variety of mod p | ||||
| matrix operations: computing the row-echelon form, determinant, rank | ||||
| profile, and inverse of a mod p matrix. These mod p routines are not | ||||
| general purpose; they require that p satisfy some preconditions based on | ||||
| the dimension of the input matrix (usually p should be prime and should be | ||||
| no more than about 20 bits long).") | ||||
|     (license license:bsd-3))) | ||||
|  |  | |||
|  | @ -2428,17 +2428,17 @@ the Turtle syntax.") | |||
| (define-public suil | ||||
|   (package | ||||
|     (name "suil") | ||||
|     (version "0.10.2") | ||||
|     (version "0.10.4") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "https://download.drobilla.net/suil-" | ||||
|                                  version ".tar.bz2")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "00d43m0nai63ajb7rkm9v084jcih206y17ib3160zcvzc885ji4z")))) | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://download.drobilla.net/suil-" | ||||
|                                   version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0ay7hl6nr6ip1nn9k2m8ri3b52b6sx9mhixmcy4fy3kr2a88ksd1")))) | ||||
|     (build-system waf-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f        ; no check target | ||||
|      `(#:tests? #f                      ; no check target | ||||
|        #:configure-flags | ||||
|        '("CXXFLAGS=-std=gnu++11"))) | ||||
|     (inputs | ||||
|  | @ -3568,7 +3568,7 @@ representations.") | |||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "PREFIX=" %output) | ||||
|              (string-append "FONT_DIR=" %output "/usr/share/consolefonts")) | ||||
|              (string-append "FONT_DIR=" %output "/share/consolefonts")) | ||||
|        #:make-flags | ||||
|        (let ((lib (string-append %output "/lib"))) | ||||
|          (list (string-append "cava_LDFLAGS = -L" lib " -Wl,-rpath " lib))) | ||||
|  |  | |||
|  | @ -4,6 +4,7 @@ | |||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2019 Eric Bavier <bavier@member.fsf.org> | ||||
| ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -25,7 +26,10 @@ | |||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages check) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages maths) | ||||
|  | @ -193,3 +197,27 @@ extension to @code{time} which runs a command multiple times and prints the | |||
| timing means, standard deviations, mins, medians, and maxes having done so. | ||||
| This can give a much better understanding of the command's performance.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public benchmark | ||||
|   (package | ||||
|     (name "benchmark") | ||||
|     (version "1.5.0") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/google/benchmark.git") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0r9dbg4cbk47gwmayys31a83m3y67k0kh1f6pl8i869rbd609ndh")) | ||||
|               (patches (search-patches "benchmark-unbundle-googletest.patch")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (native-inputs | ||||
|      `(("googletest" ,googletest))) | ||||
|     (home-page "https://github.com/google/benchmark") | ||||
|     (synopsis "Microbenchmark support library") | ||||
|     (description | ||||
|      "Benchmark is a library to benchmark code snippets, | ||||
| similar to unit tests.") | ||||
|     (license license:asl2.0))) | ||||
|  |  | |||
|  | @ -590,6 +590,35 @@ data.  It is derived from the UCSC hg19 genome and based on the \"knownGene\" | |||
| track.  The database is exposed as a @code{TxDb} object.") | ||||
|     (license license:artistic2.0))) | ||||
| 
 | ||||
| (define-public r-txdb-hsapiens-ucsc-hg38-knowngene | ||||
|   (package | ||||
|     (name "r-txdb-hsapiens-ucsc-hg38-knowngene") | ||||
|     (version "3.4.6") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               ;; We cannot use bioconductor-uri here because this tarball is | ||||
|               ;; located under "data/annotation/" instead of "bioc/". | ||||
|               (uri (string-append "https://bioconductor.org/packages/" | ||||
|                                   "release/data/annotation/src/contrib" | ||||
|                                   "/TxDb.Hsapiens.UCSC.hg38.knownGene_" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "12j7rri9r129v9w1yiqadg952dx462dh092sxif3r5kk8l7bxkn9")))) | ||||
|     (properties | ||||
|      `((upstream-name . "TxDb.Hsapiens.UCSC.hg38.knownGene"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-genomicfeatures" ,r-genomicfeatures))) | ||||
|     (home-page | ||||
|      "https://bioconductor.org/packages/TxDb.Hsapiens.UCSC.hg38.knownGene/") | ||||
|     (synopsis "Annotation package for human genome in TxDb format") | ||||
|     (description | ||||
|      "This package provides an annotation database of Homo sapiens genome | ||||
| data.  It is derived from the UCSC hg38 genome and based on the \"knownGene\" | ||||
| track.  The database is exposed as a @code{TxDb} object.") | ||||
|     (license license:artistic2.0))) | ||||
| 
 | ||||
| (define-public r-txdb-mmusculus-ucsc-mm9-knowngene | ||||
|   (package | ||||
|     (name "r-txdb-mmusculus-ucsc-mm9-knowngene") | ||||
|  | @ -4438,14 +4467,14 @@ interpretation.") | |||
| (define-public r-rhisat2 | ||||
|   (package | ||||
|     (name "r-rhisat2") | ||||
|     (version "1.0.2") | ||||
|     (version "1.0.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (bioconductor-uri "Rhisat2" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1y3zqvk1vbcb10r1myh6f5yzjvf7bhwhpiq78bs1k6spli4bzj0q")))) | ||||
|          "02ig9qci18n93vmya7q6bijrqsbfh69fyg8iqysf89ym2vd3x3c5")))) | ||||
|     (properties `((upstream-name . "Rhisat2"))) | ||||
|     (build-system r-build-system) | ||||
|     (native-inputs | ||||
|  | @ -4677,3 +4706,42 @@ Forest, and SVM binary classifiers.  The signatures and the corresponding | |||
| 'restricted' models are returned, enabling future predictions on new | ||||
| datasets.") | ||||
|     (license license:cecill))) | ||||
| 
 | ||||
| (define-public r-annotatr | ||||
|   (package | ||||
|     (name "r-annotatr") | ||||
|     (version "1.10.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (bioconductor-uri "annotatr" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1zlhy6swfgqjhhcqn8c6akxd4c4z8p85swfh095imji7hxnlhh1f")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-annotationdbi" ,r-annotationdbi) | ||||
|        ("r-annotationhub" ,r-annotationhub) | ||||
|        ("r-dplyr" ,r-dplyr) | ||||
|        ("r-genomeinfodb" ,r-genomeinfodb) | ||||
|        ("r-genomicfeatures" ,r-genomicfeatures) | ||||
|        ("r-genomicranges" ,r-genomicranges) | ||||
|        ("r-ggplot2" ,r-ggplot2) | ||||
|        ("r-iranges" ,r-iranges) | ||||
|        ("r-readr" ,r-readr) | ||||
|        ("r-regioner" ,r-regioner) | ||||
|        ("r-reshape2" ,r-reshape2) | ||||
|        ("r-rtracklayer" ,r-rtracklayer) | ||||
|        ("r-s4vectors" ,r-s4vectors))) | ||||
|     (home-page "https://bioconductor.org/packages/annotatr/") | ||||
|     (synopsis "Annotation of genomic regions to genomic annotations") | ||||
|     (description | ||||
|      "Given a set of genomic sites/regions (e.g. ChIP-seq peaks, CpGs, | ||||
| differentially methylated CpGs or regions, SNPs, etc.) it is often of interest | ||||
| to investigate the intersecting genomic annotations.  Such annotations include | ||||
| those relating to gene models (promoters, 5'UTRs, exons, introns, and 3'UTRs), | ||||
| CpGs (CpG islands, CpG shores, CpG shelves), or regulatory sequences such as | ||||
| enhancers.  The annotatr package provides an easy way to summarize and | ||||
| visualize the intersection of genomic sites/regions with genomic | ||||
| annotations.") | ||||
|     (license license:gpl3))) | ||||
|  |  | |||
|  | @ -5516,7 +5516,7 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") | |||
| (define-public ngs-sdk | ||||
|   (package | ||||
|     (name "ngs-sdk") | ||||
|     (version "2.9.3") | ||||
|     (version "2.9.6") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|  | @ -5525,7 +5525,7 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") | |||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "17c0v1nah3g3d2ib5bbi0vhma1ghd6vb9xycavqsh64lhp840rk3")))) | ||||
|                 "0d5k5kabgl15as37kj9x65xc92j4gcqms86hvihw3yb6wag0r0q3")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-build? #f ; not supported | ||||
|  | @ -5582,7 +5582,7 @@ simultaneously.") | |||
| (define-public ncbi-vdb | ||||
|   (package | ||||
|     (name "ncbi-vdb") | ||||
|     (version "2.9.3") | ||||
|     (version "2.9.6") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|  | @ -5591,11 +5591,12 @@ simultaneously.") | |||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1l4ny67nxwv1lagk9wwjbrgm7ln7adci6dnpc7k1yaln6shj0qpm")))) | ||||
|                 "0knkj1sq34hlivgv5qd6jlczqrs3ldmfgn6vbbw7p4mqxvb9mirk")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-build? #f ; not supported | ||||
|        #:tests? #f ; no "check" target | ||||
|        #:make-flags '("HAVE_HDF5=1") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'make-files-writable | ||||
|  | @ -5607,6 +5608,13 @@ simultaneously.") | |||
|                      (string-append (getcwd) "/setup:" | ||||
|                                     (getenv "PERL5LIB"))) | ||||
|              #t)) | ||||
|          ;; See https://github.com/ncbi/ncbi-vdb/issues/14 | ||||
|          (add-after 'unpack 'patch-krypto-flags | ||||
|            (lambda _ | ||||
|              (substitute* "libs/krypto/Makefile" | ||||
|                (("-Wa,-march=generic64\\+aes") "") | ||||
|                (("-Wa,-march=generic64\\+sse4") "")) | ||||
|              #t)) | ||||
|          (replace 'configure | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|  | @ -5933,7 +5941,7 @@ sequence itself can be retrieved from these databases.") | |||
| (define-public sra-tools | ||||
|   (package | ||||
|     (name "sra-tools") | ||||
|     (version "2.9.3") | ||||
|     (version "2.9.6") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -5943,7 +5951,7 @@ sequence itself can be retrieved from these databases.") | |||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0663gcdxkziwsmlznjxysb00621rllpbz6jwsfifq7z3dj3lwm8b")))) | ||||
|          "0vqzap68v81k0zif2mnqfy8pnw2nrhsg87p6mgq8qk3nk2jv2rgy")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-build? #f ; not supported | ||||
|  | @ -6946,14 +6954,14 @@ ungapped alignment formats.") | |||
| (define-public r-systempiper | ||||
|   (package | ||||
|     (name "r-systempiper") | ||||
|     (version "1.18.0") | ||||
|     (version "1.18.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (bioconductor-uri "systemPipeR" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1063vdf4g2i5xyabwvzkqfxd2j8s4zs6z4zxf8lx2ccjddhkn37a")))) | ||||
|          "1k57zyzagd7g7wl38l3cn9csylykxcllbfvyq7dz8pvihgkn0ssi")))) | ||||
|     (properties `((upstream-name . "systemPipeR"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  | @ -8548,13 +8556,13 @@ factors bound at the specific regions.") | |||
| (define-public r-tximport | ||||
|   (package | ||||
|     (name "r-tximport") | ||||
|     (version "1.12.0") | ||||
|     (version "1.12.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (bioconductor-uri "tximport" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0nl4imr5klwcd0xnp5y0g61d6mcgd50q60zkl86ymfmc0id368jr")))) | ||||
|                 "1nq8v1sgkm2ssmvr2z3qw0zsk7zy0dzb95g1mfs8fkpjqh3nqq5s")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://bioconductor.org/packages/tximport") | ||||
|     (synopsis "Import and summarize transcript-level estimates for gene-level analysis") | ||||
|  | @ -9452,13 +9460,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.") | |||
| (define-public r-seurat | ||||
|   (package | ||||
|     (name "r-seurat") | ||||
|     (version "3.0.1") | ||||
|     (version "3.0.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "Seurat" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0mx2fvhdswbcsgqxhfc6d0gr92bkibwpz2bavqdzbbxrzpdpnilc")))) | ||||
|                 "016fgcmjz3sjfxdvam5hd7mdxpmpnc7f6p5zqlh97m21dgn5vpqn")))) | ||||
|     (properties `((upstream-name . "Seurat"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  | @ -12536,7 +12544,7 @@ once.  This package provides tools to perform Drop-seq analyses.") | |||
| (define-public pigx-rnaseq | ||||
|   (package | ||||
|     (name "pigx-rnaseq") | ||||
|     (version "0.0.5") | ||||
|     (version "0.0.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/" | ||||
|  | @ -12544,7 +12552,7 @@ once.  This package provides tools to perform Drop-seq analyses.") | |||
|                                   "/pigx_rnaseq-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "05gn658zpj9xki5dbs728z9zxq1mcm25hkwr5vzwqxsfi15l5f2l")))) | ||||
|                 "013inbh22bjvwg2w0kx5i42k66w1zl4310ldip2ax6msgprs2ydj")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-tests? #f             ; not supported | ||||
|  | @ -12559,7 +12567,9 @@ once.  This package provides tools to perform Drop-seq analyses.") | |||
|                (("^  test.sh") "")) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("gzip" ,gzip) | ||||
|      `(("coreutils" ,coreutils) | ||||
|        ("sed" ,sed) | ||||
|        ("gzip" ,gzip) | ||||
|        ("snakemake" ,snakemake) | ||||
|        ("fastqc" ,fastqc) | ||||
|        ("multiqc" ,multiqc) | ||||
|  | @ -12567,7 +12577,6 @@ once.  This package provides tools to perform Drop-seq analyses.") | |||
|        ("trim-galore" ,trim-galore) | ||||
|        ("htseq" ,htseq) | ||||
|        ("samtools" ,samtools) | ||||
|        ("bedtools" ,bedtools) | ||||
|        ("r-minimal" ,r-minimal) | ||||
|        ("r-rmarkdown" ,r-rmarkdown) | ||||
|        ("r-ggplot2" ,r-ggplot2) | ||||
|  | @ -13087,35 +13096,6 @@ known and yet unknown splice junctions.  Circular-to-linear ratios of circRNAs | |||
| can be calculated, and a number of descriptive plots easily generated.") | ||||
|     (license license:artistic2.0))) | ||||
| 
 | ||||
| (define-public r-loomr | ||||
|   (let ((commit "df0144bd2bbceca6fadef9edc1bbc5ca672d4739") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "r-loomr") | ||||
|       (version (git-version "0.2.0" revision commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/mojaveazure/loomR.git") | ||||
|                (commit commit))) | ||||
|          (file-name (git-file-name name version)) | ||||
|          (sha256 | ||||
|           (base32 | ||||
|            "1b1g4dlmfdyhn56bz1mkh9ymirri43wiz7rjhs7py3y7bdw1s3yr")))) | ||||
|       (build-system r-build-system) | ||||
|       (propagated-inputs | ||||
|        `(("r-r6" ,r-r6) | ||||
|          ("r-hdf5r" ,r-hdf5r) | ||||
|          ("r-iterators" ,r-iterators) | ||||
|          ("r-itertools" ,r-itertools) | ||||
|          ("r-matrix" ,r-matrix))) | ||||
|       (home-page "https://github.com/mojaveazure/loomR") | ||||
|       (synopsis "R interface for loom files") | ||||
|       (description "This package provides an R interface to access, create, | ||||
| and modify loom files.  loomR aims to be completely compatible with loompy.") | ||||
|       (license license:gpl3)))) | ||||
| 
 | ||||
| (define-public gffread | ||||
|   ;; We cannot use the tagged release because it is not in sync with gclib. | ||||
|   ;; See https://github.com/gpertea/gffread/issues/26 | ||||
|  | @ -14755,3 +14735,71 @@ ATAC-seq results.  It was written to make it easier to spot differences that | |||
| might be caused by ATAC-seq library prep or sequencing.  The main program, | ||||
| @code{ataqv}, examines aligned reads and reports some basic metrics.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public r-psiplot | ||||
|   (package | ||||
|     (name "r-psiplot") | ||||
|     (version "2.3.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/kcha/psiplot.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "08438h16cfry5kqh3y9hs8q1b1a8bxhblsm75knviz5r6q0n1jxh")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-mass" ,r-mass) | ||||
|        ("r-dplyr" ,r-dplyr) | ||||
|        ("r-tidyr" ,r-tidyr) | ||||
|        ("r-purrr" ,r-purrr) | ||||
|        ("r-readr" ,r-readr) | ||||
|        ("r-magrittr" ,r-magrittr) | ||||
|        ("r-ggplot2" ,r-ggplot2))) | ||||
|     (home-page "https://github.com/kcha/psiplot") | ||||
|     (synopsis "Plot percent spliced-in values of alternatively-spliced exons") | ||||
|     (description | ||||
|      "PSIplot is an R package for generating plots of @dfn{percent | ||||
| spliced-in} (PSI) values of alternatively-spliced exons that were computed by | ||||
| vast-tools, an RNA-Seq pipeline for alternative splicing analysis.  The plots | ||||
| are generated using @code{ggplot2}.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public tbsp | ||||
|   (let ((commit "ec8fff4410cfb13a677dbbb95cbbc60217e64907") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "tbsp") | ||||
|       (version (git-version "1.0.0" revision commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/phoenixding/tbsp.git") | ||||
|                (commit commit))) | ||||
|          (sha256 | ||||
|           (base32 | ||||
|            "025ym14x8gbd6hb55lsinqj6f5qzw36i10klgs7ldzxxd7s39ki1")))) | ||||
|       (build-system python-build-system) | ||||
|       (arguments '(#:tests? #f))        ; no tests included | ||||
|       (inputs | ||||
|        `(("python-matplotlib" ,python-matplotlib) | ||||
|          ("python-networkx" ,python-networkx) | ||||
|          ("python-numpy" ,python-numpy) | ||||
|          ("python-pybigwig" ,python-pybigwig) | ||||
|          ("python-biopython" ,python-biopython) | ||||
|          ("python-scikit-learn" ,python-scikit-learn) | ||||
|          ("python-scipy" ,python-scipy))) | ||||
|       (home-page "https://github.com/phoenixding/tbsp/") | ||||
|       (synopsis "SNP-based trajectory inference") | ||||
|       (description | ||||
|        "Several studies focus on the inference of developmental and response | ||||
| trajectories from single cell RNA-Seq (scRNA-Seq) data.  A number of | ||||
| computational methods, often referred to as pseudo-time ordering, have been | ||||
| developed for this task.  CRISPR has also been used to reconstruct lineage | ||||
| trees by inserting random mutations.  The tbsp package implements an | ||||
| alternative method to detect significant, cell type specific sequence | ||||
| mutations from scRNA-Seq data.") | ||||
|       (license license:expat)))) | ||||
|  |  | |||
|  | @ -1,8 +1,7 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2014 John Darrington <jmd@gnu.org> | ||||
| ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -55,6 +54,12 @@ | |||
|              #t)) | ||||
|          (replace 'configure | ||||
|            (lambda _ (invoke "make" "defconfig"))) | ||||
|          (add-after 'configure 'dont-install-to-usr | ||||
|            (lambda _ | ||||
|              (substitute* ".config" | ||||
|                (("# CONFIG_INSTALL_NO_USR is not set") | ||||
|                 "CONFIG_INSTALL_NO_USR=y")) | ||||
|              #t)) | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              (substitute* '("testsuite/du/du-s-works" | ||||
|  | @ -133,7 +138,12 @@ any small or embedded system.") | |||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (invoke "make" | ||||
|                        (string-append "PREFIX=" out) | ||||
|                        "install"))))) | ||||
|                        "install")))) | ||||
|          (add-after 'install 'remove-usr-directory | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (delete-file-recursively (string-append out "/usr")) | ||||
|                #t)))) | ||||
|        #:test-target "tests")) | ||||
|     (native-inputs `(("bc" ,bc))) | ||||
|     (synopsis "Many common UNIX utilities in a single executable") | ||||
|  |  | |||
|  | @ -925,6 +925,27 @@ result back.") | |||
| (define-public python2-pytest-xdist | ||||
|   (package-with-python2 python-pytest-xdist)) | ||||
| 
 | ||||
| (define-public python-pytest-timeout | ||||
|   (package | ||||
|     (name "python-pytest-timeout") | ||||
|     (version "1.3.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "pytest-timeout" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1cczcjhw4xx5sjkhxlhc5c1bkr7x6fcyx12wrnvwfckshdvblc2a")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-pytest" ,python-pytest))) | ||||
|     (home-page "http://bitbucket.org/pytest-dev/pytest-timeout/") | ||||
|     (synopsis "Plugin for py.test to abort hanging tests") | ||||
|     (description | ||||
|      "This package provides a py.test plugin that aborts hanging tests after a | ||||
| timeout has been exceeded.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public python-scripttest | ||||
|   (package | ||||
|     (name "python-scripttest") | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -98,6 +99,7 @@ | |||
|     "third_party/angle/third_party/vulkan-tools" ;ASL2.0 | ||||
|     "third_party/angle/third_party/vulkan-validation-layers" ;ASL2.0 | ||||
|     "third_party/apple_apsl" ;APSL2.0 | ||||
|     "third_party/axe-core" ;MPL2.0 | ||||
|     "third_party/blink" ;BSD-3, LGPL2+ | ||||
|     "third_party/boringssl" ;OpenSSL/ISC (Google additions are ISC) | ||||
|     "third_party/boringssl/src/third_party/fiat" ;Expat | ||||
|  | @ -117,13 +119,14 @@ | |||
|     "third_party/ced" ;BSD-3 | ||||
|     "third_party/cld_3" ;ASL2.0 | ||||
|     "third_party/crashpad" ;ASL2.0 | ||||
|     "third_party/crashpad/crashpad/third_party/lss" ;ASL2.0 | ||||
|     "third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h" ;Zlib | ||||
|     "third_party/crc32c" ;BSD-3 | ||||
|     "third_party/cros_system_api" ;BSD-3 | ||||
|     "third_party/dav1d" ;BSD-2 | ||||
|     "third_party/dawn" ;ASL2.0 | ||||
|     "third_party/dom_distiller_js" ;BSD-3 | ||||
|     "third_party/emoji-segmenter" ;ASL2.0 | ||||
|     "third_party/fips181" ;BSD-3 | ||||
|     "third_party/flatbuffers" ;ASL2.0 | ||||
|     "third_party/glslang" ;BSD-3, Expat, ASL2.0 | ||||
|     "third_party/google_input_tools" ;ASL2.0 | ||||
|  | @ -166,6 +169,7 @@ | |||
|     "third_party/pdfium/third_party/bigint" ;Public domain, BSD-3 | ||||
|     "third_party/pdfium/third_party/skia_shared" ;BSD-3 | ||||
|     "third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType | ||||
|     "third_party/pffft" ;the "FFTPACK" license, similar to BSD-3 | ||||
|     "third_party/ply" ;BSD-3 | ||||
|     "third_party/polymer" ;BSD-3 | ||||
|     "third_party/protobuf" ;BSD-3 | ||||
|  | @ -223,54 +227,58 @@ from forcing GEXP-PROMISE." | |||
|                       #:system system | ||||
|                       #:guile-for-build guile))) | ||||
| 
 | ||||
| (define %chromium-version "74.0.3729.169") | ||||
| (define %ungoogled-revision "d2beaeff47a6e97b8909163147ad6b4058238f36") | ||||
| (define %debian-revision "debian/74.0.3729.108-1") | ||||
| (define %chromium-version "75.0.3770.100") | ||||
| (define %ungoogled-revision "5d8abc38b43a62f379615a0dc972b29d9aebb4b4") | ||||
| (define %debian-revision "debian/75.0.3770.90-1") | ||||
| (define package-revision "0") | ||||
| 
 | ||||
| (define %package-version (string-append %chromium-version "-" | ||||
|                                         package-revision "." | ||||
|                                         (string-take %ungoogled-revision 7))) | ||||
| 
 | ||||
| (define %chromium-origin | ||||
|   (origin | ||||
|     (method url-fetch) | ||||
|     (uri (string-append "https://commondatastorage.googleapis.com" | ||||
|                         "/chromium-browser-official/chromium-" | ||||
|                         %chromium-version ".tar.xz")) | ||||
|     (sha256 | ||||
|      (base32 | ||||
|       "187wfdxw6ji4302pbn0kyi9b859ydri7gns0wlsrd7vd3c8604wy")))) | ||||
| 
 | ||||
| (define %ungoogled-origin | ||||
|   (origin | ||||
|     (method git-fetch) | ||||
|     (uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium") | ||||
|                         (commit %ungoogled-revision))) | ||||
|     (file-name (git-file-name "ungoogled-chromium" | ||||
|                               (string-take %ungoogled-revision 7))) | ||||
|     (sha256 | ||||
|      (base32 | ||||
|       "1vk8jzzsn20ysn4nlz84mwwhfa9nnywzd1lrahlhcky9pf6xzpwa")))) | ||||
| 
 | ||||
| (define %debian-origin | ||||
|   (origin | ||||
|     (method git-fetch) | ||||
|     (uri (git-reference | ||||
|           (url "https://salsa.debian.org/chromium-team/chromium.git") | ||||
|           (commit %debian-revision))) | ||||
|     (file-name (git-file-name "debian-chromium-packaging" | ||||
|                               (if (string-prefix? "debian/" %debian-revision) | ||||
|                                   (cadr (string-split %debian-revision #\/)) | ||||
|                                   (string-take %debian-revision 7)))) | ||||
|     (sha256 | ||||
|      (base32 | ||||
|       "0sh6z2lx44zb31qrpa29vm0sw09dxi7i9h6fsq3ivfxjs7v98bbx")))) | ||||
| 
 | ||||
| ;; This is a "computed" origin that does the following: | ||||
| ;; *) Runs the Ungoogled scripts on a pristine Chromium tarball. | ||||
| ;; *) Applies Debians Chromium patches, for their unbundling and GCC work. | ||||
| ;; *) Prunes all third_party directories that are not explicitly preserved. | ||||
| ;; *) Adjusts "GN" build files such that system libraries are preferred. | ||||
| (define ungoogled-chromium-source | ||||
|   (let ((chromium-source | ||||
|          (origin | ||||
|            (method url-fetch) | ||||
|            (uri (string-append "https://commondatastorage.googleapis.com" | ||||
|                                "/chromium-browser-official/chromium-" | ||||
|                                %chromium-version ".tar.xz")) | ||||
|            (sha256 | ||||
|             (base32 | ||||
|              "1d0c3asfhqh6wlzngajcl0v2wn573m1jd1zqci9bcm3z048043q7")))) | ||||
|         (ungoogled-source | ||||
|          (origin | ||||
|            (method git-fetch) | ||||
|            (uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium") | ||||
|                                (commit %ungoogled-revision))) | ||||
|            (file-name (git-file-name "ungoogled-chromium" | ||||
|                                      (string-take %ungoogled-revision 7))) | ||||
|            (sha256 | ||||
|             (base32 | ||||
|              "04schaaqhnkrgh0p1p0wyjd5aybpxmj3kfnyipwy5nh7d39afymc")))) | ||||
|         (debian-source | ||||
|          (origin | ||||
|            (method git-fetch) | ||||
|            (uri (git-reference | ||||
|                  (url "https://salsa.debian.org/chromium-team/chromium.git") | ||||
|                  (commit %debian-revision))) | ||||
|            (file-name (git-file-name "debian-chromium-packaging" | ||||
|                                      (if (string-prefix? "debian/" %debian-revision) | ||||
|                                          (cadr (string-split %debian-revision #\/)) | ||||
|                                          (string-take %debian-revision 7)))) | ||||
|            (sha256 | ||||
|             (base32 | ||||
|              "1bn0c86sxkkxgdz0i88y0zh4zr39l6379r2rhgk3b3qbvwz25s3j"))))) | ||||
| 
 | ||||
|   (let ((chromium-source %chromium-origin) | ||||
|         (ungoogled-source %ungoogled-origin) | ||||
|         (debian-source %debian-origin)) | ||||
|     (origin | ||||
|       (method computed-origin-method) | ||||
|       (file-name (string-append "ungoogled-chromium-" %package-version ".tar.xz")) | ||||
|  | @ -335,7 +343,6 @@ from forcing GEXP-PROMISE." | |||
|                                (when (and (> (string-length line) 1) | ||||
|                                           ;; Skip the Debian-specific ones. | ||||
|                                           (not (string-prefix? "debianization/" line)) | ||||
|                                           (not (string-prefix? "gcc6/" line)) | ||||
|                                           ;; And those that conflict with Ungoogled. | ||||
|                                           (not (any (cute string-suffix? <> line) | ||||
|                                                     '("widevine-buildflag.patch" | ||||
|  | @ -397,6 +404,9 @@ from forcing GEXP-PROMISE." | |||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f | ||||
|        ;; Chromiums build processes may consume up to 8GiB of memory per core. | ||||
|        ;; Disable parallel builds to avoid thrashing end user systems. | ||||
|        #:parallel-build? #f | ||||
|        ;; FIXME: Chromiums RUNPATH lacks entries for some libraries, so | ||||
|        ;; we have to disable validation and add a wrapper below. | ||||
|        #:validate-runpath? #f | ||||
|  | @ -434,6 +444,7 @@ from forcing GEXP-PROMISE." | |||
|              "enable_reporting=false" | ||||
|              "enable_service_discovery=false" | ||||
|              "enable_swiftshader=false" | ||||
|              "enable_vr=false" | ||||
|              "enable_widevine=false" | ||||
|              ;; Disable type-checking for the Web UI to avoid a Java dependency. | ||||
|              "closure_compile=false" | ||||
|  | @ -597,9 +608,11 @@ from forcing GEXP-PROMISE." | |||
|                (format #t "Dumping configure flags...\n") | ||||
|                (invoke "gn" "args" "out/Release" "--list")))) | ||||
|          (replace 'build | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|            (lambda* (#:key (parallel-build? #t) #:allow-other-keys) | ||||
|              (invoke "ninja" "-C" "out/Release" | ||||
|                      "-j" (number->string (parallel-job-count)) | ||||
|                      "-j" (if parallel-build? | ||||
|                               (number->string (parallel-job-count)) | ||||
|                               "1") | ||||
|                      "chrome" | ||||
|                      "chromedriver"))) | ||||
|          (replace 'install | ||||
|  | @ -643,12 +656,6 @@ from forcing GEXP-PROMISE." | |||
|                            (scandir "." (cut regexp-exec install-regexp <>))) | ||||
|                  (copy-file "chrome" (string-append lib "/chromium")) | ||||
| 
 | ||||
|                  ;; TODO: Install icons from "../../chrome/app/themes" into | ||||
|                  ;; "out/share/icons/hicolor/$size". | ||||
|                  (install-file | ||||
|                   "product_logo_48.png" | ||||
|                   (string-append out "/share/icons/48x48/chromium.png")) | ||||
| 
 | ||||
|                  (copy-recursively "locales" locales) | ||||
|                  (copy-recursively "resources" resources) | ||||
| 
 | ||||
|  | @ -662,8 +669,18 @@ from forcing GEXP-PROMISE." | |||
|                      (,(string-append lib ":" nss "/lib/nss:" mesa "/lib:" | ||||
|                                       udev "/lib"))) | ||||
|                    ;; Avoid file manager crash.  See <https://bugs.gnu.org/26593>. | ||||
|                    `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/share")))) | ||||
|                  #t))))))) | ||||
|                    `("XDG_DATA_DIRS" ":" prefix (,(string-append gtk+ "/share"))))) | ||||
| 
 | ||||
|                (with-directory-excursion "chrome/app/theme/chromium" | ||||
|                  (for-each | ||||
|                   (lambda (size) | ||||
|                     (let ((icons (string-append out "/share/icons/hicolor/" | ||||
|                                                 size "x" size "/apps"))) | ||||
|                       (mkdir-p icons) | ||||
|                       (copy-file (string-append "product_logo_" size ".png") | ||||
|                                  (string-append icons "/chromium.png")))) | ||||
|                   '("22" "24" "48" "64" "128" "256"))) | ||||
|                #t)))))) | ||||
|     (native-inputs | ||||
|      `(("bison" ,bison) | ||||
|        ("gcc" ,gcc-8) | ||||
|  |  | |||
|  | @ -46,147 +46,6 @@ | |||
|   #:use-module (gnu packages xml) | ||||
|   #:use-module (guix build-system gnu)) | ||||
| 
 | ||||
| (define-public hydra | ||||
|   (let ((commit "1ff48da3d3d4a425063f5b7dd0b89d35270f8932")) | ||||
|     (package | ||||
|       (name "hydra") | ||||
|       (version (string-append "20151030." (string-take commit 7))) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://github.com/NixOS/hydra") | ||||
|                       (commit commit))) | ||||
|                 (file-name (string-append name "-" version)) | ||||
|                 (patches (search-patches | ||||
|                           ;; TODO: Remove once we have a darcs input | ||||
|                           "hydra-disable-darcs-test.patch")) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0ni8i8v1nxxfr51rz8m6znwpbm77vr7i05k506hmgmg32r938lap")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (native-inputs | ||||
|        `(("unzip" ,unzip) | ||||
|          ("pkg-config" ,pkg-config) | ||||
|          ;; For documentation | ||||
|          ("dblatex" ,dblatex) | ||||
|          ("xsltproc" ,libxslt) | ||||
|          ("docbook-xsl" ,docbook-xsl) | ||||
|          ;; For bootstrap | ||||
|          ("autoconf" ,autoconf) | ||||
|          ("automake" ,automake) | ||||
|          ("libtool" ,libtool) | ||||
|          ;; For tests | ||||
|          ("git" ,git) | ||||
|          ("subversion" ,subversion) | ||||
|          ("mercurial" ,mercurial) | ||||
|          ("bazaar" ,bazaar))) | ||||
|       (inputs | ||||
|        `(("libpqxx" ,libpqxx) | ||||
|          ("perl" ,perl) | ||||
|          ("guile" ,guile-2.0) | ||||
|          ("openssl" ,openssl) | ||||
|          ("bzip2" ,bzip2) | ||||
|          ("gzip" ,gzip) | ||||
|          ("sed" ,sed) | ||||
|          ("starman" ,starman) | ||||
|          ("git" ,git) | ||||
|          ("subversion" ,subversion) | ||||
|          ("mercurial" ,mercurial) | ||||
|          ("bazaar" ,bazaar) | ||||
|          ("nix" ,nix) | ||||
|          ;; Lots o' perl modules... | ||||
|          ("perl-catalyst-action-rest" ,perl-catalyst-action-rest) | ||||
|          ("perl-catalyst-authentication-store-dbix-class" | ||||
|           ,perl-catalyst-authentication-store-dbix-class) | ||||
|          ("perl-catalyst-devel" ,perl-catalyst-devel) | ||||
|          ("perl-catalyst-dispatchtype-regex" ,perl-catalyst-dispatchtype-regex) | ||||
|          ("perl-catalyst-plugin-accesslog" ,perl-catalyst-plugin-accesslog) | ||||
|          ("perl-catalyst-plugin-authorization-roles" | ||||
|           ,perl-catalyst-plugin-authorization-roles) | ||||
|          ("perl-catalyst-plugin-captcha" ,perl-catalyst-plugin-captcha) | ||||
|          ("perl-catalyst-plugin-session-state-cookie" | ||||
|           ,perl-catalyst-plugin-session-state-cookie) | ||||
|          ("perl-catalyst-plugin-session-store-fastmmap" | ||||
|           ,perl-catalyst-plugin-session-store-fastmmap) | ||||
|          ("perl-catalyst-plugin-stacktrace" ,perl-catalyst-plugin-stacktrace) | ||||
|          ("perl-catalyst-traitfor-request-proxybase" | ||||
|           ,perl-catalyst-traitfor-request-proxybase) | ||||
|          ("perl-catalyst-view-download" ,perl-catalyst-view-download) | ||||
|          ("perl-catalyst-view-json" ,perl-catalyst-view-json) | ||||
|          ("perl-catalyst-view-tt" ,perl-catalyst-view-tt) | ||||
|          ("perl-catalystx-roleapplicator" ,perl-catalystx-roleapplicator) | ||||
|          ("perl-catalystx-script-server-starman" | ||||
|           ,perl-catalystx-script-server-starman) | ||||
|          ("perl-crypt-randpasswd" ,perl-crypt-randpasswd) | ||||
|          ("perl-data-dump" ,perl-data-dump) | ||||
|          ("perl-datetime" ,perl-datetime) | ||||
|          ("perl-dbd-pg" ,perl-dbd-pg) | ||||
|          ("perl-dbd-sqlite" ,perl-dbd-sqlite) | ||||
|          ("perl-digest-sha1" ,perl-digest-sha1) | ||||
|          ("perl-email-mime" ,perl-email-mime) | ||||
|          ("perl-email-sender" ,perl-email-sender) | ||||
|          ("perl-file-slurp" ,perl-file-slurp) | ||||
|          ("perl-io-compress" ,perl-io-compress) | ||||
|          ("perl-ipc-run" ,perl-ipc-run) | ||||
|          ("perl-json-any" ,perl-json-any) | ||||
|          ("perl-json-xs" ,perl-json-xs) | ||||
|          ("perl-libwww" ,perl-libwww) | ||||
|          ("perl-lwp-protocol-https" ,perl-lwp-protocol-https) | ||||
|          ("perl-net-amazon-s3" ,perl-net-amazon-s3) | ||||
|          ("perl-net-statsd" ,perl-net-statsd) | ||||
|          ("perl-padwalker" ,perl-padwalker) | ||||
|          ("perl-readonly" ,perl-readonly) | ||||
|          ("perl-set-scalar" ,perl-set-scalar) | ||||
|          ("perl-sql-splitstatement" ,perl-sql-splitstatement) | ||||
|          ("perl-sys-hostname-long" ,perl-sys-hostname-long) | ||||
|          ("perl-text-diff" ,perl-text-diff) | ||||
|          ("perl-text-table" ,perl-text-table) | ||||
|          ("perl-xml-simple" ,perl-xml-simple))) | ||||
|       (arguments | ||||
|        `(#:configure-flags | ||||
|          (let ((docbook (assoc-ref %build-inputs "docbook-xsl"))) | ||||
|            (list (string-append "--with-docbook-xsl=" | ||||
|                                 docbook "/xml/xsl/docbook-xsl-" | ||||
|                                 ,(package-version docbook-xsl)) | ||||
|                  (string-append "--docdir=" %output | ||||
|                                 "/doc/hydra-" ,version))) | ||||
|          #:phases (modify-phases %standard-phases | ||||
|                     (add-before | ||||
|                      'check 'check-setup | ||||
|                      (lambda _ (setenv "LOGNAME" "test.log"))) | ||||
|                     (add-after | ||||
|                      'install 'wrap-program | ||||
|                      (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|                        (let ((out (assoc-ref outputs "out"))) | ||||
|                          (for-each | ||||
|                           (lambda (file) | ||||
|                             (wrap-program file | ||||
|                               `("PATH" ":" prefix | ||||
|                                 (,(string-append out "/bin") | ||||
|                                  ,@(map (lambda (i) | ||||
|                                           (string-append (assoc-ref inputs i) | ||||
|                                                          "/bin")) | ||||
|                                         '("subversion" "git" "bazaar" | ||||
|                                           "mercurial" "coreutils" "gzip" | ||||
|                                           "sed" "unzip" "nix")))) | ||||
|                               `("PERL5LIB" ":" prefix | ||||
|                                 (,(string-append out "/libexec/hydra/lib") | ||||
|                                  ,@(search-path-as-string->list | ||||
|                                     (getenv "PERL5LIB")))) | ||||
|                               `("HYDRA_RELEASE" = (,,version)) | ||||
|                               `("HYDRA_HOME" = | ||||
|                                 (,(string-append out "/libexec/hydra"))) | ||||
|                               `("NIX_RELEASE" = (,,(package-version nix))))) | ||||
|                           (find-files (string-append out "/bin") | ||||
|                                       ".*")))))))) | ||||
|       (home-page "https://nixos.org/hydra") | ||||
|       (synopsis "Continuous build system") | ||||
|       (description | ||||
|        "Hydra is a tool for continuous integration testing and software | ||||
| release that uses a purely functional language to describe build jobs and | ||||
| their dependencies.") | ||||
|       (license l:gpl3+)))) | ||||
| 
 | ||||
| (define-public cuirass | ||||
|   (let ((commit "0b40dca734468e8b12b3ff58e3e779679f17d38e") | ||||
|         (revision "21")) | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> | ||||
| ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> | ||||
|  | @ -160,13 +160,22 @@ sharing) to clients via USB, ethernet, WiFi, cellular and Bluetooth.") | |||
|              (invoke "qmake" | ||||
|                      (string-append "PREFIX=" | ||||
|                                     (assoc-ref outputs "out"))))) | ||||
|          (add-before 'install 'fix-Makefiles | ||||
|          (add-before 'build 'fix-Makefiles | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (substitute* (find-files "." "Makefile") | ||||
|                  (("INSTALL_ROOT)") | ||||
|                   (string-append "INSTALL_ROOT)" out)) | ||||
|                  (("/usr/bin") "/bin")))))))) | ||||
|                  (("/usr") "")) | ||||
|                (substitute* '("apps/cmstapp/cmstapp.pro" | ||||
|                               "apps/cmstapp/code/control_box/controlbox.cpp" | ||||
|                               "apps/rootapp/rootapp.pro" | ||||
|                               "apps/rootapp/system/org.cmst.roothelper.service" | ||||
|                               "cmst.pri" | ||||
|                               "cmst.pro") | ||||
|                  (("/usr") out) | ||||
|                  (("/etc") (string-append out "/etc"))) | ||||
|                #t)))))) | ||||
|     (home-page "https://github.com/andrew-bibb/cmst") | ||||
|     (synopsis "Qt frontend for Connman") | ||||
|     (description | ||||
|  |  | |||
|  | @ -453,13 +453,13 @@ in systems and applications.") | |||
| (define-public r-servr | ||||
|   (package | ||||
|     (name "r-servr") | ||||
|     (version "0.13") | ||||
|     (version "0.14") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "servr" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1n5haqkshrxcx557f1k7nrisvq3wak8v370s2r6yv691b8hvbscs")))) | ||||
|                 "0zjjnfgas9d16fihksyk24kgkkqswb4sd0rz51id2ni1ymdyasjk")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-httpuv" ,r-httpuv) | ||||
|  | @ -4107,14 +4107,14 @@ Cryer and Kung-Sik Chan.") | |||
| (define-public r-extradistr | ||||
|   (package | ||||
|     (name "r-extradistr") | ||||
|     (version "1.8.10") | ||||
|     (version "1.8.11") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "extraDistr" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "00lvqp5bb3iak5myiz4rqm887bkq9sdh7aybmz84mmfni6q01m28")))) | ||||
|          "1vvqv1d4hxa025gmm8cbiph63qsqy87l3ri5idd524gyz3chbcl3")))) | ||||
|     (properties `((upstream-name . "extraDistr"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  | @ -5962,18 +5962,18 @@ vice versa), or to deal with multiple declared missing values.") | |||
| (define-public r-sjmisc | ||||
|   (package | ||||
|     (name "r-sjmisc") | ||||
|     (version "2.7.9") | ||||
|     (version "2.8.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "sjmisc" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "11iiap0w5v0dszgwx4pi3j1zf9vnlw1ml1wjvq1hg9iz1plgbfnc")))) | ||||
|          "0pgavkygsj8fa591pmasx78b4gd32sf2pa067yqvi82xha7dj5k4")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-dplyr" ,r-dplyr) | ||||
|        ("r-haven" ,r-haven) | ||||
|        ("r-insight" ,r-insight) | ||||
|        ("r-magrittr" ,r-magrittr) | ||||
|        ("r-purrr" ,r-purrr) | ||||
|        ("r-rlang" ,r-rlang) | ||||
|  | @ -6584,16 +6584,18 @@ second male (P2) based on the best fit distribution.") | |||
| (define-public r-abcrf | ||||
|   (package | ||||
|     (name "r-abcrf") | ||||
|     (version "1.7.1") | ||||
|     (version "1.8") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "abcrf" version)) | ||||
|        (sha256 | ||||
|         (base32 "06vy3inikrr9hv36q4djhrgzi9zizdfnhz17wpra8kadmr7qj441")))) | ||||
|         (base32 "0r31ki89z8zzcffm0yvd2zw3q96rk6g6fnwwkql902mgajbrha1f")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-mass" ,r-mass) | ||||
|      `(("r-doparallel" ,r-doparallel) | ||||
|        ("r-foreach" ,r-foreach) | ||||
|        ("r-mass" ,r-mass) | ||||
|        ("r-matrixstats" ,r-matrixstats) | ||||
|        ("r-ranger" ,r-ranger) | ||||
|        ("r-rcpp" ,r-rcpp) | ||||
|  | @ -7692,14 +7694,14 @@ Hothorn, Westfall, 2010, CRC Press).") | |||
| (define-public r-emmeans | ||||
|   (package | ||||
|     (name "r-emmeans") | ||||
|     (version "1.3.4") | ||||
|     (version "1.3.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "emmeans" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "09gxphan34c615y4lhjdqkg5cz4ih9b1r3bb4chs3mwmiav1rxqn")))) | ||||
|          "0zyink60132f2a0491a94bf67hq8a0bwmw5wn19l0ms8iyiml9d2")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-estimability" ,r-estimability) | ||||
|  | @ -9404,14 +9406,14 @@ definiteness of a matrix.") | |||
| (define-public r-rspectra | ||||
|   (package | ||||
|     (name "r-rspectra") | ||||
|     (version "0.14-0") | ||||
|     (version "0.15-0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "RSpectra" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "12w5vnz39gyciza0fl7fw4f9i9kjw763h3mvk1sxd97c5dsn26jg")))) | ||||
|          "1ab975scdqaxdna9sayjl6l14hz991y0pc8c8ah48w000616km8s")))) | ||||
|     (properties `((upstream-name . "RSpectra"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  | @ -9639,14 +9641,14 @@ conditional reporting based on the current \"output level\".") | |||
| (define-public r-tractor-base | ||||
|   (package | ||||
|     (name "r-tractor-base") | ||||
|     (version "3.3.0") | ||||
|     (version "3.3.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "tractor.base" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0i62dwra0yh565ryz75byfgqv22bqwz7138zs48w46yj2h8q9hyj")))) | ||||
|          "0y5gm0y4chl30f5qqq8qiiw4j8g32s4i9xrvyp3cwg902kf2p86i")))) | ||||
|     (properties `((upstream-name . "tractor.base"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  | @ -11746,14 +11748,14 @@ numbers from ZIP and ZINB distributions.") | |||
| (define-public r-nor1mix | ||||
|   (package | ||||
|     (name "r-nor1mix") | ||||
|     (version "1.2-3") | ||||
|     (version "1.3-0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "nor1mix" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1bvk888qml9qr7q703s7qzgm0sqfchcjdjqwqllm5vrjx0cnapj3")))) | ||||
|          "1817wcvlmxs70vs4db0jkxd7i037744zz8ay3c2a9949z29fxr4w")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://cran.r-project.org/web/packages/nor1mix/") | ||||
|     (synopsis "Normal (1-d) mixture models") | ||||
|  | @ -12405,14 +12407,14 @@ sampling.") | |||
| (define-public r-deldir | ||||
|   (package | ||||
|     (name "r-deldir") | ||||
|     (version "0.1-16") | ||||
|     (version "0.1-21") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "deldir" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0549kj0hlkdyvm5axsm3np30wg53fm2pxybijzw0avlgsd2y2n2q")))) | ||||
|          "03392pl6j8rm3n32xrfkyfx866k1vm5sj87pva70yyiwh70vrnmr")))) | ||||
|     (build-system r-build-system) | ||||
|     (native-inputs `(("gfortran" ,gfortran))) | ||||
|     (home-page "https://cran.r-project.org/web/packages/deldir") | ||||
|  | @ -12645,14 +12647,14 @@ either PDF/EPS files.") | |||
| (define-public r-polspline | ||||
|   (package | ||||
|     (name "r-polspline") | ||||
|     (version "1.1.14") | ||||
|     (version "1.1.15") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "polspline" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0g4s5nwi13yfs6b169yw8vrs48nvjyc014k2v7ybcxarl8z81va0")))) | ||||
|          "19zs4kpagsrzhng1byjbz1c4jxnfk58h4rgr096ml1bjwrgamnwc")))) | ||||
|     (build-system r-build-system) | ||||
|     (native-inputs `(("gfortran" ,gfortran))) | ||||
|     (home-page "https://cran.r-project.org/web/packages/polspline/") | ||||
|  |  | |||
							
								
								
									
										92
									
								
								gnu/packages/crates-io.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										92
									
								
								gnu/packages/crates-io.scm
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,92 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
| ;;; GNU Guix is free software; you can redistribute it and/or modify it | ||||
| ;;; under the terms of the GNU General Public License as published by | ||||
| ;;; the Free Software Foundation; either version 3 of the License, or (at | ||||
| ;;; your option) any later version. | ||||
| ;;; | ||||
| ;;; GNU Guix is distributed in the hope that it will be useful, but | ||||
| ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| ;;; GNU General Public License for more details. | ||||
| ;;; | ||||
| ;;; You should have received a copy of the GNU General Public License | ||||
| ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| (define-module (gnu packages crates-io) | ||||
|   #:use-module (guix build-system cargo) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages)) | ||||
| 
 | ||||
| (define-public rust-unicode-xid | ||||
|   (package | ||||
|     (name "rust-unicode-xid") | ||||
|     (version "0.1.0") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (crate-uri "unicode-xid" version)) | ||||
|         (file-name | ||||
|           (string-append name "-" version ".tar.gz")) | ||||
|         (sha256 | ||||
|           (base32 | ||||
|             "1z57lqh4s18rr4x0j4fw4fmp9hf9346h0kmdgqsqx0fhjr3k0wpw")))) | ||||
|     (build-system cargo-build-system) | ||||
|     (home-page | ||||
|       "https://github.com/unicode-rs/unicode-xid") | ||||
|     (synopsis "Determine Unicode XID related properties") | ||||
|     (description "Determine whether characters have the XID_Start | ||||
| or XID_Continue properties according to Unicode Standard Annex #31.") | ||||
|     ;; Dual licensed. | ||||
|     (license (list license:asl2.0 license:expat)))) | ||||
| 
 | ||||
| (define-public rust-proc-macro2 | ||||
|   (package | ||||
|     (name "rust-proc-macro2") | ||||
|     (version "0.4.27") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (crate-uri "proc-macro2" version)) | ||||
|         (file-name | ||||
|           (string-append name "-" version ".tar.gz")) | ||||
|         (sha256 | ||||
|           (base32 | ||||
|             "05c92v787snyaq4ss16vxc9mdv6zndfgsdq8k3hnnyffmsf7ycad")))) | ||||
|     (build-system cargo-build-system) | ||||
|     (arguments | ||||
|       `(#:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid)) | ||||
|         #:cargo-development-inputs (("rust-quote" ,rust-quote)))) | ||||
|     (home-page "https://github.com/alexcrichton/proc-macro2") | ||||
|     (synopsis "Stable implementation of the upcoming new `proc_macro` API") | ||||
|     (description "This package provides a stable implementation of the upcoming new | ||||
| `proc_macro` API.  Comes with an option, off by default, to also reimplement itself | ||||
| in terms of the upstream unstable API.") | ||||
|     ;; Dual licensed. | ||||
|     (license (list license:asl2.0 license:expat)))) | ||||
| 
 | ||||
| (define-public rust-quote | ||||
|   (package | ||||
|     (name "rust-quote") | ||||
|     (version "0.6.12") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (crate-uri "quote" version)) | ||||
|         (file-name | ||||
|           (string-append name "-" version ".tar.gz")) | ||||
|         (sha256 | ||||
|           (base32 | ||||
|             "1nw0klza45hf127kfyrpxsxd5jw2l6h21qxalil3hkr7bnf7kx7s")))) | ||||
|     (build-system cargo-build-system) | ||||
|     (arguments | ||||
|       `(#:cargo-inputs (("rust-proc-macro2" ,rust-proc-macro2)))) | ||||
|     (home-page "https://github.com/dtolnay/quote") | ||||
|     (synopsis "Quasi-quoting macro quote!(...)") | ||||
|     (description "Quasi-quoting macro quote!(...)") | ||||
|     ;; Dual licensed. | ||||
|     (license (list license:asl2.0 license:expat)))) | ||||
|  | @ -34,6 +34,7 @@ | |||
| ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> | ||||
| ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||||
| ;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us> | ||||
| ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -1879,7 +1880,7 @@ database.") | |||
| (define-public perl-db-file | ||||
|  (package | ||||
|   (name "perl-db-file") | ||||
|   (version "1.843") | ||||
|   (version "1.852") | ||||
|   (source | ||||
|     (origin | ||||
|       (method url-fetch) | ||||
|  | @ -1889,7 +1890,7 @@ database.") | |||
|              ".tar.gz")) | ||||
|       (sha256 | ||||
|         (base32 | ||||
|           "0sildz1i3fmh949w1scpjsyjx0cbmfw0yna3y70mc6vbwp8y696y")))) | ||||
|           "14c30xyqx9c1hxw40bqbzls41al8gmklxv5jbk2kknmn4dsrbdrs")))) | ||||
|   (build-system perl-build-system) | ||||
|   (inputs `(("bdb" ,bdb))) | ||||
|   (native-inputs `(("perl-test-pod" ,perl-test-pod))) | ||||
|  |  | |||
|  | @ -38,14 +38,14 @@ | |||
| (define-public dico | ||||
|   (package | ||||
|     (name "dico") | ||||
|     (version "2.7") | ||||
|     (version "2.9") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "mirror://gnu/dico/dico-" | ||||
|                                  version ".tar.xz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "0dg4aacnmlf3ljssd7dwh8z5644xzq8k1501mbsx8nz8p8a9mbsq")))) | ||||
|                "0i9xqhy3h5nlizcmav4mv5ay8ivdgn4l4k0k7fxix3fsc87nijyr")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags (list (string-append "--with-guile-site-dir=" %output | ||||
|  |  | |||
|  | @ -13,6 +13,7 @@ | |||
| ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> | ||||
| ;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> | ||||
| ;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz> | ||||
| ;;; Copyright © 2019 Leo Famulari <leo@famulari.name> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -341,32 +342,31 @@ and can dramatically shorten the lifespan of the drive if left unchecked.") | |||
| (define-public gparted | ||||
|   (package | ||||
|     (name "gparted") | ||||
|     (version "0.33.0") | ||||
|     (version "1.0.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://sourceforge/gparted/gparted/gparted-" | ||||
|                            version "/gparted-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "1ml1ky3s75lbxr91p608q3prsdh9x899mw7nbgk252pqhg4vh8sh")))) | ||||
|         (base32 | ||||
|          "0mdvn85jvy72ff7nds3dakx9kzknh8gx1z8i0w2sf970q03qp2z4")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                      ; tests require a network connection | ||||
|        #:configure-flags '("--disable-scrollkeeper"))) | ||||
|       ;; Tests require access to paths outside the build container, such | ||||
|       ;; as '/dev/disk/by-id' | ||||
|      `(#:tests? #f)) | ||||
|     (inputs | ||||
|      `(("util-linux" ,util-linux) | ||||
|        ("parted" ,parted) | ||||
|        ("glib" ,glib) | ||||
|        ("gtkmm" ,gtkmm-2) | ||||
|        ("gtkmm" ,gtkmm) | ||||
|        ("libxml2" ,libxml2) | ||||
|        ("libxslt" ,libxslt) | ||||
|        ("gnome-doc-utils" ,gnome-doc-utils) | ||||
|        ("docbook-xml" ,docbook-xml-4.2) | ||||
|        ("python" ,python-2) | ||||
|        ("python-libxml2" ,python2-libxml2) | ||||
|        ("which" ,which))) | ||||
|        ("yelp-tools" ,yelp-tools) | ||||
|        ("itstool" ,itstool))) | ||||
|     (native-inputs | ||||
|      `(("intltool" ,intltool) | ||||
|        ("lvm2" ,lvm2) ; for tests | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (home-page "https://gparted.org/") | ||||
|     (synopsis "Partition editor to graphically manage disk partitions") | ||||
|  |  | |||
|  | @ -108,7 +108,7 @@ and BOOTP/TFTP for network booting of diskless machines.") | |||
| (define-public isc-bind | ||||
|   (package | ||||
|     (name "bind") | ||||
|     (version "9.14.2") | ||||
|     (version "9.14.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -116,7 +116,7 @@ and BOOTP/TFTP for network booting of diskless machines.") | |||
|                     "/bind-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "033zqajnj5ys45g899132xkhh9f0hsh76ffv7302wl166xbjfh0f")))) | ||||
|                 "1ymxr38c62w6961j8g2vllnv0s72z7zk4b2j2k8ixdh1rymqm1yf")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (outputs `("out" "utils")) | ||||
|     (inputs | ||||
|  | @ -302,14 +302,14 @@ asynchronous fashion.") | |||
| (define-public nsd | ||||
|   (package | ||||
|     (name "nsd") | ||||
|     (version "4.1.27") | ||||
|     (version "4.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-" | ||||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "1sjfbwr4vq25304hr9vmd9j821g2vzv8lpy95hpsravc80q5zaqv")))) | ||||
|         (base32 "0k57xl3ybdnqjqw9a3dmi7l6qmhkiic6wsghkz08ir809aj1rpsi")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|  | @ -577,14 +577,14 @@ Extensions} (DNSSEC).") | |||
| (define-public knot | ||||
|   (package | ||||
|     (name "knot") | ||||
|     (version "2.8.1") | ||||
|     (version "2.8.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://secure.nic.cz/files/knot-dns/" | ||||
|                            "knot-" version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 "1im2wb8hl394mzni1wavmvfqd7il8s28kcz8w3s4v05nbhzg06xj")) | ||||
|         (base32 "0dx1lp4w33rpa54nns41k4vfdfin6naaskwh132r4qs0l9hl7lh0")) | ||||
|        (modules '((guix build utils))) | ||||
|        (snippet | ||||
|         '(begin | ||||
|  |  | |||
|  | @ -91,6 +91,8 @@ pseudo-terminal (PTY) allocated to a Docker container using the Python | |||
| client.") | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| ;; When updating, check whether python-jsonschema-2.6 can be removed from Guix | ||||
| ;; entirely. | ||||
| (define-public docker-compose | ||||
|   (package | ||||
|     (name "docker-compose") | ||||
|  | @ -107,9 +109,10 @@ client.") | |||
|     (arguments '(#:tests? #f)) | ||||
|     (inputs | ||||
|      `(("python-docker-py" ,python-docker-py) | ||||
|        ("python-docker-pycreds" ,python-docker-pycreds) | ||||
|        ("python-dockerpty" ,python-dockerpty) | ||||
|        ("python-docopt" ,python-docopt) | ||||
|        ("python-jsonschema" ,python-jsonschema) | ||||
|        ("python-jsonschema" ,python-jsonschema-2.6) | ||||
|        ("python-pyyaml" ,python-pyyaml) | ||||
|        ("python-requests" ,python-requests-2.7) | ||||
|        ("python-six" ,python-six) | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com> | ||||
| ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2016, 2017, 2018 Chris Marusich <cmmarusich@gmail.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Chris Marusich <cmmarusich@gmail.com> | ||||
| ;;; Copyright © 2015, 2016, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org> | ||||
| ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
|  | @ -13,7 +13,7 @@ | |||
| ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> | ||||
| ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org> | ||||
| ;;; Copyright © 2016, 2017 ng0 <ng0@n0.is> | ||||
| ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> | ||||
| ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net> | ||||
|  | @ -47,6 +47,8 @@ | |||
| ;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com> | ||||
| ;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com> | ||||
| ;;; Copyright © 2019 LaFreniere, Joseph <joseph@lafreniere.xyz> | ||||
| ;;; Copyright © 2019 Amar Singh <nly@disroot.org> | ||||
| ;;; Copyright © 2019 Baptiste Strazzulla <bstrazzull@hotmail.fr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -545,6 +547,35 @@ handful of functions that are not resource-specific.") | |||
| for editing Racket's Scribble documentation syntax in Emacs.") | ||||
|       (license license:gpl3+)))) | ||||
| 
 | ||||
| (define-public emacs-shroud | ||||
|   (package | ||||
|     (name "emacs-shroud") | ||||
|     (version "1.15.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/o-nly/emacs-shroud.git") | ||||
|              (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "0wvm4lxqcc1p8v7rpqal3bnqgnpk1gs7v18i83f6cvi5d88jkgdg")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-bui" ,emacs-bui) | ||||
|        ("emacs-dash" ,emacs-dash) | ||||
|        ("emacs-f" ,emacs-f) | ||||
|        ("emacs-s" ,emacs-s) | ||||
|        ("gnupg" ,gnupg) | ||||
|        ("shroud" ,shroud))) | ||||
|     (home-page "https://github.com/o-nly/emacs-shroud") | ||||
|     (synopsis "Emacs interface to the Shroud password manager") | ||||
|     (description | ||||
|      "This package provides an Emacs interface to the Shroud password manager, | ||||
| using the Buffers User Interface library.  You can view, copy, and edit secrets | ||||
| from within Emacs.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-unpackaged-el | ||||
|   (let ((commit "f4df7f8dfea715e893b2223adda32545803f5cce") | ||||
|         (revision "1")) | ||||
|  | @ -560,12 +591,15 @@ for editing Racket's Scribble documentation syntax in Emacs.") | |||
|          (file-name (git-file-name name version)) | ||||
|          (sha256 | ||||
|           (base32 | ||||
|            "1yf3zrgqfhnr0az8gn1kqqwnhfi3nc0vbjkcagwcqwk3sp1jda86")))) | ||||
|            "1yf3zrgqfhnr0az8gn1kqqwnhfi3nc0vbjkcagwcqwk3sp1jda86")) | ||||
|          (patches | ||||
|           (search-patches "emacs-unpackaged-req.patch")))) | ||||
|       (build-system emacs-build-system) | ||||
|       (propagated-inputs | ||||
|        `(("emacs-dash" ,emacs-dash) | ||||
|          ("emacs-org" ,emacs-org) | ||||
|          ("emacs-s" ,emacs-s) | ||||
|          ("emacs-hydra" ,emacs-hydra) | ||||
|          ("emacs-use-package" ,emacs-use-package))) | ||||
|       (home-page "https://github.com/alphapapa/unpackaged.el") | ||||
|       (synopsis "Useful snippets of Emacs Lisp code") | ||||
|  | @ -4051,6 +4085,33 @@ transparent background.  If you load it from a GUI, it will default to a | |||
| dark background.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-gruvbox-theme | ||||
|   (package | ||||
|     (name "emacs-gruvbox-theme") | ||||
|     (version "1.28.0") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/greduan/emacs-theme-gruvbox.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "00qq92gp1g55pzm97rh7k0dgxy44pxziridl8kqm4rbpi31r7k9p")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-autothemer" ,emacs-autothemer))) | ||||
|     (home-page "https://github.com/greduan/emacs-theme-gruvbox") | ||||
|     (synopsis "Gruvbox is a retro groove color scheme ported from Vim") | ||||
|     (description | ||||
|      "Gruvbox is heavily inspired by badwolf, jellybeans and solarized. | ||||
| 
 | ||||
| Designed as a bright theme with pastel 'retro groove' colors and light/dark | ||||
| mode switching in the way of solarized.  The main focus when developing gruvbox | ||||
| is to keep colors easily distinguishable, contrast enough and still pleasant | ||||
| for the eyes.") | ||||
|     (license license:expat))) ; MIT license | ||||
| 
 | ||||
| (define-public emacs-2048-game | ||||
|   (package | ||||
|     (name "emacs-2048-game") | ||||
|  | @ -4093,6 +4154,29 @@ of sixteen colors suitable for a wide range of applications.  Base16 is not a | |||
| single theme but a set of guidelines with numerous implementations.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public emacs-solaire-mode | ||||
|   (package | ||||
|     (name "emacs-solaire-mode") | ||||
|     (version "1.0.9") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/hlissner/emacs-solaire-mode.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "011m4r7s6i9lgjymh7jgq5jwwrpz4vmpvp3c8d4ix96v5hi04kzg")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://github.com/hlissner/emacs-solaire-mode") | ||||
|     (synopsis "Change background of file-visiting buffers in Emacs") | ||||
|     (description | ||||
|      "@code{solaire-mode} is inspired by editors which visually distinguish | ||||
| code-editing windows from sidebars, popups, terminals, ecetera.  It changes the | ||||
| background of file-visiting buffers (and certain aspects of the UI) to make | ||||
| them easier to distinguish from other, less important buffers.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public emacs-prescient | ||||
|   (package | ||||
|     (name "emacs-prescient") | ||||
|  | @ -4213,16 +4297,17 @@ regexp that matches all known keywords.") | |||
| (define-public emacs-perspective | ||||
|   (package | ||||
|     (name "emacs-perspective") | ||||
|     (version "1.12") | ||||
|     (version "2.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://github.com/nex3/perspective-el/" | ||||
|                            "archive/" version ".tar.gz")) | ||||
|        (file-name (string-append name "-" version ".tar.gz")) | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/nex3/perspective-el.git") | ||||
|              (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "078ahh0kmhdylq5ib9c81c76kz1n02xwc83pm729d00i84ibviic")))) | ||||
|          "0pd5sqrrz6y3md20yh6ffy32jdcgb1gc9b4j14pm6r54bqxik68h")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://github.com/nex3/perspective-el") | ||||
|     (synopsis "Switch between named \"perspectives\"") | ||||
|  | @ -4305,19 +4390,17 @@ after buffer changes.") | |||
| (define-public emacs-realgud | ||||
|   (package | ||||
|     (name "emacs-realgud") | ||||
|     (version "1.4.5") | ||||
|     (version "1.5.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://elpa.gnu.org/packages/realgud-" | ||||
|                            version ".tar")) | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/realgud/realgud/") | ||||
|              (commit version))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "108wgxg7fb4byaiasgvbxv2hq7b00biq9f0mh9hy6vw4160y5w24")) | ||||
|        (patches | ||||
|         ;; Patch awaiting inclusion upstream (see: | ||||
|         ;; https://github.com/realgud/realgud/pull/226). | ||||
|         (search-patches "emacs-realgud-fix-configure-ac.patch")))) | ||||
|          "0xnick9016wxrgi8v0lycvxhyz8l2k4nfvdpjc5yq476vwrjfzbz")) | ||||
|        (file-name (git-file-name name version)))) | ||||
|     (build-system emacs-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #t | ||||
|  | @ -4336,11 +4419,6 @@ after buffer changes.") | |||
|              (setenv "HOME" (getenv "TMPDIR")))) | ||||
|          (add-before 'patch-el-files 'remove-realgud-pkg.el | ||||
|            (lambda _ | ||||
|              ;; XXX: This file is auto-generated at some point and causes | ||||
|              ;; substitute* to crash during the `patch-el-files' phase with: | ||||
|              ;; ERROR: In procedure stat: No such file or directory: | ||||
|              ;; "./realgud-pkg.el" | ||||
|              (delete-file "./realgud-pkg.el") | ||||
|              ;; FIXME: `patch-el-files' crashes on this file with error: | ||||
|              ;; unable to locate "bashdb". | ||||
|              (delete-file "./test/test-regexp-bashdb.el")))) | ||||
|  | @ -5209,6 +5287,48 @@ If you want to mark a folder manually as a project just create an empty | |||
| and RSS, with a user interface inspired by notmuch.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-elfeed-org | ||||
|   (let ((commit "77b6bbf222487809813de260447d31c4c59902c9")) | ||||
|     (package | ||||
|       (name "emacs-elfeed-org") | ||||
|       (version (git-version "0.1" "1" commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/remyhonig/elfeed-org.git") | ||||
|                (commit commit))) | ||||
|          (file-name (git-file-name name version)) | ||||
|          (sha256 | ||||
|           (base32 "0a2ibka82xq1dhy2z7rd2y9zhcj8rna8357881yz49wf55ccgm53")))) | ||||
|       (build-system emacs-build-system) | ||||
|       (propagated-inputs | ||||
|        `(("emacs-elfeed" ,emacs-elfeed) | ||||
|          ("emacs-org" ,emacs-org) | ||||
|          ("emacs-dash" ,emacs-dash) | ||||
|          ("emacs-s" ,emacs-s))) | ||||
|       (native-inputs | ||||
|        `(("ert-runner" ,emacs-ert-runner) | ||||
|          ("emacs-xtest" ,emacs-xtest))) | ||||
|       (arguments | ||||
|        `(#:tests? #t | ||||
|          #:test-command '("ert-runner" "-L" "org-mode/lisp") | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-before 'check 'chmod | ||||
|              (lambda _ | ||||
|                (chmod "test/fixture-mark-feed-ignore.org" #o644) | ||||
|                #t))))) | ||||
|       (home-page "https://github.com/remyhonig/elfeed-org") | ||||
|       (synopsis "Configure Elfeed with an Org-mode file") | ||||
|       (description | ||||
|        "@code{elfeed-org} lets you manage your Elfeed subscriptions | ||||
| in Org-mode.  Maintaining tags for all RSS feeds is cumbersome using | ||||
| the regular flat list, where there is no hierarchy and tag names are | ||||
| duplicated a lot.  Org-mode makes the book keeping of tags and feeds | ||||
| much easier.") | ||||
|       (license license:gpl3+)))) | ||||
| 
 | ||||
| (define-public emacs-el-x | ||||
|   (package | ||||
|     (name "emacs-el-x") | ||||
|  | @ -7218,19 +7338,20 @@ performance-oriented and tidy.") | |||
| (define-public emacs-default-encrypt | ||||
|   (package | ||||
|     (name "emacs-default-encrypt") | ||||
|     (version "4.3") | ||||
|     (version "4.4") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://www.informationelle-selbstbestimmung-im-internet.de" | ||||
|              "https://informationelle-selbstbestimmung-im-internet.de" | ||||
|              "/emacs/jl-encrypt" version "/jl-encrypt.el")) | ||||
|        (file-name (string-append "jl-encrypt-" version ".el")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "16i3rlfp3jxlqvndn8idylhmczync3gwmy8a019v29vyr48rnnr0")))) | ||||
|          "0w9ggz075j1zwg7d0rv9k8238g600p7czfnnsnawswi7yps2xk78")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://www.informationelle-selbstbestimmung-im-internet.de/Emacs.html") | ||||
|     (home-page | ||||
|      "https://informationelle-selbstbestimmung-im-internet.de/Emacs.html") | ||||
|     (synopsis "Automatically encrypt or sign Gnus messages in Emacs") | ||||
|     (description | ||||
|      "DefaultEncrypt is designed to be used with Gnus in Emacs.  It | ||||
|  | @ -7242,6 +7363,41 @@ DefaultEncrypt, please refer to the home page or read the comments in the | |||
| source file, @file{jl-encrypt.el}.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-extend-smime | ||||
|   (package | ||||
|     (name "emacs-extend-smime") | ||||
|     (version "3.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://informationelle-selbstbestimmung-im-internet.de" | ||||
|              "/emacs/jl-smime" version "/jl-smime.el")) | ||||
|        (file-name (string-append "jl-smime-" version ".el")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1iv8s2wjmv3v5qfwlcy9hvvrmxxvp3f8m1krlr789q7bbh35jynh")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page | ||||
|      "https://informationelle-selbstbestimmung-im-internet.de/Emacs.html") | ||||
|     (synopsis "Improved S/MIME support for Gnus in Emacs") | ||||
|     (propagated-inputs | ||||
|      `(("emacs-default-encrypt" ,emacs-default-encrypt))) | ||||
|     (description | ||||
|      ;; TRANSLATORS: ExtendSMIME, DefaultEncrypt, and emacs-default-encrypt | ||||
|      ;; should not be translated.  The name "emacs-default-encrypt" refers to | ||||
|      ;; the Guix package that provides DefaultEncrypt. | ||||
|      "ExtendSMIME is designed to be used with Gnus in Emacs.  It enhances | ||||
| DefaultEncrypt (emacs-default-encrypt) to support S/MIME (Secure/Multipurpose | ||||
| Internet Mail Extensions) via LDAP (Lightweight Directory Access Protocol). | ||||
| Before a message (e.g., email) is sent, ExtendSMIME searches for missing | ||||
| certificates via LDAP and imports them into @code{gpgsm}.  When certificates | ||||
| for all recipients are available, DefaultEncrypt automatically encrypts the | ||||
| message.  For details and instructions on how to use ExtendSMIME, please refer | ||||
| to the home page or read the comments in the source file, | ||||
| @file{jl-smime.el}.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-htmlize | ||||
|   (package | ||||
|     (name "emacs-htmlize") | ||||
|  | @ -7960,6 +8116,27 @@ running tests easier.") | |||
| (define-public ert-runner | ||||
|   (deprecated-package "ert-runner" emacs-ert-runner)) | ||||
| 
 | ||||
| (define-public emacs-xtest | ||||
|   (package | ||||
|     (name "emacs-xtest") | ||||
|     (version "1.1.0") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/promethial/xtest.git") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1wqx6hlqcmqiljydih5fx89dw06g8w728pyn4iqsap8jwgjngb09")))) | ||||
|     (arguments | ||||
|      `(#:exclude '())) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://github.com/promethial/xtest/") | ||||
|     (synopsis "Simple testing with Emacs") | ||||
|     (description "This package provides a simple testing library for Emacs.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-disable-mouse | ||||
|   (package | ||||
|     (name "emacs-disable-mouse") | ||||
|  | @ -10602,6 +10779,28 @@ macro takes a first argument (whose value must be an alist) and a body.") | |||
| your Emacs.") | ||||
|       (license license:gpl2+)))) | ||||
| 
 | ||||
| (define-public emacs-restart-emacs | ||||
|   (let ((commit "9aa90d3df9e08bc420e1c9845ee3ff568e911bd9") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "emacs-restart-emacs") | ||||
|       (version (git-version "0.1.1" revision commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/iqbalansari/restart-emacs.git") | ||||
|                (commit commit))) | ||||
|          (file-name (git-file-name name version)) | ||||
|          (sha256 | ||||
|           (base32 "02x1a85k7r95z8091zgjiaj9nf0zvx1jy4xvl3hr12qbnrx1wfav")))) | ||||
|       (build-system emacs-build-system) | ||||
|       (home-page "https://github.com/iqbalansari/restart-emacs") | ||||
|       (synopsis "Restart Emacs from within Emacs") | ||||
|       (description "This package provides a simple command to restart Emacs from | ||||
| within Emacs.") | ||||
|       (license license:gpl3+)))) | ||||
| 
 | ||||
| (define-public emacs-sourcemap | ||||
|   (package | ||||
|     (name "emacs-sourcemap") | ||||
|  | @ -11559,6 +11758,29 @@ interactive behavior should be different.") | |||
| decreasing the default font size in all GUI Emacs frames.") | ||||
|       (license license:gpl3+)))) | ||||
| 
 | ||||
| (define-public emacs-mixed-pitch | ||||
|   (package | ||||
|     (name "emacs-mixed-pitch") | ||||
|     (version "1.0.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://gitlab.com/jabranham/mixed-pitch.git") | ||||
|              (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://gitlab.com/jabranham/mixed-pitch") | ||||
|     (synopsis "Mix variable- and fixed-pitch fonts in the same Emacs buffer") | ||||
|     (description | ||||
|      "@code{mixed-pitch-mode} is a minor mode that enables mixing | ||||
| variable-pitch and fixed-pitch fonts in the same buffer.  The list | ||||
| @code{mixed-pitch-fixed-pitch-faces} defines the faces that are kept | ||||
| fixed-pitch,everything else becomes variable-pitch.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-visual-regexp | ||||
|   (package | ||||
|     (name "emacs-visual-regexp") | ||||
|  | @ -12339,7 +12561,7 @@ autosuggestions with: | |||
| (define-public emacs-desktop-environment | ||||
|   (package | ||||
|     (name "emacs-desktop-environment") | ||||
|     (version "0.2.1") | ||||
|     (version "0.2.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -12349,7 +12571,7 @@ autosuggestions with: | |||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0n5sa94dwhnkfp3x42pggsbr5db38m85hl8ddb3qs7yfdi9bjm52")))) | ||||
|          "14ija2rrz3zjhjbzxg84j5fq6xph4ah7w9bkqnq37by040cydvhw")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://gitlab.petton.fr/DamienCassou/desktop-environment") | ||||
|     (synopsis "Control your GNU/Linux desktop environment from Emacs") | ||||
|  | @ -15833,3 +16055,29 @@ corresponding Evil keys.") | |||
|       (description "@code{xterm-color.el} is an ANSI control sequence to | ||||
| text-property translator.") | ||||
|       (license license:bsd-2)))) | ||||
| 
 | ||||
| (define-public emacs-org-noter | ||||
|   (package | ||||
|     (name "emacs-org-noter") | ||||
|     (version "1.3.0") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (string-append | ||||
|                "https://stable.melpa.org/packages/org-noter-" | ||||
|                version | ||||
|                ".el")) | ||||
|         (sha256 | ||||
|           (base32 | ||||
|             "1hczwva73gsyanl1ldhdvql01gy0hy2g861yzkaklyb763sx58x4")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs `(("emacs-org" ,emacs-org))) | ||||
|     (home-page "https://github.com/weirdNox/org-noter") | ||||
|     (synopsis "Synchronized, Org-mode, document annotator") | ||||
|     (description | ||||
|      "This package lets you create notes that are kept in sync when you | ||||
| scroll through the document, but that are external to it---the notes | ||||
| themselves live in an Org-mode file.  As such, this leverages the power of | ||||
| Org-mode (the notes may have outlines, latex fragments, babel, etc...) while | ||||
| acting like notes that are made @emph{in} the document.") | ||||
|     (license license:gpl3+))) | ||||
|  |  | |||
|  | @ -1248,17 +1248,17 @@ bindings for Python, Java, OCaml and more.") | |||
| (define-public radare2 | ||||
|   (package | ||||
|     (name "radare2") | ||||
|     (version "2.5.0") | ||||
|     (version "3.5.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://radare.mikelloc.com/get/" version "/" | ||||
|                                   name "-" version ".tar.gz")) | ||||
|               (uri (string-append "https://radare.mikelloc.com/get/" version "/" | ||||
|                                   "radare2-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "17h4ba5qqahfi8mi4x2dcvq87cqpir5v2dlaqbvmay6vby4zh4v7")) | ||||
|                 "174x5545fw2nyf000gd46hi7rx2bn3bw5bsnvizn9yi99pn7m4mw")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                 '(begin | ||||
|                '(begin | ||||
|                   (substitute* "libr/asm/p/Makefile" | ||||
|                     (("LDFLAGS\\+=") "LDFLAGS+=-Wl,-rpath=$(LIBDIR) ")) | ||||
|                   (substitute* "libr/parse/p/Makefile" | ||||
|  | @ -1268,7 +1268,7 @@ bindings for Python, Java, OCaml and more.") | |||
|                   #t)))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f; tests require git and network access | ||||
|      '(#:tests? #f                      ; tests require git and network access | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'mklibdir | ||||
|  |  | |||
|  | @ -613,6 +613,28 @@ character set, with support for most Western and Central European Latin-based | |||
| languages, plus Greek and Cyrillic.") | ||||
|     (license license:silofl1.1))) | ||||
| 
 | ||||
| (define-public font-anonymous-pro-minus | ||||
|   (package | ||||
|     (inherit font-anonymous-pro) | ||||
|     (name "font-anonymous-pro-minus") | ||||
|     ;; The -Minus variant doesn't necessarily track the regular version above. | ||||
|     (version "1.003") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://www.marksimonson.com/assets/content/fonts/" | ||||
|                            "AnonymousProMinus-" version ".zip")) | ||||
|        (sha256 | ||||
|         (base32 "1p2n91jja37d2cshp5pjwld9lq0v7gnpk7ywwn2blq7k46q6vq38")))) | ||||
|     (synopsis "Fixed-width fonts designed with coding in mind, without bitmaps") | ||||
|     (description "Anonymous Pro is a family of four fixed-width fonts designed | ||||
| with coding in mind.  Anonymous Pro features an international, Unicode-based | ||||
| character set, with support for most Western and Central European Latin-based | ||||
| languages, plus Greek and Cyrillic. | ||||
| 
 | ||||
| Anonymous Pro Minus is identical to Anonymous Pro, minus its embedded bitmaps | ||||
| for use at smaller text sizes"))) | ||||
| 
 | ||||
| (define-public font-gnu-unifont | ||||
|   (package | ||||
|     (name "font-gnu-unifont") | ||||
|  |  | |||
|  | @ -170,15 +170,14 @@ as required.") | |||
| (define-public libfilezilla | ||||
|   (package | ||||
|     (name "libfilezilla") | ||||
|     (version "0.15.1") | ||||
|     (version "0.16.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://download.filezilla-project.org/" | ||||
|                            "libfilezilla/libfilezilla-" version ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "17zlhw5b1a7jzh50cbpy2is3sps5lnzch5yf9qm7mwrviw9c8j10")))) | ||||
|         (base32 "1fd71vmllzvljff5l5ka5wnzbdsxx4i54dpxpklydmbsqpilnv1v")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("cppunit" ,cppunit) | ||||
|  | @ -209,14 +208,14 @@ output. | |||
| (define-public filezilla | ||||
|   (package | ||||
|     (name "filezilla") | ||||
|     (version "3.41.2") | ||||
|     (version "3.42.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://download.filezilla-project.org/client/" | ||||
|                            "FileZilla_" version "_src.tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 "05zhvzvzkbns0cdxmlswvasfa6031y22dhfj9y5p85gi654f4fy2")))) | ||||
|         (base32 "083ycsycwy1szhp3mzf998wsqa74hmdxdsy07x6k81vp2cxjxijg")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|       ;; Don't let filezilla phone home to check for updates. | ||||
|  |  | |||
|  | @ -41,6 +41,7 @@ | |||
| ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> | ||||
| ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu> | ||||
| ;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com> | ||||
| ;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -5596,6 +5597,40 @@ affect gameplay).") | |||
|     (home-page "https://www.chocolate-doom.org/wiki/index.php/Chocolate_Doom") | ||||
|     (license license:gpl2))) | ||||
| 
 | ||||
| (define-public crispy-doom | ||||
|   (package | ||||
|     (inherit chocolate-doom) | ||||
|     (name "crispy-doom") | ||||
|     (version "5.5.2") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/fabiangreffrath/crispy-doom.git") | ||||
|                     (commit (string-append "crispy-doom-" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 "1a60ns0blhvml6gzj9qx18c18pbf02rq7vypaajd6nqy5h4fz3cn")))) | ||||
|     (native-inputs | ||||
|      (append | ||||
|       (package-native-inputs chocolate-doom) | ||||
|       `(("automake" ,automake) | ||||
|         ("autoreconf" ,autoconf)))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'bootstrap | ||||
|            ;; the autogen.sh script in the source tree doesn't work | ||||
|            (lambda _ (invoke "autoreconf" "-vif")))))) | ||||
|     (synopsis "Limit-removing enhanced-resolution Doom source port based on | ||||
| Chocolate Doom") | ||||
|     (description | ||||
|      "Crispy Doom is a friendly fork of Chocolate Doom that provides a higher | ||||
| display resolution, removes the static limits of the Doom engine and offers | ||||
| further optional visual, tactical and physical enhancements while remaining | ||||
| entirely config file, savegame, netplay and demo compatible with the | ||||
| original.") | ||||
|     (home-page "https://www.chocolate-doom.org/wiki/index.php/Crispy_Doom"))) | ||||
| 
 | ||||
| (define-public fortune-mod | ||||
|   (package | ||||
|     (name "fortune-mod") | ||||
|  | @ -7385,3 +7420,143 @@ full of enemies that can hurt it, obstacles and food to be eaten.  The goal of | |||
| the game is to stay alive and collect prizes.  The robot program conveniently | ||||
| may be written in a plain text file in the Scheme programming language.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public ri-li | ||||
|   (package | ||||
|     (name "ri-li") | ||||
|     (version "2.0.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/ri-li/" | ||||
|                                   "Ri-li%20Linux_Unix/Ri-li%20V" version "/" | ||||
|                                   "Ri-li-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1gcdsgnnbbn1mb1hkpwniv3fhkaj1nn8gq33v5c16q3wqchcq77p")) | ||||
|               ;; Taken from | ||||
|               ;; <https://github.com/NixOS/nixpkgs/blob/master/pkgs/games/rili/moderinze_cpp.patch>. | ||||
|               ;; It doesn't build otherwise. | ||||
|               (patches (search-patches "ri-li-modernize_cpp.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          ;; Remove "gentoo" subdirectory from Makefile, as it is | ||||
|          ;; missing a make file and generates a build failure. | ||||
|          (add-after 'configure 'fix-build | ||||
|            (lambda _ | ||||
|              (substitute* "Makefile" | ||||
|                ((" gentoo") "")) | ||||
|              #t)) | ||||
|          (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"))) | ||||
|                (for-each (lambda (f) (install-file f pixmaps)) | ||||
|                          (find-files "data" "\\.(png|ico)$")) | ||||
|                (mkdir-p apps) | ||||
|                (with-output-to-file (string-append apps "/ri-li.desktop") | ||||
|                  (lambda _ | ||||
|                    (format #t | ||||
|                            "[Desktop Entry]~@ | ||||
|                      Name=Ri-li~@ | ||||
|                      Exec=~a/bin/Ri_li~@ | ||||
|                      Icon=~a/Ri-li-icon-32x32.png~@ | ||||
|                      Categories=Game;ArcadeGame;~@ | ||||
|                      Keywords=toy;train;wooden;snake-like;engine;~@ | ||||
|                      Comment=a toy simulator game~@ | ||||
|                      Comment[de]=Ein Spiel mit einem kleinen Zug~@ | ||||
|                      Comment[fr]=un jeu de petit train~@ | ||||
|                      Comment[ro_RO]=un joc cu un tren de jucărie~@ | ||||
|                      Terminal=false~@ | ||||
|                      Type=Application~%" | ||||
|                            out pixmaps)))) | ||||
|              #t)) | ||||
|          (add-after 'install-desktop-file 'remove-spurious-files | ||||
|            ;; Delete redundant files already installed somewhere else. | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (for-each delete-file | ||||
|                          (find-files (string-append out "/share/Ri-li") | ||||
|                                      "\\.(png|ico)|COPYING")) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("sdl" ,(sdl-union (list sdl sdl-mixer))))) | ||||
|     (home-page "http://www.ri-li.org") | ||||
|     (synopsis "Toy train simulation game") | ||||
|     (description "Ri-li is a game in which you drive a wooden toy | ||||
| steam locomotive across many levels and collect all the coaches to | ||||
| win.") | ||||
|     ;; The project is dual-licensed GPL2+ and GPL3+. | ||||
|     (license (list license:gpl2+ license:gpl3+)))) | ||||
| 
 | ||||
| (define-public freeorion | ||||
|   (package | ||||
|     (name "freeorion") | ||||
|     (version "0.4.8") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/freeorion/freeorion.git") | ||||
|              ;; Most recent stable release uses boost_signals (v1) which was | ||||
|              ;; later replaced with boost-signals2 and no longer exists.  This | ||||
|              ;; commit builds and runs. | ||||
|              ;; | ||||
|              ;; TODO: Update this when the next stable release when it is | ||||
|              ;; available. | ||||
|              (commit "470d0711537804df3c2ca25532f674ab4bec58af"))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1wsw632l1cj17px6i88nqjzs0dngp5rsr67n6qkkjlfjfxi69j0f")) | ||||
|        (modules '((guix build utils))) | ||||
|        (snippet | ||||
|         '(begin | ||||
|            ;; There are some bundled fonts. | ||||
|            (for-each delete-file-recursively '("default/data/fonts")) | ||||
|            #t)))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f                      ;no test | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'unbundle-fonts | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (let ((roboto-dir (string-append (assoc-ref inputs "font-roboto") | ||||
|                                               "/share/fonts/truetype/"))) | ||||
|                (substitute* "UI/ClientUI.cpp" | ||||
|                  (("\\(GetRootDataDir.*?Roboto-(Bold|Regular)\\.ttf\"\\)\\.string\\(\\)\\);" | ||||
|                    all type) | ||||
|                   (string-append "\"" roboto-dir "Roboto-" type ".ttf\");"))) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("boost" ,boost) | ||||
|        ("boost_signals" ,boost-signals2) | ||||
|        ("font-dejavu" ,font-dejavu) | ||||
|        ("font-roboto" ,font-google-roboto) | ||||
|        ("freetype2" ,freetype) | ||||
|        ("glew" ,glew) | ||||
|        ("glu" ,glu) | ||||
|        ("libogg" ,libogg) | ||||
|        ("libpng" ,libpng) | ||||
|        ("libvorbis" ,libvorbis) | ||||
|        ("openal" ,openal) | ||||
|        ("python2" ,python-2.7) | ||||
|        ("sdl2" ,sdl2) | ||||
|        ("zlib" ,zlib))) | ||||
|     (home-page "https://www.freeorion.org/index.php/Main_Page") | ||||
|     (synopsis "Turn-based space empire and galactic conquest computer game") | ||||
|     (description | ||||
|      "FreeOrion is a turn-based space empire and galactic conquest (4X) | ||||
| computer game being designed and built by the FreeOrion project.  Control an | ||||
| empire with the goal of exploring the galaxy, expanding your territory, | ||||
| exploiting the resources, and exterminating rival alien empires.  FreeOrion is | ||||
| inspired by the tradition of the Master of Orion games, but is not a clone or | ||||
| remake of that series or any other game.") | ||||
|     ;; Source code is released under gpl2.  Artwork, music and sounds, and | ||||
|     ;; in-game text are released under cc-by-sa3.0.  Game content scripts are | ||||
|     ;; released under both gpl2 and cc-by-sa3.0.  Bundled Gigi library is | ||||
|     ;; released under lgpl2.1+. | ||||
|     (license (list license:gpl2 license:cc-by-sa3.0 license:lgpl2.1+)))) | ||||
|  |  | |||
|  | @ -49,7 +49,7 @@ | |||
| (define-public babl | ||||
|   (package | ||||
|     (name "babl") | ||||
|     (version "0.1.64") | ||||
|     (version "0.1.66") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (list (string-append "https://download.gimp.org/pub/babl/" | ||||
|  | @ -63,7 +63,7 @@ | |||
|                                         "/babl-" version ".tar.bz2"))) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1gsqs5spgla86y9g11riryvw7015asik7y22maainl83nhq4sxxv")))) | ||||
|                 "0qx1dwbinxihwl2lmxi60qiqi402jlrdcnixx14kk6j88n9xi79n")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (home-page "http://gegl.org/babl/") | ||||
|     (synopsis "Image pixel format conversion library") | ||||
|  | @ -118,7 +118,7 @@ buffers.") | |||
| (define-public gimp | ||||
|   (package | ||||
|     (name "gimp") | ||||
|     (version "2.10.10") | ||||
|     (version "2.10.12") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://download.gimp.org/pub/gimp/v" | ||||
|  | @ -126,7 +126,7 @@ buffers.") | |||
|                                   "/gimp-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0xwck5nbpb945s1cyij3kfqw1pchbhx8i5vf5hgywyjw4r1z5l8j")))) | ||||
|                 "0wdcr8d2ink4swn5r4v13bsiya6s3xm4ya97sdbhs4l40y7bb03x")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (outputs '("out" | ||||
|                "doc"))                            ; 9 MiB of gtk-doc HTML | ||||
|  |  | |||
|  | @ -80,6 +80,7 @@ | |||
|   (package | ||||
|     (name "dbus") | ||||
|     (version "1.12.12") | ||||
|     (replacement dbus/fixed) | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -146,6 +147,14 @@ or through unencrypted TCP/IP suitable for use behind a firewall with | |||
| shared NFS home directories.") | ||||
|     (license license:gpl2+)))                     ; or Academic Free License 2.1 | ||||
| 
 | ||||
| (define dbus/fixed | ||||
|   (package | ||||
|     (inherit dbus) | ||||
|     (source (origin | ||||
|               (inherit (package-source dbus)) | ||||
|               (patches (append (search-patches "dbus-CVE-2019-12749.patch") | ||||
|                                (origin-patches (package-source dbus)))))))) | ||||
| 
 | ||||
| (define glib | ||||
|   (package | ||||
|    (name "glib") | ||||
|  |  | |||
|  | @ -36,6 +36,7 @@ | |||
| ;;; Copyright © 2019 Danny Milosavljevic <dannym@scratchpost.org> | ||||
| ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de> | ||||
| ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -6880,6 +6881,38 @@ functionality and behavior.") | |||
|     (home-page "https://extensions.gnome.org/") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public numix-theme | ||||
|   (package | ||||
|     (name "numix-theme") | ||||
|     (version "2.6.7") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/numixproject/numix-gtk-theme.git") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "12mw0kr0kkvg395qlbsvkvaqccr90cmxw5rrsl236zh43kj8grb7")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure) | ||||
|          (delete 'check)))) | ||||
|     (native-inputs | ||||
|      `(("glib:bin" ,glib "bin")             ; for glib-compile-schemas | ||||
|        ("gnome-shell" ,gnome-shell) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("xmllint" ,libxml2) | ||||
|        ("ruby-sass" ,ruby-sass))) | ||||
|     (synopsis "Flat theme with light and dark elements") | ||||
|     (description "Numix is a modern flat theme with a combination of light and | ||||
| dark elements.  It supports GNOME, Unity, Xfce, and Openbox.") | ||||
|     (home-page "https://numixproject.github.io") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public arc-theme | ||||
|   (package | ||||
|     (name "arc-theme") | ||||
|  |  | |||
|  | @ -146,14 +146,14 @@ tool to extract metadata from a file and print the results.") | |||
| (define-public libmicrohttpd | ||||
|   (package | ||||
|    (name "libmicrohttpd") | ||||
|    (version "0.9.63") | ||||
|    (version "0.9.64") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-" | ||||
|                                 version ".tar.gz")) | ||||
|             (sha256 | ||||
|              (base32 | ||||
|               "173lj66crwvhzwp1r812sc5h1hda7g6lb9l1y5zf7w3pw4dnzhrp")))) | ||||
|               "03imzkd1hl2mkkpi84vg5xq9x6b58gwsv86ym85km0lhb7nxi4p7")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (inputs | ||||
|     `(("curl" ,curl) | ||||
|  |  | |||
|  | @ -940,8 +940,8 @@ files, to verify signatures, and to manage the private and public keys.") | |||
|     (version "0.10.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://gaffer.ptitcanardnoir.org/" | ||||
|                                   "intrigeri/files/parcimonie/App-Parcimonie-" | ||||
|               (uri (string-append "https://gaffer.boum.org/intrigeri/files/" | ||||
|                                   "parcimonie/App-Parcimonie-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|  | @ -1011,7 +1011,7 @@ files, to verify signatures, and to manage the private and public keys.") | |||
|                  `("PERL5LIB" ":" | ||||
|                    prefix (,(string-append perllib ":" (getenv "PERL5LIB"))))) | ||||
|                #t)))))) | ||||
|     (home-page "https://gaffer.ptitcanardnoir.org/intrigeri/code/parcimonie/") | ||||
|     (home-page "https://gaffer.boum.org/intrigeri/code/parcimonie/") | ||||
|     (synopsis "Incrementally refreshes a GnuPG keyring") | ||||
|     (description "Parcimonie incrementaly refreshes a GnuPG keyring in a way | ||||
| that makes it hard to correlate the keyring content to an individual, and | ||||
|  |  | |||
|  | @ -36,7 +36,7 @@ | |||
| (define-public gpodder | ||||
|   (package | ||||
|     (name "gpodder") | ||||
|     (version "3.10.7") | ||||
|     (version "3.10.9") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -45,7 +45,7 @@ | |||
|              (commit version))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0sx9rj6dpvd2xz7lak2yi0zlgr3lp2ng1fw23s39la9ly4g1835j")) | ||||
|          "1sdmr1sq1d4p492zp9kq3npl7p56yr0pr470z9r6xxcylax5mhfq")) | ||||
|        (file-name (git-file-name name version)))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|  | @ -81,12 +81,12 @@ | |||
|              (for-each | ||||
|                (lambda (f) | ||||
|                  (chmod f #o664)) | ||||
|                (find-files "po")))) | ||||
|                (find-files "po")) | ||||
|              #t)) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (setenv "PREFIX" (assoc-ref outputs "out")) | ||||
|              (invoke "make" "install") | ||||
|              #t)) | ||||
|              (invoke "make" "install"))) | ||||
|          (add-after 'install 'wrap-gpodder | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out")) | ||||
|  |  | |||
|  | @ -175,16 +175,16 @@ coordinates as well as partial support for adjustments in global coordinate syst | |||
| (define-public gpxsee | ||||
|   (package | ||||
|     (name "gpxsee") | ||||
|     (version "4.19") | ||||
|     (version "7.8") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri | ||||
|                (string-append "https://github.com/tumic0/GPXSee/archive/" | ||||
|                               version ".tar.gz")) | ||||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/tumic0/GPXSee") | ||||
|                     (commit version))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "00j0gjldw1kn3i45dppld1pz8r4s1g7lw89k7gfvvqbjjyjih1wg")))) | ||||
|                 "1ymqz4wrl9ghkyyqi2vrnlyvz3fc84s3p8a1dkiqlvyvj360ck9j")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  | @ -195,27 +195,16 @@ coordinates as well as partial support for adjustments in global coordinate syst | |||
|              (for-each (lambda (file) | ||||
|                          (invoke "lrelease" file)) | ||||
|                        (find-files "lang" "\\.ts")) | ||||
|              (substitute* "src/config.h" | ||||
|                (("/usr/share/gpxsee") | ||||
|                 (string-append | ||||
|                  (assoc-ref outputs "out") "/share/gpxsee"))) | ||||
|              (invoke "qmake" | ||||
|                      (string-append "PREFIX=" | ||||
|                                     (assoc-ref outputs "out"))))) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (share (string-append out "/share/gpxsee/"))) | ||||
|                (install-file "GPXSee" (string-append out "/bin/GPXSee")) | ||||
|                (install-file "pkg/maps.txt" share)) | ||||
|              #t))))) | ||||
|                                     (assoc-ref outputs "out")))))))) | ||||
|     (inputs | ||||
|      `(("qtbase" ,qtbase))) | ||||
|     (native-inputs | ||||
|      `(("qttools" ,qttools))) | ||||
|     (home-page "http://www.gpxsee.org") | ||||
|     (synopsis "GPX file viewer and analyzer") | ||||
|     (home-page "https://www.gpxsee.org") | ||||
|     (synopsis "GPS log file viewer and analyzer") | ||||
|     (description | ||||
|      "GPXSee is a Qt-based GPS log file viewer and analyzer that supports GPX, | ||||
| TCX, KML, FIT, IGC and NMEA files.") | ||||
|      "GPXSee is a Qt-based GPS log file viewer and analyzer that supports | ||||
| all common GPS log file formats.") | ||||
|     (license license:gpl3))) | ||||
|  |  | |||
|  | @ -3,6 +3,7 @@ | |||
| ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -31,6 +32,7 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages gcc) | ||||
|   #:use-module (gnu packages autotools) | ||||
|   #:use-module (gnu packages bioconductor) | ||||
|   #:use-module (gnu packages bioinformatics) | ||||
|   #:use-module (gnu packages check) | ||||
|  | @ -446,3 +448,55 @@ they can fit in memory).  The core function is @code{find_partition} which | |||
| finds the optimal partition using the Leiden algorithm, which is an extension | ||||
| of the Louvain algorithm, for a number of different methods.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public edge-addition-planarity-suite | ||||
|   (package | ||||
|     (name "edge-addition-planarity-suite") | ||||
|     (version "3.0.0.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|               (url (string-append "https://github.com/graph-algorithms/" | ||||
|                                   name)) | ||||
|               (commit (string-append "Version_" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "01cm7ay1njkfsdnmnvh5zwc7wg7x189hq1vbfhh9p3ihrbnmqzh8")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (synopsis "Embedding of planar graphs") | ||||
|     (description "The package provides a reference implementation of the | ||||
| linear time edge addition algorithm for embedding planar graphs and | ||||
| isolating planarity obstructions.") | ||||
|     (license license:bsd-3) | ||||
|     (home-page | ||||
|       "https://github.com/graph-algorithms/edge-addition-planarity-suite"))) | ||||
| 
 | ||||
| (define-public rw | ||||
|   (package | ||||
|     (name "rw") | ||||
|     ;; There is a version 0.8, but the tarball is broken with symlinks | ||||
|     ;; to /usr/share. | ||||
|     (version "0.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/rankwidth/" | ||||
|                                   "rw-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1rv2v42x2506x7f10349m1wpmmfxrv9l032bkminni2gbip9cjg0")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("igraph" ,igraph))) | ||||
|     (home-page "https://sourceforge.net/projects/rankwidth/") | ||||
|     (synopsis "Rank-width and rank-decomposition of graphs") | ||||
|     (description "rw computes rank-width and rank-decompositions | ||||
| of graphs.") | ||||
|     (license license:gpl2+))) | ||||
|  |  | |||
|  | @ -60,6 +60,7 @@ | |||
|   #:use-module (gnu packages guile) | ||||
|   #:use-module (gnu packages hurd) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages imagemagick) | ||||
|   #:use-module (gnu packages libffi) | ||||
|   #:use-module (gnu packages libunistring) | ||||
|   #:use-module (gnu packages linux) | ||||
|  | @ -68,6 +69,7 @@ | |||
|   #:use-module (gnu packages multiprecision) | ||||
|   #:use-module (gnu packages ncurses) | ||||
|   #:use-module (gnu packages networking) | ||||
|   #:use-module (gnu packages noweb) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages python) | ||||
|  | @ -75,6 +77,7 @@ | |||
|   #:use-module (gnu packages sdl) | ||||
|   #:use-module (gnu packages slang) | ||||
|   #:use-module (gnu packages sqlite) | ||||
|   #:use-module (gnu packages tex) | ||||
|   #:use-module (gnu packages texinfo) | ||||
|   #:use-module (gnu packages tls) | ||||
|   #:use-module (gnu packages version-control) | ||||
|  | @ -1976,11 +1979,11 @@ format is also supported.") | |||
|   (deprecated-package "mcron2" mcron)) | ||||
| 
 | ||||
| (define-public guile-picture-language | ||||
|   (let ((commit "1ea8b78a8bceb4f7e5eaeb3e76987072267f99bb") | ||||
|         (revision "2")) | ||||
|   (let ((commit "91d10c96708d732145006dd2802acc4de08b632e") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "guile-picture-language") | ||||
|       (version (git-version "0" revision commit)) | ||||
|       (version (git-version "0.0.1" revision commit)) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|  | @ -1988,10 +1991,16 @@ format is also supported.") | |||
|                       (commit commit))) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "1rvq6q2zq21x7dx0qq1hn568wglsl4bkd8gacbarcx1fs0rrxcqw")))) | ||||
|       (build-system guile-build-system) | ||||
|                   "1ydvw9dvssdvlvhh1dr8inyzy2x6m41qgp8hsivca1xysr4gc23a")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (inputs | ||||
|        `(("guile" ,guile-2.2))) | ||||
|       (native-inputs | ||||
|        `(("autoconf" ,autoconf) | ||||
|          ("automake" ,automake) | ||||
|          ("imagemagick" ,imagemagick) | ||||
|          ("pkg-config" ,pkg-config) | ||||
|          ("texinfo" ,texinfo))) | ||||
|       (home-page "https://git.elephly.net/software/guile-picture-language.git") | ||||
|       (synopsis "Picture language for Guile") | ||||
|       (description | ||||
|  | @ -2154,20 +2163,20 @@ serializing continuations or delimited continuations.") | |||
|       (license license:lgpl2.0+)))) | ||||
| 
 | ||||
| (define-public python-on-guile | ||||
|   (let ((commit "0cb7c2b2fff4338ca6153473f3f5c409a818f293") | ||||
|         (revision "1")) | ||||
|   (let ((commit "058c596cd3886447da31171e1026d4d19f5f5313") | ||||
|         (revision "2")) | ||||
|     (package | ||||
|       (name "python-on-guile") | ||||
|       (version (git-version "0.1.0" revision commit)) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://gitlab.com/python-on-guile/python-on-guile.git") | ||||
|                       (url "https://git.elephly.net/software/python-on-guile.git") | ||||
|                       (commit commit))) | ||||
|                 (file-name (git-file-name name version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0kpz08rrp5mwcf5ksc4flgrw992syham9x49dn9wq9w31bpcpnby")))) | ||||
|                   "0ppyh5kkhsph5kc091p2b5a3alnj3wnlx8jr5xpyhrsj0vx9cqph")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (arguments | ||||
|        `(#:parallel-build? #f ; not supported | ||||
|  | @ -2176,12 +2185,7 @@ serializing continuations or delimited continuations.") | |||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-after 'unpack 'chdir | ||||
|              (lambda _ (chdir "modules") #t)) | ||||
|            (add-after 'chdir 'use-canonical-directory-for-go-files | ||||
|              (lambda _ | ||||
|                (substitute* "Makefile.am" | ||||
|                  (("/ccache") "/site-ccache")) | ||||
|                #t))))) | ||||
|              (lambda _ (chdir "modules") #t))))) | ||||
|       (inputs | ||||
|        `(("guile" ,guile-2.2))) | ||||
|       (propagated-inputs | ||||
|  | @ -2238,43 +2242,40 @@ list of components.  This module takes care of that for you.") | |||
|     (license license:lgpl3+))) | ||||
| 
 | ||||
| (define-public guile-gi | ||||
|   (let ((commit "26e885219ae6b31a83766564a2ecfe8c4532346f") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "guile-gi") | ||||
|       (version (string-append "0.0.1-" revision "." (string-take commit 7))) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://github.com/spk121/guile-gi.git") | ||||
|                       (commit commit))) | ||||
|                 (file-name (string-append name "-" version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "1prbzhr4sqqihb34l6yfrz6sd8nghwd3q9wvbm36jnl2n3z2nxj8")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (native-inputs `(("autoconf" ,autoconf) | ||||
|                        ("automake" ,automake) | ||||
|                        ("gettext" ,gnu-gettext) | ||||
|                        ("libtool" ,libtool) | ||||
|                        ("pkg-config" ,pkg-config) | ||||
|                        ("texinfo" ,texinfo))) | ||||
|       (propagated-inputs `(("glib" ,glib) | ||||
|                            ("gobject-introspection" ,gobject-introspection) | ||||
|                            ("gssettings-desktop-schemas" ,gsettings-desktop-schemas) | ||||
|                            ("gtk+" ,gtk+) | ||||
|                            ("guile-lib" ,guile-lib) | ||||
|                            ("webkitgtk" ,webkitgtk))) | ||||
|       (inputs `(("guile" ,guile-2.2))) | ||||
|       (arguments | ||||
|        `(#:configure-flags '("--with-gnu-filesystem-hierarchy"))) | ||||
|       (home-page "https://github.com/spk121/guile-gi") | ||||
|       (synopsis "GObject bindings for Guile") | ||||
|       (description | ||||
|        "Guile-GI is a library for Guile that allows using GObject-based | ||||
|   (package | ||||
|     (name "guile-gi") | ||||
|     (version "0.0.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://lonelycactus.com/tarball/guile_gi-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0hs0viqzff7nzgcmyw721ima1jyymrlzrcycpgwrs6iprscxvqwn")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("--with-gnu-filesystem-hierarchy") | ||||
|        ;; The atomic_int_set test does not actually fail. | ||||
|        #:make-flags '("XFAIL_TESTS=strjoinv.scm"))) | ||||
|     (native-inputs | ||||
|      `(("gettext" ,gnu-gettext) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (propagated-inputs | ||||
|      `(("glib" ,glib) | ||||
|        ("gobject-introspection" ,gobject-introspection) | ||||
|        ("gssettings-desktop-schemas" ,gsettings-desktop-schemas) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("guile-lib" ,guile-lib) | ||||
|        ("webkitgtk" ,webkitgtk))) | ||||
|     (inputs `(("guile" ,guile-2.2))) | ||||
|     (home-page "https://github.com/spk121/guile-gi") | ||||
|     (synopsis "GObject bindings for Guile") | ||||
|     (description | ||||
|      "Guile-GI is a library for Guile that allows using GObject-based | ||||
| libraries, such as GTK+3.  Its README comes with the disclaimer: This is | ||||
| pre-alpha code.") | ||||
|       (license license:gpl3+)))) | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public guile-srfi-159 | ||||
|   (let ((commit "1bd98abda2ae4ef8f36761a167903e55c6bda7bb") | ||||
|  | @ -2305,3 +2306,81 @@ formatting combinators specified by | |||
| @uref{https://srfi.schemers.org/srfi-159/srfi-159.html, SRFI-159}.  These are | ||||
| more expressive and flexible than the traditional @code{format} procedure.") | ||||
|       (license license:bsd-3)))) | ||||
| 
 | ||||
| (define-public emacsy | ||||
|   (let ((commit "7d49cc1425d5d209bdb82cac0d8ea0694b8b3784") | ||||
|         (revision "4")) | ||||
|     (package | ||||
|       (name "emacsy") | ||||
|       (version (string-append "0.1.2-" revision "." (string-take commit 7))) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://gitlab.com/janneke/emacsy.git") | ||||
|                       (commit commit))) | ||||
|                 (file-name (string-append name "-" version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "0k9yns1v8zn135w60sx96nqs2bm2p2dvcvlm987hkw4lbff9ii6i")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (native-inputs | ||||
|        `(("emacsy-webkit-gtk" | ||||
|           ,(origin | ||||
|              (method git-fetch) | ||||
|              (uri (git-reference | ||||
|                    (url "https://gitlab.com/janneke/emacsy-webkit-gtk.git") | ||||
|                    (commit "35ded1b3e997fd779a17e0c4a2c73741718562d9"))) | ||||
|              (file-name (string-append "emacsy-webkit-gtk" "-" version)) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1gp0li2rbp6in926r3hrww6cnh864pp46v1din2pgmd7vzzl7kg0")))) | ||||
|          ("hello-emacsy" | ||||
|           ,(origin | ||||
|              (method git-fetch) | ||||
|              (uri (git-reference | ||||
|                    (url "https://gitlab.com/janneke/hello-emacsy.git") | ||||
|                    (commit "2c117e5286a261be4ff24938f3ae1d348396c538"))) | ||||
|              (file-name (string-append "hello-emacsy" "-" version)) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "15ykd7s8axcy8ym4v71fgal4x28fxnim0pv0jmpi3dnhizr63zqn")))) | ||||
|          ("autoconf" ,autoconf) | ||||
|          ("automake" ,automake) | ||||
|          ("bzip2" ,bzip2) | ||||
|          ("guile" ,guile-2.2) | ||||
|          ("gettext" ,gnu-gettext) | ||||
|          ("libtool" ,libtool) | ||||
|          ("noweb" ,noweb) | ||||
|          ("perl" ,perl) | ||||
|          ("pkg-config" ,pkg-config) | ||||
|          ("texinfo" ,texinfo) | ||||
|          ("texlive" ,texlive))) | ||||
|       (propagated-inputs | ||||
|        `(("guile-lib" ,guile-lib) | ||||
|          ("guile-readline" ,guile-readline) | ||||
|          ("freeglut" ,freeglut) | ||||
|          ("gssettings-desktop-schemas" ,gsettings-desktop-schemas) | ||||
|          ("webkitgtk" ,webkitgtk))) | ||||
|       (inputs `(("guile" ,guile-2.2))) | ||||
|       (arguments | ||||
|        `(#:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-after 'unpack 'unpack-examples | ||||
|              (lambda _ | ||||
|                (copy-recursively (assoc-ref %build-inputs "emacsy-webkit-gtk") | ||||
|                                  "example/emacsy-webkit-gtk") | ||||
|                (copy-recursively (assoc-ref %build-inputs "hello-emacsy") | ||||
|                                  "example/hello-emacsy"))) | ||||
|            (add-before 'configure 'setenv | ||||
|              (lambda _ | ||||
|                (setenv "GUILE_AUTO_COMPILE" "0")))))) | ||||
|       (home-page "https://github.com/shanecelis/emacsy/") | ||||
|       (synopsis "Embeddable GNU Emacs-like library using Guile") | ||||
|       (description | ||||
|        "Emacsy is an embeddable GNU Emacs-like library that uses GNU Guile | ||||
| as extension language.  Emacsy can give a C program an Emacsy feel with | ||||
| keymaps, minibuffer, recordable macros, history, tab completion, major | ||||
| and minor modes, etc., and can also be used as a pure Guile library.  It | ||||
| comes with a simple counter example using GLUT and browser examples in C | ||||
| using gtk+-3 and webkitgtk.") | ||||
|       (license license:gpl3+)))) | ||||
|  |  | |||
|  | @ -286,6 +286,18 @@ without requiring the source code to be rewritten.") | |||
|                   (max-silent-time . 36000))))) ;10 hours (needed on ARM | ||||
|                                                 ;  when heavily loaded) | ||||
| 
 | ||||
| (define-public guile-2.2.5 | ||||
|   (package | ||||
|     (inherit guile-2.2) | ||||
|     (version "2.2.5") | ||||
|     (source (origin | ||||
|               (inherit (package-source guile-2.2)) | ||||
|               (uri (string-append "mirror://gnu/guile/guile-" version | ||||
|                                   ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "19w5ws1jvs01dpv756qv2cgs37rsnwq1f4f07mj0wra35pqp6c7w")))))) | ||||
| 
 | ||||
| (define-public guile-next | ||||
|   ;; This is the upcoming Guile 3.0, with JIT support. | ||||
|   (let ((commit "6f3357b0df64c4be17e72079864c09a542f1c779") | ||||
|  |  | |||
|  | @ -166,14 +166,14 @@ SILC and ICB protocols via plugins.") | |||
| (define-public weechat | ||||
|   (package | ||||
|     (name "weechat") | ||||
|     (version "2.1") | ||||
|     (version "2.5") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://weechat.org/files/src/weechat-" | ||||
|                                   version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0f7d2vdbxc5kgjl7lkamnbxvidgxwa8f9j3nr9fd4gr4z0gzi86d")) | ||||
|                 "09sc5lf7z70x3iw87q4zh8rbyngsw89pwnzs5jk195zzqdspgj2j")) | ||||
|               (patches (search-patches "weechat-python.patch")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (native-inputs | ||||
|  | @ -212,7 +212,7 @@ SILC and ICB protocols via plugins.") | |||
|                ((".*\\$\\{plugin.name\\} == (javascript|php|ruby)" all) | ||||
|                 (string-append "// SKIP" all))) | ||||
|              (substitute* "tests/scripts/test-scripts.cpp" | ||||
|                ((".*\\{ \"(jvascript|php|ruby)\", " all) ; sic | ||||
|                ((".*\\{ \"(javascript|php|ruby)\", " all) | ||||
|                 (string-append "// SKIP" all))) | ||||
|              #t)) | ||||
|          (add-after 'install 'wrap | ||||
|  |  | |||
							
								
								
									
										53
									
								
								gnu/packages/kawa.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								gnu/packages/kawa.scm
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,53 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2019 Carlo Zancanaro <carlo@zancanaro.id.au> | ||||
| ;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
| ;;; GNU Guix is free software; you can redistribute it and/or modify it | ||||
| ;;; under the terms of the GNU General Public License as published by | ||||
| ;;; the Free Software Foundation; either version 3 of the License, or (at | ||||
| ;;; your option) any later version. | ||||
| ;;; | ||||
| ;;; GNU Guix is distributed in the hope that it will be useful, but | ||||
| ;;; WITHOUT ANY WARRANTY; without even the implied warranty of | ||||
| ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | ||||
| ;;; GNU General Public License for more details. | ||||
| ;;; | ||||
| ;;; You should have received a copy of the GNU General Public License | ||||
| ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| (define-module (gnu packages kawa) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (gnu packages java)) | ||||
| 
 | ||||
| (define-public kawa | ||||
|   (package | ||||
|     (name "kawa") | ||||
|     (version "3.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://gnu/kawa/kawa-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1k9qpydc64ar4aqyg3q7jmmxy503ayj85227qfhc5n6ngchqavhy")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-build? #f | ||||
|        #:parallel-tests? #f)) | ||||
|     (inputs | ||||
|      `(("icedtea" ,icedtea-8 "jdk"))) | ||||
|     (home-page "https://www.gnu.org/software/kawa/") | ||||
|     (synopsis "Java framework and implementation of Scheme, Elisp, and more") | ||||
|     (description | ||||
|      "GNU Kawa is an implementation of the Scheme programming language that | ||||
| is built on top of the Java platform.  It is thus conveniently integrated | ||||
| with Java and benefits from this by having a compiler, optional static | ||||
| typing, and so on.  Kawa also serves as a framework for implementing other | ||||
| programming languages on the Java platform.  Included in Kawa is qexo, a | ||||
| partial implementation of XQuery in Java.") | ||||
|     (license license:expat))) | ||||
|  | @ -430,8 +430,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." | |||
| It has been modified to remove all non-free binary blobs.") | ||||
|     (license license:gpl2))) | ||||
| 
 | ||||
| (define %linux-libre-version "5.1.8") | ||||
| (define %linux-libre-hash "1vkirlz9vsvym8fdbvj308n3hj8f9j8n9m267x0dhlgbmig570j2") | ||||
| (define %linux-libre-version "5.1.11") | ||||
| (define %linux-libre-hash "15hmqycsggqd9bwrf229b7f0pfznzs03kpzcwrd9j867pvgwyl8c") | ||||
| 
 | ||||
| (define %linux-libre-5.1-patches | ||||
|   (list %boot-logo-patch | ||||
|  | @ -448,8 +448,8 @@ It has been modified to remove all non-free binary blobs.") | |||
|   (make-linux-libre-headers %linux-libre-version | ||||
|                             %linux-libre-hash)) | ||||
| 
 | ||||
| (define %linux-libre-4.19-version "4.19.49") | ||||
| (define %linux-libre-4.19-hash "0dxmm8190h0g5indj3sqfipkji10y3icr8xnf7bbz7086nkkrcvz") | ||||
| (define %linux-libre-4.19-version "4.19.52") | ||||
| (define %linux-libre-4.19-hash "1wsrgrskmvipm7j4kzir93p9dp3iy49522163ghfxx71b1b2v4dg") | ||||
| 
 | ||||
| (define %linux-libre-4.19-patches | ||||
|   (list %boot-logo-patch | ||||
|  | @ -466,8 +466,8 @@ It has been modified to remove all non-free binary blobs.") | |||
|   (make-linux-libre-headers %linux-libre-4.19-version | ||||
|                             %linux-libre-4.19-hash)) | ||||
| 
 | ||||
| (define %linux-libre-4.14-version "4.14.124") | ||||
| (define %linux-libre-4.14-hash "0z9iaz1rcm9472rjvcihmq65ygyks07j6kbiqm989r9rb4dw6ghg") | ||||
| (define %linux-libre-4.14-version "4.14.127") | ||||
| (define %linux-libre-4.14-hash "0dkzgxfzzc6n3k2x8nzzx98c6y3fhsr695rm46ahvg7fdg3vgcmi") | ||||
| 
 | ||||
| (define-public linux-libre-4.14 | ||||
|   (make-linux-libre %linux-libre-4.14-version | ||||
|  | @ -480,14 +480,14 @@ It has been modified to remove all non-free binary blobs.") | |||
|                             %linux-libre-4.14-hash)) | ||||
| 
 | ||||
| (define-public linux-libre-4.9 | ||||
|   (make-linux-libre "4.9.180" | ||||
|                     "062ybvc5ljpbn8llj62zsvvykl5rikn0jfzh62nrrdsnj7mvi77a" | ||||
|   (make-linux-libre "4.9.182" | ||||
|                     "1615v8ywwdm204bimq2cf6qv0zas14yagpr8lk9a5zqxas4p4rns" | ||||
|                     '("x86_64-linux" "i686-linux") | ||||
|                     #:configuration-file kernel-config)) | ||||
| 
 | ||||
| (define-public linux-libre-4.4 | ||||
|   (make-linux-libre "4.4.180" | ||||
|                     "157kfs4slii86q9yrspvqdynpiv6rff80hrrn569v6h4nkc4b7ag" | ||||
|   (make-linux-libre "4.4.182" | ||||
|                     "0ggs5pyjr7a9mldskfbsybzxlb3lmfbhxg5q2qpzxnh1c8wcn53h" | ||||
|                     '("x86_64-linux" "i686-linux") | ||||
|                     #:configuration-file kernel-config | ||||
|                     #:extra-options | ||||
|  | @ -4788,14 +4788,14 @@ re-use code and to avoid re-inventing the wheel.") | |||
| (define-public libnftnl | ||||
|   (package | ||||
|     (name "libnftnl") | ||||
|     (version "1.1.2") | ||||
|     (version "1.1.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://netfilter.org/libnftnl/" | ||||
|                            "libnftnl-" version ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 "0pffmsv41alsn5ac7mwnb9fh3qpwzqk13jrzn6c5i71wq6kbgix5")))) | ||||
|         (base32 "03xszkcpqk3s1rqc6vh7g5j13kh3d3yjnvjhk5scds3an39rgp92")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|  |  | |||
|  | @ -4,6 +4,8 @@ | |||
| ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> | ||||
| ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> | ||||
| ;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -26,6 +28,7 @@ | |||
|   #:use-module (guix utils) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system python) | ||||
|   #:use-module (gnu packages) | ||||
|  | @ -181,3 +184,30 @@ commands, displaying the results via a web interface.") | |||
|      "MultiTail allows you to monitor logfiles and command output in multiple | ||||
| windows in a terminal, colorize, filter and merge.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public spdlog | ||||
|   (package | ||||
|     (name "spdlog") | ||||
|     (version "1.3.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/gabime/spdlog.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1rd4zmrlkcdjx0m0wpmjm1g9srj7jak6ai08qkhbn2lsn0niifzd")))) | ||||
|     (build-system cmake-build-system) | ||||
|     ;; TODO run benchmark. Currently not possible, as adding | ||||
|     ;; (gnu packages benchmark) forms a dependency cycle | ||||
|     (arguments | ||||
|      '(#:configure-flags | ||||
|        (list "-DSPDLOG_BUILD_BENCH=OFF"))) | ||||
|     (home-page "https://github.com/gabime/spdlog") | ||||
|     (synopsis "Fast C++ logging library") | ||||
|     (description "Spdlog is a very fast header-only/compiled C++ logging | ||||
| library.") | ||||
|     ;; spdlog is under Expat license, but the bundled fmt library in | ||||
|     ;; "include/spdlog/fmt/bundled" is under BSD 2 clause license. | ||||
|     (license (list license:expat license:bsd-2)))) | ||||
|  |  | |||
|  | @ -10,6 +10,7 @@ | |||
| ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> | ||||
| ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> | ||||
| ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> | ||||
| ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -53,6 +54,7 @@ | |||
|   #:use-module (gnu packages dejagnu) | ||||
|   #:use-module (gnu packages gcc) | ||||
|   #:use-module (gnu packages glib) | ||||
|   #:use-module (gnu packages graphviz) | ||||
|   #:use-module (gnu packages gstreamer) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages linux) | ||||
|  | @ -67,6 +69,7 @@ | |||
|   #:use-module (gnu packages python-web) | ||||
|   #:use-module (gnu packages python-xyz) | ||||
|   #:use-module (gnu packages serialization) | ||||
|   #:use-module (gnu packages sphinx) | ||||
|   #:use-module (gnu packages statistics) | ||||
|   #:use-module (gnu packages sqlite) | ||||
|   #:use-module (gnu packages swig) | ||||
|  | @ -668,7 +671,7 @@ geometric models.") | |||
|        `(#:configure-flags | ||||
|          (list ,@(match (%current-system) | ||||
|                    ((or "x86_64-linux" "i686-linux") | ||||
|                     '("-DCMAKE_CXX_FLAGS=-msse4.1")) | ||||
|                     '("-DCMAKE_CXX_FLAGS=-msse2")) | ||||
|                    (_ '()))) | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|  | @ -792,7 +795,7 @@ computing environments.") | |||
| (define-public python-scikit-learn | ||||
|   (package | ||||
|     (name "python-scikit-learn") | ||||
|     (version "0.20.1") | ||||
|     (version "0.20.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -802,7 +805,7 @@ computing environments.") | |||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0fkhwg3xn1s7ln9q1szq6kwc4jhwvjh8w4kmv9wcrqy7cq3lbv0d")))) | ||||
|          "08aaby5zphfxy83mggg35bwyka7wk91l2qijh8kk0bl08dikq8dl")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -1753,3 +1756,162 @@ API for beginners that allows users to build models quickly by plugging | |||
| together building blocks and a subclassing API with an imperative style for | ||||
| advanced research.") | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| (define-public python-iml | ||||
|   (package | ||||
|     (name "python-iml") | ||||
|     (version "0.6.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "iml" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1k8szlpm19rcwcxdny9qdm3gmaqq8akb4xlvrzyz8c2d679aak6l")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("ipython" ,python-ipython) | ||||
|        ("nose" ,python-nose) | ||||
|        ("numpy" ,python-numpy) | ||||
|        ("pandas" ,python-pandas) | ||||
|        ("scipy" ,python-scipy))) | ||||
|     (home-page "http://github.com/interpretable-ml/iml") | ||||
|     (synopsis "Interpretable Machine Learning (iML) package") | ||||
|     (description "Interpretable ML (iML) is a set of data type objects, | ||||
| visualizations, and interfaces that can be used by any method designed to | ||||
| explain the predictions of machine learning models (or really the output of | ||||
| any function).  It currently contains the interface and IO code from the Shap | ||||
| project, and it will potentially also do the same for the Lime project.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public python-keras-applications | ||||
|   (package | ||||
|     (name "python-keras-applications") | ||||
|     (version "1.0.8") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "Keras_Applications" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1rcz31ca4axa6kzhjx4lwqxbg4wvlljkj8qj9a7p9sfd5fhzjyam")))) | ||||
|     (build-system python-build-system) | ||||
|     ;; The tests require Keras, but this package is needed to build Keras. | ||||
|     (arguments '(#:tests? #f)) | ||||
|     (propagated-inputs | ||||
|      `(("python-h5py" ,python-h5py) | ||||
|        ("python-numpy" ,python-numpy))) | ||||
|     (native-inputs | ||||
|      `(("python-pytest" ,python-pytest) | ||||
|        ("python-pytest-cov" ,python-pytest-cov) | ||||
|        ("python-pytest-pep8" ,python-pytest-pep8) | ||||
|        ("python-pytest-xdist" ,python-pytest-xdist))) | ||||
|     (home-page "https://github.com/keras-team/keras-applications") | ||||
|     (synopsis "Reference implementations of popular deep learning models") | ||||
|     (description | ||||
|      "This package provides reference implementations of popular deep learning | ||||
| models for use with the Keras deep learning framework.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public python-keras-preprocessing | ||||
|   (package | ||||
|     (name "python-keras-preprocessing") | ||||
|     (version "1.1.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "Keras_Preprocessing" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1r98nm4k1svsqjyaqkfk23i31bl1kcfcyp7094yyj3c43phfp3as")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-numpy" ,python-numpy) | ||||
|        ("python-six" ,python-six))) | ||||
|     (native-inputs | ||||
|      `(("python-pandas" ,python-pandas) | ||||
|        ("python-pillow" ,python-pillow) | ||||
|        ("python-pytest" ,python-pytest) | ||||
|        ("python-pytest-cov" ,python-pytest-cov) | ||||
|        ("python-pytest-xdist" ,python-pytest-xdist) | ||||
|        ("tensorflow" ,tensorflow))) | ||||
|     (home-page "https://github.com/keras-team/keras-preprocessing/") | ||||
|     (synopsis "Data preprocessing and augmentation for deep learning models") | ||||
|     (description | ||||
|      "Keras Preprocessing is the data preprocessing and data augmentation | ||||
| module of the Keras deep learning library.  It provides utilities for working | ||||
| with image data, text data, and sequence data.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public python-keras | ||||
|   (package | ||||
|     (name "python-keras") | ||||
|     (version "2.2.4") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "Keras" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1j8bsqzh49vjdxy6l1k4iwax5vpjzniynyd041xjavdzvfii1dlh")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'remove-tests-for-unavailable-features | ||||
|            (lambda _ | ||||
|              (delete-file "keras/backend/theano_backend.py") | ||||
|              (delete-file "keras/backend/cntk_backend.py") | ||||
|              (delete-file "tests/keras/backend/backend_test.py") | ||||
| 
 | ||||
|              ;; FIXME: This doesn't work because Tensorflow is missing the | ||||
|              ;; coder ops library. | ||||
|              (delete-file "tests/keras/test_callbacks.py") | ||||
|              #t)) | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              ;; These tests attempt to download data files from the internet. | ||||
|              (delete-file "tests/integration_tests/test_datasets.py") | ||||
|              (delete-file "tests/integration_tests/imagenet_utils_test.py") | ||||
| 
 | ||||
|              (setenv "PYTHONPATH" | ||||
|                      (string-append (getcwd) "/build/lib:" | ||||
|                                     (getenv "PYTHONPATH"))) | ||||
|              (invoke "py.test" "-v" | ||||
|                      "-p" "no:cacheprovider" | ||||
|                      "--ignore" "keras/utils")))))) | ||||
|     (propagated-inputs | ||||
|      `(("python-h5py" ,python-h5py) | ||||
|        ("python-keras-applications" ,python-keras-applications) | ||||
|        ("python-keras-preprocessing" ,python-keras-preprocessing) | ||||
|        ("python-numpy" ,python-numpy) | ||||
|        ("python-pydot" ,python-pydot) | ||||
|        ("python-pyyaml" ,python-pyyaml) | ||||
|        ("python-scipy" ,python-scipy) | ||||
|        ("python-six" ,python-six) | ||||
|        ("tensorflow" ,tensorflow) | ||||
|        ("graphviz" ,graphviz))) | ||||
|     (native-inputs | ||||
|      `(("python-pandas" ,python-pandas) | ||||
|        ("python-pytest" ,python-pytest) | ||||
|        ("python-pytest-cov" ,python-pytest-cov) | ||||
|        ("python-pytest-pep8" ,python-pytest-pep8) | ||||
|        ("python-pytest-timeout" ,python-pytest-timeout) | ||||
|        ("python-pytest-xdist" ,python-pytest-xdist) | ||||
|        ("python-sphinx" ,python-sphinx) | ||||
|        ("python-requests" ,python-requests))) | ||||
|     (home-page "https://github.com/keras-team/keras") | ||||
|     (synopsis "High-level deep learning framework") | ||||
|     (description "Keras is a high-level neural networks API, written in Python | ||||
| and capable of running on top of TensorFlow.  It was developed with a focus on | ||||
| enabling fast experimentation.  Use Keras if you need a deep learning library | ||||
| that: | ||||
| 
 | ||||
| @itemize | ||||
| @item Allows for easy and fast prototyping (through user friendliness, | ||||
|   modularity, and extensibility). | ||||
| @item Supports both convolutional networks and recurrent networks, as well as | ||||
|   combinations of the two. | ||||
| @item Runs seamlessly on CPU and GPU. | ||||
| @end itemize\n") | ||||
|     (license license:expat))) | ||||
|  |  | |||
|  | @ -847,14 +847,14 @@ invoking @command{notifymuch} from the post-new hook.") | |||
| (define-public notmuch | ||||
|   (package | ||||
|     (name "notmuch") | ||||
|     (version "0.29") | ||||
|     (version "0.29.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://notmuchmail.org/releases/notmuch-" | ||||
|                                   version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0rg4jp0wlsham76rx9fmlpmcbv3n9vsd81vrzqvh6jrwlnmjds88")))) | ||||
|                 "0rg3rwghd3wivf3bmqcqpkkd5c779ld5hi363zjcw5fl6a7gqilq")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build gnu-build-system) | ||||
|  | @ -863,7 +863,7 @@ invoking @command{notifymuch} from the post-new hook.") | |||
|        #:imported-modules (,@%gnu-build-system-modules | ||||
|                            (guix build emacs-build-system) | ||||
|                            (guix build emacs-utils)) | ||||
|        #:make-flags (list "V=1") ; Verbose test output. | ||||
|        #:make-flags (list "V=1")        ; verbose test output | ||||
|        #:phases (modify-phases %standard-phases | ||||
|                   (add-after 'unpack 'patch-notmuch-lib.el | ||||
|                     (lambda _ | ||||
|  | @ -894,7 +894,7 @@ invoking @command{notifymuch} from the post-new hook.") | |||
|                     (assoc-ref emacs:%standard-phases 'make-autoloads))))) | ||||
|     (native-inputs | ||||
|      `(("bash-completion" ,bash-completion) | ||||
|        ("emacs" ,emacs-no-x) ; Minimal lacks libxml, needed for some tests. | ||||
|        ("emacs" ,emacs-no-x)    ; -minimal lacks libxml, needed for some tests | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("python" ,python) | ||||
|        ("python-docutils" ,python-docutils) | ||||
|  | @ -2592,15 +2592,14 @@ tools and applications: | |||
| (define-public balsa | ||||
|   (package | ||||
|     (name "balsa") | ||||
|     (version "2.5.6") | ||||
|     (version "2.5.7") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://pawsa.fedorapeople.org/balsa/" | ||||
|                            name "-" version ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "17k6wcsl8gki7cskr3hhmfj6n54rha8ca3b6fzd8blsl5shsankx")))) | ||||
|         (base32 "0yfqhfpwm1qnwmbpr6dfn2f5w8a8xxq51pn8ypgg0fw973l1c1nx")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|  | @ -2622,7 +2621,7 @@ tools and applications: | |||
|        ("gnutls" ,gnutls) | ||||
|        ("gpgme" ,gpgme) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("gtksourceview" ,gtksourceview) | ||||
|        ("gtksourceview" ,gtksourceview-3) | ||||
|        ("gtkspell3" ,gtkspell3) | ||||
|        ("libcanberra" ,libcanberra) | ||||
|        ("libesmtp" ,libesmtp) | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr> | ||||
| ;;; Copyright © 2013, 2014, 2015, 2016, 2019 Andreas Enge <andreas@enge.fr> | ||||
| ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> | ||||
| ;;; Copyright © 2014, 2016, 2017 John Darrington <jmd@gnu.org> | ||||
| ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Eric Bavier <bavier@member.fsf.org> | ||||
|  | @ -290,13 +290,13 @@ programming language.") | |||
| (define-public units | ||||
|   (package | ||||
|    (name "units") | ||||
|    (version "2.18") | ||||
|    (version "2.19") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append "mirror://gnu/units/units-" version | ||||
|                                 ".tar.gz")) | ||||
|             (sha256 (base32 | ||||
|                      "0y26kj349i048y4z3xrk90bvciw2j6ds3rka7r7yn3183hirr5b4")))) | ||||
|                      "0mk562g7dnidjgfgvkxxpvlba66fh1ykmfd9ylzvcln1vxmi6qj2")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (inputs | ||||
|     `(("readline" ,readline) | ||||
|  | @ -5003,3 +5003,42 @@ command-line tools, and an Application Programming Interface (API). | |||
| This package provides the static libraries required to run programs | ||||
| compiled against the nauty library.") | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| (define-public ppl | ||||
|   (package | ||||
|     (name "ppl") | ||||
|     (version "1.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://www.bugseng.com/products/ppl/download/" | ||||
|                            "ftp/releases/" version | ||||
|                            "/ppl-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1j5aji1g2vmdvc0gqz45n2ll2l2f6czca04wiyfl5g3sm3a6vhvb")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("m4", m4))) | ||||
|     (inputs | ||||
|      `(("glpk" ,glpk) | ||||
|        ("gmp", gmp))) | ||||
|     (home-page "https://www.bugseng.com/parma-polyhedra-library") | ||||
|     (synopsis | ||||
|      "Parma Polyhedra Library for computations with polyhedra") | ||||
|     (description | ||||
|      "The Parma Polyhedra Library (PPL) provides numerical abstractions | ||||
| especially targeted at applications in the field of analysis and | ||||
| verification of complex systems.  These abstractions include convex | ||||
| polyhedra, defined as the intersection of a finite number of (open or | ||||
| closed) halfspaces, each described by a linear inequality (strict or | ||||
| non-strict) with rational coefficients; some special classes of polyhedra | ||||
| shapes that offer interesting complexity/precision tradeoffs; and grids | ||||
| which represent regularly spaced points that satisfy a set of linear | ||||
| congruence relations.  The library also supports finite powersets and | ||||
| products of (any kind of) polyhedra and grids, a mixed integer linear | ||||
| programming problem solver using an exact-arithmetic version of the simplex | ||||
| algorithm, a parametric integer programming solver, and primitives for | ||||
| termination analysis via the automatic synthesis of linear ranking | ||||
| functions.") | ||||
|     (license license:gpl3+))) | ||||
|  |  | |||
|  | @ -29,6 +29,7 @@ | |||
|   #:use-module (gnu packages man) | ||||
|   #:use-module (gnu packages package-management) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages texinfo) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix download) | ||||
|  | @ -36,7 +37,7 @@ | |||
|   #:use-module (guix licenses) | ||||
|   #:use-module (guix packages)) | ||||
| 
 | ||||
| (define-public nyacc | ||||
| (define-public nyacc-0.86 | ||||
|   (package | ||||
|     (name "nyacc") | ||||
|     (version "0.86.0") | ||||
|  | @ -59,6 +60,37 @@ extensive examples, including parsers for the Javascript and C99 languages.") | |||
|     (home-page "https://savannah.nongnu.org/projects/nyacc") | ||||
|     (license (list gpl3+ lgpl3+)))) | ||||
| 
 | ||||
| (define-public nyacc | ||||
|   (package | ||||
|     (inherit nyacc-0.86) | ||||
|     (version "0.94.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://savannah/nyacc/nyacc-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "12qnzwm1n3j8z7hbr9hy2wka9a1aasm2rvnpnvdxkjcsbdzj8fn4")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                '(begin | ||||
|                   (substitute* (find-files "." "^Makefile\\.in$") | ||||
|                     (("^SITE_SCM_DIR =.*") | ||||
|                      "SITE_SCM_DIR = \ | ||||
| @prefix@/share/guile/site/@GUILE_EFFECTIVE_VERSION@\n") | ||||
|                     (("^SITE_SCM_GO_DIR =.*") | ||||
|                      "SITE_SCM_GO_DIR = \ | ||||
| @prefix@/lib/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n") | ||||
|                     (("^INFODIR =.*") | ||||
|                      "INFODIR = @prefix@/share/info\n") | ||||
|                     (("^DOCDIR =.*") | ||||
|                      "DOCDIR = @prefix@/share/doc/$(PACKAGE_TARNAME)\n")) | ||||
|                   #t)))) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("guile" ,guile-2.2))))) | ||||
| 
 | ||||
| (define-public mes | ||||
|   (package | ||||
|     (name "mes") | ||||
|  | @ -74,7 +106,10 @@ extensive examples, including parsers for the Javascript and C99 languages.") | |||
|     (supported-systems '("i686-linux" "x86_64-linux")) | ||||
|     (propagated-inputs | ||||
|      `(("mescc-tools" ,mescc-tools) | ||||
|        ("nyacc" ,nyacc))) | ||||
| 
 | ||||
|        ;; XXX: MesCC appears to enter an infinite loop (?) while building | ||||
|        ;; crt1.o when we switch to nyacc 0.94. | ||||
|        ("nyacc" ,nyacc-0.86))) | ||||
|     (native-inputs | ||||
|      `(("guile" ,guile-2.2) | ||||
|        ,@(let ((target-system (or (%current-target-system) | ||||
|  |  | |||
|  | @ -91,7 +91,7 @@ interfacing MPD in the C, C++ & Objective C languages.") | |||
| (define-public mpd | ||||
|   (package | ||||
|     (name "mpd") | ||||
|     (version "0.21.9") | ||||
|     (version "0.21.10") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri | ||||
|  | @ -100,10 +100,10 @@ interfacing MPD in the C, C++ & Objective C languages.") | |||
|                               "/mpd-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0ghda8g9q0bi6nrvl6n756d8f45spqpblkh77mnb4k9gmiv57qir")))) | ||||
|                 "0fx9n6qmyb4ls17j7kl58i1ivg9wfx9zm9wyfnwzw7lcwdl56sqk")))) | ||||
|     (build-system meson-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("-Ddocumentation=true") ; The default is 'false'... | ||||
|      `(#:configure-flags '("-Ddocumentation=true") ; the default is 'false'... | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'expand-C++-include-path | ||||
|  | @ -171,7 +171,7 @@ protocol.") | |||
| (define-public mpd-mpc | ||||
|   (package | ||||
|     (name "mpd-mpc") | ||||
|     (version "0.31") | ||||
|     (version "0.32") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri | ||||
|  | @ -180,7 +180,7 @@ protocol.") | |||
|                               "/mpc-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0b9bsn4sl26xc6wdcms51x9yxznkxkppaycn8gnv4rd1m21kwdv2")))) | ||||
|                 "1irilgz64pny7b8zygy5i74nfmlhgsawz0djx9mrj6g0gidxjqbr")))) | ||||
|     (build-system meson-build-system) | ||||
|     (inputs `(("libmpdclient" ,libmpdclient))) | ||||
|     (native-inputs | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ | |||
| ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -30,15 +30,13 @@ | |||
| (define-public nano | ||||
|   (package | ||||
|     (name "nano") | ||||
|     (version "4.2") | ||||
|     (version "4.3") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|       (uri (string-append "mirror://gnu/nano/nano-" | ||||
|                           version ".tar.xz")) | ||||
|       (uri (string-append "mirror://gnu/nano/nano-" version ".tar.xz")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "1yaxqk6f1awnny0ywikdwb7mdv8xbipdpzsj28j1nf9fwvydwhqi")))) | ||||
|        (base32 "108dzj6azqmini9bvgl26r0q1y59s3nnrw75hfzv91bs50davlq0")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("gettext" ,gettext-minimal) | ||||
|  |  | |||
|  | @ -27,6 +27,7 @@ | |||
| ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> | ||||
| ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||||
| ;;; Copyright © 2019 Vasile Dumitrascu <va511e@yahoo.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -549,7 +550,7 @@ and up to 1 Mbit/s downstream.") | |||
| (define-public whois | ||||
|   (package | ||||
|     (name "whois") | ||||
|     (version "5.4.2") | ||||
|     (version "5.4.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -557,7 +558,7 @@ and up to 1 Mbit/s downstream.") | |||
|                            name "_" version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0mqzs0g2qxd29ihammisg9qf4503sr7d4zas26zjz4an78xkmqzf")))) | ||||
|          "1hqg14k0q4979a1amgms4sa1d2iiid51rra3jyqmv63hkw189ypy")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                      ; no test suite | ||||
|  | @ -685,13 +686,13 @@ fashion.") | |||
| (define-public gandi.cli | ||||
|   (package | ||||
|     (name "gandi.cli") | ||||
|     (version "1.4") | ||||
|     (version "1.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri name version)) | ||||
|        (sha256 | ||||
|         (base32 "1lfvb5npk99nz1lwhr5m67ia1kj35nqd6a2xp9mii28xgzsd5awk")))) | ||||
|         (base32 "110wc9zgxsrvw4yzp21p0ian5lcf7vhcpxhnmsc4fg9pzl2bwxd5")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -885,7 +886,7 @@ live network and disk I/O bandwidth monitor.") | |||
| (define-public aircrack-ng | ||||
|   (package | ||||
|     (name "aircrack-ng") | ||||
|     (version "1.3") | ||||
|     (version "1.5.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -893,7 +894,7 @@ live network and disk I/O bandwidth monitor.") | |||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1jl30d0kibc82447fr3lgw75arik0l9729k94z76l7vl51y8mq4a")))) | ||||
|          "0hc2x17bxk2n00z8jj5jfwq3z41681fd19n018724il0cpkjyncy")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|  | @ -2255,7 +2256,7 @@ Ethernet and TAP interfaces is supported.  Packet capture is also supported.") | |||
| (define-public hcxtools | ||||
|   (package | ||||
|     (name "hcxtools") | ||||
|     (version "5.1.4") | ||||
|     (version "5.1.6") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -2263,7 +2264,7 @@ Ethernet and TAP interfaces is supported.  Packet capture is also supported.") | |||
|              (url "https://github.com/ZerBea/hcxtools.git") | ||||
|              (commit version))) | ||||
|        (sha256 | ||||
|         (base32 "1bkl0j6m5q091fas99s83aclcc5kfwacmkgmyg8565z2npvnj7nf")) | ||||
|         (base32 "05sjbmv2wq3nlmammrwxqc62c4sagjjgczzddr1jcqkf6kywzkl8")) | ||||
|        (file-name (git-file-name name version)))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|  | @ -2298,7 +2299,7 @@ packets from wireless devices for use with hashcat or John the Ripper.") | |||
| (define-public hcxdumptool | ||||
|   (package | ||||
|     (name "hcxdumptool") | ||||
|     (version "5.1.4") | ||||
|     (version "5.1.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|  | @ -2306,7 +2307,7 @@ packets from wireless devices for use with hashcat or John the Ripper.") | |||
|              (url "https://github.com/ZerBea/hcxdumptool.git") | ||||
|              (commit version))) | ||||
|        (sha256 | ||||
|         (base32 "0h2cc2dfpc83325hwqkxwn0p8qfq5gh1dg0yb1nr8bnffy0b4r4v")) | ||||
|         (base32 "0xkzdvwpi6dq9wsrn882f2ljb7d5v2bvarq8gs6jm8znfx3y8hi2")) | ||||
|        (file-name (git-file-name name version)))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|  |  | |||
|  | @ -9,6 +9,7 @@ | |||
| ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> | ||||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -26,8 +27,10 @@ | |||
| ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>. | ||||
| 
 | ||||
| (define-module (gnu packages parallel) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system python) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (gnu packages) | ||||
|  | @ -40,6 +43,7 @@ | |||
|   #: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 tcl) | ||||
|   #:use-module (gnu packages tls) | ||||
|  | @ -188,3 +192,50 @@ to SLURM.  Using DRMAA, grid applications builders, portal developers and ISVs | |||
| can use the same high-level API to link their software with different | ||||
| cluster/resource management systems.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public python-slurm-magic | ||||
|   (let ((commit "73dd1a2b85799f7dae4b3f1cd9027536eff0c4d7") | ||||
|         (revision "0")) | ||||
|     (package | ||||
|       (name "python-slurm-magic") | ||||
|       (version (git-version "0.0" revision commit)) | ||||
|       (home-page "https://github.com/NERSC/slurm-magic") | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference (url home-page) | ||||
|                                     (commit commit))) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "19pp2vs0wm8mx0arz9n6lw9wgyv70w9wyi4y6b91qc5j3bz5igfs")) | ||||
|                 (file-name (git-file-name name version)))) | ||||
|       (build-system python-build-system) | ||||
|       (arguments | ||||
|        '(#:phases (modify-phases %standard-phases | ||||
|                     (add-before 'build 'set-slurm-path | ||||
|                       (lambda* (#:key inputs #:allow-other-keys) | ||||
|                         ;; The '_execute' method tries to exec 'salloc' | ||||
|                         ;; etc. from $PATH.  Record the absolute file name | ||||
|                         ;; instead. | ||||
|                         (let ((slurm (assoc-ref inputs "slurm"))) | ||||
|                           (substitute* "slurm_magic.py" | ||||
|                             (("name = (.*)$" _ value) | ||||
|                              (string-append "name = \"" | ||||
|                                             slurm "/bin/\" + " | ||||
|                                             value "\n"))) | ||||
|                           #t)))))) | ||||
|       (inputs | ||||
|        `(("slurm" ,slurm))) | ||||
|       (propagated-inputs | ||||
|        `(("python-ipython" ,python-ipython) | ||||
|          ("python-pandas" ,python-pandas))) | ||||
|       (synopsis "Control the SLURM batch scheduler from Jupyter Notebook") | ||||
|       (description | ||||
|        "This package implements Jupyter/IPython | ||||
| @uref{http://ipython.readthedocs.io/en/stable/interactive/magics.html, magic | ||||
| commands} for interacting with the SLURM workload manager.  SLURM magic simply | ||||
| wraps command-line executables and the commands themselves should look like | ||||
| their command-line counterparts.  Commands are spawned via @code{subprocess} | ||||
| and output captured in the notebook.  Whatever arguments are accepted by a | ||||
| SLURM command line executable are also accepted by the corresponding magic | ||||
| command---e.g., @code{%salloc}, @code{%sbatch}, etc.") | ||||
|       (license license:bsd-3)))) | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de> | ||||
| ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> | ||||
| ;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se> | ||||
|  | @ -108,7 +108,7 @@ human.") | |||
| (define-public keepassxc | ||||
|   (package | ||||
|     (name "keepassxc") | ||||
|     (version "2.4.2") | ||||
|     (version "2.4.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -117,7 +117,7 @@ human.") | |||
|                            version "-src.tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0f31lmpbkw0wrhq0qa4yw5b51bjv7vqp3ikr355qcm905456vyhm")))) | ||||
|          "0d17izx6qvcsxsxlsmaa17rgn38fvxsp5yzqqf4pc11i44cm5jfp")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags '("-DWITH_XC_NETWORKING=YES" | ||||
|  |  | |||
							
								
								
									
										69
									
								
								gnu/packages/patches/benchmark-unbundle-googletest.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								gnu/packages/patches/benchmark-unbundle-googletest.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,69 @@ | |||
| From 5eb306618196ea78b8c9390e22ea2edce20760fe Mon Sep 17 00:00:00 2001 | ||||
| From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com> | ||||
| Date: Fri, 14 Jun 2019 22:15:49 +0200 | ||||
| Subject: [PATCH] Remove googletest lookup from build system. | ||||
| 
 | ||||
| ---
 | ||||
|  cmake/GoogleTest.cmake    | 18 +++++++++--------- | ||||
|  cmake/GoogleTest.cmake.in | 12 ++++++------ | ||||
|  2 files changed, 15 insertions(+), 15 deletions(-) | ||||
| 
 | ||||
| diff --git a/cmake/GoogleTest.cmake b/cmake/GoogleTest.cmake
 | ||||
| index fb7c6be..a6c473b 100644
 | ||||
| --- a/cmake/GoogleTest.cmake
 | ||||
| +++ b/cmake/GoogleTest.cmake
 | ||||
| @@ -27,15 +27,15 @@ endif()
 | ||||
|  # settings on Windows | ||||
|  set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) | ||||
|   | ||||
| -include(${GOOGLETEST_PREFIX}/googletest-paths.cmake)
 | ||||
| +#include(${GOOGLETEST_PREFIX}/googletest-paths.cmake)
 | ||||
|   | ||||
|  # Add googletest directly to our build. This defines | ||||
|  # the gtest and gtest_main targets. | ||||
| -add_subdirectory(${GOOGLETEST_SOURCE_DIR}
 | ||||
| -                 ${GOOGLETEST_BINARY_DIR}
 | ||||
| -                 EXCLUDE_FROM_ALL)
 | ||||
| -
 | ||||
| -set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| -set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| -set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| -set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| +#add_subdirectory(${GOOGLETEST_SOURCE_DIR}
 | ||||
| +#                 ${GOOGLETEST_BINARY_DIR}
 | ||||
| +#                 EXCLUDE_FROM_ALL)
 | ||||
| +
 | ||||
| +#set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| +#set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| +#set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| +#set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>)
 | ||||
| diff --git a/cmake/GoogleTest.cmake.in b/cmake/GoogleTest.cmake.in
 | ||||
| index 28818ee..13b0888 100644
 | ||||
| --- a/cmake/GoogleTest.cmake.in
 | ||||
| +++ b/cmake/GoogleTest.cmake.in
 | ||||
| @@ -31,7 +31,7 @@ if(EXISTS "${GOOGLETEST_PATH}"            AND IS_DIRECTORY "${GOOGLETEST_PATH}"
 | ||||
|    ) | ||||
|  else() | ||||
|    if(NOT ALLOW_DOWNLOADING_GOOGLETEST) | ||||
| -    message(SEND_ERROR "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.")
 | ||||
| +    message(WARNING "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.")
 | ||||
|    else() | ||||
|      message(WARNING "Did not find Google Test sources! Fetching from web...") | ||||
|      ExternalProject_Add( | ||||
| @@ -51,8 +51,8 @@ else()
 | ||||
|    endif() | ||||
|  endif() | ||||
|   | ||||
| -ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR)
 | ||||
| -file(WRITE googletest-paths.cmake
 | ||||
| -"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\")
 | ||||
| -set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\")
 | ||||
| -")
 | ||||
| +#ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR)
 | ||||
| +#file(WRITE googletest-paths.cmake
 | ||||
| +#"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\")
 | ||||
| +#set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\")
 | ||||
| +#")
 | ||||
| -- 
 | ||||
| 2.22.0 | ||||
| 
 | ||||
							
								
								
									
										116
									
								
								gnu/packages/patches/dbus-CVE-2019-12749.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										116
									
								
								gnu/packages/patches/dbus-CVE-2019-12749.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,116 @@ | |||
| From 47b1a4c41004bf494b87370987b222c934b19016 Mon Sep 17 00:00:00 2001 | ||||
| From: Simon McVittie <smcv@collabora.com> | ||||
| Date: Thu, 30 May 2019 12:53:03 +0100 | ||||
| Subject: [PATCH] auth: Reject DBUS_COOKIE_SHA1 for users other than the server | ||||
|  owner | ||||
| 
 | ||||
| The DBUS_COOKIE_SHA1 authentication mechanism aims to prove ownership | ||||
| of a shared home directory by having the server write a secret "cookie" | ||||
| into a .dbus-keyrings subdirectory of the desired identity's home | ||||
| directory with 0700 permissions, and having the client prove that it can | ||||
| read the cookie. This never actually worked for non-malicious clients in | ||||
| the case where server uid != client uid (unless the server and client | ||||
| both have privileges, such as Linux CAP_DAC_OVERRIDE or traditional | ||||
| Unix uid 0) because an unprivileged server would fail to write out the | ||||
| cookie, and an unprivileged client would be unable to read the resulting | ||||
| file owned by the server. | ||||
| 
 | ||||
| Additionally, since dbus 1.7.10 we have checked that ~/.dbus-keyrings | ||||
| is owned by the uid of the server (a side-effect of a check added to | ||||
| harden our use of XDG_RUNTIME_DIR), further ruling out successful use | ||||
| by a non-malicious client with a uid differing from the server's. | ||||
| 
 | ||||
| Joe Vennix of Apple Information Security discovered that the | ||||
| implementation of DBUS_COOKIE_SHA1 was susceptible to a symbolic link | ||||
| attack: a malicious client with write access to its own home directory | ||||
| could manipulate a ~/.dbus-keyrings symlink to cause the DBusServer to | ||||
| read and write in unintended locations. In the worst case this could | ||||
| result in the DBusServer reusing a cookie that is known to the | ||||
| malicious client, and treating that cookie as evidence that a subsequent | ||||
| client connection came from an attacker-chosen uid, allowing | ||||
| authentication bypass. | ||||
| 
 | ||||
| This is mitigated by the fact that by default, the well-known system | ||||
| dbus-daemon (since 2003) and the well-known session dbus-daemon (in | ||||
| stable releases since dbus 1.10.0 in 2015) only accept the EXTERNAL | ||||
| authentication mechanism, and as a result will reject DBUS_COOKIE_SHA1 | ||||
| at an early stage, before manipulating cookies. As a result, this | ||||
| vulnerability only applies to: | ||||
| 
 | ||||
| * system or session dbus-daemons with non-standard configuration | ||||
| * third-party dbus-daemon invocations such as at-spi2-core (although | ||||
|   in practice at-spi2-core also only accepts EXTERNAL by default) | ||||
| * third-party uses of DBusServer such as the one in Upstart | ||||
| 
 | ||||
| Avoiding symlink attacks in a portable way is difficult, because APIs | ||||
| like openat() and Linux /proc/self/fd are not universally available. | ||||
| However, because DBUS_COOKIE_SHA1 already doesn't work in practice for | ||||
| a non-matching uid, we can solve this vulnerability in an easier way | ||||
| without regressions, by rejecting it early (before looking at | ||||
| ~/.dbus-keyrings) whenever the requested identity doesn't match the | ||||
| identity of the process hosting the DBusServer. | ||||
| 
 | ||||
| Signed-off-by: Simon McVittie <smcv@collabora.com> | ||||
| Closes: https://gitlab.freedesktop.org/dbus/dbus/issues/269 | ||||
| Closes: CVE-2019-12749 | ||||
| ---
 | ||||
|  dbus/dbus-auth.c | 32 ++++++++++++++++++++++++++++++++ | ||||
|  1 file changed, 32 insertions(+) | ||||
| 
 | ||||
| diff --git a/dbus/dbus-auth.c b/dbus/dbus-auth.c
 | ||||
| index 37d8d4c9..7390a9d5 100644
 | ||||
| --- a/dbus/dbus-auth.c
 | ||||
| +++ b/dbus/dbus-auth.c
 | ||||
| @@ -529,6 +529,7 @@ sha1_handle_first_client_response (DBusAuth         *auth,
 | ||||
|    DBusString tmp2; | ||||
|    dbus_bool_t retval = FALSE; | ||||
|    DBusError error = DBUS_ERROR_INIT; | ||||
| +  DBusCredentials *myself = NULL;
 | ||||
|   | ||||
|    _dbus_string_set_length (&auth->challenge, 0); | ||||
|     | ||||
| @@ -565,6 +566,34 @@ sha1_handle_first_client_response (DBusAuth         *auth,
 | ||||
|        return FALSE; | ||||
|      } | ||||
|   | ||||
| +  myself = _dbus_credentials_new_from_current_process ();
 | ||||
| +
 | ||||
| +  if (myself == NULL)
 | ||||
| +    goto out;
 | ||||
| +
 | ||||
| +  if (!_dbus_credentials_same_user (myself, auth->desired_identity))
 | ||||
| +    {
 | ||||
| +      /*
 | ||||
| +       * DBUS_COOKIE_SHA1 is not suitable for authenticating that the
 | ||||
| +       * client is anyone other than the user owning the process
 | ||||
| +       * containing the DBusServer: we probably aren't allowed to write
 | ||||
| +       * to other users' home directories. Even if we can (for example
 | ||||
| +       * uid 0 on traditional Unix or CAP_DAC_OVERRIDE on Linux), we
 | ||||
| +       * must not, because the other user controls their home directory,
 | ||||
| +       * and could carry out symlink attacks to make us read from or
 | ||||
| +       * write to unintended locations. It's difficult to avoid symlink
 | ||||
| +       * attacks in a portable way, so we just don't try. This isn't a
 | ||||
| +       * regression, because DBUS_COOKIE_SHA1 never worked for other
 | ||||
| +       * users anyway.
 | ||||
| +       */
 | ||||
| +      _dbus_verbose ("%s: client tried to authenticate as \"%s\", "
 | ||||
| +                     "but that doesn't match this process",
 | ||||
| +                     DBUS_AUTH_NAME (auth),
 | ||||
| +                     _dbus_string_get_const_data (data));
 | ||||
| +      retval = send_rejected (auth);
 | ||||
| +      goto out;
 | ||||
| +    }
 | ||||
| +
 | ||||
|    /* we cache the keyring for speed, so here we drop it if it's the | ||||
|     * wrong one. FIXME caching the keyring here is useless since we use | ||||
|     * a different DBusAuth for every connection. | ||||
| @@ -679,6 +708,9 @@ sha1_handle_first_client_response (DBusAuth         *auth,
 | ||||
|    _dbus_string_zero (&tmp2); | ||||
|    _dbus_string_free (&tmp2); | ||||
|   | ||||
| +  if (myself != NULL)
 | ||||
| +    _dbus_credentials_unref (myself);
 | ||||
| +
 | ||||
|    return retval; | ||||
|  } | ||||
|   | ||||
|  | @ -0,0 +1,48 @@ | |||
| From: Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| Date: Sun, 16 Jun 2019 02:34:10 +0200 | ||||
| Subject: [PATCH] gnu: dstat: Fix crash when specifying a delay. | ||||
| 
 | ||||
| Taken verbatim from a pull request[0] that will never be merged. | ||||
| 
 | ||||
| [0]: https://github.com/dagwieers/dstat/pull/167 | ||||
| 
 | ||||
| From 220a785321b13b6df92a536080aca6ef1cb644ad Mon Sep 17 00:00:00 2001 | ||||
| From: Falko Goettsch <falko@uw.edu> | ||||
| Date: Mon, 11 Mar 2019 20:12:49 -0700 | ||||
| Subject: [PATCH] Fixed bug when specifying a delay | ||||
| 
 | ||||
| The division in the 'loop' calculation in perform() was returning floating point values | ||||
| after the migration to Python 3, rather than rounding down. Changed to floor division. | ||||
| 
 | ||||
| I think the floating point values kept 'loop == 0' from ever being | ||||
| true and the variables inside that conditional were never initialized, | ||||
| causing the following error when a delay other than 1 was specified: | ||||
| 
 | ||||
| You did not select any stats, using -cdngy by default. | ||||
| Traceback (most recent call last): | ||||
|   File "/home/falko/repos/dstat/dstat", line 2825, in <module> | ||||
|     main() | ||||
|   File "/home/falko/repos/dstat/dstat", line 2684, in main | ||||
|     scheduler.run() | ||||
|   File "/home/falko/.conda/envs/python3/lib/python3.7/sched.py", line 151, in run | ||||
|     action(*argument, **kwargs) | ||||
|   File "/home/falko/repos/dstat/dstat", line 2729, in perform | ||||
|     oldcols = cols | ||||
| NameError: name 'cols' is not defined | ||||
| ---
 | ||||
|  dstat | 2 +- | ||||
|  1 file changed, 1 insertion(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/dstat b/dstat
 | ||||
| index 9359965..3b4980f 100755
 | ||||
| --- a/dstat
 | ||||
| +++ b/dstat
 | ||||
| @@ -2697,7 +2697,7 @@ def perform(update):
 | ||||
|   | ||||
|          starttime = time.time() | ||||
|   | ||||
| -        loop = (update - 1 + op.delay) / op.delay
 | ||||
| +        loop = (update - 1 + op.delay) // op.delay
 | ||||
|          step = ((update - 1) % op.delay) + 1 | ||||
|   | ||||
|          ### Get current time (may be different from schedule) for debugging | ||||
							
								
								
									
										32
									
								
								gnu/packages/patches/dstat-skip-devices-without-io.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								gnu/packages/patches/dstat-skip-devices-without-io.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| From: Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| Date: Sun, 16 Jun 2019 02:36:23 +0200 | ||||
| Subject: [PATCH] gnu: dstat: Skip devices without I/O. | ||||
| 
 | ||||
| Taken verbatim from a pull request[0] that will never be merged. | ||||
| 
 | ||||
| [0]: https://github.com/dagwieers/dstat/pull/164 | ||||
| 
 | ||||
| From 0988589ea4ee092b285bd4049d56add5f61e3f69 Mon Sep 17 00:00:00 2001 | ||||
| From: Tobias Gruetzmacher <tobias-git@23.gs> | ||||
| Date: Fri, 15 Feb 2019 18:46:57 +0100 | ||||
| Subject: [PATCH] Skip devices without I/O | ||||
| 
 | ||||
| Linux 4.18+ has added more fields to the diskstats proc file, so the | ||||
| original skip condition for devices without I/O didn't apply anymore. | ||||
| ---
 | ||||
|  dstat | 2 +- | ||||
|  1 file changed, 1 insertion(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/dstat b/dstat
 | ||||
| index 9359965..5c2fb53 100755
 | ||||
| --- a/dstat
 | ||||
| +++ b/dstat
 | ||||
| @@ -763,7 +763,7 @@ class dstat_disk(dstat):
 | ||||
|          ret = [] | ||||
|          for l in self.splitlines(): | ||||
|              if len(l) < 13: continue | ||||
| -            if l[3:] == ['0',] * 11: continue
 | ||||
| +            if l[3:] == ['0',] * (len(l) - 3): continue
 | ||||
|              name = l[2] | ||||
|              ret.append(name) | ||||
|          for item in objlist: ret.append(item) | ||||
|  | @ -1,27 +0,0 @@ | |||
| From a293690f29407ac54a218d6d20c2142e1a0319d1 Mon Sep 17 00:00:00 2001 | ||||
| From: Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||||
| Date: Wed, 31 Oct 2018 00:08:34 -0400 | ||||
| Subject: [PATCH] configure.ac: Fix NO_CHECK_EMACS_PACKAGES elisp. | ||||
| 
 | ||||
| Remove the extraneous trailing parenthesis. | ||||
| ---
 | ||||
|  configure.ac | 3 +-- | ||||
|  1 file changed, 1 insertion(+), 2 deletions(-) | ||||
| 
 | ||||
| diff --git a/configure.ac b/configure.ac
 | ||||
| index de0d932..69bcea7 100644
 | ||||
| --- a/configure.ac
 | ||||
| +++ b/configure.ac
 | ||||
| @@ -25,8 +25,7 @@ AC_MSG_NOTICE("Checking prerequiste packages")
 | ||||
|  $EMACS -batch -q --no-site-file -eval \ | ||||
|    '(dolist (package | ||||
|           (quote (cl-lib loc-changes load-relative test-simple))) | ||||
| -        (require package))
 | ||||
| -   )'
 | ||||
| +        (require package))'
 | ||||
|  fi | ||||
|  if test $? -ne 0 ; then | ||||
|      AC_MSG_ERROR([Can't continue until above error is corrected.]) | ||||
| -- 
 | ||||
| 2.19.0 | ||||
| 
 | ||||
							
								
								
									
										24
									
								
								gnu/packages/patches/emacs-unpackaged-req.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								gnu/packages/patches/emacs-unpackaged-req.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| From e5be173e201710538464c279335bef735a327a68 Mon Sep 17 00:00:00 2001 | ||||
| From: Brian Leung <bkleung89@gmail.com> | ||||
| Date: Tue, 18 Jun 2019 06:37:46 +0200 | ||||
| Subject: [PATCH] Add missing require. | ||||
| 
 | ||||
| ---
 | ||||
|  unpackaged.el | 1 + | ||||
|  1 file changed, 1 insertion(+) | ||||
| 
 | ||||
| diff --git a/unpackaged.el b/unpackaged.el
 | ||||
| index 2d46b3c..e62184a 100644
 | ||||
| --- a/unpackaged.el
 | ||||
| +++ b/unpackaged.el
 | ||||
| @@ -38,6 +38,7 @@
 | ||||
|  (require 'dash) | ||||
|  (require 's) | ||||
|  (require 'use-package) | ||||
| +(require 'hydra)
 | ||||
|   | ||||
|  ;;; Faces, fonts | ||||
|   | ||||
| -- 
 | ||||
| 2.22.0 | ||||
| 
 | ||||
|  | @ -1,499 +0,0 @@ | |||
| Fix compatibility with Poppler >= 0.69. | ||||
| 
 | ||||
| This is a combination of these upstream commits: | ||||
| https://gitlab.com/inkscape/inkscape/commit/722e121361d0f784083d10e897155b7d4e44e515 | ||||
| https://gitlab.com/inkscape/inkscape/commit/402c0274420fe39fd2f3393bc7d8d8879d436358 | ||||
| 
 | ||||
| ...with slight adjustments for the 0.92.3 release tarball. | ||||
| 
 | ||||
| diff --git a/CMakeScripts/DefineDependsandFlags.cmake b/CMakeScripts/DefineDependsandFlags.cmake
 | ||||
| --- a/CMakeScripts/DefineDependsandFlags.cmake
 | ||||
| +++ b/CMakeScripts/DefineDependsandFlags.cmake
 | ||||
| @@ -116,18 +116,6 @@ if(ENABLE_POPPLER)
 | ||||
|  		set(HAVE_POPPLER_GLIB ON) | ||||
|  	    endif() | ||||
|  	endif() | ||||
| -	if(POPPLER_VERSION VERSION_GREATER "0.26.0" OR
 | ||||
| -		POPPLER_VERSION VERSION_EQUAL   "0.26.0")
 | ||||
| -	    set(POPPLER_EVEN_NEWER_COLOR_SPACE_API ON)
 | ||||
| -	endif()
 | ||||
| -	if(POPPLER_VERSION VERSION_GREATER "0.29.0" OR
 | ||||
| -		POPPLER_VERSION VERSION_EQUAL   "0.29.0")
 | ||||
| -	    set(POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API ON)
 | ||||
| -	endif()
 | ||||
| -	if(POPPLER_VERSION VERSION_GREATER "0.58.0" OR
 | ||||
| -		POPPLER_VERSION VERSION_EQUAL   "0.58.0")
 | ||||
| -            set(POPPLER_NEW_OBJECT_API ON)
 | ||||
| -	endif()
 | ||||
|      else() | ||||
|  	set(ENABLE_POPPLER_CAIRO OFF) | ||||
|      endif() | ||||
| diff --git a/src/extension/internal/pdfinput/pdf-input.cpp b/src/extension/internal/pdfinput/pdf-input.cpp
 | ||||
| --- a/src/extension/internal/pdfinput/pdf-input.cpp
 | ||||
| +++ b/src/extension/internal/pdfinput/pdf-input.cpp
 | ||||
| @@ -793,7 +793,7 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) {
 | ||||
|              dlg->getImportSettings(prefs); | ||||
|   | ||||
|          // Apply crop settings | ||||
| -        PDFRectangle *clipToBox = NULL;
 | ||||
| +        _POPPLER_CONST PDFRectangle *clipToBox = NULL;
 | ||||
|          double crop_setting; | ||||
|          sp_repr_get_double(prefs, "cropTo", &crop_setting); | ||||
|   | ||||
| diff --git a/src/extension/internal/pdfinput/pdf-input.h b/src/extension/internal/pdfinput/pdf-input.h
 | ||||
| --- a/src/extension/internal/pdfinput/pdf-input.h
 | ||||
| +++ b/src/extension/internal/pdfinput/pdf-input.h
 | ||||
| @@ -15,6 +15,7 @@
 | ||||
|  #endif | ||||
|   | ||||
|  #ifdef HAVE_POPPLER | ||||
| +#include "poppler-transition-api.h"
 | ||||
|   | ||||
|  #include <gtkmm/dialog.h> | ||||
|   | ||||
| diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp
 | ||||
| --- a/src/extension/internal/pdfinput/pdf-parser.cpp
 | ||||
| +++ b/src/extension/internal/pdfinput/pdf-parser.cpp
 | ||||
| @@ -36,6 +36,7 @@ extern "C" {
 | ||||
|  #include "pdf-parser.h" | ||||
|  #include "util/units.h" | ||||
|   | ||||
| +#include "glib/poppler-features.h"
 | ||||
|  #include "goo/gmem.h" | ||||
|  #include "goo/GooString.h" | ||||
|  #include "GlobalParams.h" | ||||
| @@ -294,8 +295,8 @@ PdfParser::PdfParser(XRef *xrefA,
 | ||||
|                       int /*pageNum*/, | ||||
|  		     int rotate, | ||||
|  		     Dict *resDict, | ||||
| -                     PDFRectangle *box,
 | ||||
| -		     PDFRectangle *cropBox) :
 | ||||
| +                     _POPPLER_CONST PDFRectangle *box,
 | ||||
| +                     _POPPLER_CONST PDFRectangle *cropBox) :
 | ||||
|      xref(xrefA), | ||||
|      builder(builderA), | ||||
|      subPage(gFalse), | ||||
| @@ -317,7 +318,7 @@ PdfParser::PdfParser(XRef *xrefA,
 | ||||
|    builder->setDocumentSize(Inkscape::Util::Quantity::convert(state->getPageWidth(), "pt", "px"), | ||||
|                             Inkscape::Util::Quantity::convert(state->getPageHeight(), "pt", "px")); | ||||
|   | ||||
| -  double *ctm = state->getCTM();
 | ||||
| +  const double *ctm = state->getCTM();
 | ||||
|    double scaledCTM[6]; | ||||
|    for (int i = 0; i < 6; ++i) { | ||||
|      baseMatrix[i] = ctm[i]; | ||||
| @@ -352,7 +353,7 @@ PdfParser::PdfParser(XRef *xrefA,
 | ||||
|  PdfParser::PdfParser(XRef *xrefA, | ||||
|  		     Inkscape::Extension::Internal::SvgBuilder *builderA, | ||||
|                       Dict *resDict, | ||||
| -		     PDFRectangle *box) :
 | ||||
| +		     _POPPLER_CONST PDFRectangle *box) :
 | ||||
|      xref(xrefA), | ||||
|      builder(builderA), | ||||
|      subPage(gTrue), | ||||
| @@ -571,7 +572,7 @@ const char *PdfParser::getPreviousOperator(unsigned int look_back) {
 | ||||
|   | ||||
|  void PdfParser::execOp(Object *cmd, Object args[], int numArgs) { | ||||
|    PdfOperator *op; | ||||
| -  char *name;
 | ||||
| +  const char *name;
 | ||||
|    Object *argPtr; | ||||
|    int i; | ||||
|   | ||||
| @@ -619,7 +620,7 @@ void PdfParser::execOp(Object *cmd, Object args[], int numArgs) {
 | ||||
|    (this->*op->func)(argPtr, numArgs); | ||||
|  } | ||||
|   | ||||
| -PdfOperator* PdfParser::findOp(char *name) {
 | ||||
| +PdfOperator* PdfParser::findOp(const char *name) {
 | ||||
|    int a = -1; | ||||
|    int b = numOps; | ||||
|    int cmp = -1; | ||||
| @@ -1751,7 +1752,7 @@ void PdfParser::doShadingPatternFillFallback(GfxShadingPattern *sPat,
 | ||||
|                                               GBool stroke, GBool eoFill) { | ||||
|    GfxShading *shading; | ||||
|    GfxPath *savedPath; | ||||
| -  double *ctm, *btm, *ptm;
 | ||||
| +  const double *ctm, *btm, *ptm;
 | ||||
|    double m[6], ictm[6], m1[6]; | ||||
|    double xMin, yMin, xMax, yMax; | ||||
|    double det; | ||||
| @@ -1993,7 +1994,7 @@ void PdfParser::doFunctionShFill1(GfxFunctionShading *shading,
 | ||||
|    GfxColor color0M, color1M, colorM0, colorM1, colorMM; | ||||
|    GfxColor colors2[4]; | ||||
|    double functionColorDelta = colorDeltas[pdfFunctionShading-1]; | ||||
| -  double *matrix;
 | ||||
| +  const double *matrix;
 | ||||
|    double xM, yM; | ||||
|    int nComps, i, j; | ||||
|   | ||||
| @@ -2173,7 +2174,7 @@ void PdfParser::doPatchMeshShFill(GfxPatchMeshShading *shading) {
 | ||||
|    } | ||||
|  } | ||||
|   | ||||
| -void PdfParser::fillPatch(GfxPatch *patch, int nComps, int depth) {
 | ||||
| +void PdfParser::fillPatch(_POPPLER_CONST GfxPatch *patch, int nComps, int depth) {
 | ||||
|    GfxPatch patch00 = blankPatch(); | ||||
|    GfxPatch patch01 = blankPatch(); | ||||
|    GfxPatch patch10 = blankPatch(); | ||||
| @@ -2581,7 +2582,11 @@ void PdfParser::opShowSpaceText(Object args[], int /*numArgs*/)
 | ||||
|    } | ||||
|  } | ||||
|   | ||||
| +#if POPPLER_CHECK_VERSION(0,64,0)
 | ||||
|  void PdfParser::doShowText(const GooString *s) { | ||||
| +#else
 | ||||
| +void PdfParser::doShowText(GooString *s) {
 | ||||
| +#endif
 | ||||
|    GfxFont *font; | ||||
|    int wMode; | ||||
|    double riseX, riseY; | ||||
| @@ -2590,11 +2595,15 @@ void PdfParser::doShowText(const GooString *s) {
 | ||||
|    double x, y, dx, dy, tdx, tdy; | ||||
|    double originX, originY, tOriginX, tOriginY; | ||||
|    double oldCTM[6], newCTM[6]; | ||||
| -  double *mat;
 | ||||
| +  const double *mat;
 | ||||
|    Object charProc; | ||||
|    Dict *resDict; | ||||
|    Parser *oldParser; | ||||
| +#if POPPLER_CHECK_VERSION(0,64,0)
 | ||||
| +  const char *p;
 | ||||
| +#else
 | ||||
|    char *p; | ||||
| +#endif
 | ||||
|    int len, n, uLen; | ||||
|   | ||||
|    font = state->getFont(); | ||||
| @@ -2630,7 +2639,7 @@ void PdfParser::doShowText(const GooString *s) {
 | ||||
|      double lineX = state->getLineX(); | ||||
|      double lineY = state->getLineY(); | ||||
|      oldParser = parser; | ||||
| -    p = g_strdup(s->getCString());
 | ||||
| +    p = s->getCString();
 | ||||
|      len = s->getLength(); | ||||
|      while (len > 0) { | ||||
|        n = font->getNextChar(p, len, &code, | ||||
| @@ -2685,7 +2694,7 @@ void PdfParser::doShowText(const GooString *s) {
 | ||||
|   | ||||
|    } else { | ||||
|      state->textTransformDelta(0, state->getRise(), &riseX, &riseY); | ||||
| -    p = g_strdup(s->getCString());
 | ||||
| +    p = s->getCString();
 | ||||
|      len = s->getLength(); | ||||
|      while (len > 0) { | ||||
|        n = font->getNextChar(p, len, &code, | ||||
| @@ -2731,7 +2740,11 @@ void PdfParser::opXObject(Object args[], int /*numArgs*/)
 | ||||
|  { | ||||
|    Object obj1, obj2, obj3, refObj; | ||||
|   | ||||
| -  char *name = g_strdup(args[0].getName());
 | ||||
| +#if POPPLER_CHECK_VERSION(0,64,0)
 | ||||
| +  const char *name = args[0].getName();
 | ||||
| +#else
 | ||||
| +  char *name = args[0].getName();
 | ||||
| +#endif
 | ||||
|  #if defined(POPPLER_NEW_OBJECT_API) | ||||
|    if ((obj1 = res->lookupXObject(name)).isNull()) { | ||||
|  #else | ||||
| @@ -3656,7 +3669,6 @@ void PdfParser::opBeginImage(Object /*args*/[], int /*numArgs*/)
 | ||||
|  Stream *PdfParser::buildImageStream() { | ||||
|    Object dict; | ||||
|    Object obj; | ||||
| -  char *key;
 | ||||
|    Stream *str; | ||||
|   | ||||
|    // build dictionary | ||||
| @@ -3674,26 +3686,17 @@ Stream *PdfParser::buildImageStream() {
 | ||||
|        obj.free(); | ||||
|  #endif | ||||
|      } else { | ||||
| -      key = copyString(obj.getName());
 | ||||
| -#if defined(POPPLER_NEW_OBJECT_API)
 | ||||
| -      obj = parser->getObj();
 | ||||
| -#else
 | ||||
| -      obj.free();
 | ||||
| -      parser->getObj(&obj);
 | ||||
| -#endif
 | ||||
| -      if (obj.isEOF() || obj.isError()) {
 | ||||
| -	gfree(key);
 | ||||
| +      Object obj2;
 | ||||
| +      _POPPLER_CALL(obj2, parser->getObj);
 | ||||
| +      if (obj2.isEOF() || obj2.isError()) {
 | ||||
| +        _POPPLER_FREE(obj);
 | ||||
|  	break; | ||||
|        } | ||||
| -#if defined(POPPLER_NEW_OBJECT_API)
 | ||||
| -      dict.dictAdd(key, std::move(obj));
 | ||||
| -    }
 | ||||
| -    obj = parser->getObj();
 | ||||
| -#else
 | ||||
| -      dict.dictAdd(key, &obj);
 | ||||
| +      _POPPLER_DICTADD(dict, obj.getName(), obj2);
 | ||||
| +      _POPPLER_FREE(obj);
 | ||||
| +      _POPPLER_FREE(obj2);
 | ||||
|      } | ||||
| -    parser->getObj(&obj);
 | ||||
| -#endif
 | ||||
| +    _POPPLER_CALL(obj, parser->getObj);
 | ||||
|    } | ||||
|    if (obj.isEOF()) { | ||||
|      error(errSyntaxError, getPos(), "End of file in inline image"); | ||||
| diff --git a/src/extension/internal/pdfinput/pdf-parser.h b/src/extension/internal/pdfinput/pdf-parser.h
 | ||||
| --- a/src/extension/internal/pdfinput/pdf-parser.h
 | ||||
| +++ b/src/extension/internal/pdfinput/pdf-parser.h
 | ||||
| @@ -9,6 +9,7 @@
 | ||||
|  #define PDF_PARSER_H | ||||
|   | ||||
|  #ifdef HAVE_POPPLER | ||||
| +#include "poppler-transition-api.h"
 | ||||
|   | ||||
|  #ifdef USE_GCC_PRAGMAS | ||||
|  #pragma interface | ||||
| @@ -25,6 +26,7 @@ namespace Inkscape {
 | ||||
|  // TODO clean up and remove using: | ||||
|  using Inkscape::Extension::Internal::SvgBuilder; | ||||
|   | ||||
| +#include "glib/poppler-features.h"
 | ||||
|  #include "goo/gtypes.h" | ||||
|  #include "Object.h" | ||||
|   | ||||
| @@ -127,11 +129,14 @@ public:
 | ||||
|   | ||||
|    // Constructor for regular output. | ||||
|    PdfParser(XRef *xrefA, SvgBuilder *builderA, int pageNum, int rotate, | ||||
| -            Dict *resDict, PDFRectangle *box, PDFRectangle *cropBox);
 | ||||
| +            Dict *resDict,
 | ||||
| +            _POPPLER_CONST PDFRectangle *box,
 | ||||
| +            _POPPLER_CONST PDFRectangle *cropBox);
 | ||||
|   | ||||
|    // Constructor for a sub-page object. | ||||
|    PdfParser(XRef *xrefA, Inkscape::Extension::Internal::SvgBuilder *builderA, | ||||
| -            Dict *resDict, PDFRectangle *box);
 | ||||
| +            Dict *resDict,
 | ||||
| +            _POPPLER_CONST PDFRectangle *box);
 | ||||
|   | ||||
|    virtual ~PdfParser(); | ||||
|   | ||||
| @@ -185,7 +190,7 @@ private:
 | ||||
|   | ||||
|    void go(GBool topLevel); | ||||
|    void execOp(Object *cmd, Object args[], int numArgs); | ||||
| -  PdfOperator *findOp(char *name);
 | ||||
| +  PdfOperator *findOp(const char *name);
 | ||||
|    GBool checkArg(Object *arg, TchkType type); | ||||
|    int getPos(); | ||||
|   | ||||
| @@ -256,7 +261,7 @@ private:
 | ||||
|  			   double x2, double y2, GfxColor *color2, | ||||
|  			   int nComps, int depth); | ||||
|    void doPatchMeshShFill(GfxPatchMeshShading *shading); | ||||
| -  void fillPatch(GfxPatch *patch, int nComps, int depth);
 | ||||
| +  void fillPatch(_POPPLER_CONST GfxPatch *patch, int nComps, int depth);
 | ||||
|    void doEndPath(); | ||||
|   | ||||
|    // path clipping operators | ||||
| @@ -287,7 +292,12 @@ private:
 | ||||
|    void opMoveShowText(Object args[], int numArgs); | ||||
|    void opMoveSetShowText(Object args[], int numArgs); | ||||
|    void opShowSpaceText(Object args[], int numArgs); | ||||
| +#if POPPLER_CHECK_VERSION(0,64,0)
 | ||||
|    void doShowText(const GooString *s); | ||||
| +#else
 | ||||
| +  void doShowText(GooString *s);
 | ||||
| +#endif
 | ||||
| +  
 | ||||
|   | ||||
|    // XObject operators | ||||
|    void opXObject(Object args[], int numArgs); | ||||
| diff --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h
 | ||||
| new file mode 100644 | ||||
| --- /dev/null
 | ||||
| +++ b/src/extension/internal/pdfinput/poppler-transition-api.h
 | ||||
| @@ -0,0 +1,39 @@
 | ||||
| +#ifndef SEEN_POPPLER_TRANSITION_API_H
 | ||||
| +#define SEEN_POPPLER_TRANSITION_API_H
 | ||||
| +
 | ||||
| +#include <glib/poppler-features.h>
 | ||||
| +
 | ||||
| +#if POPPLER_CHECK_VERSION(0,70,0)
 | ||||
| +#define _POPPLER_CONST const
 | ||||
| +#else
 | ||||
| +#define _POPPLER_CONST
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#if POPPLER_CHECK_VERSION(0,69,0)
 | ||||
| +#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(key, std::move(obj))
 | ||||
| +#elif POPPLER_CHECK_VERSION(0,58,0)
 | ||||
| +#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(copyString(key), std::move(obj))
 | ||||
| +#else
 | ||||
| +#define _POPPLER_DICTADD(dict, key, obj) (dict).dictAdd(copyString(key), &obj)
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#if POPPLER_CHECK_VERSION(0,58,0)
 | ||||
| +#define POPPLER_NEW_OBJECT_API
 | ||||
| +#define _POPPLER_FREE(obj)
 | ||||
| +#define _POPPLER_CALL(ret, func) (ret = func())
 | ||||
| +#define _POPPLER_CALL_ARGS(ret, func, ...) (ret = func(__VA_ARGS__))
 | ||||
| +#else
 | ||||
| +#define _POPPLER_FREE(obj) (obj).free()
 | ||||
| +#define _POPPLER_CALL(ret, func) (*func(&ret))
 | ||||
| +#define _POPPLER_CALL_ARGS(ret, func, ...) (*func(__VA_ARGS__, &ret))
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#if POPPLER_CHECK_VERSION(0, 29, 0)
 | ||||
| +#define POPPLER_EVEN_NEWER_NEW_COLOR_SPACE_API
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#if POPPLER_CHECK_VERSION(0, 25, 0)
 | ||||
| +#define POPPLER_EVEN_NEWER_COLOR_SPACE_API
 | ||||
| +#endif
 | ||||
| +
 | ||||
| +#endif
 | ||||
| diff --git a/src/extension/internal/pdfinput/svg-builder.cpp b/src/extension/internal/pdfinput/svg-builder.cpp
 | ||||
| --- a/src/extension/internal/pdfinput/svg-builder.cpp
 | ||||
| +++ b/src/extension/internal/pdfinput/svg-builder.cpp
 | ||||
| @@ -625,7 +625,7 @@ gchar *SvgBuilder::_createPattern(GfxPattern *pattern, GfxState *state, bool is_
 | ||||
|      if ( pattern != NULL ) { | ||||
|          if ( pattern->getType() == 2 ) {  // Shading pattern | ||||
|              GfxShadingPattern *shading_pattern = static_cast<GfxShadingPattern *>(pattern); | ||||
| -            double *ptm;
 | ||||
| +            const double *ptm;
 | ||||
|              double m[6] = {1, 0, 0, 1, 0, 0}; | ||||
|              double det; | ||||
|   | ||||
| @@ -672,7 +672,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
 | ||||
|   | ||||
|      Inkscape::XML::Node *pattern_node = _xml_doc->createElement("svg:pattern"); | ||||
|      // Set pattern transform matrix | ||||
| -    double *p2u = tiling_pattern->getMatrix();
 | ||||
| +    const double *p2u = tiling_pattern->getMatrix();
 | ||||
|      double m[6] = {1, 0, 0, 1, 0, 0}; | ||||
|      double det; | ||||
|      det = _ttm[0] * _ttm[3] - _ttm[1] * _ttm[2];    // see LP Bug 1168908 | ||||
| @@ -698,7 +698,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
 | ||||
|      pattern_node->setAttribute("patternUnits", "userSpaceOnUse"); | ||||
|      // Set pattern tiling | ||||
|      // FIXME: don't ignore XStep and YStep | ||||
| -    double *bbox = tiling_pattern->getBBox();
 | ||||
| +    const double *bbox = tiling_pattern->getBBox();
 | ||||
|      sp_repr_set_svg_double(pattern_node, "x", 0.0); | ||||
|      sp_repr_set_svg_double(pattern_node, "y", 0.0); | ||||
|      sp_repr_set_svg_double(pattern_node, "width", bbox[2] - bbox[0]); | ||||
| @@ -751,7 +751,7 @@ gchar *SvgBuilder::_createTilingPattern(GfxTilingPattern *tiling_pattern,
 | ||||
|   */ | ||||
|  gchar *SvgBuilder::_createGradient(GfxShading *shading, double *matrix, bool for_shading) { | ||||
|      Inkscape::XML::Node *gradient; | ||||
| -    Function *func;
 | ||||
| +    _POPPLER_CONST Function *func;
 | ||||
|      int num_funcs; | ||||
|      bool extend0, extend1; | ||||
|   | ||||
| @@ -865,7 +865,7 @@ static bool svgGetShadingColorRGB(GfxShading *shading, double offset, GfxRGB *re
 | ||||
|   | ||||
|  #define INT_EPSILON 8 | ||||
|  bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *shading, | ||||
| -                                   Function *func) {
 | ||||
| +                                   _POPPLER_CONST Function *func) {
 | ||||
|      int type = func->getType(); | ||||
|      if ( type == 0 || type == 2 ) {  // Sampled or exponential function | ||||
|          GfxRGB stop1, stop2; | ||||
| @@ -877,9 +877,9 @@ bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *sh
 | ||||
|              _addStopToGradient(gradient, 1.0, &stop2, 1.0); | ||||
|          } | ||||
|      } else if ( type == 3 ) { // Stitching | ||||
| -        StitchingFunction *stitchingFunc = static_cast<StitchingFunction*>(func);
 | ||||
| -        double *bounds = stitchingFunc->getBounds();
 | ||||
| -        double *encode = stitchingFunc->getEncode();
 | ||||
| +        auto stitchingFunc = static_cast<_POPPLER_CONST StitchingFunction*>(func);
 | ||||
| +        const double *bounds = stitchingFunc->getBounds();
 | ||||
| +        const double *encode = stitchingFunc->getEncode();
 | ||||
|          int num_funcs = stitchingFunc->getNumFuncs(); | ||||
|   | ||||
|          // Add stops from all the stitched functions | ||||
| @@ -890,7 +890,7 @@ bool SvgBuilder::_addGradientStops(Inkscape::XML::Node *gradient, GfxShading *sh
 | ||||
|              svgGetShadingColorRGB(shading, bounds[i + 1], &color); | ||||
|              // Add stops | ||||
|              if (stitchingFunc->getFunc(i)->getType() == 2) {    // process exponential fxn | ||||
| -                double expE = (static_cast<ExponentialFunction*>(stitchingFunc->getFunc(i)))->getE();
 | ||||
| +                double expE = (static_cast<_POPPLER_CONST ExponentialFunction*>(stitchingFunc->getFunc(i)))->getE();
 | ||||
|                  if (expE > 1.0) { | ||||
|                      expE = (bounds[i + 1] - bounds[i])/expE;    // approximate exponential as a single straight line at x=1 | ||||
|                      if (encode[2*i] == 0) {    // normal sequence | ||||
| @@ -1020,9 +1020,9 @@ void SvgBuilder::updateFont(GfxState *state) {
 | ||||
|      GfxFont *font = state->getFont(); | ||||
|      // Store original name | ||||
|      if (font->getName()) { | ||||
| -        _font_specification = g_strdup(font->getName()->getCString());
 | ||||
| +        _font_specification = font->getName()->getCString();
 | ||||
|      } else { | ||||
| -        _font_specification = (char*) "Arial";
 | ||||
| +        _font_specification = "Arial";
 | ||||
|      } | ||||
|   | ||||
|      // Prune the font name to get the correct font family name | ||||
| @@ -1030,7 +1030,7 @@ void SvgBuilder::updateFont(GfxState *state) {
 | ||||
|      char *font_family = NULL; | ||||
|      char *font_style = NULL; | ||||
|      char *font_style_lowercase = NULL; | ||||
| -    char *plus_sign = strstr(_font_specification, "+");
 | ||||
| +    const char *plus_sign = strstr(_font_specification, "+");
 | ||||
|      if (plus_sign) { | ||||
|          font_family = g_strdup(plus_sign + 1); | ||||
|          _font_specification = plus_sign + 1; | ||||
| @@ -1148,7 +1148,7 @@ void SvgBuilder::updateFont(GfxState *state) {
 | ||||
|      Inkscape::CSSOStringStream os_font_size; | ||||
|      double css_font_size = _font_scaling * state->getFontSize(); | ||||
|      if ( font->getType() == fontType3 ) { | ||||
| -        double *font_matrix = font->getFontMatrix();
 | ||||
| +        const double *font_matrix = font->getFontMatrix();
 | ||||
|          if ( font_matrix[0] != 0.0 ) { | ||||
|              css_font_size *= font_matrix[3] / font_matrix[0]; | ||||
|          } | ||||
| @@ -1193,7 +1193,7 @@ void SvgBuilder::updateTextPosition(double tx, double ty) {
 | ||||
|  void SvgBuilder::updateTextMatrix(GfxState *state) { | ||||
|      _flushText(); | ||||
|      // Update text matrix | ||||
| -    double *text_matrix = state->getTextMat();
 | ||||
| +    const double *text_matrix = state->getTextMat();
 | ||||
|      double w_scale = sqrt( text_matrix[0] * text_matrix[0] + text_matrix[2] * text_matrix[2] ); | ||||
|      double h_scale = sqrt( text_matrix[1] * text_matrix[1] + text_matrix[3] * text_matrix[3] ); | ||||
|      double max_scale; | ||||
| diff --git a/src/extension/internal/pdfinput/svg-builder.h b/src/extension/internal/pdfinput/svg-builder.h
 | ||||
| --- a/src/extension/internal/pdfinput/svg-builder.h
 | ||||
| +++ b/src/extension/internal/pdfinput/svg-builder.h
 | ||||
| @@ -15,6 +15,7 @@
 | ||||
|  #endif | ||||
|   | ||||
|  #ifdef HAVE_POPPLER | ||||
| +#include "poppler-transition-api.h"
 | ||||
|   | ||||
|  class SPDocument; | ||||
|  namespace Inkscape { | ||||
| @@ -80,7 +81,7 @@ struct SvgGlyph {
 | ||||
|      bool style_changed;  // Set to true if style has to be reset | ||||
|      SPCSSAttr *style; | ||||
|      int render_mode;    // Text render mode | ||||
| -    char *font_specification;   // Pointer to current font specification
 | ||||
| +    const char *font_specification;   // Pointer to current font specification
 | ||||
|  }; | ||||
|   | ||||
|  /** | ||||
| @@ -174,7 +175,7 @@ private:
 | ||||
|      void _addStopToGradient(Inkscape::XML::Node *gradient, double offset, | ||||
|                              GfxRGB *color, double opacity); | ||||
|      bool _addGradientStops(Inkscape::XML::Node *gradient, GfxShading *shading, | ||||
| -                           Function *func);
 | ||||
| +                           _POPPLER_CONST Function *func);
 | ||||
|      gchar *_createTilingPattern(GfxTilingPattern *tiling_pattern, GfxState *state, | ||||
|                                  bool is_stroke=false); | ||||
|      // Image/mask creation | ||||
| @@ -202,7 +203,7 @@ private:
 | ||||
|   | ||||
|      SPCSSAttr *_font_style;          // Current font style | ||||
|      GfxFont *_current_font; | ||||
| -    char *_font_specification;
 | ||||
| +    const char *_font_specification;
 | ||||
|      double _font_scaling; | ||||
|      bool _need_font_update; | ||||
|      Geom::Affine _text_matrix; | ||||
							
								
								
									
										15
									
								
								gnu/packages/patches/open-zwave-hidapi.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								gnu/packages/patches/open-zwave-hidapi.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| Build against the system's HIDAPI instead of the bundled one. | ||||
| 
 | ||||
| --- open-zwave-1.6-checkout/cpp/build/support.mk	2019-06-16 15:15:34.258331628 +0200
 | ||||
| +++ open-zwave-1.6-checkout/cpp/build/support.mk	2019-06-16 15:15:54.698249462 +0200
 | ||||
| @@ -86,6 +86,10 @@ endif
 | ||||
|  endif | ||||
|  SED    := sed | ||||
|   | ||||
| +# Build against the system's HIDAPI.
 | ||||
| +CPPFLAGS += $(shell pkg-config hidapi-libusb --cflags)
 | ||||
| +LDFLAGS  += $(shell pkg-config hidapi-libusb --libs)
 | ||||
| +
 | ||||
|  #determine if we are release or debug Build and set appropriate flags | ||||
|  ifeq ($(BUILD), release) | ||||
|  CFLAGS	+= -c $(RELEASE_CFLAGS) | ||||
|  | @ -7,12 +7,8 @@ because the store is immutable.  This patch makes Racket ignore | |||
| checksums for files in the store. | ||||
| 
 | ||||
| See <https://debbugs.gnu.org/30680> for details. | ||||
| ---
 | ||||
|  collects/compiler/private/cm-minimal.rkt | 8 +++++++- | ||||
|  1 file changed, 7 insertions(+), 1 deletion(-) | ||||
| 
 | ||||
| diff --git a/collects/compiler/private/cm-minimal.rkt b/collects/compiler/private/cm-minimal.rkt
 | ||||
| index a5a5407..15af6b8 100644
 | ||||
| ---
 | ||||
| --- a/collects/compiler/private/cm-minimal.rkt
 | ||||
| +++ b/collects/compiler/private/cm-minimal.rkt
 | ||||
| @@ -7,6 +7,7 @@
 | ||||
|  | @ -20,10 +16,10 @@ index a5a5407..15af6b8 100644 | |||
|           racket/path | ||||
|           racket/promise | ||||
| +         racket/string
 | ||||
|           openssl/sha1 | ||||
|           file/sha1 | ||||
|           setup/collects | ||||
|           compiler/compilation-path | ||||
| @@ -543,6 +544,10 @@
 | ||||
|           setup/cross-system | ||||
| @@ -940,6 +941,10 @@
 | ||||
|        #f | ||||
|        (list src-hash recorded-hash))) | ||||
|   | ||||
|  | @ -34,16 +30,13 @@ index a5a5407..15af6b8 100644 | |||
|  (define (rkt->ss p) | ||||
|    (if (path-has-extension? p #".rkt") | ||||
|        (path-replace-extension p #".ss") | ||||
| @@ -595,7 +600,8 @@
 | ||||
|                (trace-printf "newer src... ~a > ~a" path-time path-zo-time) | ||||
|                ;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk: | ||||
|                (maybe-compile-zo sha1-only? deps path->mode roots path orig-path read-src-syntax up-to-date collection-cache new-seen)] | ||||
| -             [(different-source-sha1-and-dep-recorded path deps)
 | ||||
| +             [(and (not (store-reference? path))
 | ||||
| +                   (different-source-sha1-and-dep-recorded path deps))
 | ||||
|                => (lambda (difference) | ||||
|                     (trace-printf "different src hash... ~a" difference) | ||||
|                     ;; If `sha1-only?', then `maybe-compile-zo' returns a #f or thunk: | ||||
| -- 
 | ||||
| 2.18.0 | ||||
| 
 | ||||
| @@ -1015,6 +1020,7 @@
 | ||||
|                 (trace-printf "newer src... ~a > ~a" path-time path-zo-time) | ||||
|                 (maybe-compile-zo deps path->mode roots path orig-path read-src-syntax up-to-date collection-cache new-seen | ||||
|                                   #:trying-sha1? sha1-only?)] | ||||
| -              [(different-source-sha1-and-dep-recorded path deps)
 | ||||
| +              [(and (not (store-reference? path))
 | ||||
| +                    (different-source-sha1-and-dep-recorded path deps))
 | ||||
|                 => (lambda (difference) | ||||
|                      (trace-printf "different src hash ~a for ~a..." difference path) | ||||
|                      (maybe-compile-zo deps path->mode roots path orig-path read-src-syntax up-to-date collection-cache new-seen | ||||
							
								
								
									
										194
									
								
								gnu/packages/patches/ratpoints-sturm_and_rp_private.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										194
									
								
								gnu/packages/patches/ratpoints-sturm_and_rp_private.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,194 @@ | |||
| diff --git a/rp-private.h b/rp-private.h
 | ||||
| index b4c7dad..0c7193e 100644
 | ||||
| --- a/rp-private.h
 | ||||
| +++ b/rp-private.h
 | ||||
| @@ -36,7 +36,7 @@
 | ||||
|  #define LONG_SHIFT ((LONG_LENGTH == 16) ? 4 : \ | ||||
|                      (LONG_LENGTH == 32) ? 5 : \ | ||||
|  		    (LONG_LENGTH == 64) ? 6 : 0) | ||||
| -#define LONG_MASK (~(-1L<<LONG_SHIFT))
 | ||||
| +#define LONG_MASK (~(-(1L<<LONG_SHIFT)))
 | ||||
|   | ||||
|  /* Check if SSE instructions can be used. | ||||
|     We assume that one SSE word of 128 bit is two long's, | ||||
| diff --git a/sturm.c b/sturm.c
 | ||||
| index c78d7c6..5fd2cf5 100644
 | ||||
| --- a/sturm.c
 | ||||
| +++ b/sturm.c
 | ||||
| @@ -27,7 +27,6 @@
 | ||||
|   ***********************************************************************/ | ||||
|   | ||||
|  #include "ratpoints.h" | ||||
| -
 | ||||
|  /************************************************************************** | ||||
|   * Arguments of _ratpoints_compute_sturm() : (from the args argument)     * | ||||
|   *                                                                        * | ||||
| @@ -53,7 +52,7 @@
 | ||||
|  /* A helper function: evaluate the polynomial in cofs[] of given degree | ||||
|    at num/2^denexp and return the sign. */ | ||||
|   | ||||
| -static long eval_sign(ratpoints_args *args, mpz_t *cofs, long degree,
 | ||||
| +static long eval_sign(const ratpoints_args *args, const mpz_t *cofs, long degree,
 | ||||
|                        long num, long denexp) | ||||
|  { | ||||
|    long n, e, s; | ||||
| @@ -70,11 +69,80 @@ static long eval_sign(ratpoints_args *args, mpz_t *cofs, long degree,
 | ||||
|    return(s); | ||||
|  } | ||||
|   | ||||
| +static const    long max = (long)(((unsigned long)(-1))>>1);
 | ||||
| +static const    long min = (long)(-(((unsigned long)(-1))>>1));
 | ||||
| +    /* recursive helper function */
 | ||||
| +static void iterate(long nl, long nr, long del, long der, long cleft, long cright,
 | ||||
| +                 long sl, long sr, long depth,
 | ||||
| +		 ratpoints_interval **iptr, const ratpoints_interval *ivlo,
 | ||||
| +		 const ratpoints_args *args, const long k, const long sturm_degs[],
 | ||||
| +                 const mpz_t sturm[][args->degree + 1])
 | ||||
| +    { /* nl/2^del, nr/2^der : interval left/right endpoints,
 | ||||
| +         cleft, cright: sign change counts at endpoints,
 | ||||
| +         sl, sr: signs at endpoints,
 | ||||
| +         depth: iteration depth */
 | ||||
| +     long iter = args->sturm;
 | ||||
| +      if(cleft == cright && sl < 0) { return; }
 | ||||
| +         /* here we know the polynomial is negative on the interval */
 | ||||
| +      if((cleft == cright && sl > 0) || depth >= iter)
 | ||||
| +      /* we have to add/extend an interval if we either know that
 | ||||
| +         the polynomial is positive on the interval (first condition)
 | ||||
| +         or the maximal iteration depth has been reached (second condition) */
 | ||||
| +      { double l = ((double)nl)/((double)(1<<del));
 | ||||
| +        double u = ((double)nr)/((double)(1<<der));
 | ||||
| +        if(*iptr == ivlo)
 | ||||
| +        { (*iptr)->low = l; (*iptr)->up  = u; (*iptr)++; }
 | ||||
| +        else
 | ||||
| +        { if(((*iptr)-1)->up == l) /* extend interval */
 | ||||
| +          { ((*iptr)-1)->up = u; }
 | ||||
| +          else /* new interval */
 | ||||
| +          { (*iptr)->low = l; (*iptr)->up  = u; (*iptr)++; }
 | ||||
| +        }
 | ||||
| +        return;
 | ||||
| +      }
 | ||||
| +      /* now we must split the interval and evaluate the sturm sequence
 | ||||
| +         at the midpoint */
 | ||||
| +      { long nm, dem, s0, s1, s2, s, cmid = 0, n;
 | ||||
| +        if(nl == min)
 | ||||
| +        { if(nr == max) { nm = 0; dem = 0; }
 | ||||
| +          else { nm = (nr == 0) ? -1 : 2*nr; dem = 0; }
 | ||||
| +        }
 | ||||
| +        else
 | ||||
| +        { if(nr == max) { nm = (nl == 0) ? 1 : 2*nl; dem = 0; }
 | ||||
| +          else /* "normal" case */
 | ||||
| +          { if(del == der) /* then both are zero */
 | ||||
| +            { if(((nl+nr) & 1) == 0) { nm = (nl+nr)>>1; dem = 0; }
 | ||||
| +              else { nm = nl+nr; dem = 1; }
 | ||||
| +            }
 | ||||
| +            else /* here one de* is greater */
 | ||||
| +            { if(del > der) { nm = nl + (nr<<(del-der)); dem = del+1; }
 | ||||
| +              else { nm = (nl<<(der-del)) + nr; dem = der+1; }
 | ||||
| +            }
 | ||||
| +          }
 | ||||
| +        }
 | ||||
| +        s0 = eval_sign(args, sturm[0], sturm_degs[0], nm, dem);
 | ||||
| +        s1 = eval_sign(args, sturm[1], sturm_degs[1], nm, dem);
 | ||||
| +        if(s0*s1 == -1) { cmid++; }
 | ||||
| +        s = (s1 == 0) ? s0 : s1;
 | ||||
| +        for(n = 2; n <= k; n++)
 | ||||
| +        { s2 = eval_sign(args, sturm[n], sturm_degs[n], nm, dem);
 | ||||
| +          if(s2 == -s) { cmid++; s = s2; }
 | ||||
| +          else if(s2 != 0) { s = s2; }
 | ||||
| +        }
 | ||||
| +        /* now recurse */
 | ||||
| +        iterate(nl, nm, del, dem, cleft, (s0==0) ? (cmid+1) : cmid,
 | ||||
| +                sl, (s0==0) ? -s1 : s0, depth+1,
 | ||||
| +                iptr, ivlo, args, k, sturm_degs, sturm);
 | ||||
| +        iterate(nm, nr, dem, der, cmid, cright,
 | ||||
| +                (s0==0) ? s1 : s0, sr, depth+1,
 | ||||
| +		iptr, ivlo, args, k, sturm_degs, sturm);
 | ||||
| +      }
 | ||||
| +    } /* end iterate() */
 | ||||
| +
 | ||||
|  long _ratpoints_compute_sturm(ratpoints_args *args) | ||||
|  {  | ||||
|    mpz_t *cofs = args->cof; | ||||
|    long degree = args->degree; | ||||
| -  long iter = args->sturm; 
 | ||||
|    ratpoints_interval *ivlist = args->domain; | ||||
|    long num_iv = args->num_inter; | ||||
|    long n, m, k, new_num; | ||||
| @@ -165,75 +233,12 @@ long _ratpoints_compute_sturm(ratpoints_args *args)
 | ||||
|    /* recall: typedef struct {double low; double up;} ratpoints_interval; */ | ||||
|    { ratpoints_interval ivlocal[1 + (degree>>1)]; | ||||
|      ratpoints_interval *iptr = &ivlocal[0]; | ||||
| -    long max = (long)(((unsigned long)(-1))>>1);
 | ||||
| -    long min = -max;
 | ||||
|      long num_intervals; | ||||
|      long slcf = mpz_cmp_si(cofs[degree], 0); | ||||
|   | ||||
| -    /* recursive helper function */
 | ||||
| -    void iterate(long nl, long nr, long del, long der, long cleft, long cright,
 | ||||
| -                 long sl, long sr, long depth)
 | ||||
| -    { /* nl/2^del, nr/2^der : interval left/right endpoints,
 | ||||
| -         cleft, cright: sign change counts at endpoints,
 | ||||
| -         sl, sr: signs at endpoints,
 | ||||
| -         depth: iteration depth */
 | ||||
| -      if(cleft == cright && sl < 0) { return; }
 | ||||
| -         /* here we know the polynomial is negative on the interval */
 | ||||
| -      if((cleft == cright && sl > 0) || depth >= iter) 
 | ||||
| -      /* we have to add/extend an interval if we either know that
 | ||||
| -         the polynomial is positive on the interval (first condition)
 | ||||
| -         or the maximal iteration depth has been reached (second condition) */
 | ||||
| -      { double l = ((double)nl)/((double)(1<<del));
 | ||||
| -        double u = ((double)nr)/((double)(1<<der));
 | ||||
| -        if(iptr == &ivlocal[0])
 | ||||
| -        { iptr->low = l; iptr->up  = u; iptr++; }
 | ||||
| -        else
 | ||||
| -        { if((iptr-1)->up == l) /* extend interval */
 | ||||
| -          { (iptr-1)->up = u; }
 | ||||
| -          else /* new interval */
 | ||||
| -          { iptr->low = l; iptr->up  = u; iptr++; }
 | ||||
| -        }
 | ||||
| -        return; 
 | ||||
| -      }
 | ||||
| -      /* now we must split the interval and evaluate the sturm sequence
 | ||||
| -         at the midpoint */
 | ||||
| -      { long nm, dem, s0, s1, s2, s, cmid = 0, n;
 | ||||
| -        if(nl == min)
 | ||||
| -        { if(nr == max) { nm = 0; dem = 0; }
 | ||||
| -          else { nm = (nr == 0) ? -1 : 2*nr; dem = 0; }
 | ||||
| -        }
 | ||||
| -        else
 | ||||
| -        { if(nr == max) { nm = (nl == 0) ? 1 : 2*nl; dem = 0; } 
 | ||||
| -          else /* "normal" case */
 | ||||
| -          { if(del == der) /* then both are zero */
 | ||||
| -            { if(((nl+nr) & 1) == 0) { nm = (nl+nr)>>1; dem = 0; }
 | ||||
| -              else { nm = nl+nr; dem = 1; } 
 | ||||
| -            }
 | ||||
| -            else /* here one de* is greater */
 | ||||
| -            { if(del > der) { nm = nl + (nr<<(del-der)); dem = del+1; }
 | ||||
| -              else { nm = (nl<<(der-del)) + nr; dem = der+1; }
 | ||||
| -            }
 | ||||
| -          }
 | ||||
| -        }
 | ||||
| -        s0 = eval_sign(args, sturm[0], sturm_degs[0], nm, dem);
 | ||||
| -        s1 = eval_sign(args, sturm[1], sturm_degs[1], nm, dem);
 | ||||
| -        if(s0*s1 == -1) { cmid++; }
 | ||||
| -        s = (s1 == 0) ? s0 : s1;
 | ||||
| -        for(n = 2; n <= k; n++)
 | ||||
| -        { s2 = eval_sign(args, sturm[n], sturm_degs[n], nm, dem);
 | ||||
| -          if(s2 == -s) { cmid++; s = s2; }
 | ||||
| -          else if(s2 != 0) { s = s2; }
 | ||||
| -        }
 | ||||
| -        /* now recurse */
 | ||||
| -        iterate(nl, nm, del, dem, cleft, (s0==0) ? (cmid+1) : cmid, 
 | ||||
| -                sl, (s0==0) ? -s1 : s0, depth+1);
 | ||||
| -        iterate(nm, nr, dem, der, cmid, cright, 
 | ||||
| -                (s0==0) ? s1 : s0, sr, depth+1);
 | ||||
| -      }
 | ||||
| -    } /* end iterate() */
 | ||||
| -
 | ||||
|      iterate(min, max, 0, 0, count2, count1,  | ||||
| -            (degree & 1) ? -slcf : slcf, slcf, 0);
 | ||||
| +            (degree & 1) ? -slcf : slcf, slcf, 0,
 | ||||
| +	    &iptr, &ivlocal[0], args, k, sturm_degs, sturm);
 | ||||
|      num_intervals = iptr - &ivlocal[0]; | ||||
|      /* intersect with given intervals */ | ||||
|      { ratpoints_interval local_copy[num_iv]; | ||||
							
								
								
									
										391
									
								
								gnu/packages/patches/ri-li-modernize_cpp.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										391
									
								
								gnu/packages/patches/ri-li-modernize_cpp.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,391 @@ | |||
| diff -r -u Ri-li-2.0.1.orig/src/audio.cc Ri-li-2.0.1/src/audio.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/audio.cc	2012-01-22 00:40:56.928609371 -0800
 | ||||
| +++ Ri-li-2.0.1/src/audio.cc	2012-01-22 00:28:33.360636539 -0800
 | ||||
| @@ -22,8 +22,8 @@
 | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
|  #include <stdlib.h> | ||||
| -#include <iostream.h>
 | ||||
| -#include <string.h>
 | ||||
| +#include <iostream>
 | ||||
| +#include <string>
 | ||||
|   | ||||
|  #include "audio.h" | ||||
|  #include "utils.h" | ||||
| @@ -57,7 +57,7 @@
 | ||||
|    char PathFile[512]; | ||||
|   | ||||
|    if(Mix_OpenAudio(22050,AUDIO_S16,1,1024)) { | ||||
| -    cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<endl;
 | ||||
| +    std::cerr <<"Enable to init Sound card ! "<<SDL_GetError()<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|     | ||||
| diff -r -u Ri-li-2.0.1.orig/src/ecran.cc Ri-li-2.0.1/src/ecran.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/ecran.cc	2007-11-02 04:48:16.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/ecran.cc	2012-01-22 00:13:54.422798653 -0800
 | ||||
| @@ -21,7 +21,7 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
|  #include <math.h> | ||||
| diff -r -u Ri-li-2.0.1.orig/src/editeur.cc Ri-li-2.0.1/src/editeur.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/editeur.cc	2007-11-02 04:48:17.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/editeur.cc	2012-01-22 00:28:59.632635579 -0800
 | ||||
| @@ -25,10 +25,10 @@
 | ||||
|  #include <windows.h> | ||||
|  #endif | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|  #include <math.h> | ||||
|  #include <SDL/SDL.h> | ||||
|   | ||||
| @@ -374,7 +374,7 @@
 | ||||
|       | ||||
|      // Sauve le niveau | ||||
|      if(Niveau.Save()==false) { | ||||
| -      cerr <<"ERREUR Saving levels!"<<endl;
 | ||||
| +      std::cerr <<"ERREUR Saving levels!"<<std::endl;
 | ||||
|        exit(-1); | ||||
|      } | ||||
|       | ||||
| diff -r -u Ri-li-2.0.1.orig/src/jeux.cc Ri-li-2.0.1/src/jeux.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/jeux.cc	2007-11-02 04:48:17.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/jeux.cc	2012-01-22 00:14:08.422798143 -0800
 | ||||
| @@ -25,10 +25,10 @@
 | ||||
|  #include <windows.h> | ||||
|  #endif | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|  #include <math.h> | ||||
|  #include <SDL/SDL.h> | ||||
|   | ||||
| diff -r -u Ri-li-2.0.1.orig/src/loco.cc Ri-li-2.0.1/src/loco.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/loco.cc	2007-11-02 04:48:18.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/loco.cc	2012-01-22 00:14:17.878797797 -0800
 | ||||
| @@ -21,10 +21,10 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|  #include <math.h> | ||||
|  #include "preference.h" | ||||
|  #include "loco.h" | ||||
| diff -r -u Ri-li-2.0.1.orig/src/main.cc Ri-li-2.0.1/src/main.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/main.cc	2007-11-02 04:48:19.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/main.cc	2012-01-22 00:29:40.080634136 -0800
 | ||||
| @@ -23,8 +23,8 @@
 | ||||
|   | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <iostream.h>
 | ||||
| -#include <string.h>
 | ||||
| +#include <iostream>
 | ||||
| +#include <string>
 | ||||
|  #include <SDL/SDL.h> | ||||
|  #include <SDL/SDL_mixer.h> | ||||
|   | ||||
| @@ -115,7 +115,7 @@
 | ||||
|    | ||||
|    // Initilise SDL | ||||
|    if( SDL_Init(SDL_INIT_VIDEO|SDL_INIT_TIMER|SDL_INIT_AUDIO|SDL_INIT_NOPARACHUTE) < 0 ) { | ||||
| -    cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<endl;
 | ||||
| +    std::cerr <<"Impossible d'initialiser SDL:"<<SDL_GetError()<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|    // Ferme le programme correctement quant quit | ||||
| @@ -125,7 +125,7 @@
 | ||||
|    sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo(); | ||||
|   | ||||
|    if(sdlVideoInfo->vfmt->BitsPerPixel==8) { | ||||
| -    cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
 | ||||
| +    std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|     | ||||
| @@ -145,7 +145,7 @@
 | ||||
|    sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption); | ||||
|   | ||||
|    if(sdlVideo==NULL) { | ||||
| -    cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
 | ||||
| +    std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|    // Change le nom de la fenetre | ||||
| diff -r -u Ri-li-2.0.1.orig/src/menu.cc Ri-li-2.0.1/src/menu.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/menu.cc	2007-11-02 04:48:19.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/menu.cc	2012-01-22 00:30:04.752633198 -0800
 | ||||
| @@ -21,10 +21,10 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|  #include "preference.h" | ||||
|  #include "menu.h" | ||||
|  #include "sprite.h" | ||||
| @@ -92,7 +92,7 @@
 | ||||
|    // Teste la resolution video | ||||
|    sdlVideoInfo=(SDL_VideoInfo*)SDL_GetVideoInfo(); | ||||
|    if(sdlVideoInfo->vfmt->BitsPerPixel==8) { | ||||
| -    cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<endl;
 | ||||
| +    std::cerr <<"Impossible d'utiliser 8bits pour la vidéo !"<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|     | ||||
| @@ -112,7 +112,7 @@
 | ||||
|    if(Pref.FullScreen) vOption|=SDL_FULLSCREEN; | ||||
|    sdlVideo=SDL_SetVideoMode(800,600,sdlVideoInfo->vfmt->BitsPerPixel,vOption); | ||||
|    if(sdlVideo==NULL) { | ||||
| -    cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<endl;
 | ||||
| +    std::cerr <<"Impossible de passer dans le mode vidéo 800x600 !"<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|     | ||||
| diff -r -u Ri-li-2.0.1.orig/src/mouse.cc Ri-li-2.0.1/src/mouse.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/mouse.cc	2007-11-02 04:48:20.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/mouse.cc	2012-01-22 00:14:36.438797120 -0800
 | ||||
| @@ -21,7 +21,7 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include "mouse.h" | ||||
|  #include "preference.h" | ||||
| diff -r -u Ri-li-2.0.1.orig/src/sprite.cc Ri-li-2.0.1/src/sprite.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/sprite.cc	2007-11-02 04:48:20.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/sprite.cc	2012-01-22 00:30:43.640631779 -0800
 | ||||
| @@ -21,10 +21,10 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|  #include <math.h> | ||||
|  #include "sprite.h" | ||||
|  #include "preference.h" | ||||
| @@ -84,7 +84,7 @@
 | ||||
|    strcpy(PathFile,Langue[Pref.Langue]); | ||||
|    GetPath(PathFile); | ||||
|    if(FileExiste(PathFile)==false) { | ||||
| -    cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<endl;
 | ||||
| +    std::cerr <<"Impossible de trouver "<<Langue[Pref.Langue]<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|    L=ChargeFichier(PathFile,Buf); | ||||
| @@ -128,7 +128,7 @@
 | ||||
|    // *** Charge le fichier des langues *** | ||||
|    // ************************************* | ||||
|    if(FileExiste(PathFile)==false) { | ||||
| -    cerr <<"Impossible de trouver 'language.dat'"<<endl;
 | ||||
| +    std::cerr <<"Impossible de trouver 'language.dat'"<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|    L=ChargeFichier(PathFile,Buf); | ||||
| @@ -163,7 +163,7 @@
 | ||||
|    strcpy(PathFile,"sprites.dat"); | ||||
|    GetPath(PathFile); | ||||
|    if(FileExiste(PathFile)==false) { | ||||
| -    cerr <<"Impossible de trouver 'sprites.dat'"<<endl;
 | ||||
| +    std::cerr <<"Impossible de trouver 'sprites.dat'"<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|    L=ChargeFichier(PathFile,Buf); | ||||
| @@ -352,7 +352,7 @@
 | ||||
|      Image[i]=SDL_CreateRGBSurface((Dim[i].bpp-3)*SDL_SRCALPHA,Dim[i].L,Dim[i].H,Dim[i].bpp*8, | ||||
|  				  0xff,0xff00,0xff0000,0xff000000*(Dim[i].bpp-3)); | ||||
|      if(Image[i]<=NULL) { | ||||
| -      cerr <<"Impossible de créer une Surface SDL!"<<endl;
 | ||||
| +      std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
 | ||||
|        return false; | ||||
|      } | ||||
|       | ||||
| @@ -486,7 +486,7 @@
 | ||||
|    Image[0]=SDL_CreateRGBSurface((Dim[0].bpp-3)*SDL_SRCALPHA,Dim[0].L,Dim[0].H,Dim[0].bpp*8, | ||||
|  				0xff,0xff00,0xff0000,0xff000000*(Dim[0].bpp-3)); | ||||
|    if(Image[0]<=NULL) { | ||||
| -    cerr <<"Impossible de créer une Surface SDL!"<<endl;
 | ||||
| +    std::cerr <<"Impossible de créer une Surface SDL!"<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|    return true; | ||||
| diff -r -u Ri-li-2.0.1.orig/src/tableau.cc Ri-li-2.0.1/src/tableau.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/tableau.cc	2007-11-02 04:48:21.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/tableau.cc	2012-01-22 00:14:50.710796598 -0800
 | ||||
| @@ -21,7 +21,7 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
|  #include "preference.h" | ||||
| diff -r -u Ri-li-2.0.1.orig/src/utils.cc Ri-li-2.0.1/src/utils.cc
 | ||||
| --- Ri-li-2.0.1.orig/src/utils.cc	2007-11-02 04:48:22.000000000 -0700
 | ||||
| +++ Ri-li-2.0.1/src/utils.cc	2012-01-22 00:31:30.944630051 -0800
 | ||||
| @@ -21,10 +21,10 @@
 | ||||
|  //    with this program; if not, write to the Free Software Foundation, Inc., | ||||
|  //    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | ||||
|   | ||||
| -#include <iostream.h>
 | ||||
| +#include <iostream>
 | ||||
|  #include <stdio.h> | ||||
|  #include <stdlib.h> | ||||
| -#include <string.h>
 | ||||
| +#include <string>
 | ||||
|   | ||||
|  #ifdef WINDOWS | ||||
|  #include <windows.h> | ||||
| @@ -77,7 +77,7 @@
 | ||||
|   | ||||
|    file=fopen(Path,"r"); | ||||
|    if(!file) { | ||||
| -    cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
 | ||||
| +    std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
 | ||||
|      perror("fopen"); | ||||
|      return -1; | ||||
|    } | ||||
| @@ -93,7 +93,7 @@
 | ||||
|   | ||||
|    Buf=new unsigned char [L+1]; | ||||
|    if(Buf==NULL) { | ||||
| -    cerr <<"ERREUR: Memoire insuffisante!"<<endl;
 | ||||
| +    std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
 | ||||
|      fclose(file); | ||||
|      return -1; | ||||
|    } | ||||
| @@ -104,7 +104,7 @@
 | ||||
|    while(Compt>1024) { | ||||
|      AfficheChargeur(); | ||||
|      if( fread(Po,1,1024,file) != 1024 ) { | ||||
| -      cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<endl;
 | ||||
| +      std::cerr <<"ERREUR de lecture du fichier '"<<Path<<"'"<<std::endl;
 | ||||
|        perror("fread"); | ||||
|        fclose(file); | ||||
|        delete [] Buf; | ||||
| @@ -131,13 +131,13 @@
 | ||||
|   | ||||
|    file=_lopen(Path,OF_READ); | ||||
|    if(file==-1) { | ||||
| -    cerr <<"Impossible d'ouvrir "<<Path<<endl;
 | ||||
| +    std::cerr <<"Impossible d'ouvrir "<<Path<<std::endl;
 | ||||
|      exit(-1); | ||||
|    } | ||||
|     | ||||
|    long L=(long)_llseek(file,0,SEEK_END); | ||||
|    if(L==-1) { | ||||
| -    cerr <<"Impossible de trouver la longueur du fichier"<<endl;
 | ||||
| +    std::cerr <<"Impossible de trouver la longueur du fichier"<<std::endl;
 | ||||
|      perror("lseek"); | ||||
|      _lclose(file); | ||||
|      return -1; | ||||
| @@ -146,7 +146,7 @@
 | ||||
|     | ||||
|    Buf=new unsigned char [L+1]; | ||||
|    if(Buf==NULL) { | ||||
| -    cerr <<"ERREUR: Memoire insuffisante!"<<endl;
 | ||||
| +    std::cerr <<"ERREUR: Memoire insuffisante!"<<std::endl;
 | ||||
|      _lclose(file); | ||||
|      return -1; | ||||
|    } | ||||
| @@ -169,14 +169,14 @@
 | ||||
|     | ||||
|    file=fopen(Path,"w"); | ||||
|    if(!file) { | ||||
| -    cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<endl;
 | ||||
| +    std::cerr <<"ERREUR: Impossible d'ouvrir '"<<Path<<"'"<<std::endl;
 | ||||
|      perror("fopen"); | ||||
|      return false; | ||||
|    } | ||||
|     | ||||
|    while(L>512) { | ||||
|      if( fwrite(Buf,1,512,file) != 512 ) { | ||||
| -      cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
 | ||||
| +      std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
 | ||||
|        perror("fwrite"); | ||||
|        fclose(file); | ||||
|        return false; | ||||
| @@ -187,7 +187,7 @@
 | ||||
|   | ||||
|    if(L>0) { | ||||
|      if( fwrite(Buf,1,(size_t)L,file) != (size_t)L ) { | ||||
| -      cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<endl;
 | ||||
| +      std::cerr <<"ERREUR d'ecriture du fichier '"<<Path<<"'"<<std::endl;
 | ||||
|        perror("fwrite"); | ||||
|        fclose(file); | ||||
|        return false; | ||||
| @@ -208,7 +208,7 @@
 | ||||
|   | ||||
|    file=_lcreat(Path,0); | ||||
|    if(!file) { | ||||
| -    cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<endl;
 | ||||
| +    std::cerr <<"ERREUR: Impossible de créer le fichier '"<<Path<<"'"<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|     | ||||
| @@ -216,7 +216,7 @@
 | ||||
|    _lclose(file); | ||||
|   | ||||
|    if(Lec!=L) { | ||||
| -    cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<endl;
 | ||||
| +    std::cerr <<"Problème d'ecriture du fichier '"<<Path<<"' ecris="<<Lec<<" au lieux de ="<<L<<std::endl;
 | ||||
|      return false; | ||||
|    } | ||||
|   | ||||
| @@ -250,7 +250,7 @@
 | ||||
|    sprintf(Path,"/usr/share/games/Ri-li/%s",Provi); | ||||
|    if(FileExiste(Path)) return; | ||||
|     | ||||
| -  cerr <<"Impossible de trouver le fichier '"<<Provi<<endl;
 | ||||
| +  std::cerr <<"Impossible de trouver le fichier '"<<Provi<<std::endl;
 | ||||
|    exit(-1); | ||||
|  } | ||||
|  #endif | ||||
| @@ -266,7 +266,7 @@
 | ||||
|    sprintf(Path,"PROGDIR:%s",Provi); | ||||
|    if(FileExiste(Path)) return; | ||||
|     | ||||
| -  cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
 | ||||
| +  std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
 | ||||
|    exit(-1); | ||||
|  } | ||||
|  #endif | ||||
| @@ -282,7 +282,7 @@
 | ||||
|    sprintf(Path,"Ri-li.app/Contents/Resources/%s",Provi); | ||||
|    if(FileExiste(Path)) return; | ||||
|     | ||||
| -  cerr <<"Impossible de trouver le fichier '"<<Path<<endl;
 | ||||
| +  std::cerr <<"Impossible de trouver le fichier '"<<Path<<std::endl;
 | ||||
|    exit(-1); | ||||
|  } | ||||
|  #endif | ||||
							
								
								
									
										38
									
								
								gnu/packages/patches/symmetrica-bruch.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								gnu/packages/patches/symmetrica-bruch.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,38 @@ | |||
| --- src/bruch.c	2007-12-06 11:30:00.000000000 -0500
 | ||||
| +++ b/bruch.c	2013-10-22 08:37:43.000000000 -0400
 | ||||
| @@ -975,14 +975,16 @@
 | ||||
|      ggterg = ggt_i(S_B_UI(bruch),S_B_OI(bruch)); | ||||
|   | ||||
|      if (ggterg == S_B_UI(bruch)) { | ||||
| +        INT tmp = S_B_OI(bruch);
 | ||||
|          freeself_bruch(bruch); | ||||
| -        M_I_I(S_B_OI(bruch) / ggterg,bruch);
 | ||||
| +        M_I_I(tmp / ggterg,bruch);
 | ||||
|          goto ende; | ||||
|          } | ||||
|   | ||||
|      if (-ggterg == S_B_UI(bruch)) { | ||||
| +        INT tmp = S_B_OI(bruch);
 | ||||
|          freeself_bruch(bruch); | ||||
| -        M_I_I(- S_B_OI(bruch) / ggterg,bruch);
 | ||||
| +        M_I_I(- tmp / ggterg,bruch);
 | ||||
|          goto ende; | ||||
|          } | ||||
|   | ||||
| @@ -1032,12 +1034,14 @@
 | ||||
|   | ||||
|      if (S_O_K(S_B_U(bruch)) == INTEGER) | ||||
|          if (S_B_UI(bruch) == 1) {  | ||||
| +            INT tmp = S_B_OI(bruch);
 | ||||
|              freeself_bruch(bruch); | ||||
| -            M_I_I(S_B_OI(bruch),bruch); 
 | ||||
| +            M_I_I(tmp,bruch); 
 | ||||
|              goto ende; } | ||||
|          else if (S_B_UI(bruch) == -1) {  | ||||
| +            INT tmp = S_B_OI(bruch);
 | ||||
|              freeself_bruch(bruch); | ||||
| -            M_I_I( - S_B_OI(bruch),bruch); 
 | ||||
| +            M_I_I( - tmp,bruch); 
 | ||||
|              goto ende; } | ||||
|      if (NEGP(S_B_O(bruch)) && NEGP(S_B_U(bruch))) | ||||
|          { | ||||
							
								
								
									
										37
									
								
								gnu/packages/patches/symmetrica-int32.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								gnu/packages/patches/symmetrica-int32.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,37 @@ | |||
| diff -ru src/def.h c/def.h
 | ||||
| --- src/def.h	2007-12-06 17:30:56.000000000 +0100
 | ||||
| +++ c/def.h	2013-10-19 18:42:55.118745730 +0200
 | ||||
| @@ -2,14 +2,9 @@
 | ||||
|  /* INT should always be 4 byte */ | ||||
|  #ifndef DEF_H | ||||
|   | ||||
| -
 | ||||
| -#ifdef __alpha
 | ||||
| -typedef  int INT;
 | ||||
| -typedef unsigned  int  UINT;
 | ||||
| -#else /* __alpha */
 | ||||
| -typedef long INT;
 | ||||
| -typedef unsigned long UINT;
 | ||||
| -#endif /* __alpha */
 | ||||
| +#include <stdint.h>
 | ||||
| +typedef int32_t INT;
 | ||||
| +typedef uint32_t UINT;
 | ||||
|   | ||||
|  #include <stdio.h> | ||||
|  #include <memory.h> | ||||
| @@ -65,10 +60,13 @@
 | ||||
|   | ||||
|   | ||||
|  /* definitionen fuer object.c */ | ||||
| -typedef INT OBJECTKIND;   /* 4 byte */
 | ||||
| +/* NOTE: partition code assumes that there is no unused space in the
 | ||||
| + * object struct when an INT is stored. This requires both OBJECTKIND
 | ||||
| + * and OBJECTSELF to have a size equal to a machine word. */
 | ||||
| +typedef intptr_t OBJECTKIND;
 | ||||
|   | ||||
|  typedef union { | ||||
| -	INT ob_INT;
 | ||||
| +	intptr_t ob_INT;
 | ||||
|  	INT * ob_INTpointer; | ||||
|  	char *ob_charpointer; | ||||
|  	struct bruch *ob_bruch; | ||||
							
								
								
									
										14
									
								
								gnu/packages/patches/symmetrica-return_values.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										14
									
								
								gnu/packages/patches/symmetrica-return_values.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,14 @@ | |||
| diff -ru src/part.c b/part.c
 | ||||
| --- src/part.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/part.c 	Thu May 14 06:01:00 2009 -0400
 | ||||
| @@ -1767,8 +1767,8 @@
 | ||||
|  /* to compute number of partitions */ | ||||
|  { | ||||
|      INT erg = OK; | ||||
| -    if (ni<0) return;
 | ||||
| -    if (not EMPTYP(S_V_I(vec,ni))) return;
 | ||||
| +    if (ni<0) return 0;
 | ||||
| +    if (not EMPTYP(S_V_I(vec,ni))) return 0;
 | ||||
|      else if (ni<=1) M_I_I(1,S_V_I(vec,ni)); | ||||
|      else { | ||||
|       | ||||
							
								
								
									
										340
									
								
								gnu/packages/patches/symmetrica-sort_sum_rename.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										340
									
								
								gnu/packages/patches/symmetrica-sort_sum_rename.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,340 @@ | |||
| diff -r 5cd656a07aa5 src/bar.c
 | ||||
| --- a/bar.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/bar.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -237,7 +237,7 @@
 | ||||
|      g = callocobject(); | ||||
|      e = S_V_I(a,0L); | ||||
|      f = S_V_I(a,1L); | ||||
| -    erg += sum(f,g);
 | ||||
| +    erg += sym_sum(f,g);
 | ||||
|      j=0L; | ||||
|      for (i=0L;i<S_V_LI(e);i++) | ||||
|          j += S_V_II(e,i)*(i+1L); | ||||
| @@ -427,7 +427,7 @@
 | ||||
|      for (i=0L;i<S_V_LI(b);i++) | ||||
|          erg += kranztypus_to_matrix(S_V_I(c,i),S_V_I(b,i)); | ||||
|      erg += freeall(c); | ||||
| -    erg += sort(b); /* AK 130592 */
 | ||||
| +    erg += sym_sort(b); /* AK 130592 */
 | ||||
|      ENDR("makevectorof_class_bar"); | ||||
|  } | ||||
|   | ||||
| @@ -615,7 +615,7 @@
 | ||||
|      c = callocobject(); | ||||
|      d = callocobject(); | ||||
|      erg += lehmercode_bar(a,c); | ||||
| -    erg += sum(S_V_I(c,1L),b);
 | ||||
| +    erg += sym_sum(S_V_I(c,1L),b);
 | ||||
|      for(i=0L;i<S_P_LI(a);i++) | ||||
|          { | ||||
|          if (S_V_II(S_V_I(c,0L),i) == 1L) | ||||
| diff -r 5cd656a07aa5 src/def.h
 | ||||
| --- a/def.h	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/def.h	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -3105,7 +3105,7 @@
 | ||||
|  extern INT so_character (); | ||||
|  extern INT so_dimension (); | ||||
|  extern OBJECTKIND s_o_k(); | ||||
| -extern INT sort();
 | ||||
| +extern INT sym_sort();
 | ||||
|  extern INT sort_rows_tableaux_apply(); | ||||
|  extern INT sort_vector(); | ||||
|  extern OBJECTSELF s_o_s(); | ||||
| @@ -3271,7 +3271,7 @@
 | ||||
|  extern INT sub_part_part(); | ||||
|  extern INT substitute_one_matrix (); | ||||
|  extern INT substitute_one_monopoly (); | ||||
| -extern INT sum();
 | ||||
| +extern INT sym_sum();
 | ||||
|  extern INT sum_integervector(); | ||||
|  extern INT sum_matrix(); | ||||
|  extern INT sum_vector(); | ||||
| diff -r 5cd656a07aa5 src/di.c
 | ||||
| --- a/di.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/di.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -1355,7 +1355,7 @@
 | ||||
|  				m_il_nv(0L,weight_watcher); | ||||
|  				m_il_nv(0L,perm_vec); | ||||
|  				copy(S_V_I(FP,0L),fix); | ||||
| -				sort(fix);
 | ||||
| +				sym_sort(fix);
 | ||||
|   | ||||
|  				get_perm(hweight,p,b,S_I_I(n),S_I_I(m),0L, | ||||
|  						 perm_vec,weight_watcher,fix); | ||||
| @@ -1502,7 +1502,7 @@
 | ||||
|  	if(ind == m) | ||||
|  	{ | ||||
|  		mult_perm_fix(p,fix,hfix); | ||||
| -		sort(hfix);
 | ||||
| +		sym_sort(hfix);
 | ||||
|  		if(!hfix_in_ww(hfix,ww)) | ||||
|  		{ | ||||
|  			inc(ww); | ||||
| diff -r 5cd656a07aa5 src/ga.c
 | ||||
| --- a/ga.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/ga.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -632,7 +632,7 @@
 | ||||
|      else if (what == 0L) | ||||
|          erg += vertikal_sum(S_V_L(a),c); | ||||
|      erg += copy(a,d); | ||||
| -    erg += sort(d);
 | ||||
| +    erg += sym_sort(d);
 | ||||
|      erg += m_il_p(S_V_II(d,S_V_LI(d)-1L),e); /* identitaet */ | ||||
|      for (i=0L,k=0L,j=S_V_LI(d);i<S_P_LI(e);i++) | ||||
|          if (i+1L == S_V_II(d,k) ) | ||||
| @@ -722,7 +722,7 @@
 | ||||
|   | ||||
|      j=0L; | ||||
|      erg += append(h,g,h2);  | ||||
| -    erg += sort(h2);
 | ||||
| +    erg += sym_sort(h2);
 | ||||
|      for (i=0L;i<S_V_LI(g);i++) | ||||
|          { | ||||
|          erg += m_i_i(S_V_II(g,i),S_P_I(a,j)); | ||||
| diff -r 5cd656a07aa5 src/galois.c
 | ||||
| --- a/galois.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/galois.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -758,7 +758,7 @@
 | ||||
|  		} | ||||
|          } | ||||
|      FREEALL2(v,nv); | ||||
| -    sort(res);
 | ||||
| +    sym_sort(res);
 | ||||
|      } | ||||
|      S3R(k,phg_c,phg_d,"all_points_phg_store",res); | ||||
|      ENDR("all_points"); | ||||
| diff -r 5cd656a07aa5 src/macro.h
 | ||||
| --- a/macro.h	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/macro.h	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -1,6 +1,8 @@
 | ||||
|  /* file: macro.h symmetrica source code */ | ||||
|  #ifndef MACRO_H | ||||
|   | ||||
| +#include "string.h"
 | ||||
| +
 | ||||
|  #ifdef SYMMAGMA | ||||
|  #define SYM_MALLOC(a) mem_malloc(a) | ||||
|  #else | ||||
|  #define C_O_K(a,b) ((a)->ob_kind = (OBJECTKIND)(b)) | ||||
| --- a/nc.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/nc.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -204,7 +204,7 @@
 | ||||
|      erg += mult(S_NC_C(a),S_NC_C(b),d); | ||||
|      erg += m_gl_co(S_NC_GL(a),e); | ||||
|      erg += mult_apply(e,d); | ||||
| -    erg += sum(d,e);
 | ||||
| +    erg += sym_sum(d,e);
 | ||||
|      erg += m_gl_go(S_NC_GL(a),d); | ||||
|      erg += div(e,d,c); | ||||
|      erg += freeall(e); | ||||
| @@ -617,7 +617,7 @@
 | ||||
|          erg += mult_nc_kranz(c,a,e); | ||||
|          erg += mult(S_V_I(e,1L),f,c); | ||||
|          erg += div(c,g,c); | ||||
| -        erg += sum(c,S_V_I(S_NC_C(b),S_I_I(d)));
 | ||||
| +        erg += sym_sum(c,S_V_I(S_NC_C(b),S_I_I(d)));
 | ||||
|      } | ||||
|      erg += freeall(c);  | ||||
|      erg += freeall(d);  | ||||
| @@ -712,7 +712,7 @@
 | ||||
|      for(j = 0L; j<S_V_LI(c);j++) { | ||||
|          kranztypus_to_matrix(S_V_I(c,j),S_V_I(a,j));  | ||||
|      } | ||||
| -    sort(a);
 | ||||
| +    sym_sort(a);
 | ||||
|      freeall(f); freeall(h); freeall(c); | ||||
|      return OK; | ||||
|  } | ||||
| @@ -739,7 +739,7 @@
 | ||||
|          kranztypus_to_matrix(S_V_I(c,j),S_V_I(h,j));  | ||||
|          } | ||||
|       | ||||
| -    sort(h); 
 | ||||
| +    sym_sort(h); 
 | ||||
|      m_l_v(S_V_L(h),a); | ||||
|      for(j = 0L; j<S_V_LI(c);j++) { | ||||
|          typusorder(S_V_I(h,j), zb, za, S_V_I(a,j), f); | ||||
| @@ -789,7 +789,7 @@
 | ||||
|          erg += kranztypus_to_matrix(S_V_I(c,j),S_V_I(h,j));  | ||||
|      } | ||||
|       | ||||
| -    erg += sort(h);
 | ||||
| +    erg += sym_sort(h);
 | ||||
|      erg += typusorder(S_V_I(h,S_I_I(i)), zb, za, a, f); | ||||
|      erg += freeall(f);  | ||||
|      erg += freeall(c);  | ||||
| diff -r 5cd656a07aa5 src/nu.c
 | ||||
| --- a/nu.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/nu.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -531,13 +531,13 @@
 | ||||
|      ENDR("add"); | ||||
|  } | ||||
|   | ||||
| -INT sort(a) OP a;
 | ||||
| +INT sym_sort(a) OP a;
 | ||||
|  /* sortiert das object in aufsteigender reihenfolge AK 270787 */ | ||||
|  /* AK 160986 */ /* AK 280689 V1.0 */ /* AK 050390 V1.1 */ | ||||
|  /* AK 070891 V1.3 */ | ||||
|  { | ||||
|      INT erg = OK; | ||||
| -    EOP("sort(1)",a);
 | ||||
| +    EOP("sym_sort(1)",a);
 | ||||
|   | ||||
|      switch(S_O_K(a)) | ||||
|      { | ||||
| @@ -547,9 +547,9 @@
 | ||||
|          erg += sort_vector(a);break; | ||||
|  #endif /* VECTORTRUE */ | ||||
|      default: | ||||
| -        erg += WTO("sort",a); break;
 | ||||
| +        erg += WTO("sym_sort",a); break;
 | ||||
|      }; | ||||
| -    ENDR("sort");
 | ||||
| +    ENDR("sym_sort");
 | ||||
|  } | ||||
|   | ||||
|  INT length(a,d) OP a,d; | ||||
| @@ -641,7 +641,7 @@
 | ||||
|      ENDR("content"); | ||||
|  } | ||||
|   | ||||
| -INT sum(a,res) OP a,res;
 | ||||
| +INT sym_sum(a,res) OP a,res;
 | ||||
|  /* AK 280689 V1.0 */ /* AK 050390 V1.1 */ /* AK 120391 V1.2 */ | ||||
|  /* AK 140891 V1.3 */ | ||||
|  /* AK 170298 V2.0 */ | ||||
| @@ -649,7 +649,7 @@
 | ||||
|      INT erg = OK; | ||||
|      COP("sum(1)",a); | ||||
|      COP("sum(2)",res); | ||||
| -    CE2(a,res,sum);
 | ||||
| +    CE2(a,res,sym_sum);
 | ||||
|   | ||||
|      switch(S_O_K(a)) | ||||
|      { | ||||
| @@ -680,7 +680,7 @@
 | ||||
|          erg += WTO("sum",a); break; | ||||
|      }; | ||||
|   | ||||
| -    ENDR("sum");
 | ||||
| +    ENDR("sym_sum");
 | ||||
|  } | ||||
|   | ||||
|   | ||||
| diff -r 5cd656a07aa5 src/part.c
 | ||||
| --- a/part.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/part.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -347,7 +347,7 @@
 | ||||
|      if (a == b) { /* a := a+a */ | ||||
|          if (S_PA_K(a) == VECTOR) { | ||||
|              erg += append_apply_vector(S_PA_S(a),S_PA_S(b)); | ||||
| -            erg += sort(S_PA_S(a));
 | ||||
| +            erg += sym_sort(S_PA_S(a));
 | ||||
|              goto endr_ende; | ||||
|          } | ||||
|          else if (S_PA_K(a) == EXPONENT) { | ||||
| @@ -406,7 +406,7 @@
 | ||||
|              k=S_PA_LI(b)-1; | ||||
|  /* | ||||
|              erg += append_apply_vector(S_PA_S(a),S_PA_S(b)); | ||||
| -            erg += sort(S_PA_S(a));
 | ||||
| +            erg += sym_sort(S_PA_S(a));
 | ||||
|  */ | ||||
|              inc_vector_co(S_PA_S(a),S_PA_LI(b)); | ||||
|              for (j=S_PA_LI(a)-1;j>=0;j--) | ||||
| diff -r 5cd656a07aa5 src/perm.c
 | ||||
| --- a/perm.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/perm.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -833,9 +833,9 @@
 | ||||
|      /* s = Anzahl der spalten */ | ||||
|           | ||||
|      s = S_V_LI(S_V_I(a,0L)); | ||||
| -    sum(S_V_I(a,0L),summe);/* composition ist vector */
 | ||||
| +    sym_sum(S_V_I(a,0L),summe);/* composition ist vector */
 | ||||
|      z = S_I_I(summe); | ||||
| -    FREEALL(summe); 
 | ||||
| +    FREEALL(summe);
 | ||||
|      m_ilih_nm(s,z,b);  | ||||
|      C_O_K(b,KRANZTYPUS); | ||||
|      for (i=0L;i<s;i++) | ||||
| @@ -1114,7 +1114,7 @@
 | ||||
|          erg += kranztypus_to_matrix(S_V_I(c,i),S_V_I(h,i));  | ||||
|      } | ||||
|       | ||||
| -    erg += sort(h);
 | ||||
| +    erg += sym_sort(h);
 | ||||
|   | ||||
|      erg += chartafel(b,ct); | ||||
|   | ||||
| @@ -1926,7 +1926,7 @@
 | ||||
|      OP c; | ||||
|      c = CALLOCOBJECT(); | ||||
|      erg += lehmercode_permutation(a,c); /*result is a vector */ | ||||
| -    erg += sum(c,b); 
 | ||||
| +    erg += sym_sum(c,b); 
 | ||||
|      FREEALL(c); | ||||
|      } | ||||
|      ENDR("numberof_inversionen"); | ||||
| @@ -2364,7 +2364,7 @@
 | ||||
|      COP("rz_lehmercode(2)",b); | ||||
|   | ||||
|      zw = callocobject(); | ||||
| -    erg += sum(lc,zw); 
 | ||||
| +    erg += sym_sum(lc,zw); 
 | ||||
|      if (NULLP(zw))  | ||||
|          { | ||||
|          erg += m_il_integervector((INT)0,b); | ||||
| diff -r 5cd656a07aa5 src/rest.c
 | ||||
| --- a/rest.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/rest.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -3998,7 +3998,7 @@
 | ||||
|                  oj = j; | ||||
|                  } | ||||
|          } | ||||
| -    erg += sum(c,b);
 | ||||
| +    erg += sym_sum(c,b);
 | ||||
|  eee: | ||||
|      erg += freeall(c); | ||||
|      ENDR("charge_word"); | ||||
| diff -r 5cd656a07aa5 src/ta.c
 | ||||
| --- a/ta.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/ta.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -1596,7 +1596,7 @@
 | ||||
|      { | ||||
|      OP d,e; | ||||
|      e = CALLOCOBJECT(); | ||||
| -    erg += sum(content,e); /* AK 271098 */
 | ||||
| +    erg += sym_sum(content,e); /* AK 271098 */
 | ||||
|      d = CALLOCOBJECT(); | ||||
|      erg += weight(shape,d); | ||||
|      if (NEQ(d,e)) | ||||
| @@ -1821,7 +1821,7 @@
 | ||||
|      CE3(matrix, column_index, row_index,matrix_twoword); | ||||
|      c = callocobject(); | ||||
|      erg += zeilen_summe(matrix,c); | ||||
| -    erg += sum(c,c);
 | ||||
| +    erg += sym_sum(c,c);
 | ||||
|      erg += m_l_v(c,column_index); | ||||
|      erg += m_l_v(c,row_index); | ||||
|      for(i=0,l=0;i<S_M_HI(matrix);i++) | ||||
| diff -r 5cd656a07aa5 src/zyk.c
 | ||||
| --- a/zyk.c	Thu May 14 06:01:00 2009 -0400
 | ||||
| +++ b/zyk.c	Thu May 14 07:38:17 2009 -0400
 | ||||
| @@ -804,7 +804,7 @@
 | ||||
|      zykeltypvec = CALLOCOBJECT(); | ||||
|      ak_order = CALLOCOBJECT(); | ||||
|   | ||||
| -    sum(numztvec,ak_order); /* AK 060295 */
 | ||||
| +    sym_sum(numztvec,ak_order); /* AK 060295 */
 | ||||
|   | ||||
|   | ||||
|   | ||||
| @@ -1176,7 +1176,7 @@
 | ||||
|      erg += m_i_i(0,c); | ||||
|      while (z!=NULL) | ||||
|          { | ||||
| -        erg += sum(S_PO_S(z),e);
 | ||||
| +        erg += sym_sum(S_PO_S(z),e);
 | ||||
|          erg += hoch(b,e,e); | ||||
|          erg += mult_apply(S_PO_K(z),e); | ||||
|          erg += add_apply(e,c); | ||||
							
								
								
									
										42
									
								
								gnu/packages/patches/usb-modeswitch-accept-config-arg.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								gnu/packages/patches/usb-modeswitch-accept-config-arg.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,42 @@ | |||
| --- 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] | ||||
|  | @ -14,6 +14,7 @@ | |||
| ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> | ||||
| ;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com> | ||||
| ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -514,6 +515,9 @@ by using the poppler rendering engine.") | |||
|                      ;; For building documentation. | ||||
|                      ("python-sphinx" ,python-sphinx) | ||||
| 
 | ||||
|                      ;; For building icons. | ||||
|                      ("librsvg" ,librsvg) | ||||
| 
 | ||||
|                      ;; For tests. | ||||
|                      ("check" ,check) | ||||
|                      ("xorg-server" ,xorg-server-for-tests))) | ||||
|  |  | |||
|  | @ -21,6 +21,7 @@ | |||
| ;;; Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz> | ||||
| ;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net> | ||||
| ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -711,14 +712,14 @@ is captured while being passed through to the original file handles.") | |||
| (define-public perl-canary-stability | ||||
|   (package | ||||
|     (name "perl-canary-stability") | ||||
|     (version "2012") | ||||
|     (version "2013") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/" | ||||
|                                   "Canary-Stability-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "01vih43hvpqy67m6a6fwmlswli91mqpv8n8ccglvlkc33l8hn97x")))) | ||||
|                 "1smnsx371x9zrqmylgq145991xh8561mraqfyrlbiz4mrxi1rjd5")))) | ||||
|     (build-system perl-build-system) | ||||
|     (home-page "https://metacpan.org/release/Canary-Stability") | ||||
|     (synopsis "Check compatibility with the installed perl version") | ||||
|  | @ -9429,7 +9430,7 @@ on the YAML 1.0 specification.") | |||
| (define-public perl-yaml-libyaml | ||||
|   (package | ||||
|     (name "perl-yaml-libyaml") | ||||
|     (version "0.76") | ||||
|     (version "0.78") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -9438,7 +9439,7 @@ on the YAML 1.0 specification.") | |||
|              version | ||||
|              ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "1m94g36sl9rasjlvlsf65xcal5hvkc3gbzd7l68h17az75269kyy")))) | ||||
|         (base32 "03plv3wfqqqf7g8mxr8f6wlki2af8w3rg9xcfii1z5l1f1iarxx1")))) | ||||
|     (build-system perl-build-system) | ||||
|     (home-page | ||||
|      "https://metacpan.org/release/YAML-LibYAML") | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2013, 2014, 2016, 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
|  | @ -24,7 +24,8 @@ | |||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix licenses)) | ||||
|   #:use-module (guix licenses) | ||||
|   #:use-module (gnu packages texinfo)) | ||||
| 
 | ||||
| (define-public argtable | ||||
|   (package | ||||
|  | @ -126,19 +127,21 @@ appropriately.") | |||
| (define-public gengetopt | ||||
|   (package | ||||
|     (name "gengetopt") | ||||
|     (version "2.22.6") | ||||
|     (version "2.23") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://gnu/gengetopt/gengetopt-" | ||||
|                            version ".tar.gz")) | ||||
|                            version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1xq1kcfs6hri101ss4dhym0jn96z4v6jdvx288mfywadc245mc1h")))) | ||||
|          "1b44fn0apsgawyqa4alx2qj5hls334mhbszxsy6rfr0q074swhdr")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:parallel-build? #f             ; not supported | ||||
|        #:parallel-tests? #f))           ; likewise | ||||
|     (native-inputs | ||||
|      `(("texinfo" ,texinfo))) | ||||
|     (synopsis "Create parsers for command line options") | ||||
|     (description | ||||
|      "GNU Gengetopt is a program to generate a C/C++ function for parsing | ||||
|  |  | |||
|  | @ -2045,21 +2045,21 @@ Betamax.") | |||
| (define-public python-s3transfer | ||||
|   (package | ||||
|     (name "python-s3transfer") | ||||
|     (version "0.1.13") | ||||
|     (version "0.2.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "s3transfer" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1harvyn1s8v54n1w5h7c0lg4bgjh68aylhg28s8n174q53h1ip4h")))) | ||||
|                 "08fhj73b1ai52hrs2q3nggshq3pswn1gq8ch3m009cb2v2vmqggj")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              ;; 7 of the 'integration' tests require network access or login | ||||
|              ;; credentials. | ||||
|              ;; Some of the 'integration' tests require network access or | ||||
|              ;; login credentials. | ||||
|              (invoke "nosetests" "--exclude=integration") | ||||
|              #t))))) | ||||
|     (native-inputs | ||||
|  | @ -2067,7 +2067,8 @@ Betamax.") | |||
|        ("python-mock" ,python-mock) | ||||
|        ("python-nose" ,python-nose))) | ||||
|     (propagated-inputs | ||||
|      `(("python-botocore" ,python-botocore))) | ||||
|      `(("python-botocore" ,python-botocore) | ||||
|        ("python-urllib3" ,python-urllib3))) | ||||
|     (synopsis "Amazon S3 Transfer Manager") | ||||
|     (description "S3transfer is a Python library for managing Amazon S3 | ||||
| transfers.") | ||||
|  | @ -2499,6 +2500,14 @@ this it tries to be opinion-free and very extendable.") | |||
|         (base32 | ||||
|           "0r8w2v89nj6b9p91p495cga5m72a673l2wc0hp0zqk05j4yrc9b4")))) | ||||
|   (build-system python-build-system) | ||||
|   (arguments | ||||
|    `(#:phases | ||||
|      (modify-phases %standard-phases | ||||
|        (add-after 'unpack 'patch-tests | ||||
|          (lambda _ | ||||
|            (substitute* "tests.py" | ||||
|             (("flask\\.ext\\.script") "flask_script")) | ||||
|            #t))))) | ||||
|   (propagated-inputs | ||||
|    `(("python-flask" ,python-flask) | ||||
|      ("python-argcomplete" ,python-argcomplete) | ||||
|  |  | |||
|  | @ -1978,6 +1978,32 @@ between Julian dates and Gregorian dates.") | |||
|               `(("python2-functools32" ,python2-functools32) | ||||
|                 ,@(package-propagated-inputs jsonschema)))))) | ||||
| 
 | ||||
| ;; This old version is still required by docker-compose as of 1.24.0. | ||||
| (define-public python-jsonschema-2.6 | ||||
|   (package | ||||
|     (name "python-jsonschema") | ||||
|     (version "2.6.0") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (pypi-uri "jsonschema" version)) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'check (lambda _ (invoke "nosetests")))))) | ||||
|     (native-inputs | ||||
|      `(("python-nose" ,python-nose) | ||||
|        ("python-vcversioner" ,python-vcversioner))) | ||||
|     (home-page "https://github.com/Julian/jsonschema") | ||||
|     (synopsis "Implementation of JSON Schema for Python") | ||||
|     (description | ||||
|      "Jsonschema is an implementation of JSON Schema for Python.") | ||||
|     (license license:expat) | ||||
|     (properties `((python2-variant . ,(delay python2-jsonschema)))))) | ||||
| 
 | ||||
| (define-public python-schema | ||||
|   (package | ||||
|     (name "python-schema") | ||||
|  | @ -2049,13 +2075,13 @@ cutting and pasting that code over and over.") | |||
| (define-public python-unidecode | ||||
|   (package | ||||
|     (name "python-unidecode") | ||||
|     (version "1.0.23") | ||||
|     (version "1.1.0") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (pypi-uri "Unidecode" version)) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1ysjbr3nqfqj97h8zyj3v9pya413vkv7a1mzml80w37xx15kb1cb")))) | ||||
|                "00pi0czzwvbf7djhkkjyvimj60wqdx0llbddzfnax650g9b8yscc")))) | ||||
|     (build-system python-build-system) | ||||
|     (home-page "https://pypi.python.org/pypi/Unidecode") | ||||
|     (synopsis "ASCII transliterations of Unicode text") | ||||
|  | @ -3945,6 +3971,32 @@ toolkits.") | |||
| (define-public python2-matplotlib-documentation | ||||
|   (package-with-python2 python-matplotlib-documentation)) | ||||
| 
 | ||||
| (define-public python-matplotlib-venn | ||||
|   (package | ||||
|     (name "python-matplotlib-venn") | ||||
|     (version "0.11.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "matplotlib-venn" version ".zip")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "13w3i1wih0mij08hrgppzg0g9z50y54rc28l6gdi1r5w45l7l0dy")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments '(#:tests? #f)) ; tests are not included | ||||
|     (propagated-inputs | ||||
|      `(("python-matplotlib" ,python-matplotlib) | ||||
|        ("python-numpy" ,python-numpy) | ||||
|        ("python-scipy" ,python-scipy))) | ||||
|     (native-inputs | ||||
|      `(("unzip" ,unzip))) | ||||
|     (home-page "https://github.com/konstantint/matplotlib-venn") | ||||
|     (synopsis "Plot area-proportional Venn diagrams") | ||||
|     (description | ||||
|      "This package provides tools for plotting area-proportional two- and | ||||
| three-way Venn diagrams in @code{matplotlib}.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public python2-pysnptools | ||||
|   (package | ||||
|     (name "python2-pysnptools") | ||||
|  | @ -3978,14 +4030,14 @@ operators such as union, intersection, and difference.") | |||
| (define-public python-scipy | ||||
|   (package | ||||
|     (name "python-scipy") | ||||
|     (version "1.1.0") | ||||
|     (version "1.2.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "scipy" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1lfg686w6vv2m2dfs8v9d0bf2i18z7wz5vgzjnkgmpr4hi0550w7")))) | ||||
|          "1cgvgin8fvckv96hjh3ikmwkra5rif51bdb75ifzf7xbil5iwcx4")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-numpy" ,python-numpy) | ||||
|  | @ -5009,13 +5061,13 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
| (define-public python-ipykernel | ||||
|   (package | ||||
|     (name "python-ipykernel") | ||||
|     (version "5.1.0") | ||||
|     (version "5.1.1") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|       (uri (pypi-uri "ipykernel" version)) | ||||
|       (sha256 | ||||
|        (base32 "0br95qhrd5k65g10djngiy27hs0642301hlf2q142i8djabvzh0g")))) | ||||
|        (base32 "173nm29g85w8cac3fg40b27qaq26g41wgg6qn79ql1hq4w2n5sgh")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -5038,8 +5090,39 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
|      "This package provides the IPython kernel for Jupyter.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;; Version 5.1.1 and above no longer support Python 2. | ||||
| (define-public python2-ipykernel | ||||
|   (package-with-python2 python-ipykernel)) | ||||
|   (package | ||||
|     (name "python2-ipykernel") | ||||
|     (version "5.1.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "ipykernel" version)) | ||||
|        (sha256 | ||||
|         (base32 "0br95qhrd5k65g10djngiy27hs0642301hlf2q142i8djabvzh0g")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:python ,python-2 | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              (setenv "HOME" "/tmp") | ||||
|              (invoke "pytest" "-v") | ||||
|              #t))))) | ||||
|     (propagated-inputs | ||||
|      `(("python2-ipython" ,python2-ipython) | ||||
|        ;; imported at runtime during connect | ||||
|        ("python2-jupyter-client" ,python2-jupyter-client))) | ||||
|     (native-inputs | ||||
|      `(("python2-pytest" ,python2-pytest) | ||||
|        ("python2-nose" ,python2-nose))) | ||||
|     (home-page "https://ipython.org") | ||||
|     (synopsis "IPython Kernel for Jupyter") | ||||
|     (description | ||||
|      "This package provides the IPython kernel for Jupyter.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python-pari-jupyter | ||||
|   (package | ||||
|  | @ -5066,12 +5149,34 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
|     (description "The package provides a PARI/GP kernel for Jupyter.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public python-backcall | ||||
|   (package | ||||
|     (name "python-backcall") | ||||
|     (version "0.1.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "backcall" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1r01dqch3f8fdj3n6fviw8hxqrs6w5v0qw4izmvqzry1w9dxiv1q")))) | ||||
|     (build-system python-build-system) | ||||
|     (home-page "https://github.com/takluyver/backcall/") | ||||
|     (synopsis "Specifications for callback functions passed in to an API") | ||||
|     (description | ||||
|      "If your code lets other people supply callback functions, it's important | ||||
| to specify the function signature you expect, and check that functions support | ||||
| that.  Adding extra parameters later would break other peoples code unless | ||||
| you're careful.  The @code{backcall} package provides a way of specifying the | ||||
| callback signature using a prototype function.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;; This is the latest release of the LTS version of ipython with support for | ||||
| ;; Python 2.7 and Python 3.x.  Later non-LTS versions starting from 6.0 have | ||||
| ;; dropped support for Python 2.7.  We may want to rename this package. | ||||
| (define-public python-ipython | ||||
| ;; dropped support for Python 2.7. | ||||
| (define-public python2-ipython | ||||
|   (package | ||||
|     (name "python-ipython") | ||||
|     (name "python2-ipython") | ||||
|     (version "5.8.0") | ||||
|     (source | ||||
|      (origin | ||||
|  | @ -5080,14 +5185,75 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
|        (sha256 | ||||
|         (base32 "01l93i4hspf0lvhmycvc8j378bslm9rw30mwfspsl6v1ayc69b2b")))) | ||||
|     (build-system python-build-system) | ||||
|     (outputs '("out" "doc")) | ||||
|     (propagated-inputs | ||||
|      `(("python-pyzmq" ,python-pyzmq) | ||||
|        ("python-prompt-toolkit" ,python-prompt-toolkit-1) | ||||
|      `(("python2-backports-shutil-get-terminal-size" | ||||
|         ,python2-backports-shutil-get-terminal-size) | ||||
|        ("python2-pathlib2" ,python2-pathlib2) | ||||
|        ("python2-pyzmq" ,python2-pyzmq) | ||||
|        ("python2-prompt-toolkit" ,python2-prompt-toolkit-1) | ||||
|        ("python2-terminado" ,python2-terminado) | ||||
|        ("python2-matplotlib" ,python2-matplotlib) | ||||
|        ("python2-numpy" ,python2-numpy) | ||||
|        ("python2-numpydoc" ,python2-numpydoc) | ||||
|        ("python2-jinja2" ,python2-jinja2) | ||||
|        ("python2-mistune" ,python2-mistune) | ||||
|        ("python2-pexpect" ,python2-pexpect) | ||||
|        ("python2-pickleshare" ,python2-pickleshare) | ||||
|        ("python2-simplegeneric" ,python2-simplegeneric) | ||||
|        ("python2-jsonschema" ,python2-jsonschema) | ||||
|        ("python2-traitlets" ,python2-traitlets) | ||||
|        ("python2-nbformat" ,python2-nbformat) | ||||
|        ("python2-pygments" ,python2-pygments))) | ||||
|     (inputs | ||||
|      `(("readline" ,readline) | ||||
|        ("which" ,which))) | ||||
|     (native-inputs | ||||
|      `(("graphviz" ,graphviz) | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("python2-requests" ,python2-requests) ;; for tests | ||||
|        ("python2-testpath" ,python2-testpath) | ||||
|        ("python2-mock" ,python2-mock) | ||||
|        ("python2-nose" ,python2-nose))) | ||||
|     (arguments | ||||
|      `(#:python ,python-2 | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'check 'delete-broken-tests | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              ;; These tests throw errors for unknown reasons. | ||||
|              (delete-file "IPython/core/tests/test_profile.py") | ||||
|              (delete-file "IPython/core/tests/test_interactiveshell.py") | ||||
|              (delete-file "IPython/core/tests/test_magic.py") | ||||
|              #t))))) | ||||
|     (home-page "https://ipython.org") | ||||
|     (synopsis "IPython is a tool for interactive computing in Python") | ||||
|     (description | ||||
|      "IPython provides a rich architecture for interactive computing with: | ||||
| Powerful interactive shells, a browser-based notebook, support for interactive | ||||
| data visualization, embeddable interpreters and tools for parallel | ||||
| computing.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python-ipython | ||||
|   (package | ||||
|     (name "python-ipython") | ||||
|     (version "7.5.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "ipython" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "09mbxq37mfn88xjnib7qfzaq9krr7gf1jxwy1p6mcjr254082h78")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-backcall" ,python-backcall) | ||||
|        ("python-pyzmq" ,python-pyzmq) | ||||
|        ("python-prompt-toolkit" ,python-prompt-toolkit) | ||||
|        ("python-terminado" ,python-terminado) | ||||
|        ("python-matplotlib" ,python-matplotlib) | ||||
|        ("python-numpy" ,python-numpy) | ||||
|        ("python-numpydoc" ,python-numpydoc) | ||||
|        ("python-jedi" ,python-jedi) | ||||
|        ("python-jinja2" ,python-jinja2) | ||||
|        ("python-mistune" ,python-mistune) | ||||
|        ("python-pexpect" ,python-pexpect) | ||||
|  | @ -5105,74 +5271,10 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
|        ("pkg-config" ,pkg-config) | ||||
|        ("python-requests" ,python-requests) ;; for tests | ||||
|        ("python-testpath" ,python-testpath) | ||||
|        ("python-nose" ,python-nose) | ||||
|        ("python-sphinx" ,python-sphinx) | ||||
|        ("python-shpinx-rtd-theme" ,python-sphinx-rtd-theme) | ||||
|        ;; FIXME: It's possible that a smaller union would work just as well. | ||||
|        ("texlive" ,(texlive-union (list texlive-fonts-amsfonts | ||||
|                                         texlive-fonts-ec | ||||
|                                         texlive-generic-ifxetex | ||||
|                                         texlive-generic-pdftex | ||||
|                                         texlive-latex-amsfonts | ||||
|                                         texlive-latex-capt-of | ||||
|                                         texlive-latex-cmap | ||||
|                                         texlive-latex-environ | ||||
|                                         texlive-latex-eqparbox | ||||
|                                         texlive-latex-etoolbox | ||||
|                                         texlive-latex-expdlist | ||||
|                                         texlive-latex-fancyhdr | ||||
|                                         texlive-latex-fancyvrb | ||||
|                                         texlive-latex-fncychap | ||||
|                                         texlive-latex-float | ||||
|                                         texlive-latex-framed | ||||
|                                         texlive-latex-geometry | ||||
|                                         texlive-latex-graphics | ||||
|                                         texlive-latex-hyperref | ||||
|                                         texlive-latex-mdwtools | ||||
|                                         texlive-latex-multirow | ||||
|                                         texlive-latex-oberdiek | ||||
|                                         texlive-latex-parskip | ||||
|                                         texlive-latex-preview | ||||
|                                         texlive-latex-tabulary | ||||
|                                         texlive-latex-threeparttable | ||||
|                                         texlive-latex-titlesec | ||||
|                                         texlive-latex-trimspaces | ||||
|                                         texlive-latex-ucs | ||||
|                                         texlive-latex-upquote | ||||
|                                         texlive-latex-url | ||||
|                                         texlive-latex-varwidth | ||||
|                                         texlive-latex-wrapfig))) | ||||
|        ("texinfo" ,texinfo))) | ||||
|        ("python-nose" ,python-nose))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'install 'install-doc | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (let* ((data (string-append (assoc-ref outputs "doc") "/share")) | ||||
|                     (doc (string-append data "/doc/" ,name "-" ,version)) | ||||
|                     (html (string-append doc "/html")) | ||||
|                     (man1 (string-append data "/man/man1")) | ||||
|                     (info (string-append data "/info")) | ||||
|                     (examples (string-append doc "/examples")) | ||||
|                     (python-arg (string-append "PYTHON=" (which "python")))) | ||||
|                (setenv "LANG" "en_US.utf8") | ||||
|                ;; Make installed package available for running the tests | ||||
|                (add-installed-pythonpath inputs outputs) | ||||
|                (with-directory-excursion "docs" | ||||
|                  ;; FIXME: pdf fails to build | ||||
|                  ;;(system* "make" "pdf" "PAPER=a4") | ||||
|                  (system* "make" python-arg "html") | ||||
|                  (system* "make" python-arg "info")) | ||||
|                (copy-recursively "docs/man" man1) | ||||
|                (copy-recursively "examples" examples) | ||||
|                (copy-recursively "docs/build/html" html) | ||||
|                ;; (copy-file "docs/build/latex/ipython.pdf" | ||||
|                ;;            (string-append doc "/ipython.pdf")) | ||||
|                (mkdir-p info) | ||||
|                (copy-file "docs/build/texinfo/ipython.info" | ||||
|                           (string-append info "/ipython.info")) | ||||
|                (copy-file "COPYING.rst" (string-append doc "/COPYING.rst"))) | ||||
|              #t)) | ||||
|          ;; Tests can only be run after the library has been installed and not | ||||
|          ;; within the source directory. | ||||
|          (delete 'check) | ||||
|  | @ -5195,19 +5297,11 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
|              (substitute* "./IPython/core/tests/test_inputtransformer.py" | ||||
|                (("#!/usr/bin/env python") | ||||
|                 (string-append "#!" (which "python")))) | ||||
|              ;; Disable 1 failing test | ||||
|              (substitute* "./IPython/core/tests/test_magic.py" | ||||
|                (("def test_dirops\\(\\):" all) | ||||
|                 (string-append "@dec.skipif(True)\n" all))) | ||||
|              ;; This test introduces a circular dependency on ipykernel | ||||
|              ;; (which depends on ipython). | ||||
|              (delete-file "IPython/core/tests/test_display.py") | ||||
|              ;; These tests throw errors for unknown reasons. | ||||
|              (delete-file "IPython/extensions/tests/test_storemagic.py") | ||||
|              (delete-file "IPython/core/tests/test_displayhook.py") | ||||
|              ;; AttributeError: module 'IPython.core' has no attribute 'formatters' | ||||
|              (delete-file "IPython/core/tests/test_interactiveshell.py") | ||||
|              (delete-file "IPython/core/tests/test_pylabtools.py") | ||||
|              (delete-file "IPython/core/tests/test_paths.py") | ||||
|              #t))))) | ||||
|     (home-page "https://ipython.org") | ||||
|     (synopsis "IPython is a tool for interactive computing in Python") | ||||
|  | @ -5216,22 +5310,88 @@ installing @code{kernelspec}s for use with Jupyter frontends.") | |||
| Powerful interactive shells, a browser-based notebook, support for interactive | ||||
| data visualization, embeddable interpreters and tools for parallel | ||||
| computing.") | ||||
|     (license license:bsd-3) | ||||
|     (properties `((python2-variant . ,(delay python2-ipython)))))) | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python2-ipython | ||||
|   (let ((ipython (package-with-python2 (strip-python2-variant python-ipython)))) | ||||
|     (package | ||||
|       (inherit ipython) | ||||
|       ;; FIXME: add pyreadline once available. | ||||
|       (propagated-inputs | ||||
|        `(("python2-backports-shutil-get-terminal-size" | ||||
|           ,python2-backports-shutil-get-terminal-size) | ||||
|          ("python2-pathlib2" ,python2-pathlib2) | ||||
|          ,@(package-propagated-inputs ipython))) | ||||
|       (native-inputs | ||||
|        `(("python2-mock" ,python2-mock) | ||||
|          ,@(package-native-inputs ipython)))))) | ||||
| (define-public python-ipython-documentation | ||||
|   (package | ||||
|     (inherit python-ipython) | ||||
|     (name "python-ipython-documentation") | ||||
|     (version (package-version python-ipython)) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'build) | ||||
|          (delete 'check) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((data (string-append (assoc-ref outputs "out") "/share")) | ||||
|                     (doc (string-append data "/doc/" ,name "-" ,version)) | ||||
|                     (html (string-append doc "/html")) | ||||
|                     (man1 (string-append data "/man/man1")) | ||||
|                     (info (string-append data "/info")) | ||||
|                     (examples (string-append doc "/examples")) | ||||
|                     (python-arg (string-append "PYTHON=" (which "python")))) | ||||
|                (setenv "LANG" "en_US.utf8") | ||||
|                (with-directory-excursion "docs" | ||||
|                  ;; FIXME: pdf fails to build | ||||
|                  ;;(system* "make" "pdf" "PAPER=a4") | ||||
|                  (system* "make" python-arg "html") | ||||
|                  ;; FIXME: the generated texi file contains ^@^@, which trips | ||||
|                  ;; up the parser. | ||||
|                  ;; (system* "make" python-arg "info") | ||||
|                  ) | ||||
|                (copy-recursively "docs/man" man1) | ||||
|                (copy-recursively "examples" examples) | ||||
|                (copy-recursively "docs/build/html" html) | ||||
|                ;; (copy-file "docs/build/latex/ipython.pdf" | ||||
|                ;;            (string-append doc "/ipython.pdf")) | ||||
|                (mkdir-p info) | ||||
|                ;; (copy-file "docs/build/texinfo/ipython.info" | ||||
|                ;;            (string-append info "/ipython.info")) | ||||
|                (copy-file "COPYING.rst" (string-append doc "/COPYING.rst"))) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("python-ipython" ,python-ipython) | ||||
|        ("python-ipykernel" ,python-ipykernel))) | ||||
|     (native-inputs | ||||
|      `(("python-sphinx" ,python-sphinx) | ||||
|        ("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme) | ||||
|        ;; FIXME: It's possible that a smaller union would work just as well. | ||||
|        ("texlive" ,(texlive-union (list texlive-fonts-amsfonts | ||||
|                                         texlive-fonts-ec | ||||
|                                         texlive-generic-ifxetex | ||||
|                                         texlive-generic-pdftex | ||||
|                                         texlive-latex-amsfonts | ||||
|                                         texlive-latex-capt-of | ||||
|                                         texlive-latex-cmap | ||||
|                                         texlive-latex-environ | ||||
|                                         texlive-latex-eqparbox | ||||
|                                         texlive-latex-etoolbox | ||||
|                                         texlive-latex-expdlist | ||||
|                                         texlive-latex-fancyhdr | ||||
|                                         texlive-latex-fancyvrb | ||||
|                                         texlive-latex-fncychap | ||||
|                                         texlive-latex-float | ||||
|                                         texlive-latex-framed | ||||
|                                         texlive-latex-geometry | ||||
|                                         texlive-latex-graphics | ||||
|                                         texlive-latex-hyperref | ||||
|                                         texlive-latex-mdwtools | ||||
|                                         texlive-latex-multirow | ||||
|                                         texlive-latex-needspace | ||||
|                                         texlive-latex-oberdiek | ||||
|                                         texlive-latex-parskip | ||||
|                                         texlive-latex-preview | ||||
|                                         texlive-latex-tabulary | ||||
|                                         texlive-latex-threeparttable | ||||
|                                         texlive-latex-titlesec | ||||
|                                         texlive-latex-trimspaces | ||||
|                                         texlive-latex-ucs | ||||
|                                         texlive-latex-upquote | ||||
|                                         texlive-latex-url | ||||
|                                         texlive-latex-varwidth | ||||
|                                         texlive-latex-wrapfig))) | ||||
|        ("texinfo" ,texinfo))))) | ||||
| 
 | ||||
| (define-public python-urwid | ||||
|   (package | ||||
|  | @ -7437,6 +7597,32 @@ in the data.") | |||
| (define-public python-jupyter-console | ||||
|   (package | ||||
|     (name "python-jupyter-console") | ||||
|     (version "6.0.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "jupyter_console" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1xdjw11cppf1fxvwkw2bk13ckkwas3bdah8baingn9296mvfi31h")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-ipykernel" ,python-ipykernel) | ||||
|        ("python-jupyter-client" ,python-jupyter-client) | ||||
|        ("python-prompt-toolkit" ,python-prompt-toolkit) | ||||
|        ("python-pygments" ,python-pygments))) | ||||
|     (native-inputs | ||||
|      `(("python-nose" ,python-nose))) | ||||
|     (home-page "https://jupyter.org") | ||||
|     (synopsis "Jupyter terminal console") | ||||
|     (description "This package provides a terminal-based console frontend for | ||||
| Jupyter kernels.  It also allows for console-based interaction with non-Python | ||||
| Jupyter kernels such as IJulia and IRKernel.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python2-jupyter-console | ||||
|   (package | ||||
|     (name "python2-jupyter-console") | ||||
|     (version "5.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|  | @ -7449,12 +7635,12 @@ in the data.") | |||
|     ;; Tests only run in an TTY. | ||||
|     (arguments `(#:tests? #f)) | ||||
|     (propagated-inputs | ||||
|      `(("python-ipykernel" ,python-ipykernel) | ||||
|        ("python-jupyter-client" ,python-jupyter-client) | ||||
|        ("python-prompt-toolkit" ,python-prompt-toolkit-1) | ||||
|        ("python-pygments" ,python-pygments))) | ||||
|      `(("python2-ipykernel" ,python2-ipykernel) | ||||
|        ("python2-jupyter-client" ,python2-jupyter-client) | ||||
|        ("python2-prompt-toolkit" ,python2-prompt-toolkit-1) | ||||
|        ("python2-pygments" ,python2-pygments))) | ||||
|     (native-inputs | ||||
|      `(("python-nose" ,python-nose))) | ||||
|      `(("python2-nose" ,python2-nose))) | ||||
|     (home-page "https://jupyter.org") | ||||
|     (synopsis "Jupyter terminal console") | ||||
|     (description "This package provides a terminal-based console frontend for | ||||
|  | @ -7462,9 +7648,6 @@ Jupyter kernels.  It also allows for console-based interaction with non-Python | |||
| Jupyter kernels such as IJulia and IRKernel.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python2-jupyter-console | ||||
|   (package-with-python2 python-jupyter-console)) | ||||
| 
 | ||||
| ;; The python-ipython and python-jupyter-console require each other. To get | ||||
| ;; the functionality in both packages working, strip down the | ||||
| ;; python-jupyter-console package when using it as an input to python-ipython. | ||||
|  | @ -8298,34 +8481,35 @@ document.") | |||
| 
 | ||||
| (define-public python-botocore | ||||
|   (package | ||||
|    (name "python-botocore") | ||||
|    (version "1.8.43") | ||||
|    (source | ||||
|     (origin | ||||
|      (method url-fetch) | ||||
|      (uri (pypi-uri "botocore" version)) | ||||
|      (sha256 | ||||
|       (base32 | ||||
|        "12cqpbnz3vfv41mp9admvciw7bc7hz57sjpqs2bxaw9wnfmbw5lg")))) | ||||
|    (build-system python-build-system) | ||||
|    (arguments | ||||
|     ;; FIXME: Many tests are failing. | ||||
|     '(#:tests? #f)) | ||||
|    (propagated-inputs | ||||
|     `(("python-dateutil" ,python-dateutil) | ||||
|       ("python-docutils" ,python-docutils) | ||||
|       ("python-jmespath" ,python-jmespath))) | ||||
|    (native-inputs | ||||
|     `(("python-mock" ,python-mock) | ||||
|       ("python-nose" ,python-nose) | ||||
|       ("behave" ,behave) | ||||
|       ("python-tox" ,python-tox) | ||||
|       ("python-wheel" ,python-wheel))) | ||||
|    (home-page "https://github.com/boto/botocore") | ||||
|    (synopsis "Low-level interface to AWS") | ||||
|    (description "Botocore is a Python library that provides a low-level | ||||
|     (name "python-botocore") | ||||
|     (version "1.12.149") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "botocore" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "12597f74khp3ngwr282cb949w0gcqj20rkfc3x275dijavyy5cmf")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      ;; FIXME: Many tests are failing. | ||||
|      '(#:tests? #f)) | ||||
|     (propagated-inputs | ||||
|      `(("python-dateutil" ,python-dateutil) | ||||
|        ("python-docutils" ,python-docutils) | ||||
|        ("python-jmespath" ,python-jmespath))) | ||||
|     (native-inputs | ||||
|      `(("python-mock" ,python-mock) | ||||
|        ("python-nose" ,python-nose) | ||||
|        ("behave" ,behave) | ||||
|        ("python-tox" ,python-tox) | ||||
|        ("python-urllib3" ,python-urllib3) | ||||
|        ("python-wheel" ,python-wheel))) | ||||
|     (home-page "https://github.com/boto/botocore") | ||||
|     (synopsis "Low-level interface to AWS") | ||||
|     (description "Botocore is a Python library that provides a low-level | ||||
| interface to the Amazon Web Services (AWS) API.") | ||||
|    (license license:asl2.0))) | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| (define-public python2-botocore | ||||
|   (package-with-python2 python-botocore)) | ||||
|  |  | |||
|  | @ -261,6 +261,7 @@ introspection capabilities; intuitive object orientation; natural | |||
| expression of procedural code; full modularity, supporting hierarchical | ||||
| packages; exception-based error handling; and very high level dynamic | ||||
| data types.") | ||||
|     (properties '((cpe-name . "python"))) | ||||
|     (license license:psfl))) | ||||
| 
 | ||||
| ;; Current 2.x version. | ||||
|  |  | |||
|  | @ -26,14 +26,14 @@ | |||
| (define-public rush | ||||
|   (package | ||||
|     (name "rush") | ||||
|     (version "1.8") | ||||
|     (version "1.9") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "mirror://gnu/rush/rush-" | ||||
|                                  version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1vxdb81ify4xcyygh86250pi50krb16dkj42i5ii4ns3araiwckz")))) | ||||
|                "12x7dyi9vl3lwlv618156nzpi5s0li93wcx2c26h4z7la20yq2yk")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (home-page "https://www.gnu.org/software/rush/") | ||||
|     (synopsis "Restricted user (login) shell") | ||||
|  |  | |||
|  | @ -1048,7 +1048,7 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" | |||
|                  (setenv "RUST_TEST_THREADS" "2") | ||||
|                  #t))))))))) | ||||
| 
 | ||||
| (define-public rust | ||||
| (define-public rust-1.34 | ||||
|   (let ((base-rust | ||||
|          (rust-bootstrapped-package rust-1.33 "1.34.1" | ||||
|            "19s09k7y5j6g3y4d2rk6kg9pvq6ml94c49w6b72dmq8p9lk8bixh"))) | ||||
|  | @ -1062,3 +1062,23 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" | |||
|                       (delete-file-recursively "src/llvm-project") | ||||
|                       (delete-file-recursively "vendor/jemalloc-sys/jemalloc") | ||||
|                       #t))))))) | ||||
| 
 | ||||
| (define-public rust | ||||
|   (let ((base-rust | ||||
|          (rust-bootstrapped-package rust-1.34 "1.35.0" | ||||
|            "0bbizy6b7002v1rdhrxrf5gijclbyizdhkglhp81ib3bf5x66kas"))) | ||||
|     (package | ||||
|       (inherit base-rust) | ||||
|       (arguments | ||||
|        (substitute-keyword-arguments (package-arguments base-rust) | ||||
|          ((#:phases phases) | ||||
|           `(modify-phases ,phases | ||||
|              ;; The tidy test includes a pass which ensures large binaries | ||||
|              ;; don't accidentally get checked into the rust git repo. | ||||
|              ;; Unfortunately the test assumes that git is always available, | ||||
|              ;; so we'll comment out the invocation of this pass. | ||||
|              (add-after 'configure 'disable-tidy-bins-check | ||||
|                (lambda* _ | ||||
|                  (substitute* "src/tools/tidy/src/main.rs" | ||||
|                    (("bins::check") "//bins::check")) | ||||
|                  #t))))))))) | ||||
|  |  | |||
|  | @ -18,12 +18,20 @@ | |||
| 
 | ||||
| (define-module (gnu packages sagemath) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system python) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix utils) | ||||
|   #:use-module (gnu packages algebra) | ||||
|   #:use-module (gnu packages autotools) | ||||
|   #:use-module (gnu packages bdw-gc) | ||||
|   #:use-module (gnu packages boost) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages multiprecision) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages python) | ||||
|   #:use-module (gnu packages python-xyz)) | ||||
| 
 | ||||
|  | @ -31,14 +39,14 @@ | |||
| (define-public python-cypari2 | ||||
|   (package | ||||
|     (name "python-cypari2") | ||||
|     (version "2.0.3") | ||||
|     (version "2.1.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "cypari2" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0mghbmilmy34xp1d50xdx76sijqxmpkm2bcgx2v1mdji2ff7n0yc")))) | ||||
|          "1nwkzgqvbw6361x0rpggy1q5nx663fswhpvg8md6xhqyfwpgc7nz")))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|      `(("python-cython" ,python-cython))) | ||||
|  | @ -60,18 +68,21 @@ but it can be used independently.") | |||
|   (package-with-python2 python-cypari2)) | ||||
| 
 | ||||
| ;; The stable version of the following package is not young enough to be | ||||
| ;; used with Sage, since it does not support cython. One would need to | ||||
| ;; use an alpha release. On the other hand, Sage can be built without it. | ||||
| ;; used with Sage, since it does not support cython; so we use a beta | ||||
| ;; release. | ||||
| (define-public python-gmpy2 | ||||
|   (package | ||||
|     (name "python-gmpy2") | ||||
|     (version "2.0.8") | ||||
|     (version "2.1.0b1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "gmpy2" version ".zip")) | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/aleaxit/gmpy") | ||||
|                     (commit (string-append "gmpy2-" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0grx6zmi99iaslm07w6c2aqpnmbkgrxcqjrqpfq223xri0r3w8yx")))) | ||||
|                 "0ljvnmhxqdfsp0yy4c2hynhk5sggm63kkqsq4iwq4k9vsnx2xm97")))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|      `(("unzip" ,unzip))) | ||||
|  | @ -89,3 +100,256 @@ libraries GMO, MPFR and MPC.") | |||
| 
 | ||||
| (define-public python2-gmpy2 | ||||
|   (package-with-python2 python-gmpy2)) | ||||
| 
 | ||||
| (define-public cliquer | ||||
|   (package | ||||
|     (name "cliquer") | ||||
|     (version "1.21") | ||||
|     ;; The original source package is available from the home page and | ||||
|     ;; has not seen any release since 2010; it comes with only a Makefile | ||||
|     ;; without an "install" target. Instead, there is an autotoolized | ||||
|     ;; tarball available from the Sage project. | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri "http://users.ox.ac.uk/~coml0531/sage/cliquer-1.21.tar.gz") | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1hdzrmrx0nvvj8kbwxrs8swqgkd284khzl623jizixcv28xb77aq")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (synopsis "C routines for finding cliques in weighted graphs") | ||||
|     (description "Cliquer is a set of reentrant C routines for finding | ||||
| cliques in a weighted or unweighted graph.  It uses an exact | ||||
| branch-and-bound algorithm.  It can search for maximum or maximum-weight | ||||
| cliques or cliques with size or weight within a given range, restrict the | ||||
| search to maximal cliques, store cliques in memory and call a user-defined | ||||
| function for every found clique.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "https://users.aalto.fi/~pat/cliquer.html"))) | ||||
| 
 | ||||
| (define-public libbraiding | ||||
|   (package | ||||
|     (name "libbraiding") | ||||
|     (version "1.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|               (url (string-append "https://github.com/miguelmarco/" | ||||
|                                   name)) | ||||
|               (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0l68rikfr7k2l547gb3pp3g8cj5zzxwipm79xrb5r8ffj466ydxg")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (synopsis "Computations with braid groups") | ||||
|     (description "libbraiding performs computations with braid groups, | ||||
| in particular it computes normal forms of group elements.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "https://github.com/miguelmarco/libbraiding"))) | ||||
| 
 | ||||
| (define-public libhomfly | ||||
|   (package | ||||
|     (name "libhomfly") | ||||
|     (version "1.02r6") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|               (url (string-append "https://github.com/miguelmarco/" | ||||
|                                   name)) | ||||
|               (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0sv3cwrf9v9sb5a8wbhjmarxvya13ma3j8y8592f9ymxlk5y0ldk")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool))) | ||||
|     (inputs | ||||
|      `(("libgc" ,libgc))) | ||||
|     (synopsis "Computation of homfly polynomials of links") | ||||
|     (description "libhomfly computes homfly polynomials of links, | ||||
| represented as strings.") | ||||
|     (license license:public-domain) | ||||
|     (home-page "https://github.com/miguelmarco/libhomfly"))) | ||||
| 
 | ||||
| ;; The following three packages from the Linbox group are needed in | ||||
| ;; an outdated version for Sage. | ||||
| 
 | ||||
| (define-public givaro-4.0.4 | ||||
|   (package (inherit givaro) | ||||
|     (name "givaro") | ||||
|     (version "4.0.4") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/givaro") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "199p8wyj5i63jbnk7j8qbdbfp5rm2lpmcxyk3mdjy9bz7ygx3hhy")))))) | ||||
| 
 | ||||
| (define-public fflas-ffpack-2.3.2 | ||||
|   (package (inherit fflas-ffpack) | ||||
|     (name "fflas-ffpack") | ||||
|     (version "2.3.2") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/fflas-ffpack") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1cqhassj2dny3gx0iywvmnpq8ca0d6m82xl5rz4mb8gaxr2kwddl")))) | ||||
|     (propagated-inputs | ||||
|      `(("givaro" ,givaro-4.0.4))) | ||||
|     ;; A test fails, but since all tests pass in the latest version, | ||||
|     ;; there is not much point in investigating. | ||||
|     (arguments | ||||
|      (substitute-keyword-arguments (package-arguments fflas-ffpack) | ||||
|        ((#:tests? _ #f) #f))))) | ||||
| 
 | ||||
| (define-public linbox-1.5.2 | ||||
|   (package (inherit linbox) | ||||
|     (version "1.5.2") | ||||
|     (name "linbox") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|                     (url "https://github.com/linbox-team/linbox") | ||||
|                     (commit (string-append "v" version)))) | ||||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1wfivlwp30mzdy1697w7rzb8caajim50mc8h27k82yipn2qc5n4i")))) | ||||
|     (inputs | ||||
|      `(("fflas-ffpack" ,fflas-ffpack-2.3.2))))) | ||||
| 
 | ||||
| (define-public pynac | ||||
|   (package | ||||
|     (name "pynac") | ||||
|     (version "0.7.25") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|               (url "https://github.com/pynac/pynac/") | ||||
|               (commit (string-append "pynac-" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0nnifvg6kzx0lq6gz7znind8g30v3d2pjfwgsdiks3vv9kv9nbj3")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("flint" ,flint) | ||||
|        ("gmp" ,gmp) | ||||
|        ("python" ,python) | ||||
|        ("singular" ,singular))) | ||||
|     (synopsis "Sage fork of GiNaC") | ||||
|     (description "Pynac is a derivative of the C++ library GiNaC, which | ||||
| allows manipulation of symbolic expressions.  It currently provides the | ||||
| backend for symbolic expressions in Sage.  The main difference between | ||||
| Pynac and GiNaC is that Pynac relies on Sage to provide the operations | ||||
| on numerical types, while GiNaC depends on CLN for this purpose.") | ||||
|     (license license:gpl2+) | ||||
|     (home-page "http://pynac.org/"))) | ||||
| 
 | ||||
| ;; Sage has become upstream of the following package. | ||||
| (define-public zn-poly | ||||
|   (package | ||||
|     (name "zn-poly") | ||||
|     (version "0.9.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|               (url (string-append "https://gitlab.com/sagemath/" | ||||
|                                   "zn_poly.git/")) | ||||
|               (commit version))) | ||||
|        (file-name (git-file-name "zn_poly" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0ra5vy585bqq7g3317iw6fp44iqgqvds3j0l1va6mswimypq4vxb")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("python" ,python-2))) | ||||
|     (inputs | ||||
|      `(("gmp" ,gmp))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'configure | ||||
|            ;; The configure script chokes on --enable-fast-install. | ||||
|            (lambda* (#:key inputs outputs #:allow-other-keys) | ||||
|              (invoke "./configure" | ||||
|                      (string-append "--prefix=" (assoc-ref outputs "out")) | ||||
|                      "--cflags=-O3 -fPIC"))) | ||||
|          (add-before 'build 'prepare-build | ||||
|            (lambda _ | ||||
|              (setenv "CC" "gcc") | ||||
|              #t)) | ||||
|          (add-after 'build 'build-so | ||||
|            (lambda _ | ||||
|              (invoke "make" "libzn_poly.so"))) | ||||
|          (add-after 'install 'install-so | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((lib (string-append (assoc-ref outputs "out") "/lib"))) | ||||
|                (install-file "libzn_poly.so" lib))))))) | ||||
|     (synopsis "Arithmetic for polynomials over Z/NZ") | ||||
|     (description "zn_poly implements the arithmetic of polynomials the | ||||
| coefficients of which are modular integers.") | ||||
|     (license (list license:gpl2 license:gpl3)) ; dual licensed | ||||
|     (home-page "https://gitlab.com/sagemath/zn_poly"))) | ||||
| 
 | ||||
| (define-public brial | ||||
|   (package | ||||
|     (name "brial") | ||||
|     (version "1.2.5") | ||||
|     (source | ||||
|     (origin | ||||
|       (method git-fetch) | ||||
|       (uri (git-reference | ||||
|              (url "https://github.com/BRiAl/BRiAl/") | ||||
|              (commit version))) | ||||
|       (file-name (git-file-name name version)) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "1nv56fp3brpzanxj7vwvxqdafqfsfhdgq5imr3m94psw5gdfqwja")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("autoconf" ,autoconf) | ||||
|        ("automake" ,automake) | ||||
|        ("libtool" ,libtool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("boost" ,boost) | ||||
|        ("libpng" ,libpng) | ||||
|        ("m4ri" ,m4ri))) | ||||
|     (arguments | ||||
|     ;; We are missing the boost unit test framework. | ||||
|      `(#:tests? #f | ||||
|        #:configure-flags (list "--without-boost-unit-test-framework"))) | ||||
|     (synopsis "Arithmetic of polynomials over boolean rings") | ||||
|     (description "BRiAl is the successor to  PolyBoRi maintained by the | ||||
| Sage community.  Its core is a C++ library, which provides high-level data | ||||
| types for Boolean polynomials and monomials, exponent vectors, as well as | ||||
| 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"))) | ||||
|  |  | |||
|  | @ -153,14 +153,14 @@ anywhere.") | |||
| (define-public samba | ||||
|   (package | ||||
|     (name "samba") | ||||
|     (version "4.10.4") | ||||
|     (version "4.10.5") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "https://download.samba.org/pub/samba/stable/" | ||||
|                                  "samba-" version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "0xhfbh42dihccc85ffx243lyhf3jnphhi6xfcsr3a6mhsm7w1p26")))) | ||||
|                "0xb3mz38hcayqxchk0ws9mxn10vswsn97jbxl4gcwi4cbrnjc43c")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
|  | @ -437,7 +437,7 @@ implementation techniques and as an expository tool.") | |||
| (define-public racket | ||||
|   (package | ||||
|     (name "racket") | ||||
|     (version "7.0") | ||||
|     (version "7.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (list (string-append "http://mirror.racket-lang.org/installers/" | ||||
|  | @ -447,7 +447,7 @@ implementation techniques and as an expository tool.") | |||
|                           version "/racket-" version "-src.tgz"))) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1glv5amsp9xp480d4yr63hhm9kkyav06yl3a6p489nkr4cln0j9a")) | ||||
|                 "0h6072njhb87rkz4arijvahxgjzn8r14s4wns0ijvxm89bg136yl")) | ||||
|               (patches (search-patches | ||||
|                         "racket-store-checksum-override.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|  |  | |||
|  | @ -749,14 +749,14 @@ Shell (pdksh).") | |||
| (define-public oil-shell | ||||
|   (package | ||||
|     (name "oil-shell") | ||||
|     (version "0.5.0") | ||||
|     (version "0.6.pre22") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://www.oilshell.org/download/oil-" | ||||
|                                   version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "03zc7rhhpl0cybng2i3c33pky1knsnyvn526bn91hg6w4znvn66w")))) | ||||
|                 "1kslycqa8rrzk9p2265dy045xd88q675w4baqiygcrnvxwn588c5")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f ; the tests are not distributed in the tarballs | ||||
|  |  | |||
|  | @ -90,7 +90,7 @@ | |||
|        ("python-mock" ,python-mock) | ||||
|        ("python-nose" ,python-nose) | ||||
|        ("python-pytest" ,python-pytest))) | ||||
|     (home-page "http://sphinx-doc.org/") | ||||
|     (home-page "https://sphinx-doc.org/") | ||||
|     (synopsis "Python documentation generator") | ||||
|     (description "Sphinx is a tool that makes it easy to create documentation | ||||
| for Python projects or other documents consisting of multiple reStructuredText | ||||
|  | @ -341,7 +341,7 @@ SVG images natively (e.g. LaTeX).") | |||
|     (arguments | ||||
|      ;; FIXME: Tests depend on Sphinx, which depends on this. | ||||
|      `(#:tests? #f)) | ||||
|     (home-page "http://sphinx-doc.org/") | ||||
|     (home-page "https://sphinx-doc.org/") | ||||
|     (synopsis "Sphinx API for web applications") | ||||
|     (description "This package provides a Python API to easily integrate | ||||
| Sphinx documentation into your web application.  It provides tools to | ||||
|  |  | |||
|  | @ -1137,18 +1137,17 @@ legends.") | |||
| (define-public r-ggplot2 | ||||
|   (package | ||||
|     (name "r-ggplot2") | ||||
|     (version "3.1.1") | ||||
|     (version "3.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "ggplot2" version)) | ||||
|        (sha256 | ||||
|         (base32 "0y8cks9r9hvjlx0isnvbgs3p0al167hlr3q7c3syfcj77dzjkpmz")))) | ||||
|         (base32 "1cvk9pw59kxx19kamqwa15h26rbznp0vvqpn7y8kgjssnrzqkdii")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-digest" ,r-digest) | ||||
|        ("r-gtable" ,r-gtable) | ||||
|        ("r-plyr" ,r-plyr) | ||||
|        ("r-lazyeval" ,r-lazyeval) | ||||
|        ("r-mass" ,r-mass) | ||||
|        ("r-mgcv" ,r-mgcv) | ||||
|  | @ -1347,13 +1346,13 @@ adapted for other output formats, such as HTML or LaTeX.") | |||
| (define-public r-formatr | ||||
|   (package | ||||
|     (name "r-formatr") | ||||
|     (version "1.6") | ||||
|     (version "1.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "formatR" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0a9229rg3s9qga5v2fwfdqr0z3bk2yycv8kijrcm3jh66l68zjgm")))) | ||||
|                 "1nsxbrx31k3y6yql30qkrvdfyznlia2qfvwv95mfiy7m7wdn4rm3")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "http://yihui.name/formatR") | ||||
|     (synopsis "Format R code automatically") | ||||
|  | @ -1386,13 +1385,13 @@ supported via Andre Simon's highlight package.") | |||
| (define-public r-mime | ||||
|   (package | ||||
|     (name "r-mime") | ||||
|     (version "0.6") | ||||
|     (version "0.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "mime" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "00f4gw4sg1kn03s67gficxgb7a7fb6pwhlvrxrml05q1mc2vcxa7")))) | ||||
|                 "12vpip67ajb90b8p96w43ir7mavrw2i61bwvpfnrlmlj9kj3w20i")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://github.com/yihui/mime") | ||||
|     (synopsis "R package to map filenames to MIME types") | ||||
|  | @ -2597,13 +2596,13 @@ well as additional utilities such as panel and axis annotation functions.") | |||
| (define-public r-rcpparmadillo | ||||
|   (package | ||||
|     (name "r-rcpparmadillo") | ||||
|     (version "0.9.400.3.0") | ||||
|     (version "0.9.500.2.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "RcppArmadillo" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1c0kmp54xgg67hxpqm8bibcxmmwljbdvm9p1d9wzirp83x86v4sn")))) | ||||
|                 "1lyvpb7n54ijlqns29qiixqr39334knf67cnixvlic58945glrhv")))) | ||||
|     (properties `((upstream-name . "RcppArmadillo"))) | ||||
|     (build-system r-build-system) | ||||
|     ;; All needed for vignettes | ||||
|  | @ -3163,13 +3162,13 @@ using the multicore functionality of the parallel package.") | |||
| (define-public r-dt | ||||
|   (package | ||||
|     (name "r-dt") | ||||
|     (version "0.6") | ||||
|     (version "0.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "DT" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "05kr88yshq6siarp5q7aapvsr63vx3p0aqablwgifn8m2sfqxmif")))) | ||||
|                 "0b6ywgzk9b35y5f69zwfz3vv7qwqqj3xsmy0xymf7nfcvrqg3qqx")))) | ||||
|     (properties | ||||
|      `((upstream-name . "DT"))) | ||||
|     (build-system r-build-system) | ||||
|  | @ -3543,13 +3542,13 @@ maintenance for package developers.") | |||
| (define-public r-r-utils | ||||
|   (package | ||||
|     (name "r-r-utils") | ||||
|     (version "2.8.0") | ||||
|     (version "2.9.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "R.utils" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1jaarld1jgpzh18kh9g3rlzcrk51vdgn2n1d1y28szzxlz94vifg")))) | ||||
|                 "1w4zn2db15bggfnh64fbyi2z2sj47rcd4xn53b28dsnkamdcramj")))) | ||||
|     (properties `((upstream-name . "R.utils"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -97,14 +97,13 @@ It started life as a fork of the currently unmaintained Newsbeuter.") | |||
| (define-public rtv | ||||
|   (package | ||||
|     (name "rtv") | ||||
|     (version "1.26.0") | ||||
|     (version "1.27.0") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (pypi-uri "rtv" version)) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "1aamkli1mlq2vxixlva790y0l0cbvbkz07lknajin0841sdq0411")))) | ||||
|          (base32 "0hvw426y09l3yzwv2zkb9hifpfbg9wd1gg0y3z3pxcli6n3ii2wl")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  |  | |||
|  | @ -1032,7 +1032,7 @@ comfortably in a pager or editor. | |||
| (define-public eternalterminal | ||||
|   (package | ||||
|     (name "eternalterminal") | ||||
|     (version "5.1.9") | ||||
|     (version "5.1.10") | ||||
|     (source | ||||
|       (origin | ||||
|         (method git-fetch) | ||||
|  | @ -1041,8 +1041,7 @@ comfortably in a pager or editor. | |||
|                (commit (string-append "et-v" version)))) | ||||
|         (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "07ynkcnk3z6wafdlnzdxcd308cw1rzabxyq47ybj79lyji3wsgk7")))) | ||||
|         (base32 "0jh89229bd9s82h3aj6faaybwr5xvnk8w2kgz47gq263pz021zpl")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags '("-DBUILD_TEST=ON") | ||||
|  |  | |||
|  | @ -140,8 +140,7 @@ based command language.") | |||
|        ("pkg-config" ,pkg-config) | ||||
|        ("ruby" ,ruby))) | ||||
|     (inputs | ||||
|      `(("ncurses" ,ncurses) | ||||
|        ("boost" ,boost))) | ||||
|      `(("ncurses" ,ncurses))) | ||||
|     (synopsis "Vim-inspired code editor") | ||||
|     (description | ||||
|      "Kakoune is a code editor heavily inspired by Vim, as such most of its | ||||
|  |  | |||
|  | @ -851,3 +851,28 @@ Mainland China, Taiwan, and Hong-Kong.") | |||
| hosts and terminals.  It converts input kanji code to designated kanji code | ||||
| such as ISO-2022-JP, Shift_JIS, EUC-JP, UTF-8, UTF-16 or UTF-32.") | ||||
|       (license license:zlib)))) | ||||
| 
 | ||||
| (define-public python-pandocfilters | ||||
|   (package | ||||
|     (name "python-pandocfilters") | ||||
|     (version "1.4.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "pandocfilters" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1a8d9b7s48gmq9zj0pmbyv2sivn5i7m6mybgpkk4jm5vd7hp1pdk")))) | ||||
|     (build-system python-build-system) | ||||
|     (home-page "https://github.com/jgm/pandocfilters") | ||||
|     (synopsis "Python module for writing Pandoc filters") | ||||
|     (description "Pandoc is a powerful utility to transform various | ||||
| input formats into a wide range of output formats.  To alter the | ||||
| exported output document, Pandoc allows the usage of filters, which | ||||
| are pipes that read a JSON serialization of the Pandoc AST from stdin, | ||||
| transform it in some way, and write it to stdout.  It allows therefore | ||||
| to alter the processing of Pandoc's supported input formats, for | ||||
| instance one can add new syntax elements to markdown, etc. | ||||
| 
 | ||||
| This package provides Python bindings.") | ||||
|     (license license:bsd-3))) | ||||
|  |  | |||
							
								
								
									
										166
									
								
								gnu/packages/usb-modeswitch.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										166
									
								
								gnu/packages/usb-modeswitch.scm
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,166 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de> | ||||
| ;;; | ||||
| ;;; 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 usb-modeswitch) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system trivial) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages embedded) | ||||
|   #:use-module (gnu packages libusb) | ||||
|   #:use-module (gnu packages pkg-config)) | ||||
| 
 | ||||
| (define-public usb-modeswitch-data | ||||
|   (package | ||||
|     (name "usb-modeswitch-data") | ||||
|     (version "20170806") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|                     "http://www.draisberghof.de/usb_modeswitch/" | ||||
|                     "usb-modeswitch-data-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0b1wari3aza6qjggqd0hk2zsh93k1q8scgmwh6f8wr0flpr3whff")))) | ||||
|     (build-system trivial-build-system) | ||||
|     (native-inputs `(("tar" ,tar) | ||||
|                      ("bzip2" ,bzip2))) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let* ((source (assoc-ref %build-inputs "source")) | ||||
|                 (tar (assoc-ref %build-inputs "tar")) | ||||
|                 (bzip2 (assoc-ref %build-inputs "bzip2")) | ||||
|                 (files (string-append "usb-modeswitch-data-" | ||||
|                                       ,(package-version this-package))) | ||||
|                 (share-dir (string-append %output "/share")) | ||||
|                 (doc-dir (string-append share-dir "/doc/")) | ||||
|                 (license-dir (string-append doc-dir | ||||
|                                             (strip-store-file-name %output))) | ||||
|                 (udev-dir (string-append %output "/udev"))) | ||||
|            (copy-file source "data.tar.bz2") | ||||
|            (invoke (string-append bzip2 "/bin/bzip2") "-d" "data.tar.bz2") | ||||
|            (invoke (string-append tar "/bin/tar") "xvf" "data.tar") | ||||
|            (copy-recursively (string-append files "/usb_modeswitch.d") | ||||
|                              (string-append share-dir "/usb_modeswitch.d")) | ||||
|            (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/") | ||||
|     (synopsis "Data package for USB_ModeSwitch") | ||||
|     (description "This packages contains data about devices and a UDEV rules | ||||
| file for use with USB_ModeSwitch.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public usb-modeswitch | ||||
|   (package | ||||
|     (name "usb-modeswitch") | ||||
|     (version "2.5.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|                     "http://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")))) | ||||
|     (native-inputs `(("pkg-config" ,pkg-config))) | ||||
|     (inputs `(("libusb" ,libusb) | ||||
|               ("jimtcl" ,jimtcl) | ||||
|               ("usb-modeswitch-data" ,usb-modeswitch-data))) | ||||
|     (outputs '("out" "dispatcher")) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                    ; does not support `make check` | ||||
|        #:make-flags (list "CC=gcc") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure)          ; no configure script | ||||
|          (replace 'install | ||||
|            (lambda* (#:key source outputs inputs #:allow-other-keys) | ||||
|              (let* ((source (assoc-ref inputs "source")) | ||||
|                     (jimtcl (assoc-ref inputs "jimtcl")) | ||||
|                     (data (assoc-ref inputs "usb-modeswitch-data")) | ||||
|                     (out (assoc-ref outputs "out")) | ||||
|                     (bin (string-append out "/bin")) | ||||
|                     (man1 (string-append out "/share/man/man1")) | ||||
|                     (dispatcher-out (assoc-ref outputs "dispatcher")) | ||||
|                     (udev (string-append dispatcher-out "/lib/udev")) | ||||
|                     (etc (string-append dispatcher-out "/etc")) | ||||
|                     (dispatcher-bin (string-append dispatcher-out "/bin")) | ||||
|                     (dispatcher-man1 (string-append dispatcher-out | ||||
|                                                     "/share/man/man1"))) | ||||
|                (begin | ||||
|                  ;; Users can install the default output and | ||||
|                  ;; usb-modeswitch-data and then modeswitch their USB device | ||||
|                  ;; by running e.g.: | ||||
|                  ;; | ||||
|                  ;;   sudo usb_modeswitch -c \ | ||||
|                  ;;   ~/.guix-profile/share/usb_modeswitch.d/12d1\:14fe \ | ||||
|                  ;;   -v 0x12d1 -p 0x14fe | ||||
|                  ;; | ||||
|                  ;; But it is simpler to use the usb-modeswitch-service-type | ||||
|                  ;; that installs a UDEV rules file which invokes a shell | ||||
|                  ;; script in lib/udev (also called `usb_modeswitch' like the | ||||
|                  ;; main binary) which, in turn, invokes the program | ||||
|                  ;; `usb_modeswitch_dispatcher'.  Normal users should not | ||||
|                  ;; invoke this dispatcher directly, so it is a separate output. | ||||
|                  (install-file "usb_modeswitch" bin) | ||||
|                  (install-file "usb_modeswitch.conf" etc) | ||||
|                  (install-file "usb_modeswitch.1" man1) | ||||
|                  (install-file "usb_modeswitch_dispatcher.1" dispatcher-man1) | ||||
| 
 | ||||
|                  (substitute* "usb_modeswitch.sh" | ||||
|                    (("PATH=") "PATH=$PATH:") ; we do not want hardcoded FHS path | ||||
|                    (("init_path=") "init_path=/does/not/exist")) ; no /sbin/init | ||||
|                  (rename-file "usb_modeswitch.sh" "usb_modeswitch") | ||||
|                  (install-file "usb_modeswitch" udev) | ||||
| 
 | ||||
|                  (rename-file "usb_modeswitch.tcl" "usb_modeswitch_dispatcher") | ||||
|                  (substitute* "usb_modeswitch_dispatcher" | ||||
|                    (("/usr/bin/tclsh") | ||||
|                     (string-append jimtcl "/bin/jimsh")) | ||||
|                    (("/usr/sbin") bin) | ||||
|                    (("/usr/share/usb_modeswitch") | ||||
|                     (string-append data "/share/usb_modeswitch.d"))) | ||||
|                  (install-file "usb_modeswitch_dispatcher" | ||||
|                                dispatcher-bin) | ||||
|                  #t))))))) | ||||
|     (home-page "http://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 | ||||
| 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+))) | ||||
|  | @ -1223,14 +1223,14 @@ control to Git repositories.") | |||
| (define-public mercurial | ||||
|   (package | ||||
|     (name "mercurial") | ||||
|     (version "5.0") | ||||
|     (version "5.0.1") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "https://www.mercurial-scm.org/" | ||||
|                                  "release/mercurial-" version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "0akivl76sb4q2s42zncrm8jcsn86718wdcngfcw8i6wd2fh7dv2l")))) | ||||
|                "1kk27radafw2q18khg9mk52vny3bmki5wf7pbsmgx5amrpjai62c")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(;; Restrict to Python 2, as Python 3 would require | ||||
|  |  | |||
|  | @ -1627,7 +1627,10 @@ audio, images) from the Web.  It can use either mpv or vlc for playback.") | |||
|        ("perl-libwww" ,perl-libwww) | ||||
|        ("perl-lwp-protocol-https" ,perl-lwp-protocol-https) | ||||
|        ("perl-mozilla-ca" ,perl-mozilla-ca) | ||||
|        ("perl-unicode-linebreak" ,perl-unicode-linebreak))) | ||||
|        ("perl-unicode-linebreak" ,perl-unicode-linebreak) | ||||
| 
 | ||||
|        ;; Some videos play without youtube-dl, but others silently fail to. | ||||
|        ("youtube-dl" ,youtube-dl))) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build perl-build-system) | ||||
|                   (guix build utils) | ||||
|  | @ -1635,6 +1638,13 @@ audio, images) from the Web.  It can use either mpv or vlc for playback.") | |||
|        #:module-build-flags '("--gtk") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'refer-to-inputs | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (substitute* "lib/WWW/YoutubeViewer.pm" | ||||
|                (("'youtube-dl'") | ||||
|                 (format #f "'~a/bin/youtube-dl'" | ||||
|                         (assoc-ref inputs "youtube-dl")))) | ||||
|              #t)) | ||||
|          (add-after 'install 'install-desktop | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|  | @ -2668,16 +2678,16 @@ of modern, widely supported codecs.") | |||
| (define-public openh264 | ||||
|   (package | ||||
|     (name "openh264") | ||||
|     (version "1.8.0") | ||||
|     (version "2.0.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/cisco/" | ||||
|                                   name "/releases/download/v" | ||||
|                                   version "/Source.Code.tar.gz.gz")) | ||||
|                                   version "/Source.Code.tar.gz")) | ||||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0niha3wnn1jsndvz9vfwy2wyql8mp9j6v75vjsipy0idwan5yzgf")))) | ||||
|                 "0iq802xfsfkskg6q1j0kg90xh04vv1sxf61mrmahgynz5d7hx2ii")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("nasm" ,nasm) | ||||
|  | @ -3478,7 +3488,7 @@ video from a Wayland session.") | |||
| (define-public gaupol | ||||
|   (package | ||||
|     (name "gaupol") | ||||
|     (version "1.5") | ||||
|     (version "1.6") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|               (uri (git-reference | ||||
|  | @ -3487,7 +3497,7 @@ video from a Wayland session.") | |||
|               (file-name (git-file-name name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0dk44fmcs86ymfxfbpdbrr4x5nn5hnv57wkqjyw61g779xjhlrd2")))) | ||||
|                 "164wlxxjiqvkzbqjzvqvz2zkn0kgqmhn52294xx4vc9b9ngdnn0m")))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|      `(("gettext" ,gettext-minimal) | ||||
|  |  | |||
|  | @ -6,6 +6,7 @@ | |||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2019 HiPhish <hiphish@posteo.de> | ||||
| ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -30,6 +31,7 @@ | |||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system python) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages acl) | ||||
|   #:use-module (gnu packages admin) ; For GNU hostname | ||||
|  | @ -52,6 +54,7 @@ | |||
|   #: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 ruby) | ||||
|   #:use-module (gnu packages serialization) | ||||
|   #:use-module (gnu packages shells) | ||||
|  | @ -888,3 +891,29 @@ from the @command{vi}-editor: | |||
| @end enumerate | ||||
| With the package comes a plugin to use vifm as a vim file selector.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public python-pynvim | ||||
|   (package | ||||
|     (name "python-pynvim") | ||||
|     (version "0.3.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "pynvim" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "01dybk4vs452pljn1q3il5z2sd313ki0lgiglc0xmjc6wp290r6g")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-greenlet" ,python-greenlet) | ||||
|        ("python-msgpack" ,python-msgpack))) | ||||
|     (arguments | ||||
|      `(#:tests? #f)) | ||||
|     (home-page "https://github.com/neovim/pynvim") | ||||
|     (synopsis "Python client and plugin host for neovim") | ||||
|     (description "Pynvim implements support for python plugins in neovim.  It | ||||
| also works as a library for connecting to and scripting neovim processes | ||||
| through its msgpack-rpc API.") | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| (define-public python2-pynvim | ||||
|   (package-with-python2 python-pynvim)) | ||||
|  |  | |||
|  | @ -32,6 +32,7 @@ | |||
| ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> | ||||
| ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> | ||||
| ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot> | ||||
| ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -4234,27 +4235,19 @@ NetSurf project.") | |||
| (define-public ikiwiki | ||||
|   (package | ||||
|     (name "ikiwiki") | ||||
|     (version "3.20170111") | ||||
|     (version "3.20190228") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "http://snapshot.debian.org/archive/debian/" | ||||
|                            "20170111T215449Z/pool/main/i/ikiwiki/ikiwiki_" | ||||
|                            version ".tar.xz")) | ||||
|                            "20190301T035241Z/pool/main/i/ikiwiki/ikiwiki_" | ||||
|                            version ".orig.tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "00d7yzv426fvqbhvzyafddv7fa6b4j2647b0wi371wd5yjj9j3sz")))) | ||||
|          "17pyblaqhkb61lxl63bzndiffism8k859p54k3k4sghclq6lsynh")))) | ||||
|     (build-system perl-build-system) | ||||
|     (arguments | ||||
|      `(;; Image tests fail | ||||
|        ;; | ||||
|        ;; Test Summary Report | ||||
|        ;; ------------------- | ||||
|        ;; t/img.t                      (Wstat: 2304 Tests: 62 Failed: 9) | ||||
|        ;;   Failed tests:  21, 27-28, 30-35 | ||||
|        ;;   Non-zero exit status: 9 | ||||
|        #:tests? #f | ||||
|        #:phases | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'include-PERL5LIB-in-wrapper | ||||
|            (lambda _ | ||||
|  | @ -4819,14 +4812,14 @@ tools like SSH (Secure Shell) to reach the outside world.") | |||
| (define-public stunnel | ||||
|   (package | ||||
|   (name "stunnel") | ||||
|   (version "5.54") | ||||
|   (version "5.55") | ||||
|   (source | ||||
|     (origin | ||||
|       (method url-fetch) | ||||
|       (uri (string-append "https://www.stunnel.org/downloads/stunnel-" | ||||
|                           version ".tar.gz")) | ||||
|       (sha256 | ||||
|        (base32 "00krr0h3vsyi93mqhrbgfgn8v47l4l3hzdg1ccfnpd3lqak8i1ay")))) | ||||
|        (base32 "0qjc0wkjf6bqz29fvwwsn9hnjhm6alsm10jcwx4jad2q3ks6kplh")))) | ||||
|   (build-system gnu-build-system) | ||||
|   (native-inputs | ||||
|    ;; For tests. | ||||
|  |  | |||
|  | @ -31,12 +31,13 @@ | |||
|   #:use-module (gnu packages gettext) | ||||
|   #:use-module (gnu packages gnunet) | ||||
|   #:use-module (gnu packages libidn) | ||||
|   #:use-module (gnu packages python) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages web) | ||||
|   #:use-module (gnu packages pcre) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages python) | ||||
|   #:use-module (gnu packages tls) | ||||
|   #:use-module (gnu packages web) | ||||
|   #:use-module (gnu packages xdisorg) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|  | @ -45,7 +46,7 @@ | |||
| (define-public wget | ||||
|   (package | ||||
|     (name "wget") | ||||
|     (version "1.20.1") | ||||
|     (version "1.20.3") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -53,7 +54,7 @@ | |||
|                           version ".tar.lz")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "0a29qsqxkk8145vkyy35q5a1wc7qzwx3qj3gmfrkmi9xs96yhqqg")))) | ||||
|         "1frajd86ds8vz2hprq30wq8ya89z9dcxnwm8nwk12bbc47l7qq39")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("gnutls" ,gnutls) | ||||
|  | @ -102,7 +103,7 @@ in downloaded documents to relative links.") | |||
|            (lambda _ | ||||
|              (substitute* "wgetpaste" | ||||
|                ((" poundpython\"") "\"") | ||||
|                (("-poundpython") "-dpaste")) | ||||
|                (("-poundpython") "-bpaste")) ; dpaste blocks tor users | ||||
|              #t)) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|  | @ -123,11 +124,12 @@ in downloaded documents to relative links.") | |||
|                    ,(delete-duplicates | ||||
|                      (map (lambda (command) (dirname (which command))) | ||||
|                           (list "bash" "mktemp" "sed" "sort" "tee" "tr" | ||||
|                                 "wget"))))) | ||||
|                                 "wget" "xclip"))))) | ||||
|                #t)))) | ||||
|        #:tests? #f))                    ; no test target | ||||
|     (inputs | ||||
|      `(("wget" ,wget))) | ||||
|      `(("wget" ,wget) | ||||
|        ("xclip" ,xclip))) | ||||
|     (home-page "http://wgetpaste.zlin.dk/") | ||||
|     (synopsis "Script that automates pasting to a number of pastebin services") | ||||
|     (description | ||||
|  |  | |||
|  | @ -17,9 +17,10 @@ | |||
| ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> | ||||
| ;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> | ||||
| ;;; Copyright © 2018, 2019 Meiyo Peng <meiyo@riseup.net> | ||||
| ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> | ||||
| ;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com> | ||||
| ;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -85,6 +86,10 @@ | |||
|   #:use-module (gnu packages version-control) | ||||
|   #:use-module (gnu packages man) | ||||
|   #:use-module (gnu packages textutils) | ||||
|   #:use-module (gnu packages pretty-print) | ||||
|   #:use-module (gnu packages logging) | ||||
|   #:use-module (gnu packages serialization) | ||||
|   #:use-module (gnu packages commencement) ; TODO remove when default gcc version >=7 | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download)) | ||||
| 
 | ||||
|  | @ -1201,6 +1206,12 @@ modules for building a Wayland compositor.") | |||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'hardcode-paths | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              ;; Hardcode path to swaybg. | ||||
|              (substitute* "sway/config.c" | ||||
|                (("strdup..swaybg..") | ||||
|                 (string-append "strdup(\"" (assoc-ref inputs "swaybg") | ||||
|                                "/bin/swaybg\")"))) | ||||
|              ;; Hardcode path to scdoc. | ||||
|              (substitute* "meson.build" | ||||
|                (("scdoc.get_pkgconfig_variable..scdoc..") | ||||
|                 (string-append "'" (assoc-ref inputs "scdoc") | ||||
|  | @ -1214,6 +1225,7 @@ modules for building a Wayland compositor.") | |||
|               ("libinput" ,libinput) | ||||
|               ("libxkbcommon" ,libxkbcommon) | ||||
|               ("pango" ,pango) | ||||
|               ("swaybg" ,swaybg) | ||||
|               ("wayland" ,wayland) | ||||
|               ("wlroots" ,wlroots))) | ||||
|     (native-inputs `(("git" ,git) | ||||
|  | @ -1242,7 +1254,10 @@ modules for building a Wayland compositor.") | |||
|        (sha256 | ||||
|         (base32 "04agcbhc473jkk7npb40i94ny8naykxzpjcw2lvl05kxv65y5d9v")))) | ||||
|     (build-system meson-build-system) | ||||
|     (inputs `(("wayland" ,wayland))) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("-Dlogind-provider=elogind"))) | ||||
|     (inputs `(("elogind" ,elogind) | ||||
|               ("wayland" ,wayland))) | ||||
|     (native-inputs `(("pkg-config" ,pkg-config) | ||||
|                      ("scdoc" ,scdoc) | ||||
|                      ("wayland-protocols" ,wayland-protocols))) | ||||
|  | @ -1305,3 +1320,76 @@ modules for building a Wayland compositor.") | |||
|     (synopsis "Screen wallpaper utility for Wayland compositors") | ||||
|     (description "Swaybg is a wallpaper utility for Wayland compositors.") | ||||
|     (license license:expat))) ; MIT license | ||||
| 
 | ||||
| (define-public waybar | ||||
|   (package | ||||
|     (name "waybar") | ||||
|     (version "0.6.8") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/Alexays/Waybar.git") | ||||
|              (commit version))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "0wyp1p9r1k8jnjq8clp2fx8xa3f4lfrgbp67fxrjh9718p4br0ab")))) | ||||
|     (build-system meson-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "-Dout=" (assoc-ref %outputs "out"))) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          ;; TODO remove when issue #30756 is resolved | ||||
|          (add-before 'configure 'fix-gcc | ||||
|            (lambda _ | ||||
|              (unsetenv "C_INCLUDE_PATH") | ||||
|              (unsetenv "CPLUS_INCLUDE_PATH") | ||||
|              #t))))) | ||||
|     (inputs `(("fmt" ,fmt) | ||||
|               ("gtkmm" ,gtkmm) | ||||
|               ("jsoncpp" ,jsoncpp) | ||||
|               ("libdbusmenu" ,libdbusmenu) | ||||
|               ("libinput" ,libinput) | ||||
|               ("libmpdclent" ,libmpdclient) | ||||
|               ("libnl" ,libnl) | ||||
|               ("pulseaudio" ,pulseaudio) | ||||
|               ("spdlog" ,spdlog) | ||||
|               ("wayland" ,wayland))) | ||||
|     (native-inputs `(("gcc-toolchain" ,gcc-toolchain-7) ; TODO remove when default gcc version >=7 | ||||
|                      ("glib:bin" ,glib "bin") | ||||
|                      ("pkg-config" ,pkg-config) | ||||
|                      ("wayland-protocols" ,wayland-protocols))) | ||||
|     (home-page "https://github.com/Alexays/Waybar") | ||||
|     (synopsis "Wayland bar for Sway and Wlroots based compositors.") | ||||
|     (description "Waybar is a highly customisable Wayland bar for Sway and | ||||
| Wlroots based compositors.") | ||||
|     (license license:expat))) ; MIT license | ||||
| 
 | ||||
| (define-public mako | ||||
|   (package | ||||
|     (name "mako") | ||||
|     (version "1.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method git-fetch) | ||||
|        (uri (git-reference | ||||
|              (url "https://github.com/emersion/mako.git") | ||||
|              (commit (string-append "v" version)))) | ||||
|        (file-name (git-file-name name version)) | ||||
|        (sha256 | ||||
|         (base32 "17azdc37xsbmx13fkfp23vg9lznrv9fh6nhagn64wdq3nhsxm3b6")))) | ||||
|     (build-system meson-build-system) | ||||
|     (inputs `(("cairo" ,cairo) | ||||
|               ("elogind" ,elogind) | ||||
|               ("gdk-pixbuf" ,gdk-pixbuf) | ||||
|               ("pango" ,pango) | ||||
|               ("wayland" ,wayland))) | ||||
|     (native-inputs `(("pkg-config" ,pkg-config) | ||||
|                      ("scdoc" ,scdoc) | ||||
|                      ("wayland-protocols" ,wayland-protocols))) | ||||
|     (home-page "https://wayland.emersion.fr/mako") | ||||
|     (synopsis "Lightweight Wayland notification daemon") | ||||
|     (description "Mako is a lightweight notification daemon for Wayland | ||||
| compositors that support the layer-shell protocol.") | ||||
|     (license license:expat))) ; MIT license | ||||
|  |  | |||
|  | @ -516,15 +516,14 @@ that allow you to generate HTML from an RSS, convert between 0.9, 0.91, and | |||
| (define-public perl-xml-sax | ||||
|   (package | ||||
|     (name "perl-xml-sax") | ||||
|     (version "1.00") | ||||
|     (version "1.02") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://cpan/authors/id/G/GR/GRANTM/" | ||||
|                            "XML-SAX-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1qra9k3wszjxvsgbragl55z3qba4nri0ipmjaxfib4l6xxj6bsj5")))) | ||||
|         (base32 "0am13vnv8qsjafr5ljakwnkhlwpk15sga02z8mxsg9is0j3w61j5")))) | ||||
|     (build-system perl-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("perl-xml-namespacesupport" ,perl-xml-namespacesupport) | ||||
|  |  | |||
|  | @ -5994,7 +5994,7 @@ basic eye-candy effects.") | |||
| (define-public xpra | ||||
|   (package | ||||
|     (name "xpra") | ||||
|     (version "2.5.1") | ||||
|     (version "2.5.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -6002,7 +6002,7 @@ basic eye-candy effects.") | |||
|                            version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "14l3bs7mlkd2lphjhnbw5dr95pg7x1k61s9wk35dra4li2xjy1lm")))) | ||||
|          "1zbh2990crrxp02c554yh30f0s9znm6iiiklkw8vpxrlmdv1z8ks")))) | ||||
|     (build-system python-build-system) | ||||
|     (inputs `(("ffmpeg" ,ffmpeg) | ||||
|               ("flac" ,flac) | ||||
|  |  | |||
|  | @ -21,9 +21,12 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages libusb) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages xml)) | ||||
| 
 | ||||
| (define-public open-zwave | ||||
|  | @ -39,6 +42,7 @@ | |||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0xgs4mmr0480c269wx9xkk67ikjzxkh8xcssrdx0f5xcl1lyd333")) | ||||
|               (patches (search-patches "open-zwave-hidapi.patch")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                '(begin | ||||
|  | @ -52,6 +56,9 @@ | |||
|                   (substitute* "cpp/build/Makefile" | ||||
|                     (("LIBS \\+= -ludev") | ||||
|                      "LIBS += -ludev -ltinyxml ")) | ||||
| 
 | ||||
|                   ;; Delete the bundled HIDAPI. | ||||
|                   (delete-file-recursively "cpp/hidapi") | ||||
|                   #t)))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|  | @ -70,9 +77,11 @@ | |||
|        ;; them. | ||||
|        #:tests? #f)) | ||||
|     (native-inputs `(("which" ,which) | ||||
|                      ("pkg-config" ,pkg-config) | ||||
|                      ("perl" ,perl)               ;for tests | ||||
|                      ("perl-xml-simple" ,perl-xml-simple))) | ||||
|     (inputs `(("tinyxml" ,tinyxml) | ||||
|               ("hidapi" ,hidapi) | ||||
|               ("eudev" ,eudev))) | ||||
|     (home-page "http://www.openzwave.net/") | ||||
|     (synopsis "Access Z-Wave devices from C++ programs") | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> | ||||
| ;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -19,7 +19,6 @@ | |||
| 
 | ||||
| (define-module (gnu services admin) | ||||
|   #:use-module (gnu packages admin) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu services) | ||||
|   #:use-module (gnu services mcron) | ||||
|   #:use-module (gnu services shepherd) | ||||
|  |  | |||
|  | @ -1067,6 +1067,7 @@ dispatches events from it."))) | |||
|                          profile-service-type | ||||
|                          (list network-manager-applet)) | ||||
|          (service modem-manager-service-type) | ||||
|          (service usb-modeswitch-service-type) | ||||
| 
 | ||||
|          ;; The D-Bus clique. | ||||
|          (service avahi-service-type) | ||||
|  |  | |||
|  | @ -3,6 +3,7 @@ | |||
| ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2019 Kristofer Buffington <kristoferbuffington@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -69,7 +70,7 @@ | |||
|             imap4d-configuration | ||||
|             imap4d-configuration? | ||||
|             imap4d-service-type | ||||
|             %defualt-imap4d-config-file)) | ||||
|             %default-imap4d-config-file)) | ||||
| 
 | ||||
| ;;; Commentary: | ||||
| ;;; | ||||
|  | @ -1667,6 +1668,9 @@ accept from local for any relay | |||
|            (mkdir-p "/var/spool/smtpd") | ||||
|            (chmod "/var/spool/smtpd" #o711)))))) | ||||
| 
 | ||||
| (define %opensmtpd-pam-services | ||||
|   (list (unix-pam-service "smtpd"))) | ||||
| 
 | ||||
| (define opensmtpd-service-type | ||||
|   (service-type | ||||
|    (name 'opensmtpd) | ||||
|  | @ -1675,6 +1679,8 @@ accept from local for any relay | |||
|                              (const %opensmtpd-accounts)) | ||||
|           (service-extension activation-service-type | ||||
|                              opensmtpd-activation) | ||||
|           (service-extension pam-root-service-type | ||||
|                              (const %opensmtpd-pam-services)) | ||||
|           (service-extension profile-service-type | ||||
|                              (compose list opensmtpd-configuration-package)) | ||||
|           (service-extension shepherd-root-service-type | ||||
|  |  | |||
|  | @ -18,7 +18,6 @@ | |||
| 
 | ||||
| (define-module (gnu services mcron) | ||||
|   #:use-module (gnu services) | ||||
|   #:use-module (gnu services base) | ||||
|   #:use-module (gnu services shepherd) | ||||
|   #:autoload   (gnu packages guile-xyz) (mcron) | ||||
|   #:use-module (guix deprecation) | ||||
|  |  | |||
|  | @ -9,6 +9,7 @@ | |||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> | ||||
| ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -33,10 +34,13 @@ | |||
|   #:use-module (gnu system shadow) | ||||
|   #:use-module (gnu system pam) | ||||
|   #:use-module (gnu packages admin) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages bash) | ||||
|   #:use-module (gnu packages connman) | ||||
|   #:use-module (gnu packages freedesktop) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages tor) | ||||
|   #:use-module (gnu packages usb-modeswitch) | ||||
|   #:use-module (gnu packages messaging) | ||||
|   #:use-module (gnu packages networking) | ||||
|   #:use-module (gnu packages ntp) | ||||
|  | @ -104,6 +108,12 @@ | |||
|             modem-manager-configuration? | ||||
|             modem-manager-service-type | ||||
| 
 | ||||
|             usb-modeswitch-configuration | ||||
|             usb-modeswitch-configuration? | ||||
|             usb-modeswitch-configuration-usb-modeswitch | ||||
|             usb-modeswitch-configuration-usb-modeswitch-data | ||||
|             usb-modeswitch-service-type | ||||
| 
 | ||||
|             <wpa-supplicant-configuration> | ||||
|             wpa-supplicant-configuration | ||||
|             wpa-supplicant-configuration? | ||||
|  | @ -1041,6 +1051,100 @@ a network connection manager.")))) | |||
| ModemManager}, a modem management daemon that aims to simplify dialup | ||||
| networking.")))) | ||||
| 
 | ||||
|  | ||||
| ;;; | ||||
| ;;; USB_ModeSwitch | ||||
| ;;; | ||||
| 
 | ||||
| (define-record-type* <usb-modeswitch-configuration> | ||||
|   usb-modeswitch-configuration make-usb-modeswitch-configuration | ||||
|   usb-modeswitch-configuration? | ||||
|   (usb-modeswitch      usb-modeswitch-configuration-usb-modeswitch | ||||
|                        (default usb-modeswitch)) | ||||
|   (usb-modeswitch-data usb-modeswitch-configuration-usb-modeswitch-data | ||||
|                        (default usb-modeswitch-data)) | ||||
|   (config-file         usb-modeswitch-configuration-config-file | ||||
|                        (default #~(string-append #$usb-modeswitch:dispatcher | ||||
|                                                  "/etc/usb_modeswitch.conf")))) | ||||
| 
 | ||||
| (define (usb-modeswitch-sh usb-modeswitch config-file) | ||||
|   "Build a copy of usb_modeswitch.sh located in package USB-MODESWITCH, | ||||
| modified to pass the CONFIG-FILE in its calls to usb_modeswitch_dispatcher, | ||||
| and wrap it to actually find the dispatcher in USB-MODESWITCH.  The script | ||||
| will be run by USB_ModeSwitch’s udev rules file when a modeswitchable USB | ||||
| device is detected." | ||||
|   (computed-file | ||||
|    "usb_modeswitch-sh" | ||||
|    (with-imported-modules '((guix build utils)) | ||||
|      #~(begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let ((cfg-param | ||||
|                 #$(if config-file | ||||
|                       #~(string-append " --config-file=" #$config-file) | ||||
|                       ""))) | ||||
|            (mkdir #$output) | ||||
|            (install-file (string-append #$usb-modeswitch:dispatcher | ||||
|                                         "/lib/udev/usb_modeswitch") | ||||
|                          #$output) | ||||
| 
 | ||||
|            ;; insert CFG-PARAM into usb_modeswitch_dispatcher command-lines | ||||
|            (substitute* (string-append #$output "/usb_modeswitch") | ||||
|              (("(exec usb_modeswitch_dispatcher .*)( 2>>)" _ left right) | ||||
|               (string-append left cfg-param right)) | ||||
|              (("(exec usb_modeswitch_dispatcher .*)( &)" _ left right) | ||||
|               (string-append left cfg-param right))) | ||||
| 
 | ||||
|            ;; wrap-program needs bash in PATH: | ||||
|            (putenv (string-append "PATH=" #$bash "/bin")) | ||||
|            (wrap-program (string-append #$output "/usb_modeswitch") | ||||
|              `("PATH" ":" = (,(string-append #$coreutils "/bin") | ||||
|                              ,(string-append | ||||
|                                #$usb-modeswitch:dispatcher | ||||
|                                "/bin"))))))))) | ||||
| 
 | ||||
| (define (usb-modeswitch-configuration->udev-rules config) | ||||
|   "Build a rules file for extending udev-service-type from the rules in the | ||||
| usb-modeswitch package specified in CONFIG.  The rules file will invoke | ||||
| usb_modeswitch.sh from the usb-modeswitch package, modified to pass the right | ||||
| config file." | ||||
|   (match config | ||||
|     (($ <usb-modeswitch-configuration> usb-modeswitch data config-file) | ||||
|      (computed-file | ||||
|       "usb_modeswitch.rules" | ||||
|       (with-imported-modules '((guix build utils)) | ||||
|         #~(begin | ||||
|             (use-modules (guix build utils)) | ||||
|             (let ((in (string-append #$data "/udev/40-usb_modeswitch.rules")) | ||||
|                   (out (string-append #$output "/lib/udev/rules.d")) | ||||
|                   (script #$(usb-modeswitch-sh usb-modeswitch config-file))) | ||||
|               (mkdir-p out) | ||||
|               (chdir out) | ||||
|               (install-file in out) | ||||
|               (substitute* "40-usb_modeswitch.rules" | ||||
|                 (("PROGRAM=\"usb_modeswitch") | ||||
|                  (string-append "PROGRAM=\"" script "/usb_modeswitch")) | ||||
|                 (("RUN\\+=\"usb_modeswitch") | ||||
|                  (string-append "RUN+=\"" script "/usb_modeswitch")))))))))) | ||||
| 
 | ||||
| (define usb-modeswitch-service-type | ||||
|   (service-type | ||||
|    (name 'usb-modeswitch) | ||||
|    (extensions | ||||
|     (list | ||||
|      (service-extension | ||||
|       udev-service-type | ||||
|       (lambda (config) | ||||
|         (let ((rules (usb-modeswitch-configuration->udev-rules config))) | ||||
|           (list rules)))))) | ||||
|    (default-value (usb-modeswitch-configuration)) | ||||
|    (description "Run @uref{http://www.draisberghof.de/usb_modeswitch/, | ||||
| USB_ModeSwitch}, a mode switching tool for controlling USB devices with | ||||
| multiple @dfn{modes}.  When plugged in for the first time many 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)."))) | ||||
| 
 | ||||
|  | ||||
| ;;; | ||||
| ;;; WPA supplicant | ||||
|  |  | |||
|  | @ -77,7 +77,8 @@ GID." | |||
|   "Return the activation gexp." | ||||
|   (with-imported-modules '((guix build utils)) | ||||
|     #~(begin | ||||
|         (use-modules (guix build utils)) | ||||
|         (use-modules (guix build utils) | ||||
|                      (srfi srfi-26)) | ||||
|         (for-each (cut mkdir-p <>) '("/nix/store" "/nix/var/log" | ||||
|                                      "/nix/var/nix/gcroots/per-user" | ||||
|                                      "/nix/var/nix/profiles/per-user")) | ||||
|  |  | |||
|  | @ -30,6 +30,7 @@ | |||
|   #:use-module (gnu build linux-container) | ||||
|   #:use-module (gnu services) | ||||
|   #:use-module (gnu services base) | ||||
|   #:use-module (gnu services shepherd) | ||||
|   #:use-module (gnu system) | ||||
|   #:use-module (gnu system file-systems) | ||||
|   #:export (system-container | ||||
|  | @ -65,6 +66,16 @@ from OS that are needed on the bare metal and not in a container." | |||
|                          files))) | ||||
|             base))) | ||||
| 
 | ||||
| (define dummy-networking-service-type | ||||
|   (shepherd-service-type | ||||
|    'dummy-networking | ||||
|    (const (shepherd-service | ||||
|            (documentation "Provide loopback and networking without actually | ||||
| doing anything.") | ||||
|            (provision '(loopback networking)) | ||||
|            (start #~(const #t)))) | ||||
|    #f)) | ||||
| 
 | ||||
| (define* (containerized-operating-system os mappings | ||||
|                                          #:key | ||||
|                                          shared-network? | ||||
|  | @ -96,7 +107,8 @@ containerized OS.  EXTRA-FILE-SYSTEMS is a list of file systems to add to OS." | |||
|                   agetty-service-type) | ||||
|             ;; Remove nscd service if network is shared with the host. | ||||
|             (if shared-network? | ||||
|                 (list nscd-service-type) | ||||
|                 (list nscd-service-type | ||||
|                       static-networking-service-type) | ||||
|                 (list)))) | ||||
| 
 | ||||
|   (operating-system | ||||
|  | @ -105,10 +117,17 @@ containerized OS.  EXTRA-FILE-SYSTEMS is a list of file systems to add to OS." | |||
|     (essential-services (container-essential-services | ||||
|                          this-operating-system | ||||
|                          #:shared-network? shared-network?)) | ||||
|     (services (remove (lambda (service) | ||||
|                         (memq (service-kind service) | ||||
|                               useless-services)) | ||||
|                       (operating-system-user-services os))) | ||||
|     (services (append (remove (lambda (service) | ||||
|                                 (memq (service-kind service) | ||||
|                                       useless-services)) | ||||
|                               (operating-system-user-services os)) | ||||
|                       ;; Many Guix services depend on a 'networking' shepherd | ||||
|                       ;; service, so make sure to provide a dummy 'networking' | ||||
|                       ;; service when we are sure that networking is already set up | ||||
|                       ;; in the host and can be used.  That prevents double setup. | ||||
|                       (if shared-network? | ||||
|                           (list (service dummy-networking-service-type)) | ||||
|                           '()))) | ||||
|     (file-systems (append (map mapping->fs | ||||
|                                (if shared-network? | ||||
|                                    (append %network-file-mappings mappings) | ||||
|  |  | |||
|  | @ -535,6 +535,11 @@ system." | |||
|               ;; Set the SQL schema location. | ||||
|               (sql-schema #$schema) | ||||
| 
 | ||||
|               ;; Allow non-ASCII file names--e.g., 'nss-certs'--to be decoded. | ||||
|               (setenv "GUIX_LOCPATH" | ||||
|                       #+(file-append glibc-utf8-locales "/lib/locale")) | ||||
|               (setlocale LC_ALL "en_US.utf8") | ||||
| 
 | ||||
|               (let* (;; This initializer requires elevated privileges that are | ||||
|                      ;; not normally available in the build environment (e.g., | ||||
|                      ;; it needs to create device nodes).  In order to obtain | ||||
|  |  | |||
Some files were not shown because too many files have changed in this diff Show more
		Reference in a new issue