Merge branch 'master' into core-updates
This commit is contained in:
		
						commit
						4d14902b94
					
				
					 237 changed files with 57509 additions and 4735 deletions
				
			
		| 
						 | 
				
			
			@ -90,6 +90,7 @@
 | 
			
		|||
   (eval . (put 'eventually 'scheme-indent-function 1))
 | 
			
		||||
 | 
			
		||||
   (eval . (put 'call-with-progress-reporter 'scheme-indent-function 1))
 | 
			
		||||
   (eval . (put 'with-temporary-git-repository 'scheme-indent-function 2))
 | 
			
		||||
 | 
			
		||||
   ;; This notably allows '(' in Paredit to not insert a space when the
 | 
			
		||||
   ;; preceding symbol is one of these.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										31
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										31
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							| 
						 | 
				
			
			@ -29,22 +29,23 @@
 | 
			
		|||
/doc/*.1
 | 
			
		||||
/doc/.dirstamp
 | 
			
		||||
/doc/contributing.*.texi
 | 
			
		||||
/doc/guix.*.aux
 | 
			
		||||
/doc/guix.*.cp
 | 
			
		||||
/doc/guix.*.cps
 | 
			
		||||
/doc/guix.*.fn
 | 
			
		||||
/doc/guix.*.fns
 | 
			
		||||
/doc/guix.*.html
 | 
			
		||||
/doc/guix.*.info
 | 
			
		||||
/doc/guix.*.info-[0-9]
 | 
			
		||||
/doc/guix.*.ky
 | 
			
		||||
/doc/guix.*.pg
 | 
			
		||||
/doc/guix.*.toc
 | 
			
		||||
/doc/guix.*.t2p
 | 
			
		||||
/doc/guix.*.tp
 | 
			
		||||
/doc/guix.*.vr
 | 
			
		||||
/doc/guix.*.vrs
 | 
			
		||||
/doc/guix*.aux
 | 
			
		||||
/doc/guix*.cp
 | 
			
		||||
/doc/guix*.cps
 | 
			
		||||
/doc/guix*.fn
 | 
			
		||||
/doc/guix*.fns
 | 
			
		||||
/doc/guix*.html
 | 
			
		||||
/doc/guix*.info
 | 
			
		||||
/doc/guix*.info-[0-9]
 | 
			
		||||
/doc/guix*.ky
 | 
			
		||||
/doc/guix*.pg
 | 
			
		||||
/doc/guix*.toc
 | 
			
		||||
/doc/guix*.t2p
 | 
			
		||||
/doc/guix*.tp
 | 
			
		||||
/doc/guix*.vr
 | 
			
		||||
/doc/guix*.vrs
 | 
			
		||||
/doc/guix.*.texi
 | 
			
		||||
/doc/guix-cookbook.*.texi
 | 
			
		||||
/doc/guix.aux
 | 
			
		||||
/doc/guix.cp
 | 
			
		||||
/doc/guix.cps
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										5
									
								
								.guix-channel
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.guix-channel
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
;; This is a Guix channel.
 | 
			
		||||
 | 
			
		||||
(channel
 | 
			
		||||
  (version 0)
 | 
			
		||||
  (news-file "etc/news.scm"))
 | 
			
		||||
							
								
								
									
										17
									
								
								Makefile.am
									
										
									
									
									
								
							
							
						
						
									
										17
									
								
								Makefile.am
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -241,6 +241,7 @@ MODULES =					\
 | 
			
		|||
  guix/scripts/remove.scm			\
 | 
			
		||||
  guix/scripts/upgrade.scm			\
 | 
			
		||||
  guix/scripts/search.scm			\
 | 
			
		||||
  guix/scripts/show.scm				\
 | 
			
		||||
  guix/scripts/gc.scm				\
 | 
			
		||||
  guix/scripts/hash.scm				\
 | 
			
		||||
  guix/scripts/pack.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -306,12 +307,20 @@ STORE_MODULES =					\
 | 
			
		|||
MODULES += $(STORE_MODULES)
 | 
			
		||||
 | 
			
		||||
# Internal modules with test suite support.
 | 
			
		||||
dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
 | 
			
		||||
dist_noinst_DATA =				\
 | 
			
		||||
  guix/tests.scm				\
 | 
			
		||||
  guix/tests/http.scm				\
 | 
			
		||||
  guix/tests/git.scm
 | 
			
		||||
 | 
			
		||||
# Auxiliary files for packages.
 | 
			
		||||
AUX_FILES =						\
 | 
			
		||||
  gnu/packages/aux-files/chromium/master-preferences.json		\
 | 
			
		||||
  gnu/packages/aux-files/emacs/guix-emacs.el		\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.3-arm.conf	\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.3-arm-veyron.conf       \
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.3-arm64.conf	\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.3-i686.conf	\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.3-x86_64.conf	\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.2-arm.conf	\
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.2-arm-veyron.conf       \
 | 
			
		||||
  gnu/packages/aux-files/linux-libre/5.2-arm64.conf	\
 | 
			
		||||
| 
						 | 
				
			
			@ -390,6 +399,7 @@ SCM_TESTS =					\
 | 
			
		|||
  tests/file-systems.scm			\
 | 
			
		||||
  tests/gem.scm				\
 | 
			
		||||
  tests/gexp.scm				\
 | 
			
		||||
  tests/git.scm					\
 | 
			
		||||
  tests/glob.scm				\
 | 
			
		||||
  tests/gnu-maintenance.scm			\
 | 
			
		||||
  tests/grafts.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -528,8 +538,10 @@ EXTRA_DIST +=						\
 | 
			
		|||
  TODO							\
 | 
			
		||||
  CODE-OF-CONDUCT					\
 | 
			
		||||
  .dir-locals.el					\
 | 
			
		||||
  .guix-channel						\
 | 
			
		||||
  scripts/guix.in					\
 | 
			
		||||
  etc/guix-install.sh					\
 | 
			
		||||
  etc/news.scm						\
 | 
			
		||||
  build-aux/build-self.scm				\
 | 
			
		||||
  build-aux/compile-all.scm				\
 | 
			
		||||
  build-aux/hydra/evaluate.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -814,7 +826,8 @@ assert-no-store-file-names:
 | 
			
		|||
	$(AM_V_at)if grep -r --exclude=*.texi --exclude=*.info			\
 | 
			
		||||
	     --exclude=*.info-[0-9] --exclude=*.dot				\
 | 
			
		||||
	     --exclude=*.eps --exclude-dir=bootstrap				\
 | 
			
		||||
		 --exclude=guix-manual.pot --exclude=guix-manual.*.po		\
 | 
			
		||||
	     --exclude=guix-manual.pot --exclude=guix-manual.*.po		\
 | 
			
		||||
	     --exclude=guix-cookbook.pot --exclude=guix-cookbook.*.po		\
 | 
			
		||||
	     --exclude=guix-prettify.el						\
 | 
			
		||||
	     --exclude=ChangeLog*						\
 | 
			
		||||
	     --exclude=binutils-boot-2.20*.patch				\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										12
									
								
								bootstrap
									
										
									
									
									
								
							
							
						
						
									
										12
									
								
								bootstrap
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -4,7 +4,7 @@
 | 
			
		|||
set -e -x
 | 
			
		||||
 | 
			
		||||
# Generate stubs for translations.
 | 
			
		||||
langs=`find po/doc -type f -name '*.po' \
 | 
			
		||||
langs=`find po/doc -type f -name 'guix-manual*.po' \
 | 
			
		||||
        | sed -e 's,guix-manual\.,,' \
 | 
			
		||||
        | xargs -n 1 -I{} basename {} .po`
 | 
			
		||||
for lang in ${langs}; do
 | 
			
		||||
| 
						 | 
				
			
			@ -15,5 +15,15 @@ for lang in ${langs}; do
 | 
			
		|||
	touch "po/doc/guix-manual.${lang}.po"
 | 
			
		||||
    fi
 | 
			
		||||
done
 | 
			
		||||
langs=`find po/doc -type f -name 'guix-cookbook*.po' \
 | 
			
		||||
        | sed -e 's,guix-manual\.,,' \
 | 
			
		||||
        | xargs -n 1 -I{} basename {} .po`
 | 
			
		||||
for lang in ${langs}; do
 | 
			
		||||
    if [ ! -e "doc/guix-cookbook.${lang}.texi" ]; then
 | 
			
		||||
	echo "@setfilename guix-cookbook.${lang}.info" > "doc/guix-cookbook.${lang}.texi"
 | 
			
		||||
	# Ensure .po file is newer.
 | 
			
		||||
	touch "po/doc/guix-cookbook.${lang}.po"
 | 
			
		||||
    fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
exec autoreconf -vfi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -215,6 +215,58 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
 | 
			
		|||
                         (ice-9 match)
 | 
			
		||||
                         (ice-9 threads))
 | 
			
		||||
 | 
			
		||||
            (define (pair-open/close lst)
 | 
			
		||||
              ;; Pair 'open' and 'close' tags produced by 'highlights' and
 | 
			
		||||
              ;; produce nested 'paren' tags instead.
 | 
			
		||||
              (let loop ((lst lst)
 | 
			
		||||
                         (level 0)
 | 
			
		||||
                         (result '()))
 | 
			
		||||
                (match lst
 | 
			
		||||
                  ((('open open) rest ...)
 | 
			
		||||
                   (call-with-values
 | 
			
		||||
                       (lambda ()
 | 
			
		||||
                         (loop rest (+ 1 level) '()))
 | 
			
		||||
                     (lambda (inner close rest)
 | 
			
		||||
                       (loop rest level
 | 
			
		||||
                             (cons `(paren ,level ,open ,inner ,close)
 | 
			
		||||
                                   result)))))
 | 
			
		||||
                  ((('close str) rest ...)
 | 
			
		||||
                   (if (> level 0)
 | 
			
		||||
                       (values (reverse result) str rest)
 | 
			
		||||
                       (begin
 | 
			
		||||
                         (format (current-error-port)
 | 
			
		||||
                                 "warning: extra closing paren; context:~% ~y~%"
 | 
			
		||||
                                 (reverse result))
 | 
			
		||||
                         (loop rest 0 (cons `(close ,str) result)))))
 | 
			
		||||
                  ((item rest ...)
 | 
			
		||||
                   (loop rest level (cons item result)))
 | 
			
		||||
                  (()
 | 
			
		||||
                   (when (> level 0)
 | 
			
		||||
                     (format (current-error-port)
 | 
			
		||||
                             "warning: missing ~a closing parens; context:~% ~y%"
 | 
			
		||||
                             level (reverse result)))
 | 
			
		||||
                   (values (reverse result) "" '())))))
 | 
			
		||||
 | 
			
		||||
            (define (highlights->sxml* highlights)
 | 
			
		||||
              ;; Like 'highlights->sxml', but handle nested 'paren tags.  This
 | 
			
		||||
              ;; allows for paren matching highlights via appropriate CSS
 | 
			
		||||
              ;; "hover" properties.
 | 
			
		||||
              (define (tag->class tag)
 | 
			
		||||
                (string-append "syntax-" (symbol->string tag)))
 | 
			
		||||
 | 
			
		||||
              (map (match-lambda
 | 
			
		||||
                     ((? string? str) str)
 | 
			
		||||
                     (('paren level open (body ...) close)
 | 
			
		||||
                      `(span (@ (class ,(string-append "syntax-paren"
 | 
			
		||||
                                                       (number->string level))))
 | 
			
		||||
                             ,open
 | 
			
		||||
                             (span (@ (class "syntax-symbol"))
 | 
			
		||||
                                   ,@(highlights->sxml* body))
 | 
			
		||||
                             ,close))
 | 
			
		||||
                     ((tag text)
 | 
			
		||||
                      `(span (@ (class ,(tag->class tag))) ,text)))
 | 
			
		||||
                   highlights))
 | 
			
		||||
 | 
			
		||||
            (define entity->string
 | 
			
		||||
              (match-lambda
 | 
			
		||||
                ("rArr"   "⇒")
 | 
			
		||||
| 
						 | 
				
			
			@ -252,9 +304,10 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
 | 
			
		|||
                                 (href #$syntax-css-url)))))
 | 
			
		||||
                (('pre ('@ ('class "lisp")) code-snippet ...)
 | 
			
		||||
                 `(pre (@ (class "lisp"))
 | 
			
		||||
                       ,(highlights->sxml
 | 
			
		||||
                         (highlight lex-scheme
 | 
			
		||||
                                    (concatenate-snippets code-snippet)))))
 | 
			
		||||
                       ,@(highlights->sxml*
 | 
			
		||||
                          (pair-open/close
 | 
			
		||||
                           (highlight lex-scheme
 | 
			
		||||
                                      (concatenate-snippets code-snippet))))))
 | 
			
		||||
                ((tag ('@ attributes ...) body ...)
 | 
			
		||||
                 `(,tag (@ ,@attributes) ,@(map syntax-highlight body)))
 | 
			
		||||
                ((tag body ...)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										821
									
								
								doc/guix-cookbook.texi
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										821
									
								
								doc/guix-cookbook.texi
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,821 @@
 | 
			
		|||
\input texinfo
 | 
			
		||||
@c -*-texinfo-*-
 | 
			
		||||
 | 
			
		||||
@c %**start of header
 | 
			
		||||
@setfilename guix-cookbook.info
 | 
			
		||||
@documentencoding UTF-8
 | 
			
		||||
@settitle GNU Guix Cookbook
 | 
			
		||||
@c %**end of header
 | 
			
		||||
 | 
			
		||||
@copying
 | 
			
		||||
Copyright @copyright{} 2019 Ricardo Wurmus@*
 | 
			
		||||
Copyright @copyright{} 2019 Efraim Flashner@*
 | 
			
		||||
Copyright @copyright{} 2019 Pierre Neidhardt@*
 | 
			
		||||
 | 
			
		||||
Permission is granted to copy, distribute and/or modify this document
 | 
			
		||||
under the terms of the GNU Free Documentation License, Version 1.3 or
 | 
			
		||||
any later version published by the Free Software Foundation; with no
 | 
			
		||||
Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.  A
 | 
			
		||||
copy of the license is included in the section entitled ``GNU Free
 | 
			
		||||
Documentation License''.
 | 
			
		||||
@end copying
 | 
			
		||||
 | 
			
		||||
@dircategory System administration
 | 
			
		||||
@direntry
 | 
			
		||||
* Guix cookbook: (guix-cookbook).    Tutorials and examples for GNU Guix.
 | 
			
		||||
@end direntry
 | 
			
		||||
 | 
			
		||||
@titlepage
 | 
			
		||||
@title GNU Guix Cookbook
 | 
			
		||||
@subtitle Tutorials and examples for using the GNU Guix Functional Package Manager
 | 
			
		||||
@author The GNU Guix Developers
 | 
			
		||||
 | 
			
		||||
@page
 | 
			
		||||
@vskip 0pt plus 1filll
 | 
			
		||||
 | 
			
		||||
@insertcopying
 | 
			
		||||
@end titlepage
 | 
			
		||||
 | 
			
		||||
@contents
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node Top
 | 
			
		||||
@top GNU Guix Cookbook
 | 
			
		||||
 | 
			
		||||
This document presents tutorials and detailed examples for GNU@tie{}Guix, a
 | 
			
		||||
functional package management tool written for the GNU system.  Please
 | 
			
		||||
@pxref{Top,,, guix, GNU Guix reference manual} for details about the system,
 | 
			
		||||
its API, and related concepts.
 | 
			
		||||
 | 
			
		||||
@c TRANSLATORS: You can replace the following paragraph with information on
 | 
			
		||||
@c how to join your own translation team and how to report issues with the
 | 
			
		||||
@c translation.
 | 
			
		||||
If you would like to translate this document in your native language, consider
 | 
			
		||||
joining the @uref{https://translationproject.org/domain/guix-cookbook.html,
 | 
			
		||||
Translation Project}.
 | 
			
		||||
 | 
			
		||||
@menu
 | 
			
		||||
* Scheme tutorials::            Meet your new favorite language!
 | 
			
		||||
* Packaging::                   Packaging tutorials
 | 
			
		||||
* System Configuration::        Customizing the GNU System
 | 
			
		||||
 | 
			
		||||
* Acknowledgments::             Thanks!
 | 
			
		||||
* GNU Free Documentation License::  The license of this document.
 | 
			
		||||
* Concept Index::               Concepts.
 | 
			
		||||
 | 
			
		||||
@detailmenu
 | 
			
		||||
 --- The Detailed Node Listing ---
 | 
			
		||||
 | 
			
		||||
Scheme tutorials
 | 
			
		||||
 | 
			
		||||
* A Scheme Crash Course::       Learn the basics of Scheme
 | 
			
		||||
 | 
			
		||||
Packaging
 | 
			
		||||
 | 
			
		||||
* Packaging Tutorial::          Let's add a package to Guix!
 | 
			
		||||
 | 
			
		||||
System Configuration
 | 
			
		||||
 | 
			
		||||
* Customizing the Kernel::      Creating and using a custom Linux kernel
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@end detailmenu
 | 
			
		||||
@end menu
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node Scheme tutorials
 | 
			
		||||
@chapter Scheme tutorials
 | 
			
		||||
 | 
			
		||||
GNU@tie{}Guix is written in the general purpose programming language Scheme,
 | 
			
		||||
and many of its features can be accessed and manipulated programmatically.
 | 
			
		||||
You can use Scheme to generate package definitions, to modify them, to build
 | 
			
		||||
them, to deploy whole operating systems, etc.
 | 
			
		||||
 | 
			
		||||
Knowing the basics of how to program in Scheme will unlock many of the
 | 
			
		||||
advanced features Guix provides --- and you don't even need to be an
 | 
			
		||||
experienced programmer to use them!
 | 
			
		||||
 | 
			
		||||
Let's get started!
 | 
			
		||||
 | 
			
		||||
@node A Scheme Crash Course
 | 
			
		||||
@section A Scheme Crash Course
 | 
			
		||||
 | 
			
		||||
@cindex Scheme, crash course
 | 
			
		||||
 | 
			
		||||
Guix uses the Guile implementation of Scheme.  To start playing with the
 | 
			
		||||
language, install it with @code{guix install guile} and start a
 | 
			
		||||
@uref{https://en.wikipedia.org/wiki/Read%E2%80%93eval%E2%80%93print_loop,
 | 
			
		||||
REPL} by running @code{guile} from the command line.
 | 
			
		||||
 | 
			
		||||
Alternatively you can also run @code{guix environment --ad-hoc guile -- guile}
 | 
			
		||||
if you'd rather not have Guile installed in your user profile.
 | 
			
		||||
 | 
			
		||||
In the following examples we use the @code{>} symbol to denote the REPL
 | 
			
		||||
prompt, that is, the line reserved for user input.  @xref{Using Guile
 | 
			
		||||
Interactively,,, guile, GNU Guile Reference Manual}) for more details on the
 | 
			
		||||
REPL.
 | 
			
		||||
 | 
			
		||||
@itemize
 | 
			
		||||
@item
 | 
			
		||||
Scheme syntax boils down to a tree of expressions (or @emph{s-expression} in
 | 
			
		||||
Lisp lingo).  An expression can be a literal such as numbers and strings, or a
 | 
			
		||||
compound which is a parenthesized list of compounds and literals.  @code{#t}
 | 
			
		||||
and @code{#f} stand for the booleans "true" and "false", respectively.
 | 
			
		||||
 | 
			
		||||
Examples of valid expressions:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> "Hello World!"
 | 
			
		||||
"Hello World!"
 | 
			
		||||
> 17
 | 
			
		||||
17
 | 
			
		||||
> (display (string-append "Hello " "Guix" "\n"))
 | 
			
		||||
"Hello Guix!"
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
This last example is a function call nested in another function call.  When a
 | 
			
		||||
parenthesized expression is evaluated, the first term is the function and the
 | 
			
		||||
rest are the arguments passed to the function.  Every function returns the
 | 
			
		||||
last evaluated expression as its return value.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Anonymous functions are declared with the @code{lambda} term:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> (lambda (x) (* x x))
 | 
			
		||||
#<procedure 120e348 at <unknown port>:24:0 (x)>
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
The above procedure returns the square of its argument.  Since everything is
 | 
			
		||||
an expression, the @code{lambda} expression returns an anonymous procedure,
 | 
			
		||||
which can in turn be applied to an argument:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> ((lambda (x) (* x x)) 3)
 | 
			
		||||
9
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Anything can be assigned a global name with @code{define}:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> (define a 3)
 | 
			
		||||
> (define square (lambda (x) (* x x)))
 | 
			
		||||
> (square a)
 | 
			
		||||
9
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Procedures can be defined more concisely with the following syntax:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define (square x) (* x x))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
A list structure can be created with the @code{list} procedure:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> (list 2 a 5 7)
 | 
			
		||||
(2 3 5 7)
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
The @emph{quote} disables evaluation of a parenthesized expression: the first
 | 
			
		||||
term is not called over the other terms.  Thus it effectively returns a list
 | 
			
		||||
of terms.
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> '(display (string-append "Hello " "Guix" "\n"))
 | 
			
		||||
(display (string-append "Hello " "Guix" "\n"))
 | 
			
		||||
> '(2 a 5 7)
 | 
			
		||||
(2 a 5 7)
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
The @emph{quasiquote} disables evaluation of a parenthesized expression until
 | 
			
		||||
a comma re-enables it.  Thus it provides us with fine-grained control over
 | 
			
		||||
what is evaluated and what is not.
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> `(2 a 5 7 (2 ,a 5 ,(+ a 4)))
 | 
			
		||||
(2 a 5 7 (2 3 5 7))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Note that the above result is a list of mixed elements: numbers, symbols (here
 | 
			
		||||
@code{a}) and the last element is a list itself.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Multiple variables can be named locally with @code{let}:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> (define x 10)
 | 
			
		||||
> (let ((x 2)
 | 
			
		||||
        (y 3))
 | 
			
		||||
    (list x y))
 | 
			
		||||
(2 3)
 | 
			
		||||
> x
 | 
			
		||||
10
 | 
			
		||||
> y
 | 
			
		||||
ERROR: In procedure module-lookup: Unbound variable: y
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Use @code{let*} to allow later variable declarations to refer to earlier
 | 
			
		||||
definitions.
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
> (let* ((x 2)
 | 
			
		||||
         (y (* x 3)))
 | 
			
		||||
    (list x y))
 | 
			
		||||
(2 6)
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
The keyword syntax is @code{#:}; it is used to create unique identifiers.
 | 
			
		||||
@pxref{Keywords,,, guile, GNU Guile Reference Manual}.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
The percentage @code{%} is typically used for read-only global variables in
 | 
			
		||||
the build stage.  Note that it is merely a convention, like @code{_} in C.
 | 
			
		||||
Scheme treats @code{%} exactly the same as any other letter.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Modules are created with @code{define-module}.  For instance
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define-module (guix build-system ruby)
 | 
			
		||||
  #:use-module (guix store)
 | 
			
		||||
  #:export (ruby-build
 | 
			
		||||
            ruby-build-system))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
defines the module @code{guix build-system ruby} which must be located in
 | 
			
		||||
@file{guix/build-system/ruby.scm} somewhere in the Guile load path.  It
 | 
			
		||||
depends on the @code{(guix store)} module and it exports two variables,
 | 
			
		||||
@code{ruby-build} and @code{ruby-build-system}.
 | 
			
		||||
@end itemize
 | 
			
		||||
 | 
			
		||||
For a more detailed introduction, check out
 | 
			
		||||
@uref{http://www.troubleshooters.com/codecorn/scheme_guile/hello.htm, Scheme
 | 
			
		||||
at a Glance}, by Steve Litt.
 | 
			
		||||
 | 
			
		||||
One of the reference Scheme books is the seminal ``Structure and
 | 
			
		||||
Interpretation of Computer Programs'', by Harold Abelson and Gerald Jay
 | 
			
		||||
Sussman, with Julie Sussman.  You'll find a
 | 
			
		||||
@uref{https://mitpress.mit.edu/sites/default/files/sicp/index.html, free copy
 | 
			
		||||
online}, together with
 | 
			
		||||
@uref{https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures/,
 | 
			
		||||
videos of the lectures by the authors}.  The book is available in Texinfo
 | 
			
		||||
format as the @code{sicp} Guix package.  Go ahead, run @code{guix install
 | 
			
		||||
sicp} and start reading with @code{info sicp} (or with the Emacs Info reader).
 | 
			
		||||
An @uref{https://sarabander.github.io/sicp/, unofficial ebook is also
 | 
			
		||||
available}.
 | 
			
		||||
 | 
			
		||||
You'll find more books, tutorials and other resources at
 | 
			
		||||
@url{https://schemers.org/}.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node Packaging
 | 
			
		||||
@chapter Packaging
 | 
			
		||||
 | 
			
		||||
@cindex packaging
 | 
			
		||||
 | 
			
		||||
This chapter is dedicated to teaching you how to add packages to the
 | 
			
		||||
collection of packages that come with GNU Guix.  This involves writing package
 | 
			
		||||
definitions in Guile Scheme, organizing them in package modules, and building
 | 
			
		||||
them.
 | 
			
		||||
 | 
			
		||||
@menu
 | 
			
		||||
* Packaging Tutorial::         A tutorial on how to add packages to Guix.
 | 
			
		||||
@end menu
 | 
			
		||||
 | 
			
		||||
@node Packaging Tutorial
 | 
			
		||||
@section Packaging Tutorial
 | 
			
		||||
 | 
			
		||||
GNU Guix stands out as the @emph{hackable} package manager, mostly because it
 | 
			
		||||
uses @uref{https://www.gnu.org/software/guile/, GNU Guile}, a powerful
 | 
			
		||||
high-level programming language, one of the
 | 
			
		||||
@uref{https://en.wikipedia.org/wiki/Scheme_%28programming_language%29, Scheme}
 | 
			
		||||
dialects from the
 | 
			
		||||
@uref{https://en.wikipedia.org/wiki/Lisp_%28programming_language%29, Lisp family}.
 | 
			
		||||
 | 
			
		||||
Package definitions are also written in Scheme, which empowers Guix in some
 | 
			
		||||
very unique ways, unlike most other package managers that use shell scripts or
 | 
			
		||||
simple languages.
 | 
			
		||||
 | 
			
		||||
@itemize
 | 
			
		||||
@item
 | 
			
		||||
Use functions, structures, macros and all of Scheme expressiveness for your
 | 
			
		||||
package definitions.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
Inheritance makes it easy to customize a package by inheriting from it and
 | 
			
		||||
modifying only what is needed.
 | 
			
		||||
 
 | 
			
		||||
@item
 | 
			
		||||
Batch processing: the whole package collection can be parsed, filtered and
 | 
			
		||||
processed.  Building a headless server with all graphical interfaces stripped
 | 
			
		||||
out?  It's possible.  Want to rebuild everything from source using specific
 | 
			
		||||
compiler optimization flags?  Pass the @code{#:make-flags "..."} argument to
 | 
			
		||||
the list of packages.  It wouldn't be a stretch to think
 | 
			
		||||
@uref{https://wiki.gentoo.org/wiki/USE_flag, Gentoo USE flags} here, but this
 | 
			
		||||
goes even further: the changes don't have to be thought out beforehand by the
 | 
			
		||||
packager, they can be @emph{programmed} by the user!
 | 
			
		||||
@end itemize
 | 
			
		||||
 | 
			
		||||
The following tutorial covers all the basics around package creation with Guix.
 | 
			
		||||
It does not assume much knowledge of the Guix system nor of the Lisp language.
 | 
			
		||||
The reader is only expected to be familiar with the command line and to have some
 | 
			
		||||
basic programming knowledge.
 | 
			
		||||
 | 
			
		||||
@subsection A "Hello World" package
 | 
			
		||||
 | 
			
		||||
The “Defining Packages” section of the manual introduces the basics of Guix
 | 
			
		||||
packaging (@pxref{Defining Packages,,, guix, GNU Guix Reference Manual}).  In
 | 
			
		||||
the following section, we will partly go over those basics again.
 | 
			
		||||
 | 
			
		||||
``GNU hello'' is a dummy project that serves as an idiomatic example for
 | 
			
		||||
packaging.  It uses the GNU build system (@code{./configure && make && make
 | 
			
		||||
install}).  Guix already provides a package definition which is a perfect
 | 
			
		||||
example to start with.  You can look up its declaration with @code{guix edit
 | 
			
		||||
hello} from the command line.  Let's see how it looks:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define-public hello
 | 
			
		||||
  (package
 | 
			
		||||
    (name "hello")
 | 
			
		||||
    (version "2.10")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnu/hello/hello-" version
 | 
			
		||||
                                  ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (synopsis "Hello, GNU world: An example GNU package")
 | 
			
		||||
    (description
 | 
			
		||||
     "GNU Hello prints the message \"Hello, world!\" and then exits.  It
 | 
			
		||||
serves as an example of standard GNU coding practices.  As such, it supports
 | 
			
		||||
command-line arguments, multiple languages, and so on.")
 | 
			
		||||
    (home-page "https://www.gnu.org/software/hello/")
 | 
			
		||||
    (license gpl3+)))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
As you can see, most of it is rather straightforward.  But let's review the
 | 
			
		||||
fields together:
 | 
			
		||||
 | 
			
		||||
@table @samp
 | 
			
		||||
@item name
 | 
			
		||||
The project name.  Using Scheme conventions, we prefer to keep it
 | 
			
		||||
lower case, without underscore and using dash-separated words.
 | 
			
		||||
 | 
			
		||||
@item source
 | 
			
		||||
This field contains a description of the source code origin.  The
 | 
			
		||||
@code{origin} record contains these fields:
 | 
			
		||||
 | 
			
		||||
@enumerate
 | 
			
		||||
@item  The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
 | 
			
		||||
    exist, such as @code{git-fetch} for Git repositories.
 | 
			
		||||
@item  The URI, which is typically some @code{https://} location for @code{url-fetch}.  Here
 | 
			
		||||
    the special `mirror://gnu` refers to a set of well known locations, all of
 | 
			
		||||
    which can be used by Guix to fetch the source, should some of them fail.
 | 
			
		||||
@item  The @code{sha256} checksum of the requested file.  This is essential to ensure
 | 
			
		||||
    the source is not corrupted.  Note that Guix works with base32 strings,
 | 
			
		||||
    hence the call to the @code{base32} function.
 | 
			
		||||
@end enumerate
 | 
			
		||||
 | 
			
		||||
@item build-system
 | 
			
		||||
 | 
			
		||||
This is where the power of abstraction provided by the Scheme language really
 | 
			
		||||
shines: in this case, the @code{gnu-build-system} abstracts away the famous
 | 
			
		||||
@code{./configure && make && make install} shell invocations.  Other build
 | 
			
		||||
systems include the @code{trivial-build-system} which does not do anything and
 | 
			
		||||
requires from the packager to program all the build steps, the
 | 
			
		||||
@code{python-build-system}, the @code{emacs-build-system}, and many more
 | 
			
		||||
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
 | 
			
		||||
 | 
			
		||||
@item synopsis
 | 
			
		||||
It should be a concise summary of what the package does.  For many packages a
 | 
			
		||||
tagline from the project's home page can be used as the synopsis.
 | 
			
		||||
 | 
			
		||||
@item description
 | 
			
		||||
Same as for the synopsis, it's fine to re-use the project description from the
 | 
			
		||||
homepage.  Note that Guix uses Texinfo syntax.
 | 
			
		||||
 | 
			
		||||
@item home-page
 | 
			
		||||
Use HTTPS if available.
 | 
			
		||||
 | 
			
		||||
@item license
 | 
			
		||||
See @code{guix/licenses.scm} in the project source for a full list of
 | 
			
		||||
available licenses.
 | 
			
		||||
@end table
 | 
			
		||||
 | 
			
		||||
Time to build our first package!  Nothing fancy here for now: we will stick to a
 | 
			
		||||
dummy "my-hello", a copy of the above declaration.
 | 
			
		||||
 | 
			
		||||
As with the ritualistic "Hello World" taught with most programming languages,
 | 
			
		||||
this will possibly be the most "manual" approach.  We will work out an ideal
 | 
			
		||||
setup later; for now we will go the simplest route.
 | 
			
		||||
 | 
			
		||||
Save the following to a file @file{my-hello.scm}.
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(use-modules (guix packages)
 | 
			
		||||
             (guix download)
 | 
			
		||||
             (guix build-system gnu)
 | 
			
		||||
             (guix licenses))
 | 
			
		||||
 | 
			
		||||
(package
 | 
			
		||||
  (name "my-hello")
 | 
			
		||||
  (version "2.10")
 | 
			
		||||
  (source (origin
 | 
			
		||||
            (method url-fetch)
 | 
			
		||||
            (uri (string-append "mirror://gnu/hello/hello-" version
 | 
			
		||||
                                ".tar.gz"))
 | 
			
		||||
            (sha256
 | 
			
		||||
             (base32
 | 
			
		||||
              "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
 | 
			
		||||
  (build-system gnu-build-system)
 | 
			
		||||
  (synopsis "Hello, Guix world: An example custom Guix package")
 | 
			
		||||
  (description
 | 
			
		||||
   "GNU Hello prints the message \"Hello, world!\" and then exits.  It
 | 
			
		||||
serves as an example of standard GNU coding practices.  As such, it supports
 | 
			
		||||
command-line arguments, multiple languages, and so on.")
 | 
			
		||||
  (home-page "https://www.gnu.org/software/hello/")
 | 
			
		||||
  (license gpl3+))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
We will explain the extra code in a moment.
 | 
			
		||||
 | 
			
		||||
Feel free to play with the different values of the various fields.  If you
 | 
			
		||||
change the source, you'll need to update the checksum.  Indeed, Guix refuses to
 | 
			
		||||
build anything if the given checksum does not match the computed checksum of the
 | 
			
		||||
source code.  To obtain the correct checksum of the package declaration, we
 | 
			
		||||
need to download the source, compute the sha256 checksum and convert it to
 | 
			
		||||
base32.
 | 
			
		||||
 | 
			
		||||
Thankfully, Guix can automate this task for us; all we need is to provide the
 | 
			
		||||
URI:
 | 
			
		||||
 | 
			
		||||
@c TRANSLATORS: This is example shell output.
 | 
			
		||||
@example sh
 | 
			
		||||
$ guix download mirror://gnu/hello/hello-2.10.tar.gz
 | 
			
		||||
 | 
			
		||||
Starting download of /tmp/guix-file.JLYgL7
 | 
			
		||||
From https://ftpmirror.gnu.org/gnu/hello/hello-2.10.tar.gz...
 | 
			
		||||
following redirection to `https://mirror.ibcp.fr/pub/gnu/hello/hello-2.10.tar.gz'...
 | 
			
		||||
 …10.tar.gz  709KiB                                 2.5MiB/s 00:00 [##################] 100.0%
 | 
			
		||||
/gnu/store/hbdalsf5lpf01x4dcknwx6xbn6n5km6k-hello-2.10.tar.gz
 | 
			
		||||
0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
In this specific case the output tells us which mirror was chosen.
 | 
			
		||||
If the result of the above command is not the same as in the above snippet,
 | 
			
		||||
update your @code{my-hello} declaration accordingly.
 | 
			
		||||
 | 
			
		||||
Note that GNU package tarballs come with an OpenPGP signature, so you
 | 
			
		||||
should definitely check the signature of this tarball with `gpg` to
 | 
			
		||||
authenticate it before going further:
 | 
			
		||||
 | 
			
		||||
@c TRANSLATORS: This is example shell output.
 | 
			
		||||
@example sh
 | 
			
		||||
$ guix download mirror://gnu/hello/hello-2.10.tar.gz.sig
 | 
			
		||||
 | 
			
		||||
Starting download of /tmp/guix-file.03tFfb
 | 
			
		||||
From https://ftpmirror.gnu.org/gnu/hello/hello-2.10.tar.gz.sig...
 | 
			
		||||
following redirection to `https://ftp.igh.cnrs.fr/pub/gnu/hello/hello-2.10.tar.gz.sig'...
 | 
			
		||||
 ….tar.gz.sig  819B                                                                                                                       1.2MiB/s 00:00 [##################] 100.0%
 | 
			
		||||
/gnu/store/rzs8wba9ka7grrmgcpfyxvs58mly0sx6-hello-2.10.tar.gz.sig
 | 
			
		||||
0q0v86n3y38z17rl146gdakw9xc4mcscpk8dscs412j22glrv9jf
 | 
			
		||||
$ gpg --verify /gnu/store/rzs8wba9ka7grrmgcpfyxvs58mly0sx6-hello-2.10.tar.gz.sig /gnu/store/hbdalsf5lpf01x4dcknwx6xbn6n5km6k-hello-2.10.tar.gz
 | 
			
		||||
gpg: Signature made Sun 16 Nov 2014 01:08:37 PM CET
 | 
			
		||||
gpg:                using RSA key A9553245FDE9B739
 | 
			
		||||
gpg: Good signature from "Sami Kerola <kerolasa@@iki.fi>" [unknown]
 | 
			
		||||
gpg:                 aka "Sami Kerola (http://www.iki.fi/kerolasa/) <kerolasa@@iki.fi>" [unknown]
 | 
			
		||||
gpg: WARNING: This key is not certified with a trusted signature!
 | 
			
		||||
gpg:          There is no indication that the signature belongs to the owner.
 | 
			
		||||
Primary key fingerprint: 8ED3 96E3 7E38 D471 A005  30D3 A955 3245 FDE9 B739
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
You can then happily run
 | 
			
		||||
 | 
			
		||||
@c TRANSLATORS: Do not translate this command
 | 
			
		||||
@example sh
 | 
			
		||||
$ guix package --install-from-file=my-hello.scm
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
You should now have @code{my-hello} in your profile!
 | 
			
		||||
 | 
			
		||||
@c TRANSLATORS: Do not translate this command
 | 
			
		||||
@example sh
 | 
			
		||||
$ guix package --list-installed=my-hello
 | 
			
		||||
my-hello	2.10	out
 | 
			
		||||
/gnu/store/f1db2mfm8syb8qvc357c53slbvf1g9m9-my-hello-2.10
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
We've gone as far as we could without any knowledge of Scheme.  Before moving
 | 
			
		||||
on to more complex packages, now is the right time to brush up on your Scheme
 | 
			
		||||
knowledge.  @pxref{A Scheme Crash Course} to get up to speed.
 | 
			
		||||
 | 
			
		||||
@c TODO: Continue the tutorial
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node System Configuration
 | 
			
		||||
@chapter System Configuration
 | 
			
		||||
 | 
			
		||||
Guix offers a flexible language for declaratively configuring your Guix
 | 
			
		||||
System.  This flexibility can at times be overwhelming.  The purpose of this
 | 
			
		||||
chapter is to demonstrate some advanced configuration concepts.
 | 
			
		||||
 | 
			
		||||
@pxref{System Configuration,,, guix, GNU Guix Reference Manual} for a complete
 | 
			
		||||
reference.
 | 
			
		||||
 | 
			
		||||
@menu
 | 
			
		||||
* Customizing the Kernel::     Creating and using a custom Linux kernel on Guix System.
 | 
			
		||||
@end menu
 | 
			
		||||
 | 
			
		||||
@node Customizing the Kernel
 | 
			
		||||
@section Customizing the Kernel
 | 
			
		||||
 | 
			
		||||
Guix is, at its core, a source based distribution with substitutes
 | 
			
		||||
(@pxref{Substitutes,,, guix, GNU Guix Reference Manual}), and as such building
 | 
			
		||||
packages from their source code is an expected part of regular package
 | 
			
		||||
installations and upgrades.  Given this starting point, it makes sense that
 | 
			
		||||
efforts are made to reduce the amount of time spent compiling packages, and
 | 
			
		||||
recent changes and upgrades to the building and distribution of substitutes
 | 
			
		||||
continues to be a topic of discussion within Guix.
 | 
			
		||||
 | 
			
		||||
The kernel, while not requiring an overabundance of RAM to build, does take a
 | 
			
		||||
rather long time on an average machine.  The official kernel configuration, as
 | 
			
		||||
is the case with many GNU/Linux distributions, errs on the side of
 | 
			
		||||
inclusiveness, and this is really what causes the build to take such a long
 | 
			
		||||
time when the kernel is built from source.
 | 
			
		||||
 | 
			
		||||
The Linux kernel, however, can also just be described as a regular old
 | 
			
		||||
package, and as such can be customized just like any other package.  The
 | 
			
		||||
procedure is a little bit different, although this is primarily due to the
 | 
			
		||||
nature of how the package definition is written.
 | 
			
		||||
 | 
			
		||||
The @code{linux-libre} kernel package definition is actually a procedure which
 | 
			
		||||
creates a package.
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define* (make-linux-libre version hash supported-systems
 | 
			
		||||
                           #:key
 | 
			
		||||
                           ;; A function that takes an arch and a variant.
 | 
			
		||||
                           ;; See kernel-config for an example.
 | 
			
		||||
                           (extra-version #f)
 | 
			
		||||
                           (configuration-file #f)
 | 
			
		||||
                           (defconfig "defconfig")
 | 
			
		||||
                           (extra-options %default-extra-linux-options)
 | 
			
		||||
                           (patches (list %boot-logo-patch)))
 | 
			
		||||
  ...)
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
The current @code{linux-libre} package is for the 5.1.x series, and is
 | 
			
		||||
declared like this:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define-public linux-libre
 | 
			
		||||
  (make-linux-libre %linux-libre-version
 | 
			
		||||
                    %linux-libre-hash
 | 
			
		||||
                    '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")
 | 
			
		||||
                    #:patches %linux-libre-5.1-patches
 | 
			
		||||
                    #:configuration-file kernel-config))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Any keys which are not assigned values inherit their default value from the
 | 
			
		||||
@code{make-linux-libre} definition.  When comparing the two snippets above,
 | 
			
		||||
you may notice that the code comment in the first doesn't actually refer to
 | 
			
		||||
the @code{#:extra-version} keyword; it is actually for
 | 
			
		||||
@code{#:configuration-file}.  Because of this, it is not actually easy to
 | 
			
		||||
include a custom kernel configuration from the definition, but don't worry,
 | 
			
		||||
there are other ways to work with what we do have.
 | 
			
		||||
 | 
			
		||||
There are two ways to create a kernel with a custom kernel configuration.  The
 | 
			
		||||
first is to provide a standard @file{.config} file during the build process by
 | 
			
		||||
including an actual @file{.config} file as a native input to our custom
 | 
			
		||||
kernel.  The following is a snippet from the custom @code{'configure} phase of
 | 
			
		||||
the @code{make-linux-libre} package definition:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(let ((build  (assoc-ref %standard-phases 'build))
 | 
			
		||||
      (config (assoc-ref (or native-inputs inputs) "kconfig")))
 | 
			
		||||
 | 
			
		||||
  ;; Use a custom kernel configuration file or a default
 | 
			
		||||
  ;; configuration file.
 | 
			
		||||
  (if config
 | 
			
		||||
      (begin
 | 
			
		||||
        (copy-file config ".config")
 | 
			
		||||
        (chmod ".config" #o666))
 | 
			
		||||
      (invoke "make" ,defconfig))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Below is a sample kernel package.  The @code{linux-libre} package is nothing
 | 
			
		||||
special and can be inherited from and have its fields overridden like any
 | 
			
		||||
other package:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define-public linux-libre/E2140
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit linux-libre)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("kconfig" ,(local-file "E2140.config"))
 | 
			
		||||
      ,@@(alist-delete "kconfig"
 | 
			
		||||
                      (package-native-inputs linux-libre))))))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
In the same directory as the file defining @code{linux-libre-E2140} is a file
 | 
			
		||||
named @file{E2140.config}, which is an actual kernel configuration file.  The
 | 
			
		||||
@code{defconfig} keyword of @code{make-linux-libre} is left blank here, so the
 | 
			
		||||
only kernel configuration in the package is the one which was included in the
 | 
			
		||||
@code{native-inputs} field.
 | 
			
		||||
 | 
			
		||||
The second way to create a custom kernel is to pass a new value to the
 | 
			
		||||
@code{extra-options} keyword of the @code{make-linux-libre} procedure.  The
 | 
			
		||||
@code{extra-options} keyword works with another function defined right below
 | 
			
		||||
it:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define %default-extra-linux-options
 | 
			
		||||
  `(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html
 | 
			
		||||
   ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t)
 | 
			
		||||
   ;; Modules required for initrd:
 | 
			
		||||
   ("CONFIG_NET_9P" . m)
 | 
			
		||||
   ("CONFIG_NET_9P_VIRTIO" . m)
 | 
			
		||||
   ("CONFIG_VIRTIO_BLK" . m)
 | 
			
		||||
   ("CONFIG_VIRTIO_NET" . m)
 | 
			
		||||
   ("CONFIG_VIRTIO_PCI" . m)
 | 
			
		||||
   ("CONFIG_VIRTIO_BALLOON" . m)
 | 
			
		||||
   ("CONFIG_VIRTIO_MMIO" . m)
 | 
			
		||||
   ("CONFIG_FUSE_FS" . m)
 | 
			
		||||
   ("CONFIG_CIFS" . m)
 | 
			
		||||
   ("CONFIG_9P_FS" . m)))
 | 
			
		||||
 | 
			
		||||
(define (config->string options)
 | 
			
		||||
  (string-join (map (match-lambda
 | 
			
		||||
                      ((option . 'm)
 | 
			
		||||
                       (string-append option "=m"))
 | 
			
		||||
                      ((option . #t)
 | 
			
		||||
                       (string-append option "=y"))
 | 
			
		||||
                      ((option . #f)
 | 
			
		||||
                       (string-append option "=n")))
 | 
			
		||||
                    options)
 | 
			
		||||
               "\n"))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
And in the custom configure script from the `make-linux-libre` package:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
;; Appending works even when the option wasn't in the
 | 
			
		||||
;; file.  The last one prevails if duplicated.
 | 
			
		||||
(let ((port (open-file ".config" "a"))
 | 
			
		||||
      (extra-configuration ,(config->string extra-options)))
 | 
			
		||||
  (display extra-configuration port)
 | 
			
		||||
  (close-port port))
 | 
			
		||||
 | 
			
		||||
(invoke "make" "oldconfig"))))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
So by not providing a configuration-file the @file{.config} starts blank, and
 | 
			
		||||
then we write into it the collection of flags that we want.  Here's another
 | 
			
		||||
custom kernel:
 | 
			
		||||
 | 
			
		||||
@example scheme
 | 
			
		||||
(define %macbook41-full-config
 | 
			
		||||
  (append %macbook41-config-options
 | 
			
		||||
          %filesystems
 | 
			
		||||
          %efi-support
 | 
			
		||||
          %emulation
 | 
			
		||||
          (@@@@ (gnu packages linux) %default-extra-linux-options)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-macbook41
 | 
			
		||||
  ;; XXX: Access the internal 'make-linux-libre' procedure, which is
 | 
			
		||||
  ;; private and unexported, and is liable to change in the future.
 | 
			
		||||
  ((@@@@ (gnu packages linux) make-linux-libre) (@@@@ (gnu packages linux) %linux-libre-version)
 | 
			
		||||
                      (@@@@ (gnu packages linux) %linux-libre-hash)
 | 
			
		||||
                      '("x86_64-linux")
 | 
			
		||||
                      #:extra-version "macbook41"
 | 
			
		||||
                      #:patches (@@@@ (gnu packages linux) %linux-libre-5.1-patches)
 | 
			
		||||
                      #:extra-options %macbook41-config-options))
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
In the above example @code{%filesystems} is a collection of flags enabling
 | 
			
		||||
different filesystem support, @code{%efi-support} enables EFI support and
 | 
			
		||||
@code{%emulation} enables a x86_64-linux machine to act in 32-bit mode also.
 | 
			
		||||
@code{%default-extra-linux-options} are the ones quoted above, which had to be
 | 
			
		||||
added in since they were replaced in the @code{extra-options} keyword.
 | 
			
		||||
 | 
			
		||||
This all sounds like it should be doable, but how does one even know which
 | 
			
		||||
modules are required for a particular system?  Two places that can be helpful
 | 
			
		||||
in trying to answer this question is the
 | 
			
		||||
@uref{https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Kernel, Gentoo
 | 
			
		||||
Handbook} and the
 | 
			
		||||
@uref{https://www.kernel.org/doc/html/latest/admin-guide/README.html?highlight=localmodconfig,
 | 
			
		||||
documentation from the kernel itself}.  From the kernel documentation, it
 | 
			
		||||
seems that @code{make localmodconfig} is the command we want.
 | 
			
		||||
 | 
			
		||||
In order to actually run @code{make localmodconfig} we first need to get and
 | 
			
		||||
unpack the kernel source code:
 | 
			
		||||
 | 
			
		||||
@example shell
 | 
			
		||||
tar xf $(guix build linux-libre --source)
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Once inside the directory containing the source code run @code{touch .config}
 | 
			
		||||
to create an initial, empty @file{.config} to start with.  @code{make
 | 
			
		||||
localmodconfig} works by seeing what you already have in @file{.config} and
 | 
			
		||||
letting you know what you're missing.  If the file is blank then you're
 | 
			
		||||
missing everything.  The next step is to run:
 | 
			
		||||
 | 
			
		||||
@example shell
 | 
			
		||||
guix environment linux-libre -- make localmodconfig
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
and note the output.  Do note that the @file{.config} file is still empty.
 | 
			
		||||
The output generally contains two types of warnings.  The first start with
 | 
			
		||||
"WARNING" and can actually be ignored in our case.  The second read:
 | 
			
		||||
 | 
			
		||||
@example shell
 | 
			
		||||
module pcspkr did not have configs CONFIG_INPUT_PCSPKR
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
For each of these lines, copy the @code{CONFIG_XXXX_XXXX} portion into the
 | 
			
		||||
@file{.config} in the directory, and append @code{=m}, so in the end it looks
 | 
			
		||||
like this:
 | 
			
		||||
 | 
			
		||||
@example shell
 | 
			
		||||
CONFIG_INPUT_PCSPKR=m
 | 
			
		||||
CONFIG_VIRTIO=m
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
After copying all the configuration options, run @code{make localmodconfig}
 | 
			
		||||
again to make sure that you don't have any output starting with "module".
 | 
			
		||||
After all of these machine specific modules there are a couple more left that
 | 
			
		||||
are also needed.  @code{CONFIG_MODULES} is necessary so that you can build and
 | 
			
		||||
load modules separately and not have everything built into the kernel.
 | 
			
		||||
@code{CONFIG_BLK_DEV_SD} is required for reading from hard drives.  It is
 | 
			
		||||
possible that there are other modules which you will need.
 | 
			
		||||
 | 
			
		||||
This post does not aim to be a guide to configuring your own kernel however,
 | 
			
		||||
so if you do decide to build a custom kernel you'll have to seek out other
 | 
			
		||||
guides to create a kernel which is just right for your needs.
 | 
			
		||||
 | 
			
		||||
The second way to setup the kernel configuration makes more use of Guix's
 | 
			
		||||
features and allows you to share configuration segments between different
 | 
			
		||||
kernels.  For example, all machines using EFI to boot have a number of EFI
 | 
			
		||||
configuration flags that they need.  It is likely that all the kernels will
 | 
			
		||||
share a list of filesystems to support.  By using variables it is easier to
 | 
			
		||||
see at a glance what features are enabled and to make sure you don't have
 | 
			
		||||
features in one kernel but missing in another.
 | 
			
		||||
 | 
			
		||||
Left undiscussed however, is Guix's initrd and its customization.  It is
 | 
			
		||||
likely that you'll need to modify the initrd on a machine using a custom
 | 
			
		||||
kernel, since certain modules which are expected to be built may not be
 | 
			
		||||
available for inclusion into the initrd.
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node Acknowledgments
 | 
			
		||||
@chapter Acknowledgments
 | 
			
		||||
 | 
			
		||||
Guix is based on the @uref{https://nixos.org/nix/, Nix package manager},
 | 
			
		||||
which was designed and
 | 
			
		||||
implemented by Eelco Dolstra, with contributions from other people (see
 | 
			
		||||
the @file{nix/AUTHORS} file in Guix.)  Nix pioneered functional package
 | 
			
		||||
management, and promoted unprecedented features, such as transactional
 | 
			
		||||
package upgrades and rollbacks, per-user profiles, and referentially
 | 
			
		||||
transparent build processes.  Without this work, Guix would not exist.
 | 
			
		||||
 | 
			
		||||
The Nix-based software distributions, Nixpkgs and NixOS, have also been
 | 
			
		||||
an inspiration for Guix.
 | 
			
		||||
 | 
			
		||||
GNU@tie{}Guix itself is a collective work with contributions from a
 | 
			
		||||
number of people.  See the @file{AUTHORS} file in Guix for more
 | 
			
		||||
information on these fine people.  The @file{THANKS} file lists people
 | 
			
		||||
who have helped by reporting bugs, taking care of the infrastructure,
 | 
			
		||||
providing artwork and themes, making suggestions, and more---thank you!
 | 
			
		||||
 | 
			
		||||
This document includes adapted sections from articles that have previously
 | 
			
		||||
been published on the Guix blog at @uref{https://guix.gnu.org/blog}.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node GNU Free Documentation License
 | 
			
		||||
@appendix GNU Free Documentation License
 | 
			
		||||
@cindex license, GNU Free Documentation License
 | 
			
		||||
@include fdl-1.3.texi
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
@node Concept Index
 | 
			
		||||
@unnumbered Concept Index
 | 
			
		||||
@printindex cp
 | 
			
		||||
 | 
			
		||||
@bye
 | 
			
		||||
 | 
			
		||||
@c Local Variables:
 | 
			
		||||
@c ispell-local-dictionary: "american";
 | 
			
		||||
@c End:
 | 
			
		||||
							
								
								
									
										364
									
								
								doc/guix.texi
									
										
									
									
									
								
							
							
						
						
									
										364
									
								
								doc/guix.texi
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -513,6 +513,7 @@ ready to use it.
 | 
			
		|||
* Setting Up the Daemon::       Preparing the build daemon's environment.
 | 
			
		||||
* Invoking guix-daemon::        Running the build daemon.
 | 
			
		||||
* Application Setup::           Application-specific setup.
 | 
			
		||||
* Upgrading Guix::              Upgrading Guix and its build daemon.
 | 
			
		||||
@end menu
 | 
			
		||||
 | 
			
		||||
@node Binary Installation
 | 
			
		||||
| 
						 | 
				
			
			@ -794,22 +795,6 @@ GNU Coding Standards}).  The @command{configure} script protects against
 | 
			
		|||
unintended misconfiguration of @var{localstatedir} so you do not
 | 
			
		||||
inadvertently corrupt your store (@pxref{The Store}).
 | 
			
		||||
 | 
			
		||||
@cindex Nix, compatibility
 | 
			
		||||
When a working installation of @url{https://nixos.org/nix/, the Nix package
 | 
			
		||||
manager} is available, you
 | 
			
		||||
can instead configure Guix with @code{--disable-daemon}.  In that case,
 | 
			
		||||
Nix replaces the three dependencies above.
 | 
			
		||||
 | 
			
		||||
Guix is compatible with Nix, so it is possible to share the same store
 | 
			
		||||
between both.  To do so, you must pass @command{configure} not only the
 | 
			
		||||
same @code{--with-store-dir} value, but also the same
 | 
			
		||||
@code{--localstatedir} value.  The latter is essential because it
 | 
			
		||||
specifies where the database that stores metadata about the store is
 | 
			
		||||
located, among other things.  The default values for Nix are
 | 
			
		||||
@code{--with-store-dir=/nix/store} and @code{--localstatedir=/nix/var}.
 | 
			
		||||
Note that @code{--disable-daemon} is not required if
 | 
			
		||||
your goal is to share the store with Nix.
 | 
			
		||||
 | 
			
		||||
@node Running the Test Suite
 | 
			
		||||
@section Running the Test Suite
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1777,6 +1762,40 @@ invoke the actual linker with this new set of arguments.  You can instruct the
 | 
			
		|||
wrapper to refuse to link against libraries not in the store by setting the
 | 
			
		||||
@code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES} environment variable to @code{no}.
 | 
			
		||||
 | 
			
		||||
@node Upgrading Guix
 | 
			
		||||
@section Upgrading Guix
 | 
			
		||||
 | 
			
		||||
@cindex Upgrading Guix, on a foreign distro
 | 
			
		||||
 | 
			
		||||
To upgrade Guix, run:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
guix pull
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@xref{Invoking guix pull}, for more information.
 | 
			
		||||
 | 
			
		||||
@cindex upgrading Guix for the root user, on a foreign distro
 | 
			
		||||
@cindex upgrading the Guix daemon, on a foreign distro
 | 
			
		||||
@cindex @command{guix pull} for the root user, on a foreign distro
 | 
			
		||||
 | 
			
		||||
On a foreign distro, you can upgrade the build daemon by running:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
sudo -i guix pull
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@noindent
 | 
			
		||||
followed by (assuming your distro uses the systemd service management
 | 
			
		||||
tool):
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
systemctl restart guix-daemon.service
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
On Guix System, upgrading the daemon is achieved by reconfiguring the
 | 
			
		||||
system (@pxref{Invoking guix system, @code{guix system reconfigure}}).
 | 
			
		||||
 | 
			
		||||
@c TODO What else?
 | 
			
		||||
 | 
			
		||||
@c *********************************************************************
 | 
			
		||||
| 
						 | 
				
			
			@ -2431,7 +2450,7 @@ Create a disk image that will hold the installed system.  To make a
 | 
			
		|||
qcow2-formatted disk image, use the @command{qemu-img} command:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
qemu-img create -f qcow2 guixsd.img 50G
 | 
			
		||||
qemu-img create -f qcow2 guix-system.img 50G
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
The resulting file will be much smaller than 50 GB (typically less than
 | 
			
		||||
| 
						 | 
				
			
			@ -2442,17 +2461,13 @@ Boot the USB installation image in an VM:
 | 
			
		|||
 | 
			
		||||
@example
 | 
			
		||||
qemu-system-x86_64 -m 1024 -smp 1 -enable-kvm \
 | 
			
		||||
  -net user -net nic,model=virtio -boot menu=on \
 | 
			
		||||
  -drive file=guix-system-install-@value{VERSION}.@var{system}.iso \
 | 
			
		||||
  -drive file=guixsd.img
 | 
			
		||||
  -net user -net nic,model=virtio -boot menu=on,order=d \
 | 
			
		||||
  -drive file=guix-system.img \
 | 
			
		||||
  -drive media=cdrom,file=guix-system-install-@value{VERSION}.@var{system}.iso
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
The ordering of the drives matters.  @code{-enable-kvm} is optional, but
 | 
			
		||||
significantly improves performance, @pxref{Running Guix in a VM}.
 | 
			
		||||
 | 
			
		||||
In the VM console, quickly press the @kbd{F12} key to enter the boot
 | 
			
		||||
menu.  Then press the @kbd{2} key and the @kbd{RET} key to validate your
 | 
			
		||||
selection.
 | 
			
		||||
@code{-enable-kvm} is optional, but significantly improves performance,
 | 
			
		||||
@pxref{Running Guix in a VM}.
 | 
			
		||||
 | 
			
		||||
@item
 | 
			
		||||
You're now root in the VM, proceed with the installation process.
 | 
			
		||||
| 
						 | 
				
			
			@ -2460,7 +2475,7 @@ You're now root in the VM, proceed with the installation process.
 | 
			
		|||
@end enumerate
 | 
			
		||||
 | 
			
		||||
Once installation is complete, you can boot the system that's on your
 | 
			
		||||
@file{guixsd.img} image.  @xref{Running Guix in a VM}, for how to do
 | 
			
		||||
@file{guix-system.img} image.  @xref{Running Guix in a VM}, for how to do
 | 
			
		||||
that.
 | 
			
		||||
 | 
			
		||||
@node Building the Installation Image
 | 
			
		||||
| 
						 | 
				
			
			@ -2657,7 +2672,9 @@ For your convenience, we also provide the following aliases:
 | 
			
		|||
@item
 | 
			
		||||
@command{guix remove} is an alias for @command{guix package -r},
 | 
			
		||||
@item
 | 
			
		||||
and @command{guix upgrade} is an alias for @command{guix package -u}.
 | 
			
		||||
@command{guix upgrade} is an alias for @command{guix package -u},
 | 
			
		||||
@item
 | 
			
		||||
and @command{guix show} is an alias for @command{guix package --show=}.
 | 
			
		||||
@end itemize
 | 
			
		||||
 | 
			
		||||
These aliases are less expressive than @command{guix package} and provide
 | 
			
		||||
| 
						 | 
				
			
			@ -2757,7 +2774,7 @@ As an example, @var{file} might contain a definition like this
 | 
			
		|||
(@pxref{Defining Packages}):
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
@verbatiminclude package-hello.scm
 | 
			
		||||
@include package-hello.scm
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
Developers may find it useful to include such a @file{guix.scm} file
 | 
			
		||||
| 
						 | 
				
			
			@ -2916,6 +2933,38 @@ variable, even though, taken individually, neither @file{foo} nor
 | 
			
		|||
@itemx -p @var{profile}
 | 
			
		||||
Use @var{profile} instead of the user's default profile.
 | 
			
		||||
 | 
			
		||||
@var{profile} must be the name of a file that will be created upon
 | 
			
		||||
completion.  Concretely, @var{profile} will be a mere symbolic link
 | 
			
		||||
(``symlink'') pointing to the actual profile where packages are
 | 
			
		||||
installed:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
$ guix install hello -p ~/code/my-profile
 | 
			
		||||
@dots{}
 | 
			
		||||
$ ~/code/my-profile/bin/hello
 | 
			
		||||
Hello, world!
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
All it takes to get rid of the profile is to remove this symlink and its
 | 
			
		||||
siblings that point to specific generations:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
$ rm ~/code/my-profile ~/code/my-profile-*-link
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
@item --list-profiles
 | 
			
		||||
List all the user's profiles:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
$ guix package --list-profiles
 | 
			
		||||
/home/charlie/.guix-profile
 | 
			
		||||
/home/charlie/code/my-profile
 | 
			
		||||
/home/charlie/code/devel-profile
 | 
			
		||||
/home/charlie/tmp/test
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
When running as root, list all the profiles of all the users.
 | 
			
		||||
 | 
			
		||||
@cindex collisions, in a profile
 | 
			
		||||
@cindex colliding packages in profiles
 | 
			
		||||
@cindex profile collisions
 | 
			
		||||
| 
						 | 
				
			
			@ -3020,9 +3069,9 @@ version: 3.3.5
 | 
			
		|||
@end example
 | 
			
		||||
 | 
			
		||||
You may also specify the full name of a package to only get details about a
 | 
			
		||||
specific version of it:
 | 
			
		||||
specific version of it (this time using the @command{guix show} alias):
 | 
			
		||||
@example
 | 
			
		||||
$ guix package --show=python@@3.4 | recsel -p name,version
 | 
			
		||||
$ guix show python@@3.4 | recsel -p name,version
 | 
			
		||||
name: python
 | 
			
		||||
version: 3.4.3
 | 
			
		||||
@end example
 | 
			
		||||
| 
						 | 
				
			
			@ -3673,11 +3722,20 @@ Generation 3	Jun 13 2018 23:31:07	(current)
 | 
			
		|||
@xref{Invoking guix describe, @command{guix describe}}, for other ways to
 | 
			
		||||
describe the current status of Guix.
 | 
			
		||||
 | 
			
		||||
This @code{~/.config/guix/current} profile works like any other profile
 | 
			
		||||
created by @command{guix package} (@pxref{Invoking guix package}).  That
 | 
			
		||||
This @code{~/.config/guix/current} profile works exactly like the profiles
 | 
			
		||||
created by @command{guix package} (@pxref{Invoking guix package}). That
 | 
			
		||||
is, you can list generations, roll back to the previous
 | 
			
		||||
generation---i.e., the previous Guix---and so on:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
$ guix pull --roll-back
 | 
			
		||||
switched from generation 3 to 2
 | 
			
		||||
$ guix pull --delete-generations=1
 | 
			
		||||
deleting /var/guix/profiles/per-user/charlie/current-guix-1-link
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
You can also use @command{guix package} (@pxref{Invoking guix package})
 | 
			
		||||
to manage the profile by naming it explicitly:
 | 
			
		||||
@example
 | 
			
		||||
$ guix package -p ~/.config/guix/current --roll-back
 | 
			
		||||
switched from generation 3 to 2
 | 
			
		||||
| 
						 | 
				
			
			@ -3709,13 +3767,16 @@ Read the list of channels from @var{file} instead of
 | 
			
		|||
evaluates to a list of channel objects.  @xref{Channels}, for more
 | 
			
		||||
information.
 | 
			
		||||
 | 
			
		||||
@cindex channel news
 | 
			
		||||
@item --news
 | 
			
		||||
@itemx -N
 | 
			
		||||
Display the list of packages added or upgraded since the previous generation.
 | 
			
		||||
Display the list of packages added or upgraded since the previous
 | 
			
		||||
generation, as well as, occasionally, news written by channel authors
 | 
			
		||||
for their users (@pxref{Channels, Writing Channel News}).
 | 
			
		||||
 | 
			
		||||
This is the same information as displayed upon @command{guix pull} completion,
 | 
			
		||||
but without ellipses; it is also similar to the output of @command{guix pull
 | 
			
		||||
-l} for the last generation (see below).
 | 
			
		||||
The package information is the same as displayed upon @command{guix
 | 
			
		||||
pull} completion, but without ellipses; it is also similar to the output
 | 
			
		||||
of @command{guix pull -l} for the last generation (see below).
 | 
			
		||||
 | 
			
		||||
@item --list-generations[=@var{pattern}]
 | 
			
		||||
@itemx -l [@var{pattern}]
 | 
			
		||||
| 
						 | 
				
			
			@ -3724,6 +3785,40 @@ is provided, the subset of generations that match @var{pattern}.
 | 
			
		|||
The syntax of @var{pattern} is the same as with @code{guix package
 | 
			
		||||
--list-generations} (@pxref{Invoking guix package}).
 | 
			
		||||
 | 
			
		||||
@item --roll-back
 | 
			
		||||
@cindex rolling back
 | 
			
		||||
@cindex undoing transactions
 | 
			
		||||
@cindex transactions, undoing
 | 
			
		||||
Roll back to the previous @dfn{generation} of @file{~/.config/guix/current}---i.e.,
 | 
			
		||||
undo the last transaction.
 | 
			
		||||
 | 
			
		||||
@item --switch-generation=@var{pattern}
 | 
			
		||||
@itemx -S @var{pattern}
 | 
			
		||||
@cindex generations
 | 
			
		||||
Switch to a particular generation defined by @var{pattern}.
 | 
			
		||||
 | 
			
		||||
@var{pattern} may be either a generation number or a number prefixed
 | 
			
		||||
with ``+'' or ``-''.  The latter means: move forward/backward by a
 | 
			
		||||
specified number of generations.  For example, if you want to return to
 | 
			
		||||
the latest generation after @code{--roll-back}, use
 | 
			
		||||
@code{--switch-generation=+1}.
 | 
			
		||||
 | 
			
		||||
@item --delete-generations[=@var{pattern}]
 | 
			
		||||
@itemx -d [@var{pattern}]
 | 
			
		||||
When @var{pattern} is omitted, delete all generations except the current
 | 
			
		||||
one.
 | 
			
		||||
 | 
			
		||||
This command accepts the same patterns as @option{--list-generations}.
 | 
			
		||||
When @var{pattern} is specified, delete the matching generations.  When
 | 
			
		||||
@var{pattern} specifies a duration, generations @emph{older} than the
 | 
			
		||||
specified duration match.  For instance, @code{--delete-generations=1m}
 | 
			
		||||
deletes generations that are more than one month old.
 | 
			
		||||
 | 
			
		||||
If the current generation matches, it is @emph{not} deleted.
 | 
			
		||||
 | 
			
		||||
Note that deleting generations prevents rolling back to them.
 | 
			
		||||
Consequently, this command must be used with care.
 | 
			
		||||
 | 
			
		||||
@xref{Invoking guix describe}, for a way to display information about the
 | 
			
		||||
current generation only.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -3946,6 +4041,68 @@ add a meta-data file @file{.guix-channel} that contains:
 | 
			
		|||
  (directory "guix"))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
@cindex news, for channels
 | 
			
		||||
@subsection Writing Channel News
 | 
			
		||||
 | 
			
		||||
Channel authors may occasionally want to communicate to their users
 | 
			
		||||
information about important changes in the channel.  You'd send them all
 | 
			
		||||
an email, but that's not convenient.
 | 
			
		||||
 | 
			
		||||
Instead, channels can provide a @dfn{news file}; when the channel users
 | 
			
		||||
run @command{guix pull}, that news file is automatically read and
 | 
			
		||||
@command{guix pull --news} can display the announcements that correspond
 | 
			
		||||
to the new commits that have been pulled, if any.
 | 
			
		||||
 | 
			
		||||
To do that, channel authors must first declare the name of the news file
 | 
			
		||||
in their @file{.guix-channel} file:
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
(channel
 | 
			
		||||
  (version 0)
 | 
			
		||||
  (news-file "etc/news.txt"))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
The news file itself, @file{etc/news.txt} in this example, must look
 | 
			
		||||
something like this:
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
(channel-news
 | 
			
		||||
  (version 0)
 | 
			
		||||
  (entry (tag "the-bug-fix")
 | 
			
		||||
         (title (en "Fixed terrible bug")
 | 
			
		||||
                (fr "Oh la la"))
 | 
			
		||||
         (body (en "@@emph@{Good news@}!  It's fixed!")
 | 
			
		||||
               (eo "Certe ĝi pli bone funkcias nun!")))
 | 
			
		||||
  (entry (commit "bdcabe815cd28144a2d2b4bc3c5057b051fa9906")
 | 
			
		||||
         (title (en "Added a great package")
 | 
			
		||||
                (ca "Què vol dir guix?"))
 | 
			
		||||
         (body (en "Don't miss the @@code@{hello@} package!"))))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
The file consists of a list of @dfn{news entries}.  Each entry is
 | 
			
		||||
associated with a commit or tag: it describes changes made in this
 | 
			
		||||
commit, possibly in preceding commits as well.  Users see entries only
 | 
			
		||||
the first time they obtain the commit the entry refers to.
 | 
			
		||||
 | 
			
		||||
The @code{title} field should be a one-line summary while @code{body}
 | 
			
		||||
can be arbitrarily long, and both can contain Texinfo markup
 | 
			
		||||
(@pxref{Overview,,, texinfo, GNU Texinfo}).  Both the title and body are
 | 
			
		||||
a list of language tag/message tuples, which allows @command{guix pull}
 | 
			
		||||
to display news in the language that corresponds to the user's locale.
 | 
			
		||||
 | 
			
		||||
If you want to translate news using a gettext-based workflow, you can
 | 
			
		||||
extract translatable strings with @command{xgettext} (@pxref{xgettext
 | 
			
		||||
Invocation,,, gettext, GNU Gettext Utilities}).  For example, assuming
 | 
			
		||||
you write news entries in English first, the command below creates a PO
 | 
			
		||||
file containing the strings to translate:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
xgettext -o news.po -l scheme -ken etc/news.scm
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
To sum up, yes, you could use your channel as a blog.  But beware, this
 | 
			
		||||
is @emph{not quite} what your users might expect.
 | 
			
		||||
 | 
			
		||||
@subsection Replicating Guix
 | 
			
		||||
 | 
			
		||||
@cindex pinning, channels
 | 
			
		||||
| 
						 | 
				
			
			@ -4835,7 +4992,9 @@ specified binaries and symlinks.
 | 
			
		|||
@item docker
 | 
			
		||||
This produces a tarball that follows the
 | 
			
		||||
@uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md,
 | 
			
		||||
Docker Image Specification}.
 | 
			
		||||
Docker Image Specification}.  The ``repository name'' as it appears in
 | 
			
		||||
the output of the @command{docker images} command is computed from
 | 
			
		||||
package names passed on the command line or in the manifest file.
 | 
			
		||||
 | 
			
		||||
@item squashfs
 | 
			
		||||
This produces a SquashFS image containing all the specified binaries and
 | 
			
		||||
| 
						 | 
				
			
			@ -6050,7 +6209,7 @@ package, correctly capitalized.
 | 
			
		|||
 | 
			
		||||
For packages requiring shared library dependencies, you may need to write the
 | 
			
		||||
@file{/deps/deps.jl} file manually. It's usually a line of @code{const
 | 
			
		||||
variable = /gnu/store/libary.so} for each dependency, plus a void function
 | 
			
		||||
variable = /gnu/store/library.so} for each dependency, plus a void function
 | 
			
		||||
@code{check_deps() = nothing}.
 | 
			
		||||
 | 
			
		||||
Some older packages that aren't using @file{Package.toml} yet, will require
 | 
			
		||||
| 
						 | 
				
			
			@ -8104,7 +8263,7 @@ As an example, @var{file} might contain a package definition like this
 | 
			
		|||
(@pxref{Defining Packages}):
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
@verbatiminclude package-hello.scm
 | 
			
		||||
@include package-hello.scm
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
@item --expression=@var{expr}
 | 
			
		||||
| 
						 | 
				
			
			@ -8924,6 +9083,16 @@ The crate importer also allows you to specify a version string:
 | 
			
		|||
guix import crate constant-time-eq@@0.1.0
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Additional options include:
 | 
			
		||||
 | 
			
		||||
@table @code
 | 
			
		||||
@item --recursive
 | 
			
		||||
@itemx -r
 | 
			
		||||
Traverse the dependency graph of the given upstream package recursively
 | 
			
		||||
and generate package expressions for all those packages that are not yet
 | 
			
		||||
in Guix.
 | 
			
		||||
@end table
 | 
			
		||||
 | 
			
		||||
@item opam
 | 
			
		||||
@cindex OPAM
 | 
			
		||||
@cindex OCaml
 | 
			
		||||
| 
						 | 
				
			
			@ -9343,7 +9512,7 @@ that Guix uses, as in this example:
 | 
			
		|||
  ;; @dots{}
 | 
			
		||||
  ;; CPE calls this package "grub2".
 | 
			
		||||
  (properties '((cpe-name . "grub2")
 | 
			
		||||
                (cpe-version . "2.3")))
 | 
			
		||||
                (cpe-version . "2.3"))))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
@c See <https://www.openwall.com/lists/oss-security/2017/03/15/3>.
 | 
			
		||||
| 
						 | 
				
			
			@ -11657,6 +11826,7 @@ declaration.
 | 
			
		|||
* Virtualization Services::     Virtualization services.
 | 
			
		||||
* Version Control Services::    Providing remote access to Git repositories.
 | 
			
		||||
* Game Services::               Game servers.
 | 
			
		||||
* Guix Services::               Services relating specifically to Guix.
 | 
			
		||||
* Miscellaneous Services::      Other services.
 | 
			
		||||
@end menu
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -12261,7 +12431,7 @@ The following example showcases how we can use an existing rule file.
 | 
			
		|||
@lisp
 | 
			
		||||
(use-modules (guix download)     ;for url-fetch
 | 
			
		||||
             (guix packages)     ;for origin
 | 
			
		||||
             ;; @dots{})
 | 
			
		||||
             @dots{})
 | 
			
		||||
 | 
			
		||||
(define %android-udev-rules
 | 
			
		||||
  (file->udev-rule
 | 
			
		||||
| 
						 | 
				
			
			@ -12295,7 +12465,7 @@ well as in the @var{groups} field of the @var{operating-system} record.
 | 
			
		|||
@lisp
 | 
			
		||||
(use-modules (gnu packages android)  ;for android-udev-rules
 | 
			
		||||
             (gnu system shadow)     ;for user-group
 | 
			
		||||
             ;; @dots{})
 | 
			
		||||
             @dots{})
 | 
			
		||||
 | 
			
		||||
(operating-system
 | 
			
		||||
  ;; @dots{}
 | 
			
		||||
| 
						 | 
				
			
			@ -12303,8 +12473,7 @@ well as in the @var{groups} field of the @var{operating-system} record.
 | 
			
		|||
                ;; @dots{}
 | 
			
		||||
                (supplementary-groups
 | 
			
		||||
                 '("adbusers"   ;for adb
 | 
			
		||||
                   "wheel" "netdev" "audio" "video"))
 | 
			
		||||
                ;; @dots{})))
 | 
			
		||||
                   "wheel" "netdev" "audio" "video")))))
 | 
			
		||||
 | 
			
		||||
  (groups (cons (user-group (system? #t) (name "adbusers"))
 | 
			
		||||
                %base-groups))
 | 
			
		||||
| 
						 | 
				
			
			@ -13041,6 +13210,33 @@ objects}).
 | 
			
		|||
@end table
 | 
			
		||||
@end deftp
 | 
			
		||||
 | 
			
		||||
@cindex nftables
 | 
			
		||||
@defvr {Scheme Variable} nftables-service-type
 | 
			
		||||
This is the service type to set up a nftables configuration.  nftables is a
 | 
			
		||||
netfilter project that aims to replace the existing iptables, ip6tables,
 | 
			
		||||
arptables and ebtables framework.  It provides a new packet filtering
 | 
			
		||||
framework, a new user-space utility @command{nft}, and a compatibility layer
 | 
			
		||||
for iptables.  This service comes with a default ruleset
 | 
			
		||||
@code{%default-nftables-ruleset} that rejecting all incomming connections
 | 
			
		||||
except those to the ssh port 22.  To use it, simply write:
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
(service nftables-service-type)
 | 
			
		||||
@end lisp
 | 
			
		||||
@end defvr
 | 
			
		||||
 | 
			
		||||
@deftp {Data Type} nftables-configuration
 | 
			
		||||
The data type representing the configuration of nftables.
 | 
			
		||||
 | 
			
		||||
@table @asis
 | 
			
		||||
@item @code{package} (default: @code{nftables})
 | 
			
		||||
The nftables package that provides @command{nft}.
 | 
			
		||||
@item @code{ruleset} (default: @code{%default-nftables-ruleset})
 | 
			
		||||
The nftables ruleset to use.  This may be any ``file-like'' object
 | 
			
		||||
(@pxref{G-Expressions, file-like objects}).
 | 
			
		||||
@end table
 | 
			
		||||
@end deftp
 | 
			
		||||
 | 
			
		||||
@cindex NTP (Network Time Protocol), service
 | 
			
		||||
@cindex ntpd, service for the Network Time Protocol daemon
 | 
			
		||||
@cindex real time clock
 | 
			
		||||
| 
						 | 
				
			
			@ -13194,7 +13390,7 @@ gateway @code{hostname}:
 | 
			
		|||
             (program (file-append openssh "/bin/ssh"))
 | 
			
		||||
             (arguments
 | 
			
		||||
              '("ssh" "-qT" "-i" "/path/to/ssh_key"
 | 
			
		||||
                "-W" "smtp-server:25" "user@@hostname")))))
 | 
			
		||||
                "-W" "smtp-server:25" "user@@hostname")))))))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
See below for more details about @code{inetd-configuration}.
 | 
			
		||||
| 
						 | 
				
			
			@ -19223,13 +19419,13 @@ Other services can also extend the @code{httpd-service-type} to add to
 | 
			
		|||
the configuration.
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
(simple-service 'my-extra-server httpd-service-type
 | 
			
		||||
(simple-service 'www.example.com-server httpd-service-type
 | 
			
		||||
                (list
 | 
			
		||||
                  (httpd-virtualhost
 | 
			
		||||
                    "*:80"
 | 
			
		||||
                    (list (string-append
 | 
			
		||||
                           "ServerName "www.example.com
 | 
			
		||||
                            DocumentRoot \"/srv/http/www.example.com\"")))))
 | 
			
		||||
                    (list (string-join '("ServerName www.example.com"
 | 
			
		||||
                                          "DocumentRoot /srv/http/www.example.com")
 | 
			
		||||
                                       "\n")))))
 | 
			
		||||
@end lisp
 | 
			
		||||
@end deffn
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -19363,13 +19559,13 @@ This data type represents a virtualhost configuration block for the httpd servic
 | 
			
		|||
These should be added to the extra-config for the httpd-service.
 | 
			
		||||
 | 
			
		||||
@lisp
 | 
			
		||||
(simple-service 'my-extra-server httpd-service-type
 | 
			
		||||
(simple-service 'www.example.com-server httpd-service-type
 | 
			
		||||
                (list
 | 
			
		||||
                  (httpd-virtualhost
 | 
			
		||||
                    "*:80"
 | 
			
		||||
                    (list (string-append
 | 
			
		||||
                           "ServerName "www.example.com
 | 
			
		||||
                            DocumentRoot \"/srv/http/www.example.com\"")))))
 | 
			
		||||
                    (list (string-join '("ServerName www.example.com"
 | 
			
		||||
                                          "DocumentRoot /srv/http/www.example.com")
 | 
			
		||||
                                       "\n")))))
 | 
			
		||||
@end lisp
 | 
			
		||||
 | 
			
		||||
@table @asis
 | 
			
		||||
| 
						 | 
				
			
			@ -19664,13 +19860,12 @@ can do something along these lines:
 | 
			
		|||
 | 
			
		||||
@lisp
 | 
			
		||||
(define %gnu-mirror
 | 
			
		||||
  (plain-file
 | 
			
		||||
   "gnu.vcl"
 | 
			
		||||
   "vcl 4.1;
 | 
			
		||||
backend gnu @{ .host = "www.gnu.org"; @}"))
 | 
			
		||||
  (plain-file "gnu.vcl"
 | 
			
		||||
              "vcl 4.1;
 | 
			
		||||
backend gnu @{ .host = \"www.gnu.org\"; @}"))
 | 
			
		||||
 | 
			
		||||
(operating-system
 | 
			
		||||
  ...
 | 
			
		||||
  ;; @dots{}
 | 
			
		||||
  (services (cons (service varnish-service-type
 | 
			
		||||
                           (varnish-configuration
 | 
			
		||||
                            (listen '(":80"))
 | 
			
		||||
| 
						 | 
				
			
			@ -24169,6 +24364,57 @@ The port to bind the server to.
 | 
			
		|||
@end table
 | 
			
		||||
@end deftp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@node Guix Services
 | 
			
		||||
@subsection Guix Services
 | 
			
		||||
 | 
			
		||||
@subsubheading Guix Data Service
 | 
			
		||||
The @uref{http://data.guix.gnu.org,Guix Data Service} processes, stores
 | 
			
		||||
and provides data about GNU Guix.  This includes information about
 | 
			
		||||
packages, derivations and lint warnings.
 | 
			
		||||
 | 
			
		||||
The data is stored in a PostgreSQL database, and available through a web
 | 
			
		||||
interface.
 | 
			
		||||
 | 
			
		||||
@defvar {Scheme Variable} guix-data-service-type
 | 
			
		||||
Service type for the Guix Data Service.  Its value must be a
 | 
			
		||||
@code{guix-data-service-configuration} object.  The service optionally
 | 
			
		||||
extends the getmail service, as the guix-commits mailing list is used to
 | 
			
		||||
find out about changes in the Guix git repository.
 | 
			
		||||
@end defvar
 | 
			
		||||
 | 
			
		||||
@deftp {Data Type} guix-data-service-configuration
 | 
			
		||||
Data type representing the configuration of the Guix Data Service.
 | 
			
		||||
 | 
			
		||||
@table @asis
 | 
			
		||||
@item @code{package} (default: @code{guix-data-service})
 | 
			
		||||
The Guix Data Service package to use.
 | 
			
		||||
 | 
			
		||||
@item @code{user} (default: @code{"guix-data-service"})
 | 
			
		||||
The system user to run the service as.
 | 
			
		||||
 | 
			
		||||
@item @code{group} (default: @code{"guix-data-service"})
 | 
			
		||||
The system group to run the service as.
 | 
			
		||||
 | 
			
		||||
@item @code{port} (default: @code{8765})
 | 
			
		||||
The port to bind the web service to.
 | 
			
		||||
 | 
			
		||||
@item @code{host} (default: @code{"127.0.0.1"})
 | 
			
		||||
The host to bind the web service to.
 | 
			
		||||
 | 
			
		||||
@item @code{getmail-idle-mailboxes} (default: @code{#f})
 | 
			
		||||
If set, this is the list of mailboxes that the getmail service will be
 | 
			
		||||
configured to listen to.
 | 
			
		||||
 | 
			
		||||
@item @code{commits-getmail-retriever-configuration} (default: @code{#f})
 | 
			
		||||
If set, this is the @code{getmail-retriever-configuration} object with
 | 
			
		||||
which to configure getmail to fetch mail from the guix-commits mailing
 | 
			
		||||
list.
 | 
			
		||||
 | 
			
		||||
@end table
 | 
			
		||||
@end deftp
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@node Miscellaneous Services
 | 
			
		||||
@subsection Miscellaneous Services
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,8 @@ info_TEXINFOS = %D%/guix.texi			\
 | 
			
		|||
  %D%/guix.es.texi				\
 | 
			
		||||
  %D%/guix.fr.texi				\
 | 
			
		||||
  %D%/guix.ru.texi				\
 | 
			
		||||
  %D%/guix.zh_CN.texi
 | 
			
		||||
  %D%/guix.zh_CN.texi				\
 | 
			
		||||
  %D%/guix-cookbook.texi
 | 
			
		||||
 | 
			
		||||
%C%_guix_TEXINFOS = \
 | 
			
		||||
  %D%/contributing.texi \
 | 
			
		||||
| 
						 | 
				
			
			@ -109,6 +110,12 @@ $(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.
 | 
			
		|||
	-$(AM_V_POXREF)$(xref_command)
 | 
			
		||||
	-mv "$@.tmp" "$@"
 | 
			
		||||
 | 
			
		||||
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po
 | 
			
		||||
	-$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix-cookbook.texi" -p "$<" -l "$@.tmp"
 | 
			
		||||
	-sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
 | 
			
		||||
	-$(AM_V_POXREF)$(xref_command)
 | 
			
		||||
	-mv "$@.tmp" "$@"
 | 
			
		||||
 | 
			
		||||
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po
 | 
			
		||||
	-$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/contributing.texi" -p "$<" -l "$@.tmp"
 | 
			
		||||
	-$(AM_V_POXREF)$(xref_command)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										120
									
								
								etc/news.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										120
									
								
								etc/news.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,120 @@
 | 
			
		|||
;; GNU Guix news, for use by 'guix pull'.
 | 
			
		||||
;;
 | 
			
		||||
;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;
 | 
			
		||||
;; Copying and distribution of this file, with or without modification, are
 | 
			
		||||
;; permitted in any medium without royalty provided the copyright notice and
 | 
			
		||||
;; this notice are preserved.
 | 
			
		||||
 | 
			
		||||
(channel-news
 | 
			
		||||
 (version 0)
 | 
			
		||||
 | 
			
		||||
 (entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
 | 
			
		||||
        (title (en "GNU C Library upgraded")
 | 
			
		||||
               (de "GNU-C-Bibliothek aktualisiert")
 | 
			
		||||
               (fr "Mise à jour de la bibliothèque C de GNU")
 | 
			
		||||
               (nl "GNU C-bibliotheek bijgewerkt"))
 | 
			
		||||
        (body
 | 
			
		||||
         (en "The GNU C Library (glibc) has been upgraded to version 2.29.  To
 | 
			
		||||
run previously-installed programs linked against glibc 2.28, you need to
 | 
			
		||||
install locale data for version 2.28 in addition to locale data for 2.29:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
guix install glibc-locales glibc-locales-2.28
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
On Guix System, you can adjust the @code{locale-libcs} field of your
 | 
			
		||||
@code{operating-system} form.  Run @code{info \"(guix) Locales\"}, for more
 | 
			
		||||
info.")
 | 
			
		||||
         (de "Die GNU-C-Bibliothek (glibc) wurde auf Version 2.29
 | 
			
		||||
aktualisiert. Um zuvor installierte Programme, die an glibc 2.28 gebunden
 | 
			
		||||
worden sind, weiter benutzen zu können, müssen Sie Locale-Daten für Version
 | 
			
		||||
2.28 zusätzlich zu den Locale-Daten für 2.29 installieren:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
guix install glibc-locales glibc-locales-2.28
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
 | 
			
		||||
@code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
 | 
			
		||||
Locales\"} aus, um weitere Informationen dazu zu erhalten.")
 | 
			
		||||
         (fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
 | 
			
		||||
2.29.  Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
 | 
			
		||||
tu dois installer les données pour la version 2.28 en plus des données de
 | 
			
		||||
régionalisation pour la version 2.29 :
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
guix install glibc-locales glibc-locales-2.28
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Sur le système Guix, tu peux ajuster le champ @code{locale-libcs} de ta forme
 | 
			
		||||
@code{operating-system}.  Lance @code{info \"(guix.fr) Régionalisation\"} pour
 | 
			
		||||
plus de détails.")
 | 
			
		||||
         (nl "De GNU C-bibliotheek (glibc) werd bijgewerkt naar versie 2.29.
 | 
			
		||||
Om gebruik te maken van reeds geïnstalleerde programma's die aan glibc 2.28
 | 
			
		||||
gebonden zijn, moet u de regionale informatie van versie 2.28 naast die van
 | 
			
		||||
versie 2.29 installeren:
 | 
			
		||||
 | 
			
		||||
@example
 | 
			
		||||
guix install glibc-locales glibc-locales-2.28
 | 
			
		||||
@end example
 | 
			
		||||
 | 
			
		||||
Op Guix System kunt u het @code{locale-libcs}-veld van uw
 | 
			
		||||
@code{operating-system}-vorm aanpassen.   Voer @code{info \"(guix) Locales\"}
 | 
			
		||||
uit voor verdere uitleg." )))
 | 
			
		||||
 (entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
 | 
			
		||||
        (title (en "New reduced binary seed bootstrap")
 | 
			
		||||
               (de "Neues Bootstrapping mit kleinerem Seed")
 | 
			
		||||
               (fr "Nouvel ensemble de binaires de bootstrap réduit")
 | 
			
		||||
               (nl "Nieuwe bootstrap met verkleinde binaire kiem"))
 | 
			
		||||
        (body
 | 
			
		||||
         (en "The package graph on x86_64 and i686 is now rooted in a
 | 
			
		||||
@dfn{reduced set of binary seeds}.  The initial set of binaries from which
 | 
			
		||||
packages are built now weighs in at approximately 130 MiB, half of what it
 | 
			
		||||
used to be.  Run @code{info \"(guix) Bootstrapping\"} to learn more, or watch
 | 
			
		||||
the talk at @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
 | 
			
		||||
         (de "Der Paketgraph auf x86_64 und i686 hat jetzt eine @dfn{kleinere
 | 
			
		||||
Menge an binären Seeds} als Wurzel. Das heißt, die ursprüngliche Menge an
 | 
			
		||||
Binärdateien, aus denen heraus Pakete erstellt werden, machen nun ungefähr
 | 
			
		||||
130 MiB aus, halb so viel wie früher. Führen Sie @code{info \"(guix.de)
 | 
			
		||||
Bootstrapping\"} aus, um mehr zu erfahren, oder schauen Sie sich den Vortrag
 | 
			
		||||
auf @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/} an.")
 | 
			
		||||
         (fr "Le graphe des paquets sur x86_64 et i686 prend maintenant sa
 | 
			
		||||
source dans un @dfn{ensemble réduit de binaires}.  L'ensemble initial des
 | 
			
		||||
binaires à partir desquels les paquets sont construits pèse maintenant environ
 | 
			
		||||
130 Mio, soit la moitié par rapport à l'ensemble précédent.  Tu peux lancer
 | 
			
		||||
@code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
 | 
			
		||||
présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
 | 
			
		||||
         (nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
 | 
			
		||||
een @dfn{verkleinde verzameling van binaire kiemen}.  Die beginverzameling
 | 
			
		||||
van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
 | 
			
		||||
groot; nog maar half zo groot als voorheen.  Voer @code{info \"(guix)
 | 
			
		||||
Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
 | 
			
		||||
@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")))
 | 
			
		||||
 | 
			
		||||
 (entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
 | 
			
		||||
        (title (en "New channel news mechanism")
 | 
			
		||||
               (de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
 | 
			
		||||
               (fr "Nouveau mécanisme d'information sur les canaux")
 | 
			
		||||
               (nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
 | 
			
		||||
        (body
 | 
			
		||||
         (en "You are reading this message through the new channel news
 | 
			
		||||
mechanism, congratulations!  This mechanism allows channel authors to provide
 | 
			
		||||
@dfn{news entries} that their users can view with @command{guix pull --news}.
 | 
			
		||||
Run @command{info \"(guix) Invoking guix pull\"} for more info.")
 | 
			
		||||
         (de "Sie lesen diese Meldung mit Hilfe des neuen Mechanismus, um
 | 
			
		||||
Neuigkeiten über Kanäle anzuzeigen — Glückwunsch! Mit diesem
 | 
			
		||||
Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
 | 
			
		||||
Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
 | 
			
		||||
anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
 | 
			
		||||
von guix pull\"} aus, um weitere Informationen zu erhalten.")
 | 
			
		||||
         (fr "Ce message t'arrive à travers le nouveau mécanisme d'information
 | 
			
		||||
des canaux, bravo !  Ce mécanisme permet aux auteur·rice·s de canaux de
 | 
			
		||||
fournir des informations qu'on peut visualiser avec @command{guix pull
 | 
			
		||||
--news}.  Tape @command{info \"(guix.fr) Invoquer guix pull\"} pour plus de
 | 
			
		||||
détails.")
 | 
			
		||||
         (nl "U leest dit bericht door een nieuw mechanisme om per kanaal
 | 
			
		||||
@dfn{nieuwsberichten} te verspreiden.  Proficiat!  Hiermee kunnen kanaalauteurs
 | 
			
		||||
mededelingen uitzenden die hun gebruikers met @command{guix pull --news} kunnen
 | 
			
		||||
lezen.  Voer @command{info \"(guix) Invoking guix pull\"} uit voor meer
 | 
			
		||||
informatie."))))
 | 
			
		||||
| 
						 | 
				
			
			@ -359,8 +359,9 @@ the last argument of `mknod'."
 | 
			
		|||
(define* (mount-root-file-system root type
 | 
			
		||||
                                 #:key volatile-root?)
 | 
			
		||||
  "Mount the root file system of type TYPE at device ROOT.  If VOLATILE-ROOT?
 | 
			
		||||
is true, mount ROOT read-only and make it a overlay with a writable tmpfs
 | 
			
		||||
using the kernel build-in overlayfs."
 | 
			
		||||
is true, mount ROOT read-only and make it an overlay with a writable tmpfs
 | 
			
		||||
using the kernel built-in overlayfs."
 | 
			
		||||
 | 
			
		||||
  (if volatile-root?
 | 
			
		||||
      (begin
 | 
			
		||||
        (mkdir-p "/real-root")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -71,8 +71,7 @@ COMPRESS? is true, compress it using GZIP.  On success, return OUTPUT."
 | 
			
		|||
      (cpio:write-cpio-archive files port
 | 
			
		||||
                               #:file->header cpio:file->cpio-header*)))
 | 
			
		||||
 | 
			
		||||
  (or (not compress?)
 | 
			
		||||
 | 
			
		||||
  (if compress?
 | 
			
		||||
      ;; Gzip insists on adding a '.gz' suffix and does nothing if the input
 | 
			
		||||
      ;; file already has that suffix.  Shuffle files around to placate it.
 | 
			
		||||
      (let* ((gz-suffix? (string-suffix? ".gz" output))
 | 
			
		||||
| 
						 | 
				
			
			@ -88,7 +87,6 @@ COMPRESS? is true, compress it using GZIP.  On success, return OUTPUT."
 | 
			
		|||
               (unless gz-suffix?
 | 
			
		||||
                 (rename-file (string-append output ".gz") output))
 | 
			
		||||
               output)))
 | 
			
		||||
 | 
			
		||||
      output))
 | 
			
		||||
 | 
			
		||||
(define (cache-compiled-file-name file)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -150,14 +150,16 @@ namespace, in addition to essential bind-mounts such /proc."
 | 
			
		|||
    (when log-file
 | 
			
		||||
      ;; Create LOG-FILE so we can map it in the container.
 | 
			
		||||
      (unless (file-exists? log-file)
 | 
			
		||||
        (call-with-output-file log-file (const #t))))
 | 
			
		||||
        (call-with-output-file log-file (const #t))
 | 
			
		||||
        (when user
 | 
			
		||||
          (let ((pw (getpwnam user)))
 | 
			
		||||
            (chown log-file (passwd:uid pw) (passwd:gid pw))))))
 | 
			
		||||
 | 
			
		||||
    (let ((pid (run-container container-directory
 | 
			
		||||
                              mounts namespaces 1
 | 
			
		||||
                              (lambda ()
 | 
			
		||||
                                (mkdir-p "/var/run")
 | 
			
		||||
                                (clean-up pid-file)
 | 
			
		||||
                                (clean-up log-file)
 | 
			
		||||
 | 
			
		||||
                                (exec-command command
 | 
			
		||||
                                              #:user user
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
| 
						 | 
				
			
			@ -159,14 +159,14 @@ USER-PARTITIONS list. Return this list with password fields filled-in."
 | 
			
		|||
                    (format #f (G_ "Please enter the password for the \
 | 
			
		||||
encryption of partition ~a (label: ~a).") file-name crypt-label)
 | 
			
		||||
                    (G_ "Password required")
 | 
			
		||||
                    #:input-hide-checkbox? #t)))
 | 
			
		||||
                    #:input-visibility-checkbox? #t)))
 | 
			
		||||
                (password-confirm-page
 | 
			
		||||
                 (lambda ()
 | 
			
		||||
                   (run-input-page
 | 
			
		||||
                    (format #f (G_ "Please confirm the password for the \
 | 
			
		||||
encryption of partition ~a (label: ~a).") file-name crypt-label)
 | 
			
		||||
                    (G_ "Password confirmation required")
 | 
			
		||||
                    #:input-hide-checkbox? #t))))
 | 
			
		||||
                    #:input-visibility-checkbox? #t))))
 | 
			
		||||
           (if crypt-label
 | 
			
		||||
               (let loop ()
 | 
			
		||||
                 (let ((password (password-page))
 | 
			
		||||
| 
						 | 
				
			
			@ -587,7 +587,6 @@ edit it."
 | 
			
		|||
                                          disks))
 | 
			
		||||
                     (new-user-partitions
 | 
			
		||||
                      (remove-user-partition-by-disk user-partitions item)))
 | 
			
		||||
                (disk-destroy item)
 | 
			
		||||
                `((disks . ,(cons new-disk other-disks))
 | 
			
		||||
                  (user-partitions . ,new-user-partitions)))
 | 
			
		||||
              `((disks . ,disks)
 | 
			
		||||
| 
						 | 
				
			
			@ -625,7 +624,7 @@ edit it."
 | 
			
		|||
                                      info-text)))
 | 
			
		||||
          (case result
 | 
			
		||||
            ((1)
 | 
			
		||||
             (disk-delete-all item)
 | 
			
		||||
             (disk-remove-all-partitions item)
 | 
			
		||||
             `((disks . ,disks)
 | 
			
		||||
               (user-partitions
 | 
			
		||||
                . ,(remove-user-partition-by-disk user-partitions item))))
 | 
			
		||||
| 
						 | 
				
			
			@ -649,7 +648,7 @@ edit it."
 | 
			
		|||
                 (let ((new-user-partitions
 | 
			
		||||
                        (remove-user-partition-by-partition user-partitions
 | 
			
		||||
                                                            item)))
 | 
			
		||||
                   (disk-delete-partition disk item)
 | 
			
		||||
                   (disk-remove-partition* disk item)
 | 
			
		||||
                   `((disks . ,disks)
 | 
			
		||||
                     (user-partitions . ,new-user-partitions))))
 | 
			
		||||
                (else
 | 
			
		||||
| 
						 | 
				
			
			@ -696,9 +695,7 @@ by pressing the Exit button.~%~%")))
 | 
			
		|||
                       #f))
 | 
			
		||||
                 (check-user-partitions user-partitions))))
 | 
			
		||||
          (if user-partitions-ok?
 | 
			
		||||
              (begin
 | 
			
		||||
                (for-each (cut disk-destroy <>) disks)
 | 
			
		||||
                user-partitions)
 | 
			
		||||
              user-partitions
 | 
			
		||||
              (run-disk-page disks user-partitions
 | 
			
		||||
                             #:guided? guided?)))
 | 
			
		||||
        (let* ((result-disks (assoc-ref result 'disks))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -64,13 +64,7 @@
 | 
			
		|||
            user-partition-parted-object
 | 
			
		||||
 | 
			
		||||
            find-esp-partition
 | 
			
		||||
            data-partition?
 | 
			
		||||
            metadata-partition?
 | 
			
		||||
            freespace-partition?
 | 
			
		||||
            small-freespace-partition?
 | 
			
		||||
            normal-partition?
 | 
			
		||||
            extended-partition?
 | 
			
		||||
            logical-partition?
 | 
			
		||||
            esp-partition?
 | 
			
		||||
            boot-partition?
 | 
			
		||||
            default-esp-mount-point
 | 
			
		||||
| 
						 | 
				
			
			@ -172,24 +166,6 @@
 | 
			
		|||
  "Find and return the ESP partition among PARTITIONS."
 | 
			
		||||
  (find esp-partition? partitions))
 | 
			
		||||
 | 
			
		||||
(define (data-partition? partition)
 | 
			
		||||
  "Return #t if PARTITION is a partition dedicated to data (by opposition to
 | 
			
		||||
freespace, metadata and protected partition types), return #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (not (any (lambda (flag)
 | 
			
		||||
                (member flag type))
 | 
			
		||||
              '(free-space metadata protected)))))
 | 
			
		||||
 | 
			
		||||
(define (metadata-partition? partition)
 | 
			
		||||
  "Return #t if PARTITION is a metadata partition, #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (member 'metadata type)))
 | 
			
		||||
 | 
			
		||||
(define (freespace-partition? partition)
 | 
			
		||||
  "Return #t if PARTITION is a free-space partition, #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (member 'free-space type)))
 | 
			
		||||
 | 
			
		||||
(define* (small-freespace-partition? device
 | 
			
		||||
                                     partition
 | 
			
		||||
                                     #:key (max-size MEBIBYTE-SIZE))
 | 
			
		||||
| 
						 | 
				
			
			@ -200,21 +176,6 @@ inferior to MAX-SIZE, #f otherwise."
 | 
			
		|||
                            (device-sector-size device))))
 | 
			
		||||
    (< size max-sector-size)))
 | 
			
		||||
 | 
			
		||||
(define (normal-partition? partition)
 | 
			
		||||
  "return #t if partition is a normal partition, #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (member 'normal type)))
 | 
			
		||||
 | 
			
		||||
(define (extended-partition? partition)
 | 
			
		||||
  "return #t if partition is an extended partition, #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (member 'extended type)))
 | 
			
		||||
 | 
			
		||||
(define (logical-partition? partition)
 | 
			
		||||
  "Return #t if PARTITION is a logical partition, #f otherwise."
 | 
			
		||||
  (let ((type (partition-type partition)))
 | 
			
		||||
    (member 'logical type)))
 | 
			
		||||
 | 
			
		||||
(define (partition-user-type partition)
 | 
			
		||||
  "Return the type of PARTITION, to be stored in the TYPE field of
 | 
			
		||||
<user-partition> record. It can be 'normal, 'extended or 'logical."
 | 
			
		||||
| 
						 | 
				
			
			@ -813,7 +774,7 @@ cause them to cross."
 | 
			
		|||
(define (rmpart disk number)
 | 
			
		||||
  "Remove the partition with the given NUMBER on DISK."
 | 
			
		||||
  (let ((partition (disk-get-partition disk number)))
 | 
			
		||||
    (disk-remove-partition disk partition)))
 | 
			
		||||
    (disk-remove-partition* disk partition)))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
;;
 | 
			
		||||
| 
						 | 
				
			
			@ -928,12 +889,12 @@ exists."
 | 
			
		|||
 | 
			
		||||
    (if has-extended?
 | 
			
		||||
        ;; msdos - remove everything.
 | 
			
		||||
        (disk-delete-all disk)
 | 
			
		||||
        (disk-remove-all-partitions disk)
 | 
			
		||||
        ;; gpt - remove everything but esp if it exists.
 | 
			
		||||
        (for-each
 | 
			
		||||
         (lambda (partition)
 | 
			
		||||
           (and (data-partition? partition)
 | 
			
		||||
                (disk-remove-partition disk partition)))
 | 
			
		||||
                (disk-remove-partition* disk partition)))
 | 
			
		||||
         non-boot-partitions))
 | 
			
		||||
 | 
			
		||||
    (let* ((start-partition
 | 
			
		||||
| 
						 | 
				
			
			@ -1348,7 +1309,7 @@ USER-PARTITIONS, or return nothing."
 | 
			
		|||
 | 
			
		||||
(define (init-parted)
 | 
			
		||||
  "Initialize libparted support."
 | 
			
		||||
  (probe-all-devices)
 | 
			
		||||
  (probe-all-devices!)
 | 
			
		||||
  (exception-set-handler (lambda (exception)
 | 
			
		||||
                           EXCEPTION-OPTION-UNHANDLED)))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1364,7 +1325,6 @@ the devices not to be used before returning."
 | 
			
		|||
  ;; https://mail.gnome.org/archives/commits-list/2013-March/msg18423.html.
 | 
			
		||||
  (let ((device-file-names (map device-path devices)))
 | 
			
		||||
    (for-each force-device-sync devices)
 | 
			
		||||
    (free-all-devices)
 | 
			
		||||
    (for-each (lambda (file-name)
 | 
			
		||||
                (let ((in-use? (with-delay-device-in-use? file-name)))
 | 
			
		||||
                  (and in-use?
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										36
									
								
								gnu/local.mk
									
										
									
									
									
								
							
							
						
						
									
										36
									
								
								gnu/local.mk
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -11,7 +11,7 @@
 | 
			
		|||
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
 | 
			
		||||
# Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
 | 
			
		||||
# Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
# Copyright © 2016, 2017 Jan Nieuwenhuizen <janneke@gnu.org>
 | 
			
		||||
# Copyright © 2016, 2017, 2018, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
			
		||||
# Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
 | 
			
		||||
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
| 
						 | 
				
			
			@ -143,9 +143,11 @@ GNU_SYSTEM_MODULES =				\
 | 
			
		|||
  %D%/packages/dejagnu.scm			\
 | 
			
		||||
  %D%/packages/dico.scm				\
 | 
			
		||||
  %D%/packages/dictionaries.scm			\
 | 
			
		||||
  %D%/packages/diffoscope.scm			\
 | 
			
		||||
  %D%/packages/digest.scm			\
 | 
			
		||||
  %D%/packages/direct-connect.scm		\
 | 
			
		||||
  %D%/packages/disk.scm				\
 | 
			
		||||
  %D%/packages/disk.scm			\
 | 
			
		||||
  %D%/packages/distributed.scm			\
 | 
			
		||||
  %D%/packages/display-managers.scm		\
 | 
			
		||||
  %D%/packages/django.scm			\
 | 
			
		||||
  %D%/packages/djvu.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -270,6 +272,7 @@ GNU_SYSTEM_MODULES =				\
 | 
			
		|||
  %D%/packages/jrnl.scm				\
 | 
			
		||||
  %D%/packages/jose.scm				\
 | 
			
		||||
  %D%/packages/julia.scm			\
 | 
			
		||||
  %D%/packages/jupyter.scm			\
 | 
			
		||||
  %D%/packages/kawa.scm				\
 | 
			
		||||
  %D%/packages/kde.scm				\
 | 
			
		||||
  %D%/packages/kde-frameworks.scm		\
 | 
			
		||||
| 
						 | 
				
			
			@ -472,6 +475,7 @@ GNU_SYSTEM_MODULES =				\
 | 
			
		|||
  %D%/packages/tex.scm				\
 | 
			
		||||
  %D%/packages/textutils.scm			\
 | 
			
		||||
  %D%/packages/text-editors.scm			\
 | 
			
		||||
  %D%/packages/tigervnc.scm			\
 | 
			
		||||
  %D%/packages/time.scm				\
 | 
			
		||||
  %D%/packages/tls.scm				\
 | 
			
		||||
  %D%/packages/tmux.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -532,6 +536,7 @@ GNU_SYSTEM_MODULES =				\
 | 
			
		|||
  %D%/services/authentication.scm		\
 | 
			
		||||
  %D%/services/games.scm			\
 | 
			
		||||
  %D%/services/getmail.scm				\
 | 
			
		||||
  %D%/services/guix.scm			\
 | 
			
		||||
  %D%/services/kerberos.scm			\
 | 
			
		||||
  %D%/services/lirc.scm				\
 | 
			
		||||
  %D%/services/virtualization.scm		\
 | 
			
		||||
| 
						 | 
				
			
			@ -596,6 +601,7 @@ GNU_SYSTEM_MODULES =				\
 | 
			
		|||
  %D%/tests/desktop.scm				\
 | 
			
		||||
  %D%/tests/dict.scm				\
 | 
			
		||||
  %D%/tests/docker.scm				\
 | 
			
		||||
  %D%/tests/guix.scm				\
 | 
			
		||||
  %D%/tests/monitoring.scm                      \
 | 
			
		||||
  %D%/tests/nfs.scm				\
 | 
			
		||||
  %D%/tests/install.scm				\
 | 
			
		||||
| 
						 | 
				
			
			@ -669,6 +675,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/a2ps-CVE-2001-1593.patch	\
 | 
			
		||||
  %D%/packages/patches/a2ps-CVE-2014-0466.patch	\
 | 
			
		||||
  %D%/packages/patches/a2ps-CVE-2015-8107.patch	\
 | 
			
		||||
  %D%/packages/patches/abcl-fix-build-xml.patch	\
 | 
			
		||||
  %D%/packages/patches/abiword-explictly-cast-bools.patch	\
 | 
			
		||||
  %D%/packages/patches/abiword-black-drawing-with-gtk322.patch	\
 | 
			
		||||
  %D%/packages/patches/adb-add-libraries.patch			\
 | 
			
		||||
| 
						 | 
				
			
			@ -686,7 +693,6 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch	\
 | 
			
		||||
  %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch	\
 | 
			
		||||
  %D%/packages/patches/apr-skip-getservbyname-test.patch	\
 | 
			
		||||
  %D%/packages/patches/aria2-CVE-2019-3500.patch		\
 | 
			
		||||
  %D%/packages/patches/aspell-default-dict-dir.patch		\
 | 
			
		||||
  %D%/packages/patches/aspell-gcc-compat.patch			\
 | 
			
		||||
  %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
 | 
			
		||||
| 
						 | 
				
			
			@ -701,13 +707,12 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/avidemux-install-to-lib.patch		\
 | 
			
		||||
  %D%/packages/patches/awesome-reproducible-png.patch		\
 | 
			
		||||
  %D%/packages/patches/azr3.patch				\
 | 
			
		||||
  %D%/packages/patches/bash-4.4-linux-pgrp-pipe.patch		\
 | 
			
		||||
  %D%/packages/patches/bash-reproducible-linux-pgrp-pipe.patch	\
 | 
			
		||||
  %D%/packages/patches/bash-completion-directories.patch	\
 | 
			
		||||
  %D%/packages/patches/bash-linux-pgrp-pipe.patch		\
 | 
			
		||||
  %D%/packages/patches/bastet-change-source-of-unordered_set.patch	\
 | 
			
		||||
  %D%/packages/patches/bazaar-CVE-2017-14176.patch		\
 | 
			
		||||
  %D%/packages/patches/bc-fix-cross-compilation.patch		\
 | 
			
		||||
  %D%/packages/patches/beets-python-3.7-fix.patch		\
 | 
			
		||||
  %D%/packages/patches/beignet-correct-file-names.patch		\
 | 
			
		||||
  %D%/packages/patches/benchmark-unbundle-googletest.patch	\
 | 
			
		||||
  %D%/packages/patches/biber-fix-encoding-write.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -762,7 +767,8 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/dbus-helper-search-path.patch		\
 | 
			
		||||
  %D%/packages/patches/dbus-c++-gcc-compat.patch		\
 | 
			
		||||
  %D%/packages/patches/dbus-c++-threading-mutex.patch		\
 | 
			
		||||
  %D%/packages/patches/dealii-mpi-deprecations.patch		\
 | 
			
		||||
  %D%/packages/patches/debops-constants-for-external-program-names.patch \
 | 
			
		||||
  %D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
 | 
			
		||||
  %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch	\
 | 
			
		||||
  %D%/packages/patches/dfu-programmer-fix-libusb.patch		\
 | 
			
		||||
  %D%/packages/patches/diffutils-gets-undeclared.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -787,14 +793,15 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/emacs-dired-toggle-sudo-emacs-26.patch   \
 | 
			
		||||
  %D%/packages/patches/emacs-exec-path.patch			\
 | 
			
		||||
  %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-helm-org-ql.patch	                \
 | 
			
		||||
  %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-source-date-epoch.patch		\
 | 
			
		||||
  %D%/packages/patches/emacs-unpackaged-req.patch		\
 | 
			
		||||
  %D%/packages/patches/emacs-undohist-ignored.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch	\
 | 
			
		||||
  %D%/packages/patches/emacs-zones-called-interactively.patch	\
 | 
			
		||||
  %D%/packages/patches/enjarify-setup-py.patch			\
 | 
			
		||||
  %D%/packages/patches/enlightenment-fix-setuid-path.patch	\
 | 
			
		||||
  %D%/packages/patches/erlang-man-path.patch			\
 | 
			
		||||
  %D%/packages/patches/eudev-rules-directory.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -824,9 +831,6 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/flint-ldconfig.patch			\
 | 
			
		||||
  %D%/packages/patches/foomatic-filters-CVE-2015-8327.patch	\
 | 
			
		||||
  %D%/packages/patches/foomatic-filters-CVE-2015-8560.patch	\
 | 
			
		||||
  %D%/packages/patches/freeimage-CVE-2015-0852.patch		\
 | 
			
		||||
  %D%/packages/patches/freeimage-CVE-2016-5684.patch		\
 | 
			
		||||
  %D%/packages/patches/freeimage-fix-build-with-gcc-5.patch	\
 | 
			
		||||
  %D%/packages/patches/freeimage-unbundle.patch		\
 | 
			
		||||
  %D%/packages/patches/fuse-overlapping-headers.patch				\
 | 
			
		||||
  %D%/packages/patches/gawk-shell.patch				\
 | 
			
		||||
| 
						 | 
				
			
			@ -853,6 +857,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/gcc-6-cross-environment-variables.patch	\
 | 
			
		||||
  %D%/packages/patches/gcc-6-source-date-epoch-1.patch		\
 | 
			
		||||
  %D%/packages/patches/gcc-6-source-date-epoch-2.patch		\
 | 
			
		||||
  %D%/packages/patches/gcc-7-cross-mingw.patch			\
 | 
			
		||||
  %D%/packages/patches/gcc-8-cross-environment-variables.patch	\
 | 
			
		||||
  %D%/packages/patches/gcc-8-strmov-store-file-names.patch	\
 | 
			
		||||
  %D%/packages/patches/gcc-9-asan-fix-limits-include.patch	\
 | 
			
		||||
| 
						 | 
				
			
			@ -900,10 +905,11 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/glibc-versioned-locpath.patch		\
 | 
			
		||||
  %D%/packages/patches/glibc-2.27-git-fixes.patch		\
 | 
			
		||||
  %D%/packages/patches/glibc-2.28-git-fixes.patch		\
 | 
			
		||||
  %D%/packages/patches/glibc-2.28-supported-locales.patch     	\
 | 
			
		||||
  %D%/packages/patches/glibc-2.29-git-updates.patch     	\
 | 
			
		||||
  %D%/packages/patches/glibc-supported-locales.patch     	\
 | 
			
		||||
  %D%/packages/patches/glibc-2.27-supported-locales.patch     	\
 | 
			
		||||
  %D%/packages/patches/glibc-2.28-supported-locales.patch     	\
 | 
			
		||||
  %D%/packages/patches/glibc-supported-locales.patch     	\
 | 
			
		||||
  %D%/packages/patches/glm-restore-install-target.patch		\
 | 
			
		||||
  %D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch		\
 | 
			
		||||
  %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
 | 
			
		||||
  %D%/packages/patches/gmp-faulty-test.patch			\
 | 
			
		||||
| 
						 | 
				
			
			@ -971,8 +977,8 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch  \
 | 
			
		||||
  %D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch  \
 | 
			
		||||
  %D%/packages/patches/id3lib-CVE-2007-4460.patch			\
 | 
			
		||||
  %D%/packages/patches/idris-test-no-node.patch			\
 | 
			
		||||
  %D%/packages/patches/ilmbase-fix-tests.patch			\
 | 
			
		||||
  %D%/packages/patches/ilmbase-openexr-pkg-config.patch		\
 | 
			
		||||
  %D%/packages/patches/inkscape-poppler-0.76.patch		\
 | 
			
		||||
  %D%/packages/patches/intltool-perl-compatibility.patch	\
 | 
			
		||||
  %D%/packages/patches/irrlicht-use-system-libs.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -1075,6 +1081,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/lierolibre-remove-arch-warning.patch	\
 | 
			
		||||
  %D%/packages/patches/lierolibre-try-building-other-arch.patch	\
 | 
			
		||||
  %D%/packages/patches/linkchecker-tests-require-network.patch	\
 | 
			
		||||
  %D%/packages/patches/linux-libre-active-entropy.patch		\
 | 
			
		||||
  %D%/packages/patches/linux-pam-no-setfsuid.patch		\
 | 
			
		||||
  %D%/packages/patches/lirc-localstatedir.patch			\
 | 
			
		||||
  %D%/packages/patches/lirc-reproducible-build.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -1095,7 +1102,6 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/lxsession-use-gapplication.patch         \
 | 
			
		||||
  %D%/packages/patches/make-glibc-compat.patch			\
 | 
			
		||||
  %D%/packages/patches/make-impure-dirs.patch			\
 | 
			
		||||
  %D%/packages/patches/mame-rapidjson-fix.patch			\
 | 
			
		||||
  %D%/packages/patches/mariadb-client-test-32bit.patch		\
 | 
			
		||||
  %D%/packages/patches/mars-install.patch			\
 | 
			
		||||
  %D%/packages/patches/mars-sfml-2.3.patch			\
 | 
			
		||||
| 
						 | 
				
			
			@ -1179,7 +1185,6 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/osip-CVE-2017-7853.patch			\
 | 
			
		||||
  %D%/packages/patches/ots-no-include-missing-file.patch	\
 | 
			
		||||
  %D%/packages/patches/owncloud-disable-updatecheck.patch	\
 | 
			
		||||
  %D%/packages/patches/p11-kit-jks-timestamps.patch		\
 | 
			
		||||
  %D%/packages/patches/p7zip-CVE-2016-9296.patch		\
 | 
			
		||||
  %D%/packages/patches/p7zip-CVE-2017-17969.patch		\
 | 
			
		||||
  %D%/packages/patches/p7zip-remove-unused-code.patch		\
 | 
			
		||||
| 
						 | 
				
			
			@ -1328,6 +1333,7 @@ dist_patch_DATA =						\
 | 
			
		|||
  %D%/packages/patches/strace-ipc-tests.patch			\
 | 
			
		||||
  %D%/packages/patches/streamlink-update-test.patch		\
 | 
			
		||||
  %D%/packages/patches/stumpwm-fix-broken-read-one-line.patch	\
 | 
			
		||||
  %D%/packages/patches/supercollider-boost-1.70-build-fix.patch	\
 | 
			
		||||
  %D%/packages/patches/superlu-dist-awpm-grid.patch		\
 | 
			
		||||
  %D%/packages/patches/superlu-dist-fix-mpi-deprecations.patch	\
 | 
			
		||||
  %D%/packages/patches/superlu-dist-scotchmetis.patch		\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -25,6 +25,8 @@
 | 
			
		|||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;; Copyright © 2019 Brett Gilio <brettg@posteo.net>
 | 
			
		||||
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
			
		||||
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
 | 
			
		||||
;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -55,9 +57,11 @@
 | 
			
		|||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (guix build-system trivial)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages algebra)
 | 
			
		||||
  #:use-module (gnu packages base)
 | 
			
		||||
  #:use-module (gnu packages bash)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages crypto)
 | 
			
		||||
  #:use-module (gnu packages cyrus-sasl)
 | 
			
		||||
  #:use-module (gnu packages dns)
 | 
			
		||||
  #:use-module (gnu packages file)
 | 
			
		||||
| 
						 | 
				
			
			@ -110,6 +114,7 @@
 | 
			
		|||
  #:use-module (gnu packages boost)
 | 
			
		||||
  #:use-module (gnu packages elf)
 | 
			
		||||
  #:use-module (gnu packages mpi)
 | 
			
		||||
  #:use-module (gnu packages version-control)
 | 
			
		||||
  #:use-module (gnu packages web))
 | 
			
		||||
 | 
			
		||||
(define-public aide
 | 
			
		||||
| 
						 | 
				
			
			@ -684,7 +689,7 @@ connection alive.")
 | 
			
		|||
(define-public isc-dhcp
 | 
			
		||||
  (let* ((bind-major-version "9")
 | 
			
		||||
         (bind-minor-version "11")
 | 
			
		||||
         (bind-patch-version "10")
 | 
			
		||||
         (bind-patch-version "11")
 | 
			
		||||
         (bind-release-type "")         ; for patch release, use "-P"
 | 
			
		||||
         (bind-release-version "")      ; for patch release, e.g. "6"
 | 
			
		||||
         (bind-version (string-append bind-major-version
 | 
			
		||||
| 
						 | 
				
			
			@ -825,7 +830,7 @@ connection alive.")
 | 
			
		|||
                                        "/bind-" bind-version ".tar.gz"))
 | 
			
		||||
                    (sha256
 | 
			
		||||
                     (base32
 | 
			
		||||
                      "1hvhdaar9swh5087kzkbmav1nbn19rxh0m60x0d7gri0v8689fxj"))))
 | 
			
		||||
                      "0swavslyli3vcrkcm2ip11s6p58g3k7r4gjs2b899r25cqrk0lk1"))))
 | 
			
		||||
 | 
			
		||||
                ;; When cross-compiling, we need the cross Coreutils and sed.
 | 
			
		||||
                ;; Otherwise just use those from %FINAL-INPUTS.
 | 
			
		||||
| 
						 | 
				
			
			@ -846,14 +851,14 @@ tools: server, client, and relay agent.")
 | 
			
		|||
(define-public libpcap
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libpcap")
 | 
			
		||||
    (version "1.9.0")
 | 
			
		||||
    (version "1.9.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://www.tcpdump.org/release/libpcap-"
 | 
			
		||||
                                  version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "06bhydl4vr4z9c3vahl76f2j96z1fbrcl7wwismgs4sris08inrf"))))
 | 
			
		||||
                "153h1378diqyc27jjgz6gg5nxmb4ddk006d9xg69nqavgiikflk3"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
| 
						 | 
				
			
			@ -874,14 +879,14 @@ network statistics collection, security monitoring, network debugging, etc.")
 | 
			
		|||
(define-public tcpdump
 | 
			
		||||
  (package
 | 
			
		||||
    (name "tcpdump")
 | 
			
		||||
    (version "4.9.2")
 | 
			
		||||
    (version "4.9.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://www.tcpdump.org/release/tcpdump-"
 | 
			
		||||
                                  version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ygy0layzqaj838r5xd613iraz09wlfgpyh7pc6cwclql8v3b2vr"))))
 | 
			
		||||
                "0434vdcnbqaia672rggjzdn4bb8p8dchz559yiszzdk0sjrprm1c"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs `(("libpcap" ,libpcap)
 | 
			
		||||
              ("openssl" ,openssl)))
 | 
			
		||||
| 
						 | 
				
			
			@ -1718,7 +1723,7 @@ track changes in important system configuration files.")
 | 
			
		|||
(define-public libcap-ng
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libcap-ng")
 | 
			
		||||
    (version "0.7.9")
 | 
			
		||||
    (version "0.7.10")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -1726,7 +1731,7 @@ track changes in important system configuration files.")
 | 
			
		|||
                    version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0a0k484kwv0zilry2mbl9k56cnpdhsjxdxin17jas6kkyfy345aa"))))
 | 
			
		||||
                "1gzzy12agfa9ddipdf72h9y68zqqnvsjjylv4vnq6hj4w2safk58"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:configure-flags
 | 
			
		||||
| 
						 | 
				
			
			@ -1901,6 +1906,101 @@ ad hoc task execution, and multinode orchestration---including trivializing
 | 
			
		|||
things like zero-downtime rolling updates with load balancers.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public debops
 | 
			
		||||
  (package
 | 
			
		||||
    (name "debops")
 | 
			
		||||
    (version "1.1.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/debops/debops")
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "052b2dykdn35pdpn9s4prawl6nl6yzih8nyf54hpvhpisvjrm1v5"))
 | 
			
		||||
       (patches
 | 
			
		||||
        (search-patches "debops-constants-for-external-program-names.patch"
 | 
			
		||||
                        "debops-debops-defaults-fall-back-to-less.patch"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("git" ,git)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("ansible" ,ansible)
 | 
			
		||||
       ("encfs" ,encfs)
 | 
			
		||||
       ("fuse" ,fuse)
 | 
			
		||||
       ("util-linux" ,util-linux)  ;; for umount
 | 
			
		||||
       ("findutils" ,findutils)
 | 
			
		||||
       ("gnupg" ,gnupg)
 | 
			
		||||
       ("which" ,which)))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-future" ,python-future)
 | 
			
		||||
       ("python-distro" ,python-distro)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'nuke-debops-update
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (chmod "bin/debops-update" #o755) ; FIXME work-around git-fetch issue
 | 
			
		||||
             (with-output-to-file "bin/debops-update"
 | 
			
		||||
               (lambda ()
 | 
			
		||||
                 (format #t "#!/bin/sh
 | 
			
		||||
echo 'debops is installed via guix. guix-update is useless in this case.
 | 
			
		||||
Please use `guix package -u debops` instead.'")))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; patch shebangs only in actuall scripts, not in files included in
 | 
			
		||||
         ;; roles (which are to be delivered to the targte systems)
 | 
			
		||||
         (delete `patch-generated-file-shebangs)
 | 
			
		||||
         (replace 'patch-source-shebangs
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (for-each patch-shebang
 | 
			
		||||
                       (find-files "bin"
 | 
			
		||||
                                   (lambda (file stat)
 | 
			
		||||
                                     ;; Filter out symlinks.
 | 
			
		||||
                                     (eq? 'regular (stat:type stat)))
 | 
			
		||||
                                   #:stat lstat))))
 | 
			
		||||
         (add-after 'unpack 'fix-paths
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (define (substitute-program-names file)
 | 
			
		||||
               ;; e.g. ANSIBLE_PLAYBOOK = '/gnu/store/…/bin/ansible-playbook'
 | 
			
		||||
               (for-each
 | 
			
		||||
                (lambda (name)
 | 
			
		||||
                  (let ((varname (string-upcase
 | 
			
		||||
                                  (string-map
 | 
			
		||||
                                   (lambda (c) (if (char=? c #\-) #\_ c))
 | 
			
		||||
                                   name))))
 | 
			
		||||
                    (substitute* file
 | 
			
		||||
                      (((string-append "^(" varname " = )'.*'") line prefix)
 | 
			
		||||
                       (string-append prefix "'" (which name) "'")))))
 | 
			
		||||
                '("ansible-playbook" "encfs" "find" "fusermount"
 | 
			
		||||
                  "umount" "gpg" "ansible" "which")))
 | 
			
		||||
             (for-each substitute-program-names
 | 
			
		||||
                       '("bin/debops"
 | 
			
		||||
                         "bin/debops-padlock"
 | 
			
		||||
                         "bin/debops-task"
 | 
			
		||||
                         "debops/__init__.py"
 | 
			
		||||
                         "debops/cmds/__init__.py"))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (home-page "https://www.debops.org/")
 | 
			
		||||
    (synopsis "Collection of general-purpose Ansible roles")
 | 
			
		||||
    (description "The Ansible roles provided by that can be used to manage
 | 
			
		||||
Debian or Ubuntu hosts.  In addition, a default set of Ansible playbooks can
 | 
			
		||||
be used to apply the provided roles in a controlled way, using Ansible
 | 
			
		||||
inventory groups.
 | 
			
		||||
 | 
			
		||||
The roles are written with a high customization in mind, which can be done
 | 
			
		||||
using Ansible inventory.  This way the role and playbook code can be shared
 | 
			
		||||
between multiple environments, with different configuration in to each one.
 | 
			
		||||
 | 
			
		||||
Services can be managed on a single host, or spread between multiple hosts.
 | 
			
		||||
DebOps provides support for different SQL and NoSQL databases, web servers,
 | 
			
		||||
programming languages and specialized applications useful in a data center
 | 
			
		||||
environment or in a cluster.  The project can also be used to deploy
 | 
			
		||||
virtualization environments using KVM/libvirt, Docker or LXC technologies to
 | 
			
		||||
manage virtual machines and/or containers.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public emacs-ansible-doc
 | 
			
		||||
  (let ((commit "86083a7bb2ed0468ca64e52076b06441a2f8e9e0"))
 | 
			
		||||
    (package
 | 
			
		||||
| 
						 | 
				
			
			@ -2751,6 +2851,62 @@ used in screenshots to show other users what operating system or distribution
 | 
			
		|||
you are running, what theme or icon set you are using, etc.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public screenfetch
 | 
			
		||||
  (package
 | 
			
		||||
    (name "screenfetch")
 | 
			
		||||
    (version "3.9.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/KittyKatt/screenFetch")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "13i7dczbqwhws08zzrdraki1zkqv0qkbgx9c1r8vmg5qr9f7hfzg"))))
 | 
			
		||||
    (build-system trivial-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:modules ((guix build utils))
 | 
			
		||||
       #:builder
 | 
			
		||||
       (begin
 | 
			
		||||
         (use-modules (guix build utils))
 | 
			
		||||
         (let ((source (assoc-ref %build-inputs "source"))
 | 
			
		||||
               (out    (assoc-ref %outputs "out")))
 | 
			
		||||
           (mkdir-p (string-append out "/bin/"))
 | 
			
		||||
           (copy-file (string-append source "/screenfetch-dev")
 | 
			
		||||
                      (string-append out "/bin/screenfetch"))
 | 
			
		||||
           (install-file (string-append source "/screenfetch.1")
 | 
			
		||||
                         (string-append out "/man/man1/"))
 | 
			
		||||
           (install-file (string-append source "/COPYING")
 | 
			
		||||
                         (string-append out "/share/doc/" ,name "-" ,version))
 | 
			
		||||
           (substitute* (string-append out "/bin/screenfetch")
 | 
			
		||||
             (("/usr/bin/env bash")
 | 
			
		||||
              (string-append (assoc-ref %build-inputs "bash")
 | 
			
		||||
                             "/bin/bash")))
 | 
			
		||||
           (wrap-program
 | 
			
		||||
               (string-append out "/bin/screenfetch")
 | 
			
		||||
             `("PATH" ":" prefix
 | 
			
		||||
               (,(string-append (assoc-ref %build-inputs "bc") "/bin:"
 | 
			
		||||
                                (assoc-ref %build-inputs "scrot") "/bin:"
 | 
			
		||||
                                (assoc-ref %build-inputs "xdpyinfo") "/bin"
 | 
			
		||||
                                (assoc-ref %build-inputs "xprop") "/bin"))))
 | 
			
		||||
           (substitute* (string-append out "/bin/screenfetch")
 | 
			
		||||
             (("#!#f")
 | 
			
		||||
              (string-append "#!" (assoc-ref %build-inputs "bash")
 | 
			
		||||
                             "/bin/bash")))))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("bash" ,bash)
 | 
			
		||||
       ("bc" ,bc)
 | 
			
		||||
       ("scrot" ,scrot)
 | 
			
		||||
       ("xdpyinfo" ,xdpyinfo)
 | 
			
		||||
       ("xprop" ,xprop)))
 | 
			
		||||
    (home-page "https://github.com/KittyKatt/screenFetch")
 | 
			
		||||
    (synopsis "System information script")
 | 
			
		||||
    (description "Bash screenshot information tool which can be used to
 | 
			
		||||
generate those nifty terminal theme information and ASCII distribution logos in
 | 
			
		||||
everyone's screenshots nowadays.")
 | 
			
		||||
    (license license:gpl3)))
 | 
			
		||||
 | 
			
		||||
(define-public nnn
 | 
			
		||||
  (package
 | 
			
		||||
    (name "nnn")
 | 
			
		||||
| 
						 | 
				
			
			@ -3185,7 +3341,7 @@ Logitech Unifying Receiver.")
 | 
			
		|||
  (package
 | 
			
		||||
    (name "lynis")
 | 
			
		||||
    ;; Also update the ‘lynis-sdk’ input to the commit matching this release.
 | 
			
		||||
    (version "2.7.4")
 | 
			
		||||
    (version "2.7.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -3194,7 +3350,7 @@ Logitech Unifying Receiver.")
 | 
			
		|||
             (commit version)))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1jjk5hcxmp4f4ppsljiq95l2ln6b03azydap3b35lsvxkjybv88k"))
 | 
			
		||||
        (base32 "1lkkbvxm0rgrrlx0szaxmf8ghc3d26wal96sgqk84m37mvs1f7p0"))
 | 
			
		||||
       (modules '((guix build utils)))
 | 
			
		||||
       (snippet
 | 
			
		||||
        '(begin
 | 
			
		||||
| 
						 | 
				
			
			@ -3211,10 +3367,10 @@ Logitech Unifying Receiver.")
 | 
			
		|||
           (method git-fetch)
 | 
			
		||||
           (uri (git-reference
 | 
			
		||||
                 (url "https://github.com/CISOfy/lynis-sdk")
 | 
			
		||||
                 (commit "90f301e21c204792cf372f1cf05890a562f2e31b")))
 | 
			
		||||
                 (commit "bf1c1d95121da9ca79a9eac5a15ed8d81e34094d")))
 | 
			
		||||
           (file-name (git-file-name "lynis-sdk" version))
 | 
			
		||||
           (sha256
 | 
			
		||||
            (base32 "1d0smr1fxrvbc3hl8lzy33im9ahzr0hgs3kk09r8g8xccjkcm52l"))))))
 | 
			
		||||
            (base32 "1ndz5v0039dqa87cva2dk55a8hkw0fibsw8hh2ddmny9qkr4l3dp"))))))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -345,7 +345,7 @@ precision.")
 | 
			
		|||
(define-public giac
 | 
			
		||||
  (package
 | 
			
		||||
    (name "giac")
 | 
			
		||||
    (version "1.5.0-63")
 | 
			
		||||
    (version "1.5.0-65")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              ;; "~parisse/giac" is not used because the maintainer regularly
 | 
			
		||||
| 
						 | 
				
			
			@ -357,7 +357,7 @@ precision.")
 | 
			
		|||
                                  "source/giac_" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1jp7awyp8j8w6fhn802z8ddbq1fxhkyk9xdf0mq0mm0chpkylwqk"))))
 | 
			
		||||
                "1g2fp9vgy0gqjmi6mlc3ldfn8ryq3h4mfd7rcq5hs6ry21hblv30"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:modules ((ice-9 ftw)
 | 
			
		||||
| 
						 | 
				
			
			@ -996,7 +996,7 @@ features, and more.")
 | 
			
		|||
(define-public xtensor
 | 
			
		||||
  (package
 | 
			
		||||
    (name "xtensor")
 | 
			
		||||
    (version "0.20.5")
 | 
			
		||||
    (version "0.20.9")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -1004,7 +1004,7 @@ features, and more.")
 | 
			
		|||
                    (commit version)))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0kkc4ar7p2d94jnclmrh46dwv7ldy9lx630vm9gci3pp4hnhbj9f"))
 | 
			
		||||
                "1rw04bdi7mzp362dhkxr9m4rafnvb47xjsi9p3fp4vfif8v0jij8"))
 | 
			
		||||
              (file-name (git-file-name name version))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -1014,7 +1014,7 @@ features, and more.")
 | 
			
		|||
     `(#:configure-flags
 | 
			
		||||
       '("-DBUILD_TESTS=ON")
 | 
			
		||||
       #:test-target "xtest"))
 | 
			
		||||
    (home-page "http://quantstack.net/xtensor")
 | 
			
		||||
    (home-page "https://quantstack.net/xtensor")
 | 
			
		||||
    (synopsis "C++ tensors with broadcasting and lazy computing")
 | 
			
		||||
    (description "xtensor is a C++ library meant for numerical analysis with
 | 
			
		||||
multi-dimensional array expressions.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -40,6 +40,7 @@
 | 
			
		|||
  #:use-module (gnu packages docker)
 | 
			
		||||
  #:use-module (gnu packages gcc)
 | 
			
		||||
  #:use-module (gnu packages gnupg)
 | 
			
		||||
  #:use-module (gnu packages java)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages pcre)
 | 
			
		||||
  #:use-module (gnu packages python)
 | 
			
		||||
| 
						 | 
				
			
			@ -936,3 +937,60 @@ these same tools to create your own additional or alternative repository for
 | 
			
		|||
publishing, or to assist in creating, testing and submitting metadata to the
 | 
			
		||||
main repository.")
 | 
			
		||||
    (license license:agpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public enjarify
 | 
			
		||||
  (package
 | 
			
		||||
    (name "enjarify")
 | 
			
		||||
    (version "1.0.3")
 | 
			
		||||
    (home-page "https://github.com/Storyyeller/enjarify")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
      (method git-fetch)
 | 
			
		||||
      (uri (git-reference
 | 
			
		||||
            (url home-page)
 | 
			
		||||
            (commit version)))
 | 
			
		||||
      (file-name (git-file-name name version))
 | 
			
		||||
      (patches
 | 
			
		||||
       (search-patches "enjarify-setup-py.patch"))
 | 
			
		||||
      (sha256
 | 
			
		||||
       (base32
 | 
			
		||||
        "1nam7h1g4f1h6jla4qcjjagnyvd24dv6d5445w04q8hx07nxdapk"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'enjarify-wrapper-inherit-pythonpath
 | 
			
		||||
           ;; enjarify sets PYTHONPATH from a shell script, overwriting
 | 
			
		||||
           ;; PYTHONPATH set from guix. Comment out this line.
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "enjarify.sh"
 | 
			
		||||
               (("export PYTHONPATH") "# export PYTHONPATH"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-before 'check 'fixup-expected-test-results
 | 
			
		||||
           ;; Upstream adjusted this test in commit:
 | 
			
		||||
           ;; 3ae884a6485af82d300515813f537685b08dd800
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "tests/test2/expected.txt"
 | 
			
		||||
               (("^20") "0"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-before 'check 'drop-java-xss-argument
 | 
			
		||||
           ;; Upstream removed this argument in order to support 32-bit
 | 
			
		||||
           ;; architectures.  commit: 4be0111d879aa95fdc0d9f24fe529f8c664d4093
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "enjarify/runtests.py"
 | 
			
		||||
               (("java -Xss515m") "java "))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'install 'install-enjarify-wrapper
 | 
			
		||||
             (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
               (let* ((out (assoc-ref outputs "out")))
 | 
			
		||||
                 (mkdir-p (string-append out "/bin/"))
 | 
			
		||||
                 (copy-file "enjarify.sh" (string-append out "/bin/enjarify"))
 | 
			
		||||
                 #t))))))
 | 
			
		||||
    (native-inputs `(("openjdk" ,openjdk12)))
 | 
			
		||||
    (synopsis "Translate Dalvik bytecode to equivalent Java bytecode")
 | 
			
		||||
    (description "Android applications are Java programs that run on a
 | 
			
		||||
customized virtual machine, which is part of the Android operating system, the
 | 
			
		||||
Dalvik VM.  Their bytecode differs from the bytecode of normal Java
 | 
			
		||||
applications.  Enjarify can translate the Dalvik bytecode back to equivalent
 | 
			
		||||
Java bytecode, which simplifies the analysis of Android applications.")
 | 
			
		||||
    (license license:asl2.0)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -22,6 +22,7 @@
 | 
			
		|||
;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
 | 
			
		||||
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
 | 
			
		||||
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
 | 
			
		||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -1027,7 +1028,7 @@ audio signals.")
 | 
			
		|||
@enumerate
 | 
			
		||||
@item Pulse-VCO, a dirac pulse oscillator with flat amplitude spectrum
 | 
			
		||||
@item Saw-VCO, a sawtooth oscillator with 1/F amplitude spectrum
 | 
			
		||||
@item Rec-VCO, a square / rectange oscillator
 | 
			
		||||
@item Rec-VCO, a square / rectangle oscillator
 | 
			
		||||
@end enumerate\n
 | 
			
		||||
 | 
			
		||||
All oscillators are low-pass filtered to provide waveforms similar to the
 | 
			
		||||
| 
						 | 
				
			
			@ -1535,7 +1536,7 @@ synchronous execution of all clients, and low latency operation.")
 | 
			
		|||
(define-public jack-2
 | 
			
		||||
  (package (inherit jack-1)
 | 
			
		||||
    (name "jack2")
 | 
			
		||||
    (version "1.9.12")
 | 
			
		||||
    (version "1.9.13")
 | 
			
		||||
    (source (origin
 | 
			
		||||
             (method url-fetch)
 | 
			
		||||
             (uri (string-append "https://github.com/jackaudio/jack2/releases/"
 | 
			
		||||
| 
						 | 
				
			
			@ -1544,40 +1545,38 @@ synchronous execution of all clients, and low latency operation.")
 | 
			
		|||
             (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
             (sha256
 | 
			
		||||
              (base32
 | 
			
		||||
               "0crf4y9a5j9miw8r5ji4l3w5w0y2frrf7xyfsfdgacnw6vwy5vyy"))))
 | 
			
		||||
               "1d1d403jn4366mqig6g8ghr8057b3rn7gs26b5p3rkal34j20qw2"))))
 | 
			
		||||
    (build-system waf-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:python ,python-2
 | 
			
		||||
       #:tests? #f  ; no check target
 | 
			
		||||
     `(#:tests? #f  ; no check target
 | 
			
		||||
       #:configure-flags '("--dbus"
 | 
			
		||||
                           "--alsa")
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before
 | 
			
		||||
          'configure 'set-linkflags
 | 
			
		||||
          (lambda _
 | 
			
		||||
            ;; Add $libdir to the RUNPATH of all the binaries.
 | 
			
		||||
            (substitute* "wscript"
 | 
			
		||||
              ((".*CFLAGS.*-Wall.*" m)
 | 
			
		||||
               (string-append m
 | 
			
		||||
                              "    conf.env.append_unique('LINKFLAGS',"
 | 
			
		||||
                              "'-Wl,-rpath=" %output "/lib')\n")))
 | 
			
		||||
            #t))
 | 
			
		||||
         (add-before 'configure 'set-linkflags
 | 
			
		||||
           (lambda _
 | 
			
		||||
             ;; Add $libdir to the RUNPATH of all the binaries.
 | 
			
		||||
             (substitute* "wscript"
 | 
			
		||||
               ((".*CFLAGS.*-Wall.*" m)
 | 
			
		||||
                (string-append m
 | 
			
		||||
                               "    conf.env.append_unique('LINKFLAGS',"
 | 
			
		||||
                               "'-Wl,-rpath=" %output "/lib')\n")))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'install 'wrap-python-scripts
 | 
			
		||||
          (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
            ;; Make sure 'jack_control' runs with the correct PYTHONPATH.
 | 
			
		||||
            (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                   (path (getenv "PYTHONPATH")))
 | 
			
		||||
              (wrap-program (string-append out "/bin/jack_control")
 | 
			
		||||
                `("PYTHONPATH" ":" prefix (,path))))
 | 
			
		||||
            #t)))))
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             ;; Make sure 'jack_control' runs with the correct PYTHONPATH.
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (path (getenv "PYTHONPATH")))
 | 
			
		||||
               (wrap-program (string-append out "/bin/jack_control")
 | 
			
		||||
                 `("PYTHONPATH" ":" prefix (,path))))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("alsa-lib" ,alsa-lib)
 | 
			
		||||
       ("dbus" ,dbus)
 | 
			
		||||
       ("expat" ,expat)
 | 
			
		||||
       ("libsamplerate" ,libsamplerate)
 | 
			
		||||
       ("opus" ,opus)
 | 
			
		||||
       ("python2-dbus" ,python2-dbus)
 | 
			
		||||
       ("python-dbus" ,python-dbus)
 | 
			
		||||
       ("readline" ,readline)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)))
 | 
			
		||||
| 
						 | 
				
			
			@ -2177,16 +2176,18 @@ background file post-processing.")
 | 
			
		|||
(define-public supercollider
 | 
			
		||||
  (package
 | 
			
		||||
    (name "supercollider")
 | 
			
		||||
    (version "3.10.2")
 | 
			
		||||
    (version "3.10.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
                    "https://github.com/supercollider/supercollider"
 | 
			
		||||
                    "/releases/download/Version-" version
 | 
			
		||||
                    "/SuperCollider-" version "-Source-linux.tar.bz2"))
 | 
			
		||||
              (patches
 | 
			
		||||
               (search-patches "supercollider-boost-1.70-build-fix.patch"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ynz1ydcpsd5h57h1n4a7avm6p1cif5a8rkmz4qpr46pr8z9p6iq"))))
 | 
			
		||||
                "0srm6wbazidkrd4ckjy4ypyhkdwcnx2i7k9msjyngalh0mrc9zz1"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
 | 
			
		||||
| 
						 | 
				
			
			@ -2198,12 +2199,6 @@ background file post-processing.")
 | 
			
		|||
                  (ice-9 ftw))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'fix-build-with-boost-1.68
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "server/supernova/utilities/time_tag.hpp"
 | 
			
		||||
               (("(time_duration offset = .+ microseconds\\().*" _ m)
 | 
			
		||||
                (string-append m "static_cast<long>(get_nanoseconds()/1000));\n")))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'unpack 'rm-bundled-libs
 | 
			
		||||
           (lambda _
 | 
			
		||||
             ;; The build system doesn't allow us to unbundle the following
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1133,7 +1133,7 @@ CONFIG_NETFILTER_NETLINK_LOG=m
 | 
			
		|||
CONFIG_NETFILTER_NETLINK_OSF=m
 | 
			
		||||
CONFIG_NF_CONNTRACK=m
 | 
			
		||||
CONFIG_NF_LOG_COMMON=m
 | 
			
		||||
# CONFIG_NF_LOG_NETDEV is not set
 | 
			
		||||
CONFIG_NF_LOG_NETDEV=m
 | 
			
		||||
CONFIG_NETFILTER_CONNCOUNT=m
 | 
			
		||||
CONFIG_NF_CONNTRACK_MARK=y
 | 
			
		||||
CONFIG_NF_CONNTRACK_SECMARK=y
 | 
			
		||||
| 
						 | 
				
			
			@ -1176,8 +1176,8 @@ CONFIG_NF_NAT_REDIRECT=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1189,15 +1189,22 @@ CONFIG_NFT_MASQ=m
 | 
			
		|||
CONFIG_NFT_REDIR=m
 | 
			
		||||
CONFIG_NFT_NAT=m
 | 
			
		||||
CONFIG_NFT_TUNNEL=m
 | 
			
		||||
# CONFIG_NFT_OBJREF is not set
 | 
			
		||||
CONFIG_NFT_OBJREF=m
 | 
			
		||||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1361,8 +1368,12 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1370,6 +1381,9 @@ CONFIG_NF_LOG_IPV4=m
 | 
			
		|||
CONFIG_NF_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_MASQUERADE_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV4=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_SNMP_BASIC=m
 | 
			
		||||
CONFIG_NF_NAT_PROTO_GRE=m
 | 
			
		||||
CONFIG_NF_NAT_PPTP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1401,7 +1415,14 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV6=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV6=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1430,7 +1451,9 @@ CONFIG_IP6_NF_NAT=m
 | 
			
		|||
CONFIG_IP6_NF_TARGET_MASQUERADE=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_NPT=m
 | 
			
		||||
CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1120,10 +1120,11 @@ CONFIG_NF_NAT_REDIRECT=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
CONFIG_NFT_COUNTER=m
 | 
			
		||||
CONFIG_NFT_CONNLIMIT=m
 | 
			
		||||
CONFIG_NFT_LOG=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1136,12 +1137,20 @@ CONFIG_NFT_OBJREF=m
 | 
			
		|||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
# CONFIG_NF_FLOW_TABLE is not set
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
| 
						 | 
				
			
			@ -1303,14 +1312,22 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
CONFIG_NF_LOG_IPV4=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_MASQUERADE_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV4=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_SNMP_BASIC=m
 | 
			
		||||
CONFIG_NF_NAT_PROTO_GRE=m
 | 
			
		||||
CONFIG_NF_NAT_PPTP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1342,7 +1359,15 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV6=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV6=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NF_LOG_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1358,7 +1383,7 @@ CONFIG_IP6_NF_MATCH_IPV6HEADER=m
 | 
			
		|||
CONFIG_IP6_NF_MATCH_MH=m
 | 
			
		||||
CONFIG_IP6_NF_MATCH_RPFILTER=m
 | 
			
		||||
CONFIG_IP6_NF_MATCH_RT=m
 | 
			
		||||
# CONFIG_IP6_NF_MATCH_SRH is not set
 | 
			
		||||
CONFIG_IP6_NF_MATCH_SRH=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_HL=m
 | 
			
		||||
CONFIG_IP6_NF_FILTER=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_REJECT=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1370,7 +1395,9 @@ CONFIG_IP6_NF_NAT=m
 | 
			
		|||
CONFIG_IP6_NF_TARGET_MASQUERADE=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_NPT=m
 | 
			
		||||
CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1209,8 +1209,8 @@ CONFIG_NF_NAT_REDIRECT=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1226,11 +1226,18 @@ CONFIG_NFT_OBJREF=m
 | 
			
		|||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1394,8 +1401,12 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1403,6 +1414,9 @@ CONFIG_NF_LOG_IPV4=m
 | 
			
		|||
CONFIG_NF_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_MASQUERADE_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV4=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_SNMP_BASIC=m
 | 
			
		||||
CONFIG_NF_NAT_PROTO_GRE=m
 | 
			
		||||
CONFIG_NF_NAT_PPTP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1434,7 +1448,14 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV6=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV6=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1468,7 +1489,9 @@ CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		|||
# DECnet: Netfilter Configuration
 | 
			
		||||
#
 | 
			
		||||
CONFIG_DECNET_NF_GRABULATOR=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1219,8 +1219,8 @@ CONFIG_NF_NAT_REDIRECT=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1236,11 +1236,18 @@ CONFIG_NFT_OBJREF=m
 | 
			
		|||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1404,8 +1411,12 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV4=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1413,6 +1424,9 @@ CONFIG_NF_LOG_IPV4=m
 | 
			
		|||
CONFIG_NF_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_MASQUERADE_IPV4=y
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV4=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV4=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV4=m
 | 
			
		||||
CONFIG_NF_NAT_SNMP_BASIC=m
 | 
			
		||||
CONFIG_NF_NAT_PROTO_GRE=m
 | 
			
		||||
CONFIG_NF_NAT_PPTP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1444,7 +1458,14 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_CHAIN_ROUTE_IPV6=m
 | 
			
		||||
CONFIG_NFT_CHAIN_NAT_IPV6=m
 | 
			
		||||
CONFIG_NFT_MASQ_IPV6=m
 | 
			
		||||
CONFIG_NFT_REDIR_IPV6=m
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1478,7 +1499,9 @@ CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		|||
# DECnet: Netfilter Configuration
 | 
			
		||||
#
 | 
			
		||||
CONFIG_DECNET_NF_GRABULATOR=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1117,7 +1117,7 @@ CONFIG_NETFILTER_NETLINK_LOG=m
 | 
			
		|||
CONFIG_NETFILTER_NETLINK_OSF=m
 | 
			
		||||
CONFIG_NF_CONNTRACK=m
 | 
			
		||||
CONFIG_NF_LOG_COMMON=m
 | 
			
		||||
# CONFIG_NF_LOG_NETDEV is not set
 | 
			
		||||
CONFIG_NF_LOG_NETDEV=m
 | 
			
		||||
CONFIG_NETFILTER_CONNCOUNT=m
 | 
			
		||||
CONFIG_NF_CONNTRACK_MARK=y
 | 
			
		||||
CONFIG_NF_CONNTRACK_SECMARK=y
 | 
			
		||||
| 
						 | 
				
			
			@ -1157,8 +1157,8 @@ CONFIG_NF_NAT_MASQUERADE=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1168,17 +1168,25 @@ CONFIG_NFT_LOG=m
 | 
			
		|||
CONFIG_NFT_LIMIT=m
 | 
			
		||||
CONFIG_NFT_MASQ=m
 | 
			
		||||
CONFIG_NFT_REDIR=m
 | 
			
		||||
CONFIG_NFT_NAT=m
 | 
			
		||||
CONFIG_NFT_TUNNEL=m
 | 
			
		||||
# CONFIG_NFT_OBJREF is not set
 | 
			
		||||
CONFIG_NFT_OBJREF=m
 | 
			
		||||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_XFRM=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1345,8 +1353,11 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1383,7 +1394,10 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1412,7 +1426,9 @@ CONFIG_IP6_NF_TARGET_NPT=m
 | 
			
		|||
# end of IPv6: Netfilter Configuration
 | 
			
		||||
 | 
			
		||||
CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1118,28 +1118,38 @@ CONFIG_NF_NAT_MASQUERADE=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
# CONFIG_NFT_FLOW_OFFLOAD is not set
 | 
			
		||||
CONFIG_NFT_COUNTER=m
 | 
			
		||||
CONFIG_NFT_CONNLIMIT=m
 | 
			
		||||
CONFIG_NFT_LOG=m
 | 
			
		||||
CONFIG_NFT_LIMIT=m
 | 
			
		||||
CONFIG_NFT_MASQ=m
 | 
			
		||||
CONFIG_NFT_REDIR=m
 | 
			
		||||
CONFIG_NFT_NAT=m
 | 
			
		||||
CONFIG_NFT_TUNNEL=m
 | 
			
		||||
CONFIG_NFT_OBJREF=m
 | 
			
		||||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_XFRM=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
# CONFIG_NF_FLOW_TABLE is not set
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
 | 
			
		||||
#
 | 
			
		||||
| 
						 | 
				
			
			@ -1304,8 +1314,12 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
CONFIG_NF_LOG_IPV4=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1341,7 +1355,11 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NF_LOG_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1355,7 +1373,7 @@ CONFIG_IP6_NF_MATCH_IPV6HEADER=m
 | 
			
		|||
CONFIG_IP6_NF_MATCH_MH=m
 | 
			
		||||
CONFIG_IP6_NF_MATCH_RPFILTER=m
 | 
			
		||||
CONFIG_IP6_NF_MATCH_RT=m
 | 
			
		||||
# CONFIG_IP6_NF_MATCH_SRH is not set
 | 
			
		||||
CONFIG_IP6_NF_MATCH_SRH=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_HL=m
 | 
			
		||||
CONFIG_IP6_NF_FILTER=m
 | 
			
		||||
CONFIG_IP6_NF_TARGET_REJECT=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1369,7 +1387,9 @@ CONFIG_IP6_NF_TARGET_NPT=m
 | 
			
		|||
# end of IPv6: Netfilter Configuration
 | 
			
		||||
 | 
			
		||||
CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			@ -8028,9 +8048,9 @@ CONFIG_EXT4_USE_FOR_EXT2=y
 | 
			
		|||
CONFIG_EXT4_FS_POSIX_ACL=y
 | 
			
		||||
CONFIG_EXT4_FS_SECURITY=y
 | 
			
		||||
# CONFIG_EXT4_DEBUG is not set
 | 
			
		||||
CONFIG_JBD2=m
 | 
			
		||||
CONFIG_JBD2=y
 | 
			
		||||
# CONFIG_JBD2_DEBUG is not set
 | 
			
		||||
CONFIG_FS_MBCACHE=m
 | 
			
		||||
CONFIG_FS_MBCACHE=y
 | 
			
		||||
CONFIG_REISERFS_FS=m
 | 
			
		||||
# CONFIG_REISERFS_CHECK is not set
 | 
			
		||||
# CONFIG_REISERFS_PROC_INFO is not set
 | 
			
		||||
| 
						 | 
				
			
			@ -8687,7 +8707,7 @@ CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
 | 
			
		|||
CONFIG_ARCH_HAS_FAST_MULTIPLIER=y
 | 
			
		||||
# CONFIG_INDIRECT_PIO is not set
 | 
			
		||||
CONFIG_CRC_CCITT=m
 | 
			
		||||
CONFIG_CRC16=m
 | 
			
		||||
CONFIG_CRC16=y
 | 
			
		||||
CONFIG_CRC_T10DIF=y
 | 
			
		||||
CONFIG_CRC_ITU_T=m
 | 
			
		||||
CONFIG_CRC32=y
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1147,8 +1147,8 @@ CONFIG_NF_NAT_MASQUERADE=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1158,17 +1158,25 @@ CONFIG_NFT_LOG=m
 | 
			
		|||
CONFIG_NFT_LIMIT=m
 | 
			
		||||
CONFIG_NFT_MASQ=m
 | 
			
		||||
CONFIG_NFT_REDIR=m
 | 
			
		||||
CONFIG_NFT_NAT=m
 | 
			
		||||
CONFIG_NFT_TUNNEL=m
 | 
			
		||||
CONFIG_NFT_OBJREF=m
 | 
			
		||||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_XFRM=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1335,8 +1343,11 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1373,7 +1384,10 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1409,7 +1423,9 @@ CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		|||
CONFIG_DECNET_NF_GRABULATOR=m
 | 
			
		||||
# end of DECnet: Netfilter Configuration
 | 
			
		||||
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1168,8 +1168,8 @@ CONFIG_NF_NAT_MASQUERADE=y
 | 
			
		|||
CONFIG_NETFILTER_SYNPROXY=m
 | 
			
		||||
CONFIG_NF_TABLES=m
 | 
			
		||||
CONFIG_NF_TABLES_SET=m
 | 
			
		||||
# CONFIG_NF_TABLES_INET is not set
 | 
			
		||||
# CONFIG_NF_TABLES_NETDEV is not set
 | 
			
		||||
CONFIG_NF_TABLES_INET=y
 | 
			
		||||
CONFIG_NF_TABLES_NETDEV=y
 | 
			
		||||
CONFIG_NFT_NUMGEN=m
 | 
			
		||||
CONFIG_NFT_CT=m
 | 
			
		||||
CONFIG_NFT_FLOW_OFFLOAD=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1179,17 +1179,25 @@ CONFIG_NFT_LOG=m
 | 
			
		|||
CONFIG_NFT_LIMIT=m
 | 
			
		||||
CONFIG_NFT_MASQ=m
 | 
			
		||||
CONFIG_NFT_REDIR=m
 | 
			
		||||
CONFIG_NFT_NAT=m
 | 
			
		||||
CONFIG_NFT_TUNNEL=m
 | 
			
		||||
CONFIG_NFT_OBJREF=m
 | 
			
		||||
CONFIG_NFT_QUEUE=m
 | 
			
		||||
CONFIG_NFT_QUOTA=m
 | 
			
		||||
CONFIG_NFT_REJECT=m
 | 
			
		||||
CONFIG_NFT_REJECT_INET=m
 | 
			
		||||
CONFIG_NFT_COMPAT=m
 | 
			
		||||
CONFIG_NFT_HASH=m
 | 
			
		||||
CONFIG_NFT_FIB=m
 | 
			
		||||
CONFIG_NFT_FIB_INET=m
 | 
			
		||||
CONFIG_NFT_XFRM=m
 | 
			
		||||
CONFIG_NFT_SOCKET=m
 | 
			
		||||
CONFIG_NFT_OSF=m
 | 
			
		||||
CONFIG_NFT_TPROXY=m
 | 
			
		||||
CONFIG_NF_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_DUP_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FWD_NETDEV=m
 | 
			
		||||
CONFIG_NFT_FIB_NETDEV=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_INET=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE=m
 | 
			
		||||
CONFIG_NETFILTER_XTABLES=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1356,8 +1364,11 @@ CONFIG_IP_VS_PE_SIP=m
 | 
			
		|||
CONFIG_NF_DEFRAG_IPV4=m
 | 
			
		||||
CONFIG_NF_SOCKET_IPV4=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV4=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV4 is not set
 | 
			
		||||
# CONFIG_NF_TABLES_ARP is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV4=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV4=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV4=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV4=m
 | 
			
		||||
CONFIG_NF_TABLES_ARP=y
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV4=m
 | 
			
		||||
CONFIG_NF_DUP_IPV4=m
 | 
			
		||||
CONFIG_NF_LOG_ARP=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1394,7 +1405,10 @@ CONFIG_IP_NF_ARP_MANGLE=m
 | 
			
		|||
#
 | 
			
		||||
CONFIG_NF_SOCKET_IPV6=m
 | 
			
		||||
CONFIG_NF_TPROXY_IPV6=m
 | 
			
		||||
# CONFIG_NF_TABLES_IPV6 is not set
 | 
			
		||||
CONFIG_NF_TABLES_IPV6=y
 | 
			
		||||
CONFIG_NFT_REJECT_IPV6=m
 | 
			
		||||
CONFIG_NFT_DUP_IPV6=m
 | 
			
		||||
CONFIG_NFT_FIB_IPV6=m
 | 
			
		||||
CONFIG_NF_FLOW_TABLE_IPV6=m
 | 
			
		||||
CONFIG_NF_DUP_IPV6=m
 | 
			
		||||
CONFIG_NF_REJECT_IPV6=m
 | 
			
		||||
| 
						 | 
				
			
			@ -1430,7 +1444,9 @@ CONFIG_NF_DEFRAG_IPV6=m
 | 
			
		|||
CONFIG_DECNET_NF_GRABULATOR=m
 | 
			
		||||
# end of DECnet: Netfilter Configuration
 | 
			
		||||
 | 
			
		||||
# CONFIG_NF_TABLES_BRIDGE is not set
 | 
			
		||||
CONFIG_NF_TABLES_BRIDGE=y
 | 
			
		||||
CONFIG_NFT_BRIDGE_REJECT=m
 | 
			
		||||
CONFIG_NF_LOG_BRIDGE=m
 | 
			
		||||
CONFIG_BRIDGE_NF_EBTABLES=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_BROUTE=m
 | 
			
		||||
CONFIG_BRIDGE_EBT_T_FILTER=m
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										4997
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm-veyron.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										4997
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm-veyron.conf
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										9316
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9316
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm.conf
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										9246
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm64.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9246
									
								
								gnu/packages/aux-files/linux-libre/5.3-arm64.conf
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										10271
									
								
								gnu/packages/aux-files/linux-libre/5.3-i686.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										10271
									
								
								gnu/packages/aux-files/linux-libre/5.3-i686.conf
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							
							
								
								
									
										10227
									
								
								gnu/packages/aux-files/linux-libre/5.3-x86_64.conf
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										10227
									
								
								gnu/packages/aux-files/linux-libre/5.3-x86_64.conf
									
										
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
				
			
			@ -1,5 +1,6 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -20,6 +21,7 @@
 | 
			
		|||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system ant)
 | 
			
		||||
| 
						 | 
				
			
			@ -64,20 +66,21 @@
 | 
			
		|||
  (package
 | 
			
		||||
    (name "axoloti-runtime")
 | 
			
		||||
    (version "1.0.12")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/axoloti/axoloti/"
 | 
			
		||||
                                  "archive/" version ".tar.gz"))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1dynk6h0nixp4zihpirpqa4vi8fq1lhm443jsmvhk135ykhf364p"))
 | 
			
		||||
              (modules '((guix build utils)))
 | 
			
		||||
              (snippet
 | 
			
		||||
               '(begin
 | 
			
		||||
                  ;; Remove pre-built Java binaries.
 | 
			
		||||
                  (delete-file-recursively "lib/")
 | 
			
		||||
                  #t))))
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/axoloti/axoloti.git")
 | 
			
		||||
             (commit version)))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "05hyr9qx9dplp0gkx4v34i17972b3f512qndnarzy4wzfpnp0s3b"))
 | 
			
		||||
       (modules '((guix build utils)))
 | 
			
		||||
       (snippet
 | 
			
		||||
        '(begin
 | 
			
		||||
           ;; Remove pre-built Java binaries.
 | 
			
		||||
           (delete-file-recursively "lib/")
 | 
			
		||||
           #t))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ; no check target
 | 
			
		||||
| 
						 | 
				
			
			@ -231,6 +234,10 @@ runtime.")
 | 
			
		|||
                           ,@%gnu-build-system-modules)
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'make-git-checkout-writable
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (for-each make-file-writable (find-files "."))
 | 
			
		||||
             #t))
 | 
			
		||||
         (delete 'configure)
 | 
			
		||||
         (replace 'build
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1126,12 +1126,19 @@ test environments.")
 | 
			
		|||
(define-public glibc-utf8-locales
 | 
			
		||||
  (make-glibc-utf8-locales glibc))
 | 
			
		||||
 | 
			
		||||
(define-public glibc-locales-2.27
 | 
			
		||||
  (package (inherit (make-glibc-locales glibc-2.27))
 | 
			
		||||
           (name "glibc-locales-2.27")))
 | 
			
		||||
;; Packages provided to ease use of binaries linked against the previous libc.
 | 
			
		||||
(define-public glibc-locales-2.28
 | 
			
		||||
  (package (inherit (make-glibc-locales glibc-2.28))
 | 
			
		||||
           (name "glibc-locales-2.28")))
 | 
			
		||||
(define-public glibc-utf8-locales-2.28
 | 
			
		||||
  (package (inherit (make-glibc-utf8-locales glibc-2.28))
 | 
			
		||||
           (name "glibc-utf8-locales-2.28")))
 | 
			
		||||
 | 
			
		||||
;; These should no longer be needed.
 | 
			
		||||
(define-public glibc-utf8-locales-2.27
 | 
			
		||||
  (package (inherit (make-glibc-utf8-locales glibc-2.27))
 | 
			
		||||
           (name "glibc-utf8-locales-2.27")))
 | 
			
		||||
  (deprecated-package "glibc-utf8-locales-2.27" glibc-utf8-locales-2.28))
 | 
			
		||||
(define-public glibc-locales-2.27
 | 
			
		||||
  (deprecated-package "glibc-locales-2.27" glibc-locales-2.28))
 | 
			
		||||
 | 
			
		||||
(define-public which
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1192,14 +1192,14 @@ the Human Protein Atlas project.")
 | 
			
		|||
(define-public r-regioner
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-regioner")
 | 
			
		||||
    (version "1.16.4")
 | 
			
		||||
    (version "1.16.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "regioneR" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0xzk057h6nkr3rvd412prxgnkpq625b90laj1kwb0i5q8j5ch760"))))
 | 
			
		||||
         "12x7sh5d8y549hqz4qjb2j3ak22l79w9l0vdbv4gn0bwi5206k8h"))))
 | 
			
		||||
    (properties `((upstream-name . "regioneR")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -5343,14 +5343,14 @@ self-organizing map clustering and minimal spanning trees.")
 | 
			
		|||
(define-public r-mixomics
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-mixomics")
 | 
			
		||||
    (version "6.8.4")
 | 
			
		||||
    (version "6.8.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "mixOmics" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0lw4c9lxcm83xrvl4y120i1z710qjbdqginhrw738azpr1f82hcg"))))
 | 
			
		||||
         "0s93ai5d7li8pnxd87n12j9gypvac5zfahsk68j7zjv68dglj8s7"))))
 | 
			
		||||
    (properties `((upstream-name . "mixOmics")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -6010,19 +6010,20 @@ arrays based on fast wavelet-based functional models.")
 | 
			
		|||
(define-public r-variancepartition
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-variancepartition")
 | 
			
		||||
    (version "1.14.0")
 | 
			
		||||
    (version "1.14.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "variancePartition" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1ycapwb2mq57xibrzzjz9zwxqz4nwz9f3n5gskhlr5vcs7irkjd6"))))
 | 
			
		||||
         "0w4kri2389x1082xppx7l6xl1a5g74fyp02iwb4938x3gzwqwbjd"))))
 | 
			
		||||
    (properties
 | 
			
		||||
     `((upstream-name . "variancePartition")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-biobase" ,r-biobase)
 | 
			
		||||
       ("r-biocparallel" ,r-biocparallel)
 | 
			
		||||
       ("r-colorramps" ,r-colorramps)
 | 
			
		||||
       ("r-doparallel" ,r-doparallel)
 | 
			
		||||
       ("r-foreach" ,r-foreach)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7367,13 +7367,13 @@ S4Vectors package itself.")
 | 
			
		|||
(define-public r-iranges
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-iranges")
 | 
			
		||||
    (version "2.18.2")
 | 
			
		||||
    (version "2.18.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (bioconductor-uri "IRanges" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0dc35844c1mfj07hvy6yn4wag6qdggbgl9gjcg3wpkh9hkm60a5n"))))
 | 
			
		||||
                "05rw2b2bwns443n7d6lf97zdv1jbqdii2nprhs6x852w73m2a2g3"))))
 | 
			
		||||
    (properties
 | 
			
		||||
     `((upstream-name . "IRanges")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
| 
						 | 
				
			
			@ -7647,13 +7647,13 @@ annotation data packages using SQLite data storage.")
 | 
			
		|||
(define-public r-biomart
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-biomart")
 | 
			
		||||
    (version "2.40.4")
 | 
			
		||||
    (version "2.40.5")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (bioconductor-uri "biomaRt" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0dj51qkxm7bh24b3bs1di7lic6zgi7g5gf9iqkqhrwkbm7sqvn0v"))))
 | 
			
		||||
                "1kjvxnkpsx3j2hji3cg3ka2gv8a9mg117lzzxyqjb7qa4zw7dipx"))))
 | 
			
		||||
    (properties
 | 
			
		||||
     `((upstream-name . "biomaRt")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
| 
						 | 
				
			
			@ -7731,13 +7731,13 @@ biological sequences or sets of sequences.")
 | 
			
		|||
(define-public r-rsamtools
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rsamtools")
 | 
			
		||||
    (version "2.0.0")
 | 
			
		||||
    (version "2.0.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (bioconductor-uri "Rsamtools" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1nv5idyjk75mvl4np5sig0xa6qygm1ivj33k041ffyj19q8jf7ij"))))
 | 
			
		||||
                "188k5g40lbli7dxr96hldyvg9r9hmlbh2fp0qs5nnd12b8zbf338"))))
 | 
			
		||||
    (properties
 | 
			
		||||
     `((upstream-name . "Rsamtools")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
| 
						 | 
				
			
			@ -8283,14 +8283,14 @@ secondary structure and comparative analysis in R.")
 | 
			
		|||
(define-public r-rhtslib
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rhtslib")
 | 
			
		||||
    (version "1.16.1")
 | 
			
		||||
    (version "1.16.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "Rhtslib" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "178zbrm221rwhbjk7j2v9g5ra44k0xg7c5abhd810m3g7snma8k8"))))
 | 
			
		||||
         "07qaqj2hypmrg40m3pci082bzar6wi10dh77r4a8x74dfppcwdzf"))))
 | 
			
		||||
    (properties `((upstream-name . "Rhtslib")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    ;; Without this a temporary directory ends up in the Rhtslib.so binary,
 | 
			
		||||
| 
						 | 
				
			
			@ -8407,6 +8407,13 @@ library implementing most of the pipeline's features.")
 | 
			
		|||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before 'configure 'find-RCAS
 | 
			
		||||
           ;; The configure script can't find non-1.3.x versions of RCAS because
 | 
			
		||||
           ;; its R expression ‘1.10.1 >= 1.3.4’ evaluates to false.
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "configure"
 | 
			
		||||
               (("1\\.3\\.4") "0.0.0"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'install 'wrap-executable
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
| 
						 | 
				
			
			@ -9165,14 +9172,14 @@ proteomics packages.")
 | 
			
		|||
(define-public r-mzr
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-mzr")
 | 
			
		||||
    (version "2.18.0")
 | 
			
		||||
    (version "2.18.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "mzR" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0g5r6yk4gyz0xdwlmrcij4zv7apdgsgygr043095l33hard6nsl5"))
 | 
			
		||||
         "1pr1pcrg3r3pccm5ag6l8ic6rpqbk9jnlb9mm7g4ak5jwrajbzjq"))
 | 
			
		||||
       (modules '((guix build utils)))
 | 
			
		||||
       (snippet
 | 
			
		||||
        '(begin
 | 
			
		||||
| 
						 | 
				
			
			@ -9193,7 +9200,8 @@ proteomics packages.")
 | 
			
		|||
-lboost_iostreams -lboost_thread -lboost_filesystem -lboost_chrono\n")))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(;; XXX Boost 1.69 will not work here.
 | 
			
		||||
     `(;; Our default boost package won't work here, unfortunately, even with
 | 
			
		||||
       ;; mzR version 2.18.1.
 | 
			
		||||
       ("boost" ,boost-for-mysql) ; use this instead of the bundled boost sources
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -9446,13 +9454,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
 | 
			
		|||
(define-public r-seurat
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-seurat")
 | 
			
		||||
    (version "3.1.0")
 | 
			
		||||
    (version "3.1.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (cran-uri "Seurat" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0icxndnnkkmmr9hhd01dv3w8pih7x9r0rlp3fq9pk3qajp9gmlyq"))))
 | 
			
		||||
                "084lr2fjdksshsmv1ww82bgn3a9mml7kswsidjrs89snabgvn360"))))
 | 
			
		||||
    (properties `((upstream-name . "Seurat")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -9465,6 +9473,7 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
 | 
			
		|||
       ("r-ggplot2" ,r-ggplot2)
 | 
			
		||||
       ("r-ggrepel" ,r-ggrepel)
 | 
			
		||||
       ("r-ggridges" ,r-ggridges)
 | 
			
		||||
       ("r-httr" ,r-httr)
 | 
			
		||||
       ("r-ica" ,r-ica)
 | 
			
		||||
       ("r-igraph" ,r-igraph)
 | 
			
		||||
       ("r-irlba" ,r-irlba)
 | 
			
		||||
| 
						 | 
				
			
			@ -10267,14 +10276,14 @@ family of feature/genome hypotheses.")
 | 
			
		|||
(define-public r-gviz
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-gviz")
 | 
			
		||||
    (version "1.28.1")
 | 
			
		||||
    (version "1.28.3")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (bioconductor-uri "Gviz" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0chsb3ijwd8zh588s1vqgfassn2rzax5rhqrhl0ini6pi4ilchp2"))))
 | 
			
		||||
         "0347r1ly0vzpilflzbyzsjdf4cday294lw3fxzx61clblrmws1ki"))))
 | 
			
		||||
    (properties `((upstream-name . "Gviz")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2012, 2013, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -63,3 +63,16 @@ deterministic or generalized LR parser from an annotated, context-free
 | 
			
		|||
grammar.  It is versatile enough to have many applications, from parsers for
 | 
			
		||||
simple tools through complex programming languages.")
 | 
			
		||||
    (license gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public bison-3.0
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit bison)
 | 
			
		||||
    (version "3.0.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
      (method url-fetch)
 | 
			
		||||
      (uri (string-append "mirror://gnu/bison/bison-"
 | 
			
		||||
                          version ".tar.xz"))
 | 
			
		||||
      (sha256
 | 
			
		||||
       (base32
 | 
			
		||||
        "0f7kjygrckkx8vas2nm673592jif0a9mw5g8207f6hj6h4pfyp07"))))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
 | 
			
		||||
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
 | 
			
		||||
| 
						 | 
				
			
			@ -262,16 +262,15 @@ maintained upstream.")
 | 
			
		|||
(define-public aria2
 | 
			
		||||
  (package
 | 
			
		||||
    (name "aria2")
 | 
			
		||||
    (version "1.34.0")
 | 
			
		||||
    (version "1.35.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/tatsuhiro-t/aria2/"
 | 
			
		||||
                                  "releases/download/release-" version "/"
 | 
			
		||||
                                  name "-" version ".tar.xz"))
 | 
			
		||||
              (patches (search-patches "aria2-CVE-2019-3500.patch"))
 | 
			
		||||
              (uri (string-append "https://github.com/aria2/aria2/releases/"
 | 
			
		||||
                                  "download/release-" version
 | 
			
		||||
                                  "/aria2-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "18vpgr430vxlwbcc3598rr1srfmwypls6wp1m4wf21hncc1ahi1s"))))
 | 
			
		||||
                "1zbxc517d97lb96f15xcy4l7b66grxrp3h2ids2jiwkaip87yaqy"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:configure-flags (list "--enable-libaria2"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -357,7 +357,7 @@ menu to select one of the installed operating systems.")
 | 
			
		|||
(define-public dtc
 | 
			
		||||
  (package
 | 
			
		||||
    (name "dtc")
 | 
			
		||||
    (version "1.5.0")
 | 
			
		||||
    (version "1.5.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -365,7 +365,7 @@ menu to select one of the installed operating systems.")
 | 
			
		|||
                    "dtc-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0wh10p42hf5403ipvs0dsxddb6kzfyk2sq4fgid9zqzpr51y8wn6"))))
 | 
			
		||||
                "07q3mdsvl4smbiakriq3hnsyyd0q344lsm306q0kgz4hjq1p82v6"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
| 
						 | 
				
			
			@ -379,6 +379,11 @@ menu to select one of the installed operating systems.")
 | 
			
		|||
    (arguments
 | 
			
		||||
     `(#:make-flags
 | 
			
		||||
       (list "CC=gcc"
 | 
			
		||||
 | 
			
		||||
             ;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
 | 
			
		||||
             (string-append "LDFLAGS=-Wl,-rpath="
 | 
			
		||||
                            (assoc-ref %outputs "out") "/lib")
 | 
			
		||||
 | 
			
		||||
             (string-append "PREFIX=" (assoc-ref %outputs "out"))
 | 
			
		||||
             (string-append "SETUP_PREFIX=" (assoc-ref %outputs "out"))
 | 
			
		||||
             "INSTALL=install")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -47,8 +47,8 @@
 | 
			
		|||
  #:use-module (guix build-system gnu))
 | 
			
		||||
 | 
			
		||||
(define-public cuirass
 | 
			
		||||
  (let ((commit "1cd2f9334dde13542732c22753c4ebde61bc95e0")
 | 
			
		||||
        (revision "23"))
 | 
			
		||||
  (let ((commit "d27ff21e430cd38b02bd70a0dc8d60c9c2736f83")
 | 
			
		||||
        (revision "24"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "cuirass")
 | 
			
		||||
      (version (string-append "0.0.1-" revision "." (string-take commit 7)))
 | 
			
		||||
| 
						 | 
				
			
			@ -60,7 +60,7 @@
 | 
			
		|||
                (file-name (string-append name "-" version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "0r3x8gv0v89brjqi8r31p6c0mblbaf2kdk2fz99jiab4pir16w87"))))
 | 
			
		||||
                  "166xl9zfy7dm645fk2ln45bvw0y0gy0xw8fb7mprbjz8v95dh27p"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      (arguments
 | 
			
		||||
       '(#:modules ((guix build utils)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -35,7 +35,7 @@
 | 
			
		|||
(define-public keepalived
 | 
			
		||||
  (package
 | 
			
		||||
    (name "keepalived")
 | 
			
		||||
    (version "2.0.5")
 | 
			
		||||
    (version "2.0.18")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +43,7 @@
 | 
			
		|||
                    version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "021a7c1lq4aqx7dbwhlm5km6w039hapfzp5hf6wb5bfq79s25g38"))))
 | 
			
		||||
                "1l2g0bzzbah9svfpwa0b9dgvwfv85r2y3qdr54822hg5p2qs48ql"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -52,7 +52,7 @@
 | 
			
		|||
           (lambda _
 | 
			
		||||
             (invoke "make" "-C" "doc" "texinfo")
 | 
			
		||||
             ;; Put images in a subdirectory as recommended by 'texinfo'.
 | 
			
		||||
             (install-file "doc/build/texinfo/software_design.png"
 | 
			
		||||
             (install-file "doc/source/images/software_design.png"
 | 
			
		||||
                           "doc/build/texinfo/keepalived-figures")
 | 
			
		||||
             (substitute* "doc/build/texinfo/keepalived.texi"
 | 
			
		||||
               (("@image\\{software_design,")
 | 
			
		||||
| 
						 | 
				
			
			@ -63,7 +63,7 @@
 | 
			
		|||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (infodir (string-append out "/share/info")))
 | 
			
		||||
               (install-file "doc/build/texinfo/keepalived.info" infodir)
 | 
			
		||||
               (install-file "doc/build/texinfo/software_design.png"
 | 
			
		||||
               (install-file "doc/source/images/software_design.png"
 | 
			
		||||
                             (string-append infodir "/keepalived-figures"))
 | 
			
		||||
               #t))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -74,7 +74,7 @@
 | 
			
		|||
     `(("openssl" ,openssl)
 | 
			
		||||
       ("libnfnetlink" ,libnfnetlink)
 | 
			
		||||
       ("libnl" ,libnl)))
 | 
			
		||||
    (home-page "http://www.keepalived.org/")
 | 
			
		||||
    (home-page "https://www.keepalived.org/")
 | 
			
		||||
    (synopsis "Load balancing and high-availability frameworks")
 | 
			
		||||
    (description
 | 
			
		||||
     "Keepalived provides frameworks for both load balancing and high
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -22,7 +22,7 @@
 | 
			
		|||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
 | 
			
		||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
 | 
			
		||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
| 
						 | 
				
			
			@ -48,6 +48,7 @@
 | 
			
		|||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix build-system cmake)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system trivial)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages assembly)
 | 
			
		||||
  #:use-module (gnu packages autotools)
 | 
			
		||||
| 
						 | 
				
			
			@ -2048,3 +2049,50 @@ external compressors: the compressor to be used for each format is configurable
 | 
			
		|||
at run time, and must be installed separately.")
 | 
			
		||||
    (license (list license:bsd-2        ; arg_parser.{cc,h}
 | 
			
		||||
                   license:gpl2+))))    ; the rest
 | 
			
		||||
 | 
			
		||||
(define-public makeself-safeextract
 | 
			
		||||
  (let ((commit "1a95e121fa8e3c02d307ae37b9b7834e616c3683"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "makeself-safeextract")
 | 
			
		||||
      (version (git-version "0.0.0" "1" commit))
 | 
			
		||||
      (home-page "https://github.com/ssokolow/makeself_safeextract")
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference
 | 
			
		||||
               (url home-page)
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "1anlinaj9lvfi8bn00wp11vzqq0f9sig4fm9yrspisx31v0z4a2c"))))
 | 
			
		||||
      (build-system trivial-build-system)
 | 
			
		||||
      (inputs
 | 
			
		||||
       `(("python" ,python-2)
 | 
			
		||||
         ("p7zip" ,p7zip)
 | 
			
		||||
         ("unzip" ,unzip)))
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:modules ((guix build utils))
 | 
			
		||||
         #:builder
 | 
			
		||||
         (begin
 | 
			
		||||
           (use-modules (guix build utils))
 | 
			
		||||
           (let* ((name "makeself_safeextract")
 | 
			
		||||
                  (source (string-append (assoc-ref %build-inputs "source")
 | 
			
		||||
                                         "/" name ".py"))
 | 
			
		||||
                  (bin (string-append (assoc-ref %outputs "out") "/bin"))
 | 
			
		||||
                  (target (string-append bin "/" name))
 | 
			
		||||
                  (python (string-append (assoc-ref %build-inputs "python") "/bin"))
 | 
			
		||||
                  (7z (string-append (assoc-ref %build-inputs "p7zip") "/bin/7z"))
 | 
			
		||||
                  (unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip")))
 | 
			
		||||
             (setenv "PATH" (string-append (getenv "PATH") ":" python))
 | 
			
		||||
             (mkdir-p bin)
 | 
			
		||||
             (copy-file source target)
 | 
			
		||||
             (substitute* target
 | 
			
		||||
               (("'7z'") (format #f "'~a'" 7z))
 | 
			
		||||
               (("'unzip'") (format #f "'~a'" unzip)))
 | 
			
		||||
             (patch-shebang target)))))
 | 
			
		||||
      (synopsis "Extract makeself and mojo archives without running untrusted code")
 | 
			
		||||
      (description "This package provides a script to unpack self-extracting
 | 
			
		||||
archives generated by @command{makeself} or @command{mojo} without running the
 | 
			
		||||
possibly untrusted extraction shell script.")
 | 
			
		||||
      (license license:gpl3+))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,6 +2,7 @@
 | 
			
		|||
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;; Copyright © 2019 Vasile Dumitrascu <va511e@yahoo.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -31,6 +32,7 @@
 | 
			
		|||
  #:use-module (gnu packages lua)
 | 
			
		||||
  #:use-module (gnu packages ncurses)
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages pulseaudio)
 | 
			
		||||
  #:use-module (gnu packages xorg))
 | 
			
		||||
 | 
			
		||||
(define-public conky
 | 
			
		||||
| 
						 | 
				
			
			@ -51,7 +53,8 @@
 | 
			
		|||
    (arguments
 | 
			
		||||
     `(#:tests? #f                      ; there are no tests
 | 
			
		||||
       #:configure-flags
 | 
			
		||||
       (list "-DRELEASE=true")
 | 
			
		||||
       (list "-DRELEASE=true"
 | 
			
		||||
             "-DBUILD_PULSEAUDIO=ON")
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'add-freetype-to-search-path
 | 
			
		||||
| 
						 | 
				
			
			@ -76,6 +79,7 @@
 | 
			
		|||
       ("libxext" ,libxext)
 | 
			
		||||
       ("libxft" ,libxft)
 | 
			
		||||
       ("libxinerama" ,libxinerama)
 | 
			
		||||
       ("pulseaudio", pulseaudio)
 | 
			
		||||
       ("lua" ,lua)
 | 
			
		||||
       ("ncurses" ,ncurses)
 | 
			
		||||
       ("curl" ,curl)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,6 +3,7 @@
 | 
			
		|||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 | 
			
		||||
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -33,7 +34,8 @@
 | 
			
		|||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages llvm)
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages tls))
 | 
			
		||||
  #:use-module (gnu packages tls)
 | 
			
		||||
  #:use-module (gnu packages web))
 | 
			
		||||
 | 
			
		||||
(define-public libzen
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			@ -246,7 +248,7 @@ intuitive syntax and trivial integration.")
 | 
			
		|||
(define-public xtl
 | 
			
		||||
  (package
 | 
			
		||||
    (name "xtl")
 | 
			
		||||
    (version "0.6.4")
 | 
			
		||||
    (version "0.6.7")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri
 | 
			
		||||
| 
						 | 
				
			
			@ -255,7 +257,7 @@ intuitive syntax and trivial integration.")
 | 
			
		|||
                (commit version)))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0rwdw43fq7c581m6frzsd06h71sf7abk7danwa3cp6wd6cgkwdbk"))
 | 
			
		||||
                "0dds2fzyis42b1c3biqr3ir9l96csyyfkwrkm3fqjksdhgdklzmj"))
 | 
			
		||||
              (file-name (git-file-name name version))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("googletest" ,googletest)
 | 
			
		||||
| 
						 | 
				
			
			@ -276,3 +278,34 @@ intuitive syntax and trivial integration.")
 | 
			
		|||
    (description "xtl is a C++ header-only template library providing basic
 | 
			
		||||
tools (containers, algorithms) used by other QuantStack packages.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
 | 
			
		||||
(define-public ccls
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ccls")
 | 
			
		||||
    (version "0.20190823.3")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/MaskRay/ccls")
 | 
			
		||||
             (commit version)))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1sx31zp6q2qc6fz3r78rx34zp2x4blrqzxwbpww71vb6lp1clmdm"))
 | 
			
		||||
       (file-name (git-file-name name version))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f)) ; no check target.
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("rapidjson" ,rapidjson)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("clang" ,clang)
 | 
			
		||||
       ("llvm" ,llvm)))
 | 
			
		||||
    (home-page "https://github.com/MaskRay/ccls")
 | 
			
		||||
    (synopsis "C/C++/Objective-C language server")
 | 
			
		||||
    (description
 | 
			
		||||
     "@code{ccls} is a server implementing the Language Server Protocol (LSP)
 | 
			
		||||
for C, C++ and Objective-C languages.  It uses @code{clang} to perform static
 | 
			
		||||
code analysis and supports cross references, hierarchies, completion and
 | 
			
		||||
syntax highlighting.  @code{ccls} is derived from @code{cquery} which is not
 | 
			
		||||
maintained anymore.")
 | 
			
		||||
    (license license:asl2.0)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;; Copyright © 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
 | 
			
		||||
;;; Copyright © 2017, 2018 Roel Janssen <roel@gnu.org>
 | 
			
		||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 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>
 | 
			
		||||
| 
						 | 
				
			
			@ -98,14 +98,14 @@ the system clipboards.")
 | 
			
		|||
(define-public r-ellipsis
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-ellipsis")
 | 
			
		||||
    (version "0.2.0.1")
 | 
			
		||||
    (version "0.3.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "ellipsis" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0hx9l043433bwm1np9sypph77c7y9dddpz0wrhbkcv01x32jhr8f"))))
 | 
			
		||||
         "01z9gq311nzwv3a0sa49jhm5ylqd59srip4vjkrf23hzgb5i9y0b"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-rlang" ,r-rlang)))
 | 
			
		||||
| 
						 | 
				
			
			@ -371,14 +371,14 @@ such as copy/paste from an R session.")
 | 
			
		|||
(define-public r-callr
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-callr")
 | 
			
		||||
    (version "3.3.1")
 | 
			
		||||
    (version "3.3.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "callr" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0rvrlg86fxr5nadvqa0dr1iifqjs4d1rc32v76m3ccvx6m3xlq5z"))))
 | 
			
		||||
         "12dbqzjngbyaqdyw0yq1blyfx8pagcvx1vqj2jm451hs25nhdrnh"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-r6" ,r-r6)
 | 
			
		||||
| 
						 | 
				
			
			@ -525,31 +525,18 @@ directory.")
 | 
			
		|||
(define-public r-htmltools
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-htmltools")
 | 
			
		||||
    (version "0.3.6")
 | 
			
		||||
    (version "0.4.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (cran-uri "htmltools" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "18k8r1s8sz1jy7dkz35n69wj20xhmllr53xmwb4pdzf2z61gpbs4"))))
 | 
			
		||||
                "06l17d8jkf438yk2mchpsp4j90bynnapz3nabh5vkcc324p5a62v"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         ;; See https://github.com/rstudio/htmltools/pull/68
 | 
			
		||||
         ;; The resource files are in the store and have mode 444.  After
 | 
			
		||||
         ;; copying the files R fails to remove them again because it doesn't
 | 
			
		||||
         ;; have write access to them.
 | 
			
		||||
         (add-after 'unpack 'copy-files-without-mode
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "R/html_dependency.R"
 | 
			
		||||
               (("file.copy\\(from, to, " prefix)
 | 
			
		||||
                (string-append prefix
 | 
			
		||||
                               "copy.mode = FALSE, ")))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-digest" ,r-digest)
 | 
			
		||||
       ("r-rcpp" ,r-rcpp)))
 | 
			
		||||
       ("r-rcpp" ,r-rcpp)
 | 
			
		||||
       ("r-rlang" ,r-rlang)))
 | 
			
		||||
    (home-page "https://cran.r-project.org/web/packages/htmltools")
 | 
			
		||||
    (synopsis "R tools for HTML")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			@ -559,13 +546,13 @@ directory.")
 | 
			
		|||
(define-public r-htmlwidgets
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-htmlwidgets")
 | 
			
		||||
    (version "1.3")
 | 
			
		||||
    (version "1.5")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (cran-uri "htmlwidgets" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "04jsdh14l2zifbjpbbh23w7bxz1wpsas0zb2gy2zwv4yqamzzr7i"))))
 | 
			
		||||
                "1h2sj5h9vcssb73nz63gmw5bajs73m9q807fsypvr621gb1s124i"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-htmltools" ,r-htmltools)
 | 
			
		||||
| 
						 | 
				
			
			@ -582,14 +569,14 @@ applications.")
 | 
			
		|||
(define-public r-htmltable
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-htmltable")
 | 
			
		||||
    (version "1.13.1")
 | 
			
		||||
    (version "1.13.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "htmlTable" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1l44b33xgj2698k6nz17r8fl0ink14ryzng803apm9d6bnv357v8"))))
 | 
			
		||||
         "0h6jslchlx1dzqqdb70c3n9xlapcym9ykycvr0hc4q3450y8qmvh"))))
 | 
			
		||||
    (properties `((upstream-name . "htmlTable")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -615,13 +602,13 @@ LaTeX.")
 | 
			
		|||
(define-public r-curl
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-curl")
 | 
			
		||||
    (version "4.0")
 | 
			
		||||
    (version "4.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (cran-uri "curl" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0wb1j87fa2nd4a9x1w2nmc453nzvx6qiq8dviwc4jr36hsf9ra89"))))
 | 
			
		||||
                "0xh227gvb056wlipjxxbf555z1i1qcs7rr1igvs6k6645y9irrlp"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -1492,14 +1479,13 @@ error stream.")
 | 
			
		|||
(define-public r-pls
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-pls")
 | 
			
		||||
    (version "2.7-1")
 | 
			
		||||
    (version "2.7-2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "pls" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0jw3zl5z06023zxr74phnvwax8m3i4a4i6lsqiq6j15aq9zq3zgq"))))
 | 
			
		||||
        (base32 "121byimd6bg7jbrq5wz5fpi0vxq0vh8g724vkhnjzszbvcv1xsb7"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (home-page "http://mevik.net/work/software/pls.html")
 | 
			
		||||
    (synopsis "Partial Least Squares and Principal Component Regression")
 | 
			
		||||
| 
						 | 
				
			
			@ -1693,14 +1679,13 @@ is provided.")
 | 
			
		|||
(define-public r-calibrate
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-calibrate")
 | 
			
		||||
    (version "1.7.2")
 | 
			
		||||
    (version "1.7.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "calibrate" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "010nb1nb9y7zhw2k6d2i2drwy5brp7b83mjj2w7i3wjp9xb6l1kq"))))
 | 
			
		||||
        (base32 "1s423nr176l2sc66wp7hzgqkv7c2bq8d2bjrrvrrm5qa9y3zdx1k"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-mass" ,r-mass)))
 | 
			
		||||
| 
						 | 
				
			
			@ -1733,14 +1718,13 @@ ellipses, circles, cylinders, arrows, ...")
 | 
			
		|||
(define-public r-globaloptions
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-globaloptions")
 | 
			
		||||
    (version "0.1.0")
 | 
			
		||||
    (version "0.1.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "GlobalOptions" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1wlyqz1yhmhjwslrd7q69jbd9vsbjkjfc01g60kl3cdpyr8hlyjn"))))
 | 
			
		||||
        (base32 "0x89hfz80avq4zcskxl71i4zi0mgniqqxfrvz050aa2189wfyja2"))))
 | 
			
		||||
    (properties `((upstream-name . "GlobalOptions")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (home-page "https://github.com/jokergoo/GlobalOptions")
 | 
			
		||||
| 
						 | 
				
			
			@ -2996,14 +2980,14 @@ provides a one-row summary of model-level statistics.")
 | 
			
		|||
(define-public r-recipes
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-recipes")
 | 
			
		||||
    (version "0.1.6")
 | 
			
		||||
    (version "0.1.7")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "recipes" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1ndz9h0zvdj141r63l8047wbhaj0x8fwzzyq7b8mh78pvrrdpq2i"))))
 | 
			
		||||
         "1gw8x7vqj7k18mfpiqinyfwzv9i5r0pb51k7xcfxsjap6m9nks98"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-dplyr" ,r-dplyr)
 | 
			
		||||
| 
						 | 
				
			
			@ -3903,14 +3887,13 @@ iVAT).")
 | 
			
		|||
(define-public r-xfun
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-xfun")
 | 
			
		||||
    (version "0.9")
 | 
			
		||||
    (version "0.10")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "xfun" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1c3wmy6s4ck821mwl7i2g8cxd31g30llbpivbgq21g1rxs4zwlyl"))))
 | 
			
		||||
        (base32 "065ygh046ah43p5aqyrkv2vkxcnvnb4j7blfdygysg6hmqzp4pbv"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (home-page "https://github.com/yihui/xfun")
 | 
			
		||||
    (synopsis "Miscellaneous functions")
 | 
			
		||||
| 
						 | 
				
			
			@ -4048,14 +4031,14 @@ terminals.")
 | 
			
		|||
(define-public r-tinytex
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-tinytex")
 | 
			
		||||
    (version "0.15")
 | 
			
		||||
    (version "0.16")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "tinytex" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "145dmgq7h55mmqqlnnj153j484x2a9s1fbvjbjkdyqzpnz9qh2ax"))))
 | 
			
		||||
         "1dadq9l0527v038b1k1dyfs0dklsgxnmplls3qhqprfgskif8mga"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-xfun" ,r-xfun)))
 | 
			
		||||
| 
						 | 
				
			
			@ -4166,21 +4149,20 @@ generation, and 2D/3D network visualization.")
 | 
			
		|||
(define-public r-ttr
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-ttr")
 | 
			
		||||
    (version "0.23-4")
 | 
			
		||||
    (version "0.23-5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "TTR" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "18mzyv6cmxmqyqsfwlx2b2k055887mfgc2jgj8xkn8c6m56n05zb"))))
 | 
			
		||||
         "0fxipnyxaz55n4camrk9cs71x9w4dsmjrihysv8i1s6khf825rg6"))))
 | 
			
		||||
    (properties `((upstream-name . "TTR")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-curl" ,r-curl)
 | 
			
		||||
       ("r-xts" ,r-xts)
 | 
			
		||||
       ("r-zoo" ,r-zoo)))
 | 
			
		||||
    (native-inputs `(("gfortran" ,gfortran)))
 | 
			
		||||
    (home-page "https://github.com/joshuaulrich/TTR")
 | 
			
		||||
    (synopsis "Technical trading rules")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			@ -4753,14 +4735,14 @@ files.")
 | 
			
		|||
(define-public r-shinyace
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-shinyace")
 | 
			
		||||
    (version "0.4.0")
 | 
			
		||||
    (version "0.4.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "shinyAce" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0hvih5g0pswlnz5rf3blx5yqw11ssxvm8w4klxddp1ap20ncbgl1"))))
 | 
			
		||||
         "1m33dfm2kjirvgix7ybv1kbzgjkicdpv411g9c0q3fw6rnyhfxxn"))))
 | 
			
		||||
    (properties `((upstream-name . "shinyAce")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -5344,14 +5326,14 @@ simple method for converting between file types.")
 | 
			
		|||
(define-public r-maptools
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-maptools")
 | 
			
		||||
    (version "0.9-5")
 | 
			
		||||
    (version "0.9-8")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "maptools" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1pbvcn9xfx0hxq1ppbfg9xm5j04q4c15nj983yjmg7dlkzq135ax"))))
 | 
			
		||||
         "1ix3cg74w0w6cj8nwi0r9n3y5q9ljc21hm8xq6yqqngs57prvn2x"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-foreign" ,r-foreign)
 | 
			
		||||
| 
						 | 
				
			
			@ -5372,14 +5354,14 @@ exchanging spatial objects with other R packages.")
 | 
			
		|||
(define-public r-later
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-later")
 | 
			
		||||
    (version "0.8.0")
 | 
			
		||||
    (version "1.0.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "later" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "08g503xjxrfxvrzj0cavsrz4m8ykbha64344j1w2r6v17js2hakb"))))
 | 
			
		||||
         "11xjavj7siz0xv2ffq1ld4bwl35jyrcfpvvs4p3ilpifxx49hyr7"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-bh" ,r-bh)
 | 
			
		||||
| 
						 | 
				
			
			@ -5395,14 +5377,14 @@ time after the current time, after the R execution stack has emptied.")
 | 
			
		|||
(define-public r-promises
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-promises")
 | 
			
		||||
    (version "1.0.1")
 | 
			
		||||
    (version "1.1.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "promises" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0n2mlv6bvfb4yhgcml696l9vkbw21pz0smqylivr606z99rwgny2"))))
 | 
			
		||||
         "01l0ydjvvy6afcg5d6pzvk1ikd3djq8n2flv8c831ksn68z0zsn8"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-later" ,r-later)
 | 
			
		||||
| 
						 | 
				
			
			@ -5865,14 +5847,14 @@ results to the user.")
 | 
			
		|||
(define-public r-hdf5r
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-hdf5r")
 | 
			
		||||
    (version "1.2.0")
 | 
			
		||||
    (version "1.3.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "hdf5r" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "10gynjwaaxks8y9c2fl8k040j0nbwn372nil70009yfk9wrkx0aq"))))
 | 
			
		||||
         "1pq12vkfqxvcaznwaxvjdg3acimk5a20m8h18sixvxc34vnqxw8f"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("hdf5" ,hdf5)
 | 
			
		||||
| 
						 | 
				
			
			@ -6250,14 +6232,14 @@ vice versa), or to deal with multiple declared missing values.")
 | 
			
		|||
(define-public r-sjmisc
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-sjmisc")
 | 
			
		||||
    (version "2.8.1")
 | 
			
		||||
    (version "2.8.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "sjmisc" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1a30n3cyd9h9ilaiai9ywy53f03nikafc47rvpws2c2vghc8mbn7"))))
 | 
			
		||||
         "0rl0bmk91wc4dxdgy008fl0dwkx3ffvys30vgpnr78lb4pk45nb2"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-dplyr" ,r-dplyr)
 | 
			
		||||
| 
						 | 
				
			
			@ -6265,7 +6247,8 @@ vice versa), or to deal with multiple declared missing values.")
 | 
			
		|||
       ("r-magrittr" ,r-magrittr)
 | 
			
		||||
       ("r-purrr" ,r-purrr)
 | 
			
		||||
       ("r-rlang" ,r-rlang)
 | 
			
		||||
       ("r-sjlabelled" ,r-sjlabelled)))
 | 
			
		||||
       ("r-sjlabelled" ,r-sjlabelled)
 | 
			
		||||
       ("r-tidyselect" ,r-tidyselect)))
 | 
			
		||||
    (home-page "https://github.com/strengejacke/sjmisc")
 | 
			
		||||
    (synopsis "Data and variable transformation functions")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			@ -7025,14 +7008,14 @@ used to teach mathematics, statistics, computation and modeling.")
 | 
			
		|||
(define-public r-raster
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-raster")
 | 
			
		||||
    (version "3.0-2")
 | 
			
		||||
    (version "3.0-7")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "raster" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0z4qh3ag1iyly4zjvzi3x2namkndkqn3cjb3ac22xd11sq5gdgiz"))))
 | 
			
		||||
         "0faxv71hlxkblvbi3ps1vfzm3wwi0brwzmpsr5114bddcqyiqkvn"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-rcpp" ,r-rcpp)
 | 
			
		||||
| 
						 | 
				
			
			@ -8215,14 +8198,14 @@ differentiation.")
 | 
			
		|||
(define-public r-bayestestr
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-bayestestr")
 | 
			
		||||
    (version "0.2.5")
 | 
			
		||||
    (version "0.3.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "bayestestR" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "08d3bsb6li59n17bx1zrqnlnvniyb3vls9kl856km4chx3b2ff82"))))
 | 
			
		||||
         "0r453zb106hj9w53jjgckxqajjf7shlrgv10gjxsv8if6qybdz5b"))))
 | 
			
		||||
    (properties `((upstream-name . "bayestestR")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -8301,14 +8284,13 @@ results using @code{ggplot2}.")
 | 
			
		|||
(define-public r-sjplot
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-sjplot")
 | 
			
		||||
    (version "2.7.1")
 | 
			
		||||
    (version "2.7.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "sjPlot" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "14shypabpahf68hd66rb1dpqhiyl3i0yx1yc85wamdvljh9fdymb"))))
 | 
			
		||||
        (base32 "1kx1qqgp4fhwwwpqn9mv8m1pnpjxfs7ww36ns7j1ja4a7ydwn2hp"))))
 | 
			
		||||
    (properties `((upstream-name . "sjPlot")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -8916,14 +8898,14 @@ address a bug.")
 | 
			
		|||
(define-public r-rcppannoy
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rcppannoy")
 | 
			
		||||
    (version "0.0.12")
 | 
			
		||||
    (version "0.0.13")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "RcppAnnoy" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1b0fmip9c4i0my1yjrvqy8jxfiiqcggq2kms135q0b53njxnqwwg"))))
 | 
			
		||||
         "1jibp9b07c5ka1kif0nl7f168hxfvysj32wnmnxg85l663hmvm8j"))))
 | 
			
		||||
    (properties `((upstream-name . "RcppAnnoy")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -8943,14 +8925,14 @@ This package provides an R interface.")
 | 
			
		|||
(define-public r-rcpphnsw
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rcpphnsw")
 | 
			
		||||
    (version "0.1.0")
 | 
			
		||||
    (version "0.2.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "RcppHNSW" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "158a069n42pbnjrlmvqsr6bm2cfp9hxpnk3nhp3dwi9qjlq4r9bm"))))
 | 
			
		||||
         "0gqdkw7vkcm544rz45g0hplg836ygzbfwk9gh9wr0817icvdb3qv"))))
 | 
			
		||||
    (properties `((upstream-name . "RcppHNSW")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs `(("r-rcpp" ,r-rcpp)))
 | 
			
		||||
| 
						 | 
				
			
			@ -8965,14 +8947,14 @@ package provides a minimal R interface by relying on the Rcpp package.")
 | 
			
		|||
(define-public r-rcppparallel
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rcppparallel")
 | 
			
		||||
    (version "4.4.3")
 | 
			
		||||
    (version "4.4.4")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "RcppParallel" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1ym0bzs9g6bsg2lz24fisxxa3gypr6xcvrczn304czmrrag9413s"))))
 | 
			
		||||
         "0p13f2mywjr7gmskf8ri4y8p5yr1bvr4xrpw2w11vdvafwz1vcia"))))
 | 
			
		||||
    (properties `((upstream-name . "RcppParallel")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (home-page "http://rcppcore.github.io/RcppParallel")
 | 
			
		||||
| 
						 | 
				
			
			@ -9550,14 +9532,14 @@ maps.")
 | 
			
		|||
(define-public r-tidytree
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-tidytree")
 | 
			
		||||
    (version "0.2.7")
 | 
			
		||||
    (version "0.2.8")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "tidytree" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "15ky7hj7w08jx94wm0yikckca0apwv3jy5svd77dpzgb2lr9ff9a"))))
 | 
			
		||||
         "1hkddl8kj1g01dy7xiracx81f6b405b3ga2qp4wlrl552b9xxpby"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-ape" ,r-ape)
 | 
			
		||||
| 
						 | 
				
			
			@ -9578,17 +9560,17 @@ manipulate tree data.")
 | 
			
		|||
(define-public r-rvcheck
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rvcheck")
 | 
			
		||||
    (version "0.1.3")
 | 
			
		||||
    (version "0.1.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "rvcheck" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1i2g6gyiqyd1pn6y0h6vmlcmg1qb5pv7rym8mkw8jnyc3in9hn8b"))))
 | 
			
		||||
        (base32 "15222q3sglq0mad5q806p99fhrb96qizmpqw35fa1rb148f95paf"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-rlang" ,r-rlang)))
 | 
			
		||||
     `(("r-biocmanager" ,r-biocmanager)
 | 
			
		||||
       ("r-rlang" ,r-rlang)))
 | 
			
		||||
    (home-page "https://cran.r-project.org/web/packages/rvcheck")
 | 
			
		||||
    (synopsis "R package version check")
 | 
			
		||||
    (description
 | 
			
		||||
| 
						 | 
				
			
			@ -10322,14 +10304,14 @@ and manipulating sets of ontological terms.")
 | 
			
		|||
(define-public r-gargle
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-gargle")
 | 
			
		||||
    (version "0.3.1")
 | 
			
		||||
    (version "0.4.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "gargle" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0vqgp4w03sdyj0q96gxkybqflzzbaw84zifsbi7pxk5y08fimj2v"))))
 | 
			
		||||
         "08zhfk2sl342w35i5n2c93ayypg3z0kbl0020l3y9adqka1vazgx"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-fs" ,r-fs)
 | 
			
		||||
| 
						 | 
				
			
			@ -11804,14 +11786,13 @@ such software by imputing dropout events.")
 | 
			
		|||
(define-public r-gamlss-dist
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-gamlss-dist")
 | 
			
		||||
    (version "5.1-4")
 | 
			
		||||
    (version "5.1-5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "gamlss.dist" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0zi87lgigr83l35zqq1y1g4cdq6ssjamripzz7yis74aznh6qg1l"))))
 | 
			
		||||
        (base32 "1rl7hzdg5xpvaq3yyzwxhsaqzzs0qidi3ibv454fisijgv8l4vqw"))))
 | 
			
		||||
    (properties `((upstream-name . "gamlss.dist")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs `(("r-mass" ,r-mass)))
 | 
			
		||||
| 
						 | 
				
			
			@ -12502,14 +12483,13 @@ extensions.")
 | 
			
		|||
(define-public r-wgaim
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-wgaim")
 | 
			
		||||
    (version "2.0-0")
 | 
			
		||||
    (version "2.0-1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "wgaim" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0wnb10vibgq8h1ly6lq8kzymf30vx0j0g8fc2zidblbvwag9ka1g"))))
 | 
			
		||||
        (base32 "1qiyfkpsbzjr9xsq5kqq6rlqpndngkn2irdfh3gyi45h6hn118j4"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-ggplot2" ,r-ggplot2)
 | 
			
		||||
| 
						 | 
				
			
			@ -12772,14 +12752,14 @@ univariate class intervals for mapping or other graphics purposes.")
 | 
			
		|||
(define-public r-spdata
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-spdata")
 | 
			
		||||
    (version "0.3.0")
 | 
			
		||||
    (version "0.3.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "spData" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "162cqb331ki43jx4r8lpkjpn2l712figd896rnawg9j1jmjyl96y"))))
 | 
			
		||||
         "190msrrpn226x27pcnck4ac34f9k4xcn26cyz2apdri2nzkr6zbw"))))
 | 
			
		||||
    (properties `((upstream-name . "spData")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (home-page "https://github.com/Nowosad/spData")
 | 
			
		||||
| 
						 | 
				
			
			@ -12846,14 +12826,14 @@ tessellation.")
 | 
			
		|||
(define-public r-sf
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-sf")
 | 
			
		||||
    (version "0.7-7")
 | 
			
		||||
    (version "0.8-0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "sf" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "192hw52x1qlif8zyai1kff1wiyr3yl5f7jj1rk3k0nr8das0qy6i"))))
 | 
			
		||||
         "05dyq0vcz2f1fl03hk3v1a4nz4s84yyqw4rc9w9cwfq71gvm9qwf"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("gdal" ,gdal)
 | 
			
		||||
| 
						 | 
				
			
			@ -12880,14 +12860,14 @@ datum transformations.")
 | 
			
		|||
(define-public r-spdep
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-spdep")
 | 
			
		||||
    (version "1.1-2")
 | 
			
		||||
    (version "1.1-3")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "spdep" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "06mk81kc1ml2wjc8wwwgr0wasjcr4mwrxpfa8vfc373bmnha635s"))))
 | 
			
		||||
         "1f8cjffqqc6rnb3n4qym70ca6nz2kvrsd3g587wrqdr79nnbwnrk"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-boot" ,r-boot)
 | 
			
		||||
| 
						 | 
				
			
			@ -12954,14 +12934,13 @@ also provided to illustrate various methods.")
 | 
			
		|||
(define-public r-pegas
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-pegas")
 | 
			
		||||
    (version "0.11")
 | 
			
		||||
    (version "0.12")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "pegas" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0l21bapzbjcvblbvks3jh9rpy9hng1ccd7f0glhqw695lc737bpx"))))
 | 
			
		||||
        (base32 "0sb8cmz4d238mcb56hv9fa0cagm00k82r7aj4cj4lxa1flxlpy8p"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-adegenet" ,r-adegenet)
 | 
			
		||||
| 
						 | 
				
			
			@ -13062,14 +13041,13 @@ either PDF/EPS files.")
 | 
			
		|||
(define-public r-polspline
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-polspline")
 | 
			
		||||
    (version "1.1.15")
 | 
			
		||||
    (version "1.1.16")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "polspline" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "19zs4kpagsrzhng1byjbz1c4jxnfk58h4rgr096ml1bjwrgamnwc"))))
 | 
			
		||||
        (base32 "0d49h7if8h6d784nsnqqxakg19kvl8cmz8k53901m2h0c0amlfxa"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (native-inputs `(("gfortran" ,gfortran)))
 | 
			
		||||
    (home-page "https://cran.r-project.org/web/packages/polspline/")
 | 
			
		||||
| 
						 | 
				
			
			@ -13319,13 +13297,13 @@ SELECT or UPDATE queries to an end-point.")
 | 
			
		|||
(define-public r-bookdown
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-bookdown")
 | 
			
		||||
    (version "0.13")
 | 
			
		||||
    (version "0.14")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (cran-uri "bookdown" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "15r9scgnq68hmfcfxvjk286hpbr825bib1d2kgh0lv3dgz2i2bg1"))))
 | 
			
		||||
                "1jiq2d292y0l3f4npyfzfpnmb0sqxsl212kkjfbjg5301h0na762"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-htmltools" ,r-htmltools)
 | 
			
		||||
| 
						 | 
				
			
			@ -13343,14 +13321,14 @@ authoring books and technical documents with R Markdown.")
 | 
			
		|||
(define-public r-optparse
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-optparse")
 | 
			
		||||
    (version "1.6.2")
 | 
			
		||||
    (version "1.6.4")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "optparse" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0zrp6jakjhawrwfri270ym83vj5a7nvjk0w6b41z41ahw2da99dm"))))
 | 
			
		||||
         "0wyrc42ja3ab5szx46zmz8lm7vzfqxkjca0m0sms8g9hqbmmay6d"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-getopt" ,r-getopt)))
 | 
			
		||||
| 
						 | 
				
			
			@ -14994,14 +14972,14 @@ in R, including a translation of the original algorithm into R.")
 | 
			
		|||
(define-public r-uwot
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-uwot")
 | 
			
		||||
    (version "0.1.3")
 | 
			
		||||
    (version "0.1.4")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "uwot" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1mq6qi8q9xslh1b99srj480s2a08pfv4bs9m2ykyijj44j9fcdj9"))))
 | 
			
		||||
         "1y9wpzs92d1fl2x5figfywd48lkyhwx37j542z0rf6ckrl46n89n"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-dqrng" ,r-dqrng)
 | 
			
		||||
| 
						 | 
				
			
			@ -15065,14 +15043,13 @@ customize styles using a readable syntax.")
 | 
			
		|||
(define-public r-glasso
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-glasso")
 | 
			
		||||
    (version "1.10")
 | 
			
		||||
    (version "1.11")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "glasso" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0nshpx14v2yny7lr8ll6nnz71n0f02sddh2c2dglfprbk89p9yp6"))))
 | 
			
		||||
        (base32 "02p3612rpydk195n2qr77lp1j2w8zsw1ckkk98c8angm4r5q8dsc"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (native-inputs `(("gfortran" ,gfortran)))
 | 
			
		||||
    (home-page "http://www-stat.stanford.edu/~tibs/glasso")
 | 
			
		||||
| 
						 | 
				
			
			@ -15502,14 +15479,14 @@ in pipelines.")
 | 
			
		|||
(define-public r-parameters
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-parameters")
 | 
			
		||||
    (version "0.1.0")
 | 
			
		||||
    (version "0.2.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "parameters" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "12v301va1l3xydicbf0k04anxlmyjclbbjfg0riprryhkxwwk8g5"))))
 | 
			
		||||
         "1mgggb3l67wgjiccq4y84wbs2dw9qk01akd553yiwbwky9rpawgh"))))
 | 
			
		||||
    (properties `((upstream-name . "parameters")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -15529,14 +15506,13 @@ effect size.")
 | 
			
		|||
(define-public r-rgdal
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-rgdal")
 | 
			
		||||
    (version "1.4-4")
 | 
			
		||||
    (version "1.4-6")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "rgdal" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1my56hdc9x40ynxx1qwqwqxjvjxybmm00w4xg5gi8zgj19pffci5"))))
 | 
			
		||||
        (base32 "0lj1dax56dxxsj1hindxcvgz169p9dxd0y4wjypbyr01nja8rz4d"))))
 | 
			
		||||
    (properties `((upstream-name . "rgdal")))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -15610,3 +15586,30 @@ deprecated, and defunct).  It makes it easy to insert badges corresponding to
 | 
			
		|||
these stages in your documentation.  Usage of deprecated functions are
 | 
			
		||||
signalled with increasing levels of non-invasive verbosity.")
 | 
			
		||||
    (license license:gpl3)))
 | 
			
		||||
 | 
			
		||||
(define-public r-assertable
 | 
			
		||||
  (package
 | 
			
		||||
    (name "r-assertable")
 | 
			
		||||
    (version "0.2.7")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (cran-uri "assertable" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1npks9rcrnchmd0silq6qrvqkmdkp9fwjkyyvvp1lqjclyxk6vkk"))))
 | 
			
		||||
    (build-system r-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("r-data-table" ,r-data-table)))
 | 
			
		||||
    (home-page "https://cran.r-project.org/web/packages/assertable/")
 | 
			
		||||
    (synopsis "Verbose assertions for tabular data (data.frames and data.tables)")
 | 
			
		||||
    (description "This package provides simple, flexible assertions on
 | 
			
		||||
data.frame or data.table objects with verbose output for vetting.  While other
 | 
			
		||||
assertion packages apply towards more general use-cases, @code{assertable} is
 | 
			
		||||
tailored towards tabular data.  It includes functions to check variable names
 | 
			
		||||
and values, whether the dataset contains all combinations of a given set of
 | 
			
		||||
unique identifiers, and whether it is a certain length.  In addition,
 | 
			
		||||
@code{assertable} includes utility functions to check the existence of target
 | 
			
		||||
files and to efficiently import multiple tabular data files into one
 | 
			
		||||
data.table.")
 | 
			
		||||
    (license license:gpl3)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,6 +3,7 @@
 | 
			
		|||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 | 
			
		||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
 | 
			
		||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -25,11 +26,16 @@
 | 
			
		|||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages curl)
 | 
			
		||||
  #:use-module (gnu packages gcc)
 | 
			
		||||
  #:use-module (gnu packages jemalloc)
 | 
			
		||||
  #:use-module (gnu packages llvm)
 | 
			
		||||
  #:use-module (gnu packages maths)
 | 
			
		||||
  #:use-module (gnu packages pkg-config))
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages ssh)
 | 
			
		||||
  #:use-module (gnu packages tls)
 | 
			
		||||
  #:use-module (gnu packages version-control)
 | 
			
		||||
  #:use-module (gnu packages web))
 | 
			
		||||
 | 
			
		||||
;;;
 | 
			
		||||
;;; Please: Try to add new module packages in alphabetic order.
 | 
			
		||||
| 
						 | 
				
			
			@ -158,6 +164,35 @@ support.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-backtrace-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-backtrace-sys")
 | 
			
		||||
    (version "0.1.31")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "backtrace-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0as2pk77br4br04daywhivpi1ixxb8y2c7f726kj849dxys31a42"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-compiler-builtins"
 | 
			
		||||
         ,rust-compiler-builtins)
 | 
			
		||||
        ("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-rustc-std-workspace-core"
 | 
			
		||||
         ,rust-rustc-std-workspace-core))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc))))
 | 
			
		||||
    (home-page "https://github.com/rust-lang/backtrace-rs")
 | 
			
		||||
    (synopsis "Bindings to the libbacktrace gcc library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides bindings to the libbacktrace gcc library.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-base-x
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-base-x")
 | 
			
		||||
| 
						 | 
				
			
			@ -386,6 +421,35 @@ depending on a large number of #[cfg] parameters.  Structured like an
 | 
			
		|||
     "This package provides Rust bindings for @code{libclang}.")
 | 
			
		||||
    (license license:asl2.0)))
 | 
			
		||||
 | 
			
		||||
(define-public rust-clang-sys-0.26
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-clang-sys)
 | 
			
		||||
    (name "rust-clang-sys")
 | 
			
		||||
    (version "0.26.4")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "clang-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1r50dwy5hj5gq07dn0qf8222d07qv0970ymx0j8n9779yayc3w3f"))))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-glob" ,rust-glob-0.2)
 | 
			
		||||
        ("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-libloading" ,rust-libloading))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-glob" ,rust-glob-0.2))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'set-environmental-variable
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             (let ((clang (assoc-ref inputs "libclang")))
 | 
			
		||||
               (setenv "LIBCLANG_PATH"
 | 
			
		||||
                       (string-append clang "/lib")))
 | 
			
		||||
            #t)))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-clicolors-control
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-clicolors-control")
 | 
			
		||||
| 
						 | 
				
			
			@ -529,6 +593,51 @@ It is inspired by the Linux kernel's @code{crypto_memneq}.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-curl-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-curl-sys")
 | 
			
		||||
    (version "0.4.20")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "curl-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "02542zmvl3fpdqf7ai4cqnamm4albx9j645dkjx5qr1myq8ax42y"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-libnghttp2-sys" ,rust-libnghttp2-sys)
 | 
			
		||||
        ("rust-libz-sys" ,rust-libz-sys)
 | 
			
		||||
        ("rust-openssl-sys" ,rust-openssl-sys)
 | 
			
		||||
        ("rust-winapi" ,rust-winapi))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config)
 | 
			
		||||
        ("rust-openssl-src" ,rust-openssl-src)
 | 
			
		||||
        ("rust-vcpkg" ,rust-vcpkg))
 | 
			
		||||
        #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
        (add-after 'unpack 'find-openssl
 | 
			
		||||
          (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
            (let ((openssl (assoc-ref inputs "openssl")))
 | 
			
		||||
              (setenv "OPENSSL_DIR" openssl))
 | 
			
		||||
            #t)))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("curl" ,curl)
 | 
			
		||||
       ("nghttp2" ,nghttp2)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "https://github.com/alexcrichton/curl-rust")
 | 
			
		||||
    (synopsis "Native bindings to the libcurl library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides native bindings to the @code{libcurl} library.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public rust-data-encoding
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-data-encoding")
 | 
			
		||||
| 
						 | 
				
			
			@ -582,6 +691,33 @@ hexadecimal, bas32, and base64.")
 | 
			
		|||
         (base32
 | 
			
		||||
          "17giv0n0n1r64z0dahfvkjy3ys517jxyhs8sd9lmgvcljpjyryxa"))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-dirs
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-dirs")
 | 
			
		||||
    (version "1.0.3")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "dirs" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "02vigc566z5i6n9wr2x8sch39qp4arn89xhhrh18fhpm3jfc0ygn"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-winapi" ,rust-winapi))))
 | 
			
		||||
    (home-page "https://github.com/soc/dirs-rs")
 | 
			
		||||
    (synopsis "Abstractions for standard locations for various platforms")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides a tiny low-level library that provides
 | 
			
		||||
platform-specific standard locations of directories for config, cache and other
 | 
			
		||||
data on Linux, Windows, macOS and Redox by leveraging the mechanisms defined by
 | 
			
		||||
the XDG base/user directory specifications on Linux, the Known Folder API on
 | 
			
		||||
Windows, and the Standard Directory guidelines on macOS.")
 | 
			
		||||
    (license (list license:expat license:asl2.0))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-discard
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-discard")
 | 
			
		||||
| 
						 | 
				
			
			@ -641,6 +777,20 @@ floating-point primitives to an @code{io::Write}.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-dtoa-0.2
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-dtoa)
 | 
			
		||||
    (name "rust-dtoa")
 | 
			
		||||
    (version "0.2.2")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "dtoa" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0g96cap6si1g6wi62hsdk2fnj3sf5vd4i97zj6163j8hhnsl3n0d"))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-fallible-iterator
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-fallible-iterator")
 | 
			
		||||
| 
						 | 
				
			
			@ -883,6 +1033,28 @@ featuring zero allocations, composability, and iterator-like interfaces.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-futures-core-preview
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-futures-core-preview")
 | 
			
		||||
    (version "0.3.0-alpha.17")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "futures-core-preview" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1xaq8m609k6cz8xydwhwp8xxyxigabcw1w9ngycfy0bnkg7iq52b"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f)) ; The only tests are doc tests, which fail.
 | 
			
		||||
    (home-page "https://rust-lang-nursery.github.io/futures-rs/")
 | 
			
		||||
    (synopsis "Core traits and types in for the @code{futures} library.")
 | 
			
		||||
    (description "This crate provides the core traits and types in for the
 | 
			
		||||
@code{futures} library.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-futures-cpupool
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-futures-cpupool")
 | 
			
		||||
| 
						 | 
				
			
			@ -928,6 +1100,30 @@ the computation on the threads themselves.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-futures-sink-preview
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-futures-sink-preview")
 | 
			
		||||
    (version "0.3.0-alpha.17")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "futures-sink-preview" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1r4d0gy73hdxkh5g1lrhl1kjnwp6mywjgcj70v0z78b921da42a3"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-futures-core-preview" ,rust-futures-core-preview))))
 | 
			
		||||
    (home-page "https://rust-lang-nursery.github.io/futures-rs/")
 | 
			
		||||
    (synopsis  "Asynchronous `Sink` trait for the futures-rs library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides the asynchronous @code{Sink} trait for the
 | 
			
		||||
futures-rs library.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-gcc
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-cc)
 | 
			
		||||
| 
						 | 
				
			
			@ -1208,6 +1404,20 @@ primitives to an @code{io::Write}.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-itoa-0.1
 | 
			
		||||
 (package
 | 
			
		||||
   (inherit rust-itoa)
 | 
			
		||||
   (name "rust-itoa")
 | 
			
		||||
   (version "0.1.1")
 | 
			
		||||
   (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (crate-uri "itoa" version))
 | 
			
		||||
       (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "18g7p2hrb3dk84z3frfgmszfc9hjb4ps9vp99qlb1kmf9gm8hc5f"))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-jemalloc-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-jemalloc-sys")
 | 
			
		||||
| 
						 | 
				
			
			@ -1379,6 +1589,79 @@ the platform that libc is compiled for.")
 | 
			
		|||
    (license (list license:expat
 | 
			
		||||
                   license:asl2.0))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libgit2-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-libgit2-sys")
 | 
			
		||||
    (version "0.8.2")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "libgit2-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0y2mibmx7wy91s2kmb2gfb29mrqlqaxpy5wcwr8s1lwws7b9w5sc")) ))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-libssh2-sys" ,rust-libssh2-sys)
 | 
			
		||||
        ("rust-libz-sys" ,rust-libz-sys)
 | 
			
		||||
        ("rust-openssl-sys" ,rust-openssl-sys))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config))
 | 
			
		||||
      #:phases
 | 
			
		||||
      (modify-phases %standard-phases
 | 
			
		||||
        (add-after 'unpack 'find-openssl
 | 
			
		||||
          (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
            (let ((openssl (assoc-ref inputs "openssl")))
 | 
			
		||||
              (setenv "OPENSSL_DIR" openssl))
 | 
			
		||||
            (delete-file-recursively "libgit2")
 | 
			
		||||
            (setenv "LIBGIT2_SYS_USE_PKG_CONFIG" "1")
 | 
			
		||||
            (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1")
 | 
			
		||||
            #t)))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libgit2" ,libgit2)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "https://github.com/rust-lang/git2-rs")
 | 
			
		||||
    (synopsis "Native bindings to the libgit2 library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides native rust bindings to the @code{libgit2} library.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libgit2-sys-0.7
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-libgit2-sys)
 | 
			
		||||
    (name "rust-libgit2-sys")
 | 
			
		||||
    (version "0.7.11")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "libgit2-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1wcvg2qqra2aviasvqcscl8gb2rnjnd6h998wy5dlmf2bnriqi28"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-curl-sys" ,rust-curl-sys)
 | 
			
		||||
        ("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-libssh2-sys" ,rust-libssh2-sys)
 | 
			
		||||
        ("rust-libz-sys" ,rust-libz-sys)
 | 
			
		||||
        ("rust-openssl-sys" ,rust-openssl-sys))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config))))
 | 
			
		||||
   (inputs
 | 
			
		||||
    `(("curl" ,curl)
 | 
			
		||||
      ,@(package-inputs rust-libgit2-sys)))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libloading
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-libloading")
 | 
			
		||||
| 
						 | 
				
			
			@ -1406,6 +1689,77 @@ allows loading dynamic libraries (also known as shared libraries) as well as use
 | 
			
		|||
functions and static variables these libraries contain.")
 | 
			
		||||
    (license license:isc)))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libssh2-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-libssh2-sys")
 | 
			
		||||
    (version "0.2.12")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "libssh2-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1zb6gsw795nq848nk5x2smzpfnn1s15wjlzjnvr8ihlz2l5x2549"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-libz-sys" ,rust-libz-sys)
 | 
			
		||||
        ("rust-openssl-sys" ,rust-openssl-sys))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-openssl-src" ,rust-openssl-src)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config)
 | 
			
		||||
        ("rust-vcpkg" ,rust-vcpkg))
 | 
			
		||||
      #:phases
 | 
			
		||||
      (modify-phases %standard-phases
 | 
			
		||||
        (add-after 'unpack 'find-openssl
 | 
			
		||||
          (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
            (let ((openssl (assoc-ref inputs "openssl")))
 | 
			
		||||
              (setenv "OPENSSL_DIR" openssl))
 | 
			
		||||
            (delete-file-recursively "libssh2")
 | 
			
		||||
            (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "1")
 | 
			
		||||
            #t)))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libssh2" ,libssh2)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "https://github.com/alexcrichton/ssh2-rs")
 | 
			
		||||
    (synopsis "Native bindings to the libssh2 library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides native rust bindings to the @code{libssh2} library.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
(define-public rust-lock-api
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-lock-api")
 | 
			
		||||
    (version "0.1.5")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "lock_api" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0b24q9mh258xa52ap636q1sxz0j5vrnp0hwbbh7ddjka3wwz3sv2"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-owning-ref" ,rust-owning-ref)
 | 
			
		||||
        ("rust-scopeguard" ,rust-scopeguard-0.3))))
 | 
			
		||||
    (home-page "https://github.com/Amanieu/parking_lot")
 | 
			
		||||
    (synopsis "Wrappers to create fully-featured Mutex and RwLock types")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides wrappers to create fully-featured @code{Mutex} and
 | 
			
		||||
@code{RwLock} types.  It is compatible with @code{no_std}.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-log
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-log")
 | 
			
		||||
| 
						 | 
				
			
			@ -1593,15 +1947,14 @@ file IO.")
 | 
			
		|||
(define-public rust-miniz-oxide
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-miniz-oxide")
 | 
			
		||||
    (version "0.3.2")
 | 
			
		||||
    (version "0.3.3")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "miniz_oxide" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "041s41l5w7z8pkp93pdzn8rngxr93q4wxp034pr0cvc7bgway23i"))))
 | 
			
		||||
         (base32 "1bmanbbcdmssfbgik3fs323g7vljc5wkjz7s61jsbbz2kg0nckrh"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -1776,6 +2129,69 @@ types as proposed in RFC 1158.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libnghttp2-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-libnghttp2-sys")
 | 
			
		||||
    (version "0.1.2")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "libnghttp2-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0qr4lyh7righx9n22c7amlcpk906rn1jnb2zd6gdfpa3yi24s982"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-cc" ,rust-cc))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("nghttp2" ,nghttp2)))
 | 
			
		||||
    (home-page "https://github.com/alexcrichton/nghttp2-rs")
 | 
			
		||||
    (synopsis "FFI bindings for libnghttp2 (nghttp2)")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides FFI bindings for libnghttp2 (nghttp2).")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-libz-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-libz-sys")
 | 
			
		||||
    (version "1.0.25")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "libz-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1gjycyl2283525abks98bhxa4r259m617xfm5z52p3p3c8ry9d9f"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-libc" ,rust-libc)
 | 
			
		||||
        ("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config)
 | 
			
		||||
        ("rust-vcpkg" ,rust-vcpkg))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'delete-vendored-zlib
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (delete-file-recursively "src/zlib")
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "https://github.com/rust-lang/libz-sys")
 | 
			
		||||
    (synopsis "Bindings to the system libz library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides bindings to the system @code{libz} library (also
 | 
			
		||||
known as zlib).")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-nodrop
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-nodrop")
 | 
			
		||||
| 
						 | 
				
			
			@ -1923,6 +2339,24 @@ implementation (which is unstable / requires nightly).")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-num-traits-0.1
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-num-traits)
 | 
			
		||||
    (name "rust-num-traits")
 | 
			
		||||
    (version "0.1.43")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "num-traits" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0c9whknf2dm74a3cqirafy6gj83a76gl56g4v3g19k6lkwz13rcj"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-num-traits" ,rust-num-traits))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-openssl-probe
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-openssl-probe")
 | 
			
		||||
| 
						 | 
				
			
			@ -1944,6 +2378,66 @@ system for OpenSSL.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-openssl-src
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-openssl-src")
 | 
			
		||||
    (version "111.6.0+1.1.1d")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "openssl-src" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "172xh95hp7aygahah1940kg1dnx60c5m80cwj5hgi8x7x0fxmhmr"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
      `(#:cargo-inputs (("rust-cc" ,rust-cc))))
 | 
			
		||||
    (home-page "https://github.com/alexcrichton/openssl-src-rs")
 | 
			
		||||
    (synopsis "Source of OpenSSL for rust crates")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package contains the source of OpenSSL and logic to build it.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-openssl-sys
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-openssl-sys")
 | 
			
		||||
    (version "0.9.50")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "openssl-sys" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32 "1dn3capgiz77s6rpmc2sf8gadwkmhwgfd6mw4rcnnm9jp36dqhic"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-autocfg" ,rust-autocfg)
 | 
			
		||||
        ("rust-libc" ,rust-libc))
 | 
			
		||||
       #:cargo-development-inputs
 | 
			
		||||
       (("rust-autocfg" ,rust-autocfg)
 | 
			
		||||
        ("rust-cc" ,rust-cc)
 | 
			
		||||
        ("rust-openssl-src" ,rust-openssl-src)
 | 
			
		||||
        ("rust-pkg-config" ,rust-pkg-config)
 | 
			
		||||
        ("rust-vcpkg" ,rust-vcpkg))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'find-openssl
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             (let ((openssl (assoc-ref inputs "openssl")))
 | 
			
		||||
               (setenv "OPENSSL_DIR" openssl))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("openssl" ,openssl)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (home-page "https://github.com/sfackler/rust-openssl")
 | 
			
		||||
    (synopsis "FFI bindings to OpenSSL")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides FFI bindings to OpenSSL for use in rust crates.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public rust-owning-ref
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-owning-ref")
 | 
			
		||||
| 
						 | 
				
			
			@ -2035,6 +2529,20 @@ the @code{take_while} predicate returned false after dropping the @code{by_ref}.
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-percent-encoding-1
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-percent-encoding)
 | 
			
		||||
    (name "rust-percent-encoding")
 | 
			
		||||
    (version "1.0.1")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "percent-encoding" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0cgq08v1fvr6bs5fvy390cz830lq4fak8havdasdacxcw790s09i"))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-permutohedron
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-permutohedron")
 | 
			
		||||
| 
						 | 
				
			
			@ -2468,6 +2976,26 @@ system calls.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-rustc-hash
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-rustc-hash")
 | 
			
		||||
    (version "1.0.0")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "rustc-hash" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "114bf72466bl63i5hh8fgqfnhihs0w1m9c9jz505095agfixnvg0"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (home-page "https://github.com/rust-lang-nursery/rustc-hash")
 | 
			
		||||
    (synopsis "Speedy, non-cryptographic hash used in rustc")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides a speedy, non-cryptographic hash used in rustc.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-rustc-serialize
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-rustc-serialize")
 | 
			
		||||
| 
						 | 
				
			
			@ -2904,6 +3432,26 @@ deeply recursive algorithms that may accidentally blow the stack.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-static-assertions
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-static-assertions")
 | 
			
		||||
    (version "0.3.4")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "static-assertions" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1lw33i89888yb3x29c6dv4mrkg3534n0rlg3r7qzh4p58xmv6gkz"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (home-page "https://github.com/nvzqz/static-assertions-rs")
 | 
			
		||||
    (synopsis "Compile-time assertions for rust")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides compile-time assertions to ensure that invariants
 | 
			
		||||
are met.")
 | 
			
		||||
    (license (list license:expat license:asl2.0))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-stdweb-internal-runtime
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-stdweb-internal-runtime")
 | 
			
		||||
| 
						 | 
				
			
			@ -2991,6 +3539,20 @@ metrics.  It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro,
 | 
			
		|||
and Jaro-Winkler.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public rust-strsim-0.8
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit rust-strsim)
 | 
			
		||||
    (name "rust-strsim")
 | 
			
		||||
    (version "0.8.0")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "strsim" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf"))))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-synstructure-test-traits
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-synstructure-test-traits")
 | 
			
		||||
| 
						 | 
				
			
			@ -3096,6 +3658,30 @@ directories.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-term
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-term")
 | 
			
		||||
    (version "0.4.6")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "term" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1wbh8ngqkqr3f6wz902yplf60bd5yapnckvrkgmzp5nffi7n8qzs"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs
 | 
			
		||||
       (("rust-kernel32-sys" ,rust-kernel32-sys)
 | 
			
		||||
        ("rust-winapi" ,rust-winapi))))
 | 
			
		||||
    (home-page "https://github.com/Stebalien/term")
 | 
			
		||||
    (synopsis "Terminal formatting library")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides a terminal formatting library in rust.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-termcolor
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-termcolor")
 | 
			
		||||
| 
						 | 
				
			
			@ -3535,15 +4121,14 @@ or XID_Continue properties according to Unicode Standard Annex #31.")
 | 
			
		|||
(define-public rust-unindent
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-unindent")
 | 
			
		||||
    (version "0.1.3")
 | 
			
		||||
    (version "0.1.5")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "unindent" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1x21ilf78aqcq9xzb9b7i628wm10rhk0jp0chlv06rkc690l8jw3"))))
 | 
			
		||||
         (base32 "14s97blyqgf9hzxk22iazrghj60midajkw2801dfspz3n2iqmwb3"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (home-page "https://github.com/dtolnay/indoc")
 | 
			
		||||
    (synopsis "Remove a column of leading whitespace from a string")
 | 
			
		||||
| 
						 | 
				
			
			@ -3552,6 +4137,28 @@ whitespace from a string.")
 | 
			
		|||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-unreachable
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-unreachable")
 | 
			
		||||
    (version "1.0.0")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (crate-uri "unreachable" version))
 | 
			
		||||
        (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0mps2il4xy2mjqc3appas27hhn2xmvixc3bzzhfrjj74gy3i0a1q"))))
 | 
			
		||||
    (build-system cargo-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:cargo-inputs (("rust-void" ,rust-void))))
 | 
			
		||||
    (home-page "https://github.com/reem/rust-unreachable")
 | 
			
		||||
    (synopsis "Unreachable code optimization hint in rust")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package provides an unreachable code optimization hint in rust.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public rust-unsafe-any
 | 
			
		||||
  (package
 | 
			
		||||
    (name "rust-unsafe-any")
 | 
			
		||||
| 
						 | 
				
			
			@ -3787,7 +4394,7 @@ in Rust.")
 | 
			
		|||
    (synopsis "Wide string Rust FFI library")
 | 
			
		||||
    (description
 | 
			
		||||
     "A wide string Rust FFI library for converting to and from wide strings,
 | 
			
		||||
such as those often used in Windows API or other FFI libaries.  Both UTF-16 and
 | 
			
		||||
such as those often used in Windows API or other FFI libraries.  Both UTF-16 and
 | 
			
		||||
UTF-32 types are provided, including support for malformed encoding.")
 | 
			
		||||
    (license (list license:asl2.0
 | 
			
		||||
                   license:expat))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
 | 
			
		||||
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
 | 
			
		||||
| 
						 | 
				
			
			@ -144,6 +144,7 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
 | 
			
		|||
                               "--disable-libatomic"
 | 
			
		||||
                               "--disable-libmudflap"
 | 
			
		||||
                               "--disable-libgomp"
 | 
			
		||||
                               "--disable-libmpx"
 | 
			
		||||
                               "--disable-libssp"
 | 
			
		||||
                               "--disable-libquadmath"
 | 
			
		||||
                               "--disable-decimal-float" ;would need libc
 | 
			
		||||
| 
						 | 
				
			
			@ -190,13 +191,16 @@ base compiler and using LIBC (which may be either a libc package or #f.)"
 | 
			
		|||
                              '("CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH")))
 | 
			
		||||
                  #t))))))))))
 | 
			
		||||
 | 
			
		||||
(define (cross-gcc-patches target)
 | 
			
		||||
  "Return GCC patches needed for TARGET."
 | 
			
		||||
(define (cross-gcc-patches xgcc target)
 | 
			
		||||
  "Return GCC patches needed for XGCC and TARGET."
 | 
			
		||||
  (cond ((string-prefix? "xtensa-" target)
 | 
			
		||||
         ;; Patch by Qualcomm needed to build the ath9k-htc firmware.
 | 
			
		||||
         (search-patches "ath9k-htc-firmware-gcc.patch"))
 | 
			
		||||
        ((target-mingw? target)
 | 
			
		||||
         (search-patches "gcc-4.9.3-mingw-gthr-default.patch"))
 | 
			
		||||
         (append (search-patches "gcc-4.9.3-mingw-gthr-default.patch")
 | 
			
		||||
                 (if (version>=? (package-version xgcc) "7.0")
 | 
			
		||||
                     (search-patches "gcc-7-cross-mingw.patch")
 | 
			
		||||
                    '())))
 | 
			
		||||
        (else '())))
 | 
			
		||||
 | 
			
		||||
(define (cross-gcc-snippet target)
 | 
			
		||||
| 
						 | 
				
			
			@ -229,7 +233,7 @@ target that libc."
 | 
			
		|||
                       ((version>=? (package-version xgcc) "8.0") (search-patch "gcc-8-cross-environment-variables.patch"))
 | 
			
		||||
                       ((version>=? (package-version xgcc) "6.0") (search-patch "gcc-6-cross-environment-variables.patch"))
 | 
			
		||||
                       (else  (search-patch "gcc-cross-environment-variables.patch")))
 | 
			
		||||
                      (cross-gcc-patches target))))
 | 
			
		||||
                      (cross-gcc-patches xgcc target))))
 | 
			
		||||
              (modules '((guix build utils)))
 | 
			
		||||
              (snippet
 | 
			
		||||
               (cross-gcc-snippet target))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,7 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
 | 
			
		||||
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -25,30 +26,43 @@
 | 
			
		|||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages gnupg)
 | 
			
		||||
  #:use-module (gnu packages password-utils)
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages popt)
 | 
			
		||||
  #:use-module (gnu packages python)
 | 
			
		||||
  #:use-module (gnu packages linux))
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages web))
 | 
			
		||||
 | 
			
		||||
(define-public cryptsetup
 | 
			
		||||
  (package
 | 
			
		||||
   (name "cryptsetup")
 | 
			
		||||
   (version "1.7.5")
 | 
			
		||||
   (version "2.2.1")
 | 
			
		||||
   (source (origin
 | 
			
		||||
            (method url-fetch)
 | 
			
		||||
            (uri (string-append "mirror://kernel.org/linux/utils/cryptsetup/v"
 | 
			
		||||
                                (version-major+minor version)
 | 
			
		||||
                                "/" name "-" version ".tar.xz"))
 | 
			
		||||
                                "/cryptsetup-" version ".tar.xz"))
 | 
			
		||||
            (sha256
 | 
			
		||||
             (base32
 | 
			
		||||
              "1gail831j826lmpdx2gsc83lp3br6wfnwh3vqwxaa1nn1lfwsc1b"))))
 | 
			
		||||
              "0q8w3khiwsw708169vahm0nccajsc2hwqz5gv6nb1g9qxlqrmrwl"))))
 | 
			
		||||
   (build-system gnu-build-system)
 | 
			
		||||
   (inputs
 | 
			
		||||
    `(("libgcrypt" ,libgcrypt)
 | 
			
		||||
      ("lvm2" ,lvm2)
 | 
			
		||||
      ("util-linux" ,util-linux)
 | 
			
		||||
      ("popt" ,popt)))
 | 
			
		||||
   (arguments
 | 
			
		||||
    `(#:configure-flags
 | 
			
		||||
      (list
 | 
			
		||||
       ;; Argon2 is always enabled, this just selects the (faster) full version.
 | 
			
		||||
       "--enable-libargon2"
 | 
			
		||||
       ;; The default is OpenSSL which provides better PBKDF performance.
 | 
			
		||||
       "--with-crypto_backend=gcrypt"
 | 
			
		||||
       ;; GRUB as of 2.04 still can't read LUKS2 containers.
 | 
			
		||||
       "--with-default-luks-format=LUKS1")))
 | 
			
		||||
   (native-inputs
 | 
			
		||||
    `(("python" ,python-wrapper)))
 | 
			
		||||
    `(("pkg-config" ,pkg-config)))
 | 
			
		||||
   (inputs
 | 
			
		||||
    `(("argon2" ,argon2)
 | 
			
		||||
      ("json-c" ,json-c)
 | 
			
		||||
      ("libgcrypt" ,libgcrypt)
 | 
			
		||||
      ("lvm2" ,lvm2)                    ; device-mapper
 | 
			
		||||
      ("popt" ,popt)
 | 
			
		||||
      ("util-linux" ,util-linux)))      ; libuuid
 | 
			
		||||
   (synopsis "Hard disk encryption tool")
 | 
			
		||||
   (description
 | 
			
		||||
    "LUKS (Linux Unified Key Setup)/Cryptsetup provides a standard on-disk
 | 
			
		||||
| 
						 | 
				
			
			@ -81,6 +95,14 @@ files).  This assumes LIBRARY uses Libtool."
 | 
			
		|||
     '(#:configure-flags '("--disable-shared"
 | 
			
		||||
                           "--enable-static-cryptsetup"
 | 
			
		||||
 | 
			
		||||
                           "--disable-veritysetup"
 | 
			
		||||
                           "--disable-cryptsetup-reencrypt"
 | 
			
		||||
                           "--disable-integritysetup"
 | 
			
		||||
 | 
			
		||||
                           ;; The default is OpenSSL which provides better PBKDF performance.
 | 
			
		||||
                           "--with-crypto_backend=gcrypt"
 | 
			
		||||
 | 
			
		||||
                           "--disable-blkid"
 | 
			
		||||
                           ;; 'libdevmapper.a' pulls in libpthread, libudev and libm.
 | 
			
		||||
                           "LIBS=-ludev -pthread -lm")
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -94,8 +116,7 @@ files).  This assumes LIBRARY uses Libtool."
 | 
			
		|||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
                  (add-after 'install 'remove-cruft
 | 
			
		||||
                    (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
                      ;; Remove everything except the 'cryptsetup' command and
 | 
			
		||||
                      ;; its friend.
 | 
			
		||||
                      ;; Remove everything except the 'cryptsetup' command.
 | 
			
		||||
                      (let ((out (assoc-ref outputs "out")))
 | 
			
		||||
                        (with-directory-excursion out
 | 
			
		||||
                          (let ((dirs (scandir "."
 | 
			
		||||
| 
						 | 
				
			
			@ -109,7 +130,7 @@ files).  This assumes LIBRARY uses Libtool."
 | 
			
		|||
                                                                    ".static")
 | 
			
		||||
                                                     file)
 | 
			
		||||
                                        (remove-store-references file))
 | 
			
		||||
                                      '("sbin/cryptsetup" "sbin/veritysetup"))
 | 
			
		||||
                                      '("sbin/cryptsetup"))
 | 
			
		||||
                            #t))))))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     (let ((libgcrypt-static
 | 
			
		||||
| 
						 | 
				
			
			@ -117,7 +138,8 @@ files).  This assumes LIBRARY uses Libtool."
 | 
			
		|||
              (inherit (static-library libgcrypt))
 | 
			
		||||
              (propagated-inputs
 | 
			
		||||
               `(("libgpg-error-host" ,(static-library libgpg-error)))))))
 | 
			
		||||
       `(("libgcrypt" ,libgcrypt-static)
 | 
			
		||||
       `(("json-c" ,json-c)
 | 
			
		||||
         ("libgcrypt" ,libgcrypt-static)
 | 
			
		||||
         ("lvm2" ,lvm2-static)
 | 
			
		||||
         ("util-linux" ,util-linux "static")
 | 
			
		||||
         ("util-linux" ,util-linux)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -72,6 +72,7 @@
 | 
			
		|||
  #:use-module (gnu packages dbm)
 | 
			
		||||
  #:use-module (gnu packages emacs)
 | 
			
		||||
  #:use-module (gnu packages flex)
 | 
			
		||||
  #:use-module (gnu packages gcc)
 | 
			
		||||
  #:use-module (gnu packages gettext)
 | 
			
		||||
  #:use-module (gnu packages glib)
 | 
			
		||||
  #:use-module (gnu packages gnupg)
 | 
			
		||||
| 
						 | 
				
			
			@ -84,6 +85,7 @@
 | 
			
		|||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages man)
 | 
			
		||||
  #:use-module (gnu packages ncurses)
 | 
			
		||||
  #:use-module (gnu packages onc-rpc)
 | 
			
		||||
  #:use-module (gnu packages parallel)
 | 
			
		||||
  #:use-module (gnu packages pcre)
 | 
			
		||||
  #:use-module (gnu packages perl)
 | 
			
		||||
| 
						 | 
				
			
			@ -544,7 +546,7 @@ RDBMS systems (which are deep in functionality).")
 | 
			
		|||
(define-public mysql
 | 
			
		||||
  (package
 | 
			
		||||
    (name "mysql")
 | 
			
		||||
    (version "5.7.23")
 | 
			
		||||
    (version "5.7.27")
 | 
			
		||||
    (source (origin
 | 
			
		||||
             (method url-fetch)
 | 
			
		||||
             (uri (list (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -556,7 +558,7 @@ RDBMS systems (which are deep in functionality).")
 | 
			
		|||
                          name "-" version ".tar.gz")))
 | 
			
		||||
             (sha256
 | 
			
		||||
              (base32
 | 
			
		||||
               "0rbc3xsc11lq2dm0ip6gxa16c06hi74scb97x5cw7yhbabaz4c07"))))
 | 
			
		||||
               "1fhv16zr46pxm1j8vb8x8mh3nwzglg01arz8gnazbmjqldr5idpq"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:configure-flags
 | 
			
		||||
| 
						 | 
				
			
			@ -593,12 +595,15 @@ RDBMS systems (which are deep in functionality).")
 | 
			
		|||
                       #t))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
       ("perl" ,perl)))
 | 
			
		||||
       ("perl" ,perl)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("boost" ,boost-for-mysql)
 | 
			
		||||
       ("libaio" ,libaio)
 | 
			
		||||
       ("libtirpc" ,libtirpc)
 | 
			
		||||
       ("ncurses" ,ncurses)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("rpcsvc-proto" ,rpcsvc-proto) ; rpcgen
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "https://www.mysql.com/")
 | 
			
		||||
    (synopsis "Fast, easy to use, and popular database")
 | 
			
		||||
| 
						 | 
				
			
			@ -775,6 +780,10 @@ Language.")
 | 
			
		|||
              #t))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
       ;; XXX: On armhf, use GCC 5 to work around <https://bugs.gnu.org/37605>.
 | 
			
		||||
       ,@(if (string-prefix? "armhf" (%current-system))
 | 
			
		||||
             `(("gcc", gcc-5))
 | 
			
		||||
             '())
 | 
			
		||||
       ("perl" ,perl)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("jemalloc" ,jemalloc)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -29,7 +29,7 @@
 | 
			
		|||
(define-public datamash
 | 
			
		||||
  (package
 | 
			
		||||
    (name "datamash")
 | 
			
		||||
    (version "1.4")
 | 
			
		||||
    (version "1.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
      (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -37,7 +37,7 @@
 | 
			
		|||
                          version ".tar.gz"))
 | 
			
		||||
      (sha256
 | 
			
		||||
       (base32
 | 
			
		||||
        "0aj7wvv14s2fsf2rl49mqhxdagy8cbz6rz4xyi7bkg2nahnxsi7s"))))
 | 
			
		||||
        "1b91pbdarnfmbhid8aa2f50k0fln8n7pg62782b4y0jlzvaljqi2"))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("which" ,which)                 ;for tests
 | 
			
		||||
       ("perl" ,perl)))                 ;for help2man
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
 | 
			
		||||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -69,14 +69,17 @@ clients.")
 | 
			
		|||
               "1vqjhn2bffy2bx45a1r14crsyn2cylf5by567g44c4mhpjwwz6vc"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases (modify-phases %standard-phases
 | 
			
		||||
     `(#:tests? #f ; The test suite is very flakey.
 | 
			
		||||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
        (replace 'check
 | 
			
		||||
          (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
          (lambda* (#:key inputs outputs tests? #:allow-other-keys)
 | 
			
		||||
            (add-installed-pythonpath inputs outputs)
 | 
			
		||||
            (setenv "DETERMINISTIC_TESTS" "true")
 | 
			
		||||
            (setenv "DAV_SERVER" "radicale")
 | 
			
		||||
            (setenv "REMOTESTORAGE_SERVER" "skip")
 | 
			
		||||
            (invoke "make" "test")))
 | 
			
		||||
            (if tests?
 | 
			
		||||
                (invoke "make" "test")
 | 
			
		||||
                #t)))
 | 
			
		||||
        (add-after 'install 'manpage
 | 
			
		||||
          (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
            (invoke "make" "--directory=docs/" "man")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,6 +6,7 @@
 | 
			
		|||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
 | 
			
		||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
 | 
			
		||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -218,7 +219,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
 | 
			
		|||
(define-public grammalecte
 | 
			
		||||
  (package
 | 
			
		||||
    (name "grammalecte")
 | 
			
		||||
    (version "1.4.0")
 | 
			
		||||
    (version "1.5.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch/zipbomb)
 | 
			
		||||
| 
						 | 
				
			
			@ -226,7 +227,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
 | 
			
		|||
                           "Grammalecte-fr-v" version ".zip"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0k30b9kcczsadjjgwja03rkm11cpcc1xi6w8l6k0qfbjfpkhsh66"))))
 | 
			
		||||
         "0byh578apbyq2jdpgmbaw01izlkyw2h5nsr28az44rvaqrsndy0z"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (home-page "https://grammalecte.net")
 | 
			
		||||
    (synopsis "French spelling and grammar checker")
 | 
			
		||||
| 
						 | 
				
			
			@ -245,7 +246,7 @@ and a Python library.")
 | 
			
		|||
(define-public translate-shell
 | 
			
		||||
  (package
 | 
			
		||||
    (name "translate-shell")
 | 
			
		||||
    (version "0.9.6.10")
 | 
			
		||||
    (version "0.9.6.11")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -254,7 +255,7 @@ and a Python library.")
 | 
			
		|||
               (commit (string-append "v" version))))
 | 
			
		||||
        (file-name (git-file-name name version))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32 "1dmh3flldfhnqfay3a6c5hanqcjwrmbly1bq8mlk022qfi1fv33y"))))
 | 
			
		||||
         (base32 "137fz3ahzf65hfqcs4k7hhrmfjlhlw7wr3gfsvk88bnyqkyw44sm"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										279
									
								
								gnu/packages/diffoscope.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										279
									
								
								gnu/packages/diffoscope.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,279 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
 | 
			
		||||
;;; Copyright © 2019 Vagrant Cascadian <vagrant@reproducible-builds.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 diffoscope)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages acl)
 | 
			
		||||
  #:use-module (gnu packages admin)
 | 
			
		||||
  #:use-module (gnu packages android)
 | 
			
		||||
  #:use-module (gnu packages backup)
 | 
			
		||||
  #:use-module (gnu packages base)
 | 
			
		||||
  #:use-module (gnu packages bootloaders)
 | 
			
		||||
  #:use-module (gnu packages cdrom)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages cpio)
 | 
			
		||||
  #:use-module (gnu packages dbm)
 | 
			
		||||
  #:use-module (gnu packages gettext)
 | 
			
		||||
  #:use-module (gnu packages ghostscript)
 | 
			
		||||
  #:use-module (gnu packages gnome)
 | 
			
		||||
  #:use-module (gnu packages gnupg)
 | 
			
		||||
  #:use-module (gnu packages haskell)
 | 
			
		||||
  #:use-module (gnu packages image)
 | 
			
		||||
  #:use-module (gnu packages imagemagick)
 | 
			
		||||
  #:use-module (gnu packages java)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages llvm)
 | 
			
		||||
  #:use-module (gnu packages mono)
 | 
			
		||||
  #:use-module (gnu packages ocaml)
 | 
			
		||||
  #:use-module (gnu packages package-management)
 | 
			
		||||
  #:use-module (gnu packages patchutils)
 | 
			
		||||
  #:use-module (gnu packages pdf)
 | 
			
		||||
  #:use-module (gnu packages python-web)
 | 
			
		||||
  #:use-module (gnu packages python-xyz)
 | 
			
		||||
  #:use-module (gnu packages sqlite)
 | 
			
		||||
  #:use-module (gnu packages ssh)
 | 
			
		||||
  #:use-module (gnu packages statistics)
 | 
			
		||||
  #:use-module (gnu packages textutils)
 | 
			
		||||
  #:use-module (gnu packages video)
 | 
			
		||||
  #:use-module (gnu packages vim)
 | 
			
		||||
  #:use-module (gnu packages web)
 | 
			
		||||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (guix gexp)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module (ice-9 match))
 | 
			
		||||
 | 
			
		||||
(define-public diffoscope
 | 
			
		||||
  (let ((version "125"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "diffoscope")
 | 
			
		||||
      (version version)
 | 
			
		||||
      (source (origin
 | 
			
		||||
                (method git-fetch)
 | 
			
		||||
                (uri (git-reference
 | 
			
		||||
                      (url "https://salsa.debian.org/reproducible-builds/diffoscope.git")
 | 
			
		||||
                      (commit version)))
 | 
			
		||||
                (file-name (git-file-name name version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "02kwisp9j63w27hhcwpdhg66dgxzz61q4fcyfz8z4hwlz6r0gyqy"))))
 | 
			
		||||
      (build-system python-build-system)
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:phases (modify-phases %standard-phases
 | 
			
		||||
                    ;; setup.py mistakenly requires python-magic from PyPi, even
 | 
			
		||||
                    ;; though the Python bindings of `file` are sufficient.
 | 
			
		||||
                    ;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815844
 | 
			
		||||
                    (add-after 'unpack 'dependency-on-python-magic
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        (substitute* "setup.py"
 | 
			
		||||
                          (("'python-magic',") ""))))
 | 
			
		||||
                    ;; Patch in support for known tools
 | 
			
		||||
                    (add-after 'unpack 'add-known-tools
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        (substitute* "diffoscope/external_tools.py"
 | 
			
		||||
                          (("'arch': 'enjarify'},")
 | 
			
		||||
                           "'arch': 'enjarify', 'guix': 'enjarify'},"))
 | 
			
		||||
                        (substitute* "diffoscope/external_tools.py"
 | 
			
		||||
                          (("'arch': 'python-jsbeautifier'},")
 | 
			
		||||
                           "'arch': 'python-jsbeautifier', 'guix': 'python-jsbeautifier'},"))
 | 
			
		||||
                        (substitute* "diffoscope/external_tools.py"
 | 
			
		||||
                          (("'arch': 'wabt'},")
 | 
			
		||||
                           "'arch': 'wabt', 'guix': 'wabt'},"))))
 | 
			
		||||
                    ;; This test is broken because our `file` package has a
 | 
			
		||||
                    ;; bug in berkeley-db file type detection.
 | 
			
		||||
                    (add-after 'unpack 'remove-berkeley-test
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        (delete-file "tests/comparators/test_berkeley_db.py")
 | 
			
		||||
                        #t))
 | 
			
		||||
                    ;; Test is dynamically generated and may have false
 | 
			
		||||
                    ;; negatives with different ocaml versions.  Further
 | 
			
		||||
                    ;; background in: https://bugs.debian.org/939386
 | 
			
		||||
                    (add-after 'unpack 'remove-ocaml-test
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        (substitute* "tests/comparators/test_ocaml.py"
 | 
			
		||||
                          (("def test_diff.differences.:")
 | 
			
		||||
                           "def skip_test_diff(differences):"))
 | 
			
		||||
                        #t))
 | 
			
		||||
                    (add-after 'unpack 'skip-elf-tests
 | 
			
		||||
                      ;; FIXME: libmix_differences test added in 125, and is
 | 
			
		||||
                      ;; failing, need to explore why...
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        (substitute* "tests/comparators/test_elf.py"
 | 
			
		||||
                          (("def test_libmix_differences.libmix_differences.:")
 | 
			
		||||
                           "def skip_test_libmix_differences(libmix_differences):"))
 | 
			
		||||
                        #t))
 | 
			
		||||
                    (add-after 'unpack 'embed-tool-references
 | 
			
		||||
                      (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
                        (substitute* "diffoscope/comparators/utils/compare.py"
 | 
			
		||||
                          (("\\['xxd',")
 | 
			
		||||
                           (string-append "['" (which "xxd") "',")))
 | 
			
		||||
                        (substitute* "diffoscope/comparators/elf.py"
 | 
			
		||||
                          (("@tool_required\\('readelf'\\)") "")
 | 
			
		||||
                          (("get_tool_name\\('readelf'\\)")
 | 
			
		||||
                           (string-append "'" (which "readelf") "'")))
 | 
			
		||||
                        (substitute* "diffoscope/comparators/directory.py"
 | 
			
		||||
                          (("@tool_required\\('stat'\\)") "")
 | 
			
		||||
                          (("@tool_required\\('getfacl'\\)") "")
 | 
			
		||||
                          (("\\['stat',")
 | 
			
		||||
                           (string-append "['" (which "stat") "',"))
 | 
			
		||||
                          (("\\['getfacl',")
 | 
			
		||||
                           (string-append "['" (which "getfacl") "',")))
 | 
			
		||||
                        #t))
 | 
			
		||||
                    (add-before 'check 'writable-test-data
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        ;; tests may need needs write access to tests
 | 
			
		||||
                        ;; directory
 | 
			
		||||
                        (for-each make-file-writable (find-files "tests"))
 | 
			
		||||
                        #t))
 | 
			
		||||
                    (add-before 'check 'delete-failing-test
 | 
			
		||||
                      (lambda _
 | 
			
		||||
                        ;; this requires /sbin to be on the path
 | 
			
		||||
                        (delete-file "tests/test_tools.py")
 | 
			
		||||
                        #t)))))
 | 
			
		||||
      (inputs `(("rpm" ,rpm)                        ;for rpm-python
 | 
			
		||||
                ("python-file" ,python-file)
 | 
			
		||||
                ("python-debian" ,python-debian)
 | 
			
		||||
                ("python-libarchive-c" ,python-libarchive-c)
 | 
			
		||||
                ("python-tlsh" ,python-tlsh)
 | 
			
		||||
                ("acl" ,acl)                        ;for getfacl
 | 
			
		||||
                ("colordiff" ,colordiff)
 | 
			
		||||
                ("xxd" ,xxd)))
 | 
			
		||||
      ;; Below are modules used for tests.
 | 
			
		||||
      (native-inputs `(("python-pytest" ,python-pytest)
 | 
			
		||||
                       ("python-chardet" ,python-chardet)
 | 
			
		||||
                       ("python-binwalk" ,python-binwalk)
 | 
			
		||||
                       ;; test suite skips tests when tool is missing
 | 
			
		||||
                       ,@(match (%current-system)
 | 
			
		||||
                                ;; ghc is only available on x86 currently.
 | 
			
		||||
                                ((or "x86_64-linux" "i686-linux")
 | 
			
		||||
                                 `(("ghc" ,ghc)))
 | 
			
		||||
                                (_
 | 
			
		||||
                                 `()))
 | 
			
		||||
                       ,@(match (%current-system)
 | 
			
		||||
                                ;; openjdk and dependent packages are only
 | 
			
		||||
                                ;; available on x86_64 currently.
 | 
			
		||||
                                ((or "x86_64-linux")
 | 
			
		||||
                                 `(("enjarify" ,enjarify)
 | 
			
		||||
                                   ;; no unversioned openjdk available
 | 
			
		||||
                                   ("openjdk:jdk" ,openjdk12 "jdk")
 | 
			
		||||
                                   ))
 | 
			
		||||
                                (_
 | 
			
		||||
                                 `()))
 | 
			
		||||
                       ("abootimg" ,abootimg)
 | 
			
		||||
                       ("bdb" ,bdb)
 | 
			
		||||
                       ("binutils" ,binutils)
 | 
			
		||||
                       ("bzip2" ,bzip2)
 | 
			
		||||
                       ("cdrtools" ,cdrtools)
 | 
			
		||||
                       ("colord" ,colord)
 | 
			
		||||
                       ("cpio" ,cpio)
 | 
			
		||||
                       ("docx2txt" ,docx2txt)
 | 
			
		||||
                       ("dtc" ,dtc)
 | 
			
		||||
                       ("e2fsprogs" ,e2fsprogs)
 | 
			
		||||
                       ("ffmpeg" ,ffmpeg)
 | 
			
		||||
                       ("gettext" ,gettext-minimal)
 | 
			
		||||
                       ("ghostscript" ,ghostscript)
 | 
			
		||||
                       ("giflib:bin" ,giflib "bin")
 | 
			
		||||
                       ("gnumeric" ,gnumeric)
 | 
			
		||||
                       ("gnupg" ,gnupg)
 | 
			
		||||
                       ("imagemagick" ,imagemagick)
 | 
			
		||||
                       ("libarchive" ,libarchive)
 | 
			
		||||
                       ("llvm" ,llvm)
 | 
			
		||||
                       ("lz4" ,lz4)
 | 
			
		||||
                       ("mono" ,mono)
 | 
			
		||||
                       ("ocaml" ,ocaml)
 | 
			
		||||
                       ("odt2txt" ,odt2txt)
 | 
			
		||||
                       ("openssh" ,openssh)
 | 
			
		||||
                       ("pgpdump" ,pgpdump)
 | 
			
		||||
                       ("poppler" ,poppler)
 | 
			
		||||
                       ("python-jsbeautifier" ,python-jsbeautifier)
 | 
			
		||||
                       ("r-minimal" ,r-minimal)
 | 
			
		||||
                       ("rpm" ,rpm)
 | 
			
		||||
                       ("sng" ,sng)
 | 
			
		||||
                       ("sqlite" ,sqlite)
 | 
			
		||||
                       ("squashfs-tools" ,squashfs-tools)
 | 
			
		||||
                       ("tcpdump" ,tcpdump)
 | 
			
		||||
                       ("unzip" ,unzip)
 | 
			
		||||
                       ("wabt" ,wabt)
 | 
			
		||||
                       ("xxd" ,xxd)
 | 
			
		||||
                       ("xz" ,xz)
 | 
			
		||||
                       ("zip" ,zip)))
 | 
			
		||||
      (home-page "https://diffoscope.org/")
 | 
			
		||||
      (synopsis "Compare files, archives, and directories in depth")
 | 
			
		||||
      (description
 | 
			
		||||
       "Diffoscope tries to get to the bottom of what makes files or directories
 | 
			
		||||
different.  It recursively unpacks archives of many kinds and transforms
 | 
			
		||||
various binary formats into more human readable forms to compare them.  It can
 | 
			
		||||
compare two tarballs, ISO images, or PDFs just as easily.")
 | 
			
		||||
      (license license:gpl3+))))
 | 
			
		||||
 | 
			
		||||
(define-public trydiffoscope
 | 
			
		||||
 (package
 | 
			
		||||
   (name "trydiffoscope")
 | 
			
		||||
   (version "67.0.1")
 | 
			
		||||
   (source
 | 
			
		||||
    (origin
 | 
			
		||||
      (method git-fetch)
 | 
			
		||||
      (uri (git-reference
 | 
			
		||||
            (url "https://salsa.debian.org/reproducible-builds/trydiffoscope.git")
 | 
			
		||||
            (commit version)))
 | 
			
		||||
      (file-name (git-file-name name version))
 | 
			
		||||
      (sha256
 | 
			
		||||
       (base32
 | 
			
		||||
        "03b66cjii7l2yiwffj6ym6mycd5drx7prfp4j2550281pias6mjh"))))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'install 'install-doc
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let* ((share (string-append (assoc-ref outputs "out") "/share/")))
 | 
			
		||||
               (mkdir-p (string-append share "/man/man1/" ))
 | 
			
		||||
               (invoke "rst2man.py"
 | 
			
		||||
                       "trydiffoscope.1.rst"
 | 
			
		||||
                       (string-append share "/man/man1/trydiffoscope.1"))
 | 
			
		||||
               (mkdir-p (string-append share "/doc/" ,name "-" ,version))
 | 
			
		||||
               (install-file "./README.rst"
 | 
			
		||||
                          (string-append share "/doc/" ,name "-" ,version)))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-requests" ,python-requests)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("gzip" ,gzip)
 | 
			
		||||
       ("python-docutils" ,python-docutils)))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (home-page "https://try.diffoscope.org")
 | 
			
		||||
    (synopsis "Client for remote diffoscope service")
 | 
			
		||||
    (description "This is a client for the @url{https://try.diffoscope.org,
 | 
			
		||||
remote diffoscope service}.
 | 
			
		||||
 | 
			
		||||
Diffoscope tries to get to the bottom of what makes files or directories
 | 
			
		||||
different.  It recursively unpacks archives of many kinds and transforms
 | 
			
		||||
various binary formats into more human readable forms to compare them.  It can
 | 
			
		||||
compare two tarballs, ISO images, or PDFs just as easily.
 | 
			
		||||
 | 
			
		||||
Results are displayed by default, stored as local text or html files, or made
 | 
			
		||||
available via a URL on @url{https://try.diffoscope.org}.  Results stored on the
 | 
			
		||||
server are purged after 30 days.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
| 
						 | 
				
			
			@ -402,7 +402,7 @@ systems.  Output format is completely customizable.")
 | 
			
		|||
(define-public f3
 | 
			
		||||
  (package
 | 
			
		||||
    (name "f3")
 | 
			
		||||
    (version "7.1")
 | 
			
		||||
    (version "7.2")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
      (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -411,8 +411,7 @@ systems.  Output format is completely customizable.")
 | 
			
		|||
            (commit (string-append "v" version))))
 | 
			
		||||
      (file-name (git-file-name name version))
 | 
			
		||||
      (sha256
 | 
			
		||||
       (base32
 | 
			
		||||
        "0zglsmz683jg7f9wc6vmgljyg9w87pbnjw5x4w6x02w8233zvjqf"))))
 | 
			
		||||
       (base32 "1iwdg0r4wkgc8rynmw1qcqz62l0ldgc8lrazq33msxnk5a818jgy"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f                      ; no check target
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										95
									
								
								gnu/packages/distributed.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								gnu/packages/distributed.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,95 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2019 Brant Gardner <brantcgardner@brantware.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
 | 
			
		||||
;;; under the terms of the GNU General Public License as published by
 | 
			
		||||
;;; the Free Software Foundation; either version 3 of the License, or (at
 | 
			
		||||
;;; your option) any later version.
 | 
			
		||||
;;;
 | 
			
		||||
;;; GNU Guix is distributed in the hope that it will be useful, but
 | 
			
		||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
;;; GNU General Public License for more details.
 | 
			
		||||
;;;
 | 
			
		||||
;;; You should have received a copy of the GNU General Public License
 | 
			
		||||
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
(define-module (gnu packages distributed)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages autotools)
 | 
			
		||||
  #:use-module (gnu packages base)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages databases)
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages tls)
 | 
			
		||||
  #:use-module (gnu packages curl)
 | 
			
		||||
  #:use-module (gnu packages wxwidgets)
 | 
			
		||||
  #:use-module (gnu packages gnome)
 | 
			
		||||
  #:use-module (gnu packages gtk)
 | 
			
		||||
  #:use-module (gnu packages perl)
 | 
			
		||||
  #:use-module (gnu packages sqlite)
 | 
			
		||||
  #:use-module (gnu packages python)
 | 
			
		||||
  #:use-module (gnu packages python-xyz))
 | 
			
		||||
 | 
			
		||||
(define-public boinc-client
 | 
			
		||||
  (package
 | 
			
		||||
    (name "boinc-client")
 | 
			
		||||
    (version "7.16.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/boinc/boinc.git")
 | 
			
		||||
                    (commit (string-append "client_release/"
 | 
			
		||||
                                           "7.16/"
 | 
			
		||||
                                           version))))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0w2qimcwyjhapk3z7zyq7jkls23hsnmm35iw7m4s4if04fp70dx0"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments '(#:configure-flags '("--disable-server")))
 | 
			
		||||
    (inputs `(("openssl" ,openssl)
 | 
			
		||||
              ("curl" ,curl)
 | 
			
		||||
              ("wxwidgets" ,wxwidgets)
 | 
			
		||||
              ("gtk+" ,gtk+)
 | 
			
		||||
              ("gdk-pixbuf" ,gdk-pixbuf)
 | 
			
		||||
              ("libnotify" ,libnotify)
 | 
			
		||||
              ("sqlite" ,sqlite)
 | 
			
		||||
              ("python" ,python)
 | 
			
		||||
              ("python-pyserial" ,python-pyserial)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("autoconf" ,autoconf)
 | 
			
		||||
       ("automake" ,automake)
 | 
			
		||||
       ("libtool" ,libtool)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (synopsis "BOINC lets you help cutting-edge science research using your computer")
 | 
			
		||||
    (description "BOINC is a platform for high-throughput computing on a large
 | 
			
		||||
scale (thousands or millions of computers).  It can be used for volunteer
 | 
			
		||||
computing (using consumer devices) or grid computing (using organizational
 | 
			
		||||
resources).  It supports virtualized, parallel, and GPU-based applications.
 | 
			
		||||
 | 
			
		||||
BOINC is distributed under the LGPL open source license.  It can be used for
 | 
			
		||||
commercial purposes, and applications need not be open source.")
 | 
			
		||||
    (home-page "https://boinc.berkeley.edu/")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public boinc-server
 | 
			
		||||
  (package (inherit boinc-client)
 | 
			
		||||
    (name "boinc-server")
 | 
			
		||||
    (arguments '(#:configure-flags '("--disable-client" "--disable-manager")
 | 
			
		||||
                 #:parallel-build? #f
 | 
			
		||||
                 #:tests? #f)) ; FIXME: Looks like bad test syntax in the
 | 
			
		||||
                               ; source package, 2 tests fail.  Disable for
 | 
			
		||||
                               ; now.
 | 
			
		||||
    (inputs `(("openssl" ,openssl)
 | 
			
		||||
              ("curl" ,curl)
 | 
			
		||||
              ("mariadb" ,mariadb)
 | 
			
		||||
              ("zlib" ,zlib)))
 | 
			
		||||
    (propagated-inputs `(("python" ,python-wrapper)
 | 
			
		||||
                         ("perl" ,perl)))))
 | 
			
		||||
| 
						 | 
				
			
			@ -109,7 +109,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
 | 
			
		|||
(define-public isc-bind
 | 
			
		||||
  (package
 | 
			
		||||
    (name "bind")
 | 
			
		||||
    (version "9.14.5")
 | 
			
		||||
    (version "9.14.6")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -117,7 +117,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
 | 
			
		|||
                    "/bind-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ic0k0kpavwnbyf10rwx6yypxg66f65fprwc0dbmp61xp0n6gl0j"))))
 | 
			
		||||
                "1zpd47ckn5lf4qbscfkj7krngwn2gwsp961v5401h3lhxm0a0rw9"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (outputs `("out" "utils"))
 | 
			
		||||
    (inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -373,14 +373,14 @@ to result in system-wide compromise.")
 | 
			
		|||
(define-public unbound
 | 
			
		||||
  (package
 | 
			
		||||
    (name "unbound")
 | 
			
		||||
    (version "1.9.2")
 | 
			
		||||
    (version "1.9.3")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://www.unbound.net/downloads/unbound-"
 | 
			
		||||
                           version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "15bbrczibap30db8a1pmqhvjbmkxms39hwiivby7f4j5rz2wwykg"))))
 | 
			
		||||
        (base32 "1ykdy62sgzv33ggkmzwx2h0ifm7hyyxyfkb4zckv7gz4f28xsm8v"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (outputs '("out" "python"))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -24,7 +24,7 @@
 | 
			
		|||
(define-module (gnu packages elixir)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages erlang)
 | 
			
		||||
| 
						 | 
				
			
			@ -34,15 +34,16 @@
 | 
			
		|||
  (package
 | 
			
		||||
    (name "elixir")
 | 
			
		||||
    (version "1.8.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/elixir-lang/elixir"
 | 
			
		||||
                                  "/archive/v" version ".tar.gz"))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ddqxw24zdqlg7glzk22m7qjal8f18divzp364a6gi1bv6rg16yg"))
 | 
			
		||||
	      (patches (search-patches "elixir-path-length.patch"))))
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/elixir-lang/elixir.git")
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1n77cpcl2b773gmj3m9s24akvj9gph9byqbmj2pvlsmby4aqwckq"))
 | 
			
		||||
       (patches (search-patches "elixir-path-length.patch"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:test-target "test"
 | 
			
		||||
| 
						 | 
				
			
			@ -51,7 +52,11 @@
 | 
			
		|||
                                         (assoc-ref %outputs "out")))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'replace-paths
 | 
			
		||||
         (add-after 'unpack 'make-git-checkout-writable
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (for-each make-file-writable (find-files "."))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'make-git-checkout-writable 'replace-paths
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             (let ((out (assoc-ref outputs "out")))
 | 
			
		||||
               (substitute* '("lib/elixir/lib/system.ex"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
				
			
			@ -875,30 +875,31 @@ the Raspberry Pi chip.")
 | 
			
		|||
      (description "This package provides @code{gcc} for VideoCore IV,
 | 
			
		||||
the Raspberry Pi chip."))))
 | 
			
		||||
 | 
			
		||||
(define-public python2-libmpsse
 | 
			
		||||
(define-public python-libmpsse
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python2-libmpsse")
 | 
			
		||||
    (version "1.3")
 | 
			
		||||
    (name "python-libmpsse")
 | 
			
		||||
    (version "1.4")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (string-append "https://storage.googleapis.com/"
 | 
			
		||||
                            "google-code-archive-downloads/v2/"
 | 
			
		||||
                            "code.google.com/libmpsse/"
 | 
			
		||||
                            "libmpsse-" version ".tar.gz"))
 | 
			
		||||
        (method git-fetch)
 | 
			
		||||
        (uri (git-reference
 | 
			
		||||
              (url "https://github.com/daym/libmpsse.git")
 | 
			
		||||
              (commit (string-append "v" version))))
 | 
			
		||||
        (file-name "libmpsse-checkout")
 | 
			
		||||
        (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
            "0jq7nhqq3na8675jnpfcar3pd3dp3adhhc4lw900swkla01a1wh8"))))
 | 
			
		||||
            "14f1kiiia4kfd9mzwx4h63aa8bpz9aknbrrr7mychnsp3arw0z25"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libftdi" ,libftdi)
 | 
			
		||||
       ("python" ,python-2)))
 | 
			
		||||
       ("python" ,python)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
       ("swig" ,swig)
 | 
			
		||||
       ("which" ,base:which)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ; No tests exist.
 | 
			
		||||
       #:parallel-build? #f  ; Would be buggy.
 | 
			
		||||
       #:make-flags
 | 
			
		||||
       (list (string-append "CFLAGS=-Wall -fPIC -fno-strict-aliasing -g -O2 "
 | 
			
		||||
                            "$(shell pkg-config --cflags libftdi1)"))
 | 
			
		||||
| 
						 | 
				
			
			@ -906,28 +907,20 @@ the Raspberry Pi chip."))))
 | 
			
		|||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'set-environment-up
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             (chdir "src")
 | 
			
		||||
             (setenv "PYDEV" (string-append (assoc-ref inputs "python")
 | 
			
		||||
                             "/include/python2.7"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'unpack 'patch-global-variable
 | 
			
		||||
           (lambda _
 | 
			
		||||
             ;; fast_rw_buf was defined in a header file which was making
 | 
			
		||||
             ;; the build not reproducible.
 | 
			
		||||
             (substitute* "src/fast.c"
 | 
			
		||||
               (("^int fast_build_block_buffer") "
 | 
			
		||||
 | 
			
		||||
unsigned char fast_rw_buf[SPI_RW_SIZE + CMD_SIZE];
 | 
			
		||||
int fast_build_block_buffer"))
 | 
			
		||||
             (substitute* "src/mpsse.h"
 | 
			
		||||
               (("unsigned char fast_rw_buf.*") "
 | 
			
		||||
"))
 | 
			
		||||
             #t))
 | 
			
		||||
             (let ((python (assoc-ref inputs "python")))
 | 
			
		||||
               (chdir "src")
 | 
			
		||||
               (setenv "PYDEV" (string-append python
 | 
			
		||||
                               "/include/python"
 | 
			
		||||
                               ,(version-major+minor (package-version python))
 | 
			
		||||
                               "m"))
 | 
			
		||||
               #t)))
 | 
			
		||||
         (replace 'install
 | 
			
		||||
           (lambda* (#:key outputs make-flags #:allow-other-keys #:rest args)
 | 
			
		||||
           (lambda* (#:key inputs outputs make-flags #:allow-other-keys #:rest args)
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (out-python (string-append out
 | 
			
		||||
                                               "/lib/python2.7/site-packages"))
 | 
			
		||||
                                               "/lib/python"
 | 
			
		||||
                                               ,(version-major+minor (package-version python))
 | 
			
		||||
                                               "/site-packages"))
 | 
			
		||||
                    (install (assoc-ref %standard-phases 'install)))
 | 
			
		||||
               (install #:make-flags (cons (string-append "PYLIB=" out-python)
 | 
			
		||||
                                           make-flags))))))))
 | 
			
		||||
| 
						 | 
				
			
			@ -938,6 +931,36 @@ MPSSE (Multi-Protocol Synchronous Serial Engine) adapter by FTDI that can do
 | 
			
		|||
SPI, I2C, JTAG.")
 | 
			
		||||
    (license license:gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public python2-libmpsse
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit python-libmpsse)
 | 
			
		||||
    (name "python2-libmpsse")
 | 
			
		||||
    (arguments
 | 
			
		||||
     (substitute-keyword-arguments (package-arguments python-libmpsse)
 | 
			
		||||
      ((#:phases phases)
 | 
			
		||||
       `(modify-phases ,phases
 | 
			
		||||
         (replace 'set-environment-up
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             (let ((python (assoc-ref inputs "python")))
 | 
			
		||||
               (chdir "src")
 | 
			
		||||
               (setenv "PYDEV" (string-append python
 | 
			
		||||
                               "/include/python"
 | 
			
		||||
                               ,(version-major+minor (package-version python-2))))
 | 
			
		||||
               #t)))
 | 
			
		||||
         (replace 'install
 | 
			
		||||
           (lambda* (#:key inputs outputs make-flags #:allow-other-keys #:rest args)
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (out-python (string-append out
 | 
			
		||||
                                               "/lib/python"
 | 
			
		||||
                                               ,(version-major+minor (package-version python-2))
 | 
			
		||||
                                               "/site-packages"))
 | 
			
		||||
                    (install (assoc-ref %standard-phases 'install)))
 | 
			
		||||
               (install #:make-flags (cons (string-append "PYLIB=" out-python)
 | 
			
		||||
                                           make-flags)))))))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     (alist-replace "python" (list python-2)
 | 
			
		||||
                    (package-inputs python-libmpsse)))))
 | 
			
		||||
 | 
			
		||||
(define-public picprog
 | 
			
		||||
  (package
 | 
			
		||||
    (name "picprog")
 | 
			
		||||
| 
						 | 
				
			
			@ -978,14 +1001,14 @@ SPI, I2C, JTAG.")
 | 
			
		|||
(define-public fc-host-tools
 | 
			
		||||
  (package
 | 
			
		||||
    (name "fc-host-tools")
 | 
			
		||||
    (version "10")
 | 
			
		||||
    (version "11")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "ftp://ftp.freecalypso.org/pub/GSM/"
 | 
			
		||||
                                  "FreeCalypso/fc-host-tools-r" version ".tar.bz2"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0ybjqkz1cpnxni66p3valv1bva39vpwzdcc4040lqzx6py9h7h8b"))))
 | 
			
		||||
                "0s87lp6gd8i8ivrdd7mnnalysr65035nambcm992rgla7sk76sj1"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f                      ; No tests exist.
 | 
			
		||||
| 
						 | 
				
			
			@ -994,12 +1017,7 @@ SPI, I2C, JTAG.")
 | 
			
		|||
             (string-append "INCLUDE_INSTALL_DIR=" %output "include/rvinterf"))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (delete 'configure)
 | 
			
		||||
         (add-after 'unpack 'handle-tarbomb
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (chdir "..") ; url-fetch/tarbomb doesn't work for some reason.
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'handle-tarbomb 'patch-installation-paths
 | 
			
		||||
         (add-after 'unpack 'patch-installation-paths
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (substitute* '("Makefile"
 | 
			
		||||
                            "rvinterf/etmsync/fsiomain.c"
 | 
			
		||||
| 
						 | 
				
			
			@ -1016,13 +1034,16 @@ SPI, I2C, JTAG.")
 | 
			
		|||
                (string-append (assoc-ref outputs "out") "/lib/freecalypso/loadtools"))
 | 
			
		||||
               (("\\$\\{INSTALL_PREFIX\\}/loadtools")
 | 
			
		||||
                (string-append (assoc-ref outputs "out") "/lib/freecalypso/loadtools"))
 | 
			
		||||
               (("\\$\\{INSTALL_PREFIX\\}/target-bin")
 | 
			
		||||
                (string-append (assoc-ref outputs "out") "/lib/freecalypso/target-bin"))
 | 
			
		||||
               (("/opt/freecalypso")
 | 
			
		||||
                (assoc-ref outputs "out")))
 | 
			
		||||
             #t)))))
 | 
			
		||||
             #t))
 | 
			
		||||
         (delete 'configure))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libx11" ,libx11)))
 | 
			
		||||
    (synopsis "Freecalypso host tools")
 | 
			
		||||
    (description "This package provides some tools for debugging Freecalypso phones.
 | 
			
		||||
    (description "This package provides some tools for debugging FreeCalypso phones and the FreeCalypso FCDEV3B dev board.
 | 
			
		||||
 | 
			
		||||
@enumerate
 | 
			
		||||
@item fc-e1decode: Decodes a binary Melody E1 file into an ASCII source file.
 | 
			
		||||
| 
						 | 
				
			
			@ -1097,10 +1118,10 @@ feeding melodies to be played to it.
 | 
			
		|||
that can be issued through the RVTMUX (debug trace) serial channel.
 | 
			
		||||
This program is our test mode shell for sending Test Mode commands to targets
 | 
			
		||||
and displaying decoded target responses.
 | 
			
		||||
@item fcup-smsend Send a short message via SMS
 | 
			
		||||
@item fcup-smsendmult Send multiple short messages via SMS in one go
 | 
			
		||||
@item fcup-smsendpdu Send multiple short messages given in PDU format via SMS
 | 
			
		||||
@item sms-pdu-decode Decode PDU format messages
 | 
			
		||||
@item fcup-smsend: Send a short message via SMS
 | 
			
		||||
@item fcup-smsendmult: Send multiple short messages via SMS in one go
 | 
			
		||||
@item fcup-smsendpdu: Send multiple short messages given in PDU format via SMS
 | 
			
		||||
@item sms-pdu-decode: Decode PDU format messages
 | 
			
		||||
@end enumerate")
 | 
			
		||||
    (home-page "https://www.freecalypso.org/")
 | 
			
		||||
    (license license:public-domain)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1183,7 +1183,7 @@ play them on systems for which they were never designed!")
 | 
			
		|||
(define-public mame
 | 
			
		||||
  (package
 | 
			
		||||
    (name "mame")
 | 
			
		||||
    (version "0.212")
 | 
			
		||||
    (version "0.214")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -1193,11 +1193,7 @@ play them on systems for which they were never designed!")
 | 
			
		|||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0p3zcb9l624dsy2gyv23ppp1k1iwd1vrg8cbn5v4fx1s44mx7f5c"))
 | 
			
		||||
       (patches
 | 
			
		||||
       ;; FIXME: Remove once 0.213 is out.  Applied upstream as
 | 
			
		||||
       ;; 0b5b13cf1e28550b49c387dec93f9801f029e313.
 | 
			
		||||
        (search-patches "mame-rapidjson-fix.patch"))
 | 
			
		||||
         "129yk3ybcviscy2xk1mkkzxm4h4nh5p6ndfgqbmcx547p1s6hbja"))
 | 
			
		||||
       (modules '((guix build utils)))
 | 
			
		||||
       (snippet
 | 
			
		||||
        ;; Remove bundled libraries.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -33,7 +33,7 @@
 | 
			
		|||
(define-public enchant
 | 
			
		||||
  (package
 | 
			
		||||
    (name "enchant")
 | 
			
		||||
    (version "2.2.5")
 | 
			
		||||
    (version "2.2.7")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/AbiWord/enchant/releases"
 | 
			
		||||
| 
						 | 
				
			
			@ -41,7 +41,7 @@
 | 
			
		|||
                                  version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0iqwzs11i9fvqdxv5kn0svcn2mzymn657qf3j66lg8dx1nh4xkpz"))))
 | 
			
		||||
                "029smcna98hllgkm2gy94qa7qphxs4xaa8cdbg5kaaw16mhrf8hv"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:configure-flags '("--disable-static"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,7 @@
 | 
			
		|||
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
 | 
			
		||||
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2016 David Thompson <davet@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018 Theodoros Foradis <theodoros@foradis.org>
 | 
			
		||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
| 
						 | 
				
			
			@ -13,6 +13,7 @@
 | 
			
		|||
;;; Copyright © 2019 Tim Stahel <swedneck@swedneck.xyz>
 | 
			
		||||
;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
 | 
			
		||||
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
 | 
			
		||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -50,9 +51,11 @@
 | 
			
		|||
  #:use-module (gnu packages bison)
 | 
			
		||||
  #:use-module (gnu packages boost)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages cmake)
 | 
			
		||||
  #:use-module (gnu packages commencement)
 | 
			
		||||
  #:use-module (gnu packages compression)
 | 
			
		||||
  #:use-module (gnu packages curl)
 | 
			
		||||
  #:use-module (gnu packages documentation)
 | 
			
		||||
  #:use-module (gnu packages flex)
 | 
			
		||||
  #:use-module (gnu packages fontutils)
 | 
			
		||||
  #:use-module (gnu packages fpga)
 | 
			
		||||
| 
						 | 
				
			
			@ -66,10 +69,12 @@
 | 
			
		|||
  #:use-module (gnu packages gnome)
 | 
			
		||||
  #:use-module (gnu packages gperf)
 | 
			
		||||
  #:use-module (gnu packages graphics)
 | 
			
		||||
  #:use-module (gnu packages graphviz)
 | 
			
		||||
  #:use-module (gnu packages groff)
 | 
			
		||||
  #:use-module (gnu packages gtk)
 | 
			
		||||
  #:use-module (gnu packages guile)
 | 
			
		||||
  #:use-module (gnu packages image)
 | 
			
		||||
  #:use-module (gnu packages image-processing)
 | 
			
		||||
  #:use-module (gnu packages imagemagick)
 | 
			
		||||
  #:use-module (gnu packages linux)               ;FIXME: for pcb
 | 
			
		||||
  #:use-module (gnu packages m4)
 | 
			
		||||
| 
						 | 
				
			
			@ -84,6 +89,7 @@
 | 
			
		|||
  #:use-module (gnu packages qt)
 | 
			
		||||
  #:use-module (gnu packages readline)
 | 
			
		||||
  #:use-module (gnu packages swig)
 | 
			
		||||
  #:use-module (gnu packages tbb)
 | 
			
		||||
  #:use-module (gnu packages tcl)
 | 
			
		||||
  #:use-module (gnu packages texinfo)
 | 
			
		||||
  #:use-module (gnu packages tls)
 | 
			
		||||
| 
						 | 
				
			
			@ -1544,7 +1550,7 @@ unique design feature of Trilinos is its focus on packages.")
 | 
			
		|||
        (string-append "ARCHDIR="
 | 
			
		||||
                       (assoc-ref %build-inputs "trilinos")))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
     `(("bison" ,bison-3.0)                  ;'configure' fails with Bison 3.4
 | 
			
		||||
       ("flex" ,flex)
 | 
			
		||||
       ("fortran" ,gfortran)))
 | 
			
		||||
    (inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -1810,7 +1816,7 @@ simulations are also supported.")
 | 
			
		|||
(define-public qucs-s
 | 
			
		||||
  (package
 | 
			
		||||
    (name "qucs-s")
 | 
			
		||||
    (version "0.0.20")
 | 
			
		||||
    (version "0.0.21")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/ra3xdh/qucs_s/archive/"
 | 
			
		||||
| 
						 | 
				
			
			@ -1818,7 +1824,7 @@ simulations are also supported.")
 | 
			
		|||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "01dizf4rjciqc8x7bmv3kbhdlz90bm6n9m9fz7dbzqcwvszcs1hx"))))
 | 
			
		||||
                "12m1jwhb9qwvb141qzyskbxnw3wn1x22d02z4b4862p7xvccl5h7"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ; no tests
 | 
			
		||||
| 
						 | 
				
			
			@ -2214,3 +2220,214 @@ interactive modeler, OpenSCAD generates 3D models from a script, giving you
 | 
			
		|||
full programmatic control over your models.")
 | 
			
		||||
    (home-page "https://www.openscad.org/")
 | 
			
		||||
    (license license:gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public freecad
 | 
			
		||||
  (package
 | 
			
		||||
    (name "freecad")
 | 
			
		||||
    (version "0.18.3")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/FreeCAD/FreeCAD.git")
 | 
			
		||||
             (commit version)))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1ny29y0h8smg1bwi5yn4kcnyfprqh3v7v2z8837cmmhcwp8dr95m"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("doxygen" ,doxygen)
 | 
			
		||||
       ("graphviz" ,graphviz)
 | 
			
		||||
       ("qttools" ,qttools)
 | 
			
		||||
       ("pkg-config" ,pkg-config)
 | 
			
		||||
       ("swig" ,swig)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("boost" ,boost)
 | 
			
		||||
       ("coin3D" ,coin3D)
 | 
			
		||||
       ("eigen" ,eigen)
 | 
			
		||||
       ("freetype" ,freetype)
 | 
			
		||||
       ("glew" ,glew)
 | 
			
		||||
       ("hdf5" ,hdf5-1.10)
 | 
			
		||||
       ("libarea" ,libarea)
 | 
			
		||||
       ("libmedfile" ,libmedfile)
 | 
			
		||||
       ("libspnav" ,libspnav)
 | 
			
		||||
       ("libxi" ,libxi)
 | 
			
		||||
       ("libxmu" ,libxmu)
 | 
			
		||||
       ("openmpi" ,openmpi)
 | 
			
		||||
       ("opencascade-occt" ,opencascade-occt)
 | 
			
		||||
       ("python-matplotlib" ,python-matplotlib)
 | 
			
		||||
       ("python-pyside-2" ,python-pyside-2)
 | 
			
		||||
       ("python-pyside-2-tools" ,python-pyside-2-tools)
 | 
			
		||||
       ("python-shiboken-2" ,python-shiboken-2)
 | 
			
		||||
       ("python-wrapper" ,python-wrapper)
 | 
			
		||||
       ("qtbase" ,qtbase)
 | 
			
		||||
       ("qtsvg" ,qtsvg)
 | 
			
		||||
       ("qtx11extras" ,qtx11extras)
 | 
			
		||||
       ("qtxmlpatterns" ,qtxmlpatterns)
 | 
			
		||||
       ;; qtwebkit is optional. We remove it currently, because it takes
 | 
			
		||||
       ;; much time to compile and substitutes are often unavailable
 | 
			
		||||
       ;;("qtwebkit" ,qtwebkit)
 | 
			
		||||
       ("tbb" ,tbb)
 | 
			
		||||
       ("vtk" ,vtk)
 | 
			
		||||
       ("xerces-c" ,xerces-c)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f
 | 
			
		||||
       #:configure-flags
 | 
			
		||||
       (list
 | 
			
		||||
        "-DBUILD_QT5=ON"
 | 
			
		||||
        (string-append "-DCMAKE_INSTALL_LIBDIR="
 | 
			
		||||
                       (assoc-ref %outputs "out") "/lib"))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before 'configure 'restore-pythonpath
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "src/Main/MainGui.cpp"
 | 
			
		||||
               (("_?putenv\\(\"PYTHONPATH=\"\\);") ""))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'install 'wrap-pythonpath
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let ((out (assoc-ref outputs "out")))
 | 
			
		||||
               (wrap-program (string-append out "/bin/FreeCAD")
 | 
			
		||||
                 (list "PYTHONPATH"
 | 
			
		||||
                       'prefix (list (getenv "PYTHONPATH")))))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (home-page "https://www.freecadweb.org/")
 | 
			
		||||
    (synopsis "Your Own 3D Parametric Modeler")
 | 
			
		||||
    (description
 | 
			
		||||
     "FreeCAD is a general purpose feature-based, parametric 3D modeler for
 | 
			
		||||
CAD, MCAD, CAx, CAE and PLM, aimed directly at mechanical engineering and
 | 
			
		||||
product design but also fits a wider range of uses in engineering, such as
 | 
			
		||||
architecture or other engineering specialties.  It is 100% Open Source (LGPL2+
 | 
			
		||||
license) and extremely modular, allowing for very advanced extension and
 | 
			
		||||
customization.")
 | 
			
		||||
    (license
 | 
			
		||||
     (list
 | 
			
		||||
      license:lgpl2.1+
 | 
			
		||||
      license:lgpl2.0+
 | 
			
		||||
      license:gpl3+
 | 
			
		||||
      license:bsd-3))))
 | 
			
		||||
 | 
			
		||||
(define-public libmedfile
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libmedfile")
 | 
			
		||||
    (version "4.0.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append
 | 
			
		||||
             "https://files.salome-platform.org/Salome/other/med-"
 | 
			
		||||
             version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "017h9p0x533fm4gn6pwc8kmp72rvqmcn6vznx72nkkl2b05yjx54"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (inputs `(("hdf5" ,hdf5-1.10)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'install 'remove-test-output
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let ((out (assoc-ref outputs "out")))
 | 
			
		||||
               (delete-file-recursively
 | 
			
		||||
                (string-append out "/bin/testc"))
 | 
			
		||||
               #t))))))
 | 
			
		||||
    (home-page "https://www.salome-platform.org")
 | 
			
		||||
    (synopsis "Library to read and write MED files")
 | 
			
		||||
    (description
 | 
			
		||||
     "The purpose of the MED module is to provide a standard for storing and
 | 
			
		||||
recovering computer data associated to numerical meshes and fields, and to
 | 
			
		||||
facilitate the exchange between codes and solvers.
 | 
			
		||||
 | 
			
		||||
The persistent data storage is based upon HDF format (like CGNS, a standard
 | 
			
		||||
developed by Boeing and NASA in the area of Computational Fluid Dynamic).
 | 
			
		||||
 | 
			
		||||
MED also provides structures to hold data on meshes and fields.  These
 | 
			
		||||
structures are exchanged between solvers, hide the communication level (CORBA
 | 
			
		||||
or MPI), and offer persistence (read/write in .med files).
 | 
			
		||||
 | 
			
		||||
The main benefit of a common exchange format is reduced complexity of code
 | 
			
		||||
coupling.  It also allows sharing such high level functionalities as
 | 
			
		||||
computation of nodal connectivity of sub-elements (faces and edges),
 | 
			
		||||
arithmetic operations on fields, entity location functionalities, and
 | 
			
		||||
interpolation toolkit.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public libarea
 | 
			
		||||
  (let ((revision "1")
 | 
			
		||||
        (commit "8f8bac811c10f1f01fda0d742a18591f61dd76ee"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "libarea")
 | 
			
		||||
      (version (git-version "0" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference (url "https://github.com/Heeks/libarea.git")
 | 
			
		||||
                             (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32 "0pvqz6cabxqdz5y26wnj6alkn8v5d7gkx0d3h8xmg4lvy9r3kh3g"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      (inputs `(("boost" ,boost)
 | 
			
		||||
                ("python-wrapper" ,python-wrapper)))
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("cmake" ,cmake)))
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:tests? #f
 | 
			
		||||
         #:phases
 | 
			
		||||
         (modify-phases %standard-phases
 | 
			
		||||
           (add-after 'configure 'cmake-configure
 | 
			
		||||
             (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
               (let ((out (assoc-ref outputs "out"))
 | 
			
		||||
                     (cmake (assoc-ref inputs "cmake")))
 | 
			
		||||
                 (mkdir-p "build")
 | 
			
		||||
                 (invoke "cmake"
 | 
			
		||||
                         (string-append "-DCMAKE_INSTALL_PREFIX=" out)))))
 | 
			
		||||
           (delete 'configure))))
 | 
			
		||||
      (home-page "https://github.com/Heeks/libarea")
 | 
			
		||||
      (synopsis
 | 
			
		||||
       "Library and python module for pocketing and profiling operations")
 | 
			
		||||
      (description
 | 
			
		||||
       "Area is a CAM-related software for pocketing operation.
 | 
			
		||||
 | 
			
		||||
This project provides library and associated python-module to compute pocket
 | 
			
		||||
operations.")
 | 
			
		||||
      (license (list
 | 
			
		||||
                license:bsd-3
 | 
			
		||||
                license:gpl3+)))))
 | 
			
		||||
 | 
			
		||||
(define-public libspnav
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libspnav")
 | 
			
		||||
    (version "0.2.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/FreeSpacenav/libspnav.git")
 | 
			
		||||
                    (commit (string-append "libspnav-" version))))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "098h1jhlj87axpza5zgy58prp0zn94wyrbch6x0s7q4mzh7dc8ba"))
 | 
			
		||||
              (file-name (git-file-name name version))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libx11" ,libx11)))
 | 
			
		||||
    (arguments `(#:tests? #f))
 | 
			
		||||
    (home-page "http://spacenav.sourceforge.net/")
 | 
			
		||||
    (synopsis
 | 
			
		||||
     "Library for communicating with spacenavd or 3dxsrv")
 | 
			
		||||
    (description
 | 
			
		||||
     "The libspnav library is provided as a replacement of the magellan
 | 
			
		||||
library.  It provides a cleaner, and more orthogonal interface.  libspnav
 | 
			
		||||
supports both the original X11 protocol for communicating with the driver, and
 | 
			
		||||
the new alternative non-X protocol.  Programs that choose to use the X11
 | 
			
		||||
protocol, are automatically compatible with either the free spacenavd driver
 | 
			
		||||
or the official 3dxserv, as if they were using the magellan SDK.
 | 
			
		||||
 | 
			
		||||
Also, libspnav provides a magellan API wrapper on top of the new API.  So, any
 | 
			
		||||
applications that were using the magellan library, can switch to libspnav
 | 
			
		||||
without any changes.  And programmers that are familliar with the magellan API
 | 
			
		||||
can continue using it with a free library without the restrictions of the
 | 
			
		||||
official SDK.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,6 +29,7 @@
 | 
			
		|||
  #:use-module (guix build-system meson)
 | 
			
		||||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (gnu packages avahi)
 | 
			
		||||
  #:use-module (gnu packages bash)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages code)
 | 
			
		||||
| 
						 | 
				
			
			@ -45,6 +46,7 @@
 | 
			
		|||
  #:use-module (gnu packages gnome)
 | 
			
		||||
  #:use-module (gnu packages gstreamer)
 | 
			
		||||
  #:use-module (gnu packages gtk)
 | 
			
		||||
  #:use-module (gnu packages ibus)
 | 
			
		||||
  #:use-module (gnu packages image)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages llvm)
 | 
			
		||||
| 
						 | 
				
			
			@ -65,7 +67,7 @@
 | 
			
		|||
(define-public efl
 | 
			
		||||
  (package
 | 
			
		||||
    (name "efl")
 | 
			
		||||
    (version "1.22.4")
 | 
			
		||||
    (version "1.23.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -73,28 +75,22 @@
 | 
			
		|||
                    version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "084ihxy6g86yczhln5vn1amxi4qzqhvk4lpz9005kx92i6wh4h25"))))
 | 
			
		||||
    (outputs '("out"       ; 53 MB
 | 
			
		||||
               "include")) ; 21 MB
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
                "1iawq5k1ggas41h3vrwc0y98hf83vr0vh3phfgw22iij3cb2b5nd"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)))
 | 
			
		||||
     `(("check" ,check)
 | 
			
		||||
       ("gettext" ,gettext-minimal)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("alsa-lib" ,alsa-lib)
 | 
			
		||||
       ("curl" ,curl)
 | 
			
		||||
       ("ghostscript" ,ghostscript)
 | 
			
		||||
     `(("curl" ,curl)
 | 
			
		||||
       ("giflib" ,giflib)
 | 
			
		||||
       ("gstreamer" ,gstreamer)
 | 
			
		||||
       ("gst-plugins-base" ,gst-plugins-base)
 | 
			
		||||
       ("libexif" ,libexif)
 | 
			
		||||
       ("libjpeg" ,libjpeg)
 | 
			
		||||
       ("ibus" ,ibus)
 | 
			
		||||
       ("mesa" ,mesa)
 | 
			
		||||
       ("libraw" ,libraw)
 | 
			
		||||
       ("librsvg" ,librsvg)
 | 
			
		||||
       ("libsndfile" ,libsndfile)
 | 
			
		||||
       ("libspectre" ,libspectre)
 | 
			
		||||
       ("libtiff" ,libtiff)
 | 
			
		||||
       ("libwebp" ,libwebp)
 | 
			
		||||
       ("libx11" ,libx11)
 | 
			
		||||
       ("libxau" ,libxau)
 | 
			
		||||
       ("libxcomposite" ,libxcomposite)
 | 
			
		||||
       ("libxcursor" ,libxcursor)
 | 
			
		||||
| 
						 | 
				
			
			@ -107,55 +103,59 @@
 | 
			
		|||
       ("libxp" ,libxp)
 | 
			
		||||
       ("libxrandr" ,libxrandr)
 | 
			
		||||
       ("libxrender" ,libxrender)
 | 
			
		||||
       ("libxscrnsaver" ,libxscrnsaver)
 | 
			
		||||
       ("libxss" ,libxscrnsaver)
 | 
			
		||||
       ("libxtst" ,libxtst)
 | 
			
		||||
       ("lz4" ,lz4)
 | 
			
		||||
       ("openjpeg" ,openjpeg-1)
 | 
			
		||||
       ("poppler" ,poppler)
 | 
			
		||||
       ("printproto" ,printproto)
 | 
			
		||||
       ("pulseaudio" ,pulseaudio)
 | 
			
		||||
       ("wayland-protocols" ,wayland-protocols)
 | 
			
		||||
       ("xinput" ,xinput)
 | 
			
		||||
       ("xpr" ,xpr)
 | 
			
		||||
       ("xorgproto" ,xorgproto)))
 | 
			
		||||
       ("wayland-protocols" ,wayland-protocols)))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     ;; All these inputs are in package config files in section
 | 
			
		||||
     ;; Requires.private.
 | 
			
		||||
     `(("bullet" ,bullet) ; ephysics.pc
 | 
			
		||||
       ("dbus" ,dbus) ; eldbus.pc, elementary.pc, elocation.pc, ethumb_client.pc
 | 
			
		||||
       ("eudev" ,eudev) ; eeze.pc
 | 
			
		||||
       ("fontconfig" ,fontconfig) ; evas.pc, evas-cxx.pc
 | 
			
		||||
       ("freetype" ,freetype) ; evas.pc, evas-cxx.pc
 | 
			
		||||
       ("fribidi" ,fribidi) ; evas.pc, evas-cxx.pc
 | 
			
		||||
       ("glib" ,glib) ; ecore.pc, ecore-cxx.pc
 | 
			
		||||
       ("harfbuzz" ,harfbuzz) ; evas.pc, evas-cxx.pc
 | 
			
		||||
       ("luajit" ,luajit) ; elua.pc, evas.pc, evas-cxx.pc
 | 
			
		||||
       ("libinput" ,libinput-minimal) ; elput.pc
 | 
			
		||||
       ("libpng" ,libpng) ; evas.pc, evas-cxx.pc
 | 
			
		||||
       ("libxkbcommon" ,libxkbcommon) ; ecore-wl2.pc, elementary.pc, elput.pc
 | 
			
		||||
       ("mesa" ,mesa) ; ecore-drm2.pc
 | 
			
		||||
       ("openssl" ,openssl) ; ecore-con.pc, eet.pc, eet-cxx.pc, emile.pc
 | 
			
		||||
       ("util-linux" ,util-linux) ; mount: eeze.pc
 | 
			
		||||
       ("wayland" ,wayland) ; ecore-wl2.pc, elementary.pc
 | 
			
		||||
       ("zlib" ,zlib))) ; eet.pc, eet-cxx.pc, emile.pc
 | 
			
		||||
     `(("avahi" ,avahi)
 | 
			
		||||
       ("bullet" ,bullet)
 | 
			
		||||
       ("dbus" ,dbus)
 | 
			
		||||
       ("elogind" ,elogind)
 | 
			
		||||
       ("eudev" ,eudev)
 | 
			
		||||
       ("fontconfig" ,fontconfig)
 | 
			
		||||
       ("freetype" ,freetype)
 | 
			
		||||
       ("fribidi" ,fribidi)
 | 
			
		||||
       ("glib" ,glib)
 | 
			
		||||
       ("harfbuzz" ,harfbuzz)
 | 
			
		||||
       ("luajit" ,luajit)
 | 
			
		||||
       ("libinput" ,libinput-minimal)
 | 
			
		||||
       ("libjpeg" ,libjpeg)
 | 
			
		||||
       ("libpng" ,libpng)
 | 
			
		||||
       ("libsndfile" ,libsndfile)
 | 
			
		||||
       ("libtiff" ,libtiff)
 | 
			
		||||
       ("libwebp" ,libwebp)
 | 
			
		||||
       ("libx11" ,libx11)
 | 
			
		||||
       ("libxkbcommon" ,libxkbcommon)
 | 
			
		||||
       ("lz4" ,lz4)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("pulseaudio" ,pulseaudio)
 | 
			
		||||
       ("util-linux" ,util-linux)
 | 
			
		||||
       ("wayland" ,wayland)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:configure-flags '("--disable-silent-rules"
 | 
			
		||||
                           "--disable-systemd"
 | 
			
		||||
                           "--with-profile=release"
 | 
			
		||||
                           "--enable-liblz4"
 | 
			
		||||
                           "--enable-xinput22"
 | 
			
		||||
                           "--enable-image-loader-webp"
 | 
			
		||||
                           "--enable-multisense"
 | 
			
		||||
     `(#:configure-flags '("-Dsystemd=false"
 | 
			
		||||
                           "-Dembedded-lz4=false"
 | 
			
		||||
                           "-Devas-loaders-disabler=json"
 | 
			
		||||
                           "-Dbuild-examples=false"
 | 
			
		||||
                           ;(string-append "-Ddictionaries-hyphen-dir="
 | 
			
		||||
                           ;               (assoc-ref %build-inputs "hyphen")
 | 
			
		||||
                           ;               "/share/hyphen")
 | 
			
		||||
                           "-Delogind=true"
 | 
			
		||||
                           "-Dnetwork-backend=connman"
 | 
			
		||||
                           ,@(match (%current-system)
 | 
			
		||||
                               ("armhf-linux"
 | 
			
		||||
                                '("--with-opengl=es" "--with-egl"))
 | 
			
		||||
                                '("-opengl=es-egl"))
 | 
			
		||||
                               (_
 | 
			
		||||
                                '("--with-opengl=full")))
 | 
			
		||||
                           "--enable-harfbuzz"
 | 
			
		||||
                                '("-Dopengl=full")))
 | 
			
		||||
                           ;; for wayland
 | 
			
		||||
                           "--enable-wayland"
 | 
			
		||||
                           "--enable-elput"
 | 
			
		||||
                           "--enable-drm")
 | 
			
		||||
                           "-Dwl-deprecated=true" ; ecore_wayland
 | 
			
		||||
                           "-Ddrm-deprecated=true" ; ecore_drm
 | 
			
		||||
                           "-Dwl=true"
 | 
			
		||||
                           "-Ddrm=true")
 | 
			
		||||
       #:tests? #f ; Many tests fail due to timeouts and network requests.
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         ;; If we don't hardcode the location of libcurl.so then we
 | 
			
		||||
| 
						 | 
				
			
			@ -168,6 +168,14 @@
 | 
			
		|||
                 (("libcurl.so.?" libcurl) ; libcurl.so.[45]
 | 
			
		||||
                  (string-append lib libcurl)))
 | 
			
		||||
               #t)))
 | 
			
		||||
         (add-after 'unpack 'fix-install-paths
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "dbus-services/meson.build"
 | 
			
		||||
               (("install_dir.*")
 | 
			
		||||
                "install_dir: join_paths(dir_data, 'dbus-1', 'services'))\n"))
 | 
			
		||||
             (substitute* "src/tests/elementary/meson.build"
 | 
			
		||||
               (("dir_data") "meson.source_root(), 'test-output'"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'unpack 'set-home-directory
 | 
			
		||||
           ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
 | 
			
		||||
           (lambda _ (setenv "HOME" "/tmp") #t)))))
 | 
			
		||||
| 
						 | 
				
			
			@ -273,7 +281,7 @@ Libraries with some extra bells and whistles.")
 | 
			
		|||
(define-public enlightenment
 | 
			
		||||
  (package
 | 
			
		||||
    (name "enlightenment")
 | 
			
		||||
    (version "0.23.0")
 | 
			
		||||
    (version "0.23.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri
 | 
			
		||||
| 
						 | 
				
			
			@ -281,7 +289,7 @@ Libraries with some extra bells and whistles.")
 | 
			
		|||
                              "enlightenment/enlightenment-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1y7x594gvyvl5zbb1rnf3clj2pm6j97n8wl5mp9x6xjmhx0d1idq"))
 | 
			
		||||
                "0d1cyl07w9pvi2pf029kablazks2q9aislzl46b6fq5m1465jc75"))
 | 
			
		||||
              (patches (search-patches "enlightenment-fix-setuid-path.patch"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
| 
						 | 
				
			
			@ -531,7 +539,7 @@ directories.
 | 
			
		|||
(define-public evisum
 | 
			
		||||
  (package
 | 
			
		||||
    (name "evisum")
 | 
			
		||||
    (version "0.2.3")
 | 
			
		||||
    (version "0.2.6")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -539,7 +547,7 @@ directories.
 | 
			
		|||
                            "evisum/evisum-" version ".tar.xz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1lj62n896kablsl687c66yxrwajrh6ralb3y6nmcqv34pglnigca"))))
 | 
			
		||||
          "1rg3kri6j8nmab0kdljnmcc096c8ibgwzvbhqr0b25xpmrq8bcac"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f   ; no tests
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2017 Dave Love <fx@gnu.org>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
| 
						 | 
				
			
			@ -43,7 +43,7 @@
 | 
			
		|||
(define-public opensm
 | 
			
		||||
  (package
 | 
			
		||||
    (name "opensm")
 | 
			
		||||
    (version "3.3.21")
 | 
			
		||||
    (version "3.3.22")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -51,7 +51,7 @@
 | 
			
		|||
        (string-append "https://github.com/linux-rdma/opensm/releases/download/"
 | 
			
		||||
                       version "/opensm-" version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "0j4vp118w1l47vs4had46ynybklyacxjlya0r15jg0y01l4j9l2h"))))
 | 
			
		||||
        (base32 "19scwwpwqhqsyq4hbr5cflcmypss828lalxxd36yby7mbimca38y"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -735,14 +735,13 @@ Ledger Nano as a hardware SSH/GPG agent.")
 | 
			
		|||
(define-public python-mnemonic
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-mnemonic")
 | 
			
		||||
    (version "0.18")
 | 
			
		||||
    (version "0.19")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (pypi-uri "mnemonic" version))
 | 
			
		||||
        (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
            "07bzfa5di6nv5xwwcwbypnflpj50wlfczhh6q6hg8w13g5m319q2"))))
 | 
			
		||||
          (base32 "0cd9prmdj8wzdmc7lxbf9lz0xrlkvak5ignag406mmfbn81fndsf"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-pbkdf2" ,python-pbkdf2)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -413,28 +413,25 @@ Management Engine (ME).  You need to @code{sudo rmmod mei_me} and
 | 
			
		|||
(define-public me-cleaner
 | 
			
		||||
  (package
 | 
			
		||||
    (name "me-cleaner")
 | 
			
		||||
    (version "1.1")
 | 
			
		||||
    (version "1.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/corna/me_cleaner/"
 | 
			
		||||
                                  "archive/v" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1pgwdqy0jly80nhxmlmyibs343497yjzs6dwfbkcw0l1gjm8i5hw"))
 | 
			
		||||
                "0hdnay1ai0r6l69z63jkiz6yfwdsqc2mrfyj77hgadv7xxxqm6na"))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'create-setup.py
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (call-with-output-file "setup.py"
 | 
			
		||||
               (lambda (port)
 | 
			
		||||
                 (format port "\
 | 
			
		||||
from setuptools import setup
 | 
			
		||||
setup(name='me_cleaner', version='~a', scripts=['me_cleaner.py'])
 | 
			
		||||
" ,version)))
 | 
			
		||||
             #t)))))
 | 
			
		||||
         (add-after 'install 'install-documentation
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (man (string-append out "/share/man/man1")))
 | 
			
		||||
               (install-file "man/me_cleaner.1" man)
 | 
			
		||||
               #t))))))
 | 
			
		||||
    (home-page "https://github.com/corna/me_cleaner")
 | 
			
		||||
    (synopsis "Intel ME cleaner")
 | 
			
		||||
    (description "This package provides tools for disabling Intel
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1137,7 +1137,7 @@ of use.")
 | 
			
		|||
       ("libxt" ,libxt)
 | 
			
		||||
       ("mygui" ,mygui-gl)              ; OpenMW does not need Ogre.
 | 
			
		||||
       ("openal" ,openal)
 | 
			
		||||
       ("openscenegraph" ,openscenegraph)
 | 
			
		||||
       ("openscenegraph" ,openmw-openscenegraph)
 | 
			
		||||
       ("qtbase" ,qtbase)
 | 
			
		||||
       ("sdl" ,sdl2)
 | 
			
		||||
       ("unshield" ,unshield)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -43,6 +43,7 @@
 | 
			
		|||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
 | 
			
		||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 | 
			
		||||
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -253,34 +254,26 @@ mouse and joystick control, and original music.")
 | 
			
		|||
(define-public alex4
 | 
			
		||||
  (package
 | 
			
		||||
    (name "alex4")
 | 
			
		||||
    (version "1.2-alpha")
 | 
			
		||||
    (version "1.2.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://github.com/carstene1ns/alex4/archive/"
 | 
			
		||||
                           version ".tar.gz"))
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/carstene1ns/alex4.git")
 | 
			
		||||
             (commit version)))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "0jj1g3v1a6lyfwp5g2ly0n9z65ryqck8jxvzr01kaqjj3lsfkrhg"))))
 | 
			
		||||
        (base32 "098wy72mh4lsvq3gm0rhamjssf9l1hp6hhkpzrv7klpb97cwwc3h"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ; no check target
 | 
			
		||||
     `(#:tests? #f                      ; no check target
 | 
			
		||||
       #:make-flags
 | 
			
		||||
       (list "-Csrc"
 | 
			
		||||
             "CC=gcc"
 | 
			
		||||
       (list "CC=gcc"
 | 
			
		||||
             "CFLAGS=-D_FILE_OFFSET_BITS=64"
 | 
			
		||||
             (string-append "DATADIR=" (assoc-ref %outputs "out")
 | 
			
		||||
                            "/share/" ,name)
 | 
			
		||||
             (string-append "PREFIX=" (assoc-ref %outputs "out")))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (replace 'configure
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* '("src/main.c"
 | 
			
		||||
                            "src/shooter.c")
 | 
			
		||||
               (("fcos") "fixcos")
 | 
			
		||||
               (("fmul") "fixmul")
 | 
			
		||||
               (("fsin") "fixsin"))
 | 
			
		||||
             #t))
 | 
			
		||||
         (delete 'configure)            ; no configure script
 | 
			
		||||
         (add-after 'install 'install-data
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let ((share (string-append (assoc-ref outputs "out")
 | 
			
		||||
| 
						 | 
				
			
			@ -2037,6 +2030,126 @@ some of the restrictions in the venerable Z-machine format.  This is the
 | 
			
		|||
reference interpreter, using the Glk API.")
 | 
			
		||||
   (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public fifechan
 | 
			
		||||
  (package
 | 
			
		||||
    (name "fifechan")
 | 
			
		||||
    (version "0.1.5")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://codeload.github.com/fifengine/"
 | 
			
		||||
                                  "fifechan/tar.gz/" version))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0wxs9vz5x9y8chghd8vp7vfk089lfb0qnzggi17zrqkrngs5zgi9"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("sdl2" ,sdl2)
 | 
			
		||||
       ("sdl2-image" ,sdl2-image)
 | 
			
		||||
       ("mesa" ,mesa)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f))                    ; No included tests
 | 
			
		||||
    (home-page "https://fifengine.github.io/fifechan/")
 | 
			
		||||
    (synopsis "Cross platform GUI library specifically for games")
 | 
			
		||||
    (description
 | 
			
		||||
     "Fifechan is a lightweight cross platform GUI library written in C++
 | 
			
		||||
specifically designed for games.  It has a built in set of extendable GUI
 | 
			
		||||
Widgets, and allows users to create more.")
 | 
			
		||||
    (license license:lgpl2.1+)))
 | 
			
		||||
 | 
			
		||||
(define-public fifengine
 | 
			
		||||
  (package
 | 
			
		||||
    (name "fifengine")
 | 
			
		||||
    (version "0.4.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://codeload.github.com/fifengine/"
 | 
			
		||||
                                  "fifengine/tar.gz/" version))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1y4grw25cq5iqlg05rnbyxw1njl11ypidnlsm3qy4sm3xxdvb0p8"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f            ; TODO The test running fails to run some tests.
 | 
			
		||||
       #:modules ((srfi srfi-1)
 | 
			
		||||
                  (guix build cmake-build-system)
 | 
			
		||||
                  (guix build utils))
 | 
			
		||||
       #:configure-flags
 | 
			
		||||
       (list
 | 
			
		||||
        (string-append "-DOPENALSOFT_INCLUDE_DIR="
 | 
			
		||||
                       (assoc-ref %build-inputs "openal")
 | 
			
		||||
                       "/include/AL")
 | 
			
		||||
        (string-append "-DPYTHON_SITE_PACKAGES="
 | 
			
		||||
                       (assoc-ref %outputs "out")
 | 
			
		||||
                       "/lib/python3.7/site-packages"))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'patch-run_tests.py
 | 
			
		||||
           (lambda _
 | 
			
		||||
             ;; Patch the test runner to exit with a status of 1 if any test
 | 
			
		||||
             ;; fails, to allow detecting failures.
 | 
			
		||||
             (substitute* "run_tests.py"
 | 
			
		||||
               (("ERROR\\. One or more tests failed!'\\)")
 | 
			
		||||
                "ERROR. One or more tests failed!')
 | 
			
		||||
\t\texit(1)"))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; Run tests after installation so that we can make use of the built
 | 
			
		||||
         ;; python modules.
 | 
			
		||||
         (delete 'check)
 | 
			
		||||
         (add-after 'install 'check
 | 
			
		||||
           (lambda* (#:key inputs outputs tests? #:allow-other-keys)
 | 
			
		||||
             (define python-version
 | 
			
		||||
               (let* ((version     (last (string-split
 | 
			
		||||
                                          (assoc-ref inputs "python")
 | 
			
		||||
                                          #\-)))
 | 
			
		||||
                      (components  (string-split version #\.))
 | 
			
		||||
                      (major+minor (take components 2)))
 | 
			
		||||
                 (string-join major+minor ".")))
 | 
			
		||||
 | 
			
		||||
             (when tests?
 | 
			
		||||
               ;; Set PYTHONPATH so that python finds the installed modules.
 | 
			
		||||
               (setenv "PYTHONPATH"
 | 
			
		||||
                       (string-append (getenv "PYTHONPATH") ":"
 | 
			
		||||
                                      (assoc-ref outputs "out")
 | 
			
		||||
                                      "/lib/python"
 | 
			
		||||
                                      python-version
 | 
			
		||||
                                      "/site-packages"))
 | 
			
		||||
               ;; The tests require an X server.
 | 
			
		||||
               (system "Xvfb :1 &")
 | 
			
		||||
               (setenv "DISPLAY" ":1")
 | 
			
		||||
               (setenv "XDG_RUNTIME_DIR" "/tmp")
 | 
			
		||||
               ;; Run tests
 | 
			
		||||
               (chdir ,(string-append "../" name "-" version))
 | 
			
		||||
               (invoke "python3" "run_tests.py" "-a"))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("sdl2" ,sdl2)
 | 
			
		||||
       ("sdl2-image" ,sdl2-image)
 | 
			
		||||
       ("sdl2-ttf" ,sdl2-ttf)
 | 
			
		||||
       ("tinyxml" ,tinyxml)
 | 
			
		||||
       ("openal" ,openal)
 | 
			
		||||
       ("libogg" ,libogg)
 | 
			
		||||
       ("glew" ,glew)
 | 
			
		||||
       ("libvorbis" ,libvorbis)
 | 
			
		||||
       ("boost" ,boost)
 | 
			
		||||
       ("fifechan" ,fifechan)
 | 
			
		||||
       ("swig" ,swig)
 | 
			
		||||
       ("python" ,python)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python" ,python)
 | 
			
		||||
       ("swig" ,swig)
 | 
			
		||||
       ("xvfb" ,xorg-server)))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-future" ,python-future)))
 | 
			
		||||
    (home-page "https://www.fifengine.net/")
 | 
			
		||||
    (synopsis "FIFE is a multi-platform isometric game engine written in C++")
 | 
			
		||||
    (description
 | 
			
		||||
     "@acronym{FIFE, Flexible Isometric Free Engine} is a multi-platform
 | 
			
		||||
isometric game engine.  Python bindings are included allowing users to create
 | 
			
		||||
games using Python as well as C++.")
 | 
			
		||||
    (license license:lgpl2.1+)))
 | 
			
		||||
 | 
			
		||||
(define-public fizmo
 | 
			
		||||
  (package
 | 
			
		||||
    (name "fizmo")
 | 
			
		||||
| 
						 | 
				
			
			@ -2196,6 +2309,78 @@ against each other or just trying to beat the computer; single-player mode is
 | 
			
		|||
also available.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public unknown-horizons
 | 
			
		||||
  (package
 | 
			
		||||
    (name "unknown-horizons")
 | 
			
		||||
    (version "2019.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://codeload.github.com/unknown-horizons/"
 | 
			
		||||
                                  "unknown-horizons/tar.gz/" version))
 | 
			
		||||
              (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1n747p7h0qp48szgp262swg0xh8kxy1bw8ag1qczs4i26hyzs5x4"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before 'build 'set-HOME
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (setenv "HOME" "/tmp")))
 | 
			
		||||
         (add-after 'build 'build-extra
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (invoke "python3" "./setup.py" "build_i18n")
 | 
			
		||||
             (invoke "python3" "horizons/engine/generate_atlases.py" "2048")
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'install 'patch
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let ((out (assoc-ref outputs "out")))
 | 
			
		||||
               (substitute* (string-append out "/bin/unknown-horizons")
 | 
			
		||||
                 (("os\\.chdir\\(get\\_content\\_dir\\_parent_path\\(\\)\\)")
 | 
			
		||||
                  (string-append "os.chdir(\""
 | 
			
		||||
                                 (assoc-ref outputs "out")
 | 
			
		||||
                                 "/share/unknown-horizons\")"))))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; TODO: Run GUI tests as well
 | 
			
		||||
         (replace 'check
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "horizons/constants.py"
 | 
			
		||||
               (("IS_DEV_VERSION = False")
 | 
			
		||||
                "IS_DEV_VERSION = True"))
 | 
			
		||||
             (invoke "pytest" "tests")
 | 
			
		||||
             (substitute* "horizons/constants.py"
 | 
			
		||||
               (("IS_DEV_VERSION = True")
 | 
			
		||||
                "IS_DEV_VERSION = False"))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("fifengine" ,fifengine)
 | 
			
		||||
       ("python:tk" ,python "tk")
 | 
			
		||||
       ("python-pillow" ,python-pillow)
 | 
			
		||||
       ("python-pyyaml" ,python-pyyaml)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("intltool" ,intltool)
 | 
			
		||||
 | 
			
		||||
       ;; Required for tests
 | 
			
		||||
       ("python-greenlet" ,python-greenlet)
 | 
			
		||||
       ("python-polib" ,python-polib)
 | 
			
		||||
       ("python-pytest" ,python-pytest)
 | 
			
		||||
       ("python-pytest-mock" ,python-pytest-mock)))
 | 
			
		||||
    (home-page "http://unknown-horizons.org/")
 | 
			
		||||
    (synopsis "Isometric realtime strategy, economy and city building simulation")
 | 
			
		||||
    (description
 | 
			
		||||
     "Unknown Horizons is a 2D realtime strategy simulation with an emphasis
 | 
			
		||||
on economy and city building.  Expand your small settlement to a strong and
 | 
			
		||||
wealthy colony, collect taxes and supply your inhabitants with valuable
 | 
			
		||||
goods.  Increase your power with a well balanced economy and with strategic
 | 
			
		||||
trade and diplomacy.")
 | 
			
		||||
    (license (list
 | 
			
		||||
              license:gpl2+        ; Covers code
 | 
			
		||||
              license:expat        ; tests/dummy.py, ext/polib.py
 | 
			
		||||
              license:cc-by-sa3.0  ; Covers some media content
 | 
			
		||||
              license:cc-by3.0     ; Covers some media content
 | 
			
		||||
              license:bsd-3))))    ; horizons/ext/speaklater.py
 | 
			
		||||
 | 
			
		||||
(define-public gnujump
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gnujump")
 | 
			
		||||
| 
						 | 
				
			
			@ -2250,7 +2435,7 @@ falling, themeable graphics and sounds, and replays.")
 | 
			
		|||
(define-public wesnoth
 | 
			
		||||
  (package
 | 
			
		||||
    (name "wesnoth")
 | 
			
		||||
    (version "1.14.7")
 | 
			
		||||
    (version "1.14.9")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
 | 
			
		||||
| 
						 | 
				
			
			@ -2259,10 +2444,23 @@ falling, themeable graphics and sounds, and replays.")
 | 
			
		|||
                                  "wesnoth-" version ".tar.bz2"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0j2yvkcggj5k0r2cqk8ndnj77m37a00srfd9qg7pdpqffbinqpj7"))))
 | 
			
		||||
                "1mhdrlflxxyknf54lwdbvs7fazlc1scf7z6vxxa3j746fks533ga"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f))                    ; no check target
 | 
			
		||||
     `(#:tests? #f                      ;no check target
 | 
			
		||||
       #:phases (modify-phases %standard-phases
 | 
			
		||||
                  (add-before 'configure 'treat-boost-as-system-header
 | 
			
		||||
                    (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
                      (let ((boost (assoc-ref inputs "boost")))
 | 
			
		||||
                        ;; Ensure Boost is treated as "system headers" to
 | 
			
		||||
                        ;; pacify compiler warnings induced by Boost headers.
 | 
			
		||||
                        (for-each (lambda (variable)
 | 
			
		||||
                                    (setenv variable
 | 
			
		||||
                                            (string-append boost "/include:"
 | 
			
		||||
                                                           (or (getenv variable)
 | 
			
		||||
                                                               ""))))
 | 
			
		||||
                                  '("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
 | 
			
		||||
                        #t))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("gettext" ,gettext-minimal)
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
| 
						 | 
				
			
			@ -6124,7 +6322,7 @@ when packaged in Blorb container files or optionally from individual files.")
 | 
			
		|||
(define-public libmanette
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libmanette")
 | 
			
		||||
    (version "0.2.2")
 | 
			
		||||
    (version "0.2.3")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/libmanette/"
 | 
			
		||||
| 
						 | 
				
			
			@ -6132,7 +6330,7 @@ when packaged in Blorb container files or optionally from individual files.")
 | 
			
		|||
                                  "libmanette-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1lpprk2qz1lsqf9xj6kj2ciyc1zmjhj5lwd584qkh7jgz2x9y6wb"))))
 | 
			
		||||
                "1zxh7jn2zg7hivmal5zxam6fxvjsd1w6hlw0m2kysk76b8anbw60"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("glib" ,glib "bin")             ; for glib-compile-resources
 | 
			
		||||
| 
						 | 
				
			
			@ -6193,7 +6391,7 @@ your score gets higher, you level up and the blocks fall faster.")
 | 
			
		|||
(define-public endless-sky
 | 
			
		||||
  (package
 | 
			
		||||
    (name "endless-sky")
 | 
			
		||||
    (version "0.9.8")
 | 
			
		||||
    (version "0.9.10")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -6203,7 +6401,7 @@ your score gets higher, you level up and the blocks fall faster.")
 | 
			
		|||
        (file-name (git-file-name name version))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0i36lawypikbq8vvzfis1dn7yf6q0d2s1cllshfn7kmjb6pqfi6c"))))
 | 
			
		||||
          "1wax9qhxakydg6bs92d1jy2fki1n9r0wkps1np02y0pvm1fl189i"))))
 | 
			
		||||
    (build-system scons-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:scons ,scons-python2
 | 
			
		||||
| 
						 | 
				
			
			@ -7126,7 +7324,7 @@ simulator.")
 | 
			
		|||
(define-public jumpnbump
 | 
			
		||||
  (package
 | 
			
		||||
    (name "jumpnbump")
 | 
			
		||||
    (version "1.60")
 | 
			
		||||
    (version "1.61")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -7135,7 +7333,7 @@ simulator.")
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0gwi58ck4magvdim8wmxdqnsi0fqdpvqia9kcc7q73nqf34jjz3v"))))
 | 
			
		||||
                "12lwl5sl5n009nb83r8l4lakb9286csqdf1ynpmwwydy17giqsdp"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:make-flags
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -523,14 +523,14 @@ It also includes runtime support libraries for these languages.")))
 | 
			
		|||
(define-public gcc-9
 | 
			
		||||
  (package
 | 
			
		||||
   (inherit gcc-8)
 | 
			
		||||
   (version "9.1.0")
 | 
			
		||||
   (version "9.2.0")
 | 
			
		||||
   (source (origin
 | 
			
		||||
            (method url-fetch)
 | 
			
		||||
            (uri (string-append "mirror://gnu/gcc/gcc-"
 | 
			
		||||
                                version "/gcc-" version ".tar.xz"))
 | 
			
		||||
            (sha256
 | 
			
		||||
             (base32
 | 
			
		||||
              "1817nc2bqdc251k0lpc51cimna7v68xjrnvqzvc50q3ax4s6i9kr"))
 | 
			
		||||
              "01mj3yk7z49i49168hg2cg7qs4bsccrrnv7pjmbdlf8j2a7z0vpa"))
 | 
			
		||||
            (patches (search-patches "gcc-9-strmov-store-file-names.patch"
 | 
			
		||||
                                     "gcc-9-asan-fix-limits-include.patch"
 | 
			
		||||
                                     "gcc-5.0-libvtv-runpath.patch"))))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2013, 2014, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2015, 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -109,14 +109,14 @@ written in C, C++, Ada, Objective-C, Pascal and more.")
 | 
			
		|||
(define-public gdb-8.3
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit gdb-8.2)
 | 
			
		||||
    (version "8.3")
 | 
			
		||||
    (version "8.3.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnu/gdb/gdb-"
 | 
			
		||||
                                  version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0bnpzz0rl672xg5547q5qck2sxi6cnyixmk8bbb4gifw17ipwbw0"))))))
 | 
			
		||||
                "1i2pjwaafrlz7wqm40b4znr77ai32rjsxkpl2az38yyarpbv8m8y"))))))
 | 
			
		||||
 | 
			
		||||
(define-public gdb
 | 
			
		||||
  ;; This is the fixed version that packages depend on.  Update it rarely
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -937,7 +937,7 @@ map display.  Downloads map data from a number of websites, including
 | 
			
		|||
(define-public xygrib
 | 
			
		||||
  (package
 | 
			
		||||
    (name "xygrib")
 | 
			
		||||
    (version "1.2.6")
 | 
			
		||||
    (version "1.2.6.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -946,7 +946,7 @@ map display.  Downloads map data from a number of websites, including
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0qzaaavil2c7mkkai5mg54cv8r452i7psy7cg75qjja96d2d7rbd"))
 | 
			
		||||
                "0xzsm8pr0zjk3f8j880fg5n82jyxn8xf1330qmmq1fqv7rsrg9ia"))
 | 
			
		||||
              (modules '((guix build utils)))
 | 
			
		||||
              (snippet
 | 
			
		||||
               '(begin (delete-file-recursively "data/fonts") #t))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,6 +10,7 @@
 | 
			
		|||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -52,6 +53,7 @@
 | 
			
		|||
  #:use-module (gnu packages xorg)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix hg-download)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system cmake)
 | 
			
		||||
  #:use-module (guix build-system meson)
 | 
			
		||||
| 
						 | 
				
			
			@ -348,7 +350,8 @@ also known as DXTn or DXTC) for Mesa.")
 | 
			
		|||
             (substitute* "src/intel/genxml/gen_pack_header.py"
 | 
			
		||||
               (("/usr/bin/env python2") (which "python")))
 | 
			
		||||
             #t))
 | 
			
		||||
         ,@(if (string-prefix? "i686" (%current-system))
 | 
			
		||||
         ,@(if (string-prefix? "i686" (or (%current-target-system)
 | 
			
		||||
                                          (%current-system)))
 | 
			
		||||
               ;; Disable new test from Mesa 19 that fails on i686.  Upstream
 | 
			
		||||
               ;; report: <https://bugs.freedesktop.org/show_bug.cgi?id=110612>.
 | 
			
		||||
               `((add-after 'unpack 'disable-failing-test
 | 
			
		||||
| 
						 | 
				
			
			@ -809,3 +812,81 @@ applications to 3D accelerator hardware in a dedicated server and displays the
 | 
			
		|||
rendered output interactively to a thin client located elsewhere on the
 | 
			
		||||
network.")
 | 
			
		||||
    (license license:wxwindows3.1+)))
 | 
			
		||||
 | 
			
		||||
(define-public mojoshader
 | 
			
		||||
  (let ((changeset "5887634ea695"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "mojoshader")
 | 
			
		||||
      (version (string-append "20190825" "-" changeset))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method hg-fetch)
 | 
			
		||||
         (uri (hg-reference
 | 
			
		||||
               (url "https://hg.icculus.org/icculus/mojoshader/")
 | 
			
		||||
               (changeset changeset)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32 "0ibl4z1696jiifv9j5drir7jm0b5px0vwkwckbi7cfd46p7p6wcy"))))
 | 
			
		||||
      (arguments
 | 
			
		||||
       ;; Tests only for COMPILER_SUPPORT=ON.
 | 
			
		||||
       `(#:tests? #f
 | 
			
		||||
         #:configure-flags '("-DBUILD_SHARED=ON"
 | 
			
		||||
                             "-DFLIP_VIEWPORT=ON"
 | 
			
		||||
                             "-DDEPTH_CLIPPING=ON")
 | 
			
		||||
         #:phases
 | 
			
		||||
         (modify-phases %standard-phases
 | 
			
		||||
           (replace 'install
 | 
			
		||||
             (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
               (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                      (lib (string-append out "/lib"))
 | 
			
		||||
                      (header (string-append out "/include")))
 | 
			
		||||
                 (install-file "libmojoshader.so" lib)
 | 
			
		||||
                 (for-each (lambda (f)
 | 
			
		||||
                             (install-file f header))
 | 
			
		||||
                           (find-files "../source" "mojoshader.*\\.h$"))
 | 
			
		||||
                 (let ((profiles-header (string-append header "/profiles")))
 | 
			
		||||
                   (mkdir-p profiles-header)
 | 
			
		||||
                   (rename-file (string-append header "/mojoshader_profile.h")
 | 
			
		||||
                                (string-append profiles-header "/mojoshader_profile.h"))))
 | 
			
		||||
               #t)))))
 | 
			
		||||
      (build-system cmake-build-system)
 | 
			
		||||
      (home-page "https://www.icculus.org/mojoshader/")
 | 
			
		||||
      (synopsis "Work with Direct3D shaders on alternate 3D APIs")
 | 
			
		||||
      (description "MojoShader is a library to work with Direct3D shaders on
 | 
			
		||||
alternate 3D APIs and non-Windows platforms.  The primary motivation is moving
 | 
			
		||||
shaders to OpenGL languages on the fly.  The developer deals with \"profiles\"
 | 
			
		||||
that represent various target languages, such as GLSL or ARB_*_program.
 | 
			
		||||
 | 
			
		||||
This allows a developer to manage one set of shaders, presumably written in
 | 
			
		||||
Direct3D HLSL, and use them across multiple rendering backends.  This also
 | 
			
		||||
means that the developer only has to worry about one (offline) compiler to
 | 
			
		||||
manage program complexity, while MojoShader itself deals with the reduced
 | 
			
		||||
complexity of the bytecode at runtime.
 | 
			
		||||
 | 
			
		||||
MojoShader provides both a simple API to convert bytecode to various profiles,
 | 
			
		||||
and (optionally) basic glue to rendering APIs to abstract the management of
 | 
			
		||||
the shaders at runtime.")
 | 
			
		||||
      (license license:zlib))))
 | 
			
		||||
 | 
			
		||||
(define-public mojoshader-with-viewport-flip
 | 
			
		||||
  ;; Changeset c586d4590241 replaced glProgramViewportFlip with
 | 
			
		||||
  ;; glProgramViewportInfo.
 | 
			
		||||
  ;; https://hg.icculus.org/icculus/mojoshader/rev/c586d4590241
 | 
			
		||||
  (let ((changeset "2e37299b13d8"))
 | 
			
		||||
    (package
 | 
			
		||||
      (inherit mojoshader)
 | 
			
		||||
      (name "mojoshader-with-viewport-flip")
 | 
			
		||||
      (version (string-append "20190725" "-" changeset))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method hg-fetch)
 | 
			
		||||
         (uri (hg-reference
 | 
			
		||||
               (url "https://hg.icculus.org/icculus/mojoshader/")
 | 
			
		||||
               (changeset changeset)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32 "0ffws7cqbskxwc3hjsnnzq4r2bbf008kdr3b11pa3kr7dsi50y6i"))))
 | 
			
		||||
      (synopsis "Work with Direct3D shaders on alternate 3D APIs (with viewport flip)")
 | 
			
		||||
      (description "This is the last version of the mojoshader library with
 | 
			
		||||
the glProgramViewportFlip before it was replaced with glProgramViewportInfo.")
 | 
			
		||||
      (license license:zlib))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,6 +11,7 @@
 | 
			
		|||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
 | 
			
		||||
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -549,7 +550,7 @@ by GDBus included in Glib.")
 | 
			
		|||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs `(("pkg-config" ,pkg-config)
 | 
			
		||||
                     ("m4" ,m4)))
 | 
			
		||||
    (home-page "http://libsigc.sourceforge.net/")
 | 
			
		||||
    (home-page "https://libsigcplusplus.github.io/libsigcplusplus/")
 | 
			
		||||
    (synopsis "Type-safe callback system for standard C++")
 | 
			
		||||
    (description
 | 
			
		||||
     "Libsigc++ implements a type-safe callback system for standard C++.  It
 | 
			
		||||
| 
						 | 
				
			
			@ -974,3 +975,37 @@ safe to use from any GObject-Introspectable language.
 | 
			
		|||
Template-GLib allows you to access properties on GObjects as well as call
 | 
			
		||||
simple methods via GObject-Introspection.")
 | 
			
		||||
    (license license:lgpl2.1+)))
 | 
			
		||||
 | 
			
		||||
(define-public xdg-dbus-proxy
 | 
			
		||||
  (package
 | 
			
		||||
    (name "xdg-dbus-proxy")
 | 
			
		||||
    (version "0.1.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/flatpak/xdg-dbus-proxy"
 | 
			
		||||
                                  "/releases/download/" version
 | 
			
		||||
                                  "/xdg-dbus-proxy-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "03sj1h0c2l08xa8phw013fnxr4fgav7l2mkjhzf9xk3dykwxcj8p"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
 | 
			
		||||
       ;; For tests.
 | 
			
		||||
       ("dbus" ,dbus)
 | 
			
		||||
 | 
			
		||||
       ;; These are required to build the manual.
 | 
			
		||||
       ("docbook-xml" ,docbook-xml-4.3)
 | 
			
		||||
       ("docbook-xsl" ,docbook-xsl)
 | 
			
		||||
       ("libxml2" ,libxml2)
 | 
			
		||||
       ("xsltproc" ,libxslt)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("glib" ,glib)))
 | 
			
		||||
    (home-page "https://github.com/flatpak/xdg-dbus-proxy")
 | 
			
		||||
    (synopsis "D-Bus connection proxy")
 | 
			
		||||
    (description
 | 
			
		||||
     "xdg-dbus-proxy is a filtering proxy for D-Bus connections.  It can be
 | 
			
		||||
used to create D-Bus sockets inside a Linux container that forwards requests
 | 
			
		||||
to the host system, optionally with filters applied.")
 | 
			
		||||
    (license license:lgpl2.1+)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2428,7 +2428,10 @@ selection and URL hints.")))
 | 
			
		|||
                "10jya3jyrm18nbw3v410gbkc7677bqamax44pzgd3j15randn76d"))))
 | 
			
		||||
    (build-system glib-or-gtk-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
     ;; Disable -Werror and such, to avoid build failures on compilation
 | 
			
		||||
     ;; warnings.
 | 
			
		||||
     '(#:configure-flags '("--enable-compile-warnings=minimum")
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-before 'install 'skip-gtk-update-icon-cache
 | 
			
		||||
           (lambda _
 | 
			
		||||
| 
						 | 
				
			
			@ -3118,15 +3121,15 @@ permission from user.")
 | 
			
		|||
(define-public geocode-glib
 | 
			
		||||
  (package
 | 
			
		||||
    (name "geocode-glib")
 | 
			
		||||
    (version "3.26.0")
 | 
			
		||||
    (version "3.26.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/geocode-glib/"
 | 
			
		||||
                                  (version-major+minor version) "/"
 | 
			
		||||
                                  name "-" version ".tar.xz"))
 | 
			
		||||
                                  "geocode-glib-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1vmydxs5xizcmaxpkfrq75xpj6pqrpdjizxyb30m00h54yqqch7a"))))
 | 
			
		||||
                "076ydfpyc4n5c9dbqmf26i4pilfi5jpw6cjcgrbgrjbndavnmajv"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -3455,16 +3458,15 @@ throughout GNOME for API documentation).")
 | 
			
		|||
(define-public cogl
 | 
			
		||||
  (package
 | 
			
		||||
    (name "cogl")
 | 
			
		||||
    (version "1.22.2")
 | 
			
		||||
    (version "1.22.4")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "mirror://gnome/sources/" name "/"
 | 
			
		||||
       (uri (string-append "mirror://gnome/sources/cogl/"
 | 
			
		||||
                           (version-major+minor version) "/"
 | 
			
		||||
                           name "-" version ".tar.xz"))
 | 
			
		||||
                           "cogl-" version ".tar.xz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "03f0ha3qk7ca0nnkkcr1garrm1n1vvfqhkz9lwjm592fnv6ii9rr"))))
 | 
			
		||||
        (base32 "1q0drs82a8f6glg1v29bb6g2nf15fw0rvdx3d0rgcgfarfaby5sj"))))
 | 
			
		||||
    ;; NOTE: mutter exports a bundled fork of cogl, so when making changes to
 | 
			
		||||
    ;; cogl, corresponding changes may be appropriate in mutter as well.
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
| 
						 | 
				
			
			@ -3710,15 +3712,15 @@ queries upon that data.")
 | 
			
		|||
(define-public libgnome-games-support
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libgnome-games-support")
 | 
			
		||||
    (version "1.4.2")
 | 
			
		||||
    (version "1.4.4")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/" name "/"
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/libgnome-games-support/"
 | 
			
		||||
                                  (version-major+minor version) "/"
 | 
			
		||||
                                  name "-" version ".tar.xz"))
 | 
			
		||||
                                  "libgnome-games-support-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "02hirpk885jndwarbl3cl5fk7w2z5ziv677csyv1wi2n6rmpn088"))))
 | 
			
		||||
                "1zkbmnrn161p74qg6jhsn9f66yjjzxfm13pl1klv9av8k1bax9pq"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -4624,18 +4626,29 @@ lifting is done by packages like yelp-xsl and itstool.  This package just
 | 
			
		|||
wraps things up in a developer-friendly way.")
 | 
			
		||||
    (license license:gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public yelp-tools/fixed
 | 
			
		||||
  ;; This variant fixes a python-libxml2 crash when processing UTF-8
 | 
			
		||||
  ;; sequences: <https://bugs.gnu.org/37468>.  TODO: Remove this in
 | 
			
		||||
  ;; the next rebuild cycle.
 | 
			
		||||
  (hidden-package
 | 
			
		||||
   (package/inherit
 | 
			
		||||
    yelp-tools
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("itstool" ,itstool/fixed)
 | 
			
		||||
       ,@(alist-delete "itstool" (package-propagated-inputs yelp-tools)))))))
 | 
			
		||||
 | 
			
		||||
(define-public libgee
 | 
			
		||||
  (package
 | 
			
		||||
    (name "libgee")
 | 
			
		||||
    (version "0.20.1")
 | 
			
		||||
    (version "0.20.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/" name "/"
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/libgee/"
 | 
			
		||||
                                  (version-major+minor version) "/"
 | 
			
		||||
                                  name "-" version ".tar.xz"))
 | 
			
		||||
                                  "libgee-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0c26x8gi3ivmhlbqcmiag4jwrkvcy28ld24j55nqr3jikb904a5v"))))
 | 
			
		||||
                "0g1mhl7nidg82v4cikkk8dakzc18hg7wv0dsf2pbyijzfm5mq0wy"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -6549,6 +6562,17 @@ beautifying border effects.")
 | 
			
		|||
        (base32
 | 
			
		||||
         "06f736spn20s7qjsz00xw44v8r8bjhyrz1v3bix6v416jc5jp6ia"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases (modify-phases %standard-phases
 | 
			
		||||
                  (add-before 'configure 'set-glib-minimum-version
 | 
			
		||||
                    (lambda _
 | 
			
		||||
                      ;; Change the minimum required GLib version so that
 | 
			
		||||
                      ;; 'valac' is passed '--target-glib 2.60.0'; failing to
 | 
			
		||||
                      ;; do that, it complains that "55" is not an even
 | 
			
		||||
                      ;; number.  See <https://bugs.gnu.org/37503>.
 | 
			
		||||
                      (substitute* "editor/meson.build"
 | 
			
		||||
                        (("2\\.55\\.1") "2.60.0"))
 | 
			
		||||
                      #t)))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0.
 | 
			
		||||
       ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache
 | 
			
		||||
| 
						 | 
				
			
			@ -7259,9 +7283,9 @@ GLib/GObject code.")
 | 
			
		|||
    (version "3.26.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/" name "/"
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/libgnomekbd/"
 | 
			
		||||
                                  (version-major+minor version)  "/"
 | 
			
		||||
                                  name "-" version ".tar.xz"))
 | 
			
		||||
                                  "libgnomekbd-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0y962ykn3rr9gylj0pwpww7bi20lmhvsw6qvxs5bisbn2mih5jpp"))))
 | 
			
		||||
| 
						 | 
				
			
			@ -8185,7 +8209,7 @@ functionality.")
 | 
			
		|||
(define-public gthumb
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gthumb")
 | 
			
		||||
    (version "3.8.0")
 | 
			
		||||
    (version "3.8.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/gthumb/"
 | 
			
		||||
| 
						 | 
				
			
			@ -8193,7 +8217,7 @@ functionality.")
 | 
			
		|||
                                  "gthumb-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1l2s1facq1r6yvqjqc34aqfzlvb3nhkhn79xisxbbdlgrrxdq52f"))))
 | 
			
		||||
                "184zn79w4s9y1zy42ar31p3jsg8rmkxy8k6iry51nz8aizbcs7jb"))))
 | 
			
		||||
    (build-system meson-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:glib-or-gtk? #t
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -54,7 +54,7 @@
 | 
			
		|||
  ;; directory.
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gnucash")
 | 
			
		||||
    (version "3.5")
 | 
			
		||||
    (version "3.7")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -62,7 +62,7 @@
 | 
			
		|||
                           version "/gnucash-" version ".tar.bz2"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0ibp7g6aknvnkwkin97kv04ipksy3l18dsz9qysjb7h2nr8hnvbp"))))
 | 
			
		||||
         "1d2qi3ny0bxa16ifh3465z1jgn1l0fmqk9dkph4ialw076gv13kb"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("guile" ,guile-2.2)
 | 
			
		||||
| 
						 | 
				
			
			@ -125,13 +125,6 @@
 | 
			
		|||
             (substitute* "libgnucash/scm/price-quotes.scm"
 | 
			
		||||
               (("\"perl\" \"-w\" ") ""))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; The test-stress-options unit test is known to fail, so we disable
 | 
			
		||||
         ;; it (see: https://bugs.gnucash.org/show_bug.cgi?id=796877).
 | 
			
		||||
         (add-after 'unpack 'disable-stress-options-test
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* "gnucash/report/standard-reports/test/CMakeLists.txt"
 | 
			
		||||
               (("test-stress-options.scm") ""))
 | 
			
		||||
             #t))
 | 
			
		||||
         ;; The qof test requires the en_US, en_GB, and fr_FR locales.
 | 
			
		||||
         (add-before 'check 'install-locales
 | 
			
		||||
           (lambda _
 | 
			
		||||
| 
						 | 
				
			
			@ -207,7 +200,7 @@ installed as well as Yelp, the Gnome help browser.")
 | 
			
		|||
                             version "/gnucash-docs-" version revision ".tar.gz"))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "0gjndyms413vilf5nqh39frs1691sxib8l7y9mbvcyirj1f8285k"))))
 | 
			
		||||
           "1h4hm58ikffbhplx4gm8pzm9blfwqa1sz8yc2fqi21vs5v0ijf9r"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      ;; These are native-inputs because they are only required for building the
 | 
			
		||||
      ;; documentation.
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,5 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2013, 2015, 2018 Andreas Enge <andreas@enge.fr>
 | 
			
		||||
;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
 | 
			
		||||
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
| 
						 | 
				
			
			@ -503,6 +503,14 @@ interface (FFI) of Guile.")
 | 
			
		|||
     `(("guile" ,guile-2.0)
 | 
			
		||||
       ,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
 | 
			
		||||
 | 
			
		||||
(define-public guile3.0-gcrypt
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit guile-gcrypt)
 | 
			
		||||
    (name "guile3.0-gcrypt")
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("guile" ,guile-next)
 | 
			
		||||
       ,@(alist-delete "guile" (package-inputs guile-gcrypt))))))
 | 
			
		||||
 | 
			
		||||
(define-public python-gpg
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-gpg")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -31,12 +31,13 @@
 | 
			
		|||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages python-web)
 | 
			
		||||
  #:use-module (gnu packages python-xyz)
 | 
			
		||||
  #:use-module (gnu packages qt))
 | 
			
		||||
  #:use-module (gnu packages qt)
 | 
			
		||||
  #:use-module (gnu packages video))
 | 
			
		||||
 | 
			
		||||
(define-public gpodder
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gpodder")
 | 
			
		||||
    (version "3.10.9")
 | 
			
		||||
    (version "3.10.11")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -45,7 +46,7 @@
 | 
			
		|||
             (commit version)))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1sdmr1sq1d4p492zp9kq3npl7p56yr0pr470z9r6xxcylax5mhfq"))
 | 
			
		||||
         "15f5z3cnch9lpzbz73l4wjykv9n74y8djz5db53la2ql4ihaxfz9"))
 | 
			
		||||
       (file-name (git-file-name name version))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -58,6 +59,7 @@
 | 
			
		|||
       ("python-html5lib" ,python-html5lib)
 | 
			
		||||
       ("python-mygpoclient" ,python-mygpoclient)
 | 
			
		||||
       ("python-podcastparser" ,python-podcastparser)
 | 
			
		||||
       ("youtube-dl" ,youtube-dl)
 | 
			
		||||
       ("xdg-utils" ,xdg-utils)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
| 
						 | 
				
			
			@ -171,7 +171,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
 | 
			
		|||
(define-public gpxsee
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gpxsee")
 | 
			
		||||
    (version "7.8")
 | 
			
		||||
    (version "7.12")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -180,7 +180,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1ymqz4wrl9ghkyyqi2vrnlyvz3fc84s3p8a1dkiqlvyvj360ck9j"))))
 | 
			
		||||
                "0c3axs3mm6xzabwbvy9vgq1sryjpi4h91nwzy9iyv9zjxz7phgzc"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7,13 +7,17 @@
 | 
			
		|||
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
 | 
			
		||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
 | 
			
		||||
;;; Copyright © 2017, 2018 Ben Woodcroft <donttrustben@gmail.com>
 | 
			
		||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;; Copyright © 2018 Alex Kost <alezost@gmail.com>
 | 
			
		||||
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
 | 
			
		||||
;;; Copyright © 2019 Mark H Weaver <mhw@netris.org>
 | 
			
		||||
;;; Copyright © 2019 Carlo Zancanaro <carlo@zancanaro.id.au>
 | 
			
		||||
;;; Copyright © 2019 Steve Sprang <scs@stevesprang.com>
 | 
			
		||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
 | 
			
		||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
 | 
			
		||||
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
 | 
			
		||||
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -75,6 +79,7 @@
 | 
			
		|||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix hg-download)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix utils))
 | 
			
		||||
| 
						 | 
				
			
			@ -325,18 +330,26 @@ many more.")
 | 
			
		|||
(define-public ilmbase
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ilmbase")
 | 
			
		||||
    (version "2.3.0")
 | 
			
		||||
    (version "2.4.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/openexr/openexr/releases"
 | 
			
		||||
                                  "/download/v" version "/ilmbase-"
 | 
			
		||||
                                  version ".tar.gz"))
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/openexr/openexr")
 | 
			
		||||
                    (commit (string-append "v" version))))
 | 
			
		||||
              (file-name (git-file-name "ilmbase" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0qiq5bqq9rxhqjiym2k36sx4vq8adgrz6xf6qwizi9bqm78phsa5"))
 | 
			
		||||
              (patches (search-patches "ilmbase-fix-tests.patch"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (home-page "http://www.openexr.com/")
 | 
			
		||||
                "0g3rz11cvb7gnphp2np9z7bfl7v4dprq4w5hnsvx7yrasgsdyn8s"))
 | 
			
		||||
              (patches (search-patches "ilmbase-fix-tests.patch"
 | 
			
		||||
                                       "ilmbase-openexr-pkg-config.patch"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases (modify-phases %standard-phases
 | 
			
		||||
                  (add-after 'unpack 'change-directory
 | 
			
		||||
                    (lambda _
 | 
			
		||||
                      (chdir "IlmBase")
 | 
			
		||||
                      #t)))))
 | 
			
		||||
    (home-page "https://www.openexr.com/")
 | 
			
		||||
    (synopsis "Utility C++ libraries for threads, maths, and exceptions")
 | 
			
		||||
    (description
 | 
			
		||||
     "IlmBase provides several utility libraries for C++.  Half is a class
 | 
			
		||||
| 
						 | 
				
			
			@ -407,27 +420,26 @@ graphics.")
 | 
			
		|||
(define-public openexr
 | 
			
		||||
  (package
 | 
			
		||||
    (name "openexr")
 | 
			
		||||
    (version "2.3.0")
 | 
			
		||||
    (version (package-version ilmbase))
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/openexr/openexr/releases"
 | 
			
		||||
                                  "/download/v" version "/openexr-"
 | 
			
		||||
                                  version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "19jywbs9qjvsbkvlvzayzi81s976k53wg53vw4xj66lcgylb6v7x"))
 | 
			
		||||
              (inherit (package-source ilmbase))
 | 
			
		||||
              (file-name (git-file-name "openexr" version))
 | 
			
		||||
              (modules '((guix build utils)))
 | 
			
		||||
              (snippet
 | 
			
		||||
               '(begin
 | 
			
		||||
                  (substitute* (find-files "." "tmpDir\\.h")
 | 
			
		||||
                  (substitute* (find-files "OpenEXR" "tmpDir\\.h")
 | 
			
		||||
                    (("\"/var/tmp/\"")
 | 
			
		||||
                     "\"/tmp/\""))
 | 
			
		||||
                  #t))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'disable-broken-test
 | 
			
		||||
         (add-after 'unpack 'change-directory
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (chdir "OpenEXR")
 | 
			
		||||
             #t))
 | 
			
		||||
         (add-after 'change-directory 'disable-broken-test
 | 
			
		||||
           ;; This test fails on i686. Upstream developers suggest that
 | 
			
		||||
           ;; this test is broken on i686 and can be safely disabled:
 | 
			
		||||
           ;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
 | 
			
		||||
| 
						 | 
				
			
			@ -443,7 +455,7 @@ graphics.")
 | 
			
		|||
    (propagated-inputs
 | 
			
		||||
     `(("ilmbase" ,ilmbase)                       ;used in public headers
 | 
			
		||||
       ("zlib" ,zlib)))                           ;OpenEXR.pc reads "-lz"
 | 
			
		||||
    (home-page "http://www.openexr.com")
 | 
			
		||||
    (home-page "https://www.openexr.com/")
 | 
			
		||||
    (synopsis "High-dynamic range file format library")
 | 
			
		||||
    (description
 | 
			
		||||
     "OpenEXR is a high dynamic-range (HDR) image file format developed for
 | 
			
		||||
| 
						 | 
				
			
			@ -510,7 +522,7 @@ visual effects work for film.")
 | 
			
		|||
(define-public openscenegraph
 | 
			
		||||
  (package
 | 
			
		||||
    (name "openscenegraph")
 | 
			
		||||
    (version "3.6.3")
 | 
			
		||||
    (version "3.6.4")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -519,7 +531,7 @@ visual effects work for film.")
 | 
			
		|||
             (commit (string-append "OpenSceneGraph-" version))))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0h32z15sa8sbq276j0iib0n707m8bs4p5ji9z2ah411446paad9q"))
 | 
			
		||||
         "0x8hdbzw0b71j91fzp9cwmy9a7ava8v8wwyj8nxijq942vdx1785"))
 | 
			
		||||
       (file-name (git-file-name name version))))
 | 
			
		||||
    (properties
 | 
			
		||||
     `((upstream-name . "OpenSceneGraph")))
 | 
			
		||||
| 
						 | 
				
			
			@ -538,6 +550,7 @@ visual effects work for film.")
 | 
			
		|||
       ("unzip" ,unzip)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("giflib" ,giflib)
 | 
			
		||||
       ("libjpeg" ,libjpeg)             ; Required for the JPEG texture plugin.
 | 
			
		||||
       ("jasper" ,jasper)
 | 
			
		||||
       ("librsvg" ,librsvg)
 | 
			
		||||
       ("libxrandr" ,libxrandr)
 | 
			
		||||
| 
						 | 
				
			
			@ -579,6 +592,42 @@ virtual reality, scientific visualization and modeling.")
 | 
			
		|||
     `(("libjpeg" ,libjpeg)
 | 
			
		||||
       ,@(package-inputs openscenegraph)))))
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
(define-public openmw-openscenegraph
 | 
			
		||||
  ;; OpenMW prefers its own fork of openscenegraph:
 | 
			
		||||
  ;; https://wiki.openmw.org/index.php?title=Development_Environment_Setup#OpenSceneGraph.
 | 
			
		||||
  (let ((commit "36a962845a2c87a6671fd822157e0729d164e940"))
 | 
			
		||||
    (hidden-package
 | 
			
		||||
     (package
 | 
			
		||||
       (inherit openscenegraph)
 | 
			
		||||
       (version (git-version "3.6" "1" commit))
 | 
			
		||||
       (source
 | 
			
		||||
        (origin
 | 
			
		||||
          (method git-fetch)
 | 
			
		||||
          (uri (git-reference
 | 
			
		||||
                (url "https://github.com/OpenMW/osg/")
 | 
			
		||||
                (commit commit)))
 | 
			
		||||
          (file-name (git-file-name (package-name openscenegraph) version))
 | 
			
		||||
          (sha256
 | 
			
		||||
           (base32
 | 
			
		||||
            "05yhgq3qm5q277y32n5sf36vx5nv5qd3zlhz4csgd3a6190jrnia"))))
 | 
			
		||||
       (arguments
 | 
			
		||||
        (substitute-keyword-arguments (package-arguments openscenegraph)
 | 
			
		||||
          ((#:configure-flags flags)
 | 
			
		||||
           ;; As per the above wiki link, the following plugins are enough:
 | 
			
		||||
           `(append
 | 
			
		||||
             '("-DBUILD_OSG_PLUGINS_BY_DEFAULT=0"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_OSG=1"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_DDS=1"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_TGA=1"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_BMP=1"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_JPEG=1"
 | 
			
		||||
               "-DBUILD_OSG_PLUGIN_PNG=1"
 | 
			
		||||
               "-DBUILD_OSG_DEPRECATED_SERIALIZERS=0"
 | 
			
		||||
               ;; The jpeg plugin requires conversion between integers and booleans
 | 
			
		||||
               "-DCMAKE_CXX_FLAGS=-fpermissive")
 | 
			
		||||
             ,flags))))))))
 | 
			
		||||
 | 
			
		||||
(define-public povray
 | 
			
		||||
  (package
 | 
			
		||||
    (name "povray")
 | 
			
		||||
| 
						 | 
				
			
			@ -867,28 +916,25 @@ rendering SVG graphics.")
 | 
			
		|||
(define-public python-pastel
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-pastel")
 | 
			
		||||
    (version "0.1.0")
 | 
			
		||||
    (version "0.1.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (pypi-uri "pastel" version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1hqbm934n5yjwn31aq8h7shrr0rcy326wrqfc856vyn0gr0sy21i"))))
 | 
			
		||||
         "1qxcrcl8pzh66l8s6hym153mijdhwna0afcsmgca0bj4n80ijfxz"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases (modify-phases %standard-phases
 | 
			
		||||
                  (replace 'check
 | 
			
		||||
                    (lambda _ (invoke "pytest" "pastel" "tests/"))))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python-pytest" ,python-pytest)))
 | 
			
		||||
    (home-page "https://github.com/sdispater/pastel")
 | 
			
		||||
    (synopsis "Library to colorize strings in your terminal")
 | 
			
		||||
    (description "Pastel is a simple library to help you colorize strings in
 | 
			
		||||
your terminal.  It comes bundled with predefined styles:
 | 
			
		||||
@enumerate
 | 
			
		||||
@item info: green
 | 
			
		||||
@item comment: yellow
 | 
			
		||||
@item question: black on cyan
 | 
			
		||||
@item error: white on red
 | 
			
		||||
@end enumerate
 | 
			
		||||
")
 | 
			
		||||
your terminal.")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public python2-pastel
 | 
			
		||||
| 
						 | 
				
			
			@ -1060,3 +1106,54 @@ For example, two shapes can be combined by uniting them, by intersecting them,
 | 
			
		|||
or by subtracting one shape from the other.")
 | 
			
		||||
      (home-page "http://www.opencsg.org/")
 | 
			
		||||
      (license license:gpl2))))
 | 
			
		||||
 | 
			
		||||
(define-public coin3D
 | 
			
		||||
  ;; The ‘4.0.0’ zip archive isn't stable, nor in fact a release.  See:
 | 
			
		||||
  ;; https://bitbucket.org/Coin3D/coin/issues/179/coin-400-srczip-has-been-modified
 | 
			
		||||
  (let ((revision 1)
 | 
			
		||||
        (changeset "ab8d0e47a4de3230a8137feb39c142d6ba45f97d"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "coin3D")
 | 
			
		||||
      (version
 | 
			
		||||
       (simple-format #f "3.1.3-~A-~A" revision (string-take changeset 7)))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method hg-fetch)
 | 
			
		||||
         (uri (hg-reference
 | 
			
		||||
               (url "https://bitbucket.org/Coin3D/coin")
 | 
			
		||||
               (changeset changeset)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32 "1ff44jz6lg4rylljvy69n1hcjh9y6achbv9jpn1cv2sf8cxn3r2j"))
 | 
			
		||||
         (modules '((guix build utils)))
 | 
			
		||||
         (snippet
 | 
			
		||||
          '(begin
 | 
			
		||||
             (for-each delete-file
 | 
			
		||||
                       '("cfg/csubst.exe"
 | 
			
		||||
                         "cfg/wrapmsvc.exe"))
 | 
			
		||||
             #t))))
 | 
			
		||||
      (build-system cmake-build-system)
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("doxygen" ,doxygen)
 | 
			
		||||
         ("graphviz" ,graphviz)))
 | 
			
		||||
      (inputs
 | 
			
		||||
       `(("boost" ,boost)
 | 
			
		||||
         ("freeglut" ,freeglut)
 | 
			
		||||
         ("glew" ,glew)))
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:configure-flags
 | 
			
		||||
         (list
 | 
			
		||||
          "-DCOIN_BUILD_DOCUMENTATION_MAN=ON"
 | 
			
		||||
          (string-append "-DBOOST_ROOT="
 | 
			
		||||
                         (assoc-ref %build-inputs "boost")))))
 | 
			
		||||
      (home-page "https://bitbucket.org/Coin3D/coin/wiki/Home")
 | 
			
		||||
      (synopsis
 | 
			
		||||
       "High-level 3D visualization library with Open Inventor 2.1 API")
 | 
			
		||||
      (description
 | 
			
		||||
       "Coin is a 3D graphics library with an Application Programming Interface
 | 
			
		||||
based on the Open Inventor 2.1 API.  For those who are not familiar with
 | 
			
		||||
Open Inventor, it is a scene-graph based retain-mode rendering and model
 | 
			
		||||
interaction library, written in C++, which has become the de facto
 | 
			
		||||
standard graphics library for 3D visualization and visual simulation
 | 
			
		||||
software in the scientific and engineering community.")
 | 
			
		||||
      (license license:bsd-3))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -286,6 +286,11 @@ developers consider to have good quality code and correct functionality.")
 | 
			
		|||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:tests? #f ; XXX: 13 of 53 tests fail
 | 
			
		||||
 | 
			
		||||
       ;; FIXME: OpenEXR 2.4.0 requires C++ 11 or later.  Remove when the
 | 
			
		||||
       ;; default compiler is >= GCC 5.
 | 
			
		||||
       #:make-flags '("CXXFLAGS=-std=gnu++11")
 | 
			
		||||
 | 
			
		||||
       #:configure-flags
 | 
			
		||||
       (list (string-append "--with-html-dir="
 | 
			
		||||
                            (assoc-ref %outputs "doc")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,7 +12,7 @@
 | 
			
		|||
;;; Copyright © 2016, 2019 Jan Nieuwenhuizen <janneke@gnu.org>
 | 
			
		||||
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
 | 
			
		||||
;;; Copyright © 2017 David Thompson <davet@gnu.org>
 | 
			
		||||
;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
 | 
			
		||||
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
 | 
			
		||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
 | 
			
		||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
| 
						 | 
				
			
			@ -909,7 +909,7 @@ tracker's SOAP service, such as @url{https://bugs.gnu.org}.")
 | 
			
		|||
(define-public guile-email
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-email")
 | 
			
		||||
    (version "0.2.0")
 | 
			
		||||
    (version "0.2.1")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -918,7 +918,7 @@ tracker's SOAP service, such as @url{https://bugs.gnu.org}.")
 | 
			
		|||
             version ".tar.lz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0zgvh2329zrclxfb1lh7dnqrq46jj77l0lx7j9y6y3xgbhd2d9l0"))))
 | 
			
		||||
         "1ph3pb69hr3d8mj05fmbpf5rc67dlm8qnb35cc7cxz8ingvl7kv3"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
| 
						 | 
				
			
			@ -936,8 +936,8 @@ format.")
 | 
			
		|||
    (license license:agpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public guile-debbugs-next
 | 
			
		||||
  (let ((commit "75a331d561c8b6f8efcf16216dab961c17759efe")
 | 
			
		||||
        (revision "1"))
 | 
			
		||||
  (let ((commit "fb0ae064037a38a0d526e08b4ad24c52e205edb9")
 | 
			
		||||
        (revision "2"))
 | 
			
		||||
    (package (inherit guile-debbugs)
 | 
			
		||||
      (name "guile-debbugs")
 | 
			
		||||
      (version (git-version "0.0.3" revision commit))
 | 
			
		||||
| 
						 | 
				
			
			@ -949,7 +949,7 @@ format.")
 | 
			
		|||
                (file-name (git-file-name name version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "0br3mgbw41bpc9x57jlghl0i8dz9nl63r4wzs5l47aqszf84870y"))))
 | 
			
		||||
                  "195sacx2xc1mzzfljj62nfpi8mxn0rc6dabxckizjksnhb5irfwy"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("pkg-config" ,pkg-config)
 | 
			
		||||
| 
						 | 
				
			
			@ -1024,7 +1024,7 @@ microblogging service.")
 | 
			
		|||
(define-public guile-parted
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-parted")
 | 
			
		||||
    (version "0.0.1")
 | 
			
		||||
    (version "0.0.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
| 
						 | 
				
			
			@ -1033,7 +1033,7 @@ microblogging service.")
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1q7425gpjlwi2wvhzq7kw046yyx7v6j6jyzkd1cr861iz34mjwiq"))))
 | 
			
		||||
                "01qmv6xnbbq3wih0dl9bscvca2d7zx7bjiqf35y6dkaqsp8nvdxf"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:make-flags
 | 
			
		||||
| 
						 | 
				
			
			@ -1591,9 +1591,6 @@ many readers as needed).")
 | 
			
		|||
    (home-page "https://www.nongnu.org/guile-reader/")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-reader
 | 
			
		||||
  (deprecated-package "guile2.2-reader" guile-reader))
 | 
			
		||||
 | 
			
		||||
(define-public guile-ncurses
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-ncurses")
 | 
			
		||||
| 
						 | 
				
			
			@ -1689,9 +1686,6 @@ for Guile\".")
 | 
			
		|||
    (name "guile2.0-lib")
 | 
			
		||||
    (inputs `(("guile" ,guile-2.0)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-lib
 | 
			
		||||
  (deprecated-package "guile2.2-lib" guile-lib))
 | 
			
		||||
 | 
			
		||||
(define-public guile-minikanren
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-minikanren")
 | 
			
		||||
| 
						 | 
				
			
			@ -1728,8 +1722,11 @@ See http://minikanren.org/ for more on miniKanren generally.")
 | 
			
		|||
    (name "guile2.0-minikanren")
 | 
			
		||||
    (native-inputs `(("guile" ,guile-2.0)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-minikanren
 | 
			
		||||
  (deprecated-package "guile2.2-minikanren" guile-minikanren))
 | 
			
		||||
(define-public guile3.0-minikanren
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit guile-minikanren)
 | 
			
		||||
    (name "guile3.0-minikanren")
 | 
			
		||||
    (native-inputs `(("guile" ,guile-next)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile-irregex
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			@ -1777,8 +1774,11 @@ inspired by the SCSH regular expression system.")
 | 
			
		|||
    (name "guile2.0-irregex")
 | 
			
		||||
    (native-inputs `(("guile" ,guile-2.0)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-irregex
 | 
			
		||||
  (deprecated-package "guile2.2-irregex" guile-irregex))
 | 
			
		||||
(define-public guile3.0-irregex
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit guile-irregex)
 | 
			
		||||
    (name "guile3.0-irregex")
 | 
			
		||||
    (native-inputs `(("guile" ,guile-next)))))
 | 
			
		||||
 | 
			
		||||
(define-public haunt
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			@ -1850,9 +1850,6 @@ interface for reading articles in any format.")
 | 
			
		|||
    (name "guile2.0-haunt")
 | 
			
		||||
    (inputs `(("guile" ,guile-2.0)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-haunt
 | 
			
		||||
  (deprecated-package "guile2.2-haunt" haunt))
 | 
			
		||||
 | 
			
		||||
(define-public guile-redis
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-redis")
 | 
			
		||||
| 
						 | 
				
			
			@ -1883,9 +1880,6 @@ key-value cache and store.")
 | 
			
		|||
                     ,@(alist-delete "guile"
 | 
			
		||||
                                     (package-native-inputs guile-redis))))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-redis
 | 
			
		||||
  (deprecated-package "guile2.2-redis" guile-redis))
 | 
			
		||||
 | 
			
		||||
(define-public guile-commonmark
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-commonmark")
 | 
			
		||||
| 
						 | 
				
			
			@ -1919,9 +1913,6 @@ is no support for parsing block and inline level HTML.")
 | 
			
		|||
    (name "guile2.0-commonmark")
 | 
			
		||||
    (inputs `(("guile" ,guile-2.0)))))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-commonmark
 | 
			
		||||
  (deprecated-package "guile2.2-commonmark" guile-commonmark))
 | 
			
		||||
 | 
			
		||||
(define-public mcron
 | 
			
		||||
  (package
 | 
			
		||||
    (name "mcron")
 | 
			
		||||
| 
						 | 
				
			
			@ -2003,8 +1994,8 @@ The picture values can directly be displayed in Geiser.")
 | 
			
		|||
      (license license:lgpl3+))))
 | 
			
		||||
 | 
			
		||||
(define-public guile-studio
 | 
			
		||||
  (let ((commit "e2da64f014942a73996286c4abe3c3b1f8bd220c")
 | 
			
		||||
        (revision "1"))
 | 
			
		||||
  (let ((commit "4d63f3d684f61bf83566745e8572496cdf6daad0")
 | 
			
		||||
        (revision "2"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "guile-studio")
 | 
			
		||||
      (version (git-version "0" revision commit))
 | 
			
		||||
| 
						 | 
				
			
			@ -2015,7 +2006,7 @@ The picture values can directly be displayed in Geiser.")
 | 
			
		|||
                      (commit commit)))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "10v3kw41bzd8c2a6vxgrwbvl216d0k8f5s9h6pm8hahpd03jl7lm"))))
 | 
			
		||||
                  "1d3hhw3c3mk5i87xvfqa643674f08j1jd1rc1pl534gydz529vd5"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:tests? #f                      ; there are none
 | 
			
		||||
| 
						 | 
				
			
			@ -2156,7 +2147,7 @@ chunks can be expressions as well as simple tokens.")
 | 
			
		|||
         ("libtool" ,libtool)
 | 
			
		||||
         ("pkg-config" ,pkg-config)))
 | 
			
		||||
      (home-page "https://gitlab.com/tampe/guile-persist")
 | 
			
		||||
      (synopsis "Persistance programming framework for Guile")
 | 
			
		||||
      (synopsis "Persistence programming framework for Guile")
 | 
			
		||||
      (description
 | 
			
		||||
       "This is a serialization library for serializing objects like classes
 | 
			
		||||
and objects, closures and structs.  This currently does not support
 | 
			
		||||
| 
						 | 
				
			
			@ -2554,3 +2545,67 @@ Emacsy.  It has a small C layer and most browser features are fully
 | 
			
		|||
programmable in Guile.  It has hooks, keymaps, and self documentation
 | 
			
		||||
features.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
 | 
			
		||||
(define-public guile-cv
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-cv")
 | 
			
		||||
    (version "0.2.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnu/guile-cv/guile-cv-"
 | 
			
		||||
                                  version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0qdf0s2h1xj5lbhnc1pfw69i3zg08pqy2y6869b92ydfis8r82j9"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'prepare-build
 | 
			
		||||
           (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
             (substitute* "configure"
 | 
			
		||||
               (("SITEDIR=\"\\$datadir/guile-cv\"")
 | 
			
		||||
                "SITEDIR=\"$datadir/guile/site/$GUILE_EFFECTIVE_VERSION\"")
 | 
			
		||||
               (("SITECCACHEDIR=\"\\$libdir/guile-cv/")
 | 
			
		||||
                "SITECCACHEDIR=\"$libdir/"))
 | 
			
		||||
             (substitute* "cv/init.scm"
 | 
			
		||||
               (("\\(dynamic-link \"libvigra_c\"\\)")
 | 
			
		||||
                (string-append "(dynamic-link \""
 | 
			
		||||
                               (assoc-ref inputs "vigra-c")
 | 
			
		||||
                               "/lib/libvigra_c\")"))
 | 
			
		||||
               (("\\(dynamic-link \"libguile-cv\"\\)")
 | 
			
		||||
                (format #f "~s"
 | 
			
		||||
                        `(dynamic-link
 | 
			
		||||
                          (format #f "~alibguile-cv"
 | 
			
		||||
                                  (if (getenv "GUILE_CV_UNINSTALLED")
 | 
			
		||||
                                      ""
 | 
			
		||||
                                      ,(format #f "~a/lib/"
 | 
			
		||||
                                               (assoc-ref outputs "out"))))))))
 | 
			
		||||
             (setenv "GUILE_CV_UNINSTALLED" "1")
 | 
			
		||||
             ;; Only needed to satisfy the configure script.
 | 
			
		||||
             (setenv "LD_LIBRARY_PATH"
 | 
			
		||||
                     (string-append (assoc-ref inputs "vigra-c") "/lib"))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("vigra" ,vigra)
 | 
			
		||||
       ("vigra-c" ,vigra-c)
 | 
			
		||||
       ("guile" ,guile-2.2)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("texlive" ,(texlive-union (list texlive-booktabs
 | 
			
		||||
                                        texlive-lm
 | 
			
		||||
                                        texlive-siunitx
 | 
			
		||||
                                        texlive-standalone
 | 
			
		||||
                                        texlive-xcolor
 | 
			
		||||
                                        texlive-fonts-iwona)))
 | 
			
		||||
       ("pkg-config" ,pkg-config)))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("guile-lib" ,guile-lib)))
 | 
			
		||||
    (home-page "https://www.gnu.org/software/guile-cv/")
 | 
			
		||||
    (synopsis "Computer vision library for Guile")
 | 
			
		||||
    (description "Guile-CV is a Computer Vision functional programming library
 | 
			
		||||
for the Guile Scheme language.  It is based on Vigra (Vision with Generic
 | 
			
		||||
Algorithms), a C++ image processing and analysis library.  Guile-CV contains
 | 
			
		||||
bindings to Vigra C (a C wrapper to most of the Vigra functionality) and is
 | 
			
		||||
enriched with pure Guile Scheme algorithms, all accessible through a nice,
 | 
			
		||||
clean and easy to use high level API.")
 | 
			
		||||
    (license license:gpl3+)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -258,6 +258,17 @@ without requiring the source code to be rewritten.")
 | 
			
		|||
                  (timeout . 72000)             ;20 hours
 | 
			
		||||
                  (max-silent-time . 36000))))) ;10 hours (needed on ARM
 | 
			
		||||
                                                ;  when heavily loaded)
 | 
			
		||||
(define-public guile-2.2.4
 | 
			
		||||
  (package/inherit
 | 
			
		||||
   guile-2.2
 | 
			
		||||
   (version "2.2.4")
 | 
			
		||||
   (source (origin
 | 
			
		||||
             (inherit (package-source guile-2.2))
 | 
			
		||||
             (uri (string-append "mirror://gnu/guile/guile-" version
 | 
			
		||||
                                 ".tar.xz"))
 | 
			
		||||
             (sha256
 | 
			
		||||
              (base32
 | 
			
		||||
               "07p3g0v2ba2vlfbfidqzlgbhnzdx46wh2rgc5gszq1mjyx5bks6r"))))))
 | 
			
		||||
 | 
			
		||||
(define-public guile-next
 | 
			
		||||
  ;; This is the upcoming Guile 3.0, with JIT support.
 | 
			
		||||
| 
						 | 
				
			
			@ -357,6 +368,10 @@ GNU@tie{}Guile.  Use the @code{(ice-9 readline)} module and call its
 | 
			
		|||
  (package-input-rewriting `((,guile-2.2 . ,guile-2.0))
 | 
			
		||||
                           (guile-variant-package-name "guile2.0")))
 | 
			
		||||
 | 
			
		||||
(define package-for-guile-3.0
 | 
			
		||||
  (package-input-rewriting `((,guile-2.2 . ,guile-next))
 | 
			
		||||
                           (guile-variant-package-name "guile3.0")))
 | 
			
		||||
 | 
			
		||||
(define-public guile-for-guile-emacs
 | 
			
		||||
  (package (inherit guile-2.2)
 | 
			
		||||
    (name "guile-for-guile-emacs")
 | 
			
		||||
| 
						 | 
				
			
			@ -433,9 +448,6 @@ specification.  These are the main features:
 | 
			
		|||
  ;; This is the 1.x branch of Guile-JSON.
 | 
			
		||||
  guile-json)
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-json
 | 
			
		||||
  (deprecated-package "guile2.2-json" guile-json))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.0-json
 | 
			
		||||
  (package-for-guile-2.0 guile-json))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -453,6 +465,9 @@ specification.  These are the main features:
 | 
			
		|||
               (base32
 | 
			
		||||
                "14m6b6g2maw0mkvfm4x63rqb54vgbpn1gcqs715ijw4bikfzlqfz"))))))
 | 
			
		||||
 | 
			
		||||
(define-public guile3.0-json
 | 
			
		||||
  (package-for-guile-3.0 guile-json-3))
 | 
			
		||||
 | 
			
		||||
;; There are two guile-gdbm packages, one using the FFI and one with
 | 
			
		||||
;; direct C bindings, hence the verbose name.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -505,8 +520,8 @@ Guile's foreign function interface.")
 | 
			
		|||
(define-public guile2.0-gdbm-ffi
 | 
			
		||||
  (package-for-guile-2.0 guile-gdbm-ffi))
 | 
			
		||||
 | 
			
		||||
(define-public guile2.2-gdbm-ffi
 | 
			
		||||
  (deprecated-package "guile2.2-gdbm-ffi" guile-gdbm-ffi))
 | 
			
		||||
(define-public guile3.0-gdbm-ffi
 | 
			
		||||
  (package-for-guile-3.0 guile-gdbm-ffi))
 | 
			
		||||
 | 
			
		||||
(define-public guile-sqlite3
 | 
			
		||||
  (package
 | 
			
		||||
| 
						 | 
				
			
			@ -569,6 +584,9 @@ type system, elevating types to first-class status.")
 | 
			
		|||
(define-public guile2.0-bytestructures
 | 
			
		||||
  (package-for-guile-2.0 guile-bytestructures))
 | 
			
		||||
 | 
			
		||||
(define-public guile3.0-bytestructures
 | 
			
		||||
  (package-for-guile-3.0 guile-bytestructures))
 | 
			
		||||
 | 
			
		||||
(define-public guile-git
 | 
			
		||||
  (package
 | 
			
		||||
    (name "guile-git")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -62,6 +62,7 @@
 | 
			
		|||
  #:use-module (guix build-system haskell)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -6070,6 +6071,24 @@ Megaparsec is a feature-rich package that strikes a nice balance between
 | 
			
		|||
speed, flexibility, and quality of parse errors.")
 | 
			
		||||
    (license license:bsd-2)))
 | 
			
		||||
 | 
			
		||||
;;; Idris 1.3.2 requires 'megaparse>=7.0.4' but we'd like to keep the public
 | 
			
		||||
;;; package at the current Stackage LTS version:
 | 
			
		||||
(define-public ghc-megaparsec-7
 | 
			
		||||
  (hidden-package
 | 
			
		||||
   (package
 | 
			
		||||
     (inherit ghc-megaparsec)
 | 
			
		||||
     (version "7.0.5")
 | 
			
		||||
     (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (string-append "https://hackage.haskell.org/package/megaparsec/"
 | 
			
		||||
                            "megaparsec-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0bqx1icbmk8s7wmbcdzsgnlh607c7kzg8l80cp02dxr5valjxp7j"))))
 | 
			
		||||
     (arguments (strip-keyword-arguments (list #:cabal-revision)
 | 
			
		||||
                                         (package-arguments ghc-megaparsec))))))
 | 
			
		||||
 | 
			
		||||
(define-public ghc-memory
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ghc-memory")
 | 
			
		||||
| 
						 | 
				
			
			@ -6740,6 +6759,24 @@ between 2 and 3 times faster than the Mersenne Twister.")
 | 
			
		|||
     "This package provides a low-level networking interface.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
 | 
			
		||||
;;; Until we update our default GHC to >=8.6 we cannot update our ghc-network
 | 
			
		||||
;;; package, since the 'cabal-install' package that supports the current
 | 
			
		||||
;;; 'Cabal' module requires 'network==2.6.*'.  Here we provide an updated
 | 
			
		||||
;;; version to be used for our idris package.
 | 
			
		||||
(define-public ghc-network-2.8
 | 
			
		||||
  (hidden-package
 | 
			
		||||
   (package
 | 
			
		||||
     (inherit ghc-network)
 | 
			
		||||
     (version "2.8.0.1")
 | 
			
		||||
     (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (string-append "https://hackage.haskell.org/package/network/"
 | 
			
		||||
                            "network-" version ".tar.gz"))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "0im8k51rw3ahmr23ny10pshwbz09jfg0fdpam0hzf2hgxnzmvxb1")))))))
 | 
			
		||||
 | 
			
		||||
(define-public ghc-network-info
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ghc-network-info")
 | 
			
		||||
| 
						 | 
				
			
			@ -7801,7 +7838,7 @@ examination.")
 | 
			
		|||
       ("ghc-listlike" ,ghc-listlike)))
 | 
			
		||||
    (home-page "https://github.com/seereason/process-extras")
 | 
			
		||||
    (synopsis "Extra tools for managing processes")
 | 
			
		||||
    (description "This packages extends
 | 
			
		||||
    (description "This package extends
 | 
			
		||||
@url{http://hackage.haskell.org/package/process}.  It allows you to read
 | 
			
		||||
process input and output as ByteStrings or Text, or write your own
 | 
			
		||||
ProcessOutput instance.  It also provides lazy process input and output,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,7 +38,7 @@
 | 
			
		|||
(define-public idris
 | 
			
		||||
  (package
 | 
			
		||||
    (name "idris")
 | 
			
		||||
    (version "1.3.1")
 | 
			
		||||
    (version "1.3.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -46,8 +46,7 @@
 | 
			
		|||
                    "idris-" version "/idris-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0fn9h58l592j72njwma1ia48h8h87wi2rjqfxs7j2lfmvgfv18fi"))
 | 
			
		||||
              (patches (search-patches "idris-test-no-node.patch"))))
 | 
			
		||||
                "0wychzkg0yghd2pp8fqz78vp1ayzks191knfpl7mhh8igsmb6bc7"))))
 | 
			
		||||
    (build-system haskell-build-system)
 | 
			
		||||
    (native-inputs                      ;For tests
 | 
			
		||||
     `(("perl" ,perl)
 | 
			
		||||
| 
						 | 
				
			
			@ -71,8 +70,8 @@
 | 
			
		|||
       ("ghc-fsnotify" ,ghc-fsnotify)
 | 
			
		||||
       ("ghc-ieee754" ,ghc-ieee754)
 | 
			
		||||
       ("ghc-libffi" ,ghc-libffi)
 | 
			
		||||
       ("ghc-megaparsec" ,ghc-megaparsec)
 | 
			
		||||
       ("ghc-network" ,ghc-network)
 | 
			
		||||
       ("ghc-megaparsec" ,ghc-megaparsec-7)
 | 
			
		||||
       ("ghc-network" ,ghc-network-2.8)
 | 
			
		||||
       ("ghc-optparse-applicative" ,ghc-optparse-applicative)
 | 
			
		||||
       ("ghc-regex-tdfa" ,ghc-regex-tdfa)
 | 
			
		||||
       ("ghc-safe" ,ghc-safe)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -269,6 +269,10 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
 | 
			
		|||
             "-DWITH_CAROTENE=OFF" ; only visible on arm/aarch64
 | 
			
		||||
             "-DENABLE_PRECOMPILED_HEADERS=OFF"
 | 
			
		||||
 | 
			
		||||
             ;; FIXME: OpenEXR requires C++11 or later.  Remove this when
 | 
			
		||||
             ;; the default compiler is GCC 7.
 | 
			
		||||
             "-DCMAKE_CXX_FLAGS=-std=gnu++11"
 | 
			
		||||
 | 
			
		||||
             ;; CPU-Features:
 | 
			
		||||
             ;; See cmake/OpenCVCompilerOptimizations.cmake
 | 
			
		||||
             ;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -419,36 +419,66 @@ lossless JPEG manipulations such as rotation, scaling or cropping:
 | 
			
		|||
              (patches (search-patches "libjxr-fix-function-signature.patch"
 | 
			
		||||
                                       "libjxr-fix-typos.patch"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments '(#:make-flags '("CC=gcc")
 | 
			
		||||
                 #:tests? #f ; no check target
 | 
			
		||||
                 #:phases
 | 
			
		||||
                 (modify-phases %standard-phases
 | 
			
		||||
                   (delete 'configure) ; no configure script
 | 
			
		||||
                   ;; The upstream makefile does not include an install phase.
 | 
			
		||||
                   (replace 'install
 | 
			
		||||
                     (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
                       (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                              (bin (string-append out "/bin"))
 | 
			
		||||
                              (lib (string-append out "/lib"))
 | 
			
		||||
                              (include (string-append out "/include/jxrlib")))
 | 
			
		||||
                         (for-each (lambda (file)
 | 
			
		||||
                                     (install-file file include)
 | 
			
		||||
                                     (delete-file file))
 | 
			
		||||
                                   (append
 | 
			
		||||
                                    '("jxrgluelib/JXRGlue.h"
 | 
			
		||||
                                      "jxrgluelib/JXRMeta.h"
 | 
			
		||||
                                      "jxrtestlib/JXRTest.h"
 | 
			
		||||
                                      "image/sys/windowsmediaphoto.h")
 | 
			
		||||
                                    (find-files "common/include" "\\.h$")))
 | 
			
		||||
                         (for-each (lambda (file)
 | 
			
		||||
                                     (install-file file lib)
 | 
			
		||||
                                     (delete-file file))
 | 
			
		||||
                                   (find-files "." "\\.a$"))
 | 
			
		||||
                         (for-each (lambda (file)
 | 
			
		||||
                                     (install-file file bin)
 | 
			
		||||
                                     (delete-file file))
 | 
			
		||||
                                   '("JxrDecApp" "JxrEncApp")))
 | 
			
		||||
                       #t)))))
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:make-flags
 | 
			
		||||
       (list "CC=gcc"
 | 
			
		||||
             ;; A substitute* procedure call would be enough to add the -fPIC
 | 
			
		||||
             ;; flag if there was no file decoding error.
 | 
			
		||||
             ;; The makefile is a "Non-ISO extended-ASCII text, with CRLF line
 | 
			
		||||
             ;; terminators" according to the file(1) utility.
 | 
			
		||||
             (string-append "CFLAGS=-I. -Icommon/include -Iimage/sys -fPIC "
 | 
			
		||||
                            "-D__ANSI__ -DDISABLE_PERF_MEASUREMENT -w -O "))
 | 
			
		||||
       #:tests? #f ; no check target
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (delete 'configure) ; no configure script
 | 
			
		||||
         (add-after 'build 'build-shared-library
 | 
			
		||||
           (lambda _
 | 
			
		||||
             ;; The Makefile uses optimization level 1, so the same
 | 
			
		||||
             ;; level is used here for consistency.
 | 
			
		||||
             (invoke "gcc" "-shared" "-fPIC" "-O"
 | 
			
		||||
                     ;; Common files.
 | 
			
		||||
                     "adapthuff.o" "image.o" "strcodec.o" "strPredQuant.o"
 | 
			
		||||
                     "strTransform.o" "perfTimerANSI.o"
 | 
			
		||||
                     ;; Decoding files.
 | 
			
		||||
                     "decode.o" "postprocess.o" "segdec.o" "strdec.o"
 | 
			
		||||
                     "strInvTransform.o" "strPredQuantDec.o" "JXRTranscode.o"
 | 
			
		||||
                     ;; Encoding files.
 | 
			
		||||
                     "encode.o" "segenc.o" "strenc.o" "strFwdTransform.o"
 | 
			
		||||
                     "strPredQuantEnc.o"
 | 
			
		||||
                     "-o" "libjpegxr.so")
 | 
			
		||||
             (invoke "gcc" "-shared" "-fPIC" "-O"
 | 
			
		||||
                     ;; Glue files.
 | 
			
		||||
                     "JXRGlue.o" "JXRMeta.o" "JXRGluePFC.o" "JXRGlueJxr.o"
 | 
			
		||||
                     ;; Test files.
 | 
			
		||||
                     "JXRTest.o" "JXRTestBmp.o" "JXRTestHdr.o" "JXRTestPnm.o"
 | 
			
		||||
                     "JXRTestTif.o" "JXRTestYUV.o"
 | 
			
		||||
                     "-o" "libjxrglue.so")))
 | 
			
		||||
         ;; The upstream makefile does not include an install phase.
 | 
			
		||||
         (replace 'install
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                    (bin (string-append out "/bin"))
 | 
			
		||||
                    (lib (string-append out "/lib"))
 | 
			
		||||
                    (include (string-append out "/include/jxrlib")))
 | 
			
		||||
               (for-each (lambda (file)
 | 
			
		||||
                           (install-file file include)
 | 
			
		||||
                           (delete-file file))
 | 
			
		||||
                         (append
 | 
			
		||||
                          '("jxrgluelib/JXRGlue.h"
 | 
			
		||||
                            "jxrgluelib/JXRMeta.h"
 | 
			
		||||
                            "jxrtestlib/JXRTest.h"
 | 
			
		||||
                            "image/sys/windowsmediaphoto.h")
 | 
			
		||||
                          (find-files "common/include" "\\.h$")))
 | 
			
		||||
               (for-each (lambda (file)
 | 
			
		||||
                           (install-file file lib)
 | 
			
		||||
                           (delete-file file))
 | 
			
		||||
                         (find-files "." "\\.(a|so)$"))
 | 
			
		||||
               (for-each (lambda (file)
 | 
			
		||||
                           (install-file file bin)
 | 
			
		||||
                           (delete-file file))
 | 
			
		||||
                         '("JxrDecApp" "JxrEncApp")))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (synopsis "Implementation of the JPEG XR standard")
 | 
			
		||||
    (description "JPEG XR is an approved ISO/IEC International standard (its
 | 
			
		||||
official designation is ISO/IEC 29199-2). This library is an implementation of that standard.")
 | 
			
		||||
| 
						 | 
				
			
			@ -893,7 +923,7 @@ supplies a generic doubly-linked list and some string functions.")
 | 
			
		|||
(define-public freeimage
 | 
			
		||||
  (package
 | 
			
		||||
   (name "freeimage")
 | 
			
		||||
   (version "3.17.0")
 | 
			
		||||
   (version "3.18.0")
 | 
			
		||||
   (source (origin
 | 
			
		||||
            (method url-fetch)
 | 
			
		||||
            (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -903,7 +933,7 @@ supplies a generic doubly-linked list and some string functions.")
 | 
			
		|||
                  ".zip"))
 | 
			
		||||
            (sha256
 | 
			
		||||
             (base32
 | 
			
		||||
              "12bz57asdcfsz3zr9i9nska0fb6h3z2aizy412qjqkixkginbz7v"))
 | 
			
		||||
              "1z9qwi9mlq69d5jipr3v2jika2g0kszqdzilggm99nls5xl7j4zl"))
 | 
			
		||||
            (modules '((guix build utils)))
 | 
			
		||||
            (snippet
 | 
			
		||||
             '(begin
 | 
			
		||||
| 
						 | 
				
			
			@ -911,12 +941,8 @@ supplies a generic doubly-linked list and some string functions.")
 | 
			
		|||
                  (lambda (dir)
 | 
			
		||||
                    (delete-file-recursively (string-append "Source/" dir)))
 | 
			
		||||
                  '("LibJPEG" "LibOpenJPEG" "LibPNG" "LibRawLite"
 | 
			
		||||
                    ;; "LibJXR"
 | 
			
		||||
                    "LibWebP" "OpenEXR" "ZLib"))))
 | 
			
		||||
            (patches (search-patches "freeimage-unbundle.patch"
 | 
			
		||||
                                     "freeimage-CVE-2015-0852.patch"
 | 
			
		||||
                                     "freeimage-CVE-2016-5684.patch"
 | 
			
		||||
                                     "freeimage-fix-build-with-gcc-5.patch"))))
 | 
			
		||||
                    "LibJXR" "LibWebP" "OpenEXR" "ZLib"))))
 | 
			
		||||
            (patches (search-patches "freeimage-unbundle.patch"))))
 | 
			
		||||
   (build-system gnu-build-system)
 | 
			
		||||
   (arguments
 | 
			
		||||
    '(#:phases
 | 
			
		||||
| 
						 | 
				
			
			@ -947,15 +973,18 @@ supplies a generic doubly-linked list and some string functions.")
 | 
			
		|||
            ;; We need '-fpermissive' for Source/FreeImage.h.
 | 
			
		||||
            ;; libjxr doesn't have a pkg-config file.
 | 
			
		||||
            (string-append "CFLAGS+=-O2 -fPIC -fvisibility=hidden -fpermissive "
 | 
			
		||||
                           ;"-I" (assoc-ref %build-inputs "libjxr") "/include/jxrlib"
 | 
			
		||||
                           ))
 | 
			
		||||
                           "-I" (assoc-ref %build-inputs "libjxr") "/include/jxrlib "
 | 
			
		||||
 | 
			
		||||
                           ;; FIXME: OpenEXR 2.4.0 requires C++11 or later.
 | 
			
		||||
                           ;; Remove when the default compiler is > GCC 5.
 | 
			
		||||
                           "-std=gnu++11"))
 | 
			
		||||
      #:tests? #f)) ; no check target
 | 
			
		||||
   (native-inputs
 | 
			
		||||
    `(("pkg-config" ,pkg-config)
 | 
			
		||||
      ("unzip" ,unzip)))
 | 
			
		||||
   (inputs
 | 
			
		||||
    `(("libjpeg" ,libjpeg)
 | 
			
		||||
      ;("libjxr" ,libjxr)
 | 
			
		||||
      ("libjxr" ,libjxr)
 | 
			
		||||
      ("libpng" ,libpng)
 | 
			
		||||
      ("libraw" ,libraw)
 | 
			
		||||
      ("libtiff" ,libtiff)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -2,7 +2,7 @@
 | 
			
		|||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
 | 
			
		||||
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 | 
			
		||||
;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
 | 
			
		||||
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
 | 
			
		||||
;;; Copyright © 2017, 2019 Carlo Zancanaro <carlo@zancanaro.id.au>
 | 
			
		||||
;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
 | 
			
		||||
| 
						 | 
				
			
			@ -197,10 +197,14 @@ language.")
 | 
			
		|||
    (arguments
 | 
			
		||||
     `(#:configure-flags
 | 
			
		||||
       (list (string-append "--with-classpath-install-dir="
 | 
			
		||||
                            (assoc-ref %build-inputs "classpath")))))
 | 
			
		||||
                            (assoc-ref %build-inputs "classpath"))
 | 
			
		||||
             "--disable-int-caching"
 | 
			
		||||
             "--enable-runtime-reloc-checks"
 | 
			
		||||
             "--enable-ffi")))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("classpath" ,classpath-bootstrap)
 | 
			
		||||
       ("jikes" ,jikes)
 | 
			
		||||
       ("libffi" ,libffi)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    ;; When built with a recent GCC and glibc the configure step of icedtea-6
 | 
			
		||||
    ;; fails with an invalid instruction error.
 | 
			
		||||
| 
						 | 
				
			
			@ -1402,7 +1406,17 @@ bootstrapping purposes.")
 | 
			
		|||
           (add-after 'install 'install-libjvm
 | 
			
		||||
             (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
               (let* ((lib-path (string-append (assoc-ref outputs "out")
 | 
			
		||||
                                               "/lib/amd64")))
 | 
			
		||||
                                               ;; See 'INSTALL_ARCH_DIR' in
 | 
			
		||||
                                               ;; 'configure'.
 | 
			
		||||
                                               ,(match (%current-system)
 | 
			
		||||
                                                  ("i686-linux"
 | 
			
		||||
                                                   "/lib/i386")
 | 
			
		||||
                                                  ("x86_64-linux"
 | 
			
		||||
                                                   "/lib/amd64")
 | 
			
		||||
                                                  ("armhf-linux"
 | 
			
		||||
                                                   "/lib/arm")
 | 
			
		||||
                                                  ("aarch64-linux"
 | 
			
		||||
                                                   "/lib/aarch64")))))
 | 
			
		||||
                 (symlink (string-append lib-path "/server/libjvm.so")
 | 
			
		||||
                          (string-append lib-path "/libjvm.so")))
 | 
			
		||||
               #t))
 | 
			
		||||
| 
						 | 
				
			
			@ -1550,6 +1564,10 @@ bootstrapping purposes.")
 | 
			
		|||
      (description
 | 
			
		||||
       "This package provides the Java development kit OpenJDK built with the
 | 
			
		||||
IcedTea build harness.")
 | 
			
		||||
 | 
			
		||||
      ;; 'configure' lists "mips" and "mipsel", but not "mips64el'.
 | 
			
		||||
      (supported-systems (delete "mips64el-linux" %supported-systems))
 | 
			
		||||
 | 
			
		||||
      ;; IcedTea is released under the GPL2 + Classpath exception, which is the
 | 
			
		||||
      ;; same license as both GNU Classpath and OpenJDK.
 | 
			
		||||
      (license license:gpl2+))))
 | 
			
		||||
| 
						 | 
				
			
			@ -11140,3 +11158,67 @@ network protocols, and core version control algorithms.")
 | 
			
		|||
     `(("java-javaewah" ,java-javaewah)
 | 
			
		||||
       ("java-jsch" ,java-jsch)
 | 
			
		||||
       ("java-slf4j-api" ,java-slf4j-api)))))
 | 
			
		||||
 | 
			
		||||
(define-public abcl
 | 
			
		||||
  (package
 | 
			
		||||
    (name "abcl")
 | 
			
		||||
    (version "1.5.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://abcl.org/releases/"
 | 
			
		||||
                           version "/abcl-src-" version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "1hhvcg050nfpjbdmskc1cv2j38qi6qfl77a61b5cxx576kbff3lj"))
 | 
			
		||||
       (patches
 | 
			
		||||
        (search-patches
 | 
			
		||||
         "abcl-fix-build-xml.patch"))))
 | 
			
		||||
    (build-system ant-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("java-junit" ,java-junit)))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:build-target "abcl.jar"
 | 
			
		||||
       #:test-target "abcl.test"
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (replace 'install
 | 
			
		||||
           (lambda* (#:key outputs #:allow-other-keys)
 | 
			
		||||
             (let ((share (string-append (assoc-ref outputs "out")
 | 
			
		||||
                                         "/share/java/"))
 | 
			
		||||
                   (bin (string-append (assoc-ref outputs "out")
 | 
			
		||||
                                       "/bin/")))
 | 
			
		||||
               (mkdir-p share)
 | 
			
		||||
               (install-file "dist/abcl.jar" share)
 | 
			
		||||
               (install-file "dist/abcl-contrib.jar" share)
 | 
			
		||||
               (mkdir-p bin)
 | 
			
		||||
               (with-output-to-file (string-append bin "abcl")
 | 
			
		||||
                 (lambda _
 | 
			
		||||
                   (let ((classpath (string-append
 | 
			
		||||
                                     share "abcl.jar"
 | 
			
		||||
                                     ":"
 | 
			
		||||
                                     share "abcl-contrib.jar")))
 | 
			
		||||
                     (display (string-append
 | 
			
		||||
                               "#!" (which "sh") "\n"
 | 
			
		||||
                               "if [[ -z $CLASSPATH ]]; then\n"
 | 
			
		||||
                               "  cp=\"" classpath "\"\n"
 | 
			
		||||
                               "else\n"
 | 
			
		||||
                               "  cp=\"" classpath ":$CLASSPATH\"\n"
 | 
			
		||||
                               "fi\n"
 | 
			
		||||
                               "exec " (which "java")
 | 
			
		||||
                               " -cp $cp org.armedbear.lisp.Main $@\n")))))
 | 
			
		||||
               (chmod (string-append bin "abcl") #o755)
 | 
			
		||||
               #t))))))
 | 
			
		||||
    (home-page "https://abcl.org/")
 | 
			
		||||
    (synopsis "Common Lisp Implementation on the JVM")
 | 
			
		||||
    (description
 | 
			
		||||
     "@dfn{Armed Bear Common Lisp} (ABCL) is a full implementation of the Common
 | 
			
		||||
Lisp language featuring both an interpreter and a compiler, running in the
 | 
			
		||||
JVM.  It supports JSR-223 (Java scripting API): it can be a scripting engine
 | 
			
		||||
in any Java application.  Additionally, it can be used to implement (parts of)
 | 
			
		||||
the application using Java to Lisp integration APIs.")
 | 
			
		||||
    (license (list license:gpl2+
 | 
			
		||||
                   ;; named-readtables is released under 3 clause BSD
 | 
			
		||||
                   license:bsd-3
 | 
			
		||||
                   ;; jfli is released under CPL 1.0
 | 
			
		||||
                   license:cpl1.0))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -286,14 +286,14 @@ detection.")
 | 
			
		|||
(define-public js-datatables
 | 
			
		||||
  (package
 | 
			
		||||
    (name "js-datatables")
 | 
			
		||||
    (version "1.10.15")
 | 
			
		||||
    (version "1.10.19")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://datatables.net/releases/DataTables-"
 | 
			
		||||
                                  version ".zip"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1y9xqyqyz7x1ls3ska71pshl2hpiy3qnw1f7wygyslbhy4ssgf57"))))
 | 
			
		||||
                "0cff8a1g7pjwbjdqq0yzqd963ar7pfi4splmm6rwdzganr77rkhb"))))
 | 
			
		||||
    (build-system minify-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:javascript-files '("media/js/dataTables.bootstrap.js"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										189
									
								
								gnu/packages/jupyter.scm
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										189
									
								
								gnu/packages/jupyter.scm
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,189 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
 | 
			
		||||
;;; under the terms of the GNU General Public License as published by
 | 
			
		||||
;;; the Free Software Foundation; either version 3 of the License, or (at
 | 
			
		||||
;;; your option) any later version.
 | 
			
		||||
;;;
 | 
			
		||||
;;; GNU Guix is distributed in the hope that it will be useful, but
 | 
			
		||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
;;; GNU General Public License for more details.
 | 
			
		||||
;;;
 | 
			
		||||
;;; You should have received a copy of the GNU General Public License
 | 
			
		||||
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
(define-module (gnu packages jupyter)
 | 
			
		||||
  #:use-module ((guix licenses) #:prefix license:)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix build-system cmake)
 | 
			
		||||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages cpp)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages networking)
 | 
			
		||||
  #:use-module (gnu packages pkg-config)
 | 
			
		||||
  #:use-module (gnu packages python)
 | 
			
		||||
  #:use-module (gnu packages python-xyz)
 | 
			
		||||
  #:use-module (gnu packages serialization)
 | 
			
		||||
  #:use-module (gnu packages time)
 | 
			
		||||
  #:use-module (gnu packages tls))
 | 
			
		||||
 | 
			
		||||
(define-public python-jupyter-protocol
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-jupyter-protocol")
 | 
			
		||||
    (version "0.1.1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (pypi-uri "jupyter_protocol" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1bk3as5yw9y5nmq6l15nr46aby34phmvsx9kxgqnm5pd5q2b5h57"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-dateutil" ,python-dateutil)
 | 
			
		||||
       ("python-jupyter-core" ,python-jupyter-core)
 | 
			
		||||
       ("python-pyzmq" ,python-pyzmq)
 | 
			
		||||
       ("python-traitlets" ,python-traitlets)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python-ipykernel" ,python-ipykernel)
 | 
			
		||||
       ("python-ipython" ,python-ipython)
 | 
			
		||||
       ("python-mock" ,python-mock)
 | 
			
		||||
       ("python-pytest" ,python-pytest)))
 | 
			
		||||
    (home-page "https://jupyter.org")
 | 
			
		||||
    (synopsis "Jupyter protocol implementation")
 | 
			
		||||
    (description
 | 
			
		||||
     "This Python library is an experimental implementation of the
 | 
			
		||||
@uref{https://jupyter-client.readthedocs.io/en/latest/messaging.html, Jupyter
 | 
			
		||||
protocol} to be used by both clients and kernels.")
 | 
			
		||||
    (license license:bsd-3)
 | 
			
		||||
    (properties '((upstream-name . "jupyter_protocol")))))
 | 
			
		||||
 | 
			
		||||
(define-public python-jupyter-kernel-mgmt
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-jupyter-kernel-mgmt")
 | 
			
		||||
    (version "0.4.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (pypi-uri "jupyter_kernel_mgmt" version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0i7a78dn89ca8h0a42giyxwcmk6y4wrdr7q8h2ax9vybb84c795q"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-dateutil" ,python-dateutil)
 | 
			
		||||
       ("python-entrypoints" ,python-entrypoints)
 | 
			
		||||
       ("python-jupyter-core" ,python-jupyter-core)
 | 
			
		||||
       ("python-jupyter-protocol" ,python-jupyter-protocol)
 | 
			
		||||
       ("python-pyzmq" ,python-pyzmq)
 | 
			
		||||
       ("python-traitlets" ,python-traitlets)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python-ipykernel" ,python-ipykernel)
 | 
			
		||||
       ("python-ipython" ,python-ipython)
 | 
			
		||||
       ("python-mock" ,python-mock)
 | 
			
		||||
       ("python-pytest" ,python-pytest)))
 | 
			
		||||
    (home-page "https://jupyter.org")
 | 
			
		||||
    (synopsis "Discover, launch, and communicate with Jupyter kernels")
 | 
			
		||||
    (description
 | 
			
		||||
     "This package is an experimental refactoring of the machinery for
 | 
			
		||||
launching and using Jupyter kernels.")
 | 
			
		||||
    (license license:bsd-3)
 | 
			
		||||
    (properties '((upstream-name . "jupyter_kernel_mgmt")))))
 | 
			
		||||
 | 
			
		||||
(define-public python-jupyter-kernel-test
 | 
			
		||||
  (package
 | 
			
		||||
    (name "python-jupyter-kernel-test")
 | 
			
		||||
    (version "0.3")
 | 
			
		||||
    (home-page "https://github.com/jupyter/jupyter_kernel_test")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              ;; PyPI has a ".whl" file but not a proper source release.
 | 
			
		||||
              ;; Thus, fetch code from Git.
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference (url home-page) (commit version)))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "00iy74i4i8is6axb9vlsm0b9wxkvyyxnbl8r0i4gaj3xd788jm83"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     ;; The repo doesn't contain a "setup.py" file so install files manually.
 | 
			
		||||
     '(#:phases (modify-phases %standard-phases
 | 
			
		||||
                  (delete 'build)
 | 
			
		||||
                  (delete 'check)
 | 
			
		||||
                  (replace 'install
 | 
			
		||||
                    (lambda* (#:key inputs outputs #:allow-other-keys)
 | 
			
		||||
                      (let* ((out (assoc-ref outputs "out"))
 | 
			
		||||
                             (version ((@@ (guix build python-build-system)
 | 
			
		||||
                                           get-python-version)
 | 
			
		||||
                                       (assoc-ref inputs "python")))
 | 
			
		||||
                             (pydir (string-append out "/lib/python"
 | 
			
		||||
                                                   version "/site-packages/"
 | 
			
		||||
                                                   "jupyter_kernel_test")))
 | 
			
		||||
                        (for-each (lambda (file)
 | 
			
		||||
                                    (install-file file pydir))
 | 
			
		||||
                                  (find-files "jupyter_kernel_test"
 | 
			
		||||
                                              "\\.py$"))
 | 
			
		||||
                        #t))))))
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-jupyter-kernel-mgmt" ,python-jupyter-kernel-mgmt)
 | 
			
		||||
       ("python-jupyter-protocol" ,python-jupyter-protocol)
 | 
			
		||||
       ("python-jsonschema" ,python-jsonschema)))
 | 
			
		||||
    (synopsis "Test Jupyter kernels")
 | 
			
		||||
    (description
 | 
			
		||||
     "@code{jupyter_kernel_test} is a tool for testing Jupyter kernels.  It
 | 
			
		||||
tests kernels for successful code execution and conformance with the
 | 
			
		||||
@uref{https://jupyter-client.readthedocs.io/en/latest/messaging.html, Jupyter
 | 
			
		||||
Messaging Protocol}.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
 | 
			
		||||
(define-public xeus
 | 
			
		||||
  (package
 | 
			
		||||
    (name "xeus")
 | 
			
		||||
    (version "0.23.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://github.com/QuantStack/xeus.git")
 | 
			
		||||
                    (commit version)))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1m1b6z1538r7mv2ggn7bdbd9570ja7cadplq64zl8rgl2c8vdi2a"))
 | 
			
		||||
              (file-name (git-file-name name version))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     '(#:configure-flags '("-DBUILD_STATIC_LIBS=OFF"
 | 
			
		||||
                           "-DDISABLE_ARCH_NATIVE=ON" ;no '-march=native'
 | 
			
		||||
                           "-DBUILD_TESTING=ON")))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
 | 
			
		||||
       ;; The following inputs are used by the test suite.
 | 
			
		||||
       ("googletest" ,googletest)
 | 
			
		||||
       ("python-pytest" ,python-pytest)
 | 
			
		||||
       ("python" ,python-3)
 | 
			
		||||
       ("python-jupyter-kernel-test" ,python-jupyter-kernel-test)
 | 
			
		||||
       ("python-jupyter-client" ,python-jupyter-client)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("xtl" ,xtl)
 | 
			
		||||
       ("nlohmann-json-cpp" ,nlohmann-json-cpp)
 | 
			
		||||
       ("cppzmq" ,cppzmq)
 | 
			
		||||
       ("zeromq" ,zeromq)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("util-linux" ,util-linux)))               ;libuuid
 | 
			
		||||
    (home-page "https://quantstack.net/xeus")
 | 
			
		||||
    (synopsis "C++ implementation of the Jupyter Kernel protocol")
 | 
			
		||||
    (description
 | 
			
		||||
     "@code{xeus} is a library meant to facilitate the implementation of
 | 
			
		||||
kernels for Jupyter.  It takes the burden of implementing the Jupyter Kernel
 | 
			
		||||
protocol so developers can focus on implementing the interpreter part of the
 | 
			
		||||
kernel.
 | 
			
		||||
 | 
			
		||||
Several Jupyter kernels are built upon @code{xeus}, such as @code{xeus-cling},
 | 
			
		||||
a kernel for the C++ programming language, and @code{xeus-python}, an
 | 
			
		||||
alternative Python kernel for Jupyter.")
 | 
			
		||||
    (license license:bsd-3)))
 | 
			
		||||
| 
						 | 
				
			
			@ -132,14 +132,14 @@ resolution, asynchronous file system operations, and threading primitives.")
 | 
			
		|||
(define-public perl-anyevent
 | 
			
		||||
  (package
 | 
			
		||||
    (name "perl-anyevent")
 | 
			
		||||
    (version "7.15")
 | 
			
		||||
    (version "7.17")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://cpan/authors/id/M/ML/MLEHMANN/"
 | 
			
		||||
                                  "AnyEvent-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0m73r67ah9xmcwzxs50jxf8ncd8h71mi4wf2mvnqkxvibhrv478i"))))
 | 
			
		||||
                "11drlj8r02czhjgzkb39axnr8zzyp506r043xfmf93q9kilfmgjh"))))
 | 
			
		||||
    (build-system perl-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("perl-canary-stability" ,perl-canary-stability)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,6 @@
 | 
			
		|||
;;; GNU Guix --- Functional package management for GNU
 | 
			
		||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -18,13 +18,18 @@
 | 
			
		|||
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 | 
			
		||||
 | 
			
		||||
(define-module (gnu packages license)
 | 
			
		||||
  #:use-module (guix licenses)
 | 
			
		||||
  #:use-module (gnu packages)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix build-system perl)
 | 
			
		||||
  #:use-module (gnu packages check)
 | 
			
		||||
  #:use-module (gnu packages perl)
 | 
			
		||||
  #:use-module (gnu packages perl-check))
 | 
			
		||||
  #:use-module (gnu packages perl-check)
 | 
			
		||||
  #:use-module (gnu packages python-web)
 | 
			
		||||
  #:use-module (gnu packages python-xyz)
 | 
			
		||||
  #:use-module (guix build-system perl)
 | 
			
		||||
  #:use-module (guix build-system python)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix licenses)
 | 
			
		||||
  #:use-module (guix packages))
 | 
			
		||||
 | 
			
		||||
;;;
 | 
			
		||||
;;; Please: Try to add new module packages in alphabetic order.
 | 
			
		||||
| 
						 | 
				
			
			@ -33,7 +38,7 @@
 | 
			
		|||
(define-public perl-regexp-pattern-license
 | 
			
		||||
  (package
 | 
			
		||||
    (name "perl-regexp-pattern-license")
 | 
			
		||||
    (version "3.1.92")
 | 
			
		||||
    (version "3.1.94")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
| 
						 | 
				
			
			@ -41,8 +46,7 @@
 | 
			
		|||
             "mirror://cpan/authors/id/J/JO/JONASS/Regexp-Pattern-License-"
 | 
			
		||||
             "v" version ".tar.gz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0gxv8wpvlllmvhkpixv5x23ywn1s6zs7ypcs38s7nfh4phamyixh"))))
 | 
			
		||||
        (base32 "0kznpv628jrndn4nw646f6pl7yqvmacwljlygvsjfdkyh0i4sr2k"))))
 | 
			
		||||
    (build-system perl-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("perl-regexp-pattern" ,perl-regexp-pattern)
 | 
			
		||||
| 
						 | 
				
			
			@ -109,7 +113,7 @@ statements and serializes in normalized format.")
 | 
			
		|||
(define-public licensecheck
 | 
			
		||||
  (package
 | 
			
		||||
    (name "licensecheck")
 | 
			
		||||
    (version "3.0.36")
 | 
			
		||||
    (version "3.0.37")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -117,7 +121,7 @@ statements and serializes in normalized format.")
 | 
			
		|||
                    "v" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "0y14ppq6f9hc0rc0syhfgms1r7fd51vpgfx5va6b2v84y8anb6g1"))))
 | 
			
		||||
                "12l83zf85zagpagizmzy3bwkc659sbzqf18cycx8g4h6d3mc5kqw"))))
 | 
			
		||||
    (build-system perl-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("perl-regexp-pattern" ,perl-regexp-pattern)
 | 
			
		||||
| 
						 | 
				
			
			@ -160,3 +164,45 @@ statements and serializes in normalized format.")
 | 
			
		|||
to each file passed to it, by searching the start of the file for text
 | 
			
		||||
belonging to various licenses.")
 | 
			
		||||
    (license (package-license perl))))
 | 
			
		||||
 | 
			
		||||
(define-public reuse
 | 
			
		||||
  (package
 | 
			
		||||
    (name "reuse")
 | 
			
		||||
    (version "0.5.0")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://git.fsfe.org/reuse/tool.git")
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "1w17g6jvs715rjc93nnnqnfdphijq4ymj9jjkr3ccc286ywvn3ih"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("python-pytest" ,python-pytest)))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("python-binaryornot" ,python-binaryornot)
 | 
			
		||||
       ("python-boolean.py" ,python-boolean.py)
 | 
			
		||||
       ("python-debian" ,python-debian)
 | 
			
		||||
       ("python-jinja2" ,python-jinja2)
 | 
			
		||||
       ("python-license-expression" ,python-license-expression)
 | 
			
		||||
       ("python-requests" ,python-requests)))
 | 
			
		||||
    (home-page "https://reuse.software/")
 | 
			
		||||
    (synopsis "Provide and verify copyright and licensing information")
 | 
			
		||||
    (description
 | 
			
		||||
     "The REUSE tool helps you achieve and confirm license compliance with the
 | 
			
		||||
@uref{https://reuse.software, REUSE specification}, a set of recommendations
 | 
			
		||||
for licensing Free Software projects.  REUSE makes it easy to declare the
 | 
			
		||||
licenses under which your works are released, especially when reusing software
 | 
			
		||||
from different projects released under different licenses.  It avoids reliance
 | 
			
		||||
on fuzzy heuristicts and allows both legal experts and computers to understand
 | 
			
		||||
how your project is licensed.  This allows generating a \"bill of materials\"
 | 
			
		||||
for software.
 | 
			
		||||
 | 
			
		||||
This tool downloads full license texts, adds copyright and license information
 | 
			
		||||
to file headers, and contains a linter to identify problems.  There are other
 | 
			
		||||
tools that have a lot more features and functionality surrounding the analysis
 | 
			
		||||
and inspection of copyright and licenses in software projects.  This one is
 | 
			
		||||
designed to be simple.")
 | 
			
		||||
    (license (list asl2.0 gpl3+))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -36,6 +36,7 @@
 | 
			
		|||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com>
 | 
			
		||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
 | 
			
		||||
;;; Copyright © 2019 Brice Waegeneire <brice@waegenei.re>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -114,6 +115,7 @@
 | 
			
		|||
  #:use-module (gnu packages xdisorg)
 | 
			
		||||
  #:use-module (gnu packages xorg)
 | 
			
		||||
  #:use-module (gnu packages groff)
 | 
			
		||||
  #:use-module (gnu packages rsync)
 | 
			
		||||
  #:use-module (gnu packages selinux)
 | 
			
		||||
  #:use-module (gnu packages swig)
 | 
			
		||||
  #:use-module (guix build-system cmake)
 | 
			
		||||
| 
						 | 
				
			
			@ -179,35 +181,41 @@ defconfig.  Return the appropriate make target if applicable, otherwise return
 | 
			
		|||
                              "deblob-check"))
 | 
			
		||||
          (sha256 deblob-check-hash))))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-5.3
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "5.3.4"
 | 
			
		||||
   (base32 "15n09zq38d69y1wl28s3nasf3377qp2yil5b887zpqrm00dif7i4")
 | 
			
		||||
   (base32 "0nrimraf46nf6y1hwkg29fyl0a83wnj0mwq54ggxvffn9gk5h9pa")))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-5.2
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "5.2.10"
 | 
			
		||||
   "5.2.19"
 | 
			
		||||
   (base32 "076fwxlm6jq6z4vg1xq3kr474zz7qk71r90sf9dnfia3rw2pb4fa")
 | 
			
		||||
   (base32 "0d3pp1bqchqc7vnxr1a56km5r0hzjiiipzz2xc3wgjwfi51k9kxc")))
 | 
			
		||||
   (base32 "1vghzpvlsvz5q8baxjza8jdryjmcx61g2pmnm6dd1k7glr6jy1a9")))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-4.19
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "4.19.68"
 | 
			
		||||
   "4.19.77"
 | 
			
		||||
   (base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy")
 | 
			
		||||
   (base32 "1fyacg28aym6virxyn7wk99qil2fjbks3iwm7p3hxy51pccn34za")))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-4.14
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "4.14.140"
 | 
			
		||||
   "4.14.147"
 | 
			
		||||
   (base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6")
 | 
			
		||||
   (base32 "0x9nd3hnyrm753cbgdqmy92mbnyw86w64g4hvyibnkpq5n7s3z9n")))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-4.9
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "4.9.190"
 | 
			
		||||
   "4.9.195"
 | 
			
		||||
   (base32 "1wvldzlv7q2xdbadas87dh593nxr4a8p5n0f8zpm72lja6w18hmg")
 | 
			
		||||
   (base32 "0is8gn4qdd7h5l6lacvhqdch26lmrbgxfm8ab7fx8n85ha7y358w")))
 | 
			
		||||
 | 
			
		||||
(define deblob-scripts-4.4
 | 
			
		||||
  (linux-libre-deblob-scripts
 | 
			
		||||
   "4.4.190"
 | 
			
		||||
   "4.4.194"
 | 
			
		||||
   (base32 "0x2j1i88am54ih2mk7gyl79g25l9zz4r08xhl482l3fvjj2irwbw")
 | 
			
		||||
   (base32 "1x40lbiaizksy8z38ax7wpqr9ldgq7qvkxbb0ca98vd1axpklb10")))
 | 
			
		||||
   (base32 "12ac4g3ky8yma8sylmxvvysqvd4hnaqjiwmxrxb6wlxggfd7zkbx")))
 | 
			
		||||
 | 
			
		||||
(define* (computed-origin-method gexp-promise hash-algo hash
 | 
			
		||||
                                 #:optional (name "source")
 | 
			
		||||
| 
						 | 
				
			
			@ -349,42 +357,50 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
 | 
			
		|||
                        "linux-" version ".tar.xz"))
 | 
			
		||||
    (sha256 hash)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.2-version "5.2.15")
 | 
			
		||||
(define-public linux-libre-5.3-version "5.3.4")
 | 
			
		||||
(define-public linux-libre-5.3-pristine-source
 | 
			
		||||
  (let ((version linux-libre-5.3-version)
 | 
			
		||||
        (hash (base32 "0vi4bgcr921z5l6fbcrcgmhaji5gl2avpmp7njna6v0f7sxism0r")))
 | 
			
		||||
   (make-linux-libre-source version
 | 
			
		||||
                            (%upstream-linux-source version hash)
 | 
			
		||||
                            deblob-scripts-5.3)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.2-version "5.2.19")
 | 
			
		||||
(define-public linux-libre-5.2-pristine-source
 | 
			
		||||
  (let ((version linux-libre-5.2-version)
 | 
			
		||||
        (hash (base32 "0jhc70r2rygm91qifjagg1jgbpjwyyq6m8g1n5iv81l1v84i0mpb")))
 | 
			
		||||
        (hash (base32 "12mi857lyd5vj8qhj2f505hqnwzsnd829hxd78n9kk88iv1f966y")))
 | 
			
		||||
   (make-linux-libre-source version
 | 
			
		||||
                            (%upstream-linux-source version hash)
 | 
			
		||||
                            deblob-scripts-5.2)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.19-version "4.19.71")
 | 
			
		||||
(define-public linux-libre-4.19-version "4.19.77")
 | 
			
		||||
(define-public linux-libre-4.19-pristine-source
 | 
			
		||||
  (let ((version linux-libre-4.19-version)
 | 
			
		||||
        (hash (base32 "1bjwkb7k82l646ryyy0jbwsnygm2qsxgcwli8bdrj844skzynlqz")))
 | 
			
		||||
        (hash (base32 "1agksl35amjzc6g6d9zjwz6p5qir2cligb5c1d9s2bag9766jav1")))
 | 
			
		||||
    (make-linux-libre-source version
 | 
			
		||||
                             (%upstream-linux-source version hash)
 | 
			
		||||
                             deblob-scripts-4.19)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.14-version "4.14.142")
 | 
			
		||||
(define-public linux-libre-4.14-version "4.14.147")
 | 
			
		||||
(define-public linux-libre-4.14-pristine-source
 | 
			
		||||
  (let ((version linux-libre-4.14-version)
 | 
			
		||||
        (hash (base32 "1wwhnm1n1b6yzsd2zzzf9i3n4hlvgnph70p67cwahw0ik4ssayz6")))
 | 
			
		||||
        (hash (base32 "04jvp05spszcxmkdsl21dylbcf76ns9bwxf1zlk4x7cxiil97mwg")))
 | 
			
		||||
    (make-linux-libre-source version
 | 
			
		||||
                             (%upstream-linux-source version hash)
 | 
			
		||||
                             deblob-scripts-4.14)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.9-version "4.9.191")
 | 
			
		||||
(define-public linux-libre-4.9-version "4.9.195")
 | 
			
		||||
(define-public linux-libre-4.9-pristine-source
 | 
			
		||||
  (let ((version linux-libre-4.9-version)
 | 
			
		||||
        (hash (base32 "1g5p736p8zx5rmxaj56yw93jp768npl868jsn8973dny0rsbim6y")))
 | 
			
		||||
        (hash (base32 "0s4xj8f1dpnz3fbrqmgwq02smhcrq1ni8hgn2bbfqvm15lm5dgjl")))
 | 
			
		||||
    (make-linux-libre-source version
 | 
			
		||||
                             (%upstream-linux-source version hash)
 | 
			
		||||
                             deblob-scripts-4.9)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.4-version "4.4.191")
 | 
			
		||||
(define-public linux-libre-4.4-version "4.4.194")
 | 
			
		||||
(define-public linux-libre-4.4-pristine-source
 | 
			
		||||
  (let ((version linux-libre-4.4-version)
 | 
			
		||||
        (hash (base32 "0x3lnq4xyj5v6r1cz4jizm4vdspws1nb806f5qczwi3yil5nm6bh")))
 | 
			
		||||
        (hash (base32 "0kvlp2v4nvkilaanhpgwf8dkyfj24msaw0m38rbc4y51y69yhqvz")))
 | 
			
		||||
    (make-linux-libre-source version
 | 
			
		||||
                             (%upstream-linux-source version hash)
 | 
			
		||||
                             deblob-scripts-4.4)))
 | 
			
		||||
| 
						 | 
				
			
			@ -417,9 +433,16 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
 | 
			
		|||
    (patches (append (origin-patches source)
 | 
			
		||||
                     patches))))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.3-source
 | 
			
		||||
  (source-with-patches linux-libre-5.3-pristine-source
 | 
			
		||||
                       (list (search-patch "linux-libre-active-entropy.patch")
 | 
			
		||||
                             %boot-logo-patch
 | 
			
		||||
                             %linux-libre-arm-export-__sync_icache_dcache-patch)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.2-source
 | 
			
		||||
  (source-with-patches linux-libre-5.2-pristine-source
 | 
			
		||||
                       (list %boot-logo-patch
 | 
			
		||||
                       (list (search-patch "linux-libre-active-entropy.patch")
 | 
			
		||||
                             %boot-logo-patch
 | 
			
		||||
                             %linux-libre-arm-export-__sync_icache_dcache-patch)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.19-source
 | 
			
		||||
| 
						 | 
				
			
			@ -461,6 +484,9 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
 | 
			
		|||
                     ,@(if (version>=? version "4.16")
 | 
			
		||||
                           `(("flex" ,flex)
 | 
			
		||||
                             ("bison" ,bison))
 | 
			
		||||
                           '())
 | 
			
		||||
                     ,@(if (version>=? version "5.3")
 | 
			
		||||
                           `(("rsync" ,rsync))
 | 
			
		||||
                           '())))
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:modules ((guix build gnu-build-system)
 | 
			
		||||
| 
						 | 
				
			
			@ -509,6 +535,10 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
 | 
			
		|||
    (description "Headers of the Linux-Libre kernel.")
 | 
			
		||||
    (license license:gpl2)))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-headers-5.3
 | 
			
		||||
  (make-linux-libre-headers* linux-libre-5.3-version
 | 
			
		||||
                             linux-libre-5.3-source))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-headers-5.2
 | 
			
		||||
  (make-linux-libre-headers* linux-libre-5.2-version
 | 
			
		||||
                             linux-libre-5.2-source))
 | 
			
		||||
| 
						 | 
				
			
			@ -562,6 +592,13 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
 | 
			
		|||
(define %default-extra-linux-options
 | 
			
		||||
  `(;; Some very mild hardening.
 | 
			
		||||
    ("CONFIG_SECURITY_DMESG_RESTRICT" . #t)
 | 
			
		||||
    ;; All kernels should have NAMESPACES options enabled
 | 
			
		||||
    ("CONFIG_NAMESPACES" . #t)
 | 
			
		||||
    ("CONFIG_UTS_NS" . #t)
 | 
			
		||||
    ("CONFIG_IPC_NS" . #t)
 | 
			
		||||
    ("CONFIG_USER_NS" . #t)
 | 
			
		||||
    ("CONFIG_PID_NS" . #t)
 | 
			
		||||
    ("CONFIG_NET_NS" . #t)
 | 
			
		||||
    ;; Modules required for initrd:
 | 
			
		||||
    ("CONFIG_NET_9P" . m)
 | 
			
		||||
    ("CONFIG_NET_9P_VIRTIO" . m)
 | 
			
		||||
| 
						 | 
				
			
			@ -654,6 +691,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
 | 
			
		|||
     `(#:modules ((guix build gnu-build-system)
 | 
			
		||||
                  (guix build utils)
 | 
			
		||||
                  (srfi srfi-1)
 | 
			
		||||
                  (srfi srfi-26)
 | 
			
		||||
                  (ice-9 match))
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
| 
						 | 
				
			
			@ -670,6 +708,18 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
 | 
			
		|||
             ,@(if (%current-target-system)
 | 
			
		||||
                   '((unsetenv "CROSS_CPATH"))
 | 
			
		||||
                   '())
 | 
			
		||||
 | 
			
		||||
             ;; On AArch64 (at least), we need to remove glibc headers from CPATH
 | 
			
		||||
             ;; (they are still available as "system headers"), so that the kernel
 | 
			
		||||
             ;; can override uint64_t.  See <https://bugs.gnu.org/37593>.
 | 
			
		||||
             (setenv "CPATH"
 | 
			
		||||
                     (string-join
 | 
			
		||||
                      (remove (cut string-prefix? (assoc-ref inputs "libc") <>)
 | 
			
		||||
                              (string-split (getenv "CPATH") #\:))
 | 
			
		||||
                      ":"))
 | 
			
		||||
             (format #t "environment variable `CPATH' changed to `~a'~%"
 | 
			
		||||
                     (getenv "CPATH"))
 | 
			
		||||
 | 
			
		||||
             ;; Avoid introducing timestamps
 | 
			
		||||
             (setenv "KCONFIG_NOTIMESTAMP" "1")
 | 
			
		||||
             (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH"))
 | 
			
		||||
| 
						 | 
				
			
			@ -743,17 +793,23 @@ It has been modified to remove all non-free binary blobs.")
 | 
			
		|||
;;; Generic kernel packages.
 | 
			
		||||
;;;
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.3
 | 
			
		||||
  (make-linux-libre* linux-libre-5.3-version
 | 
			
		||||
                     linux-libre-5.3-source
 | 
			
		||||
                     '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")
 | 
			
		||||
                     #:configuration-file kernel-config))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-version         linux-libre-5.3-version)
 | 
			
		||||
(define-public linux-libre-pristine-source linux-libre-5.3-pristine-source)
 | 
			
		||||
(define-public linux-libre-source          linux-libre-5.3-source)
 | 
			
		||||
(define-public linux-libre                 linux-libre-5.3)
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-5.2
 | 
			
		||||
  (make-linux-libre* linux-libre-5.2-version
 | 
			
		||||
                     linux-libre-5.2-source
 | 
			
		||||
                     '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")
 | 
			
		||||
                     #:configuration-file kernel-config))
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-version         linux-libre-5.2-version)
 | 
			
		||||
(define-public linux-libre-pristine-source linux-libre-5.2-pristine-source)
 | 
			
		||||
(define-public linux-libre-source          linux-libre-5.2-source)
 | 
			
		||||
(define-public linux-libre                 linux-libre-5.2)
 | 
			
		||||
 | 
			
		||||
(define-public linux-libre-4.19
 | 
			
		||||
  (make-linux-libre* linux-libre-4.19-version
 | 
			
		||||
                     linux-libre-4.19-source
 | 
			
		||||
| 
						 | 
				
			
			@ -1708,7 +1764,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
 | 
			
		|||
(define-public iproute
 | 
			
		||||
  (package
 | 
			
		||||
    (name "iproute2")
 | 
			
		||||
    (version "5.2.0")
 | 
			
		||||
    (version "5.3.0")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -1716,7 +1772,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
 | 
			
		|||
                    version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1a2dywa2kam24951byv9pl32mb9z6klh7d4vp8fwfgrm4vn5vfd5"))))
 | 
			
		||||
                "0gvv269wjn4279hxr5zzwsk2c5qgswr47za3hm1x4frsk52iw76b"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `( ;; There is a test suite, but it wants network namespaces and sudo.
 | 
			
		||||
| 
						 | 
				
			
			@ -1741,7 +1797,8 @@ that the Ethernet protocol is much simpler than the IP protocol.")
 | 
			
		|||
                      #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("db4" ,bdb)
 | 
			
		||||
       ("iptables" ,iptables)))
 | 
			
		||||
       ("iptables" ,iptables)
 | 
			
		||||
       ("libmnl" ,libmnl)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("bison" ,bison)
 | 
			
		||||
       ("flex" ,flex)
 | 
			
		||||
| 
						 | 
				
			
			@ -2121,7 +2178,7 @@ processes currently causing I/O.")
 | 
			
		|||
(define-public fuse
 | 
			
		||||
  (package
 | 
			
		||||
    (name "fuse")
 | 
			
		||||
    (version "2.9.8")
 | 
			
		||||
    (version "2.9.9")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "https://github.com/libfuse/libfuse/releases/"
 | 
			
		||||
| 
						 | 
				
			
			@ -2129,7 +2186,7 @@ processes currently causing I/O.")
 | 
			
		|||
                                  "/fuse-" version ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1qxg1r1mgysfq6qakmvid2njph3lr00w0swvydsfl9ymilfzi12y"))
 | 
			
		||||
                "1ddlq6kzxilccgbvxjfx80jx6kamgw4sv49phks2zhlcc1frvrnh"))
 | 
			
		||||
              (patches (search-patches "fuse-overlapping-headers.patch"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs `(("util-linux" ,util-linux)))
 | 
			
		||||
| 
						 | 
				
			
			@ -3094,15 +3151,16 @@ in a digital read-out.")
 | 
			
		|||
       (modify-phases %standard-phases
 | 
			
		||||
         (replace 'configure
 | 
			
		||||
           (lambda* (#:key inputs #:allow-other-keys)
 | 
			
		||||
             ;; Don't build with '-Werror', really.
 | 
			
		||||
             (substitute* "tools/lib/bpf/Makefile"
 | 
			
		||||
               (("-Werror") ""))
 | 
			
		||||
 | 
			
		||||
             (setenv "SHELL_PATH" (which "bash"))
 | 
			
		||||
             (chdir "tools/perf")
 | 
			
		||||
             #t)))
 | 
			
		||||
       #:make-flags (list (string-append "prefix="
 | 
			
		||||
                                         (assoc-ref %outputs "out"))
 | 
			
		||||
                          ;; Make sure the kernel headers are treated as system
 | 
			
		||||
                          ;; headers to suppress warnings from those.
 | 
			
		||||
                          (string-append "C_INCLUDE_PATH="
 | 
			
		||||
                                         (assoc-ref %build-inputs "kernel-headers")
 | 
			
		||||
                                         "/include")
 | 
			
		||||
                          "WERROR=0"
 | 
			
		||||
 | 
			
		||||
                          ;; By default, 'config/Makefile' uses lib64 on
 | 
			
		||||
| 
						 | 
				
			
			@ -3311,14 +3369,14 @@ about ACPI devices.")
 | 
			
		|||
(define-public acpid
 | 
			
		||||
  (package
 | 
			
		||||
    (name "acpid")
 | 
			
		||||
    (version "2.0.31")
 | 
			
		||||
    (version "2.0.32")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://sourceforge/acpid2/acpid-"
 | 
			
		||||
                                  version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1hrc0xm6q12knbgzhq0i8g2rfrkwcvh1asd7k9rs3nc5xmlwd7gw"))))
 | 
			
		||||
                "0zhmxnhnhg4v1viw82yjr22kram6k5k1ixznhayk8cnw7q5x7lpj"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (home-page "https://sourceforge.net/projects/acpid2/")
 | 
			
		||||
    (synopsis "Daemon for delivering ACPI events to user-space programs")
 | 
			
		||||
| 
						 | 
				
			
			@ -5997,3 +6055,43 @@ have to construct the archives directly, without using the archiver.")
 | 
			
		|||
    (description "inputattach dispatches input events from several device
 | 
			
		||||
types and interfaces and translates so that the X server can use them.")
 | 
			
		||||
    (license license:gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public ell
 | 
			
		||||
  (package
 | 
			
		||||
    (name "ell")
 | 
			
		||||
    (version "0.23")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method git-fetch)
 | 
			
		||||
              (uri (git-reference
 | 
			
		||||
                    (url "https://git.kernel.org/pub/scm/libs/ell/ell.git")
 | 
			
		||||
                    (commit version)))
 | 
			
		||||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1qhlcwhn0gj877yss2ymx1aczghlddzb5v9mm1dgp2zliii3jy10"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (add-after 'unpack 'fix-dbus-tests
 | 
			
		||||
           (lambda _
 | 
			
		||||
             (substitute* '("unit/test-dbus-message-fds.c"
 | 
			
		||||
                            "unit/test-dbus-properties.c"
 | 
			
		||||
                            "unit/test-dbus.c")
 | 
			
		||||
               (("/usr/bin/dbus-daemon") (which "dbus-daemon")))
 | 
			
		||||
             #t)))))
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("dbus" ,dbus)
 | 
			
		||||
       ("libtool" ,libtool)))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("autoconf" ,autoconf)
 | 
			
		||||
       ("pkgconfig" ,pkg-config)
 | 
			
		||||
       ("automake" ,automake)))
 | 
			
		||||
    (home-page "https://01.org/ell")
 | 
			
		||||
    (synopsis "Embedded Linux Library")
 | 
			
		||||
    (description "The Embedded Linux* Library (ELL) provides core, low-level
 | 
			
		||||
functionality for system daemons.  It typically has no dependencies other than
 | 
			
		||||
the Linux kernel, C standard library, and libdl (for dynamic linking).  While
 | 
			
		||||
ELL is designed to be efficient and compact enough for use on embedded Linux
 | 
			
		||||
platforms, it is not limited to resource-constrained systems.")
 | 
			
		||||
    (license license:lgpl2.1+)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
										
											
												File diff suppressed because it is too large
												Load diff
											
										
									
								
							| 
						 | 
				
			
			@ -369,7 +369,7 @@ requirements according to version 1.1 of the OpenCL specification.")
 | 
			
		|||
     '(#:configure-flags '("-DLIBOMP_USE_HWLOC=ON"
 | 
			
		||||
                           "-DOPENMP_TEST_C_COMPILER=clang"
 | 
			
		||||
                           "-DOPENMP_TEST_CXX_COMPILER=clang++")
 | 
			
		||||
       #:test-target "check-libomptarget"))
 | 
			
		||||
       #:test-target "check-libomp"))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("clang" ,clang)
 | 
			
		||||
       ("llvm" ,llvm)
 | 
			
		||||
| 
						 | 
				
			
			@ -440,6 +440,23 @@ with that of libgomp, the GNU Offloading and Multi Processing Library.")
 | 
			
		|||
                   "0rxn4rh7rrnsqbdgp4gzc8ishbkryhpl1kd3mpnxzpxxhla3y93w"
 | 
			
		||||
                   #:patches '("clang-6.0-libc-search-path.patch")))
 | 
			
		||||
 | 
			
		||||
;; Libcxx files specifically used by PySide2.
 | 
			
		||||
(define-public libcxx-6
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit libcxx)
 | 
			
		||||
    (version (package-version llvm-6))
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (inherit (package-source libcxx))
 | 
			
		||||
       (uri (string-append "http://llvm.org/releases/"
 | 
			
		||||
                           version "/libcxx-" version ".src.tar.xz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0rzw4qvxp6qx4l4h9amrq02gp7hbg8lw4m0sy3k60f50234gnm3n"))))
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("clang" ,clang-6)
 | 
			
		||||
       ("llvm" ,llvm-6)))))
 | 
			
		||||
 | 
			
		||||
(define-public llvm-3.9.1
 | 
			
		||||
  (package (inherit llvm)
 | 
			
		||||
    (name "llvm")
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,7 +8,7 @@
 | 
			
		|||
;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
 | 
			
		||||
;;; Copyright © 2016, 2017, 2019 Clément Lassieur <clement@lassieur.org>
 | 
			
		||||
;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
 | 
			
		||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
| 
						 | 
				
			
			@ -454,7 +454,7 @@ Grammars (PEGs).")
 | 
			
		|||
(define (make-lua-luv name lua)
 | 
			
		||||
  (package
 | 
			
		||||
    (name name)
 | 
			
		||||
    (version "1.30.1-0")
 | 
			
		||||
    (version "1.30.1-1")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              ;; The release tarball includes the sources of libuv but does
 | 
			
		||||
              ;; not include the pkg-config files.
 | 
			
		||||
| 
						 | 
				
			
			@ -465,10 +465,10 @@ Grammars (PEGs).")
 | 
			
		|||
              (file-name (git-file-name name version))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "1lfzzyphpim28kw33k7zylcyxnf40ckhdg6hbqyzb5hszdf2hbka"))))
 | 
			
		||||
                "0b2zxrsjxzhzwfp28lchplrp272v6zkbpq1ddz7a0rf20l7dbls1"))))
 | 
			
		||||
    (build-system cmake-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:tests? #f ; there are none
 | 
			
		||||
     `(#:tests? #f                      ; there are none
 | 
			
		||||
       #:configure-flags
 | 
			
		||||
       '("-DWITH_LUA_ENGINE=Lua"
 | 
			
		||||
         "-DWITH_SHARED_LIBUV=On"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -11,6 +11,7 @@
 | 
			
		|||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
 | 
			
		||||
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
 | 
			
		||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 | 
			
		||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -33,6 +34,7 @@
 | 
			
		|||
  #:use-module (guix utils)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix svn-download)
 | 
			
		||||
  #:use-module (guix build-system asdf)
 | 
			
		||||
  #:use-module (guix build-system cmake)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system ocaml)
 | 
			
		||||
| 
						 | 
				
			
			@ -58,6 +60,7 @@
 | 
			
		|||
  #:use-module (gnu packages gstreamer)
 | 
			
		||||
  #:use-module (gnu packages image)
 | 
			
		||||
  #:use-module (gnu packages linux)
 | 
			
		||||
  #:use-module (gnu packages lisp)
 | 
			
		||||
  #:use-module (gnu packages maths)
 | 
			
		||||
  #:use-module (gnu packages mpi)
 | 
			
		||||
  #:use-module (gnu packages ocaml)
 | 
			
		||||
| 
						 | 
				
			
			@ -1921,3 +1924,130 @@ that:
 | 
			
		|||
@item Runs seamlessly on CPU and GPU.
 | 
			
		||||
@end itemize\n")
 | 
			
		||||
    (license license:expat)))
 | 
			
		||||
 | 
			
		||||
(define-public sbcl-cl-libsvm-format
 | 
			
		||||
  (let ((commit "3300f84fd8d9f5beafc114f543f9d83417c742fb")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "sbcl-cl-libsvm-format")
 | 
			
		||||
      (version (git-version "0.1.0" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference
 | 
			
		||||
               (url "https://github.com/masatoi/cl-libsvm-format.git")
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "0284aj84xszhkhlivaigf9qj855fxad3mzmv3zfr0qzb5k0nzwrg"))))
 | 
			
		||||
      (build-system asdf-build-system/sbcl)
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("prove" ,sbcl-prove)
 | 
			
		||||
         ("prove-asdf" ,sbcl-prove-asdf)))
 | 
			
		||||
      (inputs
 | 
			
		||||
       `(("alexandria" ,sbcl-alexandria)))
 | 
			
		||||
      (synopsis "LibSVM data format reader for Common Lisp")
 | 
			
		||||
      (description
 | 
			
		||||
       "This Common Lisp library provides a fast reader for data in LibSVM
 | 
			
		||||
format.")
 | 
			
		||||
      (home-page "https://github.com/masatoi/cl-libsvm-format")
 | 
			
		||||
      (license license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public cl-libsvm-format
 | 
			
		||||
  (sbcl-package->cl-source-package sbcl-cl-libsvm-format))
 | 
			
		||||
 | 
			
		||||
(define-public ecl-cl-libsvm-format
 | 
			
		||||
  (sbcl-package->ecl-package sbcl-cl-libsvm-format))
 | 
			
		||||
 | 
			
		||||
(define-public sbcl-cl-online-learning
 | 
			
		||||
  (let ((commit "fc7a34f4f161cd1c7dd747d2ed8f698947781423")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "sbcl-cl-online-learning")
 | 
			
		||||
      (version (git-version "0.5" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference
 | 
			
		||||
               (url "https://github.com/masatoi/cl-online-learning.git")
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "14x95rlg80ay5hv645ki57pqvy12v28hz4k1w0f6bsfi2rmpxchq"))))
 | 
			
		||||
      (build-system asdf-build-system/sbcl)
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("prove" ,sbcl-prove)
 | 
			
		||||
         ("prove-asdf" ,sbcl-prove-asdf)))
 | 
			
		||||
      (inputs
 | 
			
		||||
       `(("cl-libsvm-format" ,sbcl-cl-libsvm-format)
 | 
			
		||||
         ("cl-store" ,sbcl-cl-store)))
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(;; FIXME: Tests pass but then the check phase crashes
 | 
			
		||||
         #:tests? #f))
 | 
			
		||||
      (synopsis "Online Machine Learning for Common Lisp")
 | 
			
		||||
      (description
 | 
			
		||||
       "This library contains a collection of machine learning algorithms for
 | 
			
		||||
online linear classification written in Common Lisp.")
 | 
			
		||||
      (home-page "https://github.com/masatoi/cl-online-learning")
 | 
			
		||||
      (license license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public cl-online-learning
 | 
			
		||||
  (sbcl-package->cl-source-package sbcl-cl-online-learning))
 | 
			
		||||
 | 
			
		||||
(define-public ecl-cl-online-learning
 | 
			
		||||
  (sbcl-package->ecl-package sbcl-cl-online-learning))
 | 
			
		||||
 | 
			
		||||
(define-public sbcl-cl-random-forest
 | 
			
		||||
  (let ((commit "85fbdd4596d40e824f70f1b7cf239cf544e49d51")
 | 
			
		||||
        (revision "0"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "sbcl-cl-random-forest")
 | 
			
		||||
      (version (git-version "0.1" revision commit))
 | 
			
		||||
      (source
 | 
			
		||||
       (origin
 | 
			
		||||
         (method git-fetch)
 | 
			
		||||
         (uri (git-reference
 | 
			
		||||
               (url "https://github.com/masatoi/cl-random-forest.git")
 | 
			
		||||
               (commit commit)))
 | 
			
		||||
         (file-name (git-file-name name version))
 | 
			
		||||
         (sha256
 | 
			
		||||
          (base32
 | 
			
		||||
           "097xv60i1ndz68sg9p4pc7c5gvyp9i1xgw966b4wwfq3x6hbz421"))))
 | 
			
		||||
      (build-system asdf-build-system/sbcl)
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("prove" ,sbcl-prove)
 | 
			
		||||
         ("prove-asdf" ,sbcl-prove-asdf)
 | 
			
		||||
         ("trivial-garbage" ,sbcl-trivial-garbage)))
 | 
			
		||||
      (inputs
 | 
			
		||||
       `(("alexandria" ,sbcl-alexandria)
 | 
			
		||||
         ("cl-libsvm-format" ,sbcl-cl-libsvm-format)
 | 
			
		||||
         ("cl-online-learning" ,sbcl-cl-online-learning)
 | 
			
		||||
         ("lparallel" ,sbcl-lparallel)))
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(;; The tests download data from the Internet
 | 
			
		||||
         #:tests? #f
 | 
			
		||||
         #:phases
 | 
			
		||||
         (modify-phases %standard-phases
 | 
			
		||||
           (add-after 'unpack 'add-sb-cltl2-dependency
 | 
			
		||||
             (lambda _
 | 
			
		||||
               ;; sb-cltl2 is required by lparallel when using sbcl, but it is
 | 
			
		||||
               ;; not loaded automatically.
 | 
			
		||||
               (substitute* "cl-random-forest.asd"
 | 
			
		||||
                 (("\\(in-package :cl-user\\)")
 | 
			
		||||
                  "(in-package :cl-user) #+sbcl (require :sb-cltl2)"))
 | 
			
		||||
               #t)))))
 | 
			
		||||
      (synopsis "Random Forest and Global Refinement for Common Lisp")
 | 
			
		||||
      (description
 | 
			
		||||
       "CL-random-forest is an implementation of Random Forest for multiclass
 | 
			
		||||
classification and univariate regression written in Common Lisp.  It also
 | 
			
		||||
includes an implementation of Global Refinement of Random Forest.")
 | 
			
		||||
      (home-page "https://github.com/masatoi/cl-random-forest")
 | 
			
		||||
      (license license:expat))))
 | 
			
		||||
 | 
			
		||||
(define-public cl-random-forest
 | 
			
		||||
  (sbcl-package->cl-source-package sbcl-cl-random-forest))
 | 
			
		||||
 | 
			
		||||
(define-public ecl-cl-random-forest
 | 
			
		||||
  (sbcl-package->ecl-package sbcl-cl-random-forest))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -353,14 +353,14 @@ aliasing facilities to work just as they would on normal mail.")
 | 
			
		|||
(define-public mutt
 | 
			
		||||
  (package
 | 
			
		||||
    (name "mutt")
 | 
			
		||||
    (version "1.12.1")
 | 
			
		||||
    (version "1.12.2")
 | 
			
		||||
    (source (origin
 | 
			
		||||
             (method url-fetch)
 | 
			
		||||
             (uri (string-append "https://bitbucket.org/mutt/mutt/downloads/"
 | 
			
		||||
                                 "mutt-" version ".tar.gz"))
 | 
			
		||||
             (sha256
 | 
			
		||||
              (base32
 | 
			
		||||
               "0311sip2q90aqaxn7h3cck1zl98b4vifqi8bp5fsizy4dr06bi81"))
 | 
			
		||||
               "10k8352s0z7yan6d4z2am80qd3bsaky4h89g72wl4xr3x067ahmw"))
 | 
			
		||||
             (patches (search-patches "mutt-store-references.patch"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -491,7 +491,7 @@ It adds a large amount of new and improved features to mutt.")
 | 
			
		|||
(define-public gmime
 | 
			
		||||
  (package
 | 
			
		||||
    (name "gmime")
 | 
			
		||||
    (version "3.2.3")
 | 
			
		||||
    (version "3.2.4")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append "mirror://gnome/sources/gmime/"
 | 
			
		||||
| 
						 | 
				
			
			@ -499,7 +499,7 @@ It adds a large amount of new and improved features to mutt.")
 | 
			
		|||
                                  "/gmime-" version ".tar.xz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "04bk7rqs5slpvlvqf11i6s37s8b2xn6acls8smyl9asjnpp7a23a"))))
 | 
			
		||||
                "096hh4g6z343kncw9svcrzv05d41n4v2q5k9jsm6gc40w30ag7i4"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (native-inputs
 | 
			
		||||
     `(("pkg-config" ,pkg-config)
 | 
			
		||||
| 
						 | 
				
			
			@ -1151,14 +1151,14 @@ which can add many functionalities to the base client.")
 | 
			
		|||
(define-public msmtp
 | 
			
		||||
  (package
 | 
			
		||||
    (name "msmtp")
 | 
			
		||||
    (version "1.8.5")
 | 
			
		||||
    (version "1.8.6")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://marlam.de/msmtp/releases/"
 | 
			
		||||
                           "/msmtp-" version ".tar.xz"))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32 "0fczpfxlr62wkr7bwhp24clxg962k5khgz14h818qyy4v77dl4qn"))))
 | 
			
		||||
        (base32 "1qa260xrm0fzlwxpjvgvq39m4dfkskjlyb7m4y2vlr8c8d3z29b6"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (inputs
 | 
			
		||||
     `(("libsecret" ,libsecret)
 | 
			
		||||
| 
						 | 
				
			
			@ -1441,7 +1441,7 @@ hashing schemes plugin for @code{Dovecot}.")
 | 
			
		|||
    (inputs
 | 
			
		||||
     `(("bdb" ,bdb)
 | 
			
		||||
       ("cyrus-sasl" ,cyrus-sasl)
 | 
			
		||||
       ("openssl" ,openssl)
 | 
			
		||||
       ("openssl" ,openssl-1.0)
 | 
			
		||||
       ("zlib" ,zlib)))
 | 
			
		||||
    (home-page "http://isync.sourceforge.net/")
 | 
			
		||||
    (synopsis "Mailbox synchronization program")
 | 
			
		||||
| 
						 | 
				
			
			@ -1919,7 +1919,7 @@ Authentication-Results header seen in the wild.")
 | 
			
		|||
(define-public perl-mail-dkim
 | 
			
		||||
  (package
 | 
			
		||||
    (name "perl-mail-dkim")
 | 
			
		||||
    (version "0.55")
 | 
			
		||||
    (version "0.57")
 | 
			
		||||
    (source (origin
 | 
			
		||||
              (method url-fetch)
 | 
			
		||||
              (uri (string-append
 | 
			
		||||
| 
						 | 
				
			
			@ -1928,7 +1928,7 @@ Authentication-Results header seen in the wild.")
 | 
			
		|||
                     ".tar.gz"))
 | 
			
		||||
              (sha256
 | 
			
		||||
               (base32
 | 
			
		||||
                "18nsh1ff6fkns4xk3y2ixmzmadgggydj11qkzj6nlnq2hzqxsafz"))))
 | 
			
		||||
                "0fmfhwn4sh98w62rc8j584l23vlhr7vii8glm2njx14f81a56lvb"))))
 | 
			
		||||
    (build-system perl-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("perl-crypt-openssl-rsa" ,perl-crypt-openssl-rsa)
 | 
			
		||||
| 
						 | 
				
			
			@ -2887,14 +2887,13 @@ servers.  The 4rev1 and 4 versions of IMAP are supported.")
 | 
			
		|||
(define-public urlscan
 | 
			
		||||
  (package
 | 
			
		||||
    (name "urlscan")
 | 
			
		||||
    (version "0.9.2")
 | 
			
		||||
    (version "0.9.4")
 | 
			
		||||
    (source
 | 
			
		||||
      (origin
 | 
			
		||||
        (method url-fetch)
 | 
			
		||||
        (uri (pypi-uri "urlscan" version))
 | 
			
		||||
        (sha256
 | 
			
		||||
         (base32
 | 
			
		||||
          "1zldck7vnp7z04aacbx3cprf5kzha4gfhjmss4iv2lh5nccxjfzx"))))
 | 
			
		||||
         (base32 "1q0vxv9haap01vz1cbkzss62cgwb9365lv5vnkg2gbpx4g5y7a9l"))))
 | 
			
		||||
    (build-system python-build-system)
 | 
			
		||||
    (propagated-inputs
 | 
			
		||||
     `(("python-urwid" ,python-urwid)))
 | 
			
		||||
| 
						 | 
				
			
			@ -2937,8 +2936,8 @@ replacement for the @code{urlview} program.")
 | 
			
		|||
    (license gpl2+)))
 | 
			
		||||
 | 
			
		||||
(define-public mumi
 | 
			
		||||
  (let ((commit "ea0a28f8d5db5761765eb60043b8593901552e25")
 | 
			
		||||
        (revision "4"))
 | 
			
		||||
  (let ((commit "8a57c87797ffb07baa88697130204184db643521")
 | 
			
		||||
        (revision "5"))
 | 
			
		||||
    (package
 | 
			
		||||
      (name "mumi")
 | 
			
		||||
      (version (git-version "0.0.0" revision commit))
 | 
			
		||||
| 
						 | 
				
			
			@ -2950,7 +2949,7 @@ replacement for the @code{urlview} program.")
 | 
			
		|||
                (file-name (git-file-name name version))
 | 
			
		||||
                (sha256
 | 
			
		||||
                 (base32
 | 
			
		||||
                  "0b6dmi41vhssyf983blgi8a2kj3zjccc9cz7b7kvwh781ldqcywh"))))
 | 
			
		||||
                  "1575gn5p086sjxz5hvg6iyskq6cxf6vf50s9nsc4xgrbcqa3pv2c"))))
 | 
			
		||||
      (build-system gnu-build-system)
 | 
			
		||||
      (arguments
 | 
			
		||||
       `(#:phases
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -164,7 +164,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
 | 
			
		|||
    (source (origin
 | 
			
		||||
              (inherit (package-source static-bash))
 | 
			
		||||
              (patches
 | 
			
		||||
               (cons (search-patch "bash-4.4-linux-pgrp-pipe.patch")
 | 
			
		||||
               (cons (search-patch "bash-reproducible-linux-pgrp-pipe.patch")
 | 
			
		||||
                     (origin-patches (package-source static-bash))))))))
 | 
			
		||||
 | 
			
		||||
(define %static-inputs
 | 
			
		||||
| 
						 | 
				
			
			@ -594,34 +594,11 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
 | 
			
		|||
           #t))))
 | 
			
		||||
    (inputs `(("gcc" ,%gcc-static)))))
 | 
			
		||||
 | 
			
		||||
;; One package: build + remove store references
 | 
			
		||||
;; (define %mescc-tools-static-stripped
 | 
			
		||||
;;   ;; A statically linked Mescc Tools with store references removed, for
 | 
			
		||||
;;   ;; bootstrap.
 | 
			
		||||
;;   (package
 | 
			
		||||
;;     (inherit mescc-tools)
 | 
			
		||||
;;     (name "mescc-tools-static-stripped")
 | 
			
		||||
;;     (arguments
 | 
			
		||||
;;      `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
 | 
			
		||||
;;                           "CC=gcc -static")
 | 
			
		||||
;;        #:test-target "test"
 | 
			
		||||
;;        #:phases (modify-phases %standard-phases
 | 
			
		||||
;;                   (delete 'configure)
 | 
			
		||||
;;                   (add-after 'install 'strip-store-references
 | 
			
		||||
;;                     (lambda _
 | 
			
		||||
;;                       (let* ((out (assoc-ref %outputs "out"))
 | 
			
		||||
;;                              (bin (string-append out "/bin")))
 | 
			
		||||
;;                         (for-each (lambda (file)
 | 
			
		||||
;;                                  (let ((target (string-append bin "/" file)))
 | 
			
		||||
;;                                    (format #t "strippingg `~a'...~%" target)
 | 
			
		||||
;;                                    (remove-store-references target)))
 | 
			
		||||
;;                                   '( "M1" "blood-elf" "hex2"))))))))))
 | 
			
		||||
 | 
			
		||||
;; Two packages: first build static, bare minimum content.
 | 
			
		||||
(define %mescc-tools-static
 | 
			
		||||
  ;; A statically linked MesCC Tools.
 | 
			
		||||
  (package
 | 
			
		||||
    (inherit mescc-tools)
 | 
			
		||||
    (inherit mescc-tools-0.5.2)
 | 
			
		||||
    (name "mescc-tools-static")
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:system "i686-linux"
 | 
			
		||||
| 
						 | 
				
			
			@ -656,45 +633,12 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
 | 
			
		|||
           #t))))
 | 
			
		||||
    (inputs `(("mescc-tools" ,%mescc-tools-static)))))
 | 
			
		||||
 | 
			
		||||
;; (define-public %mes-minimal-stripped
 | 
			
		||||
;;   ;; A minimal Mes without documentation dependencies, for bootstrap.
 | 
			
		||||
;;   (let ((triplet "i686-unknown-linux-gnu"))
 | 
			
		||||
;;     (package
 | 
			
		||||
;;       (inherit mes)
 | 
			
		||||
;;       (name "mes-minimal-stripped")
 | 
			
		||||
;;       (native-inputs
 | 
			
		||||
;;        `(("guile" ,guile-2.2)))
 | 
			
		||||
;;       (arguments
 | 
			
		||||
;;        `(#:system "i686-linux"
 | 
			
		||||
;;          #:strip-binaries? #f
 | 
			
		||||
;;          #:configure-flags '("--mes")
 | 
			
		||||
;;          #:phases
 | 
			
		||||
;;          (modify-phases %standard-phases
 | 
			
		||||
;;            (delete 'patch-shebangs)
 | 
			
		||||
;;            (add-after 'install 'strip-install
 | 
			
		||||
;;              (lambda _
 | 
			
		||||
;;                (let* ((out (assoc-ref %outputs "out"))
 | 
			
		||||
;;                       (share (string-append out "/share")))
 | 
			
		||||
;;                  (delete-file-recursively (string-append out "/lib/guile"))
 | 
			
		||||
;;                  (delete-file-recursively (string-append share "/guile"))
 | 
			
		||||
;;                  (delete-file-recursively (string-append share "/mes/scaffold"))
 | 
			
		||||
 | 
			
		||||
;;                  (for-each delete-file
 | 
			
		||||
;;                            (find-files
 | 
			
		||||
;;                             (string-append share "/mes/lib") "\\.(h|c)"))
 | 
			
		||||
 | 
			
		||||
;;                  (for-each (lambda (dir)
 | 
			
		||||
;;                              (for-each remove-store-references
 | 
			
		||||
;;                                        (find-files (string-append out "/" dir)
 | 
			
		||||
;;                                                    ".*")))
 | 
			
		||||
;;                            '("bin" "share/mes")))))))))))
 | 
			
		||||
 | 
			
		||||
;; Two packages: first build static, bare minimum content.
 | 
			
		||||
(define-public %mes-minimal
 | 
			
		||||
  ;; A minimal Mes without documentation.
 | 
			
		||||
  (let ((triplet "i686-unknown-linux-gnu"))
 | 
			
		||||
    (package
 | 
			
		||||
      (inherit mes)
 | 
			
		||||
      (inherit mes-0.19)
 | 
			
		||||
      (name "mes-minimal")
 | 
			
		||||
      (native-inputs
 | 
			
		||||
       `(("guile" ,guile-2.2)))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,7 @@
 | 
			
		|||
;;; Copyright © 2015 David Thompson <davet@gnu.org>
 | 
			
		||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 | 
			
		||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
 | 
			
		||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 | 
			
		||||
;;;
 | 
			
		||||
;;; This file is part of GNU Guix.
 | 
			
		||||
;;;
 | 
			
		||||
| 
						 | 
				
			
			@ -23,6 +23,7 @@
 | 
			
		|||
(define-module (gnu packages markup)
 | 
			
		||||
  #:use-module (guix licenses)
 | 
			
		||||
  #:use-module (guix download)
 | 
			
		||||
  #:use-module (guix git-download)
 | 
			
		||||
  #:use-module (guix packages)
 | 
			
		||||
  #:use-module (guix build-system gnu)
 | 
			
		||||
  #:use-module (guix build-system trivial)
 | 
			
		||||
| 
						 | 
				
			
			@ -224,22 +225,22 @@ for parsing and rendering CommonMark.")
 | 
			
		|||
(define-public smu
 | 
			
		||||
  (package
 | 
			
		||||
    (name "smu")
 | 
			
		||||
    (version "1.4")
 | 
			
		||||
    (version "1.5")
 | 
			
		||||
    (source
 | 
			
		||||
     (origin
 | 
			
		||||
       (method url-fetch)
 | 
			
		||||
       (uri (string-append "https://github.com/Gottox/smu/archive/v"
 | 
			
		||||
                           version ".tar.gz"))
 | 
			
		||||
       (file-name (string-append name "-" version ".tar.gz"))
 | 
			
		||||
       (method git-fetch)
 | 
			
		||||
       (uri (git-reference
 | 
			
		||||
             (url "https://github.com/Gottox/smu.git")
 | 
			
		||||
             (commit (string-append "v" version))))
 | 
			
		||||
       (file-name (git-file-name name version))
 | 
			
		||||
       (sha256
 | 
			
		||||
        (base32
 | 
			
		||||
         "0iazl45rkz8ngsb5hpykl76w0ngvdvqqhym1qz5wykgmrzk293rp"))))
 | 
			
		||||
        (base32 "1jm7lhnzjx4q7gcwlkvsbffcy0zppywyh50d71ami6dnq182vvcc"))))
 | 
			
		||||
    (build-system gnu-build-system)
 | 
			
		||||
    (arguments
 | 
			
		||||
     `(#:make-flags (list "CC=gcc"
 | 
			
		||||
                          (string-append "PREFIX="
 | 
			
		||||
                                         (assoc-ref %outputs "out")))
 | 
			
		||||
       #:tests? #f ;No tests included
 | 
			
		||||
       #:tests? #f                      ; no tests included
 | 
			
		||||
       #:phases
 | 
			
		||||
       (modify-phases %standard-phases
 | 
			
		||||
         (delete 'configure))))
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
Some files were not shown because too many files have changed in this diff Show more
		Reference in a new issue