Merge branch 'master' into core-updates
This commit is contained in:
		
						commit
						5576cfabf3
					
				
					 124 changed files with 3344 additions and 1629 deletions
				
			
		|  | @ -204,7 +204,6 @@ MODULES =					\ | |||
|   guix/scripts/import/texlive.scm  		\ | ||||
|   guix/scripts/environment.scm			\ | ||||
|   guix/scripts/publish.scm			\ | ||||
|   guix/scripts/weather.scm			\ | ||||
|   guix/scripts/edit.scm				\ | ||||
|   guix/scripts/size.scm				\ | ||||
|   guix/scripts/graph.scm			\ | ||||
|  | @ -216,6 +215,7 @@ MODULES =					\ | |||
| if HAVE_GUILE_JSON | ||||
| 
 | ||||
| MODULES +=					\ | ||||
|   guix/ci.scm					\ | ||||
|   guix/docker.scm	   			\ | ||||
|   guix/import/cpan.scm				\ | ||||
|   guix/import/crate.scm				\ | ||||
|  | @ -229,7 +229,8 @@ MODULES +=					\ | |||
|   guix/scripts/import/gem.scm			\ | ||||
|   guix/scripts/import/json.scm  		\ | ||||
|   guix/scripts/import/pypi.scm			\ | ||||
|   guix/scripts/import/stackage.scm | ||||
|   guix/scripts/import/stackage.scm		\ | ||||
|   guix/scripts/weather.scm | ||||
| 
 | ||||
| endif | ||||
| 
 | ||||
|  | @ -374,6 +375,7 @@ SH_TESTS =					\ | |||
|   tests/guix-download.sh			\ | ||||
|   tests/guix-gc.sh				\ | ||||
|   tests/guix-hash.sh				\ | ||||
|   tests/guix-pack.sh				\ | ||||
|   tests/guix-package.sh				\ | ||||
|   tests/guix-package-net.sh			\ | ||||
|   tests/guix-system.sh				\ | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -33,23 +33,23 @@ | |||
| (define (final-inputs store system) | ||||
|   "Return the list of outputs directories of the final inputs for SYSTEM." | ||||
|   (append-map (match-lambda | ||||
|                ((name package) | ||||
|                 (let ((drv (package-derivation store package system))) | ||||
|                   ;; Libc's 'debug' output refers to gcc-cross-boot0, but it's | ||||
|                   ;; hard to avoid, so we tolerate it.  This should be the | ||||
|                   ;; only exception.  Likewise, 'bash:include' depends on | ||||
|                   ;; bootstrap-binaries via its 'Makefile.inc' (FIXME). | ||||
|                   (filter-map (match-lambda | ||||
|                                (("debug" . directory) | ||||
|                                 (if (string=? "glibc" (package-name package)) | ||||
|                                     #f | ||||
|                                     directory)) | ||||
|                                (("include" . directory) | ||||
|                                 (if (string=? "bash" (package-name package)) | ||||
|                                     #f | ||||
|                                     directory)) | ||||
|                                ((_ . directory) directory)) | ||||
|                               (derivation->output-paths drv))))) | ||||
|                 ((or (name package) (name package _)) | ||||
|                  (let ((drv (package-derivation store package system))) | ||||
|                    ;; Libc's 'debug' output refers to gcc-cross-boot0, but it's | ||||
|                    ;; hard to avoid, so we tolerate it.  This should be the | ||||
|                    ;; only exception.  Likewise, 'bash:include' depends on | ||||
|                    ;; bootstrap-binaries via its 'Makefile.inc' (FIXME). | ||||
|                    (filter-map (match-lambda | ||||
|                                  (("debug" . directory) | ||||
|                                   (if (string=? "glibc" (package-name package)) | ||||
|                                       #f | ||||
|                                       directory)) | ||||
|                                  (("include" . directory) | ||||
|                                   (if (string=? "bash" (package-name package)) | ||||
|                                       #f | ||||
|                                       directory)) | ||||
|                                  ((_ . directory) directory)) | ||||
|                                (derivation->output-paths drv))))) | ||||
|               %final-inputs)) | ||||
| 
 | ||||
| (define (assert-valid-substitute substitute) | ||||
|  |  | |||
							
								
								
									
										508
									
								
								doc/guix.texi
									
										
									
									
									
								
							
							
						
						
									
										508
									
								
								doc/guix.texi
									
										
									
									
									
								
							|  | @ -23,7 +23,7 @@ Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* | |||
| Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@* | ||||
| Copyright @copyright{} 2015, 2016, 2017, 2018 Ricardo Wurmus@* | ||||
| Copyright @copyright{} 2016 Ben Woodcroft@* | ||||
| Copyright @copyright{} 2016, 2017 Chris Marusich@* | ||||
| Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* | ||||
| Copyright @copyright{} 2016, 2017, 2018 Efraim Flashner@* | ||||
| Copyright @copyright{} 2016 John Darrington@* | ||||
| Copyright @copyright{} 2016, 2017 Nils Gillmann@* | ||||
|  | @ -471,7 +471,7 @@ archive content is independent of its creation time, thus making it | |||
| reproducible. | ||||
| 
 | ||||
| @item | ||||
| Make @code{root}'s profile available under @file{~/.guix-profile}: | ||||
| Make @code{root}'s profile available under @file{~root/.guix-profile}: | ||||
| 
 | ||||
| @example | ||||
| # ln -sf /var/guix/profiles/per-user/root/guix-profile \ | ||||
|  | @ -482,7 +482,7 @@ Source @file{etc/profile} to augment @code{PATH} and other relevant | |||
| environment variables: | ||||
| 
 | ||||
| @example | ||||
| # GUIX_PROFILE=$HOME/.guix-profile ; \ | ||||
| # GUIX_PROFILE="`echo ~root`/.guix-profile" ; \ | ||||
|   source $GUIX_PROFILE/etc/profile | ||||
| @end example | ||||
| 
 | ||||
|  | @ -2642,6 +2642,24 @@ of these, recursively.  In other words, the returned list is the | |||
| of an element.  @xref{Invoking guix graph}, for a tool to visualize | ||||
| the graph of references. | ||||
| 
 | ||||
| @item --derivers | ||||
| @cindex derivation | ||||
| Return the derivation(s) leading to the given store items | ||||
| (@pxref{Derivations}). | ||||
| 
 | ||||
| For example, this command: | ||||
| 
 | ||||
| @example | ||||
| guix gc --derivers `guix package -I ^emacs$ | cut -f4` | ||||
| @end example | ||||
| 
 | ||||
| @noindent | ||||
| returns the @file{.drv} file(s) leading to the @code{emacs} package | ||||
| installed in your profile. | ||||
| 
 | ||||
| Note that there may be zero matching @file{.drv} files, for instance | ||||
| because these files have been garbage-collected.  There can also be more | ||||
| than one matching @file{.drv} due to fixed-output derivations. | ||||
| @end table | ||||
| 
 | ||||
| Lastly, the following options allow you to check the integrity of the | ||||
|  | @ -2899,6 +2917,10 @@ added to it or removed from it after extraction of the pack. | |||
| 
 | ||||
| One use case for this is the Guix self-contained binary tarball | ||||
| (@pxref{Binary Installation}). | ||||
| 
 | ||||
| @item --bootstrap | ||||
| Use the bootstrap binaries to build the pack.  This option is only | ||||
| useful to Guix developers. | ||||
| @end table | ||||
| 
 | ||||
| In addition, @command{guix pack} supports all the common build options | ||||
|  | @ -5150,9 +5172,11 @@ is a list of additional arguments to pass to @code{gexp->derivation}. | |||
| This is the declarative counterpart of @code{gexp->derivation}. | ||||
| @end deffn | ||||
| 
 | ||||
| @deffn {Monadic Procedure} gexp->script @var{name} @var{exp} | ||||
| @deffn {Monadic Procedure} gexp->script @var{name} @var{exp} @ | ||||
|   [#:guile (default-guile)] [#:module-path %load-path] | ||||
| Return an executable script @var{name} that runs @var{exp} using | ||||
| @var{guile}, with @var{exp}'s imported modules in its search path. | ||||
| Look up @var{exp}'s modules in @var{module-path}. | ||||
| 
 | ||||
| The example below builds a script that simply invokes the @command{ls} | ||||
| command: | ||||
|  | @ -5177,20 +5201,22 @@ executable file @file{/gnu/store/@dots{}-list-files} along these lines: | |||
| @end deffn | ||||
| 
 | ||||
| @deffn {Scheme Procedure} program-file @var{name} @var{exp} @ | ||||
|           [#:guile #f] | ||||
|           [#:guile #f] [#:module-path %load-path] | ||||
| Return an object representing the executable store item @var{name} that | ||||
| runs @var{gexp}.  @var{guile} is the Guile package used to execute that | ||||
| script. | ||||
| script.  Imported modules of @var{gexp} are looked up in @var{module-path}. | ||||
| 
 | ||||
| This is the declarative counterpart of @code{gexp->script}. | ||||
| @end deffn | ||||
| 
 | ||||
| @deffn {Monadic Procedure} gexp->file @var{name} @var{exp} @ | ||||
|             [#:set-load-path? #t] | ||||
|             [#:set-load-path? #t] [#:module-path %load-path] @ | ||||
|             [#:guile (default-guile)] | ||||
| Return a derivation that builds a file @var{name} containing @var{exp}. | ||||
| When @var{set-load-path?} is true, emit code in the resulting file to | ||||
| set @code{%load-path} and @code{%load-compiled-path} to honor | ||||
| @var{exp}'s imported modules. | ||||
| @var{exp}'s imported modules.  Look up @var{exp}'s modules in | ||||
| @var{module-path}. | ||||
| 
 | ||||
| The resulting file holds references to all the dependencies of @var{exp} | ||||
| or a subset thereof. | ||||
|  | @ -6989,6 +7015,15 @@ name instead of a package name, as in: | |||
| @example | ||||
| guix graph -t derivation `guix system build -d my-config.scm` | ||||
| @end example | ||||
| 
 | ||||
| @item module | ||||
| This is the graph of @dfn{package modules} (@pxref{Package Modules}). | ||||
| For example, the following command shows the graph for the package | ||||
| module that defines the @code{guile} package: | ||||
| 
 | ||||
| @example | ||||
| guix graph -t module guile | dot -Tpdf > module-graph.pdf | ||||
| @end example | ||||
| @end table | ||||
| 
 | ||||
| All the types above correspond to @emph{build-time dependencies}.  The | ||||
|  | @ -7877,15 +7912,27 @@ https://guix.example.org | |||
|   19,824.2 MiB on disk (uncompressed) | ||||
|   0.030 seconds per request (182.9 seconds in total) | ||||
|   33.5 requests per second | ||||
| 
 | ||||
|   9.8% (342 out of 3,470) of the missing items are queued | ||||
|   867 queued builds | ||||
|       x86_64-linux: 518 (59.7%) | ||||
|       i686-linux: 221 (25.5%) | ||||
|       aarch64-linux: 128 (14.8%) | ||||
|   build rate: 23.41 builds per hour | ||||
|       x86_64-linux: 11.16 builds per hour | ||||
|       i686-linux: 6.03 builds per hour | ||||
|       aarch64-linux: 6.41 builds per hour | ||||
| @end example | ||||
| 
 | ||||
| @cindex continuous integration, statistics | ||||
| As you can see, it reports the fraction of all the packages for which | ||||
| substitutes are available on the server---regardless of whether | ||||
| substitutes are enabled, and regardless of whether this server's signing | ||||
| key is authorized.  It also reports the size of the compressed archives | ||||
| (``nars'') provided by the server, the size the corresponding store | ||||
| items occupy in the store (assuming deduplication is turned off), and | ||||
| the server's throughput. | ||||
| the server's throughput.  The second part gives continuous integration | ||||
| (CI) statistics, if the server supports it. | ||||
| 
 | ||||
| To achieve that, @command{guix weather} queries over HTTP(S) meta-data | ||||
| (@dfn{narinfos}) for all the relevant store items.  Like @command{guix | ||||
|  | @ -10396,6 +10443,8 @@ to add @var{device} to the kernel's entropy pool.  The service will fail if | |||
| @cindex session limits | ||||
| @cindex ulimit | ||||
| @cindex priority | ||||
| @cindex realtime | ||||
| @cindex jackd | ||||
| @deffn {Scheme Procedure} pam-limits-service [#:limits @code{'()}] | ||||
| 
 | ||||
| Return a service that installs a configuration file for the | ||||
|  | @ -15730,7 +15779,7 @@ Must be either: | |||
| @item @code{<php-fpm-on-demand-process-manager-configuration>} | ||||
| @end table | ||||
| @item @code{display-errors} (default @code{#f}) | ||||
| Determines wether php errors and warning should be sent to clients | ||||
| Determines whether php errors and warning should be sent to clients | ||||
| and displayed in their browsers. | ||||
| This is useful for local php development, but a security risk for public sites, | ||||
| as error messages can reveal passwords and personal data. | ||||
|  | @ -18325,11 +18374,12 @@ Return the name of @var{platform}---a string such as @code{"arm"}. | |||
| @subsubsection Version Control Services | ||||
| 
 | ||||
| The @code{(gnu services version-control)} module provides a service to | ||||
| allow remote access to local Git repositories.  There are two options: | ||||
| allow remote access to local Git repositories.  There are three options: | ||||
| the @code{git-daemon-service}, which provides access to repositories via | ||||
| the @code{git://} unsecured TCP-based protocol, or extending the | ||||
| the @code{git://} unsecured TCP-based protocol, extending the | ||||
| @code{nginx} web server to proxy some requests to | ||||
| @code{git-http-backend}. | ||||
| @code{git-http-backend}, or providing a web interface with | ||||
| @code{cgit-service-type}. | ||||
| 
 | ||||
| @deffn {Scheme Procedure} git-daemon-service [#:config (git-daemon-configuration)] | ||||
| 
 | ||||
|  | @ -18462,199 +18512,6 @@ HTTPS.  You will also need to add an @code{fcgiwrap} proxy to your | |||
| system services.  @xref{Web Services}. | ||||
| @end deffn | ||||
| 
 | ||||
| @node Game Services | ||||
| @subsubsection Game Services | ||||
| 
 | ||||
| @subsubheading The Battle for Wesnoth Service | ||||
| @cindex wesnothd | ||||
| @uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn | ||||
| based tactical strategy game, with several single player campaigns, and | ||||
| multiplayer games (both networked and local). | ||||
| 
 | ||||
| @defvar {Scheme Variable} wesnothd-service-type | ||||
| Service type for the wesnothd service.  Its value must be a | ||||
| @code{wesnothd-configuration} object.  To run wesnothd in the default | ||||
| configuration, instantiate it as: | ||||
| 
 | ||||
| @example | ||||
| (service wesnothd-service-type) | ||||
| @end example | ||||
| @end defvar | ||||
| 
 | ||||
| @deftp {Data Type} wesnothd-configuration | ||||
| Data type representing the configuration of @command{wesnothd}. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{package} (default: @code{wesnoth-server}) | ||||
| The wesnoth server package to use. | ||||
| 
 | ||||
| @item @code{port} (default: @code{15000}) | ||||
| The port to bind the server to. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @node Miscellaneous Services | ||||
| @subsubsection Miscellaneous Services | ||||
| 
 | ||||
| @cindex sysctl | ||||
| @subsubheading System Control Service | ||||
| 
 | ||||
| The @code{(gnu services sysctl)} provides a service to configure kernel | ||||
| parameters at boot. | ||||
| 
 | ||||
| @defvr {Scheme Variable} sysctl-service-type | ||||
| The service type for @command{sysctl}, which modifies kernel parameters | ||||
| under @file{/proc/sys/}.  To enable IPv4 forwarding, it can be | ||||
| instantiated as: | ||||
| 
 | ||||
| @example | ||||
| (service sysctl-service-type | ||||
|          (sysctl-configuration | ||||
|            (settings '(("net.ipv4.ip_forward" . "1"))))) | ||||
| @end example | ||||
| @end defvr | ||||
| 
 | ||||
| @deftp {Data Type} sysctl-configuration | ||||
| The data type representing the configuration of @command{sysctl}. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{sysctl} (default: @code{(file-append procps "/sbin/sysctl"}) | ||||
| The @command{sysctl} executable to use. | ||||
| 
 | ||||
| @item @code{settings} (default: @code{'()}) | ||||
| An association list specifies kernel parameters and their values. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @cindex lirc | ||||
| @subsubheading Lirc Service | ||||
| 
 | ||||
| The @code{(gnu services lirc)} module provides the following service. | ||||
| 
 | ||||
| @deffn {Scheme Procedure} lirc-service [#:lirc lirc] @ | ||||
|        [#:device #f] [#:driver #f] [#:config-file #f] @ | ||||
|        [#:extra-options '()] | ||||
| Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that | ||||
| decodes infrared signals from remote controls. | ||||
| 
 | ||||
| Optionally, @var{device}, @var{driver} and @var{config-file} | ||||
| (configuration file name) may be specified.  See @command{lircd} manual | ||||
| for details. | ||||
| 
 | ||||
| Finally, @var{extra-options} is a list of additional command-line options | ||||
| passed to @command{lircd}. | ||||
| @end deffn | ||||
| 
 | ||||
| @cindex spice | ||||
| @subsubheading Spice Service | ||||
| 
 | ||||
| The @code{(gnu services spice)} module provides the following service. | ||||
| 
 | ||||
| @deffn {Scheme Procedure} spice-vdagent-service [#:spice-vdagent] | ||||
| Returns a service that runs @url{http://www.spice-space.org,VDAGENT}, a daemon | ||||
| that enables sharing the clipboard with a vm and setting the guest display | ||||
| resolution when the graphical console window resizes. | ||||
| @end deffn | ||||
| 
 | ||||
| @subsubsection Dictionary Services | ||||
| @cindex dictionary | ||||
| The @code{(gnu services dict)} module provides the following service: | ||||
| 
 | ||||
| @deffn {Scheme Procedure} dicod-service [#:config (dicod-configuration)] | ||||
| Return a service that runs the @command{dicod} daemon, an implementation | ||||
| of DICT server (@pxref{Dicod,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| The optional @var{config} argument specifies the configuration for | ||||
| @command{dicod}, which should be a @code{<dicod-configuration>} object, by | ||||
| default it serves the GNU Collaborative International Dictonary of English. | ||||
| 
 | ||||
| You can add @command{open localhost} to your @file{~/.dico} file to make | ||||
| @code{localhost} the default server for @command{dico} client | ||||
| (@pxref{Initialization File,,, dico, GNU Dico Manual}). | ||||
| @end deffn | ||||
| 
 | ||||
| @deftp {Data Type} dicod-configuration | ||||
| Data type representing the configuration of dicod. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{dico} (default: @var{dico}) | ||||
| Package object of the GNU Dico dictionary server. | ||||
| 
 | ||||
| @item @code{interfaces} (default: @var{'("localhost")}) | ||||
| This is the list of IP addresses and ports and possibly socket file | ||||
| names to listen to (@pxref{Server Settings, @code{listen} directive,, | ||||
| dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{handlers} (default: @var{'()}) | ||||
| List of @code{<dicod-handler>} objects denoting handlers (module instances). | ||||
| 
 | ||||
| @item @code{databases} (default: @var{(list %dicod-database:gcide)}) | ||||
| List of @code{<dicod-database>} objects denoting dictionaries to be served. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @deftp {Data Type} dicod-handler | ||||
| Data type representing a dictionary handler (module instance). | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{name} | ||||
| Name of the handler (module instance). | ||||
| 
 | ||||
| @item @code{module} (default: @var{#f}) | ||||
| Name of the dicod module of the handler (instance).  If it is @code{#f}, | ||||
| the module has the same name as the handler. | ||||
| (@pxref{Modules,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{options} | ||||
| List of strings or gexps representing the arguments for the module handler | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @deftp {Data Type} dicod-database | ||||
| Data type representing a dictionary database. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{name} | ||||
| Name of the database, will be used in DICT commands. | ||||
| 
 | ||||
| @item @code{handler} | ||||
| Name of the dicod handler (module instance) used by this database | ||||
| (@pxref{Handlers,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{complex?} (default: @var{#f}) | ||||
| Whether the database configuration complex.  The complex configuration | ||||
| will need a corresponding @code{<dicod-handler>} object, otherwise not. | ||||
| 
 | ||||
| @item @code{options} | ||||
| List of strings or gexps representing the arguments for the database | ||||
| (@pxref{Databases,,, dico, GNU Dico Manual}). | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @defvr {Scheme Variable} %dicod-database:gcide | ||||
| A @code{<dicod-database>} object serving the GNU Collaborative International | ||||
| Dictionary of English using the @code{gcide} package. | ||||
| @end defvr | ||||
| 
 | ||||
| The following is an example @code{dicod-service} configuration. | ||||
| 
 | ||||
| @example | ||||
| (dicod-service #:config | ||||
|   (dicod-configuration | ||||
|    (handlers (list (dicod-handler | ||||
|                     (name "wordnet") | ||||
|                     (module "dictorg") | ||||
|                     (options | ||||
|                      (list #~(string-append "dbdir=" #$wordnet)))))) | ||||
|    (databases (list (dicod-database | ||||
|                      (name "wordnet") | ||||
|                      (complex? #t) | ||||
|                      (handler "wordnet") | ||||
|                      (options '("database=wn"))) | ||||
|                     %dicod-database:gcide)))) | ||||
| @end example | ||||
| 
 | ||||
| 
 | ||||
| @subsubheading Cgit Service | ||||
| 
 | ||||
| @cindex Cgit service | ||||
|  | @ -19593,6 +19450,199 @@ could instantiate a cgit service like this: | |||
|           (cgitrc ""))) | ||||
| @end example | ||||
| 
 | ||||
| 
 | ||||
| @node Game Services | ||||
| @subsubsection Game Services | ||||
| 
 | ||||
| @subsubheading The Battle for Wesnoth Service | ||||
| @cindex wesnothd | ||||
| @uref{https://wesnoth.org, The Battle for Wesnoth} is a fantasy, turn | ||||
| based tactical strategy game, with several single player campaigns, and | ||||
| multiplayer games (both networked and local). | ||||
| 
 | ||||
| @defvar {Scheme Variable} wesnothd-service-type | ||||
| Service type for the wesnothd service.  Its value must be a | ||||
| @code{wesnothd-configuration} object.  To run wesnothd in the default | ||||
| configuration, instantiate it as: | ||||
| 
 | ||||
| @example | ||||
| (service wesnothd-service-type) | ||||
| @end example | ||||
| @end defvar | ||||
| 
 | ||||
| @deftp {Data Type} wesnothd-configuration | ||||
| Data type representing the configuration of @command{wesnothd}. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{package} (default: @code{wesnoth-server}) | ||||
| The wesnoth server package to use. | ||||
| 
 | ||||
| @item @code{port} (default: @code{15000}) | ||||
| The port to bind the server to. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @node Miscellaneous Services | ||||
| @subsubsection Miscellaneous Services | ||||
| 
 | ||||
| @cindex sysctl | ||||
| @subsubheading System Control Service | ||||
| 
 | ||||
| The @code{(gnu services sysctl)} provides a service to configure kernel | ||||
| parameters at boot. | ||||
| 
 | ||||
| @defvr {Scheme Variable} sysctl-service-type | ||||
| The service type for @command{sysctl}, which modifies kernel parameters | ||||
| under @file{/proc/sys/}.  To enable IPv4 forwarding, it can be | ||||
| instantiated as: | ||||
| 
 | ||||
| @example | ||||
| (service sysctl-service-type | ||||
|          (sysctl-configuration | ||||
|            (settings '(("net.ipv4.ip_forward" . "1"))))) | ||||
| @end example | ||||
| @end defvr | ||||
| 
 | ||||
| @deftp {Data Type} sysctl-configuration | ||||
| The data type representing the configuration of @command{sysctl}. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{sysctl} (default: @code{(file-append procps "/sbin/sysctl"}) | ||||
| The @command{sysctl} executable to use. | ||||
| 
 | ||||
| @item @code{settings} (default: @code{'()}) | ||||
| An association list specifies kernel parameters and their values. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @cindex lirc | ||||
| @subsubheading Lirc Service | ||||
| 
 | ||||
| The @code{(gnu services lirc)} module provides the following service. | ||||
| 
 | ||||
| @deffn {Scheme Procedure} lirc-service [#:lirc lirc] @ | ||||
|        [#:device #f] [#:driver #f] [#:config-file #f] @ | ||||
|        [#:extra-options '()] | ||||
| Return a service that runs @url{http://www.lirc.org,LIRC}, a daemon that | ||||
| decodes infrared signals from remote controls. | ||||
| 
 | ||||
| Optionally, @var{device}, @var{driver} and @var{config-file} | ||||
| (configuration file name) may be specified.  See @command{lircd} manual | ||||
| for details. | ||||
| 
 | ||||
| Finally, @var{extra-options} is a list of additional command-line options | ||||
| passed to @command{lircd}. | ||||
| @end deffn | ||||
| 
 | ||||
| @cindex spice | ||||
| @subsubheading Spice Service | ||||
| 
 | ||||
| The @code{(gnu services spice)} module provides the following service. | ||||
| 
 | ||||
| @deffn {Scheme Procedure} spice-vdagent-service [#:spice-vdagent] | ||||
| Returns a service that runs @url{http://www.spice-space.org,VDAGENT}, a daemon | ||||
| that enables sharing the clipboard with a vm and setting the guest display | ||||
| resolution when the graphical console window resizes. | ||||
| @end deffn | ||||
| 
 | ||||
| @subsubsection Dictionary Services | ||||
| @cindex dictionary | ||||
| The @code{(gnu services dict)} module provides the following service: | ||||
| 
 | ||||
| @deffn {Scheme Procedure} dicod-service [#:config (dicod-configuration)] | ||||
| Return a service that runs the @command{dicod} daemon, an implementation | ||||
| of DICT server (@pxref{Dicod,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| The optional @var{config} argument specifies the configuration for | ||||
| @command{dicod}, which should be a @code{<dicod-configuration>} object, by | ||||
| default it serves the GNU Collaborative International Dictonary of English. | ||||
| 
 | ||||
| You can add @command{open localhost} to your @file{~/.dico} file to make | ||||
| @code{localhost} the default server for @command{dico} client | ||||
| (@pxref{Initialization File,,, dico, GNU Dico Manual}). | ||||
| @end deffn | ||||
| 
 | ||||
| @deftp {Data Type} dicod-configuration | ||||
| Data type representing the configuration of dicod. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{dico} (default: @var{dico}) | ||||
| Package object of the GNU Dico dictionary server. | ||||
| 
 | ||||
| @item @code{interfaces} (default: @var{'("localhost")}) | ||||
| This is the list of IP addresses and ports and possibly socket file | ||||
| names to listen to (@pxref{Server Settings, @code{listen} directive,, | ||||
| dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{handlers} (default: @var{'()}) | ||||
| List of @code{<dicod-handler>} objects denoting handlers (module instances). | ||||
| 
 | ||||
| @item @code{databases} (default: @var{(list %dicod-database:gcide)}) | ||||
| List of @code{<dicod-database>} objects denoting dictionaries to be served. | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @deftp {Data Type} dicod-handler | ||||
| Data type representing a dictionary handler (module instance). | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{name} | ||||
| Name of the handler (module instance). | ||||
| 
 | ||||
| @item @code{module} (default: @var{#f}) | ||||
| Name of the dicod module of the handler (instance).  If it is @code{#f}, | ||||
| the module has the same name as the handler. | ||||
| (@pxref{Modules,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{options} | ||||
| List of strings or gexps representing the arguments for the module handler | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @deftp {Data Type} dicod-database | ||||
| Data type representing a dictionary database. | ||||
| 
 | ||||
| @table @asis | ||||
| @item @code{name} | ||||
| Name of the database, will be used in DICT commands. | ||||
| 
 | ||||
| @item @code{handler} | ||||
| Name of the dicod handler (module instance) used by this database | ||||
| (@pxref{Handlers,,, dico, GNU Dico Manual}). | ||||
| 
 | ||||
| @item @code{complex?} (default: @var{#f}) | ||||
| Whether the database configuration complex.  The complex configuration | ||||
| will need a corresponding @code{<dicod-handler>} object, otherwise not. | ||||
| 
 | ||||
| @item @code{options} | ||||
| List of strings or gexps representing the arguments for the database | ||||
| (@pxref{Databases,,, dico, GNU Dico Manual}). | ||||
| @end table | ||||
| @end deftp | ||||
| 
 | ||||
| @defvr {Scheme Variable} %dicod-database:gcide | ||||
| A @code{<dicod-database>} object serving the GNU Collaborative International | ||||
| Dictionary of English using the @code{gcide} package. | ||||
| @end defvr | ||||
| 
 | ||||
| The following is an example @code{dicod-service} configuration. | ||||
| 
 | ||||
| @example | ||||
| (dicod-service #:config | ||||
|   (dicod-configuration | ||||
|    (handlers (list (dicod-handler | ||||
|                     (name "wordnet") | ||||
|                     (module "dictorg") | ||||
|                     (options | ||||
|                      (list #~(string-append "dbdir=" #$wordnet)))))) | ||||
|    (databases (list (dicod-database | ||||
|                      (name "wordnet") | ||||
|                      (complex? #t) | ||||
|                      (handler "wordnet") | ||||
|                      (options '("database=wn"))) | ||||
|                     %dicod-database:gcide)))) | ||||
| @end example | ||||
| 
 | ||||
| @node Setuid Programs | ||||
| @subsection Setuid Programs | ||||
| 
 | ||||
|  | @ -20374,12 +20424,18 @@ containing at least the kernel, initrd, and bootloader data files must | |||
| be created.  The @code{--image-size} option can be used to specify the | ||||
| size of the image. | ||||
| 
 | ||||
| @cindex System images, creation in various formats | ||||
| @cindex Creating system images in various formats | ||||
| @item vm-image | ||||
| @itemx disk-image | ||||
| Return a virtual machine or disk image of the operating system declared | ||||
| in @var{file} that stands alone.  By default, @command{guix system} | ||||
| estimates the size of the image needed to store the system, but you can | ||||
| use the @option{--image-size} option to specify a value. | ||||
| @itemx docker-image | ||||
| Return a virtual machine, disk image, or Docker image of the operating | ||||
| system declared in @var{file} that stands alone.  By default, | ||||
| @command{guix system} estimates the size of the image needed to store | ||||
| the system, but you can use the @option{--image-size} option to specify | ||||
| a value.  Docker images are built to contain exactly what they need, so | ||||
| the @option{--image-size} option is ignored in the case of | ||||
| @code{docker-image}. | ||||
| 
 | ||||
| You can specify the root file system type by using the | ||||
| @option{--file-system-type} option.  It defaults to @code{ext4}. | ||||
|  | @ -20397,6 +20453,28 @@ using the following command: | |||
| # dd if=$(guix system disk-image my-os.scm) of=/dev/sdc | ||||
| @end example | ||||
| 
 | ||||
| When using @code{docker-image}, a Docker image is produced.  Guix builds | ||||
| the image from scratch, not from a pre-existing Docker base image.  As a | ||||
| result, it contains @emph{exactly} what you define in the operating | ||||
| system configuration file.  You can then load the image and launch a | ||||
| Docker container using commands like the following: | ||||
| 
 | ||||
| @example | ||||
| image_id="$(docker load < guixsd-docker-image.tar.gz)" | ||||
| docker run -e GUIX_NEW_SYSTEM=/var/guix/profiles/system \\ | ||||
|     --entrypoint /var/guix/profiles/system/profile/bin/guile \\ | ||||
|     $image_id /var/guix/profiles/system/boot | ||||
| @end example | ||||
| 
 | ||||
| This command starts a new Docker container from the specified image.  It | ||||
| will boot the GuixSD system in the usual manner, which means it will | ||||
| start any services you have defined in the operating system | ||||
| configuration.  Depending on what you run in the Docker container, it | ||||
| may be necessary to give the container additional permissions.  For | ||||
| example, if you intend to build software using Guix inside of the Docker | ||||
| container, you may need to pass the @option{--privileged} option to | ||||
| @code{docker run}. | ||||
| 
 | ||||
| @item container | ||||
| Return a script to run the operating system declared in @var{file} | ||||
| within a container.  Containers are a set of lightweight isolation | ||||
|  | @ -21012,16 +21090,16 @@ services. | |||
| 
 | ||||
| Otherwise, it must be a one-argument procedure.  The procedure is called | ||||
| by @code{fold-services} and is passed a list of values collected from | ||||
| extensions.  It must return a value that is a valid parameter value for | ||||
| the service instance. | ||||
| extensions.  It may return any single value. | ||||
| 
 | ||||
| @item @code{extend} (default: @code{#f}) | ||||
| If this is @code{#f}, services of this type cannot be extended. | ||||
| 
 | ||||
| Otherwise, it must be a two-argument procedure: @code{fold-services} | ||||
| calls it, passing it the initial value of the service as the first argument | ||||
| and the result of applying @code{compose} to the extension values as the | ||||
| second argument. | ||||
| calls it, passing it the initial value of the service as the first | ||||
| argument and the result of applying @code{compose} to the extension | ||||
| values as the second argument.  It must return a value that is a valid | ||||
| parameter value for the service instance. | ||||
| @end table | ||||
| 
 | ||||
| @xref{Service Types and Services}, for examples. | ||||
|  |  | |||
|  | @ -50,6 +50,11 @@ DEBUG=0 | |||
| GNU_URL="https://alpha.gnu.org/gnu/guix/" | ||||
| OPENPGP_SIGNING_KEY_ID="3CE464558A84FDC69DB40CFB090B11993D9AEBB5" | ||||
| 
 | ||||
| # This script needs to know where root's home directory is.  However, we | ||||
| # cannot simply use the HOME environment variable, since there is no guarantee | ||||
| # that it points to root's home directory. | ||||
| ROOT_HOME="$(echo ~root)" | ||||
| 
 | ||||
| # ------------------------------------------------------------------------------ | ||||
| #+UTILITIES | ||||
| 
 | ||||
|  | @ -264,9 +269,9 @@ sys_create_store() | |||
| 
 | ||||
|     _msg "${INF}Linking the root user's profile" | ||||
|     ln -sf /var/guix/profiles/per-user/root/guix-profile \ | ||||
|        ~root/.guix-profile | ||||
|        "${ROOT_HOME}/.guix-profile" | ||||
| 
 | ||||
|     GUIX_PROFILE="${HOME}/.guix-profile" | ||||
|     GUIX_PROFILE="${ROOT_HOME}/.guix-profile" | ||||
|     source "${GUIX_PROFILE}/etc/profile" | ||||
|     _msg "${PAS}activated root profile at /root/.guix-profile" | ||||
| } | ||||
|  | @ -316,13 +321,13 @@ sys_enable_guix_daemon() | |||
|     case "$INIT_SYS" in | ||||
|         upstart) | ||||
|             { initctl reload-configuration; | ||||
|               cp ~root/.guix-profile/lib/upstart/system/guix-daemon.conf \ | ||||
|               cp "${ROOT_HOME}/.guix-profile/lib/upstart/system/guix-daemon.conf" \ | ||||
|                  /etc/init/ && | ||||
|                   start guix-daemon; } && | ||||
|                 _msg "${PAS}enabled Guix daemon via upstart" | ||||
|             ;; | ||||
|         systemd) | ||||
|             { cp ~root/.guix-profile/lib/systemd/system/guix-daemon.service \ | ||||
|             { cp "${ROOT_HOME}/.guix-profile/lib/systemd/system/guix-daemon.service" \ | ||||
|                  /etc/systemd/system/; | ||||
|               chmod 664 /etc/systemd/system/guix-daemon.service; | ||||
|               systemctl daemon-reload && | ||||
|  | @ -332,7 +337,7 @@ sys_enable_guix_daemon() | |||
|             ;; | ||||
|         NA|*) | ||||
|             _msg "${ERR}unsupported init system; run the daemon manually:" | ||||
|             echo "  ~root/.guix-profile/bin/guix-daemon --build-users-group=guixbuild" | ||||
|             echo "  ${ROOT_HOME}/.guix-profile/bin/guix-daemon --build-users-group=guixbuild" | ||||
|             ;; | ||||
|     esac | ||||
| 
 | ||||
|  | @ -352,9 +357,9 @@ sys_authorize_build_farms() | |||
|     while true; do | ||||
|         read -p "Permit downloading pre-built package binaries from the project's build farms? (yes/no) " yn | ||||
|         case $yn in | ||||
|             [Yy]*) guix archive --authorize < ~root/.guix-profile/share/guix/hydra.gnu.org.pub && | ||||
|             [Yy]*) guix archive --authorize < "${ROOT_HOME}/.guix-profile/share/guix/hydra.gnu.org.pub" && | ||||
|                          _msg "${PAS}Authorized public key for hydra.gnu.org"; | ||||
|                    guix archive --authorize < ~root/.guix-profile/share/guix/berlin.guixsd.org.pub && | ||||
|                    guix archive --authorize < "${ROOT_HOME}/.guix-profile/share/guix/berlin.guixsd.org.pub" && | ||||
|                        _msg "${PAS}Authorized public key for berlin.guixsd.org"; | ||||
|                    break;; | ||||
|             [Nn]*) _msg "${INF}Skipped authorizing build farm public keys" | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
|  | @ -179,7 +179,8 @@ properties.  Return #t on success." | |||
|                       `("-G" ,(string-join supplementary-groups ",")) | ||||
|                       '()) | ||||
|                 ,@(if comment `("-c" ,comment) '()) | ||||
|                 ;; Don't use '--move-home', so ignore HOME. | ||||
|                 ;; Don't use '--move-home'. | ||||
|                 ,@(if home `("-d" ,home) '()) | ||||
|                 ,@(if shell `("-s" ,shell) '()) | ||||
|                 ,name))) | ||||
|     (zero? (apply system* "usermod" args)))) | ||||
|  |  | |||
|  | @ -4,6 +4,7 @@ | |||
| ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> | ||||
| ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> | ||||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -125,6 +126,7 @@ the #:references-graphs parameter of 'derivation'." | |||
|              (number->string disk-image-size))) | ||||
| 
 | ||||
|   (mkdir "xchg") | ||||
|   (mkdir "tmp") | ||||
| 
 | ||||
|   (match references-graphs | ||||
|     ((graph-files ...) | ||||
|  | @ -145,6 +147,12 @@ the #:references-graphs parameter of 'derivation'." | |||
|          "-virtfs" | ||||
|          (string-append "local,id=xchg_dev,path=xchg" | ||||
|                         ",security_model=none,mount_tag=xchg") | ||||
|          "-virtfs" | ||||
|          ;; Some programs require more space in /tmp than is normally | ||||
|          ;; available in the guest.  Accommodate such programs by sharing a | ||||
|          ;; temporary directory. | ||||
|          (string-append "local,id=tmp_dev,path=tmp" | ||||
|                         ",security_model=none,mount_tag=tmp") | ||||
|          "-kernel" linux | ||||
|          "-initrd" initrd | ||||
|          (append | ||||
|  | @ -307,11 +315,14 @@ it, run its initializer, and unmount it." | |||
| (define* (root-partition-initializer #:key (closures '()) | ||||
|                                      copy-closures? | ||||
|                                      (register-closures? #t) | ||||
|                                      system-directory) | ||||
|                                      system-directory | ||||
|                                      (deduplicate? #t)) | ||||
|   "Return a procedure to initialize a root partition. | ||||
| 
 | ||||
| If REGISTER-CLOSURES? is true, register all of CLOSURES is the partition's | ||||
| store.  If COPY-CLOSURES? is true, copy all of CLOSURES to the partition. | ||||
| If REGISTER-CLOSURES? is true, register all of CLOSURES in the partition's | ||||
| store.  If DEDUPLICATE? is true, then also deduplicate files common to | ||||
| CLOSURES and the rest of the store when registering the closures.  If | ||||
| COPY-CLOSURES? is true, copy all of CLOSURES to the partition. | ||||
| SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." | ||||
|   (lambda (target) | ||||
|     (define target-store | ||||
|  | @ -336,7 +347,8 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation." | |||
|       (display "registering closures...\n") | ||||
|       (for-each (lambda (closure) | ||||
|                   (register-closure target | ||||
|                                     (string-append "/xchg/" closure))) | ||||
|                                     (string-append "/xchg/" closure) | ||||
|                                     #:deduplicate? deduplicate?)) | ||||
|                 closures) | ||||
|       (unless copy-closures? | ||||
|         (umount target-store))) | ||||
|  |  | |||
							
								
								
									
										10
									
								
								gnu/local.mk
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								gnu/local.mk
									
										
									
									
									
								
							|  | @ -349,6 +349,7 @@ GNU_SYSTEM_MODULES =				\ | |||
|   %D%/packages/pumpio.scm			\
 | ||||
|   %D%/packages/pretty-print.scm			\
 | ||||
|   %D%/packages/protobuf.scm			\
 | ||||
|   %D%/packages/pure.scm				\
 | ||||
|   %D%/packages/pv.scm				\
 | ||||
|   %D%/packages/python.scm			\
 | ||||
|   %D%/packages/python-crypto.scm		\
 | ||||
|  | @ -592,6 +593,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/clang-3.8-libc-search-path.patch		\
 | ||||
|   %D%/packages/patches/clang-runtime-asan-build-fixes.patch	\
 | ||||
|   %D%/packages/patches/clang-runtime-esan-build-fixes.patch	\
 | ||||
|   %D%/packages/patches/classpath-aarch64-support.patch		\
 | ||||
|   %D%/packages/patches/clementine-remove-crypto++-dependency.patch	\
 | ||||
|   %D%/packages/patches/clementine-use-openssl.patch		\
 | ||||
|   %D%/packages/patches/clisp-glibc-2.26.patch			\
 | ||||
|  | @ -778,7 +780,6 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/htop-fix-process-tree.patch		\
 | ||||
|   %D%/packages/patches/hubbub-sort-entities.patch		\
 | ||||
|   %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch        \
 | ||||
|   %D%/packages/patches/hwloc-tests-without-sysfs.patch		\
 | ||||
|   %D%/packages/patches/hydra-disable-darcs-test.patch		\
 | ||||
|   %D%/packages/patches/icecat-avoid-bundled-libraries.patch	\
 | ||||
|   %D%/packages/patches/icecat-use-system-graphite2.patch	\
 | ||||
|  | @ -877,7 +878,6 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/lierolibre-newer-libconfig.patch		\
 | ||||
|   %D%/packages/patches/lierolibre-remove-arch-warning.patch	\
 | ||||
|   %D%/packages/patches/lierolibre-try-building-other-arch.patch	\
 | ||||
|   %D%/packages/patches/links-CVE-2017-11114.patch		\
 | ||||
|   %D%/packages/patches/linux-pam-no-setfsuid.patch		\
 | ||||
|   %D%/packages/patches/lirc-localstatedir.patch			\
 | ||||
|   %D%/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch	\
 | ||||
|  | @ -894,6 +894,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/luminance-hdr-qt-printer.patch		\
 | ||||
|   %D%/packages/patches/lvm2-static-link.patch			\
 | ||||
|   %D%/packages/patches/lxsession-use-gapplication.patch         \
 | ||||
|   %D%/packages/patches/lyx-2.2.3-fix-test.patch			\
 | ||||
|   %D%/packages/patches/mailutils-uninitialized-memory.patch	\
 | ||||
|   %D%/packages/patches/make-glibc-compat.patch			\
 | ||||
|   %D%/packages/patches/make-impure-dirs.patch			\
 | ||||
|  | @ -922,6 +923,8 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/mumps-build-parallelism.patch		\
 | ||||
|   %D%/packages/patches/mupdf-build-with-latest-openjpeg.patch	\
 | ||||
|   %D%/packages/patches/mupdf-CVE-2017-17858.patch		\
 | ||||
|   %D%/packages/patches/mupdf-CVE-2018-6544.patch		\
 | ||||
|   %D%/packages/patches/mupdf-CVE-2018-1000051.patch		\
 | ||||
|   %D%/packages/patches/mupen64plus-ui-console-notice.patch	\
 | ||||
|   %D%/packages/patches/mutt-store-references.patch		\
 | ||||
|   %D%/packages/patches/net-tools-bitrot.patch			\
 | ||||
|  | @ -1079,8 +1082,6 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/sdl-libx11-1.6.patch			\
 | ||||
|   %D%/packages/patches/seq24-rename-mutex.patch			\
 | ||||
|   %D%/packages/patches/shadow-CVE-2018-7169.patch		\
 | ||||
|   %D%/packages/patches/shepherd-close-fds.patch			\
 | ||||
|   %D%/packages/patches/shepherd-herd-status-sorted.patch	\
 | ||||
|   %D%/packages/patches/shishi-fix-libgcrypt-detection.patch	\
 | ||||
|   %D%/packages/patches/slim-session.patch			\
 | ||||
|   %D%/packages/patches/slim-config.patch			\
 | ||||
|  | @ -1111,6 +1112,7 @@ dist_patch_DATA =						\ | |||
|   %D%/packages/patches/tipp10-fix-compiling.patch		\
 | ||||
|   %D%/packages/patches/tipp10-remove-license-code.patch		\
 | ||||
|   %D%/packages/patches/tk-find-library.patch			\
 | ||||
|   %D%/packages/patches/translate-shell-fix-curl-tests.patch	\
 | ||||
|   %D%/packages/patches/ttf2eot-cstddef.patch			\
 | ||||
|   %D%/packages/patches/ttfautohint-source-date-epoch.patch	\
 | ||||
|   %D%/packages/patches/tophat-build-with-later-seqan.patch	\
 | ||||
|  |  | |||
|  | @ -159,16 +159,14 @@ and provides a \"top-like\" mode (monitoring).") | |||
| (define-public shepherd | ||||
|   (package | ||||
|     (name "shepherd") | ||||
|     (version "0.3.2") | ||||
|     (version "0.4.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "ftp://alpha.gnu.org/gnu/dmd/shepherd-" | ||||
|               (uri (string-append "https://alpha.gnu.org/gnu/shepherd/shepherd-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "174q1qg7yg6w1hfvlfv720hr6hid4h5xzw15y3ycfpspllzldhcb")) | ||||
|               (patches (search-patches "shepherd-close-fds.patch" | ||||
|                                        "shepherd-herd-status-sorted.patch")))) | ||||
|                 "1lgmsbxn8i8xdasxzkdp2cml75n128pplw6icvmspl6s0n9xmw8n")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags '("--localstatedir=/var"))) | ||||
|  | @ -1745,14 +1743,14 @@ done with the @code{auditctl} utility.") | |||
| (define-public nmap | ||||
|   (package | ||||
|     (name "nmap") | ||||
|     (version "7.60") | ||||
|     (version "7.70") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://nmap.org/dist/nmap-" version | ||||
|                                   ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "08bga42ipymmbxd7wy4x5sl26c0ir1fm3n9rc6nqmhx69z66wyd8")) | ||||
|                 "063fg8adx23l4irrh5kn57hsmi1xvjkar4vm4k6g94ppan4hcyw4")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                '(begin | ||||
|  | @ -1771,6 +1769,8 @@ done with the @code{auditctl} utility.") | |||
|        ("libpcap" ,libpcap) | ||||
|        ("pcre" ,pcre) | ||||
|        ("lua" ,lua) | ||||
|        ("zlib" ,zlib)                   ;for NSE compression support | ||||
| 
 | ||||
|        ;; For 'ndiff'. | ||||
|        ("python" ,python-2))) | ||||
| 
 | ||||
|  |  | |||
|  | @ -438,14 +438,14 @@ geometry and singularity theory.") | |||
| (define-public gmp-ecm | ||||
|   (package | ||||
|    (name "gmp-ecm") | ||||
|    (version "7.0") | ||||
|    (version "7.0.4") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append "https://gforge.inria.fr/frs/download.php/" | ||||
|                                 "file/35642/ecm-" | ||||
|                                 version ".tar.gz")) | ||||
|             (sha256 (base32 | ||||
|                      "00jzzwqp49m01vwsr9z1w7bvm8lb69l3f62x7qr8sfz0xiczxnpm")))) | ||||
|              (method url-fetch) | ||||
|              ;; Use the ‘Latest version’ link for a stable URI across releases. | ||||
|              (uri (string-append "https://gforge.inria.fr/frs/download.php/" | ||||
|                                  "latestfile/160/ecm-" version ".tar.gz")) | ||||
|              (sha256 (base32 | ||||
|                       "0hxs24c2m3mh0nq1zz63z3sb7dhy1rilg2s1igwwcb26x3pb7xqc")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (inputs | ||||
|     `(("gmp" ,gmp))) | ||||
|  |  | |||
|  | @ -11,6 +11,7 @@ | |||
| ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> | ||||
| ;;; Copyright © 2018 okapi <okapi@firemail.cc> | ||||
| ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -62,6 +63,7 @@ | |||
|   #:use-module (gnu packages gnome) | ||||
|   #:use-module (gnu packages gnunet) ; libmicrohttpd | ||||
|   #:use-module (gnu packages gperf) | ||||
|   #:use-module (gnu packages icu4c) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages ncurses) | ||||
|   #:use-module (gnu packages qt) | ||||
|  | @ -75,6 +77,7 @@ | |||
|   #:use-module (gnu packages python) | ||||
|   #:use-module (gnu packages rdf) | ||||
|   #:use-module (gnu packages readline) | ||||
|   #:use-module (gnu packages serialization) | ||||
|   #:use-module (gnu packages telephony) | ||||
|   #:use-module (gnu packages tls) | ||||
|   #:use-module (gnu packages video) | ||||
|  | @ -2057,6 +2060,114 @@ supporting silence processing for automatic pause, file splitting, and | |||
| background file post-processing.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public supercollider | ||||
|   (package | ||||
|     (name "supercollider") | ||||
|     (version "3.9.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|                     "https://github.com/supercollider/supercollider" | ||||
|                     "/releases/download/Version-" version | ||||
|                     "/SuperCollider-" version "-Source-linux.tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0d3cb6dw8jz7ijriqn3rlwin24gffczp69hl17pzxj1d5w57yj44")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on" | ||||
|                            "-DSC_EL=off") ;scel is packaged individually as | ||||
|                                           ;emacs-scel. | ||||
|        #:modules ((guix build utils) | ||||
|                   (guix build cmake-build-system) | ||||
|                   (ice-9 ftw)) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'rm-bundled-libs | ||||
|            (lambda _ | ||||
|              ;; The build system doesn't allow us to unbundle the following | ||||
|              ;; libraries.  hidapi is also heavily patched and upstream not | ||||
|              ;; actively maintained. | ||||
|              (let ((keep-dirs '("nova-simd" "nova-tt" "hidapi" "TLSF-2.4.6" | ||||
|                                 "oscpack_1_1_0" "." ".."))) | ||||
|                (with-directory-excursion "./external_libraries" | ||||
|                  (for-each | ||||
|                   delete-file-recursively | ||||
|                   (scandir "." | ||||
|                            (lambda (x) | ||||
|                              (and (eq? (stat:type (stat x)) 'directory) | ||||
|                                   (not (member (basename x) keep-dirs)))))))) | ||||
|              #t)) | ||||
|          ;; Some tests are broken (see: | ||||
|          ;; https://github.com/supercollider/supercollider/issues/3555 and | ||||
|          ;; https://github.com/supercollider/supercollider/issues/1736 | ||||
|          (add-after 'rm-bundled-libs 'disable-broken-tests | ||||
|            (lambda _ | ||||
|              (substitute* "testsuite/supernova/CMakeLists.txt" | ||||
|                (("server_test.cpp") | ||||
|                 "") | ||||
|                (("perf_counter_test.cpp") | ||||
|                 "")) | ||||
|              (delete-file "testsuite/supernova/server_test.cpp") | ||||
|              (delete-file "testsuite/supernova/perf_counter_test.cpp") | ||||
|              (substitute* "testsuite/CMakeLists.txt" | ||||
|                (("add_subdirectory\\(sclang\\)") | ||||
|                 "")) | ||||
|              (delete-file "testsuite/sclang/CMakeLists.txt") | ||||
|              #t)) | ||||
|          ;; TODO: Remove after version 3.9.2 is released | ||||
|          ;; (see: https://github.com/supercollider/supercollider/pull/3558). | ||||
|          (add-after 'disable-broken-tests 'apply-system-yaml-cpp-fix | ||||
|            (lambda _ | ||||
|              ;; cmake: correctly include yaml-cpp (commit f82cec5ae). | ||||
|              (substitute* "editors/sc-ide/CMakeLists.txt" | ||||
|                (("external_libraries/boost\\)$") | ||||
|                 "external_libraries/boost) | ||||
| include_directories(${YAMLCPP_INCLUDE_DIR})") | ||||
|                (("    yaml") | ||||
|                 "    ${YAMLCPP_LIBRARY}")) | ||||
|              ;; set YAMLCPP_LIBRARY and YAMLCPP_INCLUDE_DIR if not using | ||||
|              ;; system (commit 031922987). | ||||
|              (substitute* "external_libraries/CMakeLists.txt" | ||||
|                (("set_property\\( TARGET yaml PROPERTY FOLDER 3rdparty \\)") | ||||
|                 "set_property( TARGET yaml PROPERTY FOLDER 3rdparty ) | ||||
| set(YAMLCPP_LIBRARY yaml) | ||||
| set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/\ | ||||
| external_libraries/yaml-cpp/include)")) | ||||
|              #t))))) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config) | ||||
|        ("qttools" ,qttools))) | ||||
|     (inputs | ||||
|      `(("jack" ,jack-1) | ||||
|        ("libsndfile" ,libsndfile) | ||||
|        ("fftw" ,fftw) | ||||
|        ("libxt" ,libxt) | ||||
|        ("readline" ,readline)           ;readline support for sclang's CLI | ||||
|        ("alsa" ,alsa-lib)               ;for sclang's MIDI interface | ||||
|        ("eudev" ,eudev)                 ;for user interactions with devices | ||||
|        ("avahi" ,avahi)                 ;zeroconf service discovery support | ||||
|        ("icu4c" ,icu4c) | ||||
|        ("boost" ,boost) | ||||
|        ("boost-sync" ,boost-sync) | ||||
|        ("yaml-cpp" ,yaml-cpp) | ||||
|        ("qtbase" ,qtbase)               ;IDE support | ||||
|        ("qtwebkit" ,qtwebkit) | ||||
|        ("qtsensors" ,qtsensors) | ||||
|        ("qtdeclarative" ,qtdeclarative) | ||||
|        ("qtlocation" ,qtlocation))) | ||||
|     (home-page "https://github.com/supercollider/supercollider") | ||||
|     (synopsis "Synthesis engine and programming language") | ||||
|     (description "SuperCollider is a synthesis engine (@code{scsynth} or | ||||
| @code{supernova}) and programming language (@code{sclang}).  It can be used | ||||
| for experimenting with sound synthesis and algorithmic composition. | ||||
| 
 | ||||
| SuperCollider requires jackd to be installed in your user profile and your | ||||
| user must be allowed to access the realtime features of the kernel.  Search | ||||
| for \"realtime\" in the index of the Guix manual to learn how to achieve this | ||||
| using GuixSD.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public raul | ||||
|   (package | ||||
|     (name "raul") | ||||
|  |  | |||
|  | @ -3632,7 +3632,7 @@ data.") | |||
| (define-public kaiju | ||||
|   (package | ||||
|     (name "kaiju") | ||||
|     (version "1.5.0") | ||||
|     (version "1.6.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -3641,7 +3641,7 @@ data.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0afbfalfw9y39bkwnqjrh9bghs118ws1pzj5h8l0nblgn3mbjdks")))) | ||||
|                 "1kdn4rxs0kr9ibmrgrfcci71aa6j6gr71dbc8pff7731rpab6kj7")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; There are no tests. | ||||
|  | @ -3659,7 +3659,8 @@ data.") | |||
|                (copy-recursively "util" bin)) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("perl" ,perl))) | ||||
|      `(("perl" ,perl) | ||||
|        ("zlib" ,zlib))) | ||||
|     (home-page "http://kaiju.binf.ku.dk/") | ||||
|     (synopsis "Fast and sensitive taxonomic classification for metagenomics") | ||||
|     (description "Kaiju is a program for sensitive taxonomic classification | ||||
|  | @ -6077,14 +6078,14 @@ data types as well.") | |||
| (define-public r-annotate | ||||
|   (package | ||||
|     (name "r-annotate") | ||||
|     (version "1.56.1") | ||||
|     (version "1.56.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (bioconductor-uri "annotate" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "14c5xd9kasvcwg5gbjys2c1vizxhlqlzxakqc2kml0kw97hmx0rq")))) | ||||
|          "0ybg9k1s289h15nj1kp9821i1rsk1gkn8i8blplmk7gsgpbw1f42")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-annotationdbi" ,r-annotationdbi) | ||||
|  | @ -6886,8 +6887,7 @@ also known as views, in a controlled vocabulary.") | |||
|        ("r-rmarkdown" ,r-rmarkdown) | ||||
|        ("r-tinytex" ,r-tinytex) | ||||
|        ("r-yaml" ,r-yaml) | ||||
|        ("r-xfun" ,r-xfun) | ||||
|        ("ghc-pandoc" ,ghc-pandoc))) | ||||
|        ("r-xfun" ,r-xfun))) | ||||
|     (home-page "https://github.com/rstudio/bookdown") | ||||
|     (synopsis "Authoring books and technical documents with R markdown") | ||||
|     (description "This package provides output formats and utilities for | ||||
|  | @ -8526,14 +8526,14 @@ library implementing most of the pipeline's features.") | |||
| (define-public r-mutationalpatterns | ||||
|   (package | ||||
|     (name "r-mutationalpatterns") | ||||
|     (version "1.4.2") | ||||
|     (version "1.4.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (bioconductor-uri "MutationalPatterns" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "08ay9h5cqsi8ypb6r0g4rfa5l1g06jgfzl64wmhgz134yqbl7vfv")))) | ||||
|          "0ml4gsp5dfv23xqrknxh25q8q65hly1xb1215lcwyc8hj9z8f941")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-biocgenerics" ,r-biocgenerics) | ||||
|  | @ -8543,7 +8543,6 @@ library implementing most of the pipeline's features.") | |||
|        ("r-genomicranges" ,r-genomicranges) | ||||
|        ("r-genomeinfodb" ,r-genomeinfodb) | ||||
|        ("r-ggplot2" ,r-ggplot2) | ||||
|        ("r-gridextra" ,r-gridextra) | ||||
|        ("r-iranges" ,r-iranges) | ||||
|        ("r-nmf" ,r-nmf) | ||||
|        ("r-plyr" ,r-plyr) | ||||
|  | @ -12757,7 +12756,7 @@ expression report comparing samples in an easily configurable manner.") | |||
| (define-public pigx-chipseq | ||||
|   (package | ||||
|     (name "pigx-chipseq") | ||||
|     (version "0.0.8") | ||||
|     (version "0.0.10") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/" | ||||
|  | @ -12765,7 +12764,7 @@ expression report comparing samples in an easily configurable manner.") | |||
|                                   "/pigx_chipseq-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1plw0bz0b7flj0g9irbn8n520005lmajkiq5flpizzapsl0a0r9g")))) | ||||
|                 "13w99bkr0w4j28ms0yzpl1x6fkpdqay0vh495q3x20bcilsjwnf1")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; parts of the tests rely on access to the network | ||||
|  | @ -12780,24 +12779,34 @@ expression report comparing samples in an easily configurable manner.") | |||
|                  `("PYTHONPATH"  ":" = (,(getenv "PYTHONPATH"))))) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("r-minimal" ,r-minimal) | ||||
|      `(("grep" ,grep) | ||||
|        ("coreutils" ,coreutils) | ||||
|        ("r-minimal" ,r-minimal) | ||||
|        ("r-argparser" ,r-argparser) | ||||
|        ("r-biocparallel" ,r-biocparallel) | ||||
|        ("r-biostrings" ,r-biostrings) | ||||
|        ("r-chipseq" ,r-chipseq) | ||||
|        ("r-data-table" ,r-data-table) | ||||
|        ("r-dplyr" ,r-dplyr) | ||||
|        ("r-genomation" ,r-genomation) | ||||
|        ("r-genomicalignments" ,r-genomicalignments) | ||||
|        ("r-genomicranges" ,r-genomicranges) | ||||
|        ("r-rsamtools" ,r-rsamtools) | ||||
|        ("r-rtracklayer" ,r-rtracklayer) | ||||
|        ("r-rcas" ,r-rcas) | ||||
|        ("r-s4vectors" ,r-s4vectors) | ||||
|        ("r-stringr" ,r-stringr) | ||||
|        ("r-tibble" ,r-tibble) | ||||
|        ("r-tidyr" ,r-tidyr) | ||||
|        ("r-jsonlite" ,r-jsonlite) | ||||
|        ("r-heatmaply" ,r-heatmaply) | ||||
|        ("r-htmlwidgets" ,r-htmlwidgets) | ||||
|        ("r-ggplot2" ,r-ggplot2) | ||||
|        ("r-plotly" ,r-plotly) | ||||
|        ("r-rmarkdown" ,r-rmarkdown) | ||||
|        ("python-wrapper" ,python-wrapper) | ||||
|        ("python-magic" ,python-magic) | ||||
|        ("python-pyyaml" ,python-pyyaml) | ||||
|        ("python-magic" ,python-magic) | ||||
|        ("python-xlrd" ,python-xlrd) | ||||
|        ("snakemake" ,snakemake) | ||||
|        ("trim-galore" ,trim-galore) | ||||
|        ("macs" ,macs) | ||||
|        ("multiqc" ,multiqc) | ||||
|  |  | |||
|  | @ -8,6 +8,7 @@ | |||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -28,7 +29,10 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build utils) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system trivial) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages icu4c) | ||||
|  | @ -110,6 +114,38 @@ across a broad spectrum of applications.") | |||
|     (license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt" | ||||
|                                 "Some components have other similar licences.")))) | ||||
| 
 | ||||
| (define-public boost-sync | ||||
|   (let ((commit "c72891d9b90e2ceb466ec859f640cd012b2d8709") | ||||
|         (version "1.55") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "boost-sync") | ||||
|       (version (git-version version revision commit)) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://github.com/boostorg/sync.git") | ||||
|                       (commit commit))) | ||||
|                 (file-name (git-file-name name version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "197mp5z048vz5kv1m4v3jm447l2gqsyv0rbfz11dz0ns343ihbyx")))) | ||||
|       (build-system trivial-build-system) | ||||
|       (arguments | ||||
|        `(#:modules ((guix build utils)) | ||||
|          #:builder | ||||
|          (begin | ||||
|            (use-modules (guix build utils)) | ||||
|            (let ((source (assoc-ref %build-inputs "source"))) | ||||
|              (copy-recursively (string-append source "/include") | ||||
|                                (string-append %output "/include")))))) | ||||
|       (home-page "https://github.com/boostorg/sync") | ||||
|       (synopsis "Boost.Sync library") | ||||
|       (description "The Boost.Sync library provides mutexes, semaphores, locks | ||||
| and events and other thread related facilities.  Boost.Sync originated from | ||||
| Boost.Thread.") | ||||
|       (license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt"))))) | ||||
| 
 | ||||
| (define-public mdds | ||||
|   (package | ||||
|     (name "mdds") | ||||
|  |  | |||
|  | @ -35,6 +35,7 @@ | |||
|   #:use-module (gnu packages cdrom) | ||||
|   #:use-module (gnu packages cross-base) | ||||
|   #:use-module (gnu packages disk) | ||||
|   #:use-module (gnu packages firmware) | ||||
|   #:use-module (gnu packages flex) | ||||
|   #:use-module (gnu packages fontutils) | ||||
|   #:use-module (gnu packages gcc) | ||||
|  | @ -422,7 +423,7 @@ also initializes the boards (RAM etc).") | |||
|                (let* ((out (assoc-ref outputs "out")) | ||||
|                       (libexec (string-append out "/libexec")) | ||||
|                       (uboot-files (append | ||||
|                                     (find-files "." ".*\\.(bin|efi|img|spl)$") | ||||
|                                     (find-files "." ".*\\.(bin|efi|img|spl|itb|dtb)$") | ||||
|                                     (find-files "." "^MLO$")))) | ||||
|                  (mkdir-p libexec) | ||||
|                  (install-file ".config" libexec) | ||||
|  | @ -445,6 +446,27 @@ also initializes the boards (RAM etc).") | |||
| (define-public u-boot-odroid-c2 | ||||
|   (make-u-boot-package "odroid-c2" "aarch64-linux-gnu")) | ||||
| 
 | ||||
| (define-public u-boot-pine64-plus | ||||
|   (let ((base (make-u-boot-package "pine64_plus" "aarch64-linux-gnu"))) | ||||
|     (package | ||||
|       (inherit base) | ||||
|       (arguments | ||||
|         (substitute-keyword-arguments (package-arguments base) | ||||
|           ((#:phases phases) | ||||
|            `(modify-phases ,phases | ||||
|               (add-after 'unpack 'set-environment | ||||
|                 (lambda* (#:key inputs #:allow-other-keys) | ||||
|                   (let ((bl31 (string-append (assoc-ref inputs "firmware") | ||||
|                                              "/bl31.bin"))) | ||||
|                     (setenv "BL31" bl31) | ||||
|                     ;; This is necessary while we're using the bundled dtc. | ||||
|                     (setenv "PATH" (string-append (getenv "PATH") ":" | ||||
|                                                   "scripts/dtc"))) | ||||
|                   #t)))))) | ||||
|       (native-inputs | ||||
|        `(("firmware" ,arm-trusted-firmware-pine64-plus) | ||||
|          ,@(package-native-inputs base)))))) | ||||
| 
 | ||||
| (define-public u-boot-banana-pi-m2-ultra | ||||
|   (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf")) | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> | ||||
| ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; | ||||
|  | @ -31,7 +31,6 @@ | |||
|   #:use-module ((guix derivations) | ||||
|                 #:select (derivation derivation->output-path)) | ||||
|   #:use-module ((guix utils) #:select (gnu-triplet->nix-system)) | ||||
|   #:use-module ((guix build utils) #:select (elf-file?)) | ||||
|   #:use-module (guix memoization) | ||||
|   #:use-module (srfi srfi-1) | ||||
|   #:use-module (srfi srfi-26) | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ | |||
| (define-public ccache | ||||
|   (package | ||||
|     (name "ccache") | ||||
|     (version "3.4.1") | ||||
|     (version "3.4.2") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -38,9 +38,9 @@ | |||
|                           version ".tar.xz")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "1pppi4jbkkj641cdynmc35jaj40jjicw7gj75ran5qs5886jcblc")))) | ||||
|         "1qpy6k9f06kpr6bxy26ncdxcszqv1skcncvczcvksgfncx1v3a0q")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs `(("perl" ,perl)     ;for test.sh | ||||
|     (native-inputs `(("perl" ,perl)     ; for test.sh | ||||
|                      ("which" ,(@ (gnu packages base) which)))) | ||||
|     (inputs `(("zlib" ,zlib))) | ||||
|     (arguments | ||||
|  |  | |||
|  | @ -184,8 +184,8 @@ their dependencies.") | |||
|       (license l:gpl3+)))) | ||||
| 
 | ||||
| (define-public cuirass | ||||
|   (let ((commit "aa4c7784940581b5e271b9c7c4ac80b6ee1ee309") | ||||
|         (revision "13")) | ||||
|   (let ((commit "326264c8e9445cb94d7fb33aab5ef93dc99ffe57") | ||||
|         (revision "14")) | ||||
|     (package | ||||
|       (name "cuirass") | ||||
|       (version (string-append "0.0.1-" revision "." (string-take commit 7))) | ||||
|  | @ -197,7 +197,7 @@ their dependencies.") | |||
|                 (file-name (string-append name "-" version)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "1827vgk47rcgm2x0cxzvg79ni6vazjzr8hr9pljlvbd9awzr7hxp")))) | ||||
|                   "0l6433l63r1zyq9hg89q9l6zgydm7bm35xdvb0g22w1d6wvi48ls")))) | ||||
|       (build-system gnu-build-system) | ||||
|       (arguments | ||||
|        '(#:modules ((guix build utils) | ||||
|  |  | |||
|  | @ -1630,7 +1630,7 @@ or junctions, and always follows hard links.") | |||
| (define-public zstd | ||||
|   (package | ||||
|     (name "zstd") | ||||
|     (version "1.3.3") | ||||
|     (version "1.3.4") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/facebook/zstd/archive/v" | ||||
|  | @ -1638,7 +1638,7 @@ or junctions, and always follows hard links.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0yr91gwi380632w9y7p6idl72svq0mq0jajvdii05pp77qalfz57")))) | ||||
|                 "1a85sqk4z5b2jfp7fqkr38ibql8mdzca32lf4i3bssyjimp1pr4j")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
|  | @ -1,10 +1,13 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2017 Roel Janssen <roel@gnu.org> | ||||
| ;;; Copyright © 2017, 2018 Roel Janssen <roel@gnu.org> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017 Raoul Bonnal <ilpuccio.febo@gmail.com> | ||||
| ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com> | ||||
| ;;; Copyright © 2018 Sahithi Yarlagadda <sahi@swecha.net> | ||||
| ;;; Copyright © 2018 Sandeep Subramanian <sandeepsubramanian94@gmail.com> | ||||
| ;;; Copyright © 2018 Charlie Ritter <chewzeirta@posteo.net> | ||||
| ;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -35,6 +38,252 @@ | |||
|   #:use-module (gnu packages statistics) | ||||
|   #:use-module (gnu packages web)) | ||||
| 
 | ||||
| (define-public r-tidyverse | ||||
|   (package | ||||
|     (name "r-tidyverse") | ||||
|     (version "1.2.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "tidyverse" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0yy3fkjksgcn6wkbgsb0pbnmsyqs4m01mziqafhig578nixs4rxd")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-broom" ,r-broom) | ||||
|        ("r-cli" ,r-cli) | ||||
|        ("r-crayon" ,r-crayon) | ||||
|        ("r-dbplyr" ,r-dbplyr) | ||||
|        ("r-dplyr" ,r-dplyr) | ||||
|        ("r-forcats" ,r-forcats) | ||||
|        ("r-ggplot2" ,r-ggplot2) | ||||
|        ("r-haven" ,r-haven) | ||||
|        ("r-hms" ,r-hms) | ||||
|        ("r-httr" ,r-httr) | ||||
|        ("r-jsonlite" ,r-jsonlite) | ||||
|        ("r-lubridate" ,r-lubridate) | ||||
|        ("r-magrittr" ,r-magrittr) | ||||
|        ("r-modelr" ,r-modelr) | ||||
|        ("r-purrr" ,r-purrr) | ||||
|        ("r-readr" ,r-readr) | ||||
|        ("r-readxl" ,r-readxl) | ||||
|        ("r-reprex" ,r-reprex) | ||||
|        ("r-rlang" ,r-rlang) | ||||
|        ("r-rstudioapi" ,r-rstudioapi) | ||||
|        ("r-rvest" ,r-rvest) | ||||
|        ("r-stringr" ,r-stringr) | ||||
|        ("r-tibble" ,r-tibble) | ||||
|        ("r-tidyr" ,r-tidyr) | ||||
|        ("r-xml2" ,r-xml2))) | ||||
|     (home-page "https://tidyverse.tidyverse.org") | ||||
|     (synopsis "Install and load packages from the \"Tidyverse\"") | ||||
|     (description | ||||
|      "The @code{tidyverse} is a set of packages that work in harmony because | ||||
| they share common data representations and API design.  This package is | ||||
| designed to make it easy to install and load multiple tidyverse packages in a | ||||
| single step.") | ||||
|     (license license:gpl3))) | ||||
| 
 | ||||
| (define-public r-rvest | ||||
|   (package | ||||
|     (name "r-rvest") | ||||
|     (version "0.3.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "rvest" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "04mv99z8dixywx96kfy4215g6ib23s7qvd77hcf9pxqxzcvqhvhd")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-httr" ,r-httr) | ||||
|        ("r-magrittr" ,r-magrittr) | ||||
|        ("r-selectr" ,r-selectr) | ||||
|        ("r-xml2" ,r-xml2))) | ||||
|     (home-page "https://github.com/hadley/rvest") | ||||
|     (synopsis "Simple web scraping for R") | ||||
|     (description | ||||
|      "@code{r-rvest} helps you scrape information from web pages.  It is | ||||
| designed to work with @code{magrittr} to make it easy to express common web | ||||
| scraping tasks, inspired by libraries like @code{BeautifulSoup}.") | ||||
|     (license license:gpl3))) | ||||
| 
 | ||||
| (define-public r-selectr | ||||
|   (package | ||||
|     (name "r-selectr") | ||||
|     (version "0.3-2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "selectr" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0kdrj64rqg4z6hg92y9r2h602a2i73r5rnlpg23ys33d5d32n8jy")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs `(("r-stringr" ,r-stringr))) | ||||
|     (home-page "https://sjp.co.nz/projects/selectr/") | ||||
|     (synopsis "Translate CSS selectors to XPath expressions") | ||||
|     (description | ||||
|      "@code{r-selectr} translates a CSS3 selector into an equivalent XPath | ||||
| expression.  This allows you to use CSS selectors when working with the XML | ||||
| package as it can only evaluate XPath expressions.  Also provided are | ||||
| convenience functions useful for using CSS selectors on XML nodes.  This | ||||
| package is a port of the Python package @code{cssselect}.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public r-reprex | ||||
|   (package | ||||
|     (name "r-reprex") | ||||
|     (version "0.1.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "reprex" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "105d9vsmqfilgpw8psfb2wyiz1hvcycvh4cqhb3ab37lm3rcavvs")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-callr" ,r-callr) | ||||
|        ("r-knitr" ,r-knitr) | ||||
|        ("r-rmarkdown" ,r-rmarkdown) | ||||
|        ("r-whisker" ,r-whisker))) | ||||
|     (home-page "https://github.com/tidyverse/reprex") | ||||
|     (synopsis "Prepare reproducible R code examples for sharing") | ||||
|     (description | ||||
|      "This package provides a convenience wrapper that uses the | ||||
| @code{rmarkdown} package to render small snippets of code to target formats | ||||
| that include both code and output.  The goal is to encourage the sharing of | ||||
| small, reproducible, and runnable examples on code-oriented websites or email. | ||||
| @code{reprex} also extracts clean, runnable R code from various common formats, | ||||
| such as copy/paste from an R session.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public r-callr | ||||
|   (package | ||||
|     (name "r-callr") | ||||
|     (version "2.0.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "callr" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0m51p39vfwldxv6h8x4y9w3laf8q9bldhfqhlcrlx3xhy3irb1bp")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-assertthat" ,r-assertthat) | ||||
|        ("r-crayon" ,r-crayon) | ||||
|        ("r-debugme" ,r-debugme) | ||||
|        ("r-r6" ,r-r6) | ||||
|        ("r-testthat" ,r-testthat))) | ||||
|     (home-page "https://github.com/r-lib/callr#readme") | ||||
|     (synopsis "Call R from R") | ||||
|     (description | ||||
|      "It is sometimes useful to perform a computation in a separate R process, | ||||
| without affecting the current R process at all.  This packages does exactly | ||||
| that.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public r-readxl | ||||
|   (package | ||||
|     (name "r-readxl") | ||||
|     (version "1.0.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "readxl" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1bf7gxw9r11m4llyymplxiaa4gzgyj4bwmwad5in756pzq3jzmpv")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-cellranger" ,r-cellranger) | ||||
|        ("r-rcpp" ,r-rcpp) | ||||
|        ("r-tibble" ,r-tibble))) | ||||
|     (home-page "https://readxl.tidyverse.org") | ||||
|     (synopsis "Read Excel files") | ||||
|     (description | ||||
|      "This package lets you import Excel files into R.  It supports | ||||
| @file{.xls} via the embedded @code{libxls} C library and @file{.xlsx} via | ||||
| the embedded @code{RapidXML} C++ library.") | ||||
|     ;; XXX: This package bundles a copy of 'libxsl' which is BSD-2 and | ||||
|     ;; 'rapidxml' which is Boost. | ||||
|     (license (list license:gpl3 license:bsd-2 license:boost1.0)))) | ||||
| 
 | ||||
| (define-public r-modelr | ||||
|   (package | ||||
|     (name "r-modelr") | ||||
|     (version "0.1.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "modelr" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1rqw0b583vp107zqp4h3wj51dvv4hb3wszfr1f5f48xassc53f95")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-broom" ,r-broom) | ||||
|        ("r-dplyr" ,r-dplyr) | ||||
|        ("r-lazyeval" ,r-lazyeval) | ||||
|        ("r-magrittr" ,r-magrittr) | ||||
|        ("r-purrr" ,r-purrr) | ||||
|        ("r-tibble" ,r-tibble) | ||||
|        ("r-tidyr" ,r-tidyr))) | ||||
|     (home-page "https://github.com/tidyverse/modelr") | ||||
|     (synopsis "Helper functions for modelling in pipelines") | ||||
|     (description | ||||
|      "Functions for modelling that help you seamlessly integrate modelling | ||||
| into a pipeline of data manipulation and visualisation.") | ||||
|     (license license:gpl3))) | ||||
| 
 | ||||
| (define-public r-haven | ||||
|   (package | ||||
|     (name "r-haven") | ||||
|     (version "1.1.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "haven" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1fkcvsrnw8waqwggv0aydbvbi99x5kp9g78xfxj4w6s3xvdzcysz")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-forcats" ,r-forcats) | ||||
|        ("r-hms" ,r-hms) | ||||
|        ("r-rcpp" ,r-rcpp) | ||||
|        ("r-readr" ,r-readr) | ||||
|        ("r-tibble" ,r-tibble))) | ||||
|     (home-page "https://haven.tidyverse.org") | ||||
|     (synopsis "Import and Export 'SPSS', 'Stata' and 'SAS' Files") | ||||
|     (description | ||||
|      "This package lets you mport foreign statistical formats into R via the | ||||
| embedded @url{https://github.com/WizardMac/ReadStat,ReadStat} C library.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public r-amap | ||||
|   (package | ||||
|     (name "r-amap") | ||||
|     (version "0.8-14") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "amap" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1dz37z9v4zvyvqrs4xvpfv468jwvpxav60qn2w0049bw8llj6xdl")))) | ||||
|     (build-system r-build-system) | ||||
|     (inputs | ||||
|      `(("gfortran" ,gfortran))) | ||||
|     (home-page "http://mulcyber.toulouse.inra.fr/projects/amap/") | ||||
|     (synopsis "Another multidimensional analysis package") | ||||
|     (description "This package provides tools for clustering and principal | ||||
| component analysis (with robust methods, and parallelized functions).") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-ape | ||||
|   (package | ||||
|     (name "r-ape") | ||||
|  | @ -131,6 +380,27 @@ inspired by Python's Literal String Interpolation (PEP-0498) and | |||
| Docstrings (PEP-0257) and Julia's Triple-Quoted String Literals.") | ||||
|     (license license:expat))) | ||||
| 
 | ||||
| (define-public r-pastecs | ||||
|   (package | ||||
|    (name "r-pastecs") | ||||
|    (version "1.3.21") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (cran-uri "pastecs" version)) | ||||
|             (sha256 | ||||
|              (base32 | ||||
|               "0z4dic94ar646w7zc2ggi5hgvf2qnznsani94c5pyql8zspz47lc")))) | ||||
|    (build-system r-build-system) | ||||
|    (propagated-inputs | ||||
|     `(("r-boot" ,r-boot))) | ||||
|    (home-page "http://www.sciviews.org/pastecs") | ||||
|    (synopsis "Analysis of space-time ecological series") | ||||
|    (description | ||||
|     "This package provides functions for regulation, decomposition and analysis | ||||
| of space-time series.  The @code{pastecs} library is a PNEC-Art4 and IFREMER | ||||
| initiative to bring PASSTEC 2000 functionalities to R.") | ||||
|    (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-plogr | ||||
|   (package | ||||
|     (name "r-plogr") | ||||
|  | @ -779,6 +1049,26 @@ tools for inference in parametric models are provided.") | |||
|     ;; Either version is okay | ||||
|     (license (list license:gpl2 license:gpl3)))) | ||||
| 
 | ||||
| (define-public r-idr | ||||
|   (package | ||||
|     (name "r-idr") | ||||
|     (version "1.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "idr" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "05nvgw1xdg670bsjjrxkgd1mrdkciccpw4krn0zcgdf2r21dzgwb")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://cran.r-project.org/web/packages/idr/") | ||||
|     (synopsis "Irreproducible discovery rate") | ||||
|     (description | ||||
|      "This is a package for estimating the copula mixture model and plotting | ||||
| correspondence curves in \"Measuring reproducibility of high-throughput | ||||
| experiments\" (2011), Annals of Applied Statistics, Vol. 5, No. 3, 1752-1779, | ||||
| by Li, Brown, Huang, and Bickel") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-inline | ||||
|   (package | ||||
|     (name "r-inline") | ||||
|  | @ -1625,6 +1915,29 @@ University Press.  It provides smoothing methods for nonparametric regression | |||
| and density estimation") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-venndiagram | ||||
|   (package | ||||
|     (name "r-venndiagram") | ||||
|     (version "1.6.20") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "VennDiagram" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1ic1jaxzw98si2p4n1fl4n3myhd7fpw0njb634cwhviwybzv6775")))) | ||||
|     (properties `((upstream-name . "VennDiagram"))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-futile-logger" ,r-futile-logger))) | ||||
|     (home-page "https://cran.r-project.org/web/packages/VennDiagram/") | ||||
|     (synopsis "Generate High-Resolution Venn and Euler Plots") | ||||
|     (description | ||||
|      "This package provides a set of functions to generate high-resolution | ||||
| Venn and Euler plots.  It includes handling for several special cases, | ||||
| including two-case scaling, and extensive customization of plot shape and | ||||
| structure.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-vioplot | ||||
|   (package | ||||
|     (name "r-vioplot") | ||||
|  | @ -3273,3 +3586,71 @@ those functions to be used with time series including specifications that may | |||
| contain lags, diffs and missing values.") | ||||
|     ;; Any GPL version. | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-catdap | ||||
|   (package | ||||
|     (name "r-catdap") | ||||
|     (version "1.3.4") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "catdap" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0i877l61f6c75pczi235rzci67w29zv1d7z5zn5p5ymndclvlpl2")))) | ||||
|     (build-system r-build-system) | ||||
|     (native-inputs | ||||
|      `(("gfortran" ,gfortran))) | ||||
|     (home-page "https://cran.r-project.org/web/packages/catdap/") | ||||
|     (synopsis "Tools for categorical data analysis") | ||||
|     (description | ||||
|      "This package provides functions for analyzing multivariate data. | ||||
| Dependencies of the distribution of the specified variable (response | ||||
| variable) to other variables (explanatory variables) are derived and | ||||
| evaluated by the @dfn{Akaike Information Criterion} (AIC).") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public r-arules | ||||
|   (package | ||||
|     (name "r-arules") | ||||
|     (version "1.6-0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "arules" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "14gbq5k2zkx4wc7kkfazz313ngij89qp1xmyxfg3nq3v1s84c3sl")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-matrix" ,r-matrix))) | ||||
|     (home-page "https://github.com/mhahsler/arules") | ||||
|     (synopsis "Mining association rules and frequent itemsets") | ||||
|     (description | ||||
|      "This package provides an infrastructure for representing, manipulating | ||||
| and analyzing transaction data and patterns (frequent itemsets and association rules). | ||||
| It also provides C implementations of the association mining algorithms Apriori | ||||
| and Eclat.") | ||||
|     (license license:gpl3))) | ||||
| 
 | ||||
| (define-public r-parsedate | ||||
|   (package | ||||
|     (name "r-parsedate") | ||||
|     (version "1.1.3") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "parsedate" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0mg7hbm3903iwvmpn51gjpaaq03rsp72hjb1g8h5g84r81iha002")))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://github.com/gaborcsardi/parsedate") | ||||
|     (synopsis | ||||
|      "Recognize and parse dates in various formats") | ||||
|     (description | ||||
|      "This package provides three functions for dealing with dates: | ||||
| @code{parse_iso_8601} recognizes and parses all valid ISO 8601 date and | ||||
| time formats, @code{parse_date} parses dates in unspecified formats, | ||||
| and @code{format_iso_8601} formats a date in ISO 8601 format.") | ||||
|     (license license:gpl2))) | ||||
|  |  | |||
|  | @ -379,14 +379,14 @@ device-specific programs to convert and print many types of files.") | |||
| (define-public hplip | ||||
|   (package | ||||
|     (name "hplip") | ||||
|     (version "3.17.11") | ||||
|     (version "3.18.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/hplip/hplip/" version | ||||
|                                   "/hplip-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0xda7x7xxjvzn1l0adlvbwcw21crq1r3r79bkf94q3m5i6abx49g")) | ||||
|                 "0x5xs86v18w46rxz5whc15bl4fb7p4km6xqjpwzclp83nl7rl01y")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                ;; Fix type mismatch. | ||||
|  |  | |||
|  | @ -27,6 +27,7 @@ | |||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system python) | ||||
|   #:use-module (guix build-system trivial) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages curl) | ||||
|   #:use-module (gnu packages emacs) | ||||
|  | @ -237,7 +238,7 @@ and a Python library.") | |||
| (define-public translate-shell | ||||
|   (package | ||||
|     (name "translate-shell") | ||||
|     (version "0.9.6.4") | ||||
|     (version "0.9.6.7") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|  | @ -245,7 +246,8 @@ and a Python library.") | |||
|                             version ".tar.gz")) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "1fg6nf1plvgimc57fsdr9rcjbf7jvmk5jrlj5ya509vpdcdgvj2s")) | ||||
|           "0inv6r3qbihn2ff1sgcly89r04k4vgcbvvyl50ln0mxlapbhpy95")) | ||||
|         (patches (search-patches "translate-shell-fix-curl-tests.patch")) | ||||
|         (file-name (string-append name "-" version ".tar.gz")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|  | @ -259,7 +261,8 @@ and a Python library.") | |||
|                     (emacs (string-append (assoc-ref inputs "emacs") "/bin/emacs"))) | ||||
|                (install-file "google-translate-mode.el" dest) | ||||
|                (emacs-generate-autoloads ,name dest))))) | ||||
|        #:make-flags (list (string-append "PREFIX=" %output)) | ||||
|        #:make-flags (list (string-append "PREFIX=" %output) | ||||
|                           "NETWORK_ACCESS=no test") | ||||
|        #:imported-modules (,@%gnu-build-system-modules (guix build emacs-utils)) | ||||
|        #:modules ((guix build gnu-build-system) | ||||
|                   (guix build emacs-utils) | ||||
|  | @ -272,7 +275,7 @@ and a Python library.") | |||
|     (native-inputs | ||||
|      `(("emacs" ,emacs-minimal) | ||||
|        ("util-linux" ,util-linux))) ; hexdump, for the test | ||||
|     (home-page "https://www.soimort.org/translate-shell") | ||||
|     (home-page "https://www.soimort.org/translate-shell/") | ||||
|     (synopsis "Translations from the command line") | ||||
|     (description | ||||
|      "Translate Shell (formerly Google Translate CLI) is a command-line | ||||
|  |  | |||
|  | @ -2,13 +2,14 @@ | |||
| ;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org> | ||||
| ;;; Copyright © 2015 Mathieu Lirzin <mthl@gnu.org> | ||||
| ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> | ||||
| ;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2016, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> | ||||
| ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> | ||||
| ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> | ||||
| ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> | ||||
| ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -34,6 +35,7 @@ | |||
|   #:use-module (guix build-system python) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages base) | ||||
|   #:use-module (gnu packages databases) | ||||
|   #:use-module (gnu packages docbook) | ||||
|   #:use-module (gnu packages gettext) | ||||
|   #:use-module (gnu packages glib) | ||||
|  | @ -319,17 +321,17 @@ and can dramatically shorten the lifespan of the drive if left unchecked.") | |||
| (define-public gparted | ||||
|   (package | ||||
|     (name "gparted") | ||||
|     (version "0.30.0") | ||||
|     (version "0.31.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://sourceforge/gparted/gparted/gparted-" | ||||
|                            version "/gparted-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 "0jngbsbvg8k8vbpsphqbk8br2cbmxhabbm2c5bmxm2q5zvpr64fk")))) | ||||
|         (base32 "1fh7rpgb4xxdhgyjsirb83zvjfc5mfngb8a1pjbv7r6r6jj4jyrv")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; Tests require a network connection. | ||||
|      `(#:tests? #f                      ; tests require a network connection | ||||
|        #:configure-flags '("--disable-scrollkeeper"))) | ||||
|     (inputs | ||||
|      `(("util-linux" ,util-linux) | ||||
|  | @ -416,3 +418,87 @@ capacity of a flash card (flash drive, flash disk, pendrive).  F3 writes to | |||
| the card and then checks if can read it.  It will assure you haven't been sold | ||||
| a card with a smaller capacity than stated.") | ||||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public python-parted | ||||
|   (package | ||||
|     (name "python-parted") | ||||
|     (version "3.11.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://github.com/dcantrell/pyparted/archive/v" | ||||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0r1nyjj40nacnfnv17x2mnsj6ga1qplyxyza82v2809dfhim2fwq")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'check) | ||||
|          (add-after 'install 'check | ||||
|            (lambda* (#:key outputs inputs #:allow-other-keys) | ||||
|              (add-installed-pythonpath inputs outputs) | ||||
|              ;; See <https://github.com/dcantrell/pyparted/issues/47>. | ||||
|              (substitute* "tests/test__ped_ped.py" | ||||
|                (("\"/tmp/temp-device-\"") "self.path")) | ||||
|              (invoke "python" "-m" "unittest" "discover" "-v") | ||||
|              #t))))) | ||||
|     (native-inputs | ||||
|      `(("e2fsprogs" ,e2fsprogs) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (propagated-inputs | ||||
|      `(("python-six" ,python-six))) | ||||
|     (inputs | ||||
|      `(("parted" ,parted))) | ||||
|     (home-page "https://github.com/dcantrell/pyparted") | ||||
|     (synopsis "Parted bindings for Python") | ||||
|     (description "This package provides @code{parted} bindings for Python.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public python2-parted | ||||
|   (package-with-python2 python-parted)) | ||||
| 
 | ||||
| (define-public duperemove | ||||
|   (package | ||||
|     (name "duperemove") | ||||
|     (version "v0.11.beta4") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|                     "https://github.com/markfasheh/duperemove/archive/" | ||||
|                     version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1h5nk03kflfnzihvn2rvfz1h623x1zpkn9hp29skd7n3f2bc5k7x")) | ||||
|               (file-name (string-append name "-" version ".tar.gz")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|     (inputs | ||||
|      `(("glib" ,glib) | ||||
|        ("sqlite" ,sqlite))) | ||||
|     (arguments | ||||
|      `(#:tests? #f                                ;no test suite | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          ;; no configure script | ||||
|          (delete 'configure)) | ||||
|        #:make-flags (list (string-append "PREFIX=" %output) | ||||
|                           "CC=gcc"))) | ||||
|     (home-page "https://github.com/markfasheh/duperemove") | ||||
|     (synopsis "Tools for de-duplicating file system data") | ||||
|     (description "Duperemove is a simple tool for finding duplicated extents | ||||
| and submitting them for deduplication.  When given a list of files it will | ||||
| hash their contents on a block by block basis and compare those hashes to each | ||||
| other, finding and categorizing blocks that match each other.  When given the | ||||
| @option{-d} option, duperemove will submit those extents for deduplication | ||||
| using the Linux kernel extent-same @code{ioctl}. | ||||
| 
 | ||||
| Duperemove can store the hashes it computes in a @dfn{hash file}.  If given an | ||||
| existing hash file, duperemove will only compute hashes for those files which | ||||
| have changed since the last run.  Thus you can run duperemove repeatedly on | ||||
| your data as it changes, without having to re-checksum unchanged data. | ||||
| 
 | ||||
| Duperemove can also take input from the @command{fdupes} program.") | ||||
|     (license license:gpl2))) | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ | |||
| ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> | ||||
| ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
|  | @ -788,14 +788,14 @@ provides features like a web browseable API and authentication policies.") | |||
| (define-public python-django-crispy-forms | ||||
|   (package | ||||
|     (name "python-django-crispy-forms") | ||||
|     (version "1.7.0") | ||||
|     (version "1.7.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "django-crispy-forms" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "16s05jx86jmimlvnwpq73kl0mqw1v9lryc8zi61a9qwl25krm6mj")))) | ||||
|          "0pv7y648i8iz7mf64gkjizpbx5d01ap2s4vqqa30n38if6wvlljr")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      '(;; No included tests | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2015, 2017 Alex Kost <alezost@gmail.com> | ||||
| ;;; Copyright © 2015, 2017, 2018 Alex Kost <alezost@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -32,7 +32,7 @@ | |||
| (define-public dunst | ||||
|   (package | ||||
|     (name "dunst") | ||||
|     (version "1.2.0") | ||||
|     (version "1.3.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -41,12 +41,16 @@ | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1bf5fmmj79wlwi8wzir3rd8czyrxfx16w8q7c957123yz1g5ph53")))) | ||||
|                 "1mkdp1vqc376z8clwm5s9070jq1g92j8hv2rr231jr2468fnwaga")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f                      ; no check target | ||||
|        #:make-flags (list "CC=gcc" | ||||
|                           (string-append "PREFIX=" %output)) | ||||
|                           (string-append "PREFIX=" %output) | ||||
|                           ;; Otherwise it tries to install service file | ||||
|                           ;; to "dbus" store directory. | ||||
|                           (string-append "SERVICEDIR_DBUS=" %output | ||||
|                                          "/share/dbus-1/services")) | ||||
|        #:phases (modify-phases %standard-phases | ||||
|                   (delete 'configure)))) | ||||
|     (native-inputs | ||||
|  | @ -55,8 +59,8 @@ | |||
|        ("which" ,which))) | ||||
|     (inputs | ||||
|      `(("dbus" ,dbus) | ||||
|        ("gdk-pixbuf" ,gdk-pixbuf) | ||||
|        ("glib" ,glib) | ||||
|        ("gtk" ,gtk+-2) | ||||
|        ("cairo" ,cairo) | ||||
|        ("pango" ,pango) | ||||
|        ("libx11" ,libx11) | ||||
|  |  | |||
|  | @ -491,7 +491,7 @@ operations.") | |||
| (define-public magit-svn | ||||
|   (package | ||||
|     (name "magit-svn") | ||||
|     (version "2.1.1") | ||||
|     (version "2.2.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -500,12 +500,13 @@ operations.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "04y88j7q9h8xjbx5dbick6n5nr1522sn9i1znp0qwk3vjb4b5mzz")))) | ||||
|                 "1c3n377v436zaxamlsz04y1ahdhp96x1vd43zaryv4y10m02ba47")))) | ||||
|     (build-system trivial-build-system) | ||||
|     (native-inputs `(("emacs" ,emacs-minimal) | ||||
|                      ("tar" ,tar) | ||||
|                      ("gzip" ,gzip))) | ||||
|     (propagated-inputs `(("dash" ,emacs-dash) | ||||
|                          ("with-editor" ,emacs-with-editor) | ||||
|                          ("magit" ,magit))) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils) | ||||
|  | @ -527,6 +528,9 @@ operations.") | |||
|                 (dash     (string-append (assoc-ref %build-inputs "dash") | ||||
|                                          "/share/emacs/site-lisp/guix.d/dash-" | ||||
|                                          ,(package-version emacs-dash))) | ||||
|                 (with-editor (string-append (assoc-ref %build-inputs "with-editor") | ||||
|                                             "/share/emacs/site-lisp/guix.d/with-editor-" | ||||
|                                             ,(package-version emacs-with-editor))) | ||||
|                 (source   (assoc-ref %build-inputs "source")) | ||||
|                 (lisp-dir (string-append %output "/share/emacs/site-lisp"))) | ||||
|            (setenv "PATH" PATH) | ||||
|  | @ -539,9 +543,8 @@ operations.") | |||
|              (parameterize ((%emacs emacs)) | ||||
|                (emacs-generate-autoloads ,name lisp-dir) | ||||
|                (setenv "EMACSLOADPATH" | ||||
|                        (string-append ":" magit ":" dash)) | ||||
|                        (string-append ":" magit ":" dash ":" with-editor)) | ||||
|                (emacs-batch-eval '(byte-compile-file "magit-svn.el")))) | ||||
| 
 | ||||
|            #t)))) | ||||
|     (home-page "https://github.com/magit/magit-svn") | ||||
|     (synopsis "Git-SVN extension to Magit") | ||||
|  | @ -674,7 +677,7 @@ programs.") | |||
| (define-public flycheck | ||||
|   (package | ||||
|     (name "emacs-flycheck") | ||||
|     (version "30") | ||||
|     (version "31") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -682,7 +685,7 @@ programs.") | |||
|                     version "/flycheck-" version ".tar")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1rxzkaqsj48z3nska5wsgwafvwkam014dzqd32baycmxjl0jxvy7")))) | ||||
|                 "01rnwan16m7cyyrfca3c5c60mbj2r3knkpzbhji2fczsf0wns240")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-dash" ,emacs-dash))) | ||||
|  | @ -1374,7 +1377,7 @@ diagrams.") | |||
| (define-public emacs-mmm-mode | ||||
|   (package | ||||
|     (name "emacs-mmm-mode") | ||||
|     (version "0.5.4") | ||||
|     (version "0.5.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -1384,7 +1387,7 @@ diagrams.") | |||
|        (file-name (string-append name "-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "10kwslnflbjqm62wkrq420crqzdqalzfflp9pqk1i12zm6dm4mfv")))) | ||||
|          "0c5ing3hcr74k78hqhrfwiv6m3n8hqfrw89j2x34vf60f4iyqzqc")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  | @ -1832,34 +1835,36 @@ of files under Git version control from within Emacs.") | |||
|     (license license:gpl3+))) | ||||
| 
 | ||||
| (define-public emacs-minitest | ||||
|   (package | ||||
|     (name "emacs-minitest") | ||||
|     (version "0.8.0") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append | ||||
|                    "https://github.com/arthurnn/minitest-emacs/archive/v" | ||||
|                    version ".tar.gz")) | ||||
|              (file-name (string-append name "-" version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1dsb7kzvs1x6g4sgqmq73jqacb7wzm0wfkiq5m9dqdzq8mppgiqs")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (arguments | ||||
|      '(#:include (cons "^snippets\\/minitest-mode\\/" %default-include) | ||||
|        #:exclude (delete "^[^/]*tests?\\.el$" %default-exclude))) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-dash" ,emacs-dash) | ||||
|        ("emacs-f" ,emacs-f))) | ||||
|     (home-page "https://github.com/arthurnn/minitest-emacs") | ||||
|     (synopsis "Emacs minitest mode") | ||||
|     (description | ||||
|      "The minitest mode provides commands to run the tests for the current | ||||
|   (let ((commit "1aadb7865c1dc69c201cecee275751ecec33a182") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (name "emacs-minitest") | ||||
|       (version (git-version "0.8.0" revision commit)) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|                 (uri (git-reference | ||||
|                       (url "https://github.com/arthurnn/minitest-emacs") | ||||
|                       (commit commit))) | ||||
|                 (file-name (git-file-name name commit)) | ||||
|                 (sha256 | ||||
|                  (base32 | ||||
|                   "1l18zqpdzbnqj2qawq8hj7z7pl8hr8z9d8ihy8jaiqma915hmhj1")))) | ||||
|       (build-system emacs-build-system) | ||||
|       (arguments | ||||
|        '(#:include (cons "^snippets\\/minitest-mode\\/" %default-include) | ||||
|          #:exclude (delete "^[^/]*tests?\\.el$" %default-exclude))) | ||||
|       (propagated-inputs | ||||
|        `(("emacs-dash" ,emacs-dash) | ||||
|          ("emacs-f" ,emacs-f))) | ||||
|       (home-page "https://github.com/arthurnn/minitest-emacs") | ||||
|       (synopsis "Emacs minitest mode") | ||||
|       (description | ||||
|        "The minitest mode provides commands to run the tests for the current | ||||
| file or line, as well as rerunning the previous tests, or all the tests for a | ||||
| project. | ||||
| 
 | ||||
| This package also includes relevant snippets for yasnippet.") | ||||
|     (license license:expat))) | ||||
|       (license license:expat)))) | ||||
| 
 | ||||
| (define-public emacs-el-mock | ||||
|   (package | ||||
|  | @ -2272,6 +2277,8 @@ mode-line.") | |||
|         (base32 | ||||
|          "1vp45y99fwj88z04ah4yppz4z568qcib646az6m9az5ar0f203br")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (arguments | ||||
|      '(#:include (cons "^lib\\/" %default-include))) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-inf-ruby" ,emacs-inf-ruby))) | ||||
|     (home-page "https://github.com/dgutov/robe") | ||||
|  | @ -2432,7 +2439,7 @@ Tracker as well as bug identifiers prepared for @code{bug-reference-mode}.") | |||
| (define-public emacs-deferred | ||||
|   (package | ||||
|     (name "emacs-deferred") | ||||
|     (version "0.3.2") | ||||
|     (version "0.5.1") | ||||
|     (home-page "https://github.com/kiwanami/emacs-deferred") | ||||
|     (source (origin | ||||
|               (method git-fetch) | ||||
|  | @ -2441,7 +2448,7 @@ Tracker as well as bug identifiers prepared for @code{bug-reference-mode}.") | |||
|                     (commit (string-append "v" version)))) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0059jy01ni5irpgrj9fa81ayd9j25nvmjjm79ms3210ysx4pgqdr")) | ||||
|                 "0xy9zb6wwkgwhcxdnslqk52bq3z24chgk6prqi4ks0qcf2bwyh5h")) | ||||
|               (file-name (string-append name "-" version)))) | ||||
|     (build-system emacs-build-system) | ||||
|     ;; FIXME: Would need 'el-expectations' to actually run tests. | ||||
|  | @ -3517,7 +3524,7 @@ S-expression.") | |||
| (define-public emacs-clojure-mode | ||||
|   (package | ||||
|     (name "emacs-clojure-mode") | ||||
|     (version "5.4.0") | ||||
|     (version "5.6.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -3526,7 +3533,7 @@ S-expression.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "117mvjqh4nm8mvmwmmvy4qmkdg23ldlzk08y91g8b8ac8kxwqg81")))) | ||||
|                 "1f4k1hncy5ygh4izn7mqfp744nnisrp9ywn2njknbjxx34ai1q88")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (native-inputs | ||||
|      `(("emacs-dash" ,emacs-dash) | ||||
|  | @ -4504,14 +4511,14 @@ passive voice.") | |||
|     (name "emacs-org") | ||||
|     ;; emacs-org-contrib inherits from this package.  Please update its sha256 | ||||
|     ;; checksum as well. | ||||
|     (version "20180226") | ||||
|     (version "20180327") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://orgmode.org/elpa/org-" | ||||
|                                   version ".tar")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0jqvry6gah1bwnryha4asynj13jyds3qim0xcy7s01rxk99m2ziy")))) | ||||
|                 "0xmlzlxf15996sd3gj3naiz383d17ngjd9963p4h9kssrkjlwljy")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (home-page "https://orgmode.org/") | ||||
|     (synopsis "Outline-based notes management and organizer") | ||||
|  | @ -4531,7 +4538,7 @@ reproducible research.") | |||
|                                   (package-version emacs-org) ".tar")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "034wp70hcqnpidji5k1k80mj35iyyy098nbvc2sl7i2aca4m03zc")))) | ||||
|                 "1nqn7m1x9w5y356ylv5hia6v62pqfz9g3rzjbiffjxyyc34xvpfm")))) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build emacs-build-system) | ||||
|                   (guix build utils) | ||||
|  | @ -5715,14 +5722,14 @@ which code derived from Kelvin H's org-page.") | |||
| (define-public emacs-xelb | ||||
|   (package | ||||
|     (name "emacs-xelb") | ||||
|     (version "0.12") | ||||
|     (version "0.14") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://elpa.gnu.org/packages/xelb-" | ||||
|                                   version ".tar")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0i9n0f3ibj4a5pwcsvwrah9m0fz32m0x6a9wsmjn3li20v8pcb81")))) | ||||
|                 "09flnbjy9ck784kprz036rwg9qk45hpv0w5hz3pz3zhwyk57fv74")))) | ||||
|     (build-system emacs-build-system) | ||||
|     ;; The following functions and variables needed by emacs-xelb are | ||||
|     ;; not included in emacs-minimal: | ||||
|  | @ -5754,7 +5761,7 @@ It should enable you to implement low-level X11 applications.") | |||
| (define-public emacs-exwm | ||||
|   (package | ||||
|     (name "emacs-exwm") | ||||
|     (version "0.16") | ||||
|     (version "0.18") | ||||
|     (synopsis "Emacs X window manager") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -5762,7 +5769,7 @@ It should enable you to implement low-level X11 applications.") | |||
|                                   version ".tar")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0c4w5k9lzqj8yzhdqipdb4fs7ld2qklc6s137104jnfdvmrwcv2i")))) | ||||
|                 "1shz5bf4v4gg3arjaaldics5qkg3aiiaf3ngys8lb6qyxhcpvh6q")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-xelb" ,emacs-xelb))) | ||||
|  | @ -5845,7 +5852,7 @@ other operations.") | |||
| (define-public emacs-exwm-x | ||||
|   (package | ||||
|     (name "emacs-exwm-x") | ||||
|     (version "1.7.2") | ||||
|     (version "1.8.1") | ||||
|     (synopsis "Derivative window manager based on EXWM") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -5855,7 +5862,7 @@ other operations.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1ny13i82fb72917jgl0ndwjg1x6l9f8gfhcx7cwlwhh5saq23mvy")))) | ||||
|                 "0ali1100aacq4zbvcck80h51pvw204jlxhn4aikkqq4ngbx03kkr")))) | ||||
|     (build-system emacs-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("emacs-exwm" ,emacs-exwm) | ||||
|  |  | |||
|  | @ -980,14 +980,14 @@ SPI, I2C, JTAG.") | |||
| (define-public fc-host-tools | ||||
|   (package | ||||
|     (name "fc-host-tools") | ||||
|     (version "7") | ||||
|     (version "8") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "ftp://ftp.freecalypso.org/pub/GSM/" | ||||
|                                   "FreeCalypso/fc-host-tools-r" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0j0qh5m2irgdf4v9n4yhfdfqz9k8q27k0rx9m0xqc0ckbrih8d9r")))) | ||||
|                 "00kl9442maaxnsjvl5qc4c6fzjkgr3hac9ax1z2k6ry6byfknj6z")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f                      ; No tests exist. | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ | |||
| ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> | ||||
| ;;; Copyright © 2017 David Craven <david@craven.ch> | ||||
| ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
|  | @ -24,6 +24,7 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix utils) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (gnu packages) | ||||
|  | @ -33,6 +34,7 @@ | |||
|   #:use-module (gnu packages cmake) | ||||
|   #:use-module (gnu packages cross-base) | ||||
|   #:use-module (gnu packages flex) | ||||
|   #:use-module (gnu packages gcc) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages perl) | ||||
|   #:use-module (gnu packages python)) | ||||
|  | @ -309,3 +311,96 @@ coreboot.") | |||
| Virtual Machines.  OVMF contains a sample UEFI firmware for QEMU and KVM.") | ||||
|     (license (list license:expat | ||||
|                    license:bsd-2 license:bsd-3 license:bsd-4)))) | ||||
| 
 | ||||
| (define* (make-arm-trusted-firmware platform #:optional (arch "aarch64")) | ||||
|   (package | ||||
|     (name (string-append "arm-trusted-firmware-" platform)) | ||||
|     (version "1.5") | ||||
|     (source | ||||
|       (origin | ||||
|         (method git-fetch) | ||||
|         (uri (git-reference | ||||
|                ;; There are only GitHub generated release snapshots. | ||||
|                (url "https://github.com/ARM-software/arm-trusted-firmware.git") | ||||
|                (commit (string-append "v" version)))) | ||||
|         (file-name (git-file-name "arm-trusted-firmware" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1gm0bn2llzfzz9bfsz11fhwxj5lxvyrq7bc13fjj033nljzxn7k8")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure) ; no configure script | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out")) | ||||
|                    (bin (find-files "." ".*\\.bin$"))) | ||||
|                (for-each | ||||
|                  (lambda (file) | ||||
|                    (install-file file out)) | ||||
|                  bin)) | ||||
|              #t))) | ||||
|        #:make-flags (list (string-append "PLAT=" ,platform) | ||||
|                           ,@(if (and (not (string-prefix? "aarch64" | ||||
|                                                           (%current-system))) | ||||
|                                      (string-prefix? "aarch64" arch)) | ||||
|                               `("CROSS_COMPILE=aarch64-linux-gnu-") | ||||
|                               '()) | ||||
|                           ,@(if (and (not (string-prefix? "armhf" | ||||
|                                                           (%current-system))) | ||||
|                                      (string-prefix? "armhf" arch)) | ||||
|                               `("CROSS_COMPILE=arm-linux-gnueabihf-") | ||||
|                               '()) | ||||
|                           "DEBUG=1") | ||||
|        #:tests? #f)) ; no tests | ||||
|     (native-inputs | ||||
|      `(,@(if (and (not (string-prefix? "aarch64" (%current-system))) | ||||
|                   (string-prefix? "aarch64" arch)) | ||||
|            ;; gcc-7 since it is used for u-boot, which needs gcc-7. | ||||
|            `(("cross-gcc" ,(cross-gcc "aarch64-linux-gnu" #:xgcc gcc-7)) | ||||
|              ("cross-binutils" ,(cross-binutils "aarch64-linux-gnu"))) | ||||
|            '()) | ||||
|        ,@(if (and (not (string-prefix? "armhf" (%current-system))) | ||||
|                   (string-prefix? "armhf" arch)) | ||||
|            ;; gcc-7 since it is used for u-boot, which needs gcc-7. | ||||
|            `(("cross-gcc" ,(cross-gcc "arm-linux-gnueabihf" #:xgcc gcc-7)) | ||||
|              ("cross-binutils" ,(cross-binutils "arm-linux-gnueabihf"))) | ||||
|            '()) | ||||
|         )) | ||||
|     (home-page "https://github.com/ARM-software/arm-trusted-firmware") | ||||
|     (synopsis "Implementation of \"secure world software\"") | ||||
|     (description | ||||
|      "ARM Trusted Firmware provides a reference implementation of secure world | ||||
| software for ARMv7A and ARMv8-A, including a Secure Monitor executing at | ||||
| @dfn{Exception Level 3} (EL3).  It implements various ARM interface standards, | ||||
| such as: | ||||
| @enumerate | ||||
| @item The Power State Coordination Interface (PSCI) | ||||
| @item Trusted Board Boot Requirements (TBBR, ARM DEN0006C-1) | ||||
| @item SMC Calling Convention | ||||
| @item System Control and Management Interface | ||||
| @item Software Delegated Exception Interface (SDEI) | ||||
| @end enumerate\n") | ||||
|     (license (list license:bsd-3 | ||||
|                    license:bsd-2)))) ; libfdt | ||||
| 
 | ||||
| (define-public arm-trusted-firmware-pine64-plus | ||||
|   (let ((base (make-arm-trusted-firmware "sun50iw1p1")) | ||||
|         ;; Vendor's arm trusted firmware branch hasn't been upstreamed yet. | ||||
|         (commit "ae78724247a01560164d607ed66db111c74d8df0") | ||||
|         (revision "1")) | ||||
|     (package | ||||
|       (inherit base) | ||||
|       (name "arm-trusted-firmware-pine64-plus") | ||||
|       (version (string-append "1.2-" revision "." (string-take commit 7))) | ||||
|       (source | ||||
|         (origin | ||||
|           (method git-fetch) | ||||
|           (uri (git-reference | ||||
|                  (url "https://github.com/apritzel/arm-trusted-firmware.git") | ||||
|                  (commit commit))) | ||||
|           (file-name (git-file-name name version)) | ||||
|           (sha256 | ||||
|            (base32 | ||||
|             "0r4xnlq7v9khjfcg6gqp7nmrmnw4z1r8bipwdr07png1dcbb8214"))))))) | ||||
|  |  | |||
|  | @ -48,6 +48,7 @@ | |||
| (define-public flashrom | ||||
|   (package | ||||
|     (name "flashrom") | ||||
|     ;; XXX: The CFLAGS=... line below can probably be removed when updating. | ||||
|     (version "1.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -64,9 +65,13 @@ | |||
|               ("libftdi" ,libftdi))) | ||||
|     (native-inputs `(("pkg-config" ,pkg-config))) | ||||
|     (arguments | ||||
|      '(#:make-flags (list "CC=gcc" | ||||
|                           (string-append "PREFIX=" %output) | ||||
|                           "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") | ||||
|      '(#:make-flags | ||||
|        (list "CC=gcc" | ||||
|              ;; The default includes ‘-Wall -Werror’, causing the build to fail | ||||
|              ;; with deprecation warnings against libusb versions >= 1.0.22. | ||||
|              "CFLAGS=-Os -Wshadow" | ||||
|              (string-append "PREFIX=" %output) | ||||
|              "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") | ||||
|        #:tests? #f                      ; no 'check' target | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ | |||
| ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> | ||||
| ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org> | ||||
| ;;; Copyright © 2018 Charlie Ritter <chewzerita@posteo.net> | ||||
| ;;; | ||||
|  | @ -198,33 +198,12 @@ sans-serif designed for on-screen reading.  It is used by GNOME@tie{}3.") | |||
|     (name "font-lato") | ||||
|     (version "2.010") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (method url-fetch/zipbomb) | ||||
|               (uri (string-append "http://www.latofonts.com/download/Lato2OFL.zip")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1f5540g0ja1nx3ddd3ywn77xc81ssrxpq8n3gyb9sabyq2b4xda2")))) | ||||
|     (build-system trivial-build-system) | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder (begin | ||||
|                    (use-modules (guix build utils) | ||||
|                                 (srfi srfi-26)) | ||||
| 
 | ||||
|                    (let ((PATH     (string-append (assoc-ref %build-inputs | ||||
|                                                              "unzip") | ||||
|                                                   "/bin")) | ||||
|                          (font-dir (string-append %output | ||||
|                                                   "/share/fonts/truetype"))) | ||||
|                      (setenv "PATH" PATH) | ||||
|                      (invoke "unzip" (assoc-ref %build-inputs "source")) | ||||
| 
 | ||||
|                      (mkdir-p font-dir) | ||||
|                      (for-each (lambda (ttf) | ||||
|                                  (install-file ttf font-dir)) | ||||
|                                (find-files "." "\\.ttf$")) | ||||
|                      #t)))) | ||||
| 
 | ||||
|     (native-inputs `(("unzip" ,unzip))) | ||||
|     (build-system font-build-system) | ||||
|     (home-page "http://www.latofonts.com/lato-free-fonts/") | ||||
|     (synopsis "Lato sans-serif typeface") | ||||
|     (description | ||||
|  | @ -327,37 +306,24 @@ The Liberation Fonts are sponsored by Red Hat.") | |||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0x7cz6hvhpil1rh03rax9zsfzm54bh7r4bbrq8rz673gl9h47v0v")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (build-system font-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; there are no tests | ||||
|        #:modules ((guix build utils) | ||||
|                   (guix build gnu-build-system) | ||||
|                   (srfi srfi-1) | ||||
|                   (srfi srfi-26)) | ||||
|        #:phases | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure) | ||||
|          (replace 'build | ||||
|          (add-before 'install 'build | ||||
|            (lambda _ | ||||
|              (let ((compile | ||||
|                     (lambda (name ext) | ||||
|                       (zero? (system* | ||||
|                               "fontforge" "-lang=ff" | ||||
|                               "-c" (string-append "Open('" name "');" | ||||
|                                                   "Generate('" | ||||
|                                                   (basename name "sfd") ext | ||||
|                                                   "')")))))) | ||||
|                (every (lambda (name) | ||||
|                         (and (compile name "ttf") | ||||
|                              (compile name "otf"))) | ||||
|                       (find-files "." "\\.sfd$"))))) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((font-dir (string-append (assoc-ref outputs "out") | ||||
|                                             "/share/fonts/truetype"))) | ||||
|                (mkdir-p font-dir) | ||||
|                (for-each (cut install-file <> font-dir) | ||||
|                          (find-files "." "\\.(otf|ttf)$")) | ||||
|                       (invoke | ||||
|                        "fontforge" "-lang=ff" | ||||
|                        "-c" (string-append "Open('" name "');" | ||||
|                                            "Generate('" | ||||
|                                            (basename name "sfd") ext | ||||
|                                            "')"))))) | ||||
|                (for-each (lambda (name) | ||||
|                            (and (compile name "ttf") | ||||
|                                 (compile name "otf"))) | ||||
|                          (find-files "." "\\.sfd$")) | ||||
|                #t)))))) | ||||
|     (native-inputs | ||||
|      `(("fontforge" ,fontforge))) | ||||
|  | @ -1226,62 +1192,40 @@ It comes in 7 incremental weights: | |||
| ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold") | ||||
|     (license license:silofl1.1))) | ||||
| 
 | ||||
| (define-public culmus | ||||
| (define-public font-culmus | ||||
|   (package | ||||
|     (name "culmus") | ||||
|     (name "font-culmus") | ||||
|     (version "0.132") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (string-append "https://sourceforge.net/projects/" | ||||
|                             "culmus/files/culmus/" version "/culmus-src-" | ||||
|                             version ".tar.gz")) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "1djxalm26r7bcq33ckmfa15xfs6pmqzvcl64d5lqa1dl01bl4j4z")))) | ||||
|     (build-system gnu-build-system) | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://sourceforge.net/projects/" | ||||
|                            "culmus/files/culmus/" version "/culmus-src-" | ||||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1djxalm26r7bcq33ckmfa15xfs6pmqzvcl64d5lqa1dl01bl4j4z")))) | ||||
|     (build-system font-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; no tests | ||||
|        #:modules ((guix build utils) | ||||
|                   (guix build gnu-build-system) | ||||
|                   (srfi srfi-1) | ||||
|                   (srfi srfi-26)) | ||||
|        #:phases | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'configure) | ||||
|          (replace 'build | ||||
|          (add-before 'install 'build | ||||
|            (lambda _ | ||||
|              (let ((compile | ||||
|                     (lambda (name ext) | ||||
|                       (zero? (system* | ||||
|                               "fontforge" "-lang=ff" | ||||
|                               "-c" (string-append "Open('" name "');" | ||||
|                                                   "Generate('" | ||||
|                                                   (basename name "sfd") ext | ||||
|                                                   "')")))))) | ||||
|                       (invoke | ||||
|                        "fontforge" "-lang=ff" | ||||
|                        "-c" (string-append "Open('" name "');" | ||||
|                                            "Generate('" | ||||
|                                            (basename name "sfd") ext | ||||
|                                            "')"))))) | ||||
|                ;; This part based on the fonts shipped in the non-source package. | ||||
|                (every (lambda (name) | ||||
|                         (compile name "ttf")) | ||||
|                       (find-files "." "^[^Nachlieli].*\\.sfd$")) | ||||
|                (every (lambda (name) | ||||
|                         (compile name "otf")) | ||||
|                       (find-files "." "^Nachlieli.*\\.sfd$")) | ||||
|                #t))) | ||||
|          (replace 'install | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out     (assoc-ref %outputs "out")) | ||||
|                     (ttf     (string-append out "/share/fonts/truetype")) | ||||
|                     (otf     (string-append out "/share/fonts/opentype")) | ||||
|                     (license (string-append out "/share/doc/" ,name))) | ||||
|                (for-each (lambda (file) | ||||
|                            (install-file file ttf)) | ||||
|                          (find-files "." "\\.ttf$")) | ||||
|                (for-each (lambda (file) | ||||
|                            (install-file file otf)) | ||||
|                          (find-files "." "\\.otf$")) | ||||
|                (for-each (lambda (file) | ||||
|                            (install-file file license)) | ||||
|                          '("GNU-GPL" "LICENSE" "LICENSE-BITSTREAM")) | ||||
|                (for-each (lambda (name) | ||||
|                            (compile name "ttf")) | ||||
|                          (find-files "." "^[^Nachlieli].*\\.sfd$")) | ||||
|                (for-each (lambda (name) | ||||
|                            (compile name "otf")) | ||||
|                          (find-files "." "^Nachlieli.*\\.sfd$")) | ||||
|                #t)))))) | ||||
|     (native-inputs | ||||
|      `(("fontforge" ,fontforge))) | ||||
|  | @ -1293,3 +1237,24 @@ serif (Nachlieli) and monospaced (Miriam Mono) trivials.  Also included Miriam, | |||
| Drugulin, Aharoni, David, Hadasim etc.  Cantillation marks support is | ||||
| available in Keter YG.") | ||||
|     (license license:gpl2))) ; consult the LICENSE file included | ||||
| 
 | ||||
| (define-public font-lohit | ||||
|   (package | ||||
|     (name "font-lohit") | ||||
|     (version "20140220") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://releases.pagure.org/lohit/lohit-ttf-" | ||||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1rmgr445hw1n851ywy28csfvswz1i6hnc8mzp88qw2xk9j4dn32d")))) | ||||
|     (build-system font-build-system) | ||||
|     (home-page "https://pagure.io/lohit") | ||||
|     (synopsis "Lohit TrueType Indic fonts") | ||||
|     (description "Lohit is a font family designed to cover Indic scripts. | ||||
| Lohit supports the Assamese, Bengali, Devanagari (Hindi, Kashmiri, Konkani, | ||||
| Maithili, Marathi, Nepali, Sindhi, Santali, Bodo, Dogri languages), Gujarati, | ||||
| Kannada, Malayalam, Manipuri, Oriya, Punjabi, Tamil and Telugu scripts.") | ||||
|     (license license:silofl1.1))) | ||||
|  |  | |||
|  | @ -1,6 +1,7 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2014 Marek Benc <merkur32@gmail.com> | ||||
| ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -26,7 +27,7 @@ | |||
| (define-public fribidi | ||||
|   (package | ||||
|     (name "fribidi") | ||||
|     (version "1.0.1") | ||||
|     (version "1.0.2") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|  | @ -35,9 +36,11 @@ | |||
|                         "/download/v" version "/fribidi-" version | ||||
|                          ".tar.bz2")) | ||||
|         (sha256 | ||||
|           (base32 "1r3ll7apx4b8bhvdkwi71y06df9kvr4q3asvajswvdlh0pbq5cf1")))) | ||||
| 
 | ||||
|           (base32 "0aw3i1g96axbr96flw4543dvhb8zlgb0w8314ks6cq2g1i9invdx")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list "--disable-docs")))        ; TODO: enable; requires c2man | ||||
|     (synopsis "Implementation of the Unicode bidirectional algorithm") | ||||
|     (description | ||||
|      "GNU FriBidi is an implementation of the Unicode Bidirectional | ||||
|  |  | |||
|  | @ -206,7 +206,7 @@ output. | |||
| (define-public filezilla | ||||
|   (package | ||||
|     (name "filezilla") | ||||
|     (version "3.29.0") | ||||
|     (version "3.31.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -215,7 +215,7 @@ output. | |||
|                            "/FileZilla_" version "_src" ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0najf2w6p5j4qc8jmglx6j63mph749s5p90lz2nkmwwwy5sfvlga")))) | ||||
|          "1rfysb8dil35a7bzj2kw0mzzkys39d7yn6ipsbk8l6rkwfvnii8l")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|       ;; Don't let filezilla phone home to check for updates. | ||||
|  |  | |||
|  | @ -24,7 +24,7 @@ | |||
| ;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com> | ||||
| ;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info> | ||||
| ;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017 nee <nee-git@hidamari.blue> | ||||
| ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
|  | @ -4781,7 +4781,7 @@ You can save humanity and get programming skills!") | |||
| (define-public gzdoom | ||||
|   (package | ||||
|     (name "gzdoom") | ||||
|     (version "3.2.5") | ||||
|     (version "3.3.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri | ||||
|  | @ -4789,7 +4789,7 @@ You can save humanity and get programming skills!") | |||
|                               version ".zip")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1164d1zf5in98gp4j981ml3hwmks3q7vzfanlqpjlx2c09jmlv0q")) | ||||
|                 "09a4kx3ry8pc9r578m7yprwa7zsdqxjpn10lyc92r5g9sx4l1m1a")) | ||||
|               (patches (search-patches "gzdoom-search-in-installed-share.patch")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|  |  | |||
|  | @ -725,7 +725,7 @@ forgotten when the session ends.") | |||
| (define-public evince | ||||
|   (package | ||||
|     (name "evince") | ||||
|     (version "3.26.0") | ||||
|     (version "3.28.0") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -733,7 +733,7 @@ forgotten when the session ends.") | |||
|                                  name "-" version ".tar.xz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1n69lkiagx2x8lrdbvdlz6c051cvzhma73b3ggnw7w1wfkdpnmkr")))) | ||||
|                "1a3kcls18dcz1lj8hrx8skcli9xxfyi71c17xjwayh71cm5jc8zs")))) | ||||
|     (build-system glib-or-gtk-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("--disable-nautilus") | ||||
|  | @ -772,6 +772,11 @@ forgotten when the session ends.") | |||
|        ("dconf" ,dconf) | ||||
|        ("libcanberra" ,libcanberra) | ||||
|        ("libsecret" ,libsecret) | ||||
| 
 | ||||
|        ;; XXX: 'libarchive.pc' adds '-lnettle' so Nettle should really be | ||||
|        ;; propagated from there. | ||||
|        ("nettle" ,nettle) | ||||
| 
 | ||||
|        ;; For tests. | ||||
|        ("dogtail" ,python2-dogtail))) | ||||
|     (native-inputs | ||||
|  | @ -3127,7 +3132,7 @@ playlists in a variety of formats.") | |||
| (define-public aisleriot | ||||
|   (package | ||||
|     (name "aisleriot") | ||||
|     (version "3.22.4") | ||||
|     (version "3.22.5") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -3135,7 +3140,7 @@ playlists in a variety of formats.") | |||
|                                   name "-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1yrldsf73rd5p51dsxgbx1hmrakq0x0jc2kl6y6pgaviswxfx3gy")))) | ||||
|                 "0rl39psr5xi584310pyrgw36ini4wn7yr2m1q5118w3a3v1dkhzh")))) | ||||
|     (build-system glib-or-gtk-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags | ||||
|  | @ -3347,7 +3352,7 @@ presentations, kiosk style applications and so on.") | |||
| (define-public clutter-gst | ||||
|   (package | ||||
|     (name "clutter-gst") | ||||
|     (version "3.0.24") | ||||
|     (version "3.0.26") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -3356,7 +3361,7 @@ presentations, kiosk style applications and so on.") | |||
|                            name "-" version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0v6cg0syh4vx7y7ni47jsvr2r57q0j3h1f1gjlp0ciscixywiwg9")))) | ||||
|          "0fnblqm4igdx4rn3681bp1gm1y2i00if3iblhlm0zv6ck9nqlqfq")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("glib:bin" ,glib "bin")     ; for glib-mkenums | ||||
|  | @ -3482,7 +3487,7 @@ GNOME Games, but it may be used by others.") | |||
| (define-public gnome-klotski | ||||
|   (package | ||||
|     (name "gnome-klotski") | ||||
|     (version "3.22.2") | ||||
|     (version "3.22.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -3490,7 +3495,7 @@ GNOME Games, but it may be used by others.") | |||
|                                   name "-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "16hd6yk01rhb4pj8m01fyn72wykf41d72gsms81q0n4zm5bm1a4h")))) | ||||
|                 "0prc0s28pdflgzyvk1g0yfx982q2grivmz3858nwpqmbkha81r7f")))) | ||||
|     (build-system glib-or-gtk-build-system) | ||||
|     (native-inputs | ||||
|      `(("desktop-file-utils" ,desktop-file-utils) | ||||
|  | @ -4357,7 +4362,7 @@ wraps things up in a developer-friendly way.") | |||
| (define-public libgee | ||||
|   (package | ||||
|     (name "libgee") | ||||
|     (version "0.20.0") | ||||
|     (version "0.20.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -4365,7 +4370,7 @@ wraps things up in a developer-friendly way.") | |||
|                                   name "-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1fy24dr8imrjlmsqj1syn0gi139gba6hwk3j5vd6sr3pxniqnc11")))) | ||||
|                 "0c26x8gi3ivmhlbqcmiag4jwrkvcy28ld24j55nqr3jikb904a5v")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -4394,7 +4399,7 @@ classes for commonly used data structures.") | |||
| (define-public gexiv2 | ||||
|   (package | ||||
|     (name "gexiv2") | ||||
|     (version "0.10.7") | ||||
|     (version "0.10.8") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -4402,7 +4407,7 @@ classes for commonly used data structures.") | |||
|                                   name "-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1f7312zygw77ml37i5qilhfvmjm59dn753ax71rcb2jm1p76vgcb")))) | ||||
|                 "0088m7p044n741ly1m6i7w25z513h9wpgyw0rmx5f0sy3vyjiic1")))) | ||||
|     (build-system meson-build-system) | ||||
|     (native-inputs | ||||
|      `(("glib" ,glib "bin") | ||||
|  | @ -5659,7 +5664,7 @@ as SASL, TLS and VeNCrypt.  Additionally it supports encoding extensions.") | |||
| (define-public gnome-autoar | ||||
|   (package | ||||
|     (name "gnome-autoar") | ||||
|     (version "0.2.2") | ||||
|     (version "0.2.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://gnome/sources/" name "/" | ||||
|  | @ -5667,7 +5672,7 @@ as SASL, TLS and VeNCrypt.  Additionally it supports encoding extensions.") | |||
|                                   name "-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0qnafiwgajsaryh669lfclb4f6z5n1r9r4zhig1ha0ykxq32rzp1")))) | ||||
|                 "02i4zgqqqj56h7bcys6dz7n78m4nj2x4dv1ggjmnrk98n06xpsax")))) | ||||
|     (build-system glib-or-gtk-build-system) | ||||
|     (native-inputs | ||||
|      `(("gnome-common" ,gnome-common) | ||||
|  |  | |||
|  | @ -569,7 +569,7 @@ signing, decryption, verification, and key-listing parsing.") | |||
| (define-public pius | ||||
|   (package | ||||
|    (name "pius") | ||||
|    (version "2.2.4") | ||||
|    (version "2.2.6") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append | ||||
|  | @ -577,7 +577,7 @@ signing, decryption, verification, and key-listing parsing.") | |||
|                   version "/pius-" version ".tar.bz2")) | ||||
|             (sha256 | ||||
|              (base32 | ||||
|               "0lgc0ipwdfqbq16zax8kn17wbv8xyw4ygc09fawl2yp459z0ql4n")))) | ||||
|               "1893hzpx3zv724drqv48csrn0cm98xw4ymb1zmhs2jvjj1778zfj")))) | ||||
|    (build-system python-build-system) | ||||
|    (inputs `(("perl" ,perl)                ;for 'pius-party-worksheet' | ||||
|              ("gpg" ,gnupg))) | ||||
|  | @ -934,7 +934,7 @@ over.") | |||
| (define-public jetring | ||||
|   (package | ||||
|     (name "jetring") | ||||
|     (version "0.25") | ||||
|     (version "0.27") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|  | @ -942,7 +942,7 @@ over.") | |||
|                             name "_" version ".tar.xz")) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "0shcnnw0h31b08vmnvf18ni33dg40w18wv9smb69vkklz3h4jhpw")))) | ||||
|           "0jy0x5zj7v87xgyldlsx1knzp0mv10wzamblrw1b61i2m1ii4pxz")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  |  | |||
|  | @ -457,7 +457,8 @@ security standards.") | |||
|         (mozilla-patch "icecat-CVE-2018-5125-pt9.patch"  "8a16f439117c" "108iarql6z7h1r4rlzac6n6lrzs78x7kcdbfa0b5dbr5xc66jmgb") | ||||
|         (mozilla-patch "icecat-bug-1426603.patch"        "ca0b92ecedee" "0dc3mdl4a3hrq4j384zjavf3splj6blv4masign710hk7svlgbhq") | ||||
|         (mozilla-patch "icecat-CVE-2018-5146.patch"      "494e5d5278ba" "1yb4lxjw499ppwhk31vz0vzl0cfqvj9d4jwqag7ayj53ybwsqgjr") | ||||
|         (mozilla-patch "icecat-CVE-2018-5147.patch"      "5cd5586a2f48" "10s774pwvj6xfk3kk6ivnhp2acc8x9sqq6na8z47nkhgwl2712i5"))) | ||||
|         (mozilla-patch "icecat-CVE-2018-5147.patch"      "5cd5586a2f48" "10s774pwvj6xfk3kk6ivnhp2acc8x9sqq6na8z47nkhgwl2712i5") | ||||
|         (mozilla-patch "icecat-CVE-2018-5148.patch"      "c3e447e07077" "0gmwy631f8ip4gr1mpbjk8bx1n1748wdls5zq4y8hpmpnq5g1wyx"))) | ||||
|       (modules '((guix build utils))) | ||||
|       (snippet | ||||
|        '(begin | ||||
|  |  | |||
|  | @ -1,6 +1,7 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -207,14 +208,14 @@ lines.") | |||
| (define-public python-plotly | ||||
|   (package | ||||
|     (name "python-plotly") | ||||
|     (version "2.4.0") | ||||
|     (version "2.4.1") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|         (uri (pypi-uri "plotly" version)) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "0n18116jz6bl5n9cq23vabv1gcbh1x3yficdnfq55v0z4cwy0zlf")))) | ||||
|           "0s9gk2fl53x8wwncs3fwii1vzfngr0sskv15v3mpshqmrqfrk27m")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f)) ; The tests are not distributed in the release | ||||
|  |  | |||
|  | @ -115,13 +115,13 @@ interfaces for other technical domains.") | |||
| (define-public python-graphviz | ||||
|   (package | ||||
|     (name "python-graphviz") | ||||
|     (version "0.8.1") | ||||
|     (version "0.8.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "graphviz" version ".zip")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "00rzqsmq25b0say05vix5xivchdvsv83jl2i8pkryqd0nz4bxzvb")))) | ||||
|                 "148h7ln8z65c1723w9vpx8khkvl9iigh8csv0qd4pidc53042rv0")))) | ||||
|     (build-system python-build-system) | ||||
|     (native-inputs | ||||
|      `(("unzip" ,unzip))) | ||||
|  |  | |||
|  | @ -1572,6 +1572,8 @@ glass artworks done by Venicians glass blowers.") | |||
|        ("gobject-introspection" ,gobject-introspection) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("pango" ,pango))) | ||||
|     (propagated-inputs | ||||
|      `(("enchant" ,enchant))) ; gtkspell3-3.0.pc refers to it. | ||||
|     (home-page "http://gtkspell.sourceforge.net") | ||||
|     (synopsis "Spell-checking addon for GTK's TextView widget") | ||||
|     (description | ||||
|  |  | |||
|  | @ -36,7 +36,6 @@ | |||
| (define-module (gnu packages guile) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages admin) ;;for tree | ||||
|   #:use-module (gnu packages aspell) | ||||
|   #:use-module (gnu packages bash) | ||||
|   #:use-module (gnu packages bdw-gc) | ||||
|  |  | |||
|  | @ -257,7 +257,7 @@ the C implementation.") | |||
| (define-public ghc-cryptonite | ||||
|   (package | ||||
|     (name "ghc-cryptonite") | ||||
|     (version "0.20") | ||||
|     (version "0.25") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://hackage.haskell.org/package/" | ||||
|  | @ -265,10 +265,11 @@ the C implementation.") | |||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0m63np0affci7ba9mrkvw2flzxn0s2mk930xldc4dwijw32gl6r6")))) | ||||
|                 "131wbbdr5yavs5k1ah9sz6fqx1ffyvaxf66pwjzsfc47mwc1mgl9")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (inputs | ||||
|      `(("ghc-memory" ,ghc-memory) | ||||
|      `(("ghc-basement" ,ghc-basement) | ||||
|        ("ghc-memory" ,ghc-memory) | ||||
|        ("ghc-byteable" ,ghc-byteable))) | ||||
|     (native-inputs | ||||
|      `(("ghc-tasty" ,ghc-tasty) | ||||
|  |  | |||
|  | @ -1082,7 +1082,7 @@ specify refactorings without depending on GHC.") | |||
| (define-public hlint | ||||
|   (package | ||||
|     (name "hlint") | ||||
|     (version "2.1") | ||||
|     (version "2.1.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -1091,7 +1091,7 @@ specify refactorings without depending on GHC.") | |||
|              "/" name "-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "13chm0dhh1fn2iy3flnh7ahc3yzh8q0v10qxwd1739sywhykayg9")))) | ||||
|          "0mmfavd158l5ig5wb1b1zbhbraj8hhqvbk4mg85n6c8ndpr4grd4")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (inputs | ||||
|      `(("cpphs" ,cpphs) | ||||
|  | @ -5840,15 +5840,18 @@ Damerau-Levenshtein algorithms.") | |||
| (define-public ghc-memory | ||||
|   (package | ||||
|     (name "ghc-memory") | ||||
|     (version "0.13") | ||||
|     (version "0.14.16") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://hackage.haskell.org/package/" | ||||
|                                   "memory/memory-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "02l742qxjqy3jw1a347gb7sn7pn7a5qha1vzi2qqbvgafcjn0wyw")))) | ||||
|                 "03rbszi5d4z9rlbfv8ydrl1xf84xsh8z57g07f7j9qccn9587c3v")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (inputs | ||||
|      `(("ghc-basement" ,ghc-basement) | ||||
|        ("ghc-foundation" ,ghc-foundation))) | ||||
|     (native-inputs | ||||
|      `(("ghc-tasty" ,ghc-tasty) | ||||
|        ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) | ||||
|  | @ -6457,39 +6460,6 @@ constant-time: | |||
| data quickly and efficiently, using the ByteString type.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-binary | ||||
|   (package | ||||
|     (name "ghc-binary") | ||||
|     (version "0.8.5.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/binary/binary-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "15h5zqfw7xmcimvlq6bs8f20vxlfvz7g411fns5z7212crlimffy")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags (list "--allow-newer=QuickCheck"))) | ||||
|     (native-inputs | ||||
|      `(("ghc-random" ,ghc-random) | ||||
|        ("ghc-test-framework" ,ghc-test-framework) | ||||
|        ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) | ||||
|        ("ghc-quickcheck" ,ghc-quickcheck) | ||||
|        ("ghc-hunit" ,ghc-hunit))) | ||||
|     (home-page "https://github.com/kolmodin/binary") | ||||
|     (synopsis | ||||
|      "Binary serialisation for Haskell values using lazy ByteStrings") | ||||
|     (description | ||||
|      "Efficient, pure binary serialisation using lazy ByteStrings.  Haskell values | ||||
| may be encoded to and from binary formats, written to disk as binary, or sent over | ||||
| the network.  The format used can be automatically generated, or you can choose to | ||||
| implement a custom format if needed.  Serialisation speeds of over 1 G\\/sec have | ||||
| been observed, so this library should be suitable for high performance scenarios.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-data-ordlist | ||||
|   (package | ||||
|     (name "ghc-data-ordlist") | ||||
|  | @ -6510,34 +6480,6 @@ been observed, so this library should be suitable for high performance scenarios | |||
|      "This module provides set and multiset operations on ordered lists.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-haskeline | ||||
|   (package | ||||
|     (name "ghc-haskeline") | ||||
|     (version "0.7.4.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/haskeline/haskeline-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1sxhdhy9asinxn0gvd4zandbk6xkb04vy1y7lmh66f9jv66fqhsm")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags (list "-fterminfo"))) | ||||
|     (inputs | ||||
|      `(("ncurses" ,ncurses) | ||||
|        ("ghc-stm" ,ghc-stm))) | ||||
|     (home-page "https://github.com/judah/haskeline") | ||||
|     (synopsis "Command-line interface for user input") | ||||
|     (description | ||||
|      "Haskeline provides a user interface for line input in command-line | ||||
| programs.  This library is similar in purpose to readline, but since it | ||||
| is written in Haskell it is (hopefully) more easily used in other Haskell | ||||
| programs.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-regex-applicative | ||||
|   (package | ||||
|     (name "ghc-regex-applicative") | ||||
|  | @ -6689,8 +6631,7 @@ this problem.") | |||
|      `(("ghc-bytestring-handle" ,ghc-bytestring-handle) | ||||
|        ("ghc-quickcheck" ,ghc-quickcheck) | ||||
|        ("ghc-tasty" ,ghc-tasty) | ||||
|        ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) | ||||
|        ("ghc-array" ,ghc-array))) | ||||
|        ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) | ||||
|     (home-page "https://hackage.haskell.org/package/tar") | ||||
|     (synopsis "Reading, writing and manipulating \".tar\" archive files") | ||||
|     (description | ||||
|  | @ -6703,48 +6644,6 @@ preserved.  It also provides features for random access to archive content using | |||
| an index.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-transformers | ||||
|   (package | ||||
|     (name "ghc-transformers") | ||||
|     (version "0.5.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/transformers/transformers-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1qkhi8ssf8c4jnmrw9dzym3igqbzq7h48iisaykdfzdsm09qfh3c")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (home-page "https://hackage.haskell.org/package/transformers") | ||||
|     (synopsis "Concrete functor and monad transformers") | ||||
|     (description | ||||
|      "A portable library of functor and monad transformers, inspired by the paper | ||||
| 'Functional Programming with Overloading and Higher-Order Polymorphism', | ||||
| by Mark P Jones.  This package contains the monad transformer class and IO monad class, | ||||
| concrete functor and monad transformers, each with associated operations and functions | ||||
| to lift operations associated with other transformers.  The package can be used on | ||||
| its own in portable Haskell code, in which case operations need to be manually lifted | ||||
| through transformer stacks.  Alternatively, it can be used with the | ||||
| non-portable monad classes in the @code{mtl} or @code{monads-tf} packages, | ||||
| which automatically lift operations introduced by monad transformers through | ||||
| other transformers.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;; darcs-2.12.0 requires transformers-0.4.2.0 | ||||
| (define-public ghc-transformers-0.4.2.0 | ||||
|   (package | ||||
|     (inherit ghc-transformers) | ||||
|     (version "0.4.2.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://hackage.haskell.org/package/transformers/" | ||||
|                                   "transformers-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0a364zfcm17mhpy0c4ms2j88sys4yvgd6071qsgk93la2wjm8mkr")))))) | ||||
| 
 | ||||
| (define-public ghc-stmonadtrans | ||||
|   (package | ||||
|     (name "ghc-stmonadtrans") | ||||
|  | @ -6836,44 +6735,6 @@ Polymorphism', by Mark P Jones.  This package is almost a compatible replacement | |||
| the @code{mtl-tf} package.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;; Do not use this.  Bytestring is a standard library and always included. | ||||
| (define-public ghc-bytestring | ||||
|   (package | ||||
|     (name "ghc-bytestring") | ||||
|     (version "0.10.8.2") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/bytestring/bytestring-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0fjc5ybxx67l0kh27l6vq4saf88hp1wnssj5ka90ii588y76cvys")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (inputs | ||||
|      `(("ghc-dlist" ,ghc-dlist) | ||||
|        ("ghc-byteorder" ,ghc-byteorder) | ||||
|        ("ghc-hunit" ,ghc-hunit) | ||||
|        ("ghc-mtl" ,ghc-mtl) | ||||
|        ("ghc-quickcheck" ,ghc-quickcheck) | ||||
|        ("ghc-random" ,ghc-random) | ||||
|        ("ghc-test-framework" ,ghc-test-framework) | ||||
|        ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) | ||||
|        ("ghc-test-framework-hunit" ,ghc-test-framework-hunit))) | ||||
|     (arguments | ||||
|      `(#:tests? #f)) ; Test number two becomes non-responsive for 20+ minutes | ||||
|     (home-page "https://github.com/haskell/bytestring") | ||||
|     (synopsis "Fast, compact, strict and lazy byte strings with a list interface") | ||||
|     (description | ||||
|      "An efficient compact, immutable byte string type (both strict and lazy) | ||||
| suitable for binary or 8-bit character data.  The 'ByteString' type represents | ||||
| sequences of bytes or 8-bit characters.  It is suitable for high performance use, | ||||
| both in terms of large data quantities, or high speed requirements.  The 'ByteString' | ||||
| functions follow the same style as ordinary lists, so it is easy to convert code | ||||
| from using 'String' to 'ByteString'.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-colour | ||||
| (package | ||||
|   (name "ghc-colour") | ||||
|  | @ -6896,57 +6757,6 @@ Colours can be blended and composed.  Various colour spaces are | |||
| supported.  A module of colour names (\"Data.Colour.Names\") is provided.") | ||||
|   (license license:expat))) | ||||
| 
 | ||||
| ;; Do not use this as an input.  It is part of GHC. | ||||
| (define-public ghc-directory | ||||
|   (package | ||||
|     (name "ghc-directory") | ||||
|     (version "1.3.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/directory/directory-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0ffhanigxrx5wpin8l0wfp7d24lpgsjwj0hxrfp8bpy2wj1snxny")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (home-page "https://hackage.haskell.org/package/directory") | ||||
|     (synopsis "Platform-agnostic library for file system operations") | ||||
|     (description | ||||
|      "This library provides a basic set of operations for manipulating | ||||
| files and directories in a portable way.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;; Do not use this as an input.  It is part of GHC. | ||||
| (define-public ghc-process | ||||
|   (package | ||||
|     (name "ghc-process") | ||||
|     (version "1.6.3.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/process/process-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0lxkl0gmyy2sn3r9c7dyz8vz1cm6nvygmgrizilliir5bp42m8cc")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'patch-reference-to-/bin/sh | ||||
|            (lambda _ | ||||
|              (substitute* "System/Process/Posix.hs" | ||||
|                (("/bin/sh") (which "sh"))) | ||||
|              #t))))) | ||||
|     (home-page "https://hackage.haskell.org/package/process") | ||||
|     (synopsis "System process libraries") | ||||
|     (description | ||||
|      "This package contains libraries for dealing with system processes.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-wl-pprint-text | ||||
|   (package | ||||
|     (name "ghc-wl-pprint-text") | ||||
|  | @ -7042,29 +6852,6 @@ and edge labels with positional information, etc. | |||
| @end enumerate\n") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-array | ||||
|   (package | ||||
|     (name "ghc-array") | ||||
|     (version "0.5.2.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://hackage.haskell.org/package/array/array-" | ||||
|              version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "12v83s2imxb3p2crnlzrpjh0nk6lpysw9bdk9yahs6f37csa5jaj")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (home-page | ||||
|      "https://hackage.haskell.org/package/array") | ||||
|     (synopsis "Mutable and immutable arrays") | ||||
|     (description | ||||
|      "In addition to providing the @code{Data.Array} module, this package also defines | ||||
| the classes @code{IArray} of immutable arrays and @code{MArray} of arrays mutable | ||||
| within appropriate monads, as well as some instances of these classes.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-constraints | ||||
|   (package | ||||
|     (name "ghc-constraints") | ||||
|  | @ -7896,7 +7683,6 @@ files in Haskell.") | |||
|     (inputs | ||||
|      `(("ghc-mtl" ,ghc-mtl) | ||||
|        ("ghc-network" ,ghc-network) | ||||
|        ("ghc-directory" ,ghc-directory) | ||||
|        ("ghc-old-locale" ,ghc-old-locale))) | ||||
|     (native-inputs | ||||
|      `(("ghc-hunit" ,ghc-hunit))) | ||||
|  | @ -9025,4 +8811,58 @@ Haskell programmers.  The ultimate goal is to support all Amazon | |||
| Web Services.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-basement | ||||
|   (package | ||||
|     (name "ghc-basement") | ||||
|     (version "0.0.7") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://hackage.haskell.org/package/" | ||||
|                            "basement/basement-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0w2g4k9bs2ph00p0fgrmcrng8ypdz6xis0r10g380nzkg2rvj0dm")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (home-page "https://github.com/haskell-foundation/foundation") | ||||
|     (synopsis "Basic primitives for Foundation starter pack") | ||||
|     (description | ||||
|      "This package contains basic primitives for the Foundation set of | ||||
| packages.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public ghc-foundation | ||||
|   (package | ||||
|     (name "ghc-foundation") | ||||
|     (version "0.0.20") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://hackage.haskell.org/package/" | ||||
|                            "foundation/foundation-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0bg4g0xf4pb2vmahnfp8c4f0a3v0av73lb5g8bwnp170khxfcsms")))) | ||||
|     (build-system haskell-build-system) | ||||
|     (inputs `(("ghc-basement" ,ghc-basement))) | ||||
|     (home-page "https://github.com/haskell-foundation/foundation") | ||||
|     (synopsis "Alternative prelude with batteries and no dependencies") | ||||
|     (description | ||||
|      "This package provides a custom prelude with no dependencies apart from | ||||
| the base package. | ||||
| 
 | ||||
| Foundation has the following goals: | ||||
| 
 | ||||
| @enumerate | ||||
| @item provide a base like sets of modules that provide a consistent set of | ||||
|    features and bugfixes across multiple versions of GHC (unlike base). | ||||
| @item provide a better and more efficient prelude than base's prelude. | ||||
| @item be self-sufficient: no external dependencies apart from base; | ||||
| @item provide better data-types: packed unicode string by default, arrays; | ||||
| @item Numerical classes that better represent mathematical things (no more | ||||
|    all-in-one @code{Num}); | ||||
| @item I/O system with less lazy IO. | ||||
| @end enumerate\n") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| ;;; haskell.scm ends here | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2013, 2017 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2013, 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> | ||||
| ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> | ||||
| ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
|  | @ -105,7 +105,7 @@ actions.") | |||
| (define-public geeqie | ||||
|   (package | ||||
|     (name "geeqie") | ||||
|     (version "1.3") | ||||
|     (version "1.4") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "https://github.com/BestImageViewer/geeqie/" | ||||
|  | @ -113,7 +113,7 @@ actions.") | |||
|                                  version ".tar.xz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "0gzc82sy66pbsmq7lnmq4y37zqad1zfwfls3ik3dmfm8s5nmcvsb")))) | ||||
|                "0ciygvcxb78pqg59r6p061mkbpvkgv2rv3r79j3kgv3kalb3ln2w")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(;; Enable support for a "map" pane using GPS data. | ||||
|  | @ -123,7 +123,18 @@ actions.") | |||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'autogen | ||||
|            (lambda _ | ||||
|              (define (write-dummy-changelog port) | ||||
|                (display "See Git history for a change log.\n" port)) | ||||
| 
 | ||||
|              (setenv "NOCONFIGURE" "true") | ||||
| 
 | ||||
|              ;; Create ChangeLog{,.html} to placate the makefile, which would | ||||
|              ;; otherwise require access to the Git repo. | ||||
|              (call-with-output-file "ChangeLog" | ||||
|                write-dummy-changelog) | ||||
|              (call-with-output-file "ChangeLog.html" | ||||
|                write-dummy-changelog) | ||||
| 
 | ||||
|              (zero? (system* "sh" "autogen.sh"))))))) | ||||
|     (inputs | ||||
|      `(("clutter" ,clutter) | ||||
|  |  | |||
|  | @ -79,24 +79,25 @@ | |||
| ;;; | ||||
| 
 | ||||
| ;; The Java bootstrap begins with Jikes, a Java compiler written in C++.  We | ||||
| ;; use it to build the SableVM standard library and virtual machine, which are | ||||
| ;; written in a simpler dialect of Java and C, respectively.  This is | ||||
| ;; sufficient to build an older version of Ant, which is needed to build an | ||||
| ;; older version of ECJ, an incremental Java compiler, both of which are | ||||
| ;; written in Java. | ||||
| ;; use it to build a simple version of GNU Classpath, the Java standard | ||||
| ;; library.  We chose version 0.93 because it is the last version that can be | ||||
| ;; built with Jikes.  With Jikes and this version of GNU Classpath we can | ||||
| ;; build JamVM, a Java Virtual Machine.  We build version 1.5.1 because it is | ||||
| ;; the last version of JamVM that works with a version of GNU classpath that | ||||
| ;; does not require ECJ.  These three packages make up the bootstrap JDK. | ||||
| 
 | ||||
| ;; This is sufficient to build an older version of Ant, which is needed to | ||||
| ;; build an older version of ECJ, an incremental Java compiler, both of which | ||||
| ;; are written in Java. | ||||
| ;; | ||||
| ;; ECJ is needed to build the latest release of GNU Classpath (0.99). | ||||
| ;; Classpath (> 0.98) is a requirement for JamVM, a more modern implementation | ||||
| ;; of the Java virtual machine. | ||||
| ;; | ||||
| ;; With JamVM we can build the latest development version of GNU Classpath, | ||||
| ;; which has much more support for Java 1.6 than the latest release.  Since | ||||
| ;; the previous build of JamVM is limited by the use of GNU Classpath 0.99 we | ||||
| ;; rebuild it with the latest development version of GNU Classpath. | ||||
| ;; | ||||
| ;; Finally, we use the bootstrap toolchain to build the OpenJDK with the | ||||
| ;; Icedtea 1.x build framework.  We then build the more recent JDKs Icedtea | ||||
| ;; 2.x and Icedtea 3.x. | ||||
| ;; ECJ is needed to build the latest release (0.99) and the development | ||||
| ;; version of GNU Classpath.  The development version of GNU Classpath has | ||||
| ;; much more support for Java 1.6 than the latest release, but we need to | ||||
| ;; build 0.99 first to get a working version of javah.  ECJ, the development | ||||
| ;; version of GNU Classpath, and the latest version of JamVM make up the | ||||
| ;; second stage JDK with which we can build the OpenJDK with the Icedtea 1.x | ||||
| ;; build framework.  We then build the more recent JDKs Icedtea 2.x and | ||||
| ;; Icedtea 3.x. | ||||
| 
 | ||||
| (define jikes | ||||
|   (package | ||||
|  | @ -117,114 +118,88 @@ defined in The Java Language Specification into the bytecoded instruction set | |||
| and binary format defined in The Java Virtual Machine Specification.") | ||||
|     (license license:ibmpl1.0))) | ||||
| 
 | ||||
| (define sablevm-classpath | ||||
| ;; This is the last version of GNU Classpath that can be built without ECJ. | ||||
| (define classpath-bootstrap | ||||
|   (package | ||||
|     (name "sablevm-classpath") | ||||
|     (version "1.13") | ||||
|     (name "classpath") | ||||
|     (version "0.93") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/sablevm/sablevm/" | ||||
|                                   version "/sablevm-classpath-" version ".tar.gz")) | ||||
|               (uri (string-append "mirror://gnu/classpath/classpath-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1qyhyfz8idghxdam16hdgpa24r2x4xbg9z8c8asa3chnd79h3zw2")))) | ||||
|                 "0i99wf9xd3hw1sj2sazychb9prx8nadxh2clgvk3zlmb28v0jbfz")) | ||||
|               (patches (search-patches "classpath-aarch64-support.patch")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list "--with-jikes" | ||||
|        (list (string-append "JAVAC=" | ||||
|                             (assoc-ref %build-inputs "jikes") | ||||
|                             "/bin/jikes") | ||||
|              "--disable-Werror" | ||||
|              "--disable-gmp" | ||||
|              "--disable-gtk-peer" | ||||
|              "--disable-gconf-peer" | ||||
|              "--disable-plugin" | ||||
|              "--disable-dssi" | ||||
|              "--disable-alsa" | ||||
|              "--disable-gjdoc"))) | ||||
|     (inputs | ||||
|      `(("gconf" ,gconf) | ||||
|        ("gtk+" ,gtk+-2))) | ||||
|              "--disable-gjdoc") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'install 'install-data | ||||
|            (lambda _ (zero? (system* "make" "install-data"))))))) | ||||
|     (native-inputs | ||||
|      `(("jikes" ,jikes) | ||||
|        ("fastjar" ,fastjar) | ||||
|        ("libltdl" ,libltdl) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (home-page "http://sablevm.org/") | ||||
|     (synopsis "Java Virtual Machine") | ||||
|     (description "SableVM is a clean-room, highly portable and efficient Java | ||||
| virtual machine.  Its goals are to be reasonably small, fast, and compliant | ||||
| with the various specifications (JVM specification, JNI, invocation interface, | ||||
| etc.).  SableVM is no longer maintained. | ||||
|     (home-page "https://www.gnu.org/software/classpath/") | ||||
|     (synopsis "Essential libraries for Java") | ||||
|     (description "GNU Classpath is a project to create core class libraries | ||||
| for use with runtimes, compilers and tools for the Java programming | ||||
| language.") | ||||
|     ;; GPLv2 or later, with special linking exception. | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| This package provides the classpath library.") | ||||
|     (license license:lgpl2.1+))) | ||||
| 
 | ||||
| (define sablevm | ||||
| ;; This is the last version of JamVM that works with a version of GNU | ||||
| ;; classpath that does not require ECJ. | ||||
| (define jamvm-1-bootstrap | ||||
|   (package | ||||
|     (name "sablevm") | ||||
|     (version "1.13") | ||||
|     (name "jamvm") | ||||
|     (version "1.5.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/sablevm/sablevm/" | ||||
|                                   version "/sablevm-" version ".tar.gz")) | ||||
|               (uri (string-append "mirror://sourceforge/jamvm/jamvm/" | ||||
|                                   "JamVM%20" version "/jamvm-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1jyg4bsym6igz94wps5443c7wiwlzinqzkchcw972nz4kf1cql6g")))) | ||||
|                 "06lhi03l3b0h48pc7x58bk9my2nrcf1flpmglvys3wyad6yraf36")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list "--with-threading=switch" ; slower but prevents segfault | ||||
|              "--with-internal-libffi=no" | ||||
|              "--with-internal-libpopt=no") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'remove-timestamp-for-reproducibility | ||||
|            (lambda _ | ||||
|              (substitute* "src/sablevm/Makefile.in" | ||||
|                (("\\$\\(SVMCOMPILETIME\\)") "(unknown)")) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'link-with-popt | ||||
|            (lambda _ | ||||
|              (substitute* "src/sablevm/Makefile.in" | ||||
|                (("\\$\\(SVMADD\\)" match) | ||||
|                 (string-append match " -lpopt"))) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'patch-path-to-classpath | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (substitute* "Makefile.in" | ||||
|                (("@datadir@/sablevm-classpath") | ||||
|                 (string-append (assoc-ref inputs "classpath") | ||||
|                                "/share/sablevm-classpath"))) | ||||
|              (substitute* "src/libsablevm/Makefile.in" | ||||
|                (("\\$\\(libdir\\)/sablevm-classpath") | ||||
|                 (string-append (assoc-ref inputs "classpath") | ||||
|                                "/lib/sablevm-classpath")) | ||||
|                (("\\$\\(datadir\\)/sablevm-classpath") | ||||
|                 (string-append (assoc-ref inputs "classpath") | ||||
|                                "/share/sablevm-classpath"))) | ||||
|              #t))))) | ||||
|        (list (string-append "--with-classpath-install-dir=" | ||||
|                             (assoc-ref %build-inputs "classpath"))))) | ||||
|     (inputs | ||||
|      `(("classpath" ,sablevm-classpath) | ||||
|      `(("classpath" ,classpath-bootstrap) | ||||
|        ("jikes" ,jikes) | ||||
|        ("zlib" ,zlib) | ||||
|        ("popt" ,popt) | ||||
|        ("libffi" ,libffi))) | ||||
|     (native-inputs | ||||
|      `(("libltdl" ,libltdl))) | ||||
|     (home-page "http://sablevm.org/") | ||||
|     (synopsis "Java Virtual Machine") | ||||
|     (description "SableVM is a clean-room, highly portable and efficient Java | ||||
| virtual machine.  Its goals are to be reasonably small, fast, and compliant | ||||
| with the various specifications (JVM specification, JNI, invocation interface, | ||||
| etc.).  SableVM is no longer maintained. | ||||
| 
 | ||||
| This package provides the virtual machine.") | ||||
|     (license license:lgpl2.1+))) | ||||
|        ("zlib" ,zlib))) | ||||
|     (home-page "http://jamvm.sourceforge.net/") | ||||
|     (synopsis "Small Java Virtual Machine") | ||||
|     (description "JamVM is a Java Virtual Machine conforming to the JVM | ||||
| specification edition 2 (blue book).  It is extremely small.  However, unlike | ||||
| other small VMs it supports the full spec, including object finalisation and | ||||
| JNI.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define ant-bootstrap | ||||
|   (package | ||||
|     (name "ant-bootstrap") | ||||
|     ;; The 1.10.x series requires Java 8.  1.9.0 and later use generics, which | ||||
|     ;; are not supported.  The 1.8.x series is the last to use only features | ||||
|     ;; supported by Jikes, but it cannot seem to be built with sablevm. | ||||
|     (version "1.7.1") | ||||
|     ;; supported by Jikes. | ||||
|     (version "1.8.4") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://archive.apache.org/dist/" | ||||
|  | @ -232,24 +207,31 @@ This package provides the virtual machine.") | |||
|                                   version "-src.tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "19pvqvgkxgpgsqm4lvbki5sm0z84kxmykdqicvfad47gc1r9mi2d")))) | ||||
|                 "1cg0lga887qz5iizh6mlkxp01lciymrhmp7wzxpl6zpnldxmzrjx")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; no "check" target | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (delete 'bootstrap) | ||||
|          (delete 'configure) | ||||
|          (replace 'build | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (setenv "JAVA_HOME" | ||||
|                      (string-append (assoc-ref inputs "sablevm") | ||||
|                                     "/lib/sablevm")) | ||||
|              (setenv "JAVA_HOME" (assoc-ref inputs "jamvm")) | ||||
|              (setenv "JAVACMD" | ||||
|                      (string-append (assoc-ref inputs "sablevm") | ||||
|                                     "/bin/java-sablevm")) | ||||
|                      (string-append (assoc-ref inputs "jamvm") | ||||
|                                     "/bin/jamvm")) | ||||
|              (setenv "JAVAC" | ||||
|                      (string-append (assoc-ref inputs "sablevm") | ||||
|                                     "/bin/javac-sablevm")) | ||||
|                      (string-append (assoc-ref inputs "jikes") | ||||
|                                     "/bin/jikes")) | ||||
|              (setenv "CLASSPATH" | ||||
|                      (string-append (assoc-ref inputs "jamvm") | ||||
|                                     "/lib/rt.jar")) | ||||
| 
 | ||||
|              ;; Ant complains if this file doesn't exist. | ||||
|              (setenv "HOME" "/tmp") | ||||
|              (with-output-to-file "/tmp/.ant.properties" | ||||
|                (lambda _ (display ""))) | ||||
| 
 | ||||
|              ;; Use jikes instead of javac for <javac ...> tags in build.xml | ||||
|              (setenv "ANT_OPTS" "-Dbuild.compiler=jikes") | ||||
|  | @ -258,6 +240,11 @@ This package provides the virtual machine.") | |||
|              ;; interesting, so we silence them. | ||||
|              (setenv "$BOOTJAVAC_OPTS" "-nowarn") | ||||
| 
 | ||||
|              ;; Without these JamVM options the build may freeze. | ||||
|              (substitute* "bootstrap.sh" | ||||
|                (("^\"\\$\\{JAVACMD\\}\" " m) | ||||
|                 (string-append m "-Xnocompact -Xnoinlining "))) | ||||
| 
 | ||||
|              ;; Disable tests because we are bootstrapping and thus don't have | ||||
|              ;; any of the dependencies required to build and run the tests. | ||||
|              (substitute* "build.xml" | ||||
|  | @ -268,7 +255,7 @@ This package provides the virtual machine.") | |||
|          (delete 'install)))) | ||||
|     (native-inputs | ||||
|      `(("jikes" ,jikes) | ||||
|        ("sablevm" ,sablevm))) | ||||
|        ("jamvm" ,jamvm-1-bootstrap))) | ||||
|     (home-page "http://ant.apache.org") | ||||
|     (synopsis "Build tool for Java") | ||||
|     (description | ||||
|  | @ -307,9 +294,12 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (setenv "CLASSPATH" | ||||
|                      (string-join | ||||
|                       (find-files (string-append (assoc-ref inputs "ant-bootstrap") | ||||
|                                                  "/lib") | ||||
|                                   "\\.jar$") | ||||
|                       (cons (string-append (assoc-ref inputs "jamvm") | ||||
|                                            "/lib/rt.jar") | ||||
|                             (find-files (string-append | ||||
|                                          (assoc-ref inputs "ant-bootstrap") | ||||
|                                          "/lib") | ||||
|                                         "\\.jar$")) | ||||
|                       ":")) | ||||
|              #t)) | ||||
|          (replace 'build | ||||
|  | @ -324,7 +314,7 @@ build process and its dependencies, whereas Make uses Makefile format.") | |||
| Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"))) | ||||
| 
 | ||||
|              ;; Compile it all! | ||||
|              (and (zero? (apply system* "javac-sablevm" | ||||
|              (and (zero? (apply system* "jikes" | ||||
|                                 (find-files "." "\\.java$"))) | ||||
|                   (zero? (system* "fastjar" "cvfm" | ||||
|                                   "ecj-bootstrap.jar" "manifest" "."))))) | ||||
|  | @ -338,7 +328,8 @@ Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"))) | |||
|     (native-inputs | ||||
|      `(("ant-bootstrap" ,ant-bootstrap) | ||||
|        ("unzip" ,unzip) | ||||
|        ("sablevm" ,sablevm) | ||||
|        ("jikes" ,jikes) | ||||
|        ("jamvm" ,jamvm-1-bootstrap) | ||||
|        ("fastjar" ,fastjar))) | ||||
|     (home-page "https://eclipse.org") | ||||
|     (synopsis "Eclipse Java development tools core batch compiler") | ||||
|  | @ -355,7 +346,7 @@ requirement for all GNU Classpath releases after version 0.93.") | |||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        (let ((backend 'sablevm)) | ||||
|        (begin | ||||
|          (use-modules (guix build utils)) | ||||
|          (let* ((bin    (string-append (assoc-ref %outputs "out") "/bin")) | ||||
|                 (target (string-append bin "/javac")) | ||||
|  | @ -363,24 +354,12 @@ requirement for all GNU Classpath releases after version 0.93.") | |||
|                                        "/bin/guile")) | ||||
|                 (ecj    (string-append (assoc-ref %build-inputs "ecj-bootstrap") | ||||
|                                        "/share/java/ecj-bootstrap.jar")) | ||||
|                 (java   (case backend | ||||
|                           ((sablevm) | ||||
|                            (string-append (assoc-ref %build-inputs "sablevm") | ||||
|                                           "/lib/sablevm/bin/java")) | ||||
|                           ((jamvm) | ||||
|                            (string-append (assoc-ref %build-inputs "jamvm") | ||||
|                                           "/bin/jamvm")))) | ||||
|                 (bootcp (case backend | ||||
|                           ((sablevm) | ||||
|                            (let ((jvmlib (string-append | ||||
|                                           (assoc-ref %build-inputs "sablevm-classpath") | ||||
|                                           "/lib/sablevm"))) | ||||
|                              (string-append jvmlib "/jre/lib/rt.jar"))) | ||||
|                           ((jamvm) | ||||
|                            (let ((jvmlib (string-append (assoc-ref %build-inputs "classpath") | ||||
|                                                         "/share/classpath"))) | ||||
|                              (string-append jvmlib "/lib/glibj.zip:" | ||||
|                                             jvmlib "/lib/tools.zip")))))) | ||||
|                 (java   (string-append (assoc-ref %build-inputs "jamvm") | ||||
|                                        "/bin/jamvm")) | ||||
|                 (bootcp (let ((jvmlib (string-append (assoc-ref %build-inputs "classpath") | ||||
|                                                      "/share/classpath"))) | ||||
|                           (string-append jvmlib "/glibj.zip:" | ||||
|                                          jvmlib "/tools.zip")))) | ||||
|            (mkdir-p bin) | ||||
|            (with-output-to-file target | ||||
|              (lambda _ | ||||
|  | @ -399,10 +378,11 @@ requirement for all GNU Classpath releases after version 0.93.") | |||
|                         (define (main args) | ||||
|                           (let ((classpath (getenv "CLASSPATH"))) | ||||
|                             (setenv "CLASSPATH" | ||||
|                                     (string-append ,ecj | ||||
|                                                    (if classpath | ||||
|                                                        (string-append ":" classpath) | ||||
|                                                        "")))) | ||||
|                                     (string-join (list ,ecj | ||||
|                                                        ,(string-append (assoc-ref %build-inputs "jamvm") | ||||
|                                                                        "/lib/rt.jar") | ||||
|                                                        (or classpath "")) | ||||
|                                                  ":"))) | ||||
|                           (receive (vm-args other-args) | ||||
|                               ;; Separate VM arguments from arguments to ECJ. | ||||
|                               (partition (cut string-prefix? "-J" <>) | ||||
|  | @ -412,6 +392,7 @@ requirement for all GNU Classpath releases after version 0.93.") | |||
|                                                args defaults)) | ||||
|                             (apply system* ,java | ||||
|                                    (append | ||||
|                                     (list "-Xnocompact" "-Xnoinlining") | ||||
|                                     ;; Remove "-J" prefix | ||||
|                                     (map (cut string-drop <> 2) vm-args) | ||||
|                                     '("org.eclipse.jdt.internal.compiler.batch.Main") | ||||
|  | @ -426,20 +407,17 @@ requirement for all GNU Classpath releases after version 0.93.") | |||
|     (native-inputs | ||||
|      `(("guile" ,guile-2.2) | ||||
|        ("ecj-bootstrap" ,ecj-bootstrap) | ||||
|        ("sablevm" ,sablevm) | ||||
|        ("sablevm-classpath" ,sablevm-classpath))) | ||||
|        ("jamvm" ,jamvm-1-bootstrap) | ||||
|        ("classpath" ,classpath-bootstrap))) | ||||
|     (description "This package provides a wrapper around the @dfn{Eclipse | ||||
| compiler for Java} (ecj) with a command line interface that is compatible with | ||||
| the standard javac executable."))) | ||||
| 
 | ||||
| ;; Note: All the tool wrappers (e.g. for javah, javac, etc) fail with | ||||
| ;; java.lang.UnsupportedClassVersionError.  They simply won't run on the old | ||||
| ;; sablevm.  We use Classpath 0.99 to build JamVM, on which the Classpath | ||||
| ;; tools do run.  Using these Classpath tools on JamVM we can then build the | ||||
| ;; development version of GNU Classpath. | ||||
| (define classpath-on-sablevm | ||||
|   (package | ||||
|     (name "classpath") | ||||
| ;; The classpath-bootstrap was built without a virtual machine, so it does not | ||||
| ;; provide a wrapper for javah.  We cannot build the development version of | ||||
| ;; Classpath without javah. | ||||
| (define classpath-0.99 | ||||
|   (package (inherit classpath-bootstrap) | ||||
|     (version "0.99") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -447,8 +425,8 @@ the standard javac executable."))) | |||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1j7cby4k66f1nvckm48xcmh352b1d1b33qk7l6hi7dp9i9zjjagr")))) | ||||
|     (build-system gnu-build-system) | ||||
|                 "1j7cby4k66f1nvckm48xcmh352b1d1b33qk7l6hi7dp9i9zjjagr")) | ||||
|               (patches (search-patches "classpath-aarch64-support.patch")))) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "--with-ecj-jar=" | ||||
|  | @ -458,8 +436,8 @@ the standard javac executable."))) | |||
|                             (assoc-ref %build-inputs "ecj-javac-wrapper") | ||||
|                             "/bin/javac") | ||||
|              (string-append "JAVA=" | ||||
|                             (assoc-ref %build-inputs "sablevm") | ||||
|                             "/bin/java-sablevm") | ||||
|                             (assoc-ref %build-inputs "jamvm") | ||||
|                             "/bin/jamvm") | ||||
|              "GCJ_JAVAC_TRUE=no" | ||||
|              "ac_cv_prog_java_works=yes"  ; trust me | ||||
|              "--disable-Werror" | ||||
|  | @ -478,51 +456,15 @@ the standard javac executable."))) | |||
|      `(("ecj-bootstrap" ,ecj-bootstrap) | ||||
|        ("ecj-javac-wrapper" ,ecj-javac-wrapper) | ||||
|        ("fastjar" ,fastjar) | ||||
|        ("sablevm" ,sablevm) | ||||
|        ("sablevm-classpath" ,sablevm-classpath) | ||||
|        ("jamvm" ,jamvm-1-bootstrap) | ||||
|        ("classpath" ,classpath-bootstrap) | ||||
|        ("libltdl" ,libltdl) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (home-page "https://www.gnu.org/software/classpath/") | ||||
|     (synopsis "Essential libraries for Java") | ||||
|     (description "GNU Classpath is a project to create core class libraries | ||||
| for use with runtimes, compilers and tools for the Java programming | ||||
| language.") | ||||
|     ;; GPLv2 or later, with special linking exception. | ||||
|     (license license:gpl2+))) | ||||
|        ("pkg-config" ,pkg-config))))) | ||||
| 
 | ||||
| (define jamvm-bootstrap | ||||
|   (package | ||||
|     (name "jamvm") | ||||
|     (version "2.0.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/jamvm/jamvm/" | ||||
|                                   "JamVM%20" version "/jamvm-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1nl0zxz8y5x8gwsrm7n32bry4dx8x70p8z3s9jbdvs8avyb8whkn")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "--with-classpath-install-dir=" | ||||
|                             (assoc-ref %build-inputs "classpath"))))) | ||||
|     (inputs | ||||
|      `(("classpath" ,classpath-on-sablevm) | ||||
|        ("ecj-javac-wrapper" ,ecj-javac-wrapper) | ||||
|        ("zlib" ,zlib))) | ||||
|     (home-page "http://jamvm.sourceforge.net/") | ||||
|     (synopsis "Small Java Virtual Machine") | ||||
|     (description "JamVM is a Java Virtual Machine conforming to the JVM | ||||
| specification edition 2 (blue book).  It is extremely small.  However, unlike | ||||
| other small VMs it supports the full spec, including object finalisation and | ||||
| JNI.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| ;; We need this because the tools provided by the latest release of GNU | ||||
| ;; Classpath don't actually work with sablevm. | ||||
| ;; We need this because classpath-bootstrap does not provide all of the tools | ||||
| ;; we need to build classpath-devel. | ||||
| (define classpath-jamvm-wrappers | ||||
|   (package (inherit classpath-on-sablevm) | ||||
|   (package (inherit classpath-0.99) | ||||
|     (name "classpath-jamvm-wrappers") | ||||
|     (source #f) | ||||
|     (build-system trivial-build-system) | ||||
|  | @ -541,7 +483,7 @@ JNI.") | |||
|                        (with-output-to-file (string-append bin tool) | ||||
|                          (lambda _ | ||||
|                            (format #t "#!~a/bin/sh | ||||
| ~a/bin/jamvm -classpath ~a/share/classpath/tools.zip \ | ||||
| ~a/bin/jamvm -Xnocompact -Xnoinlining -classpath ~a/share/classpath/tools.zip \ | ||||
| gnu.classpath.tools.~a.~a $@" | ||||
|                                    bash jamvm classpath tool | ||||
|                                    (if (string=? "native2ascii" tool) | ||||
|  | @ -556,106 +498,20 @@ gnu.classpath.tools.~a.~a $@" | |||
|            #t)))) | ||||
|     (native-inputs | ||||
|      `(("bash" ,bash) | ||||
|        ("jamvm" ,jamvm-bootstrap) | ||||
|        ("classpath" ,classpath-on-sablevm))) | ||||
|        ("jamvm" ,jamvm-1-bootstrap) | ||||
|        ("classpath" ,classpath-0.99))) | ||||
|     (inputs '()) | ||||
|     (synopsis "Executables from GNU Classpath") | ||||
|     (description "This package provides wrappers around the tools provided by | ||||
| the GNU Classpath library.  They are executed by the JamVM virtual | ||||
| machine."))) | ||||
| 
 | ||||
| (define ecj-javac-on-jamvm-wrapper | ||||
|   (package (inherit ecj-javac-wrapper) | ||||
|     (name "ecj-javac-on-jamvm-wrapper") | ||||
|     (arguments | ||||
|      `(#:modules ((guix build utils)) | ||||
|        #:builder | ||||
|        ;; TODO: This builder is exactly the same as in ecj-javac-wrapper, | ||||
|        ;; except that the backend is 'jamvm here.  Can we reuse the same | ||||
|        ;; builder somehow? | ||||
|        (let ((backend 'jamvm)) | ||||
|          (use-modules (guix build utils)) | ||||
|          (let* ((bin    (string-append (assoc-ref %outputs "out") "/bin")) | ||||
|                 (target (string-append bin "/javac")) | ||||
|                 (guile  (string-append (assoc-ref %build-inputs "guile") | ||||
|                                        "/bin/guile")) | ||||
|                 (ecj    (string-append (assoc-ref %build-inputs "ecj-bootstrap") | ||||
|                                        "/share/java/ecj-bootstrap.jar")) | ||||
|                 (java   (case backend | ||||
|                           ((sablevm) | ||||
|                            (string-append (assoc-ref %build-inputs "sablevm") | ||||
|                                           "/lib/sablevm/bin/java")) | ||||
|                           ((jamvm) | ||||
|                            (string-append (assoc-ref %build-inputs "jamvm") | ||||
|                                           "/bin/jamvm")))) | ||||
|                 (bootcp (case backend | ||||
|                           ((sablevm) | ||||
|                            (let ((jvmlib (string-append | ||||
|                                           (assoc-ref %build-inputs "sablevm-classpath") | ||||
|                                           "/lib/sablevm"))) | ||||
|                              (string-append jvmlib "/jre/lib/rt.jar"))) | ||||
|                           ((jamvm) | ||||
|                            (let ((jvmlib (string-append (assoc-ref %build-inputs "classpath") | ||||
|                                                         "/share/classpath"))) | ||||
|                              (string-append jvmlib "/lib/glibj.zip:" | ||||
|                                             jvmlib "/lib/tools.zip")))))) | ||||
|            (mkdir-p bin) | ||||
|            (with-output-to-file target | ||||
|              (lambda _ | ||||
|                (format #t "#!~a --no-auto-compile\n!#\n" guile) | ||||
|                (write | ||||
|                 `(begin (use-modules (ice-9 match) | ||||
|                                      (ice-9 receive) | ||||
|                                      (ice-9 hash-table) | ||||
|                                      (srfi srfi-1) | ||||
|                                      (srfi srfi-26)) | ||||
|                         (define defaults | ||||
|                           '(("-bootclasspath" ,bootcp) | ||||
|                             ("-source" "1.5") | ||||
|                             ("-target" "1.5") | ||||
|                             ("-cp"     "."))) | ||||
|                         (define (main args) | ||||
|                           (let ((classpath (getenv "CLASSPATH"))) | ||||
|                             (setenv "CLASSPATH" | ||||
|                                     (string-append ,ecj | ||||
|                                                    (if classpath | ||||
|                                                        (string-append ":" classpath) | ||||
|                                                        "")))) | ||||
|                           (receive (vm-args other-args) | ||||
|                               ;; Separate VM arguments from arguments to ECJ. | ||||
|                               (partition (cut string-prefix? "-J" <>) | ||||
|                                          (fold (lambda (default acc) | ||||
|                                                  (if (member (first default) acc) | ||||
|                                                      acc (append default acc))) | ||||
|                                                args defaults)) | ||||
|                             (apply system* ,java | ||||
|                                    (append | ||||
|                                     ;; Remove "-J" prefix | ||||
|                                     (map (cut string-drop <> 2) vm-args) | ||||
|                                     '("org.eclipse.jdt.internal.compiler.batch.Main") | ||||
|                                     (cons "-nowarn" other-args))))) | ||||
|                         ;; Entry point | ||||
|                         (let ((args (cdr (command-line)))) | ||||
|                           (if (null? args) | ||||
|                               (format (current-error-port) "javac: no arguments given!\n") | ||||
|                               (main args))))))) | ||||
|            (chmod target #o755) | ||||
|            #t)))) | ||||
|     (native-inputs | ||||
|      `(("guile" ,guile-2.2) | ||||
|        ("ecj-bootstrap" ,ecj-bootstrap) | ||||
|        ("jamvm" ,jamvm-bootstrap) | ||||
|        ("classpath" ,classpath-on-sablevm))) | ||||
|     (description "This package provides a wrapper around the @dfn{Eclipse | ||||
| compiler for Java} (ecj) with a command line interface that is compatible with | ||||
| the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | ||||
| 
 | ||||
| ;; The last release of GNU Classpath is 0.99 and it happened in 2012.  Since | ||||
| ;; then Classpath has gained much more support for Java 1.6. | ||||
| (define-public classpath-devel | ||||
|   (let ((commit "e7c13ee0cf2005206fbec0eca677f8cf66d5a103") | ||||
|         (revision "1")) | ||||
|     (package (inherit classpath-on-sablevm) | ||||
|     (package (inherit classpath-bootstrap) | ||||
|       (version (string-append "0.99-" revision "." (string-take commit 9))) | ||||
|       (source (origin | ||||
|                 (method git-fetch) | ||||
|  | @ -713,21 +569,35 @@ the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | |||
|          ("texinfo" ,texinfo) | ||||
|          ("classpath-jamvm-wrappers" ,classpath-jamvm-wrappers) ; for javah | ||||
|          ("ecj-bootstrap" ,ecj-bootstrap) | ||||
|          ("ecj-javac-wrapper" ,ecj-javac-on-jamvm-wrapper) | ||||
|          ("ecj-javac-wrapper" ,ecj-javac-wrapper) | ||||
|          ("fastjar" ,fastjar) | ||||
|          ("jamvm" ,jamvm-bootstrap) | ||||
|          ("jamvm" ,jamvm-1-bootstrap) | ||||
|          ("libltdl" ,libltdl) | ||||
|          ("pkg-config" ,pkg-config)))))) | ||||
| 
 | ||||
| (define-public jamvm | ||||
|   (package (inherit jamvm-bootstrap) | ||||
| (define jamvm | ||||
|   (package (inherit jamvm-1-bootstrap) | ||||
|     (version "2.0.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/jamvm/jamvm/" | ||||
|                                   "JamVM%20" version "/jamvm-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1nl0zxz8y5x8gwsrm7n32bry4dx8x70p8z3s9jbdvs8avyb8whkn")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags | ||||
|        (list (string-append "--with-classpath-install-dir=" | ||||
|                             (assoc-ref %build-inputs "classpath"))))) | ||||
|     (inputs | ||||
|      `(("classpath" ,classpath-devel) | ||||
|        ("ecj-javac-wrapper" ,ecj-javac-on-jamvm-wrapper) | ||||
|        ("ecj-javac-wrapper" ,ecj-javac-wrapper) | ||||
|        ("zlib" ,zlib))))) | ||||
| 
 | ||||
| (define ecj-javac-on-jamvm-wrapper-final | ||||
|   (package (inherit ecj-javac-on-jamvm-wrapper) | ||||
| (define ecj-javac-wrapper-final | ||||
|   (package (inherit ecj-javac-wrapper) | ||||
|     (native-inputs | ||||
|      `(("guile" ,guile-2.2) | ||||
|        ("ecj-bootstrap" ,ecj-bootstrap) | ||||
|  | @ -735,9 +605,9 @@ the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | |||
|        ("classpath" ,classpath-devel))))) | ||||
| 
 | ||||
| ;; The bootstrap JDK consisting of jamvm, classpath-devel, | ||||
| ;; ecj-javac-on-jamvm-wrapper-final cannot build Icedtea 2.x directly, because | ||||
| ;; it's written in Java 7.  It can, however, build the unmaintained Icedtea | ||||
| ;; 1.x, which uses Java 6 only. | ||||
| ;; ecj-javac-wrapper-final cannot build Icedtea 2.x directly, because it's | ||||
| ;; written in Java 7.  It can, however, build the unmaintained Icedtea 1.x, | ||||
| ;; which uses Java 6 only. | ||||
| (define-public icedtea-6 | ||||
|   (package | ||||
|     (name "icedtea") | ||||
|  | @ -826,7 +696,8 @@ the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | |||
|                     #t)))) | ||||
|          (add-after 'unpack 'use-classpath | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (let ((jvmlib (assoc-ref inputs "classpath"))) | ||||
|              (let ((jvmlib (assoc-ref inputs "classpath")) | ||||
|                    (jamvm  (assoc-ref inputs "jamvm"))) | ||||
|                ;; Classpath does not provide rt.jar. | ||||
|                (substitute* "Makefile.in" | ||||
|                  (("\\$\\(SYSTEM_JDK_DIR\\)/jre/lib/rt.jar") | ||||
|  | @ -834,7 +705,8 @@ the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | |||
|                ;; Make sure we can find all classes. | ||||
|                (setenv "CLASSPATH" | ||||
|                        (string-append jvmlib "/share/classpath/glibj.zip:" | ||||
|                                       jvmlib "/share/classpath/tools.zip")) | ||||
|                                       jvmlib "/share/classpath/tools.zip:" | ||||
|                                       jamvm  "/lib/rt.jar")) | ||||
|                (setenv "JAVACFLAGS" | ||||
|                        (string-append "-cp " | ||||
|                                       jvmlib "/share/classpath/glibj.zip:" | ||||
|  | @ -971,7 +843,7 @@ the standard javac executable.  The tool runs on JamVM instead of SableVM."))) | |||
|        ("cpio" ,cpio) | ||||
|        ("cups" ,cups) | ||||
|        ("ecj" ,ecj-bootstrap) | ||||
|        ("ecj-javac" ,ecj-javac-on-jamvm-wrapper-final) | ||||
|        ("ecj-javac" ,ecj-javac-wrapper-final) | ||||
|        ("fastjar" ,fastjar) | ||||
|        ("fontconfig" ,fontconfig) | ||||
|        ("freetype" ,freetype) | ||||
|  | @ -6919,7 +6791,7 @@ package contains utilities for obtaining services via the Java SE 6 | |||
| (define-public java-aqute-bnd-annotation | ||||
|   (package | ||||
|     (name "java-aqute-bnd-annotation") | ||||
|     (version "3.4.0") | ||||
|     (version "3.5.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/bndtools/bnd/archive/" | ||||
|  | @ -6927,7 +6799,7 @@ package contains utilities for obtaining services via the Java SE 6 | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "09vgb6axikbz66zi9falijbnzh1qnp9ysfns123dmzdb01cbza9q")))) | ||||
|                 "1ggyiq0as0f6cz333a0dh98j72kmvv5pf2s47v9554yh905lfqdl")))) | ||||
|     (build-system ant-build-system) | ||||
|     (arguments | ||||
|      `(#:jar-name "java-aqute-bnd-annotation.jar" | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ | |||
| ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be> | ||||
| ;;; Copyright © 2017 Mark Meyer <mark@ofosos.org> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -236,7 +236,7 @@ plugins, as well as code to create plugins, or complete applications.") | |||
| (define-public krita | ||||
|   (package | ||||
|     (name "krita") | ||||
|     (version "3.3.3") | ||||
|     (version "4.0.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -245,7 +245,7 @@ plugins, as well as code to create plugins, or complete applications.") | |||
|                     "/" name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0pc6hnakkqy81x5b5ncivaps6hqv43i50sjwgi3i3cz9j8rlxh5y")))) | ||||
|                 "0dh3bm90mxrbyvdp7x7hcf5li48j7ppkb44lls65lpn6c59r5waz")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f | ||||
|  | @ -329,6 +329,23 @@ illustrators, matte and texture artists, and the VFX industry.  Notable | |||
| features include brush stabilizers, brush engines and wrap-around mode.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| ;; Krita 3 and 4's file formats are incompatible, so we are keeping Krita 3 | ||||
| ;; for now. | ||||
| (define-public krita-3 | ||||
|   (package | ||||
|     (inherit krita) | ||||
|     (name "krita") | ||||
|     (version "3.3.3") | ||||
|     (source (origin | ||||
|               (inherit (package-source krita)) | ||||
|               (uri (string-append | ||||
|                     "mirror://kde/stable/krita/" | ||||
|                     (version-prefix version 3) | ||||
|                     "/" name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0pc6hnakkqy81x5b5ncivaps6hqv43i50sjwgi3i3cz9j8rlxh5y")))))) | ||||
| 
 | ||||
| (define-public kholidays | ||||
|   (package | ||||
|     (name "kholidays") | ||||
|  | @ -367,7 +384,7 @@ other special events for a geographical region.") | |||
| (define-public libkomparediff2 | ||||
|   (package | ||||
|     (name "libkomparediff2") | ||||
|     (version "17.12.1") | ||||
|     (version "17.12.3") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|  | @ -376,7 +393,7 @@ other special events for a geographical region.") | |||
|         (file-name (string-append name "-" version ".tar.gz")) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "0jd700pjw51vyan5d22k6j60jgb95pfn2nvwz2nfs2f4xlsly1hz")))) | ||||
|           "0w6p8lvm2rn7y4qz0x3s87lwh1758xnyhwkkkng55n8v9rpjjw7l")))) | ||||
|     (native-inputs | ||||
|      `(("extra-cmake-modules" ,extra-cmake-modules) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|  |  | |||
|  | @ -1,5 +1,6 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2016, 2017 Eric Bavier <bavier@member.fsf.org> | ||||
| ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -72,7 +73,7 @@ restrictions that stem from limitations of the standard RCX firmware.") | |||
| (define-public leocad | ||||
|   (package | ||||
|     (name "leocad") | ||||
|     (version "17.07") | ||||
|     (version "18.02") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/leozide/leocad/" | ||||
|  | @ -80,10 +81,10 @@ restrictions that stem from limitations of the standard RCX firmware.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "02gm4950zlmsw4sxmdwypgkybn51b02qnmmk6rzjdr8si4k6gikq")))) | ||||
|                 "189wj221fn08bnsfwy8050bxkjgjwinkn19qdcvb6c2ry2lnfra9")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("qttools" ,qttools)))           ;for lrelease | ||||
|      `(("qttools" ,qttools)))           ; for lrelease | ||||
|     (inputs | ||||
|      `(("mesa" ,mesa) | ||||
|        ("qtbase" ,qtbase) | ||||
|  | @ -95,12 +96,13 @@ restrictions that stem from limitations of the standard RCX firmware.") | |||
|          (replace 'configure | ||||
|            (lambda* (#:key outputs inputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (zero? (system* "qmake" | ||||
|                                (string-append "INSTALL_PREFIX=" out) | ||||
|                                ;; Otherwise looks for lrelease-qt4 | ||||
|                                "QMAKE_LRELEASE=lrelease" | ||||
|                                ;; Don't pester users about updates | ||||
|                                "DISABLE_UPDATE_CHECK=1"))))) | ||||
|                (invoke "qmake" | ||||
|                        (string-append "INSTALL_PREFIX=" out) | ||||
|                        ;; Otherwise looks for lrelease-qt4. | ||||
|                        "QMAKE_LRELEASE=lrelease" | ||||
|                        ;; Don't pester users about updates. | ||||
|                        "DISABLE_UPDATE_CHECK=1") | ||||
|                #t))) | ||||
|          (add-after 'configure 'reset-resource-timestamps | ||||
|            (lambda _ | ||||
|              ;; The contents of build/release/.qrc/qrc_leocad.cpp generated by | ||||
|  | @ -113,8 +115,9 @@ restrictions that stem from limitations of the standard RCX firmware.") | |||
|                                   (src (string-append base ".ts")) | ||||
|                                   (st (stat src))) | ||||
|                              (set-file-time file st))) | ||||
|                          (find-files "." "leocad_.*\\.qm")))))))) | ||||
|     (home-page "http://www.leocad.org") | ||||
|                          (find-files "." "leocad_.*\\.qm"))) | ||||
|              #t))))) | ||||
|     (home-page "https://www.leocad.org") | ||||
|     (synopsis "Create virtual Lego models") | ||||
|     (description | ||||
|      "LeoCAD is a program for creating virtual LEGO models.  It has an | ||||
|  |  | |||
|  | @ -152,13 +152,13 @@ conversions for values passed between the two languages.") | |||
| (define-public ruby-ffi | ||||
|   (package | ||||
|     (name "ruby-ffi") | ||||
|     (version "1.9.22") | ||||
|     (version "1.9.23") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (rubygems-uri "ffi" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "17lvnpmllg4mlzf25lxbmfzk4l6rsddlxwwdkbs4d9v5gv154529")))) | ||||
|                 "0zw6pbyvmj8wafdc7l5h7w20zkp1vbr2805ql5d941g2b20pk4zr")))) | ||||
|     (build-system ruby-build-system) | ||||
|     ;; FIXME: Before running tests the build system attempts to build libffi | ||||
|     ;; from sources. | ||||
|  |  | |||
|  | @ -4,7 +4,7 @@ | |||
| ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com> | ||||
| ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com> | ||||
| ;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> | ||||
| ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> | ||||
|  | @ -689,14 +689,14 @@ Zoner Draw version 4 and 5.") | |||
| (define-public hunspell | ||||
|   (package | ||||
|     (name "hunspell") | ||||
|     (version "1.6.1") | ||||
|     (version "1.6.2") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|       (uri (string-append "https://github.com/hunspell/hunspell/archive/v" | ||||
|                           version ".tar.gz")) | ||||
|       (sha256 (base32 | ||||
|                "0j9c20sj7bgd6f77193g1ihy8w905byk2gdhdc0r9dsh7irr7x9h")) | ||||
|                "1i7lsv2cm0713ia3j5wjkcrhpfp3lqpjpwp4d3v18n7ycaqcxn9w")) | ||||
|       (file-name (string-append name "-" version ".tar.gz")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|  | @ -838,7 +838,7 @@ and to return information on pronunciations, meanings and synonyms.") | |||
| (define-public libreoffice | ||||
|   (package | ||||
|     (name "libreoffice") | ||||
|     (version "5.4.5.1") | ||||
|     (version "5.4.6.2") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -846,8 +846,9 @@ and to return information on pronunciations, meanings and synonyms.") | |||
|         (string-append | ||||
|           "https://download.documentfoundation.org/libreoffice/src/" | ||||
|           (version-prefix version 3) "/libreoffice-" version ".tar.xz")) | ||||
|       (sha256 (base32 | ||||
|                "167bh6jgyhfcvn3g7xghkg4nb99h91diypdlry5df21xs8bis5gb")))) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "0icd8h221gp2dsbn6d35flwhqhcfpx66cjc5dg8yifhhvrfam74i")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("bison" ,bison) | ||||
|  |  | |||
|  | @ -48,7 +48,7 @@ | |||
| (define-public libusb | ||||
|   (package | ||||
|     (name "libusb") | ||||
|     (version "1.0.21") | ||||
|     (version "1.0.22") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -56,7 +56,7 @@ | |||
|                           "libusb-" version "/libusb-" version ".tar.bz2")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "0jw2n5kdnrqvp7zh792fd6mypzzfap6jp4gfcmq4n6c1kb79rkkx")))) | ||||
|         "0mw1a5ss4alg37m6bd4k44v35xwrcwp5qm4s686q1nsgkbavkbkm")))) | ||||
|     (build-system gnu-build-system) | ||||
| 
 | ||||
|     ;; XXX: Enabling udev is now recommended, but eudev indirectly depends on | ||||
|  | @ -133,6 +133,13 @@ version of libusb to run with newer libusb.") | |||
|        `(#:tests? #f                    ; there are no tests | ||||
|          #:phases | ||||
|          (modify-phases %standard-phases | ||||
|            ;; FIXME: libusb 1.0.22 deprecated libusb_set_debug, so the build | ||||
|            ;; fails because libusb4java uses a deprecated procedure. | ||||
|            (add-after 'unpack 'disable-Werror | ||||
|              (lambda _ | ||||
|                (substitute* "CMakeLists.txt" | ||||
|                  (("-Werror") "")) | ||||
|                #t)) | ||||
|            (add-before 'configure 'set-JAVA_HOME | ||||
|              (lambda* (#:key inputs #:allow-other-keys) | ||||
|                (setenv "JAVA_HOME" (assoc-ref inputs "jdk")) | ||||
|  | @ -252,14 +259,14 @@ implementing @code{javax.usb} (JSR-80).") | |||
| (define-public libmtp | ||||
|   (package | ||||
|     (name "libmtp") | ||||
|     (version "1.1.14") | ||||
|     (version "1.1.15") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "mirror://sourceforge/libmtp/libmtp/" version | ||||
|                                  "/libmtp-" version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "1s0jyhypxmj0j8s003ba1n74x63h1rw8am9q4z2ip3xyjvid65rq")))) | ||||
|                "089h79nkz7wcr3lbqi7025l8p75hbp0aigxk3wdk2zkm8q5r0h6h")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|  |  | |||
|  | @ -19,7 +19,7 @@ | |||
| ;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org> | ||||
| ;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com> | ||||
| ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> | ||||
| ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> | ||||
| ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.com> | ||||
| ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> | ||||
| ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> | ||||
|  | @ -383,8 +383,8 @@ It has been modified to remove all non-free binary blobs.") | |||
| ;; supports qemu "virt" machine and possibly a large number of ARM boards. | ||||
| ;; See : https://wiki.debian.org/DebianKernel/ARMMP. | ||||
| 
 | ||||
| (define %linux-libre-version "4.15.11") | ||||
| (define %linux-libre-hash "0nrsmw7x5nsc3906dfvfakkibv8pv09r1sf5ckzbkcbkwpyq62h8") | ||||
| (define %linux-libre-version "4.15.13") | ||||
| (define %linux-libre-hash "1z9f3m44n5w9ayad08h6nvx4nihc28h2jplk4jvyaj0460v8d11f") | ||||
| 
 | ||||
| (define-public linux-libre | ||||
|   (make-linux-libre %linux-libre-version | ||||
|  | @ -392,8 +392,8 @@ It has been modified to remove all non-free binary blobs.") | |||
|                     %linux-compatible-systems | ||||
|                     #:configuration-file kernel-config)) | ||||
| 
 | ||||
| (define %linux-libre-4.14-version "4.14.28") | ||||
| (define %linux-libre-4.14-hash "0xg3zsm1yjsvxir8sz7zliz8gcc8d45xh23qyiszl75cfqjl36l3") | ||||
| (define %linux-libre-4.14-version "4.14.30") | ||||
| (define %linux-libre-4.14-hash "1j1vnr4397y4js7i24jdpfq85mc50b7kjz7gz1bbbrmda6cflwig") | ||||
| 
 | ||||
| (define-public linux-libre-4.14 | ||||
|   (make-linux-libre %linux-libre-4.14-version | ||||
|  | @ -402,14 +402,14 @@ It has been modified to remove all non-free binary blobs.") | |||
|                     #:configuration-file kernel-config)) | ||||
| 
 | ||||
| (define-public linux-libre-4.9 | ||||
|   (make-linux-libre "4.9.88" | ||||
|                     "0qlhd8xw3g00i7krpfndkwxzjszk067h26qsxxsszvxyx2s6gp4x" | ||||
|   (make-linux-libre "4.9.90" | ||||
|                     "0mzy6wcxp9m9icb8mvsbywp1lrbvbv6n8rs3xszqm43dxy9zj1jd" | ||||
|                     %intel-compatible-systems | ||||
|                     #:configuration-file kernel-config)) | ||||
| 
 | ||||
| (define-public linux-libre-4.4 | ||||
|   (make-linux-libre "4.4.122" | ||||
|                     "1ayilv7474vsif3jpb723jbcy4kymv1fpdr96c1g743bad1wkqqq" | ||||
|   (make-linux-libre "4.4.124" | ||||
|                     "1368x0wki8zhk0hwz36hrkp2lr2kbm9i0fwzws201h3y85mldgh4" | ||||
|                     %intel-compatible-systems | ||||
|                     #:configuration-file kernel-config)) | ||||
| 
 | ||||
|  | @ -3761,7 +3761,7 @@ developers.") | |||
| (define-public radeontop | ||||
|   (package | ||||
|     (name "radeontop") | ||||
|     (version "1.0") | ||||
|     (version "1.1") | ||||
|     (home-page "https://github.com/clbr/radeontop/") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -3769,7 +3769,7 @@ developers.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1z38nibirqxrbsfyhfcrnzlcw16cqjp4ds6qnjfxalwayf9fm5x9")))) | ||||
|                 "1fv06j5c99imvzkac3j40lgjhr5b2i77fnyffhlvj92bli1fm1c6")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases (modify-phases %standard-phases | ||||
|  |  | |||
|  | @ -290,14 +290,6 @@ supporting ASDF, Sockets, Gray streams, MOP, and other useful components.") | |||
|                (("/bin/sh") "sh")) | ||||
|              (substitute* '("src/clisp-link.in") | ||||
|                (("/bin/pwd") "pwd")) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'remove-timestamps | ||||
|            (lambda _ | ||||
|              (substitute* "src/constobj.d" | ||||
|                (("__DATE__ __TIME__") "\"1\"")) | ||||
|              (substitute* "src/genclisph.d" | ||||
|                (("__DATE__") "\"1\"") | ||||
|                (("__TIME__") "\"1\"")) | ||||
|              #t))) | ||||
|        ;; Makefiles seem to have race conditions. | ||||
|        #:parallel-build? #f)) | ||||
|  | @ -307,10 +299,7 @@ supporting ASDF, Sockets, Gray streams, MOP, and other useful components.") | |||
|      "GNU CLISP is an implementation of ANSI Common Lisp.  Common Lisp is a | ||||
| high-level, object-oriented functional programming language.  CLISP includes | ||||
| an interpreter, a compiler, a debugger, and much more.") | ||||
|     ;; Website says gpl2+, COPYRIGHT file says gpl2; actual source files have | ||||
|     ;; a lot of gpl3+.  (Also some parts are under non-copyleft licenses, such | ||||
|     ;; as CLX by Texas Instruments.)  In that case gpl3+ wins out. | ||||
|     (license license:gpl3+))) | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public sbcl | ||||
|   (package | ||||
|  |  | |||
|  | @ -108,7 +108,7 @@ | |||
|   #:use-module (gnu packages xorg) | ||||
|   #:use-module (gnu packages docbook) | ||||
|   #:use-module ((guix licenses) | ||||
|                 #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ | ||||
|                 #:select (fdl1.1+ gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ | ||||
|                            non-copyleft (expat . license:expat) bsd-3 | ||||
|                            public-domain bsd-4 isc (openssl . license:openssl) | ||||
|                            bsd-2 x11-style agpl3 asl2.0 perl-license)) | ||||
|  | @ -298,7 +298,7 @@ operating systems.") | |||
| (define-public neomutt | ||||
|   (package | ||||
|     (name "neomutt") | ||||
|     (version "20180223") | ||||
|     (version "20180323") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -306,7 +306,7 @@ operating systems.") | |||
|                            "/archive/" name "-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1fr7158xhrhasylyxp709g9mdbggdmni3qn3baxvczfg2w003fhh")))) | ||||
|          "12v7zkm809cvjxfz0n7jb4qa410ns1ydyf0gjin99vbdrlj88jac")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("cyrus-sasl" ,cyrus-sasl) | ||||
|  | @ -621,6 +621,14 @@ security functionality including PGP, S/MIME, SSH, and SSL.") | |||
|                             "guile/mu/Makefile.in") | ||||
|                (("share/guile/site/2.0/") "share/guile/site/2.2/")) | ||||
|              #t)) | ||||
|          (add-after 'patch-configure 'fix-date-tests | ||||
|            ;; Loosen test tolerances to prevent failures caused by daylight | ||||
|            ;; saving time (DST).  See: https://github.com/djcb/mu/issues/1214. | ||||
|            (lambda _ | ||||
|              (substitute* "lib/parser/test-utils.cc" | ||||
|                (("\\* 60 \\* 60, 1 },") | ||||
|                 "* 60 * 60, 3600 + 1 },")) | ||||
|              #t)) | ||||
|          (add-before 'install 'fix-ffi | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (substitute* "guile/mu.scm" | ||||
|  | @ -1183,7 +1191,7 @@ facilities for checking incoming mail.") | |||
| (define-public dovecot | ||||
|   (package | ||||
|     (name "dovecot") | ||||
|     (version "2.3.0.1") | ||||
|     (version "2.3.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -1191,7 +1199,7 @@ facilities for checking incoming mail.") | |||
|                            (version-major+minor version) "/" | ||||
|                            name "-" version ".tar.gz")) | ||||
|        (sha256 (base32 | ||||
|                 "0lzisrdgrj5qqwjb7bv99mf2aljm568r6g108yisp0s644z2nxxb")))) | ||||
|                 "14zva4f8k64x86sm9n21cp2yvrpph6k6k52bm22a00pxjwdq50q8")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|  | @ -1208,20 +1216,23 @@ facilities for checking incoming mail.") | |||
|                   (add-before | ||||
|                    'configure 'pre-configure | ||||
|                    (lambda _ | ||||
|                      ;; Simple hack to avoid installing in /etc | ||||
|                      ;; Simple hack to avoid installing in /etc. | ||||
|                      (substitute* '("doc/Makefile.in" | ||||
|                                     "doc/example-config/Makefile.in") | ||||
|                        (("pkgsysconfdir = .*") | ||||
|                         "pkgsysconfdir = /tmp/etc")) | ||||
|                      #t)) | ||||
|                   (add-after | ||||
|                    'unpack 'patch-other-shebangs | ||||
|                    'unpack 'patch-other-file-names | ||||
|                    (lambda _ | ||||
|                      (substitute* | ||||
|                        "src/lib-program-client/test-program-client-local.c" | ||||
|                          "src/lib-program-client/test-program-client-local.c" | ||||
|                        (("(/bin/| )cat") (which "cat")) | ||||
|                        (("/bin/echo") (which "echo")) | ||||
|                        (("/bin/cat") (which "cat")) | ||||
|                        (("/bin/false") (which "false"))) | ||||
|                        (("/bin/false") (which "false")) | ||||
|                        (("/bin/sh") (which "bash")) | ||||
|                        (("head") (which "head")) | ||||
|                        (("sleep") (which "sleep"))) | ||||
|                      #t))))) | ||||
|     (home-page "https://www.dovecot.org") | ||||
|     (synopsis "Secure POP3/IMAP server") | ||||
|  | @ -2326,7 +2337,7 @@ operators and scripters.") | |||
| (define-public alpine | ||||
|   (package | ||||
|     (name "alpine") | ||||
|     (version "2.21") | ||||
|     (version "2.21.999") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -2334,11 +2345,12 @@ operators and scripters.") | |||
|        ;; patches and the version which adds extra fixes. Every distro uses | ||||
|        ;; the patched version, and so do we to not break expectations. | ||||
|        ;; http://alpine.freeiz.com/alpine/readme/README.patches | ||||
|        (uri (string-append "http://alpine.freeiz.com/alpine/patches/alpine-" | ||||
|                            version "/alpine-" version ".tar.xz")) | ||||
|        (uri (string-append "http://repo.or.cz/alpine.git/snapshot/" | ||||
|                            "349642a84039a4b026513c32a3b4f8594acd50df.tar.gz")) | ||||
|        (file-name (string-append name "-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1k9hcfjywfk3mpsl71hjza3nk6icgf1b6xxzgx10kdzg5yci5x5m")))) | ||||
|          "1rkvlfk3q7h9jcvaj91pk7l087bq4b38j30060jaw21zz94b90np")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:make-flags (list "CC=gcc") | ||||
|  | @ -2376,7 +2388,7 @@ operators and scripters.") | |||
|        ("aspell" ,aspell) | ||||
|        ("tcl" ,tcl) | ||||
|        ("linux-pam" ,linux-pam))) | ||||
|     (home-page "http://alpine.freeiz.com/alpine/") | ||||
|     (home-page "http://repo.or.cz/alpine.git") | ||||
|     (synopsis "Alternatively Licensed Program for Internet News and Email") | ||||
|     (description | ||||
|      "Alpine is a text-based mail and news client.  Alpine includes several | ||||
|  | @ -2467,3 +2479,51 @@ provides automatic tagging each time new mail is registered with notmuch.  It | |||
| can add tags based on email headers or Maildir folders and can handle spam and | ||||
| killed threads.") | ||||
|     (license isc))) | ||||
| 
 | ||||
| (define-public pan | ||||
|   (package | ||||
|     (name "pan") | ||||
|     (version "0.144") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "http://pan.rebelbase.com/download/releases/" | ||||
|                            version "/source/" name "-" version ".tar.bz2")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0l07y75z8jxhbmfv28slw81gjncs7i89x7fq44zif7xhq5vy7yli")))) | ||||
|     (arguments | ||||
|      `(#:configure-flags '("--with-gtk3" "--with-gtkspell" "--with-gnutls" | ||||
|                            "--enable-libnotify" "--enable-manual" | ||||
|                            "--enable-gkr") | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-before 'configure 'patch-gpg2 | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (substitute* "pan/usenet-utils/gpg.cc" | ||||
|                (("\"gpg2\"") (string-append "\"" | ||||
|                                             (assoc-ref inputs "gnupg") | ||||
|                                             "/bin/gpg\""))) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("gmime" ,gmime) | ||||
|        ("gnupg" ,gnupg) | ||||
|        ("gnutls" ,gnutls) | ||||
|        ("gtk+" ,gtk+) | ||||
|        ("gtkspell3" ,gtkspell3) | ||||
|        ("libnotify" ,libnotify) | ||||
|        ("libsecret" ,libsecret) | ||||
|        ("libxml2" ,libxml2) | ||||
|        ("zlib" ,zlib))) | ||||
|     (native-inputs | ||||
|      `(("gettext-minimal" ,gettext-minimal) | ||||
|        ("itstool" ,itstool) | ||||
|        ("pkg-config" ,pkg-config))) | ||||
|     (build-system gnu-build-system) | ||||
|     (home-page "http://pan.rebelbase.com/") | ||||
|     (synopsis "Pan newsreader") | ||||
|     (description "@code{pan} is a Usenet newsreader that's good at both text | ||||
| and binaries. It supports offline reading, scoring and killfiles, yEnc, NZB, | ||||
| PGP handling, multiple servers, and secure connections.") | ||||
|     ;; License of the docs: fdl-1.1; Others: gpl2. | ||||
|     (license (list fdl1.1+ gpl2)))) | ||||
|  |  | |||
|  | @ -154,7 +154,7 @@ from Mint-X-F and Faenza-Fresh icon packs.") | |||
| (define-public mate-themes | ||||
|   (package | ||||
|     (name "mate-themes") | ||||
|     (version "3.22.14") | ||||
|     (version "3.22.15") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://pub.mate-desktop.org/releases/themes/" | ||||
|  | @ -162,7 +162,7 @@ from Mint-X-F and Faenza-Fresh icon packs.") | |||
|                                   version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "09fqvlnmrvc73arl7jv9ygkxi46lw7c1q8qra6w3ap7x83f9zdak")))) | ||||
|                 "0cmlbj6vlkavdirc5xnsgwmy0m11bj9yrbv1dkq46n1s23rvv6wg")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config) | ||||
|  |  | |||
|  | @ -24,6 +24,7 @@ | |||
| ;;; Copyright © 2017 Dave Love <me@fx@gnu.org> | ||||
| ;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org> | ||||
| ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> | ||||
| ;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -1265,7 +1266,7 @@ interfaces.") | |||
| (define-public ceres | ||||
|   (package | ||||
|     (name "ceres-solver") | ||||
|     (version "1.13.0") | ||||
|     (version "1.14.0") | ||||
|     (home-page "http://ceres-solver.org/") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|  | @ -1273,7 +1274,7 @@ interfaces.") | |||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1kbxgab3q1vgyq7hjqasr1lji4b2sgn7ss351amklkb3jyhr1x0x")))) | ||||
|                 "13lfxy8x58w8vprr0nkbzziaijlh0vvqshgahvcgw0mrqdgh0i27")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      ;; TODO: Build HTML user documentation and install separately. | ||||
|  | @ -2179,8 +2180,8 @@ implemented in ANSI C, and MPI for communications.") | |||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|       (uri (string-append "https://gforge.inria.fr/frs/download.php/34618/" | ||||
|                           "scotch_" version ".tar.gz")) | ||||
|       (uri (string-append "https://gforge.inria.fr/frs/download.php/" | ||||
|                           "latestfile/298/scotch_" version ".tar.gz")) | ||||
|       (sha256 | ||||
|        (base32 "1ir088mvrqggyqdkx9qfynmiaffqbyih5qfl5mga2nrlm1qlsgzm")) | ||||
|       (patches (search-patches "scotch-test-threading.patch" | ||||
|  | @ -2841,7 +2842,7 @@ access to BLIS implementations via traditional BLAS routine calls.") | |||
| (define-public openlibm | ||||
|   (package | ||||
|     (name "openlibm") | ||||
|     (version "0.5.1") | ||||
|     (version "0.5.5") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -2850,7 +2851,7 @@ access to BLIS implementations via traditional BLAS routine calls.") | |||
|        (file-name (string-append name "-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "11czx2z7nh6dfpz45s3xl7v38hw36jxzxfvny454bk3if14pfakq")))) | ||||
|          "1z8cj5q8ca8kmrakwkpjxf8svi81waw0c568cx8v8pv9kvswbp07")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:make-flags | ||||
|  | @ -3855,3 +3856,24 @@ routines designed for solving ODEs resulting from 1-D, 2-D and 3-D partial | |||
| differential equations (PDE) that have been converted to ODEs by numerical | ||||
| differencing.") | ||||
|     (license license:gpl2+))) | ||||
| 
 | ||||
| (define-public tcalc | ||||
|   (package | ||||
|   (name "tcalc") | ||||
|   (version "2.0") | ||||
|   (source | ||||
|     (origin | ||||
|       (method url-fetch) | ||||
|       (uri (string-append "https://sites.google.com/site/mohammedisam2000/tcalc/tcalc-" | ||||
|                             version ".tar.gz")) | ||||
|       (sha256 | ||||
|         (base32 | ||||
|           "0jq806m4dqfia85nppfm75mml9w57g0cgv4cdw9bp3zymda83s0m")))) | ||||
|   (build-system gnu-build-system) | ||||
|   (synopsis "The terminal calculator") | ||||
|   (description | ||||
|     "The terminal calculator is a small program to help users of the GNU/Linux | ||||
| terminal do calculations simply and quickly.  The formula to be calculated can | ||||
| be fed to @command{tcalc} through the command line.") | ||||
|   (home-page "https://sites.google.com/site/mohammedisam2000/tcalc") | ||||
|   (license license:gpl3+))) | ||||
|  |  | |||
|  | @ -1395,7 +1395,7 @@ manual SSL certificate verification.") | |||
| (define-public libstrophe | ||||
|   (package | ||||
|     (name "libstrophe") | ||||
|     (version "0.9.1") | ||||
|     (version "0.9.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/strophe/libstrophe/archive/" | ||||
|  | @ -1403,7 +1403,7 @@ manual SSL certificate verification.") | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1hzwdax4nsz0fncf5bjfza0cn0lc6xsf38y569ql1gg5hvwr6169")))) | ||||
|                 "0vxfcyfnhnlaj6spm2b0ljw5i3knbphy6mvzpl5zv9b52ny4b08m")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("expat" ,expat) | ||||
|  |  | |||
|  | @ -88,7 +88,7 @@ interfacing MPD in the C, C++ & Objective C languages.") | |||
| (define-public mpd | ||||
|   (package | ||||
|     (name "mpd") | ||||
|     (version "0.20.17") | ||||
|     (version "0.20.18") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri | ||||
|  | @ -97,7 +97,7 @@ interfacing MPD in the C, C++ & Objective C languages.") | |||
|                               "/mpd-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1hfssmvp4wmy7zh4bl4zv2zqwiddsy77v69w9fh61pqrwbqfgc1c")))) | ||||
|                 "0d6lz8ykyvxkl0fwnd9c5vzbbhmjh1yzv7rzhprlzfchmv12sn3a")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ | |||
|   ;; to migrate to 2.0. | ||||
|   (package | ||||
|     (name "hwloc") | ||||
|     (version "1.11.8") | ||||
|     (version "1.11.10") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://www.open-mpi.org/software/hwloc/v" | ||||
|  | @ -55,7 +55,7 @@ | |||
|                                   "/downloads/hwloc-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0karxv4r1r8sa7ki5aamlxdvyvz0bvzq4gdhq0yi5nc4a0k11vzc")))) | ||||
|                 "1ryibcng40xcq22lsj85fn2vcvrksdx9rr3wwxpq8dw37lw0is1b")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (outputs '("out"           ;'lstopo' & co., depends on Cairo, libx11, etc. | ||||
|                "lib"           ;small closure | ||||
|  | @ -117,7 +117,7 @@ bind processes, and much more.") | |||
|   ;; Note: 2.0 isn't the default yet, see above. | ||||
|   (package | ||||
|     (inherit hwloc) | ||||
|     (version "2.0.0") | ||||
|     (version "2.0.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://www.open-mpi.org/software/hwloc/v" | ||||
|  | @ -125,8 +125,7 @@ bind processes, and much more.") | |||
|                                   "/downloads/hwloc-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "021765f9y6pxcxrvfpzzwaig16ypfbph5xjpkd29qkhzs9r6zrcr")) | ||||
|               (patches (search-patches "hwloc-tests-without-sysfs.patch")))) | ||||
|                 "0jf0krj1h95flmb784ifv9vnkdnajjz00p4zbhmja7vm4v67axdr")))) | ||||
| 
 | ||||
|     ;; libnuma is no longer needed. | ||||
|     (inputs (alist-delete "numactl" (package-inputs hwloc))))) | ||||
|  |  | |||
|  | @ -1954,7 +1954,7 @@ capabilities, custom envelopes, effects, etc.") | |||
| (define-public yoshimi | ||||
|   (package | ||||
|     (name "yoshimi") | ||||
|     (version "1.5.6") | ||||
|     (version "1.5.7") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/yoshimi/" | ||||
|  | @ -1962,7 +1962,7 @@ capabilities, custom envelopes, effects, etc.") | |||
|                                   "/yoshimi-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0bjfhfslpa2hjrc9h38m7dlr62953w9n4cvkgvfy495cbym12dak")))) | ||||
|                 "1w916mmi6hh547a7icrgx6qr2kwxlxwlm6ampql427rshcz9r61k")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; there are no tests | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ | |||
| (define-public nano | ||||
|   (package | ||||
|     (name "nano") | ||||
|     (version "2.9.4") | ||||
|     (version "2.9.5") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -38,7 +38,7 @@ | |||
|                           version ".tar.xz")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "0nm3zy4azr5rkxjq7jfybbj3cnddmvxc49rxyqm9cp2zfdp75y9c")))) | ||||
|         "06af9dzhgab53drpyq430fv5kf5sdba9mfw0lf3glhkznlf1i3bv")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("gettext" ,gettext-minimal) | ||||
|  |  | |||
|  | @ -1320,6 +1320,9 @@ handling for most notations in use for IPv4 and IPv6 addresses and | |||
| networks.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python2-ipy | ||||
|   (package-with-python2 python-ipy)) | ||||
| 
 | ||||
| (define-public speedtest-cli | ||||
|   (package | ||||
|     (name "speedtest-cli") | ||||
|  |  | |||
|  | @ -43,14 +43,14 @@ | |||
| (define-public node | ||||
|   (package | ||||
|     (name "node") | ||||
|     (version "9.8.0") | ||||
|     (version "9.10.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://nodejs.org/dist/v" version | ||||
|                                   "/node-v" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1mjr1rm5w26c0yb4zq6z5yv3zbvqk18lwbswhwn1sha8hapinjp8")) | ||||
|                 "0xld7jh3fx85az7s5zbbsbccnfjwp99xxfn5w0gh2zfc5dalwrg5")) | ||||
|               (modules '((guix build utils))) | ||||
|               (snippet | ||||
|                `(begin | ||||
|  |  | |||
|  | @ -39,7 +39,7 @@ | |||
| (define-public ntp | ||||
|   (package | ||||
|    (name "ntp") | ||||
|    (version "4.2.8p10") | ||||
|    (version "4.2.8p11") | ||||
|    (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -53,7 +53,7 @@ | |||
|                     "/ntp-" version ".tar.gz"))) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "17xrk7gxrl3hgg0i73n8qm53knyh01lf0f3l1zx9x6r1cip3dlnx")) | ||||
|          "13i7rp1va29ffjdk08fvsfl6n47zzwsp147zhgb550k8agvkjjpi")) | ||||
|        (modules '((guix build utils))) | ||||
|        (snippet | ||||
|         '(begin | ||||
|  |  | |||
|  | @ -3875,8 +3875,9 @@ cross-platform SDL C library.") | |||
|     (version "2.6.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://gforge.inria.fr/frs/download.php/file" | ||||
|                                   "/37054/flocq-" version ".tar.gz")) | ||||
|               ;; Use the ‘Latest version’ link for a stable URI across releases. | ||||
|               (uri (string-append "https://gforge.inria.fr/frs/download.php/" | ||||
|                                   "latestfile/2228/flocq-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "13fv150dcwnjrk00d7zj2c5x9jwmxgrq0ay440gkr730l8mvk3l3")))) | ||||
|  | @ -3894,18 +3895,22 @@ cross-platform SDL C library.") | |||
|          (add-before 'configure 'fix-remake | ||||
|            (lambda _ | ||||
|              (substitute* "remake.cpp" | ||||
|                (("/bin/sh") (which "sh"))))) | ||||
|                (("/bin/sh") (which "sh"))) | ||||
|              #t)) | ||||
|          (replace 'build | ||||
|            (lambda _ | ||||
|              (zero? (system* "./remake")))) | ||||
|              (invoke "./remake") | ||||
|              #t)) | ||||
|          (replace 'check | ||||
|            (lambda _ | ||||
|              (zero? (system* "./remake" "check")))) | ||||
|              (invoke "./remake" "check") | ||||
|              #t)) | ||||
|              ;; TODO: requires coq-gappa and coq-interval. | ||||
|              ;(zero? (system* "./remake" "check-more")))) | ||||
|              ;(invoke "./remake" "check-more") | ||||
|          (replace 'install | ||||
|            (lambda _ | ||||
|              (zero? (system* "./remake" "install"))))))) | ||||
|              (invoke "./remake" "install") | ||||
|              #t))))) | ||||
|     (home-page "http://flocq.gforge.inria.fr/") | ||||
|     (synopsis "Floating-point formalization for the Coq system") | ||||
|     (description "Flocq (Floats for Coq) is a floating-point formalization for | ||||
|  |  | |||
|  | @ -257,6 +257,8 @@ | |||
|          ;; Many tests rely on the 'guile-bootstrap' package, which is why we | ||||
|          ;; have it here. | ||||
|          ("boot-guile" ,(bootstrap-guile-origin (%current-system))) | ||||
|          ;; Some of the tests use "unshare" when it is available. | ||||
|          ("util-linux" ,util-linux) | ||||
|          ,@(if (and (not (%current-target-system)) | ||||
|                     (string=? (%current-system) "x86_64-linux")) | ||||
|                `(("boot-guile/i686" ,(bootstrap-guile-origin "i686-linux"))) | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ | |||
| (define-public parallel | ||||
|   (package | ||||
|     (name "parallel") | ||||
|     (version "20180222") | ||||
|     (version "20180322") | ||||
|     (source | ||||
|      (origin | ||||
|       (method url-fetch) | ||||
|  | @ -55,7 +55,7 @@ | |||
|                           version ".tar.bz2")) | ||||
|       (sha256 | ||||
|        (base32 | ||||
|         "1bwx1rcrqz04d8fajlllhrfkjqxg0mfvsd86wf6p067gmgdrf6g8")))) | ||||
|         "15v46pv4z98xm3fkwy7335faw4r7pilrxp4xis5a4zi4319sv2b3")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
							
								
								
									
										29
									
								
								gnu/packages/patches/classpath-aarch64-support.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								gnu/packages/patches/classpath-aarch64-support.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,29 @@ | |||
| This is modeled after the ia64 support. Aarch64 can be either big endian | ||||
| or little endian, so we add the case for both. | ||||
| 
 | ||||
| ---
 | ||||
|  native/fdlibm/ieeefp.h | 8 ++++++++ | ||||
|  1 file changed, 8 insertions(+) | ||||
| 
 | ||||
| diff --git a/native/fdlibm/ieeefp.h b/native/fdlibm/ieeefp.h
 | ||||
| index 1a9740f..73455c0 100644
 | ||||
| --- a/native/fdlibm/ieeefp.h
 | ||||
| +++ b/native/fdlibm/ieeefp.h
 | ||||
| @@ -27,6 +27,14 @@
 | ||||
|  #endif | ||||
|  #endif | ||||
|   | ||||
| +#ifdef __aarch64__
 | ||||
| +#ifdef __BIG_ENDIAN__
 | ||||
| +#define __IEEE_BIG_ENDIAN
 | ||||
| +#else
 | ||||
| +#define __IEEE_LITTLE_ENDIAN
 | ||||
| +#endif
 | ||||
| +#endif
 | ||||
| +
 | ||||
|  #ifdef __hppa__ | ||||
|  #define __IEEE_BIG_ENDIAN | ||||
|  #endif | ||||
| -- 
 | ||||
| 2.16.3 | ||||
| 
 | ||||
|  | @ -1,42 +0,0 @@ | |||
| Fix a test failure in the build environment, where /sys is missing. | ||||
| From <https://github.com/bgoglin/hwloc/commit/a2cc4f2e2bf4a8bbdd61b578a62e27e7482799cf.patch>. | ||||
| 
 | ||||
| From a2cc4f2e2bf4a8bbdd61b578a62e27e7482799cf Mon Sep 17 00:00:00 2001 | ||||
| From: Brice Goglin <Brice.Goglin@inria.fr> | ||||
| Date: Tue, 6 Feb 2018 17:13:26 +0100 | ||||
| Subject: [PATCH] linux: honor the filtering cores and packages when reading | ||||
|  topology from cpuinfo | ||||
| 
 | ||||
| Caused a make check crash in lstopo --filter all:none in chroot without sysfs. | ||||
| 
 | ||||
| Thanks to Ludovic Courtes for the report. | ||||
| 
 | ||||
| Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr> | ||||
| ---
 | ||||
|  hwloc/topology-linux.c | 6 ++++-- | ||||
|  1 file changed, 4 insertions(+), 2 deletions(-) | ||||
| 
 | ||||
| diff --git a/hwloc/topology-linux.c b/hwloc/topology-linux.c
 | ||||
| index 290da0d72..e1bbf94e1 100644
 | ||||
| --- a/hwloc/topology-linux.c
 | ||||
| +++ b/hwloc/topology-linux.c
 | ||||
| @@ -4101,7 +4101,8 @@ look_cpuinfo(struct hwloc_topology *topology,
 | ||||
|      } | ||||
|    /* create package objects */ | ||||
|    hwloc_debug("%u pkgs%s\n", numpkgs, missingpkg ? ", but some missing package" : ""); | ||||
| -  if (!missingpkg && numpkgs>0) {
 | ||||
| +  if (!missingpkg && numpkgs>0
 | ||||
| +      && hwloc_filter_check_keep_object_type(topology, HWLOC_OBJ_PACKAGE)) {
 | ||||
|      for (i = 0; i < numpkgs; i++) { | ||||
|        struct hwloc_obj *obj = hwloc_alloc_setup_object(topology, HWLOC_OBJ_PACKAGE, Lpkg_to_Ppkg[i]); | ||||
|        int doneinfos = 0; | ||||
| @@ -4145,7 +4146,8 @@ look_cpuinfo(struct hwloc_topology *topology,
 | ||||
|      } | ||||
|    /* create Core objects */ | ||||
|    hwloc_debug("%u cores%s\n", numcores, missingcore ? ", but some missing core" : ""); | ||||
| -  if (!missingcore && numcores>0) {
 | ||||
| +  if (!missingcore && numcores>0
 | ||||
| +      && hwloc_filter_check_keep_object_type(topology, HWLOC_OBJ_CORE)) {
 | ||||
|      for (i = 0; i < numcores; i++) { | ||||
|        struct hwloc_obj *obj = hwloc_alloc_setup_object(topology, HWLOC_OBJ_CORE, Lcore_to_Pcore[i]); | ||||
|        obj->cpuset = hwloc_bitmap_alloc(); | ||||
|  | @ -1,14 +1,14 @@ | |||
| diff -rp -u4 libusb-1.0.19-orig/libusb/descriptor.c libusb-1.0.19/libusb/descriptor.c
 | ||||
| --- libusb-1.0.19-orig/libusb/descriptor.c	2015-05-12 00:15:19 +0200
 | ||||
| +++ libusb-1.0.19/libusb/descriptor.c	2015-05-12 00:17:09 +0200
 | ||||
| @@ -1181,9 +1181,9 @@ int API_EXPORTED libusb_get_string_descr
 | ||||
| diff -rpu4 libusb-1.0.22.orig/libusb/descriptor.c libusb-1.0.22/libusb/descriptor.c
 | ||||
| --- libusb-1.0.22.orig/libusb/descriptor.c	2018-03-17 08:23:37.000000000 +0100
 | ||||
| +++ libusb-1.0.22/libusb/descriptor.c	2018-03-29 10:36:09.968429473 +0200
 | ||||
| @@ -1173,9 +1173,9 @@ int API_EXPORTED libusb_get_string_descr
 | ||||
|  	if (tbuf[1] != LIBUSB_DT_STRING) | ||||
|  		return LIBUSB_ERROR_IO; | ||||
|   | ||||
|  	if (tbuf[0] > r) | ||||
| -		return LIBUSB_ERROR_IO;
 | ||||
| +            tbuf[0] = r;
 | ||||
| +		tbuf[0] = r;
 | ||||
|   | ||||
|  	for (di = 0, si = 2; si < tbuf[0]; si += 2) { | ||||
|  	di = 0; | ||||
|  	for (si = 2; si < tbuf[0]; si += 2) { | ||||
|  		if (di >= (length - 1)) | ||||
|  			break; | ||||
|  |  | |||
|  | @ -1,99 +0,0 @@ | |||
| Fix CVE-2017-11114: | ||||
| 
 | ||||
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-11114 | ||||
| http://seclists.org/fulldisclosure/2017/Jul/76 | ||||
| 
 | ||||
| Patch copied from Debian: | ||||
| 
 | ||||
| https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870299#12 | ||||
| 
 | ||||
| Origin: upstream, commit: fee5dca79a93a37024e494b985386a5fe60bc1b7 | ||||
| Origin: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870299#12 | ||||
| Author: Mikulas Patocka <mikulas@twibright.com> | ||||
| Date:   Wed Aug 2 20:13:29 2017 +0200 | ||||
| Subject: Fix read out of memory in case of corrupted UTF-8 data | ||||
| 
 | ||||
| ---
 | ||||
|  charsets.c |   37 +------------------------------------ | ||||
|  links.h    |    9 ++++----- | ||||
|  2 files changed, 5 insertions(+), 41 deletions(-) | ||||
| 
 | ||||
| Index: links-2.14/charsets.c
 | ||||
| ===================================================================
 | ||||
| --- links-2.14.orig/charsets.c
 | ||||
| +++ links-2.14/charsets.c
 | ||||
| @@ -215,41 +215,6 @@ static struct conv_table *get_translatio
 | ||||
|  	return utf_table; | ||||
|  } | ||||
|   | ||||
| -unsigned short int utf8_2_uni_table[0x200] = {
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 128,	0, 0, 0, 192,	0,
 | ||||
| -	0, 0, 256,	0, 0, 0, 320,	0, 0, 0, 384,	0, 0, 0, 448,	0,
 | ||||
| -	0, 0, 512,	0, 0, 0, 576,	0, 0, 0, 640,	0, 0, 0, 704,	0,
 | ||||
| -	0, 0, 768,	0, 0, 0, 832,	0, 0, 0, 896,	0, 0, 0, 960,	0,
 | ||||
| -	0, 0, 1024,	0, 0, 0, 1088,	0, 0, 0, 1152,	0, 0, 0, 1216,	0,
 | ||||
| -	0, 0, 1280,	0, 0, 0, 1344,	0, 0, 0, 1408,	0, 0, 0, 1472,	0,
 | ||||
| -	0, 0, 1536,	0, 0, 0, 1600,	0, 0, 0, 1664,	0, 0, 0, 1728,	0,
 | ||||
| -	0, 0, 1792,	0, 0, 0, 1856,	0, 0, 0, 1920,	0, 0, 0, 1984,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -	0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0, 0, 0, 0,	0,
 | ||||
| -};
 | ||||
| -
 | ||||
|  unsigned char utf_8_1[256] = { | ||||
|  	6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, | ||||
|  	7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, | ||||
| @@ -269,7 +234,7 @@ unsigned char utf_8_1[256] = {
 | ||||
|  	3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 6, 6, | ||||
|  }; | ||||
|   | ||||
| -static_const unsigned min_utf_8[9] = {
 | ||||
| +static_const unsigned min_utf_8[8] = {
 | ||||
|  	0, 0x4000000, 0x200000, 0x10000, 0x800, 0x80, 0x100, 0x1, | ||||
|  }; | ||||
|   | ||||
| Index: links-2.14/links.h
 | ||||
| ===================================================================
 | ||||
| --- links-2.14.orig/links.h
 | ||||
| +++ links-2.14/links.h
 | ||||
| @@ -3906,15 +3906,14 @@ unsigned char *cp_strchr(int charset, un
 | ||||
|  void init_charset(void); | ||||
|   | ||||
|  unsigned get_utf_8(unsigned char **p); | ||||
| -extern unsigned short int utf8_2_uni_table[0x200];
 | ||||
|  #define GET_UTF_8(s, c)							\ | ||||
|  do {									\ | ||||
|  	if ((unsigned char)(s)[0] < 0x80)				\ | ||||
|  		(c) = (s)++[0];						\ | ||||
| -	else if (((c) = utf8_2_uni_table[((unsigned char)(s)[0] << 2) +	\
 | ||||
| -				((unsigned char)(s)[1] >> 6) - 0x200]))	\
 | ||||
| -		(c) += (unsigned char)(s)[1] & 0x3f, (s) += 2;		\
 | ||||
| -	else								\
 | ||||
| +	else if ((unsigned char)(s)[0] >= 0xc2 && (unsigned char)(s)[0] < 0xe0 &&\
 | ||||
| +	         ((unsigned char)(s)[1] & 0xc0) == 0x80) {		\
 | ||||
| +		(c) = (unsigned char)(s)[0] * 0x40 + (unsigned char)(s)[1], (c) -= 0x3080, (s) += 2;\
 | ||||
| +	} else								\
 | ||||
|  		(c) = get_utf_8(&(s));					\ | ||||
|  } while (0) | ||||
|  #define FWD_UTF_8(s)							\ | ||||
							
								
								
									
										13
									
								
								gnu/packages/patches/lyx-2.2.3-fix-test.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								gnu/packages/patches/lyx-2.2.3-fix-test.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,13 @@ | |||
| See https://www.lyx.org/trac/ticket/10800#comment:17 | ||||
| diff --git a/src/tex2lyx/test/test-structure.lyx.lyx b/src/tex2lyx/test/test-structure.lyx.lyx
 | ||||
| index feff755cd2..2c7f2ace5c 100644
 | ||||
| --- a/src/tex2lyx/test/test-structure.lyx.lyx
 | ||||
| +++ b/src/tex2lyx/test/test-structure.lyx.lyx
 | ||||
| @@ -212,7 +212,7 @@ This causes the
 | ||||
|  \begin_inset Flex Flex:Strong | ||||
|  status collapsed | ||||
|   | ||||
| -\begin_layout Standard
 | ||||
| +\begin_layout Plain Layout
 | ||||
|  logikalmkup | ||||
|  \end_layout | ||||
							
								
								
									
										88
									
								
								gnu/packages/patches/mupdf-CVE-2018-1000051.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										88
									
								
								gnu/packages/patches/mupdf-CVE-2018-1000051.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,88 @@ | |||
| Fix CVE-2018-1000051: | ||||
| 
 | ||||
| https://bugs.ghostscript.com/show_bug.cgi?id=698873 | ||||
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-1000051 | ||||
| 
 | ||||
| Patch copied from upstream source repository: | ||||
| 
 | ||||
| https://git.ghostscript.com/?p=mupdf.git;a=commit;h=321ba1de287016b0036bf4a56ce774ad11763384 | ||||
| 
 | ||||
| From 321ba1de287016b0036bf4a56ce774ad11763384 Mon Sep 17 00:00:00 2001 | ||||
| From: Sebastian Rasmussen <sebras@gmail.com> | ||||
| Date: Tue, 19 Dec 2017 23:47:47 +0100 | ||||
| Subject: [PATCH] Bug 698825: Do not drop borrowed colorspaces. | ||||
| 
 | ||||
| Previously the borrowed colorspace was dropped when updating annotation | ||||
| appearances, leading to use after free warnings from valgrind/ASAN. | ||||
| ---
 | ||||
|  source/pdf/pdf-appearance.c | 8 ++------ | ||||
|  1 file changed, 2 insertions(+), 6 deletions(-) | ||||
| 
 | ||||
| diff --git a/source/pdf/pdf-appearance.c b/source/pdf/pdf-appearance.c
 | ||||
| index 70f684f4..d7a1dddd 100644
 | ||||
| --- a/source/pdf/pdf-appearance.c
 | ||||
| +++ b/source/pdf/pdf-appearance.c
 | ||||
| @@ -2170,7 +2170,6 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p
 | ||||
|  	fz_device *dev = NULL; | ||||
|  	font_info font_rec; | ||||
|  	fz_text *text = NULL; | ||||
| -	fz_colorspace *cs = NULL;
 | ||||
|  	fz_matrix page_ctm; | ||||
|   | ||||
|  	pdf_page_transform(ctx, annot->page, NULL, &page_ctm); | ||||
| @@ -2184,11 +2183,11 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p
 | ||||
|  	fz_var(dlist); | ||||
|  	fz_var(dev); | ||||
|  	fz_var(text); | ||||
| -	fz_var(cs);
 | ||||
|  	fz_try(ctx) | ||||
|  	{ | ||||
|  		char *contents = pdf_to_str_buf(ctx, pdf_dict_get(ctx, obj, PDF_NAME_Contents)); | ||||
|  		char *da = pdf_to_str_buf(ctx, pdf_dict_get(ctx, obj, PDF_NAME_DA)); | ||||
| +		fz_colorspace *cs;
 | ||||
|  		fz_point pos; | ||||
|  		fz_rect rect; | ||||
|   | ||||
| @@ -2223,7 +2222,6 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p
 | ||||
|  		fz_drop_display_list(ctx, dlist); | ||||
|  		font_info_fin(ctx, &font_rec); | ||||
|  		fz_drop_text(ctx, text); | ||||
| -		fz_drop_colorspace(ctx, cs);
 | ||||
|  	} | ||||
|  	fz_catch(ctx) | ||||
|  	{ | ||||
| @@ -2359,7 +2357,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot
 | ||||
|  	fz_device *dev = NULL; | ||||
|  	font_info font_rec; | ||||
|  	fz_text *text = NULL; | ||||
| -	fz_colorspace *cs = NULL;
 | ||||
|  	fz_path *path = NULL; | ||||
|  	fz_buffer *fzbuf = NULL; | ||||
|  	fz_matrix page_ctm; | ||||
| @@ -2375,7 +2372,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot
 | ||||
|  	fz_var(dlist); | ||||
|  	fz_var(dev); | ||||
|  	fz_var(text); | ||||
| -	fz_var(cs);
 | ||||
|  	fz_var(fzbuf); | ||||
|  	fz_try(ctx) | ||||
|  	{ | ||||
| @@ -2384,6 +2380,7 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot
 | ||||
|  		fz_rect logo_bounds; | ||||
|  		fz_matrix logo_tm; | ||||
|  		fz_rect rect; | ||||
| +		fz_colorspace *cs = fz_device_rgb(ctx); /* Borrowed reference */
 | ||||
|   | ||||
|  		pdf_to_rect(ctx, pdf_dict_get(ctx, annot->obj, PDF_NAME_Rect), &annot_rect); | ||||
|  		rect = annot_rect; | ||||
| @@ -2396,7 +2393,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot
 | ||||
|  		fz_bound_path(ctx, path, NULL, &fz_identity, &logo_bounds); | ||||
|  		center_rect_within_rect(&logo_bounds, &rect, &logo_tm); | ||||
|  		fz_concat(&logo_tm, &logo_tm, &page_ctm); | ||||
| -		cs = fz_device_rgb(ctx); /* Borrowed reference */
 | ||||
|  		fz_fill_path(ctx, dev, path, 0, &logo_tm, cs, logo_color, 1.0f, NULL); | ||||
|   | ||||
|  		get_font_info(ctx, doc, dr, da, &font_rec); | ||||
| -- 
 | ||||
| 2.16.3 | ||||
| 
 | ||||
							
								
								
									
										109
									
								
								gnu/packages/patches/mupdf-CVE-2018-6544.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								gnu/packages/patches/mupdf-CVE-2018-6544.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,109 @@ | |||
| Fix CVE-2018-6544: | ||||
| 
 | ||||
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6544 | ||||
| https://bugs.ghostscript.com/show_bug.cgi?id=698830 | ||||
| https://bugs.ghostscript.com/show_bug.cgi?id=698965  | ||||
| 
 | ||||
| Patches copied from upstream source repository: | ||||
| 
 | ||||
| https://git.ghostscript.com/?p=mupdf.git;h=26527eef77b3e51c2258c8e40845bfbc015e405d | ||||
| https://git.ghostscript.com/?p=mupdf.git;h=b03def134988da8c800adac1a38a41a1f09a1d89 | ||||
| 
 | ||||
| From b03def134988da8c800adac1a38a41a1f09a1d89 Mon Sep 17 00:00:00 2001 | ||||
| From: Sebastian Rasmussen <sebras@gmail.com> | ||||
| Date: Thu, 1 Feb 2018 16:36:14 +0100 | ||||
| Subject: [PATCH] Bug 698830: Avoid recursion when loading object streams | ||||
|  objects. | ||||
| 
 | ||||
| If there were indirect references in the object stream dictionary and | ||||
| one of those indirect references referred to an object inside the object | ||||
| stream itself, mupdf would previously enter recursion only bounded by the | ||||
| exception stack. After this commit the object stream is checked if it is | ||||
| marked immediately after being loaded. If it is marked then we terminate | ||||
| the recursion at this point, if it is not marked then mark it and | ||||
| attempt to load the desired object within. We also take care to unmark | ||||
| the stream object when done or upon exception. | ||||
| ---
 | ||||
|  source/pdf/pdf-xref.c | 14 ++++++++++++++ | ||||
|  1 file changed, 14 insertions(+) | ||||
| 
 | ||||
| diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c
 | ||||
| index 723b543c..ed09094c 100644
 | ||||
| --- a/source/pdf/pdf-xref.c
 | ||||
| +++ b/source/pdf/pdf-xref.c
 | ||||
| @@ -1576,6 +1576,19 @@ pdf_load_obj_stm(fz_context *ctx, pdf_document *doc, int num, pdf_lexbuf *buf, i
 | ||||
|  	{ | ||||
|  		objstm = pdf_load_object(ctx, doc, num); | ||||
|   | ||||
| +		if (pdf_obj_marked(ctx, objstm))
 | ||||
| +			fz_throw(ctx, FZ_ERROR_GENERIC, "recursive object stream lookup");
 | ||||
| +	}
 | ||||
| +	fz_catch(ctx)
 | ||||
| +	{
 | ||||
| +		pdf_drop_obj(ctx, objstm);
 | ||||
| +		fz_rethrow(ctx);
 | ||||
| +	}
 | ||||
| +
 | ||||
| +	fz_try(ctx)
 | ||||
| +	{
 | ||||
| +		pdf_mark_obj(ctx, objstm);
 | ||||
| +
 | ||||
|  		count = pdf_to_int(ctx, pdf_dict_get(ctx, objstm, PDF_NAME_N)); | ||||
|  		first = pdf_to_int(ctx, pdf_dict_get(ctx, objstm, PDF_NAME_First)); | ||||
|   | ||||
| @@ -1655,6 +1668,7 @@ pdf_load_obj_stm(fz_context *ctx, pdf_document *doc, int num, pdf_lexbuf *buf, i
 | ||||
|  		fz_drop_stream(ctx, stm); | ||||
|  		fz_free(ctx, ofsbuf); | ||||
|  		fz_free(ctx, numbuf); | ||||
| +		pdf_unmark_obj(ctx, objstm);
 | ||||
|  		pdf_drop_obj(ctx, objstm); | ||||
|  	} | ||||
|  	fz_catch(ctx) | ||||
| -- 
 | ||||
| 2.16.3 | ||||
| 
 | ||||
| From 26527eef77b3e51c2258c8e40845bfbc015e405d Mon Sep 17 00:00:00 2001 | ||||
| From: Sebastian Rasmussen <sebras@gmail.com> | ||||
| Date: Mon, 29 Jan 2018 02:00:48 +0100 | ||||
| Subject: [PATCH] Bug 698830: Don't drop unkept stream if running out of error | ||||
|  stack. | ||||
| 
 | ||||
| Under normal conditions where fz_keep_stream() is called inside | ||||
| fz_try() we may call fz_drop_stream() in fz_catch() upon exceptions. | ||||
| The issue comes when fz_keep_stream() has not yet been called but is | ||||
| dropped in fz_catch(). This happens in the PDF from the bug when | ||||
| fz_try() runs out of exception stack, and next the code in fz_catch() | ||||
| runs, dropping the caller's reference to the filter chain stream! | ||||
| 
 | ||||
| The simplest way of fixing this it to always keep the filter chain | ||||
| stream before fz_try() is called. That way fz_catch() may drop the | ||||
| stream whether an exception has occurred or if the fz_try() ran out of | ||||
| exception stack. | ||||
| ---
 | ||||
|  source/pdf/pdf-stream.c | 5 ++--- | ||||
|  1 file changed, 2 insertions(+), 3 deletions(-) | ||||
| 
 | ||||
| diff --git a/source/pdf/pdf-stream.c b/source/pdf/pdf-stream.c
 | ||||
| index c89da5c4..c6ba7ad3 100644
 | ||||
| --- a/source/pdf/pdf-stream.c
 | ||||
| +++ b/source/pdf/pdf-stream.c
 | ||||
| @@ -303,14 +303,13 @@ pdf_open_raw_filter(fz_context *ctx, fz_stream *chain, pdf_document *doc, pdf_ob
 | ||||
|  		*orig_gen = 0; | ||||
|  	} | ||||
|   | ||||
| -	fz_var(chain);
 | ||||
| +	chain = fz_keep_stream(ctx, chain);
 | ||||
|   | ||||
|  	fz_try(ctx) | ||||
|  	{ | ||||
|  		len = pdf_to_int(ctx, pdf_dict_get(ctx, stmobj, PDF_NAME_Length)); | ||||
|   | ||||
| -		/* don't close chain when we close this filter */
 | ||||
| -		chain2 = fz_keep_stream(ctx, chain);
 | ||||
| +		chain2 = chain;
 | ||||
|  		chain = NULL; | ||||
|  		chain = fz_open_null(ctx, chain2, len, offset); | ||||
|   | ||||
| -- 
 | ||||
| 2.16.3 | ||||
| 
 | ||||
|  | @ -1,36 +0,0 @@ | |||
| commit 3e346a2a84b099766ea8a3a4a4549f6172483062 | ||||
| Author: Ludovic Courtès <ludo@gnu.org> | ||||
| Date:   Sun Dec 3 22:30:03 2017 +0100 | ||||
| 
 | ||||
|     service: In 'exec-command', close open ports before 'execl'. | ||||
|      | ||||
|     This gets rid of annoying "Bad file descriptor" warnings from shepherd. | ||||
|      | ||||
|     * modules/shepherd/service.scm (exec-command): In 'loop', invoke | ||||
|     'close-port' and the ports returned by (fdes->ports i). | ||||
| 
 | ||||
| diff --git a/modules/shepherd/service.scm b/modules/shepherd/service.scm
 | ||||
| index b2d8bc5..0ad28a0 100644
 | ||||
| --- a/modules/shepherd/service.scm
 | ||||
| +++ b/modules/shepherd/service.scm
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  ;; service.scm -- Representation of services. | ||||
| -;; Copyright (C) 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 | ||||
| +;; Copyright (C) 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
 | ||||
|  ;; Copyright (C) 2002, 2003 Wolfgang Järling <wolfgang@pro-linux.de> | ||||
|  ;; Copyright (C) 2014 Alex Sassmannshausen <alex.sassmannshausen@gmail.com> | ||||
|  ;; Copyright (C) 2016 Alex Kost <alezost@gmail.com> | ||||
| @@ -744,6 +744,14 @@ false."
 | ||||
|   | ||||
|         (let loop ((i 3)) | ||||
|           (when (< i max-fd) | ||||
| +           ;; First try to close any ports associated with file descriptor I.
 | ||||
| +           ;; Otherwise the finalization thread might get around to closing
 | ||||
| +           ;; those ports eventually, which will raise an EBADF exception (on
 | ||||
| +           ;; 2.2), leading to messages like "error in the finalization
 | ||||
| +           ;; thread: Bad file descriptor".
 | ||||
| +           (for-each (lambda (port)
 | ||||
| +                       (catch-system-error (close-port port)))
 | ||||
| +                     (fdes->ports i))
 | ||||
|             (catch-system-error (close-fdes i)) | ||||
|             (loop (+ i 1))))) | ||||
|  | @ -1,79 +0,0 @@ | |||
| From cc9564586729a5bb90dd5d2722b543fdde9ab821 Mon Sep 17 00:00:00 2001 | ||||
| From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= <ludo@gnu.org> | ||||
| Date: Sun, 4 Feb 2018 21:56:36 +0100 | ||||
| Subject: [PATCH] herd: 'herd status' now sorts the result. | ||||
| 
 | ||||
| Partly fixes <https://bugs.gnu.org/30299>. | ||||
| Reported by Mark H Weaver <mhw@netris.org>. | ||||
| 
 | ||||
| Previously 'tests/basic.sh' could occasionally fail on: | ||||
| 
 | ||||
|   test "`$herd status`" == "$pristine_status" | ||||
| 
 | ||||
| because the order of stopped services were not always the same.  Indeed, | ||||
| those services come from 'service-list' on the shepherd side, which uses | ||||
| 'hash-fold' to traverse the service hash table, and the traversal order | ||||
| of 'hash-fold' is undefined. | ||||
| 
 | ||||
| * modules/shepherd/scripts/herd.scm (display-status-summary)[service<?]: | ||||
| New procedure. | ||||
| [display-services]: Call 'sort' and use the above. | ||||
| ---
 | ||||
|  modules/shepherd/scripts/herd.scm | 8 ++++++-- | ||||
|  modules/shepherd/service.scm      | 5 +++-- | ||||
|  2 files changed, 9 insertions(+), 4 deletions(-) | ||||
| 
 | ||||
| diff --git a/modules/shepherd/scripts/herd.scm b/modules/shepherd/scripts/herd.scm
 | ||||
| index ebcd1e1..697446c 100644
 | ||||
| --- a/modules/shepherd/scripts/herd.scm
 | ||||
| +++ b/modules/shepherd/scripts/herd.scm
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  ;; herd.scm -- The program to herd the Shepherd. | ||||
| -;; Copyright (C) 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
 | ||||
| +;; Copyright (C) 2013, 2014, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
 | ||||
|  ;; Copyright (C) 2002, 2003 Wolfgang Jährling <wolfgang@pro-linux.de> | ||||
|  ;; | ||||
|  ;; This file is part of the GNU Shepherd. | ||||
| @@ -46,13 +46,17 @@ of pairs."
 | ||||
|   | ||||
|  (define (display-status-summary services) | ||||
|    "Display a summary of the status of all of SERVICES." | ||||
| +  (define (service<? service1 service2)
 | ||||
| +    (string<? (symbol->string (service-canonical-name service1))
 | ||||
| +              (symbol->string (service-canonical-name service2))))
 | ||||
| +
 | ||||
|    (define (display-services header bullet services) | ||||
|      (unless (null? services) | ||||
|        (display header) | ||||
|        (for-each (lambda (service) | ||||
|                    (format #t " ~a ~a~%" bullet | ||||
|                            (service-canonical-name service))) | ||||
| -                services)))
 | ||||
| +                (sort services service<?))))      ;get deterministic output
 | ||||
|    (call-with-values | ||||
|        (lambda () | ||||
|          (partition (match-lambda | ||||
| diff --git a/modules/shepherd/service.scm b/modules/shepherd/service.scm
 | ||||
| index 0ad28a0..83600e4 100644
 | ||||
| --- a/modules/shepherd/service.scm
 | ||||
| +++ b/modules/shepherd/service.scm
 | ||||
| @@ -1,5 +1,5 @@
 | ||||
|  ;; service.scm -- Representation of services. | ||||
| -;; Copyright (C) 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
 | ||||
| +;; Copyright (C) 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | ||||
|  ;; Copyright (C) 2002, 2003 Wolfgang Järling <wolfgang@pro-linux.de> | ||||
|  ;; Copyright (C) 2014 Alex Sassmannshausen <alex.sassmannshausen@gmail.com> | ||||
|  ;; Copyright (C) 2016 Alex Kost <alezost@gmail.com> | ||||
| @@ -949,7 +949,8 @@ Return #f if service is not found."
 | ||||
|                   %services)) | ||||
|   | ||||
|  (define (service-list) | ||||
| -  "Return the list of services currently defined."
 | ||||
| +  "Return the list of services currently defined.  Note: The order of the list
 | ||||
| +returned in unspecified."
 | ||||
|    (hash-fold (lambda (name services result) | ||||
|                 (let ((service (lookup-canonical-service name services))) | ||||
|                   (if service | ||||
| -- 
 | ||||
| 2.16.1 | ||||
| 
 | ||||
							
								
								
									
										60
									
								
								gnu/packages/patches/translate-shell-fix-curl-tests.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								gnu/packages/patches/translate-shell-fix-curl-tests.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,60 @@ | |||
| This patch fixes Curl related tests for 'translate-shell'. | ||||
| 
 | ||||
| Upstream bug URL: | ||||
| 
 | ||||
| https://github.com/soimort/translate-shell/issues/221 | ||||
| 
 | ||||
| From bb9f32d3145125ba664b6b05bf0a2fd34108e9d2 Mon Sep 17 00:00:00 2001 | ||||
| From: Mort Yao <soi@mort.ninja> | ||||
| Date: Sun, 25 Mar 2018 03:14:33 +0200 | ||||
| Subject: [PATCH] TestUtils: perform curl-related tests only if NETWORK_ACCESS | ||||
|  is set to yes (#221) | ||||
| 
 | ||||
| ---
 | ||||
|  test/TestUtils.awk | 32 +++++++++++++++++--------------- | ||||
|  1 file changed, 17 insertions(+), 15 deletions(-) | ||||
| 
 | ||||
| diff --git a/test/TestUtils.awk b/test/TestUtils.awk
 | ||||
| index 08bb2e9..1c141e5 100644
 | ||||
| --- a/test/TestUtils.awk
 | ||||
| +++ b/test/TestUtils.awk
 | ||||
| @@ -30,22 +30,24 @@ BEGIN {
 | ||||
|          assertTrue(newerVersion("2", "1.9.9999")) | ||||
|      } | ||||
|   | ||||
| -    T("curl()", 1)
 | ||||
| -    {
 | ||||
| -        delete tokens; delete ast
 | ||||
| -        tokenize(tokens, curl("https://httpbin.org/get"))
 | ||||
| -        parseJson(ast, tokens)
 | ||||
| -        assertEqual(unparameterize(ast[0 SUBSEP "url"]),
 | ||||
| -                    "https://httpbin.org/get")
 | ||||
| -    }
 | ||||
| +    if (yn(ENVIRON["NETWORK_ACCESS"])) { # if network access enabled
 | ||||
| +        T("curl()", 1)
 | ||||
| +        {
 | ||||
| +            delete tokens; delete ast
 | ||||
| +            tokenize(tokens, curl("https://httpbin.org/get"))
 | ||||
| +            parseJson(ast, tokens)
 | ||||
| +            assertEqual(unparameterize(ast[0 SUBSEP "url"]),
 | ||||
| +                        "https://httpbin.org/get")
 | ||||
| +        }
 | ||||
|   | ||||
| -    T("curlPost()", 1)
 | ||||
| -    {
 | ||||
| -        delete tokens; delete ast
 | ||||
| -        tokenize(tokens, curlPost("https://httpbin.org/post", "fizz=buzz"))
 | ||||
| -        parseJson(ast, tokens)
 | ||||
| -        assertEqual(unparameterize(ast[0 SUBSEP "url"]),
 | ||||
| -                    "https://httpbin.org/post")
 | ||||
| +        T("curlPost()", 1)
 | ||||
| +        {
 | ||||
| +            delete tokens; delete ast
 | ||||
| +            tokenize(tokens, curlPost("https://httpbin.org/post", "fizz=buzz"))
 | ||||
| +            parseJson(ast, tokens)
 | ||||
| +            assertEqual(unparameterize(ast[0 SUBSEP "url"]),
 | ||||
| +                        "https://httpbin.org/post")
 | ||||
| +        }
 | ||||
|      } | ||||
|   | ||||
|      T("dump()", 3) | ||||
|  | @ -574,7 +574,9 @@ extracting content or merging files.") | |||
|         (uri (string-append "https://mupdf.com/downloads/archive/" | ||||
|                             name "-" version "-source.tar.xz")) | ||||
|         (patches (search-patches "mupdf-build-with-latest-openjpeg.patch" | ||||
|                                  "mupdf-CVE-2017-17858.patch")) | ||||
|                                  "mupdf-CVE-2017-17858.patch" | ||||
|                                  "mupdf-CVE-2018-6544.patch" | ||||
|                                  "mupdf-CVE-2018-1000051.patch")) | ||||
|         (sha256 | ||||
|          (base32 | ||||
|           "0b9j0gqbc3jhmx87r6idcsh8lnb30840c3hyx6dk2gdjqqh3hysp")) | ||||
|  |  | |||
|  | @ -21,6 +21,7 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (gnu packages perl-check) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix build-system perl)) | ||||
| 
 | ||||
|  | @ -46,3 +47,26 @@ keep you going, learning by doing was much fun.  While most of the techniques | |||
| used are outdated now, the idea behind it is not.  Mojolicious is a new | ||||
| endeavor to implement this idea using modern technologies.") | ||||
|     (license license:artistic2.0))) | ||||
| 
 | ||||
| (define-public perl-uri-escape | ||||
|   (package | ||||
|     (name "perl-uri-escape") | ||||
|     (version "1.73") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/URI-" | ||||
|                            version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "04z4xwiryrbxxi48bwbkgq9q9pwfgqry3wp0ramcrwv3dx5ap9yc")))) | ||||
|     (build-system perl-build-system) | ||||
|     (native-inputs | ||||
|      `(("perl-test-needs" ,perl-test-needs))) | ||||
|     (home-page "https://github.com/libwww-perl/URI") | ||||
|     (synopsis "Percent-encode and percent-decode unsafe characters") | ||||
|     (description "This module provides functions to percent-encode and | ||||
| percent-decode URI strings as defined by RFC 3986.  Percent-encoding URI's is | ||||
| informally called URI escaping.  This is the terminology used by this module, | ||||
| which predates the formalization of the terms by the RFC by several years.") | ||||
|     (license license:perl-license))) | ||||
|  |  | |||
|  | @ -7954,7 +7954,7 @@ algorism to indicate multiplication by 1000.") | |||
| (define-public perl-text-simpletable | ||||
|   (package | ||||
|     (name "perl-text-simpletable") | ||||
|     (version "2.03") | ||||
|     (version "2.04") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -7962,7 +7962,7 @@ algorism to indicate multiplication by 1000.") | |||
|                            "Text-SimpleTable-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "15hpry9jwrf1vbjyk21s65rllxrdvp2fdzzv9gsvczggby2yyzfs")))) | ||||
|          "14sjmdcy7s73sk740g3ccmzmwhwd52x5ay3bjmibjlql1cag70ld")))) | ||||
|     (build-system perl-build-system) | ||||
|     (home-page "http://search.cpan.org/dist/Text-SimpleTable/") | ||||
|     (synopsis "Simple ASCII tables") | ||||
|  |  | |||
|  | @ -184,7 +184,7 @@ MTP, and much more.") | |||
| (define-public perl-image-exiftool | ||||
|   (package | ||||
|     (name "perl-image-exiftool") | ||||
|     (version "10.55") | ||||
|     (version "10.80") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -192,7 +192,7 @@ MTP, and much more.") | |||
|                     version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0z8zwjjfvyllnhsafhddbybywpgqv0pl1dbn1g034cs27yj836q2")))) | ||||
|                 "14rwr5wk2snqv4yva6fax1gfsdv88941n237m0wyzn3n0xh9dy5w")))) | ||||
|     (build-system perl-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  | @ -330,7 +330,7 @@ photographic equipment.") | |||
| (define-public darktable | ||||
|   (package | ||||
|     (name "darktable") | ||||
|     (version "2.4.0") | ||||
|     (version "2.4.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -339,7 +339,7 @@ photographic equipment.") | |||
|                     version "/darktable-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0y0q7a7k09sbg05k5xl1lz8n2ak1v8yarfv222ksvmbrxs53hdwx")))) | ||||
|                 "10asz918kv2248px3w9bn5k8cfrad5xrci58x9y61l0yf5hcpk0r")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ; There are no tests. | ||||
|  | @ -470,14 +470,14 @@ a complete panorama and stitch any series of overlapping pictures.") | |||
| (define-public rawtherapee | ||||
|   (package | ||||
|     (name "rawtherapee") | ||||
|     (version "5.3") | ||||
|     (version "5.4") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://rawtherapee.com/shared/source/" | ||||
|                                   "rawtherapee-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1y1ygxqmqfp4zg8rcgrlfdc1597cyr5zqgp5zjpldhvwdfa9r5cp")))) | ||||
|                 "1229hxqq824hcqg1hy2cfglsp7kjbhhis9m33ss39pgmrb1w227d")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      '(#:tests? #f ; no test suite | ||||
|  |  | |||
							
								
								
									
										68
									
								
								gnu/packages/pure.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										68
									
								
								gnu/packages/pure.scm
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,68 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.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 pure) | ||||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix utils) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix gexp) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages llvm) | ||||
|   #:use-module (gnu packages multiprecision)) | ||||
| 
 | ||||
| (define-public pure | ||||
|   (package | ||||
|     (name "pure") | ||||
|     (version "0.67") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://github.com/agraef/pure-lang/releases/" | ||||
|                            "download/pure-" version "/" | ||||
|                            "pure-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1hlx5dx6n70rbg668yc97yj4jbnrv0dpfw3l9b0ffmcgr76f6ba4")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:make-flags (list (string-append "LDFLAGS=-Wl,-rpath=" | ||||
|                                          (assoc-ref %outputs "out") | ||||
|                                          "/lib")) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'patch-llvm-lookup | ||||
|            (lambda _ | ||||
|              (substitute* "configure" | ||||
|                (("-lLLVM-[$][{]llvm_version[}]") | ||||
|                 "`$LLVMCONF --libs`")) | ||||
|              #t))))) | ||||
|     (inputs | ||||
|      `(("gmp" ,gmp) | ||||
|        ("llvm" ,llvm-3.5) | ||||
|        ("mpfr" ,mpfr))) | ||||
|     (home-page "https://agraef.github.io/pure-lang/") | ||||
|     (synopsis "Pure programming Language") | ||||
|     (description "@code{pure} is a programming language based on term | ||||
| rewriting.  It offers equational definitions with pattern matching, | ||||
| full symbolic rewriting capabilities, dynamic typing, eager and lazy | ||||
| evaluation, lexical closures, built-in list and matrix support and | ||||
| a C interface.") | ||||
|     (license license:gpl3+))) | ||||
|  | @ -281,14 +281,14 @@ is used by the Requests library to verify HTTPS requests.") | |||
| (define-public python-cryptography-vectors | ||||
|   (package | ||||
|     (name "python-cryptography-vectors") | ||||
|     (version "2.2") | ||||
|     (version "2.2.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "cryptography_vectors" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "03cpmi5azvipphmva7dxv8k3w7ffblvn5452rs5r6smdhxyiqq6g")))) | ||||
|          "1zk2shzpa9kw8fgwpsbdm5cgvbjd05vh2q6r0x9jlzq5vvjg4z5y")))) | ||||
|     (build-system python-build-system) | ||||
|     (home-page "https://github.com/pyca/cryptography") | ||||
|     (synopsis "Test vectors for the cryptography package") | ||||
|  | @ -303,14 +303,14 @@ is used by the Requests library to verify HTTPS requests.") | |||
| (define-public python-cryptography | ||||
|   (package | ||||
|     (name "python-cryptography") | ||||
|     (version "2.2") | ||||
|     (version "2.2.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "cryptography" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0j2gwr4qxvskip77z4n9nqvr4vi243n3bzij18ay4drc6sg2g87m")))) | ||||
|          "1lxj3kqp552c715p0hzixpdhnz4ggd3jb7zz15q8dw534b9xknnx")))) | ||||
|     (build-system python-build-system) | ||||
|     (inputs | ||||
|      `(("openssl" ,openssl))) | ||||
|  |  | |||
|  | @ -47,7 +47,8 @@ | |||
| ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> | ||||
| ;;; Copyright © 2018 Ethan R. Jones <ethanrjones97@gmail.com | ||||
| ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> | ||||
| ;;; | ||||
| ;;; Copyright © 2018 Vijayalakshmi Vedantham <vijimay12@gmail.com> | ||||
| 
 | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
| ;;; GNU Guix is free software; you can redistribute it and/or modify it | ||||
|  | @ -468,6 +469,24 @@ data types.") | |||
|               ("openssl" ,openssl) | ||||
|               ("zlib" ,zlib))))) | ||||
| 
 | ||||
| (define-public python-debug | ||||
|   (package | ||||
|     (inherit python) | ||||
|     (name "python-debug") | ||||
|     (outputs '("out" "debug")) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      (substitute-keyword-arguments (package-arguments python) | ||||
|        ((#:configure-flags flags '()) | ||||
|         `(cons "--with-pydebug" ,flags)))) | ||||
|     (synopsis | ||||
|      "High-level, dynamically-typed programming language (for debugging)") | ||||
|     (description | ||||
|      "This variant of Python provides an interpreter built with | ||||
| @code{--with-pydebug} to help develop and debug extensions.  See | ||||
| @url{https://pythonextensionpatterns.readthedocs.io/en/latest/debugging/debug.html}, | ||||
| for more information."))) | ||||
| 
 | ||||
| (define* (wrap-python3 python | ||||
|                        #:optional | ||||
|                        (name (string-append (package-name python) "-wrapper"))) | ||||
|  | @ -592,6 +611,33 @@ pidof, tty, taskset, pmap.") | |||
| planar geometric objects.  It is based on the @code{GEOS} library.") | ||||
|     (license license:bsd-3))) | ||||
| 
 | ||||
| (define-public python-logwrap | ||||
|   (package | ||||
|     (name "python-logwrap") | ||||
|     (version "3.2.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "logwrap" version ".zip")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1d2k0hvpbi51vl410y8fbs5m0nxnlh2k7gr2nrh3k81ibhzscsra")))) | ||||
|     (build-system python-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("python-six" ,python-six) | ||||
|        ("python-typing" ,python-typing))) | ||||
|     (native-inputs | ||||
|      `(("unzip" ,unzip) | ||||
|        ("python-cython" ,python-cython) | ||||
|        ("python-pytest" ,python-pytest) | ||||
|        ("python-pytest-cov" ,python-pytest-cov) | ||||
|        ("python-pytest-runner" ,python-pytest-runner))) | ||||
|     (home-page "https://github.com/penguinolog/logwrap") | ||||
|     (synopsis "Decorator for logging function arguments") | ||||
|     (description "This package provides a decorator to log function arguments | ||||
| and function call return values in a human-readable way.") | ||||
|     (license license:asl2.0))) | ||||
| 
 | ||||
| (define-public python2-shapely | ||||
|   (package-with-python2 python-shapely)) | ||||
| 
 | ||||
|  | @ -1807,15 +1853,14 @@ files.") | |||
| (define-public python-pyld | ||||
|   (package | ||||
|     (name "python-pyld") | ||||
|     (version "0.7.1") | ||||
|     (version "1.0.3") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "PyLD" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1m0fs6897vxfkf7awah5i66i7b7smm5fnywf1w50fpzyfbfhr156")))) | ||||
|                 "12i2g6xdj30k7xxcibg3sc5y76snwq8l6n8fy9lyi577kgy0h2pm")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments `(#:tests? #f)) ; no tests | ||||
|     (home-page "https://github.com/digitalbazaar/pyld") | ||||
|     (synopsis "Python implementation of the JSON-LD specification") | ||||
|     (description | ||||
|  | @ -5687,9 +5732,7 @@ markdown_py is also provided to convert Markdown files to HTML.") | |||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append | ||||
|              "https://pypi.python.org/packages/source/p/ptyprocess/ptyprocess-" | ||||
|              version ".tar.gz")) | ||||
|        (uri (pypi-uri "ptyprocess" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0ra31k10v3629xq0kdn8lwmfbi97anmk48r03yvh7mks0kq96hg6")))) | ||||
|  | @ -5840,9 +5883,7 @@ from an XML-based format.") | |||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://pypi.python.org/packages/57/4f/" | ||||
|                            "889579244947368f28eda66b782331b1e75f83fd72e63f9ece93cd7a18f9" | ||||
|                            "/python-ly-" version ".tar.gz")) | ||||
|        (uri (pypi-uri name version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "0x98dv7p8mg26p4816yy8hz4f34zf6hpnnfmr56msgh9jnsm2qfl")))) | ||||
|  |  | |||
|  | @ -8,7 +8,7 @@ | |||
| ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
|  | @ -669,14 +669,14 @@ line of code.") | |||
| (define-public ruby-asciidoctor | ||||
|   (package | ||||
|   (name "ruby-asciidoctor") | ||||
|   (version "1.5.6.1") | ||||
|   (version "1.5.6.2") | ||||
|   (source | ||||
|     (origin | ||||
|       (method url-fetch) | ||||
|       (uri (rubygems-uri "asciidoctor" version)) | ||||
|       (sha256 | ||||
|         (base32 | ||||
|           "1jnf9y8q5asfdzilp8vcqafrc2faj719df4yh1993mh6jd0iqdy4")))) | ||||
|           "0zq3az4836nxkc8g5wnnbzmarw7663s1ky6gf8pc04sfpa8n2l3f")))) | ||||
|   (build-system ruby-build-system) | ||||
|   (arguments | ||||
|    `(#:test-target "test:all" | ||||
|  | @ -4964,14 +4964,14 @@ Markdown.") | |||
| (define-public ruby-rake | ||||
|   (package | ||||
|     (name "ruby-rake") | ||||
|     (version "12.3.0") | ||||
|     (version "12.3.1") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (rubygems-uri "rake" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "190p7cs8zdn07mjj6xwwsdna3g0r98zs4crz7jh2j2q5b0nbxgjf")))) | ||||
|          "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg")))) | ||||
|     (build-system ruby-build-system) | ||||
|     (native-inputs | ||||
|      `(("bundler" ,bundler))) | ||||
|  |  | |||
|  | @ -233,14 +233,14 @@ Desktops into Active Directory environments using the winbind daemon.") | |||
| (define-public talloc | ||||
|   (package | ||||
|     (name "talloc") | ||||
|     (version "2.1.11") | ||||
|     (version "2.1.12") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://www.samba.org/ftp/talloc/talloc-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1lzfxv2zjxap5snf9ydl1bqgjpz0kgkq7n644f8rkbx0arav77k3")))) | ||||
|                 "0jv0ri9vj93fczzgl7rn7xvnfgl2kfx4x85cr8h8v52yh7v0qz4q")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:phases | ||||
|  |  | |||
|  | @ -954,3 +954,70 @@ implementation includes Hobbit, a Scheme-to-C compiler, which can | |||
| generate C files whose binaries can be dynamically or statically | ||||
| linked with a SCM executable.") | ||||
|     (license lgpl3+))) | ||||
| 
 | ||||
| (define-public tinyscheme | ||||
|   (package | ||||
|     (name "tinyscheme") | ||||
|     (version "1.41") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://sourceforge/" name "/" name "/" | ||||
|                                   name "-" version "/" name "-" version ".zip")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0yqma4jrjgj95f3hf30h542x97n8ah234n19yklbqq0phfsa08wf")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("unzip" ,unzip))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (replace 'unpack | ||||
|            (lambda* (#:key source #:allow-other-keys) | ||||
|              (invoke "unzip" source) | ||||
|              (chdir (string-append ,name "-" ,version)) | ||||
|              #t)) | ||||
|          (add-after 'unpack 'set-scm-directory | ||||
|            ;; Hard-code ‘our’ init.scm instead of looking in the current | ||||
|            ;; working directory, so invoking ‘scheme’ just works. | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out (assoc-ref outputs "out")) | ||||
|                     (scm (string-append out "/share/" ,name))) | ||||
|                (substitute* "scheme.c" | ||||
|                  (("init.scm" all) | ||||
|                   (string-append scm "/" all))) | ||||
|                #t))) | ||||
|          (delete 'configure)            ; no configure script | ||||
|          (replace 'install | ||||
|            ;; There's no ‘install’ target.  Install files manually. | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let* ((out     (assoc-ref outputs "out")) | ||||
|                     (bin     (string-append out "/bin")) | ||||
|                     (doc     (string-append out "/share/doc/" | ||||
|                                             ,name "-" ,version)) | ||||
|                     (include (string-append out "/include")) | ||||
|                     (lib     (string-append out "/lib")) | ||||
|                     (scm     (string-append out "/share/" ,name))) | ||||
|                (install-file "scheme" bin) | ||||
|                (install-file "Manual.txt" doc) | ||||
|                (install-file "scheme.h" include) | ||||
|                (install-file "libtinyscheme.so" lib) | ||||
|                (install-file "init.scm" scm) | ||||
|                #t)))) | ||||
|        #:tests? #f))                    ; no tests | ||||
|     (home-page "http://tinyscheme.sourceforge.net/") | ||||
|     (synopsis "Light-weight interpreter for the Scheme programming language") | ||||
|     (description | ||||
|      "TinyScheme is a light-weight Scheme interpreter that implements as large a | ||||
| subset of R5RS as was possible without getting very large and complicated. | ||||
| 
 | ||||
| It's meant to be used as an embedded scripting interpreter for other programs. | ||||
| As such, it does not offer an Integrated Development Environment (@dfn{IDE}) or | ||||
| extensive toolkits, although it does sport a small (and optional) top-level | ||||
| loop. | ||||
| 
 | ||||
| As an embedded interpreter, it allows multiple interpreter states to coexist in | ||||
| the same program, without any interference between them.  Foreign functions in C | ||||
| can be added and values can be defined in the Scheme environment.  Being quite a | ||||
| small program, it is easy to comprehend, get to grips with, and use.") | ||||
|     (license bsd-3)))                   ; there are no licence headers | ||||
|  |  | |||
|  | @ -248,7 +248,7 @@ that implements both the msgpack and msgpack-rpc specifications.") | |||
| (define-public yaml-cpp | ||||
|   (package | ||||
|     (name "yaml-cpp") | ||||
|     (version "0.5.3") | ||||
|     (version "0.6.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -256,7 +256,7 @@ that implements both the msgpack and msgpack-rpc specifications.") | |||
|                     "yaml-cpp-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1ck7jk0wjfigrf4cgcjqsir4yp1s6vamhhxhpsgfvs46pgm5pk6y")))) | ||||
|                 "038ddf771d1zrdfiwqzq2lsjdis1fxbaasbdja2w9f1av3k3gv15")))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) | ||||
|  |  | |||
|  | @ -86,6 +86,10 @@ | |||
|          (modify-phases %standard-phases | ||||
|            (add-after 'unpack 'autogen | ||||
|              (lambda _ | ||||
|                ;; Build without '-Werror', in particular to avoid errors due | ||||
|                ;; to the use of the deprecated 'libusb_set_debug' function. | ||||
|                (substitute* "configure.ac" | ||||
|                  (("-Werror") "")) | ||||
|                (zero? (system* "autoreconf" "-vfi"))))))) | ||||
|       (synopsis "Tools for sending USB device traffic over a network") | ||||
|       (description "Usbredir is a network protocol for sending USB device traffic | ||||
|  |  | |||
|  | @ -589,7 +589,7 @@ authentication}.") | |||
| (define-public autossh | ||||
|   (package | ||||
|     (name "autossh") | ||||
|     (version "1.4e") | ||||
|     (version "1.4f") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -597,7 +597,7 @@ authentication}.") | |||
|              "http://www.harding.motd.ca/autossh/autossh-" | ||||
|              version ".tgz")) | ||||
|        (sha256 | ||||
|         (base32 "0mlicw28vq2jxa0jf0dys5ja75v0fxpjavlq9dpif6bnknji13ly")))) | ||||
|         (base32 "1wpqwa2872nqgqbhnb6nnkrlzpdawd5k69gh1qp68354pvhyawh1")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments `(#:tests? #f)) ; There is no "make check" or anything similar | ||||
|     (inputs `(("openssh" ,openssh))) | ||||
|  |  | |||
|  | @ -2672,16 +2672,17 @@ that package, other packages are unaffected.") | |||
| (define-public r-blob | ||||
|   (package | ||||
|     (name "r-blob") | ||||
|     (version "1.1.0") | ||||
|     (version "1.1.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "blob" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "05pazzcyz3c3vd2l70zq9cf172cgjff4dnf419zigfnxycyn1mhn")))) | ||||
|                 "0lsg91hk508dd95ivig2lwg62qafwnarjw68110kx63cfk4zkjxc")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-tibble" ,r-tibble))) | ||||
|      `(("r-prettyunits" ,r-prettyunits) | ||||
|        ("r-tibble" ,r-tibble))) | ||||
|     (home-page "https://github.com/hadley/blob") | ||||
|     (synopsis "Simple S3 Class for representing vectors of binary data") | ||||
|     (description "Raw vectors in R are useful for storing a single binary | ||||
|  | @ -3837,8 +3838,9 @@ from within R.") | |||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (string-append "https://gforge.inria.fr/frs/download.php/36615/" | ||||
|                            "spams-R-v" version ".tar.gz")) | ||||
|        ;; Use the ‘Latest version’ link for a stable URI across releases. | ||||
|        (uri (string-append "https://gforge.inria.fr/frs/download.php/" | ||||
|                            "latestfile/4531/spams-R-v" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "13z2293jixf1r9g8dyy856xrhvpjr2ln2n9smn6644126r9hmhkx")))) | ||||
|  | @ -3848,7 +3850,7 @@ from within R.") | |||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'chdir | ||||
|            (lambda _ (chdir "spams") #t)) | ||||
|          ;; Don't tune for the building machine | ||||
|          ;; Don't tune for the building machine. | ||||
|          (add-after 'chdir 'no-mtune | ||||
|            (lambda _ | ||||
|              (substitute* "src/Makevars" | ||||
|  | @ -4525,14 +4527,14 @@ perform @dfn{independent component analysis} (ICA) and projection pursuit.") | |||
| (define-public r-randomforest | ||||
|   (package | ||||
|     (name "r-randomforest") | ||||
|     (version "4.6-12") | ||||
|     (version "4.6-14") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (cran-uri "randomForest" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1i43idaihhl6nwqw42v9dqpl6f8z3ykcn2in32lh2755i27jylbf")))) | ||||
|          "0kbmm0l42fc2d1rdq0l7k09d34kd87q4lx651ffsic4y84h8kf7l")))) | ||||
|     (properties `((upstream-name . "randomForest"))) | ||||
|     (build-system r-build-system) | ||||
|     (home-page "https://www.stat.berkeley.edu/~breiman/RandomForests/") | ||||
|  |  | |||
|  | @ -32,7 +32,7 @@ | |||
| (define-public newsboat | ||||
|   (package | ||||
|     (name "newsboat") | ||||
|     (version "2.10.2") | ||||
|     (version "2.11") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -40,7 +40,7 @@ | |||
|                            "/newsboat-" version ".tar.xz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1x4nxx1kvmrcm8jy73dvg56h4z15y3sach2vr13cw8rsbi7v99px")))) | ||||
|          "0yh1qdk15s9k4pffiw1155whfckpffq72dpyp9rck7yxgy5ya1hx")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs | ||||
|      `(("gettext" ,gettext-minimal) | ||||
|  | @ -49,7 +49,7 @@ | |||
|        ("asciidoc" ,asciidoc))) | ||||
|     (inputs | ||||
|      `(("curl" ,curl) | ||||
|        ("json-c" ,json-c-0.12)      ; check whether json-c-0.12 can be removed | ||||
|        ("json-c" ,json-c) | ||||
|        ("libxml2" ,libxml2) | ||||
|        ("ncurses" ,ncurses) | ||||
|        ("stfl" ,stfl) | ||||
|  | @ -64,6 +64,9 @@ | |||
|        #:make-flags | ||||
|        (list (string-append "prefix=" (assoc-ref %outputs "out"))) | ||||
|        #:test-target "test")) | ||||
|     (native-search-paths | ||||
|      ;; Newsboat respects CURL_CA_BUNDLE. | ||||
|      (package-native-search-paths curl)) | ||||
|     (home-page "https://newsboat.org/") | ||||
|     (synopsis "Text-mode RSS and Atom feed reader with podcast support") | ||||
|     (description "Newsboat is a feed reader for @dfn{RSS} and @dfn{Atom}, XML | ||||
|  |  | |||
|  | @ -10,6 +10,7 @@ | |||
| ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> | ||||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Danny Milosavljevic <dannym+a@scratchpost.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -30,6 +31,7 @@ | |||
|   #:use-module ((guix licenses) #:prefix license:) | ||||
|   #:use-module (guix packages) | ||||
|   #:use-module (guix download) | ||||
|   #:use-module (guix build-system cmake) | ||||
|   #:use-module (guix build-system gnu) | ||||
|   #:use-module (guix build-system perl) | ||||
|   #:use-module (guix build-system trivial) | ||||
|  | @ -38,8 +40,10 @@ | |||
|   #:use-module (guix git-download) | ||||
|   #:use-module (guix svn-download) | ||||
|   #:use-module (gnu packages) | ||||
|   #:use-module (gnu packages algebra) | ||||
|   #:use-module (gnu packages autotools) | ||||
|   #:use-module (gnu packages bash) | ||||
|   #:use-module (gnu packages boost) | ||||
|   #:use-module (gnu packages compression) | ||||
|   #:use-module (gnu packages fontutils) | ||||
|   #:use-module (gnu packages gd) | ||||
|  | @ -47,6 +51,7 @@ | |||
|   #:use-module (gnu packages gtk) | ||||
|   #:use-module (gnu packages icu4c) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages libreoffice) | ||||
|   #:use-module (gnu packages lua) | ||||
|   #:use-module (gnu packages multiprecision) | ||||
|   #:use-module (gnu packages pdf) | ||||
|  | @ -762,6 +767,8 @@ symbol fonts.") | |||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (let ((mf (assoc-ref inputs "texlive-metafont-base")) | ||||
|                    (cwd (getcwd))) | ||||
|                ;; Make METAFONT reproducible | ||||
|                (setenv "SOURCE_DATE_EPOCH" "1") | ||||
|                ;; Tell mf where to find mf.base | ||||
|                (setenv "MFBASES" (string-append mf "/share/texmf-dist/web2c")) | ||||
|                ;; Tell mf where to look for source files | ||||
|  | @ -4266,3 +4273,90 @@ develop documents with LaTeX, in a single application.") | |||
| plain TeX, and Eplain, originally written by Paul Abrahams, Kathryn Hargreaves, | ||||
| and Karl Berry.") | ||||
|     (license license:fdl1.3+))) | ||||
| 
 | ||||
| (define-public lyx | ||||
|   (package | ||||
|     (name "lyx") | ||||
|     (version "2.2.3") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "http://ftp.lyx.org/pub/lyx/stable/2.2.x/" | ||||
|                                  name "-" version ".tar.gz")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "0xvaz0i371nn2ndinc0d3ywj76ivb62649a4sdgwbivisiahd2fj")) | ||||
|              (patches (search-patches "lyx-2.2.3-fix-test.patch")) | ||||
|              (modules '((guix build utils))) | ||||
|              (snippet | ||||
|               '(begin | ||||
|                 (delete-file-recursively "3rdparty") | ||||
|                 #t)))) | ||||
|     (build-system cmake-build-system) | ||||
|     (arguments | ||||
|      `(#:configure-flags `("-DLYX_USE_QT=QT5" | ||||
|                            "-DLYX_EXTERNAL_BOOST=1" | ||||
|                            "-DLYX_INSTALL=1" | ||||
|                            "-DLYX_RELEASE=1" | ||||
|                            ,(string-append "-DLYX_INSTALL_PREFIX=" | ||||
|                                            (assoc-ref %outputs "out") | ||||
|                                            ;; Exact name and level is necessary. | ||||
|                                            "/lyx2.2")) | ||||
|        #:phases | ||||
|        (modify-phases %standard-phases | ||||
|          (add-after 'unpack 'patch-python | ||||
|            (lambda* (#:key inputs #:allow-other-keys) | ||||
|              (substitute* '("src/support/os.cpp") | ||||
|               (("\"python ") | ||||
|                (string-append "\"" | ||||
|                               (assoc-ref inputs "python-2") | ||||
|                               "/bin/python "))) | ||||
|              #t)) | ||||
|          (add-after 'patch-python 'patch-installer | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (substitute* "CMakeLists.txt" | ||||
|               (("/usr/local/man/man1") | ||||
|                (string-append (assoc-ref outputs "out") | ||||
|                               "/share/man/man1"))) | ||||
|              #t)) | ||||
|          (add-after 'patch-python 'patch-desktop-file | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (substitute* "lib/lyx.desktop.in" | ||||
|               (("Exec=") | ||||
|                (string-append "Exec=" | ||||
|                               (assoc-ref outputs "out") | ||||
|                               "/"))) | ||||
|              #t)) | ||||
|          (add-before 'check 'setenv-check | ||||
|            (lambda _ | ||||
|              (setenv "LYX_DIR_22x" (string-append (getcwd) "/../lyx-" | ||||
|                                                   ,version "/lib")) | ||||
|              #t)) | ||||
|          (add-after 'install 'install-symlinks | ||||
|            (lambda* (#:key outputs #:allow-other-keys) | ||||
|              (let ((out (assoc-ref outputs "out"))) | ||||
|                (mkdir-p (string-append out "/bin")) | ||||
|                (symlink "../lyx2.2/bin/lyx2.2" | ||||
|                 (string-append out "/bin/lyx2.2")) | ||||
|                #t)))))) | ||||
|     (inputs | ||||
|      `(("boost" ,boost) | ||||
|        ("hunspell" ,hunspell) ; Note: Could also use aspell instead. | ||||
|        ("libx11" ,libx11) | ||||
|        ("python-2" ,python-2) | ||||
|        ("qtbase" ,qtbase) | ||||
|        ("qtsvg" ,qtsvg) | ||||
|        ("zlib" ,zlib))) | ||||
|     (propagated-inputs | ||||
|      `(("texlive" ,texlive))) ; article.cls is in texmf-dist. | ||||
|     (native-inputs | ||||
|      `(("python-2" ,python-2) | ||||
|        ("pkg-config" ,pkg-config) | ||||
|        ("bc" ,bc))) | ||||
|     (home-page "https://www.lyx.org/") | ||||
|     (synopsis "Document preparation system with GUI") | ||||
|     (description "LyX is a document preparation system.  It excels at letting | ||||
| you create complex technical and scientific articles with mathematics, | ||||
| cross-references, bibliographies, indexes, etc.  It is very good for working | ||||
| with documents of any length in which the usual processing abilities are | ||||
| required: automatic sectioning and pagination, spell checking and so forth.") | ||||
|     (license license:gpl2+))) | ||||
|  |  | |||
|  | @ -5,7 +5,7 @@ | |||
| ;;; Copyright © 2017 Feng Shu <tumashu@163.com> | ||||
| ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org> | ||||
| ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -49,7 +49,7 @@ | |||
| (define-public vis | ||||
|   (package | ||||
|     (name "vis") | ||||
|     (version "0.4") | ||||
|     (version "0.5") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/martanne/" | ||||
|  | @ -57,7 +57,7 @@ | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1iclfsc9vn40fqfiz56vrw6dmr4x8q9gvav0b53kkpc6zcfa86zi")))) | ||||
|                 "1xbxb3q963s6sav63yw0x30lm0wvxsrzb7hr6a7dh4f8r7mp1skp")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:test-target "test" | ||||
|  |  | |||
|  | @ -6,7 +6,7 @@ | |||
| ;;; Copyright © 2015 David Thompson <davet@gnu.org> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018 Leo Famulari <leo@famulari.name> | ||||
| ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> | ||||
| ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is> | ||||
| ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> | ||||
| ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> | ||||
| ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> | ||||
|  | @ -385,7 +385,7 @@ required structures.") | |||
|   (package | ||||
|     (inherit openssl) | ||||
|     (name "openssl") | ||||
|     (version "1.1.0g") | ||||
|     (version "1.1.0h") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (list (string-append "https://www.openssl.org/source/openssl-" | ||||
|  | @ -398,7 +398,7 @@ required structures.") | |||
|               (patches (search-patches "openssl-1.1.0-c-rehash-in.patch")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1bvka2wf33w2vxv7yw578nnjqyhz2b3chvfb0l4k2ffscw950kfy")))) | ||||
|                 "05x509lccqjscgyi935z809pwfm708islypwhmjnb6cyvrn64daq")))) | ||||
|     (outputs '("out" | ||||
|                "doc"        ;1.3MiB of man3 pages | ||||
|                "static"))   ; 5.5MiB of .a files | ||||
|  | @ -449,14 +449,14 @@ required structures.") | |||
| (define-public libressl | ||||
|   (package | ||||
|     (name "libressl") | ||||
|     (version "2.6.4") | ||||
|     (version "2.7.1") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "mirror://openbsd/LibreSSL/" | ||||
|                                   name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "07yi37a2ghsgj2b4w30q1s4d2inqnix7ika1m21y57p9z71212k3")))) | ||||
|                 "0w3hdgcr4cq84cv7wkkg2clz9s6l2m2l92d6mfn70wxs6vi0fxck")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      ;; Do as if 'getentropy' was missing since older Linux kernels lack it | ||||
|  | @ -493,13 +493,13 @@ netcat implementation that supports TLS.") | |||
|   (package | ||||
|     (name "python-acme") | ||||
|     ;; Remember to update the hash of certbot when updating python-acme. | ||||
|     (version "0.22.1") | ||||
|     (version "0.22.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "acme" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0cbw062xmaqhmdb5d04d2xs9aacmq1i7yvnd37gw1d71qgxlnmsz")))) | ||||
|                 "1d5d4w88aj1i8fyrs44dapmiqbmgz4bjgryn8k3mnggmd6ihxk8f")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  | @ -548,7 +548,7 @@ netcat implementation that supports TLS.") | |||
|               (uri (pypi-uri name version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1d9abvlwi2d4d991dakds7jyrzxcsqkl13sd0clkriav9cdqwhv4")))) | ||||
|                 "1vsb8qqghxrwxr3d2l0d5cgdk0pz7b3f76bx3zrrg0z7jf967qz6")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(,@(substitute-keyword-arguments (package-arguments python-acme) | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| ;;; GNU Guix --- Functional package management for GNU | ||||
| ;;; Copyright © 2015, 2016, 2017 Alex Kost <alezost@gmail.com> | ||||
| ;;; Copyright © 2015, 2016, 2017, 2018 Alex Kost <alezost@gmail.com> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -26,6 +26,7 @@ | |||
|   #:use-module (gnu packages fontutils) | ||||
|   #:use-module (gnu packages image) | ||||
|   #:use-module (gnu packages linux) | ||||
|   #:use-module (gnu packages pkg-config) | ||||
|   #:use-module (gnu packages xml) | ||||
|   #:use-module (gnu packages xorg)) | ||||
| 
 | ||||
|  | @ -55,6 +56,8 @@ | |||
|        ("libxml2" ,libxml2) | ||||
|        ("freetype" ,freetype) | ||||
|        ("zlib" ,zlib))) | ||||
|     (native-inputs | ||||
|      `(("pkg-config" ,pkg-config))) | ||||
|     (home-page "http://tvtime.sourceforge.net") | ||||
|     (synopsis "Television viewer") | ||||
|     (description | ||||
|  |  | |||
|  | @ -139,14 +139,14 @@ as well as the classic centralized workflow.") | |||
|    (name "git") | ||||
|    ;; XXX When updating Git, check if the special 'git:src' input to cgit needs | ||||
|    ;; to be updated as well. | ||||
|    (version "2.16.2") | ||||
|    (version "2.16.3") | ||||
|    (source (origin | ||||
|             (method url-fetch) | ||||
|             (uri (string-append "mirror://kernel.org/software/scm/git/git-" | ||||
|                                 version ".tar.xz")) | ||||
|             (sha256 | ||||
|              (base32 | ||||
|               "05y7480f2p7fkncbhf08zz56jbykcp0ia5gl6y3djs0lsa5mfq2m")))) | ||||
|               "0j1dwvg5llnj3g0fp8hdgpms4hp90qw9f6509vqw30dhwplrjpfn")))) | ||||
|    (build-system gnu-build-system) | ||||
|    (native-inputs | ||||
|     `(("native-perl" ,perl) | ||||
|  | @ -159,7 +159,7 @@ as well as the classic centralized workflow.") | |||
|                 version ".tar.xz")) | ||||
|           (sha256 | ||||
|            (base32 | ||||
|             "01fbmfsqcv7jmyh80yg3fv5jwv78zvxys9b0fd6bdcy89h9ybvj2")))))) | ||||
|             "15ckcia3bdbn1dpwlh3fifd8fzk38l1pdgxsf2yl8l8xd1z8jqaz")))))) | ||||
|    (inputs | ||||
|     `(("curl" ,curl) | ||||
|       ("expat" ,expat) | ||||
|  | @ -698,13 +698,13 @@ allowing to handle large objects with a small memory footprint.") | |||
| (define-public python-gitpython | ||||
|   (package | ||||
|     (name "python-gitpython") | ||||
|     (version "2.1.8") | ||||
|     (version "2.1.9") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (pypi-uri "GitPython" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1sbn018mn3y2r58ix5z12na1s02ccprhckb88yq3bdddvqjvqqdd")))) | ||||
|                 "0a9in1jfv9ssxhckl6sasw45bhm762y2r5ikgb2pk2g8yqdc6z64")))) | ||||
|     (build-system python-build-system) | ||||
|     (arguments | ||||
|      `(#:tests? #f ;XXX: Tests can only be run within the GitPython repository. | ||||
|  | @ -1737,11 +1737,9 @@ be served with a HTTP file server of your choice.") | |||
|        ("ghc-quickcheck" ,ghc-quickcheck) | ||||
|        ("ghc-findbin" ,ghc-findbin) | ||||
|        ("ghc-hunit" ,ghc-hunit) | ||||
|        ("ghc-array" ,ghc-array) | ||||
|        ("ghc-async" ,ghc-async) | ||||
|        ("ghc-attoparsec" ,ghc-attoparsec) | ||||
|        ("ghc-base16-bytestring" ,ghc-base16-bytestring) | ||||
|        ("ghc-binary" ,ghc-binary) | ||||
|        ("ghc-bytestring-builder" ,ghc-bytestring-builder) | ||||
|        ("ghc-cryptohash" ,ghc-cryptohash) | ||||
|        ("ghc-data-ordlist" ,ghc-data-ordlist) | ||||
|  | @ -1749,7 +1747,6 @@ be served with a HTTP file server of your choice.") | |||
|        ("ghc-system-filepath" ,ghc-system-filepath) | ||||
|        ("ghc-graphviz" ,ghc-graphviz) | ||||
|        ("ghc-hashable" ,ghc-hashable) | ||||
|        ("ghc-haskeline" ,ghc-haskeline) | ||||
|        ("ghc-html" ,ghc-html) | ||||
|        ("ghc-mmap" ,ghc-mmap) | ||||
|        ("ghc-mtl" ,ghc-mtl) | ||||
|  |  | |||
|  | @ -1512,7 +1512,7 @@ encapsulated.") | |||
| (define-public libdvdcss | ||||
|   (package | ||||
|     (name "libdvdcss") | ||||
|     (version "1.4.1") | ||||
|     (version "1.4.2") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://download.videolan.org/pub/" | ||||
|  | @ -1520,7 +1520,7 @@ encapsulated.") | |||
|                                   name "-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1b7awvyahivglp7qmgx2g5005kc5npv257gw7wxdprjsnx93f1zb")))) | ||||
|                 "0x957zzpf4w2cp8zlk29prj8i2q6hay3lzdzsyz8y3cwxivyvhkq")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (home-page "https://www.videolan.org/developers/libdvdcss.html") | ||||
|     (synopsis "Library for accessing DVDs as block devices") | ||||
|  | @ -1754,14 +1754,14 @@ and custom quantization matrices.") | |||
| (define-public streamlink | ||||
|   (package | ||||
|     (name "streamlink") | ||||
|     (version "0.10.0") | ||||
|     (version "0.11.0") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|        (uri (pypi-uri "streamlink" version)) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "17299xnd9jzi7m1d2rr4xdlj47q64bzj2957nlsrhw0hskds1s6h")))) | ||||
|          "02h8b3k8l5zz4vjm0nhxvl1pm924jms8y7sjl40fbybrzvsa4mg2")))) | ||||
|     (build-system python-build-system) | ||||
|     (home-page "https://github.com/streamlink/streamlink") | ||||
|     (native-inputs | ||||
|  | @ -1774,7 +1774,8 @@ and custom quantization matrices.") | |||
|        ("python-iso3166" ,python-iso3166) | ||||
|        ("python-iso639" ,python-iso639) | ||||
|        ("python-pycryptodome" ,python-pycryptodome) | ||||
|        ("python-requests" ,python-requests))) | ||||
|        ("python-requests" ,python-requests) | ||||
|        ("python-urllib3" ,python-urllib3))) | ||||
|     (synopsis "Extract streams from various services") | ||||
|     (description "Streamlink is command-line utility that extracts streams | ||||
| from sites like Twitch.tv and pipes them into a video player of choice.") | ||||
|  | @ -1783,6 +1784,38 @@ from sites like Twitch.tv and pipes them into a video player of choice.") | |||
| (define-public livestreamer | ||||
|   (deprecated-package "livestreamer" streamlink)) | ||||
| 
 | ||||
| (define-public twitchy | ||||
|   (let ((commit "0c0f925b9c7ff2aed4a3b0046561cb794143c398")) ;Fixes tests. | ||||
|     (package | ||||
|       (name "twitchy") | ||||
|       (version (git-version "3.2" "1" commit)) | ||||
|       (source | ||||
|        (origin | ||||
|          (method git-fetch) | ||||
|          (uri (git-reference | ||||
|                (url "https://github.com/BasioMeusPuga/twitchy.git") | ||||
|                (commit commit))) | ||||
|          (file-name (git-file-name name version)) | ||||
|          (sha256 | ||||
|           (base32 | ||||
|            "02aizvsr744sh8bdqvwwsmp2qpczlzn8fy76h5dyd3517n9nlcz9")))) | ||||
|       (build-system python-build-system) | ||||
|       (arguments | ||||
|        '(#:phases | ||||
|          (modify-phases %standard-phases | ||||
|            (add-before 'check 'check-setup | ||||
|              (lambda _ | ||||
|                (setenv "HOME" (getcwd)) ;Needs to write to ‘$HOME’. | ||||
|                #t))))) | ||||
|       (inputs | ||||
|        `(("python-requests" ,python-requests) | ||||
|          ("streamlink" ,streamlink))) | ||||
|       (home-page "https://github.com/BasioMeusPuga/twitchy") | ||||
|       (synopsis "Command-line interface for Twitch.tv") | ||||
|       (description | ||||
|        "This package provides a command-line interface for Twitch.tv") | ||||
|       (license license:gpl3+)))) | ||||
| 
 | ||||
| (define-public mlt | ||||
|   (package | ||||
|     (name "mlt") | ||||
|  |  | |||
|  | @ -7,6 +7,7 @@ | |||
| ;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca> | ||||
| ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> | ||||
| ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> | ||||
| ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org> | ||||
| ;;; | ||||
| ;;; This file is part of GNU Guix. | ||||
| ;;; | ||||
|  | @ -280,11 +281,11 @@ server and embedded PowerPC, and S390 guests.") | |||
|        ("usb.ids" | ||||
|         ,(origin | ||||
|            (method url-fetch) | ||||
|            (uri "http://linux-usb.cvs.sourceforge.net/viewvc/linux-usb/htdocs/usb.ids?revision=1.551") | ||||
|            (uri "https://svn.code.sf.net/p/linux-usb/repo/trunk/htdocs/usb.ids?r=2681") | ||||
|            (file-name "usb.ids") | ||||
|            (sha256 | ||||
|             (base32 | ||||
|              "17rg5i0wbyk289gr8v4kgvnc9q5bidz7ldcvv9x58l083wn16hq3")))))) | ||||
|              "1m6yhvz5k8aqzxgk7xj3jkk8frl1hbv0h3vgj4wbnvnx79qnvz3r")))))) | ||||
|     (home-page "https://libosinfo.org/") | ||||
|     (synopsis "Operating system information database") | ||||
|     (description "libosinfo is a GObject based library API for managing | ||||
|  |  | |||
|  | @ -79,15 +79,14 @@ older or slower computers and embedded systems.") | |||
| (define-public links | ||||
|   (package | ||||
|     (name "links") | ||||
|     (version "2.14") | ||||
|     (version "2.15") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "http://links.twibright.com/download/" | ||||
|                                   name "-" version ".tar.bz2")) | ||||
|               (patches (search-patches "links-CVE-2017-11114.patch")) | ||||
|               (sha256 | ||||
|                 (sha256 | ||||
|                (base32 | ||||
|                 "1f24y83wa1vzzjq5kp857gjqdpnmf8pb29yw7fam0m8wxxw0c3gp")))) | ||||
|                 "1jp3xyvp87a188b4kg5ycqahrazj7928zncgsznzn54w8d5iqahy")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
|  | @ -115,14 +115,14 @@ | |||
| (define-public httpd | ||||
|   (package | ||||
|     (name "httpd") | ||||
|     (version "2.4.29") | ||||
|     (version "2.4.33") | ||||
|     (source (origin | ||||
|              (method url-fetch) | ||||
|              (uri (string-append "mirror://apache/httpd/httpd-" | ||||
|                                  version ".tar.bz2")) | ||||
|              (sha256 | ||||
|               (base32 | ||||
|                "003z3yckkdihfv69rgqsik1w2jsnh14j3ci8fjia4s2mlajm6xvp")))) | ||||
|                "01bghiq4pbgjbgd6gic0nb8bbk6mfpwx3gcsbf21f3dhb4c520ny")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (native-inputs `(("pcre" ,pcre "bin")))       ;for 'pcre-config' | ||||
|     (inputs `(("apr" ,apr) | ||||
|  | @ -186,14 +186,14 @@ Interface} specification.") | |||
|     (name "nginx") | ||||
|     ;; Consider updating the nginx-documentation package if the nginx package is | ||||
|     ;; updated. | ||||
|     (version "1.13.9") | ||||
|     (version "1.13.10") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://nginx.org/download/nginx-" | ||||
|                                   version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0hpsyxpxj89p5vrzv9p1hp7xjbnj5c1w6fdy626ycvsiay4a3bjz")))) | ||||
|                 "11a8m4lhy6h8mmrsakn73pd5gcyvhxpz1xvlr103rglh9l884q9k")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs `(("openssl" ,openssl) | ||||
|               ("pcre" ,pcre) | ||||
|  | @ -220,7 +220,7 @@ Interface} specification.") | |||
|                           ;; --crossbuild option to avoid customizing for the | ||||
|                           ;; kernel version on the build machine. | ||||
|                           ,(let ((system "Linux")    ; uname -s | ||||
|                                  (release "2.6.32")  ; uname -r | ||||
|                                  (release "3.2.0")   ; uname -r | ||||
|                                  ;; uname -m | ||||
|                                  (machine (match (or (%current-target-system) | ||||
|                                                      (%current-system)) | ||||
|  | @ -3661,7 +3661,7 @@ library.") | |||
| (define-public perl-www-mechanize | ||||
|   (package | ||||
|     (name "perl-www-mechanize") | ||||
|     (version "1.87") | ||||
|     (version "1.88") | ||||
|     (source | ||||
|      (origin | ||||
|        (method url-fetch) | ||||
|  | @ -3669,7 +3669,7 @@ library.") | |||
|                            "WWW-Mechanize-" version ".tar.gz")) | ||||
|        (sha256 | ||||
|         (base32 | ||||
|          "1kxrydhl7nxlyjv0xvyiyj4igdv4fwnggv0ihlp79bysbjjl54w1")))) | ||||
|          "0yd8a1zsfpbv5wr79x3iqmik9gvcd10iam9dfrdan4dri9vpxn9n")))) | ||||
|     (build-system perl-build-system) | ||||
|     (native-inputs                      ;only for tests | ||||
|      `(("perl-cgi" ,perl-cgi) | ||||
|  | @ -3832,18 +3832,19 @@ in systems and applications.") | |||
| (define-public r-servr | ||||
|   (package | ||||
|     (name "r-servr") | ||||
|     (version "0.8") | ||||
|     (version "0.9") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (cran-uri "servr" version)) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "05pz4ychqp4cqywcdavdi8jj3y09gmam097d2idjnlcg9x61h2s9")))) | ||||
|                 "0bs0i5mjfzxfshqz8i30nhn7kvgwly4fqn5bfq6dqfdrn7biai2x")))) | ||||
|     (build-system r-build-system) | ||||
|     (propagated-inputs | ||||
|      `(("r-httpuv" ,r-httpuv) | ||||
|        ("r-jsonlite" ,r-jsonlite) | ||||
|        ("r-mime" ,r-mime))) | ||||
|        ("r-mime" ,r-mime) | ||||
|        ("r-xfun" ,r-xfun))) | ||||
|     (native-inputs | ||||
|      `(("r-rcpp" ,r-rcpp))) | ||||
|     (home-page "https://github.com/yihui/servr") | ||||
|  | @ -5120,7 +5121,7 @@ into your tests.  It automatically starts up a HTTP server in a separate thread | |||
| (define-public http-parser | ||||
|   (package | ||||
|     (name "http-parser") | ||||
|     (version "2.7.1") | ||||
|     (version "2.8.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append "https://github.com/nodejs/http-parser/" | ||||
|  | @ -5128,7 +5129,7 @@ into your tests.  It automatically starts up a HTTP server in a separate thread | |||
|               (file-name (string-append name "-" version ".tar.gz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "1cw6nf8xy4jhib1w0jd2y0gpqjbdasg8b7pkl2k2vpp54k9rlh3h")))) | ||||
|                 "17a7k3nxv2p1sp2x5d89wr51vk770753vz6qnlp2gz7nkgwwcxvj")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      `(#:test-target "test" | ||||
|  |  | |||
|  | @ -466,7 +466,6 @@ desktop environment.") | |||
|        ("ghc-quickcheck"            ,ghc-quickcheck) | ||||
|        ("ghc-setlocale"             ,ghc-setlocale) | ||||
|        ("ghc-utf8-string"           ,ghc-utf8-string) | ||||
|        ("ghc-directory"             ,ghc-directory) | ||||
|        ("ghc-x11"                   ,ghc-x11))) | ||||
|     (arguments | ||||
|      `(#:phases | ||||
|  |  | |||
|  | @ -1104,7 +1104,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.") | |||
|                                   version "/rofi-" version ".tar.xz")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "10r1jd3h5i22pdr619hmvxv6dhzf9i13j50c28g7yffdggx8ncjg")))) | ||||
|                 "0wx118banbwfqdwc5y44fkp3hxg97gj3vma16528slhy408hkg7i")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs | ||||
|      `(("pango" ,pango) | ||||
|  | @ -1133,28 +1133,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.") | |||
|                (("~root") "/root") | ||||
|                (("~") "") | ||||
|                (("g_get_home_dir \\(\\)") "\"/\"")) | ||||
|              #t)) | ||||
|          (add-before 'check 'add-missing-configuration-files | ||||
|            (lambda _ | ||||
|              ;; These files are missing in the 1.5.0 release, causing a test | ||||
|              ;; failure: <https://github.com/DaveDavenport/rofi/issues/782>. | ||||
|              (with-directory-excursion "subprojects/libnkutils/tests" | ||||
|                (mkdir "gtk-3.0") | ||||
|                (call-with-output-file "gtk-3.0/settings.ini" | ||||
|                  (lambda (port) | ||||
|                    (format port "[Settings] | ||||
| gtk-double-click-time = 300 | ||||
| gtk-cursor-theme-name = gnome | ||||
| "))) | ||||
|                (mkdir "gtk-4.0") | ||||
|                (call-with-output-file "gtk-4.0/settings.ini" | ||||
|                  (lambda (port) | ||||
|                    (format port "[Settings] | ||||
| gtk-double-click-time = 300 | ||||
| gtk-icon-theme-name = nothing-like-this-theme | ||||
| gtk-enable-primary-paste = true | ||||
| "))) | ||||
|                #t)))))) | ||||
|              #t))))) | ||||
|     (home-page "https://github.com/DaveDavenport/rofi") | ||||
|     (synopsis "Application launcher") | ||||
|     (description "Rofi is a minimalist application launcher.  It memorizes which | ||||
|  |  | |||
|  | @ -2445,7 +2445,7 @@ including most mice, keyboards, tablets and touchscreens.") | |||
| (define-public xf86-input-libinput | ||||
|   (package | ||||
|     (name "xf86-input-libinput") | ||||
|     (version "0.26.0") | ||||
|     (version "0.27.0") | ||||
|     (source (origin | ||||
|               (method url-fetch) | ||||
|               (uri (string-append | ||||
|  | @ -2453,7 +2453,7 @@ including most mice, keyboards, tablets and touchscreens.") | |||
|                     name "-" version ".tar.bz2")) | ||||
|               (sha256 | ||||
|                (base32 | ||||
|                 "0yrqs88b7yn9nljwlxzn76jfmvf0sh939kzij5b2jvr2qa7mbjmb")))) | ||||
|                 "18v8qry7493k37bcfbfwdr4xrygyjivpzvgsj7s1dxmzn1n53c3p")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (arguments | ||||
|      '(#:configure-flags | ||||
|  | @ -2673,7 +2673,7 @@ as USB mice.") | |||
| (define-public xf86-video-ati | ||||
|   (package | ||||
|     (name "xf86-video-ati") | ||||
|     (version "7.10.0") | ||||
|     (version "18.0.1") | ||||
|     (source | ||||
|       (origin | ||||
|         (method url-fetch) | ||||
|  | @ -2683,7 +2683,7 @@ as USB mice.") | |||
|                ".tar.bz2")) | ||||
|         (sha256 | ||||
|           (base32 | ||||
|             "0yafix56vkqglw243cwb94nv91vbjv12sqh29x1bap0hwd1dclgf")))) | ||||
|             "180l2yw8c63cbcs3zk729vx439aig1d7yicpyxj0nmfl4y0kpskj")))) | ||||
|     (build-system gnu-build-system) | ||||
|     (inputs `(("mesa" ,mesa) | ||||
|               ("xorgproto" ,xorgproto) | ||||
|  |  | |||
Some files were not shown because too many files have changed in this diff Show more
		Reference in a new issue