Merge branch 'master' into core-updates

This commit is contained in:
Mathieu Othacehe 2019-10-10 17:32:24 +02:00
commit 4d14902b94
No known key found for this signature in database
GPG Key ID: 8354763531769CA6
237 changed files with 57509 additions and 4735 deletions

View File

@ -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
View File

@ -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
View File

@ -0,0 +1,5 @@
;; This is a Guix channel.
(channel
(version 0)
(news-file "etc/news.scm"))

View File

@ -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 \

View File

@ -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

View File

@ -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
View 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:

View File

@ -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

View File

@ -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
View 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."))))

View File

@ -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")

View File

@ -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)

View 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

View File

@ -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))

View File

@ -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?

View File

@ -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 \

View File

@ -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

View File

@ -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.

View File

@ -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)))

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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

View File

@ -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"))))))

View File

@ -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"

View File

@ -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")

View File

@ -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)

View File

@ -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

View File

@ -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+))))

View File

@ -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)))

View File

@ -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)))

View File

@ -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)))

View File

@ -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))))

View File

@ -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))))

View File

@ -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)

View File

@ -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)

View File

@ -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

View File

@ -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")

View File

@ -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
View 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+)))

View File

@ -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

View 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)))))

View File

@ -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

View File

@ -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

View File

@ -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)))

View File

@ -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.

View File

@ -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"

View File

@ -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)))

View File

@ -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

View File

@ -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)

View File

@ -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)))

View File

@ -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

View File

@ -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)))

View File

@ -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

View File

@ -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"))))))

View File

@ -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

View File

@ -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))))

View File

@ -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))))

View File

@ -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+)))

View File

@ -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

View File

@ -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.

View File

@ -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")

View File

@ -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

View File

@ -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

View File

@ -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))))

View File

@ -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")

View File

@ -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+)))

View File

@ -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")

View File

@ -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,

View File

@ -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)

View File

@ -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

View File

@ -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)

View File

@ -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))))

View File

@ -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
View 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)))

View File

@ -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)))

View File

@ -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+))))

View File

@ -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

View File

@ -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")

View File

@ -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"

View File

@ -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))

View File

@ -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

View File

@ -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)))

View File

@ -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