Archived
1
0
Fork 0

Merge remote-tracking branch 'origin/master' into core-updates-frozen

This commit is contained in:
Efraim Flashner 2021-10-31 12:47:14 +02:00
commit bc5155b952
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
138 changed files with 7077 additions and 2791 deletions

View file

@ -317,6 +317,7 @@ MODULES = \
guix/scripts/import/stackage.scm \ guix/scripts/import/stackage.scm \
guix/scripts/import/texlive.scm \ guix/scripts/import/texlive.scm \
guix/scripts/environment.scm \ guix/scripts/environment.scm \
guix/scripts/shell.scm \
guix/scripts/publish.scm \ guix/scripts/publish.scm \
guix/scripts/edit.scm \ guix/scripts/edit.scm \
guix/scripts/size.scm \ guix/scripts/size.scm \
@ -477,6 +478,7 @@ SCM_TESTS = \
tests/graph.scm \ tests/graph.scm \
tests/gremlin.scm \ tests/gremlin.scm \
tests/hackage.scm \ tests/hackage.scm \
tests/home-import.scm \
tests/import-git.scm \ tests/import-git.scm \
tests/import-utils.scm \ tests/import-utils.scm \
tests/inferior.scm \ tests/inferior.scm \
@ -556,6 +558,7 @@ SH_TESTS = \
tests/guix-authenticate.sh \ tests/guix-authenticate.sh \
tests/guix-environment.sh \ tests/guix-environment.sh \
tests/guix-environment-container.sh \ tests/guix-environment-container.sh \
tests/guix-shell.sh \
tests/guix-graph.sh \ tests/guix-graph.sh \
tests/guix-describe.sh \ tests/guix-describe.sh \
tests/guix-repl.sh \ tests/guix-repl.sh \

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -59,6 +59,7 @@
;; failed" crash: <https://bugs.gnu.org/47428>. ;; failed" crash: <https://bugs.gnu.org/47428>.
(computed-file (computed-file-name result) (computed-file (computed-file-name result)
(computed-file-gexp result) (computed-file-gexp result)
#:local-build? #f
#:options (computed-file-options result) #:options (computed-file-options result)
#:guile guile-3.0-latest))))) #:guile guile-3.0-latest)))))
@ -699,7 +700,7 @@ makeinfo OPTIONS."
'#$languages))))) '#$languages)))))
(let* ((name (string-append manual "-html-manual")) (let* ((name (string-append manual "-html-manual"))
(manual (computed-file name build))) (manual (computed-file name build #:local-build? #f)))
(syntax-highlighted-html manual (syntax-highlighted-html manual
#:mono-node-indexes mono-node-indexes #:mono-node-indexes mono-node-indexes
#:split-node-indexes split-node-indexes #:split-node-indexes split-node-indexes
@ -803,7 +804,8 @@ PDF for language '~a'!~%~%"
opts)))) opts))))
'#$languages)))) '#$languages))))
(computed-file (string-append manual "-pdf-manual") build)) (computed-file (string-append manual "-pdf-manual") build
#:local-build? #f))
(define (guix-manual-text-domain source languages) (define (guix-manual-text-domain source languages)
"Return the PO files for LANGUAGES of the 'guix-manual' text domain taken "Return the PO files for LANGUAGES of the 'guix-manual' text domain taken

View file

@ -73,10 +73,10 @@ all the dependencies and appropriate environment variables are set up to
hack on Guix: hack on Guix:
@example @example
guix environment guix --pure guix shell -D guix --pure
@end example @end example
@xref{Invoking guix environment}, for more information on that command. @xref{Invoking guix shell}, for more information on that command.
If you are unable to use Guix when building Guix from a checkout, the If you are unable to use Guix when building Guix from a checkout, the
following are the required packages in addition to those mentioned in the following are the required packages in addition to those mentioned in the
@ -92,10 +92,10 @@ installation instructions (@pxref{Requirements}).
@end itemize @end itemize
On Guix, extra dependencies can be added by instead running @command{guix On Guix, extra dependencies can be added by instead running @command{guix
environment} with @option{--ad-hoc}: shell}:
@example @example
guix environment guix --pure --ad-hoc help2man git strace guix shell -D guix help2man git strace --pure
@end example @end example
Run @command{./bootstrap} to generate the build system infrastructure Run @command{./bootstrap} to generate the build system infrastructure

View file

@ -120,6 +120,7 @@ Documentation License''.
@dircategory Software development @dircategory Software development
@direntry @direntry
* guix shell: (guix)Invoking guix shell. Creating software environments.
* guix environment: (guix)Invoking guix environment. Building development environments with Guix. * guix environment: (guix)Invoking guix environment. Building development environments with Guix.
* guix build: (guix)Invoking guix build. Building packages. * guix build: (guix)Invoking guix build. Building packages.
* guix pack: (guix)Invoking guix pack. Creating binary bundles. * guix pack: (guix)Invoking guix pack. Creating binary bundles.
@ -263,6 +264,7 @@ Channels
Development Development
* Invoking guix shell:: Spawning one-off software environments.
* Invoking guix environment:: Setting up development environments. * Invoking guix environment:: Setting up development environments.
* Invoking guix pack:: Creating software bundles. * Invoking guix pack:: Creating software bundles.
* The GCC toolchain:: Working with languages supported by GCC. * The GCC toolchain:: Working with languages supported by GCC.
@ -3069,10 +3071,10 @@ substitutes: they can force a local build and @emph{challenge} providers
(@pxref{Invoking guix challenge}). (@pxref{Invoking guix challenge}).
Control over the build environment is a feature that is also useful for Control over the build environment is a feature that is also useful for
developers. The @command{guix environment} command allows developers of developers. The @command{guix shell} command allows developers of
a package to quickly set up the right development environment for their a package to quickly set up the right development environment for their
package, without having to manually install the dependencies of the package, without having to manually install the dependencies of the
package into their profile (@pxref{Invoking guix environment}). package into their profile (@pxref{Invoking guix shell}).
@cindex replication, of software environments @cindex replication, of software environments
@cindex provenance tracking, of software artifacts @cindex provenance tracking, of software artifacts
@ -3236,7 +3238,7 @@ As an example, @var{file} might contain a definition like this
Developers may find it useful to include such a @file{guix.scm} file Developers may find it useful to include such a @file{guix.scm} file
in the root of their project source tree that can be used to test in the root of their project source tree that can be used to test
development snapshots and create reproducible development environments development snapshots and create reproducible development environments
(@pxref{Invoking guix environment}). (@pxref{Invoking guix shell}).
The @var{file} may also contain a JSON representation of one or more The @var{file} may also contain a JSON representation of one or more
package definitions. Running @code{guix package -f} on package definitions. Running @code{guix package -f} on
@ -3343,6 +3345,17 @@ objects, like this:
'("emacs" "guile@@2.2" "guile@@2.2:debug")) '("emacs" "guile@@2.2" "guile@@2.2:debug"))
@end lisp @end lisp
@findex package->development-manifest
You might also want to create a manifest for all the dependencies of a
package, rather than the package itself:
@lisp
(package->development-manifest (specification->package "emacs"))
@end lisp
The example above gives you all the software required to develop Emacs,
similar to what @command{guix environment emacs} provides.
@xref{export-manifest, @option{--export-manifest}}, to learn how to @xref{export-manifest, @option{--export-manifest}}, to learn how to
obtain a manifest file from an existing profile. obtain a manifest file from an existing profile.
@ -5552,31 +5565,389 @@ If you are a software developer, Guix provides tools that you should find
helpful---independently of the language you're developing in. This is what helpful---independently of the language you're developing in. This is what
this chapter is about. this chapter is about.
The @command{guix environment} command provides a convenient way to set up The @command{guix shell} command provides a convenient way to set up
@dfn{development environments} containing all the dependencies and tools one-off software environments, be it for development purposes or to run
necessary to work on the software package of your choice. The @command{guix a command without installing it in your profile. The @command{guix
pack} command allows you to create @dfn{application bundles} that can be pack} command allows you to create @dfn{application bundles} that can be
easily distributed to users who do not run Guix. easily distributed to users who do not run Guix.
@menu @menu
* Invoking guix shell:: Spawning one-off software environments.
* Invoking guix environment:: Setting up development environments. * Invoking guix environment:: Setting up development environments.
* Invoking guix pack:: Creating software bundles. * Invoking guix pack:: Creating software bundles.
* The GCC toolchain:: Working with languages supported by GCC. * The GCC toolchain:: Working with languages supported by GCC.
* Invoking guix git authenticate:: Authenticating Git repositories. * Invoking guix git authenticate:: Authenticating Git repositories.
@end menu @end menu
@node Invoking guix environment @node Invoking guix shell
@section Invoking @command{guix environment} @section Invoking @command{guix shell}
@cindex reproducible build environments @cindex reproducible build environments
@cindex development environments @cindex development environments
@cindex @command{guix environment} @cindex @command{guix environment}
@cindex environment, package build environment @cindex environment, package build environment
The purpose of @command{guix environment} is to assist hackers in The purpose of @command{guix shell} is to make it easy to create one-off
creating reproducible development environments without polluting their software environments, without changing one's profile. It is typically
package profile. The @command{guix environment} tool takes one or more used to create development environments; it is also a convenient way to
packages, builds all of their inputs, and creates a shell run applications without ``polluting'' your profile.
environment to use them.
@quotation Note
The @command{guix shell} command was recently introduced to supersede
@command{guix environment} (@pxref{Invoking guix environment}). If you
are familiar with @command{guix environment}, you will notice that it is
similar but also---we hope!---more convenient.
@end quotation
The general syntax is:
@example
guix shell [@var{options}] [@var{package}@dots{}]
@end example
The following example creates an environment containing Python and NumPy,
building or downloading any missing package, and runs the
@command{python3} command in that environment:
@example
guix shell python python-numpy -- python3
@end example
Development environments can be created as in the example below, which
spawns an interactive shell containing all the dependencies and
environment variables needed to work on Inkscape:
@example
guix shell --development inkscape
@end example
Exiting the shell places the user back in the original environment
before @command{guix shell} was invoked. The next garbage collection
(@pxref{Invoking guix gc}) may clean up packages that were installed in
the environment and that are no longer used outside of it.
As an added convenience, when running from a directory that contains a
@file{manifest.scm} or a @file{guix.scm} file (in this order), possibly
in a parent directory, @command{guix shell} automatically loads the
file---provided the directory is listed in
@file{~/.config/guix/shell-authorized-directories}, and only for
interactive use:
@example
guix shell
@end example
This provides an easy way to define, share, and enter development
environments.
By default, the shell session or command runs in an @emph{augmented}
environment, where the new packages are added to search path environment
variables such as @code{PATH}. You can, instead, choose to create an
@emph{isolated} environment containing nothing but the packages you
asked for. Passing the @option{--pure} option clears environment
variable definitions found in the parent environment@footnote{Be sure to
use the @option{--check} option the first time you use @command{guix
shell} interactively to make sure the shell does not undo the effect of
@option{--pure}.}; passing @option{--container} goes one step further by
spawning a @dfn{container} isolated from the rest of the system:
@example
guix shell --container emacs gcc-toolchain
@end example
The command above spawns an interactive shell in a container when
nothing but @code{emacs}, @code{gcc-toolchain}, and their dependencies
is available. The container lacks network access and shares no files
other than the current working directory with the surrounding
environment. This is useful to prevent access to system-wide resources
such as @file{/usr/bin} on foreign distros.
This @option{--container} option can also prove useful if you wish to
run a security-sensitive application, such as a web browser, in an
isolated environment. For example, the command below launches
Ungoogled-Chromium in an isolated environment, this time sharing network
access with the host and preserving its @code{DISPLAY} environment
variable, but without even sharing the current directory:
@example
guix shell --container --network --no-cwd ungoogled-chromium \
--preserve='^DISPLAY$' -- chromium
@end example
@vindex GUIX_ENVIRONMENT
@command{guix shell} defines the @env{GUIX_ENVIRONMENT}
variable in the shell it spawns; its value is the file name of the
profile of this environment. This allows users to, say, define a
specific prompt for development environments in their @file{.bashrc}
(@pxref{Bash Startup Files,,, bash, The GNU Bash Reference Manual}):
@example
if [ -n "$GUIX_ENVIRONMENT" ]
then
export PS1="\u@@\h \w [dev]\$ "
fi
@end example
@noindent
...@: or to browse the profile:
@example
$ ls "$GUIX_ENVIRONMENT/bin"
@end example
The available options are summarized below.
@table @code
@item --check
Set up the environment and check whether the shell would clobber
environment variables. It's a good idea to use this option the first
time you run @command{guix shell} for an interactive session to make
sure your setup is correct.
For example, if the shell modifies the @env{PATH} environment variable,
report it since you would get a different environment than what you
asked for.
Such problems usually indicate that the shell startup files are
unexpectedly modifying those environment variables. For example, if you
are using Bash, make sure that environment variables are set or modified
in @file{~/.bash_profile} and @emph{not} in @file{~/.bashrc}---the
former is sourced only by log-in shells. @xref{Bash Startup Files,,,
bash, The GNU Bash Reference Manual}, for details on Bash start-up
files.
@item --development
@itemx -D
Cause @command{guix shell} to include in the environment the
dependencies of the following package rather than the package itself.
This can be combined with other packages. For instance, the command
below starts an interactive shell containing the build-time dependencies
of GNU@tie{}Guile, plus Autoconf, Automake, and Libtool:
@example
guix shell -D guile autoconf automake libtool
@end example
@item --expression=@var{expr}
@itemx -e @var{expr}
Create an environment for the package or list of packages that
@var{expr} evaluates to.
For example, running:
@example
guix shell -D -e '(@@ (gnu packages maths) petsc-openmpi)'
@end example
starts a shell with the environment for this specific variant of the
PETSc package.
Running:
@example
guix shell -e '(@@ (gnu) %base-packages)'
@end example
starts a shell with all the base system packages available.
The above commands only use the default output of the given packages.
To select other outputs, two element tuples can be specified:
@example
guix shell -e '(list (@@ (gnu packages bash) bash) "include")'
@end example
@item --file=@var{file}
@itemx -f @var{file}
Create an environment containing the package or list of packages that
the code within @var{file} evaluates to.
As an example, @var{file} might contain a definition like this
(@pxref{Defining Packages}):
@lisp
@verbatiminclude environment-gdb.scm
@end lisp
With the file above, you can enter a development environment for GDB by
running:
@example
guix shell -D -f gdb-devel.scm
@end example
@item --manifest=@var{file}
@itemx -m @var{file}
Create an environment for the packages contained in the manifest object
returned by the Scheme code in @var{file}. This option can be repeated
several times, in which case the manifests are concatenated.
This is similar to the same-named option in @command{guix package}
(@pxref{profile-manifest, @option{--manifest}}) and uses the same
manifest files.
@item --rebuild-cache
When using @option{--manifest}, @option{--file}, or when invoked without
arguments, @command{guix shell} caches the environment so that
subsequent uses are instantaneous. The cache is invalidated anytime the
file is modified.
The @option{--rebuild-cache} forces the cached environment to be
refreshed even if the file has not changed. This is useful if the
@command{guix.scm} or @command{manifest.scm} has external dependencies,
or if its behavior depends, say, on environment variables.
@item --pure
Unset existing environment variables when building the new environment, except
those specified with @option{--preserve} (see below). This has the effect of
creating an environment in which search paths only contain package inputs.
@item --preserve=@var{regexp}
@itemx -E @var{regexp}
When used alongside @option{--pure}, preserve the environment variables
matching @var{regexp}---in other words, put them on a ``white list'' of
environment variables that must be preserved. This option can be repeated
several times.
@example
guix shell --pure --preserve=^SLURM openmpi @dots{} \
-- mpirun @dots{}
@end example
This example runs @command{mpirun} in a context where the only environment
variables defined are @env{PATH}, environment variables whose name starts
with @samp{SLURM}, as well as the usual ``precious'' variables (@env{HOME},
@env{USER}, etc.).
@item --search-paths
Display the environment variable definitions that make up the
environment.
@item --system=@var{system}
@itemx -s @var{system}
Attempt to build for @var{system}---e.g., @code{i686-linux}.
@item --container
@itemx -C
@cindex container
Run @var{command} within an isolated container. The current working
directory outside the container is mapped inside the container.
Additionally, unless overridden with @option{--user}, a dummy home
directory is created that matches the current user's home directory, and
@file{/etc/passwd} is configured accordingly.
The spawned process runs as the current user outside the container. Inside
the container, it has the same UID and GID as the current user, unless
@option{--user} is passed (see below).
@item --network
@itemx -N
For containers, share the network namespace with the host system.
Containers created without this flag only have access to the loopback
device.
@item --link-profile
@itemx -P
For containers, link the environment profile to @file{~/.guix-profile}
within the container and set @code{GUIX_ENVIRONMENT} to that.
This is equivalent to making @file{~/.guix-profile} a symlink to the
actual profile within the container.
Linking will fail and abort the environment if the directory already
exists, which will certainly be the case if @command{guix shell}
was invoked in the user's home directory.
Certain packages are configured to look in @file{~/.guix-profile} for
configuration files and data;@footnote{For example, the
@code{fontconfig} package inspects @file{~/.guix-profile/share/fonts}
for additional fonts.} @option{--link-profile} allows these programs to
behave as expected within the environment.
@item --user=@var{user}
@itemx -u @var{user}
For containers, use the username @var{user} in place of the current
user. The generated @file{/etc/passwd} entry within the container will
contain the name @var{user}, the home directory will be
@file{/home/@var{user}}, and no user GECOS data will be copied. Furthermore,
the UID and GID inside the container are 1000. @var{user}
need not exist on the system.
Additionally, any shared or exposed path (see @option{--share} and
@option{--expose} respectively) whose target is within the current user's
home directory will be remapped relative to @file{/home/USER}; this
includes the automatic mapping of the current working directory.
@example
# will expose paths as /home/foo/wd, /home/foo/test, and /home/foo/target
cd $HOME/wd
guix shell --container --user=foo \
--expose=$HOME/test \
--expose=/tmp/target=$HOME/target
@end example
While this will limit the leaking of user identity through home paths
and each of the user fields, this is only one useful component of a
broader privacy/anonymity solution---not one in and of itself.
@item --no-cwd
For containers, the default behavior is to share the current working
directory with the isolated container and immediately change to that
directory within the container. If this is undesirable,
@option{--no-cwd} will cause the current working directory to @emph{not}
be automatically shared and will change to the user's home directory
within the container instead. See also @option{--user}.
@item --expose=@var{source}[=@var{target}]
@itemx --share=@var{source}[=@var{target}]
For containers, @option{--expose} (resp. @option{--share}) exposes the
file system @var{source} from the host system as the read-only
(resp. writable) file system @var{target} within the container. If
@var{target} is not specified, @var{source} is used as the target mount
point in the container.
The example below spawns a Guile REPL in a container in which the user's
home directory is accessible read-only via the @file{/exchange}
directory:
@example
guix shell --container --expose=$HOME=/exchange guile -- guile
@end example
@item --root=@var{file}
@itemx -r @var{file}
@cindex persistent environment
@cindex garbage collector root, for environments
Make @var{file} a symlink to the profile for this environment, and
register it as a garbage collector root.
This is useful if you want to protect your environment from garbage
collection, to make it ``persistent''.
When this option is omitted, the environment is protected from garbage
collection only for the duration of the @command{guix shell}
session. This means that next time you recreate the same environment,
you could have to rebuild or re-download packages. @xref{Invoking guix
gc}, for more on GC roots.
@end table
@command{guix shell} also supports all of the common build options that
@command{guix build} supports (@pxref{Common Build Options}) as well as
package transformation options (@pxref{Package Transformation Options}).
@node Invoking guix environment
@section Invoking @command{guix environment}
The purpose of @command{guix environment} is to assist in creating
development environments.
@quotation Deprecation warning
The @command{guix environment} command is deprecated in favor of
@command{guix shell}, which performs similar functions but is more
convenient to use. @xref{Invoking guix shell}.
Being deprecated, @command{guix environment} is slated for eventual
removal, but the Guix project is committed to keeping it until May 1st,
2023. Please get in touch with us at @email{guix-devel@@gnu.org} if you
would like to discuss it.
@end quotation
The general syntax is: The general syntax is:
@ -5710,6 +6081,11 @@ guix environment --preserve='^DISPLAY$' --container --network \
The available options are summarized below. The available options are summarized below.
@table @code @table @code
@item --check
Set up the environment and check whether the shell would clobber
environment variables. @xref{Invoking guix shell, @option{--check}},
for more info.
@item --root=@var{file} @item --root=@var{file}
@itemx -r @var{file} @itemx -r @var{file}
@cindex persistent environment @cindex persistent environment
@ -6898,6 +7274,47 @@ In this example we obtain the @code{gmp} package that is among the
direct inputs of @code{coreutils}. direct inputs of @code{coreutils}.
@end deffn @end deffn
@cindex development inputs, of a package
@cindex implicit inputs, of a package
Sometimes you will want to obtain the list of inputs needed to
@emph{develop} a package---all the inputs that are visible when the
package is compiled. This is what the @code{package-development-inputs}
procedure returns.
@deffn {Scheme Procedure} package-development-inputs @var{package} @
[@var{system}] [#:target #f]
Return the list of inputs required by @var{package} for development
purposes on @var{system}. When @var{target} is true, return the inputs
needed to cross-compile @var{package} from @var{system} to
@var{triplet}, where @var{triplet} is a triplet such as
@code{"aarch64-linux-gnu"}.
Note that the result includes both explicit inputs and implicit
inputs---inputs automatically added by the build system (@pxref{Build
Systems}). Let us take the @code{hello} package to illustrate that:
@lisp
(use-modules (gnu packages base) (guix packages))
hello
@result{} #<package hello@@2.10 gnu/packages/base.scm:79 7f585d4f6790>
(package-direct-inputs hello)
@result{} ()
(package-development-inputs hello)
@result{} (("source" @dots{}) ("tar" #<package tar@@1.32 @dots{}>) @dots{})
@end lisp
In this example, @code{package-direct-inputs} returns the empty list,
because @code{hello} has zero explicit dependencies. Conversely,
@code{package-development-inputs} includes inputs implicitly added by
@code{gnu-build-system} that are required to build @code{hello}: tar,
gzip, GCC, libc, Bash, and more. To visualize it, @command{guix graph
hello} would show you explicit inputs, whereas @command{guix graph -t
bag hello} would include implicit inputs (@pxref{Invoking guix graph}).
@end deffn
Because packages are regular Scheme objects that capture a complete Because packages are regular Scheme objects that capture a complete
dependency graph and associated build procedures, it is often useful to dependency graph and associated build procedures, it is often useful to
write procedures that take a package and return a modified version write procedures that take a package and return a modified version
@ -11152,14 +11569,14 @@ a container similar to the one the build daemon creates:
$ guix build -K foo $ guix build -K foo
@dots{} @dots{}
$ cd /tmp/guix-build-foo.drv-0 $ cd /tmp/guix-build-foo.drv-0
$ guix environment --no-grafts -C foo --ad-hoc strace gdb $ guix shell --no-grafts -C foo strace gdb
[env]# source ./environment-variables [env]# source ./environment-variables
[env]# cd foo-1.2 [env]# cd foo-1.2
@end example @end example
Here, @command{guix environment -C} creates a container and spawns a new Here, @command{guix shell -C} creates a container and spawns a new
shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc shell in it (@pxref{Invoking guix shell}). The @command{strace gdb}
strace gdb} part adds the @command{strace} and @command{gdb} commands to part adds the @command{strace} and @command{gdb} commands to
the container, which you may find handy while debugging. The the container, which you may find handy while debugging. The
@option{--no-grafts} option makes sure we get the exact same @option{--no-grafts} option makes sure we get the exact same
environment, with ungrafted packages (@pxref{Security Updates}, for more environment, with ungrafted packages (@pxref{Security Updates}, for more
@ -11173,7 +11590,7 @@ remove @file{/bin/sh}:
@end example @end example
(Don't worry, this is harmless: this is all happening in the throw-away (Don't worry, this is harmless: this is all happening in the throw-away
container created by @command{guix environment}.) container created by @command{guix shell}.)
The @command{strace} command is probably not in the search path, but we The @command{strace} command is probably not in the search path, but we
can run: can run:
@ -13468,8 +13885,8 @@ is subject to radical change in the future.
The purpose of @command{guix container} is to manipulate processes The purpose of @command{guix container} is to manipulate processes
running within an isolated environment, commonly known as a running within an isolated environment, commonly known as a
``container'', typically created by the @command{guix environment} ``container'', typically created by the @command{guix shell}
(@pxref{Invoking guix environment}) and @command{guix system container} (@pxref{Invoking guix shell}) and @command{guix system container}
(@pxref{Invoking guix system}) commands. (@pxref{Invoking guix system}) commands.
The general syntax is: The general syntax is:
@ -13655,7 +14072,7 @@ listed.}. Here's an example of the information it returns:
$ sudo guix processes $ sudo guix processes
SessionPID: 19002 SessionPID: 19002
ClientPID: 19090 ClientPID: 19090
ClientCommand: guix environment --ad-hoc python ClientCommand: guix shell python
SessionPID: 19402 SessionPID: 19402
ClientPID: 19367 ClientPID: 19367
@ -17362,6 +17779,10 @@ Data type representing the configuration for @code{rsync-service}.
@item @code{package} (default: @var{rsync}) @item @code{package} (default: @var{rsync})
@code{rsync} package to use. @code{rsync} package to use.
@item @code{address} (default: @code{#f})
IP address on which @command{rsync} listens for incoming connections.
If unspecified, it defaults to listening on all available addresses.
@item @code{port-number} (default: @code{873}) @item @code{port-number} (default: @code{873})
TCP port on which @command{rsync} listens for incoming connections. If port TCP port on which @command{rsync} listens for incoming connections. If port
is less than @code{1024} @command{rsync} needs to be started as the is less than @code{1024} @command{rsync} needs to be started as the
@ -29868,8 +30289,7 @@ When the service is running, you can view its console by connecting to
it with a VNC client, for example with: it with a VNC client, for example with:
@example @example
guix environment --ad-hoc tigervnc-client -- \ guix shell tigervnc-client -- vncviewer localhost:5900
vncviewer localhost:5900
@end example @end example
The default configuration (see @code{hurd-vm-configuration} below) The default configuration (see @code{hurd-vm-configuration} below)
@ -34125,7 +34545,7 @@ guix system delete-generations
@end example @end example
You can also select the generations you want to delete. The example below You can also select the generations you want to delete. The example below
deletes all the system generations that are more than two month old: deletes all the system generations that are more than two months old:
@example @example
guix system delete-generations 2m guix system delete-generations 2m
@ -35657,12 +36077,27 @@ still in an experimental stage, though.
@section Declaring the Home Environment @section Declaring the Home Environment
The home environment is configured by providing a The home environment is configured by providing a
@code{home-environment} declaration in a file that can be passed to the @code{home-environment} declaration in a file that can be passed to the
@command{guix home} command (@pxref{Invoking guix home}). A simple @command{guix home} command (@pxref{Invoking guix home}). The easiest
setup can include Bash and a custom text configuration, like in the way to get started is by generating an initial configuration with
example below. Don't be afraid to declare home environment parts, which @command{guix home import}:
overlaps with your current dotfiles, before installing any configuration
files, Guix Home will back up existing config files to a separate place @example
in the home folder. guix home import ~/src/guix-config
@end example
The @command{guix home import} command reads some of the ``dot files''
such as @file{~/.bashrc} found in your home directory and copies them to
the given directory, @file{~/src/guix-config} in this case; it also
reads the contents of your profile, @file{~/.guix-profile}, and, based
on that, it outputs a Home configuration that resembles your current
configuration. You can dump that configuration to a file and you're
ready to go!
A simple setup can include Bash and a custom text configuration, like in
the example below. Don't be afraid to declare home environment parts,
which overlaps with your current dot files: before installing any
configuration files, Guix Home will back up existing config files to a
separate place in the home directory.
@quotation Note @quotation Note
It is highly recommended that you manage your shell or shells with Guix It is highly recommended that you manage your shell or shells with Guix
@ -35685,10 +36120,20 @@ There is no daemon (at least not necessarily) related to a home service,
a home service is just an element that is used to declare part of home a home service is just an element that is used to declare part of home
environment and extend other parts of it. The extension mechanism environment and extend other parts of it. The extension mechanism
discussed in the previous chapter (@pxref{Defining Services}) should not discussed in the previous chapter (@pxref{Defining Services}) should not
be confused with @ref{Shepherd Services}. Using this extension be confused with Shepherd services (@pxref{Shepherd Services}). Using this extension
mechanism and some Scheme code that glues things together gives the user mechanism and some Scheme code that glues things together gives the user
the freedom to declare their own, very custom, home environments. the freedom to declare their own, very custom, home environments.
Once you have a configuration file that suits your needs, you can
reconfigure your home by running:
@example
guix home reconfigure config.scm
@end example
This ``builds'' your home environment and creates @file{~/.guix-home}
pointing to it. Voilà!
@node Configuring the Shell @node Configuring the Shell
@section Configuring the Shell @section Configuring the Shell
This section is safe to skip if your shell or shells are managed by This section is safe to skip if your shell or shells are managed by
@ -36283,7 +36728,7 @@ guix home delete-generations
@end example @end example
You can also select the generations you want to delete. The example below You can also select the generations you want to delete. The example below
deletes all the home generations that are more than two month old: deletes all the home generations that are more than two months old:
@example @example
guix home delete-generations 2m guix home delete-generations 2m
@ -36313,6 +36758,38 @@ generations that are up to 10 days old:
$ guix home list-generations 10d $ guix home list-generations 10d
@end example @end example
@item import
Generate a @dfn{home environment} from the packages in the default
profile and configuration files found in the user's home directory. The
configuration files will be copied to the specified directory. Note
that not every home service that exists is supported (@pxref{Home
Services}).
@example
$ guix home import ~/guix-config
;; This "home-environment" file can be passed to 'guix home reconfigure'
;; to reproduce the content of your profile. This is "symbolic": it only
;; specifies package names. To reproduce the exact same profile, you also
;; need to capture the channels being used, as returned by "guix describe".
;; See the "Replicating Guix" section in the manual.
(use-modules
(gnu home)
(gnu packages)
(gnu home services shells))
(home-environment
(packages
(map specification->package
(list "glibc-locales" "nss-certs" "nss")))
(services
(list (service
home-bash-service-type
(home-bash-configuration
(bashrc
(list (local-file "/home/charlie/guix-config/.bashrc"))))))))
@end example
@end table @end table
@var{options} can contain any of the common build options (@pxref{Common @var{options} can contain any of the common build options (@pxref{Common

View file

@ -110,18 +110,18 @@ endef
$(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go $(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go
-$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix.texi" -p "$<" -l "$@.tmp" -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix.texi" -p "$<" -l "$@.tmp"
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp" -sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
-$(AM_V_POXREF)$(xref_command) -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@" -mv "$@.tmp" "$@"
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go $(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
-$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/guix-cookbook.texi" -p "$<" -l "$@.tmp" -$(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" -sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
-$(AM_V_POXREF)$(xref_command) -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@" -mv "$@.tmp" "$@"
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go $(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go
-$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/contributing.texi" -p "$<" -l "$@.tmp" -$(AM_V_PO4A)$(PO4A_TRANSLATE) $(PO4A_PARAMS) -m "%D%/contributing.texi" -p "$<" -l "$@.tmp"
-$(AM_V_POXREF)$(xref_command) -$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@" -mv "$@.tmp" "$@"
%D%/os-config-%.texi: gnu/system/examples/%.tmpl %D%/os-config-%.texi: gnu/system/examples/%.tmpl

View file

@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU # GNU Guix --- Functional package management for GNU
# Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> # Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2021 Tobias Geerinck-Rice <me@tobias.gr> # Copyright © 2021 Tobias Geerinck-Rice <me@tobias.gr>
# #
# This file is part of GNU Guix. # This file is part of GNU Guix.
@ -28,10 +28,11 @@ _guix_complete_command ()
if [ -z "$_guix_commands" ] if [ -z "$_guix_commands" ]
then then
# Cache the list of commands to speed things up. # Cache the list of commands to speed things up.
_guix_commands="$(guix --help 2> /dev/null \ _guix_commands="$(${COMP_WORDS[0]} --help 2> /dev/null \
| grep '^ ' \ | grep '^ ' \
| sed '-es/^ *\([a-z-]\+\).*$/\1/g')" | sed '-es/^ *\([a-z-]\+\).*$/\1/g')"
fi fi
COMPREPLY+=($(compgen -W "$_guix_commands" -- "$word_at_point")) COMPREPLY+=($(compgen -W "$_guix_commands" -- "$word_at_point"))
} }
@ -71,10 +72,16 @@ _guix_complete_option ()
{ {
local command="${COMP_WORDS[$1]}" local command="${COMP_WORDS[$1]}"
local subcommand="${COMP_WORDS[$(($1 + 1))]}" local subcommand="${COMP_WORDS[$(($1 + 1))]}"
if _guix_is_option "$subcommand"
if [ $1 -le 1 ]
then
command=""
subcommand=""
elif _guix_is_option "$subcommand"
then then
subcommand="" subcommand=""
fi fi
local options="$(${COMP_WORDS[0]} $command $subcommand --help 2> /dev/null \ local options="$(${COMP_WORDS[0]} $command $subcommand --help 2> /dev/null \
| grep '^ \+-' \ | grep '^ \+-' \
| sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')" | sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')"
@ -215,7 +222,7 @@ _guix_complete ()
if [[ "$word" = "--" ]] if [[ "$word" = "--" ]]
then then
case "$command" in case "$command" in
environment) environment|shell)
break break
;; ;;
time-machine) time-machine)
@ -228,6 +235,7 @@ _guix_complete ()
case $COMP_CWORD in case $COMP_CWORD in
$command_index) $command_index)
_guix_complete_command _guix_complete_command
_guix_complete_option 0 "$word_at_point"
;; ;;
*) *)
if [[ "$command" = "package" ]] if [[ "$command" = "package" ]]
@ -265,7 +273,7 @@ _guix_complete ()
else else
_guix_complete_available_package_or_store_file "$word_at_point" _guix_complete_available_package_or_store_file "$word_at_point"
fi fi
elif [[ "$command" = "environment" ]] elif [[ "$command" = "environment" || "$command" = "shell" ]]
then then
if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p || _guix_is_dash_l if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p || _guix_is_dash_l
then then

View file

@ -58,6 +58,7 @@ _guix_list_available_packages()
if ( [[ ${+_guix_available_packages} -eq 0 ]] || _cache_invalid GUIX_AVAILABLE_PACKAGES ) \ if ( [[ ${+_guix_available_packages} -eq 0 ]] || _cache_invalid GUIX_AVAILABLE_PACKAGES ) \
&& ! _retrieve_cache GUIX_AVAILABLE_PACKAGES; then && ! _retrieve_cache GUIX_AVAILABLE_PACKAGES; then
_guix_available_packages=(${${(f)"$(guix package -A | cut -f1)"}}) _guix_available_packages=(${${(f)"$(guix package -A | cut -f1)"}})
_guix_available_packages=("${_guix_available_packages[@]// /}")
_store_cache GUIX_AVAILABLE_PACKAGES _guix_available_packages _store_cache GUIX_AVAILABLE_PACKAGES _guix_available_packages
fi fi
} }

View file

@ -23,7 +23,96 @@
(channel-news (channel-news
(version 0) (version 0)
(entry (commit "a2324d8b56eabf8117bca220a507cc791edffd2e")
(entry (commit "746584e0ca200e7bf51b139ceb36c19ea81d6ef1")
(title
(en "New @command{guix shell} command supersedes @command{guix
environment}")
(de "Neuer Befehl @command{guix shell} löst @command{guix
environment} ab")
(fr "Nouvelle commande @command{guix shell} en remplacement de
@command{guix environment}"))
(body
(en "A new @command{guix shell} command is now available. It is
similar to @command{guix environment}, but with a more convenient interface
(@command{guix environment} is deprecated but will remain available until May,
1st 2023). The main difference compared to @command{guix environment} is that
the \"ad hoc\" mode is the default. Thus, to create an interactive
environment containing Python, NumPy, and SciPy, you would run:
@example
guix shell python python-numpy python-scipy
@end example
To get a development environment for, say, Inkscape, pass the @option{-D}
flag:
@example
guix shell -D inkscape
@end example
Another difference is that running @command{guix shell} without arguments
loads @file{manifest.scm} or @file{guix.scm} for the current directory or an
ancestor, provided you allowed it. The command maintains a cache to speed up
access to such environments.
Run @command{info \"(guix) Invoking guix shell\"} for more information.")
(de "Ein neuer Befehl @command{guix shell} ist ab jetzt
verfügbar. Er ähnelt @command{guix environment}, ist aber leichter zu
benutzen (@command{guix environment} gilt als veraltet, bleibt aber
bis zum 1.@: Mai 2023 verfügbar). Der größte Unterschied ist, dass das
Verhalten mit @option{--ad-hoc} nun der Normalfall ist. D.h.@: um eine
interaktive Umgebung mit Python, NumPy und SciPy zu bekommen, lautet
der Befehl:
@example
guix shell python python-numpy python-scipy
@end example
Wenn Sie eine Entwicklungsumgebung für, sagen wir, Inkscape schaffen
wollen, übergeben Sie die Option @option{-D}:
@example
guix shell -D inkscape
@end example
Noch ein Unterschied ist, dass wenn Sie @command{guix shell} ohne
Argumente ausführen, @file{manifest.scm} oder @file{guix.scm} aus dem
aktuellen Arbeitsverzeichnis oder einem übergeordneten Verzeichnis
geladen wird, wenn Sie die Berechtigung dazu erteilt haben. Für den
Befehl wird ein Zwischenspeicher vorgehalten, damit Sie schneller auf
solche Umgebungen zugreifen können.
Führen Sie @command{info \"(guix) Invoking guix shell\"} aus, um mehr
zu erfahren.")
(fr "Une nouvelle commande, @command{guix shell}, est maintenant
disponible. Elle est similaire à @command{guix environment}, mais avec une
interface plus pratique (@command{guix environment} est désuet mais restera
disponible jusqu'au 1er mai 2023). La principale différence par rapport à
@command{guix environment} est que le mode par défaut est le mode \"ad hoc\".
Pour créer un environnement interactif contenant Python, NumPy et SciPy, il
faut donc lancer :
@example
guix shell python python-numpy python-scipy
@end example
Pour obtenir un environnement de développement pour Inkscape, par exemple,
passer l'option @option{-D} :
@example
guix shell -D inkscape
@end example
Une autre différence est qu'en lançant @command{guix shell} sans argument, le
fichier @file{manifest.scm} ou @file{guix.scm} du répertoire courant ou d'un
parent est automatiquement chargé, à condition de l'avoir autorisé. La
commande garde un cache pour accélérer l'accès à ces environnements.
Lancer @command{info \"(guix.fr) Invoquer guix shell\"} pour plus
d'informations.")))
(entry (commit "a2324d8b56eabf8117bca220a507cc791edffd2e")
(title (title
(en "Guix Home is a part of GNU Guix") (en "Guix Home is a part of GNU Guix")
(de "Guix Home ist jetzt Teil von GNU Guix") (de "Guix Home ist jetzt Teil von GNU Guix")

View file

@ -131,7 +131,11 @@ Be careful, all data on the disk will be lost.")
(run-listbox-selection-page (run-listbox-selection-page
#:info-text (G_ "Please select the file-system type for this partition.") #:info-text (G_ "Please select the file-system type for this partition.")
#:title (G_ "File-system type") #:title (G_ "File-system type")
#:listbox-items '(ext4 btrfs fat16 fat32 jfs ntfs xfs swap) #:listbox-items '(btrfs ext4 jfs xfs
swap
;; These lack basic Unix features. Their only use
;; on GNU is for interoperation, e.g., with UEFI.
fat32 fat16 ntfs)
#:listbox-item->text user-fs-type-name #:listbox-item->text user-fs-type-name
#:sort-listbox-items? #f #:sort-listbox-items? #f
#:button-text (G_ "Exit") #:button-text (G_ "Exit")

View file

@ -612,6 +612,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/xdisorg.scm \ %D%/packages/xdisorg.scm \
%D%/packages/xorg.scm \ %D%/packages/xorg.scm \
%D%/packages/xfce.scm \ %D%/packages/xfce.scm \
%D%/packages/zig.scm \
%D%/packages/zile.scm \ %D%/packages/zile.scm \
%D%/packages/zwave.scm \ %D%/packages/zwave.scm \
\ \
@ -1000,9 +1001,8 @@ dist_patch_DATA = \
%D%/packages/patches/desmume-gcc6-fixes.patch \ %D%/packages/patches/desmume-gcc6-fixes.patch \
%D%/packages/patches/desmume-gcc7-fixes.patch \ %D%/packages/patches/desmume-gcc7-fixes.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \ %D%/packages/patches/dfu-programmer-fix-libusb.patch \
%D%/packages/patches/diffoscope-fix-test_item3_deflate_llvm_bitcode.patch \ %D%/packages/patches/diffoscope-fix-llvm-test.patch \
%D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/diffutils-gets-undeclared.patch \
%D%/packages/patches/disarchive-cross-compilation.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \ %D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \ %D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
%D%/packages/patches/docbook-xsl-support-old-url.patch \ %D%/packages/patches/docbook-xsl-support-old-url.patch \
@ -1068,6 +1068,7 @@ dist_patch_DATA = \
%D%/packages/patches/fifo-map-remove-catch.hpp.patch \ %D%/packages/patches/fifo-map-remove-catch.hpp.patch \
%D%/packages/patches/findutils-localstatedir.patch \ %D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/flann-cmake-3.11.patch \ %D%/packages/patches/flann-cmake-3.11.patch \
%D%/packages/patches/flatpak-fix-path.patch \
%D%/packages/patches/fontconfig-cache-ignore-mtime.patch \ %D%/packages/patches/fontconfig-cache-ignore-mtime.patch \
%D%/packages/patches/foobillard++-pkg-config.patch \ %D%/packages/patches/foobillard++-pkg-config.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \ %D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
@ -1267,6 +1268,7 @@ dist_patch_DATA = \
%D%/packages/patches/hurd-cross.patch \ %D%/packages/patches/hurd-cross.patch \
%D%/packages/patches/hurd-xattr.patch \ %D%/packages/patches/hurd-xattr.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/icecat-78-makeicecat.patch \
%D%/packages/patches/icecat-makeicecat.patch \ %D%/packages/patches/icecat-makeicecat.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \ %D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \
@ -1504,8 +1506,6 @@ dist_patch_DATA = \
%D%/packages/patches/mumps-shared-libseq.patch \ %D%/packages/patches/mumps-shared-libseq.patch \
%D%/packages/patches/mumps-shared-mumps.patch \ %D%/packages/patches/mumps-shared-mumps.patch \
%D%/packages/patches/mumps-shared-pord.patch \ %D%/packages/patches/mumps-shared-pord.patch \
%D%/packages/patches/mupdf-fix-linkage.patch \
%D%/packages/patches/mupdf-CVE-2021-3407.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \ %D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
%D%/packages/patches/musl-cross-locale.patch \ %D%/packages/patches/musl-cross-locale.patch \
@ -1675,6 +1675,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-fixtures-remove-monkeypatch-test.patch \ %D%/packages/patches/python-fixtures-remove-monkeypatch-test.patch \
%D%/packages/patches/python-flask-restful-werkzeug-compat.patch \ %D%/packages/patches/python-flask-restful-werkzeug-compat.patch \
%D%/packages/patches/python-keras-integration-test.patch \ %D%/packages/patches/python-keras-integration-test.patch \
%D%/packages/patches/python-peachpy-determinism.patch \
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \ %D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \ %D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
%D%/packages/patches/python-flint-includes.patch \ %D%/packages/patches/python-flint-includes.patch \
@ -1706,6 +1707,7 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-CVE-2021-20203.patch \ %D%/packages/patches/qemu-CVE-2021-20203.patch \
%D%/packages/patches/qemu-glibc-2.27.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \
%D%/packages/patches/qemu-glibc-2.30.patch \ %D%/packages/patches/qemu-glibc-2.30.patch \
%D%/packages/patches/qemu-fix-agent-paths.patch \
%D%/packages/patches/qpdfview-qt515-compat.patch \ %D%/packages/patches/qpdfview-qt515-compat.patch \
%D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qt4-ldflags.patch \ %D%/packages/patches/qt4-ldflags.patch \
@ -1836,12 +1838,12 @@ dist_patch_DATA = \
%D%/packages/patches/tup-unbundle-dependencies.patch \ %D%/packages/patches/tup-unbundle-dependencies.patch \
%D%/packages/patches/tuxpaint-stamps-path.patch \ %D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/twinkle-bcg729.patch \ %D%/packages/patches/twinkle-bcg729.patch \
%D%/packages/patches/u-boot-allow-disabling-openssl.patch \
%D%/packages/patches/u-boot-nintendo-nes-serial.patch \ %D%/packages/patches/u-boot-nintendo-nes-serial.patch \
%D%/packages/patches/u-boot-rockchip-inno-usb.patch \ %D%/packages/patches/u-boot-rockchip-inno-usb.patch \
%D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \ %D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \
%D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \ %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \ %D%/packages/patches/ucx-tcp-iface-ioctl.patch \
%D%/packages/patches/udiskie-no-appindicator.patch \
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \ %D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
%D%/packages/patches/ungoogled-chromium-ffmpeg-compat.patch \ %D%/packages/patches/ungoogled-chromium-ffmpeg-compat.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \ %D%/packages/patches/ungoogled-chromium-system-nspr.patch \
@ -1939,7 +1941,9 @@ dist_patch_DATA = \
%D%/packages/patches/ytfzf-programs.patch \ %D%/packages/patches/ytfzf-programs.patch \
%D%/packages/patches/ytfzf-updates.patch \ %D%/packages/patches/ytfzf-updates.patch \
%D%/packages/patches/ytnef-CVE-2021-3403.patch \ %D%/packages/patches/ytnef-CVE-2021-3403.patch \
%D%/packages/patches/ytnef-CVE-2021-3404.patch %D%/packages/patches/ytnef-CVE-2021-3404.patch \
%D%/packages/patches/zig-disable-libc-note-test.patch \
%D%/packages/patches/zig-use-system-paths.patch
MISC_DISTRO_FILES = \ MISC_DISTRO_FILES = \
%D%/packages/ld-wrapper.in %D%/packages/ld-wrapper.in

View file

@ -12,7 +12,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org> ;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -343,7 +343,7 @@ precision.")
(define-public giac (define-public giac
(package (package
(name "giac") (name "giac")
(version "1.7.0-37") (version "1.7.0-39")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -355,7 +355,7 @@ precision.")
"~parisse/debian/dists/stable/main/source/" "~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz")) "giac_" version ".tar.gz"))
(sha256 (sha256
(base32 "1mzqf7r40ppmzixf4s6sjk76y0wpcf6xp7hklzrn2l1910ld61pz")))) (base32 "0mmdzhnahiz6hr7a4brnjdmmm4mcaqkigrh1b6n9z5l46bilaii3"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules ((ice-9 ftw) `(#:modules ((ice-9 ftw)
@ -988,6 +988,36 @@ Optional thin wrappers allow usage of the library from other languages.")
(license (list license:expat ;SymEngine (license (list license:expat ;SymEngine
license:bsd-3)))) ;3rd party code license:bsd-3)))) ;3rd party code
(define-public ginac
(package
(name "ginac")
(version "1.8.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ginac.de/ginac-"
version ".tar.bz2"))
(sha256
(base32 "1az1ypfcny4jdz0mic1kywwa9nynr547cl5s7zpn2w0qdfymssgi"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
("pkg-config" ,pkg-config)
("python" ,python-wrapper))) ; Python is required
(inputs
`(("cln" ,cln)
("readline" ,readline)))
(home-page "https://www.ginac.de/")
(synopsis "Library for symbolic computation")
(description "GiNaC is a C++ library for symbolic computation. Contrary
to other CAS it does not try to provide extensive algebraic capabilities and a
simple programming language but instead accepts a given language (C++) and
extends it by a set of algebraic capabilities.")
(license license:gpl2+)))
(define-public eigen (define-public eigen
(package (package
(name "eigen") (name "eigen")

View file

@ -179,7 +179,7 @@ C++ @dfn{Standard Template Library} (STL).")
("libxml++" ,libxml++) ("libxml++" ,libxml++)
("libsigc++" ,libsigc++) ("libsigc++" ,libsigc++)
("mlt" ,mlt-6) ("mlt" ,mlt-6)
("openexr" ,openexr) ("openexr" ,openexr-2)
("pango" ,pango))) ("pango" ,pango)))
(native-inputs (native-inputs
`(("intltool" ,intltool) `(("intltool" ,intltool)

View file

@ -5433,14 +5433,14 @@ while still staying in time.")
(define-public butt (define-public butt
(package (package
(name "butt") (name "butt")
(version "0.1.31") (version "0.1.32")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/butt/butt/butt-" (uri (string-append "mirror://sourceforge/butt/butt/butt-"
version "/butt-" version ".tar.gz")) version "/butt-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"19zvdi5vr6vqnrpc60jir7550nz9a5x1c61lh13355cdny2zp28z")) "1qwllkx9p1gb3syhbbck3agrk375m82l18fb81aqygi4g3dg3s9r"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(substitute* "src/butt.cpp" '(substitute* "src/butt.cpp"
@ -5481,7 +5481,7 @@ while still staying in time.")
version "_manual.pdf")) version "_manual.pdf"))
(sha256 (sha256
(base32 (base32
"0a0kgd069whfp1v8xgw6qm67w02n8b7b4h5ay5665wgq947hxanp")))))) "0g70jyyxbx5nin3xs9q9zf878b2kyy7rn8gn9w91x1ychbjd6dhh"))))))
(home-page "https://danielnoethen.de/butt/") (home-page "https://danielnoethen.de/butt/")
(synopsis "Audio streaming tool") (synopsis "Audio streaming tool")
(description "Butt is a tool to stream audio to a ShoutCast or (description "Butt is a tool to stream audio to a ShoutCast or

View file

@ -1141,21 +1141,15 @@ backup.")
(define-public disarchive (define-public disarchive
(package (package
(name "disarchive") (name "disarchive")
(version "0.2.1") (version "0.3.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://files.ngyro.com/disarchive/" (uri (string-append "https://files.ngyro.com/disarchive/"
"disarchive-" version ".tar.gz")) "disarchive-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1jypk0gdwxqbqxiblww863nzq0kwnc676q68j32sprqd7ilnq02s")) "0jgc53rrbas8i4z13l2ii99cpav1ma73spsjg70ygihf0635r3dh"))))
(patches (search-patches "disarchive-cross-compilation.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'delete-configure
(lambda _
(delete-file "configure"))))))
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)

View file

@ -7331,6 +7331,37 @@ specified group of genes for a pathway has a coordinated association with a
phenotype of interest.") phenotype of interest.")
(license license:gpl2))) (license license:gpl2)))
(define-public r-fcscan
(package
(name "r-fcscan")
(version "1.6.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "fcScan" version))
(sha256
(base32 "10fcz741dr3wbb9f63qywlrays4cnvfnsm6yw4bmkrwk6ccijg8h"))))
(properties `((upstream-name . "fcScan")))
(build-system r-build-system)
(propagated-inputs
`(("r-genomicranges" ,r-genomicranges)
("r-iranges" ,r-iranges)
("r-plyr" ,r-plyr)
("r-rtracklayer" ,r-rtracklayer)
("r-summarizedexperiment" ,r-summarizedexperiment)
("r-variantannotation" ,r-variantannotation)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/fcScan")
(synopsis "Detect clusters of coordinates with user defined options")
(description
"This package is used to detect combination of genomic coordinates
falling within a user defined window size along with user defined overlap
between identified neighboring clusters. It can be used for genomic data
where the clusters are built on a specific chromosome or specific strand.
Clustering can be performed with a \"greedy\" option allowing thus the
presence of additional sites within the allowed window size.")
(license license:artistic2.0)))
(define-public r-fgsea (define-public r-fgsea
(package (package
(name "r-fgsea") (name "r-fgsea")

View file

@ -106,6 +106,7 @@
#:use-module (gnu packages java-compression) #:use-module (gnu packages java-compression)
#:use-module (gnu packages jemalloc) #:use-module (gnu packages jemalloc)
#:use-module (gnu packages jupyter) #:use-module (gnu packages jupyter)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages logging) #:use-module (gnu packages logging)
#:use-module (gnu packages lsof) #:use-module (gnu packages lsof)
@ -1216,14 +1217,14 @@ sequencing.")
(define-public python-biopython (define-public python-biopython
(package (package
(name "python-biopython") (name "python-biopython")
(version "1.73") (version "1.76")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
;; use PyPi rather than biopython.org to ease updating ;; use PyPi rather than biopython.org to ease updating
(uri (pypi-uri "biopython" version)) (uri (pypi-uri "biopython" version))
(sha256 (sha256
(base32 (base32
"1q55jhf76z3k6is3psis0ckbki7df26x7dikpcc3vhk1vhkwribh")))) "0wlch9xpa0fpgjzyxi6jsfca6iakaq9a05927xg8vqnmvaccnwrq"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -1244,6 +1245,18 @@ dealing with alignments; code making it easy to split up parallelizable tasks
into separate processes; and more.") into separate processes; and more.")
(license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE")))) (license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE"))))
(define-public python-biopython-1.73
(package
(inherit python-biopython)
(version "1.73")
(source (origin
(method url-fetch)
;; use PyPi rather than biopython.org to ease updating
(uri (pypi-uri "biopython" version))
(sha256
(base32
"1q55jhf76z3k6is3psis0ckbki7df26x7dikpcc3vhk1vhkwribh"))))))
(define-public python2-biopython (define-public python2-biopython
(package-with-python2 python-biopython)) (package-with-python2 python-biopython))
@ -1270,6 +1283,133 @@ relying on a complex dependency tree.")
(define-public python2-fastalite (define-public python2-fastalite
(package-with-python2 python-fastalite)) (package-with-python2 python-fastalite))
(define-public ciri-long
(package
(name "ciri-long")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bioinfo-biols/CIRI-long")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10k88i1fcqchrrjv82rmylwvbwqfba0n51palhig9hsg71xs0dbi"))
;; Delete bundled binary
(snippet '(delete-file "libs/ccs"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.py"
(("'argparse[^']*',") "") ; only for python2
(("==") ">="))))
(add-before 'build 'build-libssw
(lambda _
(with-directory-excursion "libs/striped_smith_waterman"
(invoke "make" "libssw.so")))))))
(inputs
`(("python-biopython" ,python-biopython)
("python-bwapy" ,python-bwapy)
("python-cython" ,python-cython)
("python-levenshtein" ,python-levenshtein)
("python-mappy" ,python-mappy)
("python-numpy" ,python-numpy)
("python-pandas" ,python-pandas)
("python-pysam" ,python-pysam)
("python-pyspoa" ,python-pyspoa)
("python-scikit-learn" ,python-scikit-learn)
("python-scipy" ,python-scipy)))
(native-inputs
`(("python-nose" ,python-nose)
("python-setuptools" ,python-setuptools)))
(home-page "https://ciri-cookbook.readthedocs.io/")
(synopsis "Circular RNA identification for Nanopore sequencing")
(description "CIRI-long is a package for circular RNA identification using
long-read sequencing data.")
(license license:expat)))
(define-public qtltools
(package
(name "qtltools")
(version "1.3.1")
(source (origin
(method url-fetch/tarbomb)
(uri (string-append "https://qtltools.github.io/qtltools/"
"binaries/QTLtools_" version
"_source.tar.gz"))
(sha256
(base32
"13gdry5l43abn3464fmk8qzrxgxnxah2612r66p9dzhhl92j30cd"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests included
#:make-flags
(list (string-append "BOOST_INC="
(assoc-ref %build-inputs "boost") "/include")
(string-append "BOOST_LIB="
(assoc-ref %build-inputs "boost") "/lib")
(string-append "HTSLD_INC="
(assoc-ref %build-inputs "htslib") "/include")
(string-append "HTSLD_LIB="
(assoc-ref %build-inputs "htslib") "/lib")
(string-append "RMATH_INC="
(assoc-ref %build-inputs "rmath-standalone")
"/include")
(string-append "RMATH_LIB="
(assoc-ref %build-inputs "rmath-standalone")
"/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-linkage
(lambda _
(substitute* "qtltools/Makefile"
(("libboost_iostreams.a")
"libboost_iostreams.so")
(("libboost_program_options.a")
"libboost_program_options.so")
(("-lblas") "-lopenblas"))))
(add-before 'build 'chdir
(lambda _ (chdir "qtltools")))
(replace 'configure
(lambda _
(substitute* "qtltools/Makefile"
(("LIB_FLAGS=-lz")
"LIB_FLAGS=-lz -lcrypto -lssl")
(("LIB_FILES=\\$\\(RMATH_LIB\\)/libRmath.a \
\\$\\(HTSLD_LIB\\)/libhts.a \
\\$\\(BOOST_LIB\\)/libboost_iostreams.a \
\\$\\(BOOST_LIB\\)/libboost_program_options.a")
"LIB_FILES=$(RMATH_LIB)/libRmath.so \
$(HTSLD_LIB)/libhts.so \
$(BOOST_LIB)/libboost_iostreams.so \
$(BOOST_LIB)/libboost_program_options.so"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(mkdir-p bin)
(install-file "bin/QTLtools" bin)))))))
(inputs
`(("curl" ,curl)
("gsl" ,gsl)
("boost" ,boost)
("rmath-standalone" ,rmath-standalone)
("htslib" ,htslib-1.3)
("openssl" ,openssl)
("openblas" ,openblas)
("zlib" ,zlib)))
(home-page "https://qtltools.github.io/qtltools/")
(synopsis "Tool set for molecular QTL discovery and analysis")
(description "QTLtools is a tool set for molecular QTL discovery
and analysis. It allows to go from the raw genetic sequence data to
collection of molecular @dfn{Quantitative Trait Loci} (QTLs) in few
easy-to-perform steps.")
(license license:gpl3+)))
(define-public bpp-core (define-public bpp-core
;; The last release was in 2014 and the recommended way to install from source ;; The last release was in 2014 and the recommended way to install from source
;; is to clone the git repository, so we do this. ;; is to clone the git repository, so we do this.
@ -7448,6 +7588,33 @@ clustering analysis, differential analysis, motif inference and exploration of
single cell ATAC-seq sequencing data.") single cell ATAC-seq sequencing data.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-umi4cpackage
(let ((commit "88b07d896a137418ba6c31c2474b9dbe1d86fc20")
(revision "1"))
(package
(name "r-umi4cpackage")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tanaylab/umi4cpackage")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0bjzamdw2lcfhlbzc0vdva87c3wwnij8jsvnrpx4wyyxvpcz13m5"))))
(properties `((upstream-name . "umi4cPackage")))
(build-system r-build-system)
(propagated-inputs
`(("r-misha" ,r-misha)
("r-zoo" ,r-zoo)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/tanaylab/umi4cpackage")
(synopsis "Processing and analysis of UMI-4C contact profiles.")
(description "This is a package that lets you process UMI-4C data from
scratch to produce nice plots.")
(license license:expat))))
(define-public r-shinycell (define-public r-shinycell
(let ((commit (let ((commit
"aecbd56e66802f28e397f5ae1f19403aadd12163") "aecbd56e66802f28e397f5ae1f19403aadd12163")
@ -7576,6 +7743,86 @@ of transcriptional heterogeneity among single cells.")
;; See https://github.com/hms-dbmi/scde/issues/38 ;; See https://github.com/hms-dbmi/scde/issues/38
(license license:gpl2))) (license license:gpl2)))
(define-public r-misha
(package
(name "r-misha")
(version "4.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tanaylab/misha")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0bgivx3lzjh3173jsfrhb5kvhjsn53br0n4hmyx7i3dwy2cnnp2p"))
;; Delete bundled executable.
(snippet
'(delete-file "exec/bigWigToWig"))))
(build-system r-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'do-not-use-bundled-bigWigToWig
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "R/misha.R"
(("get\\(\".GLIBDIR\"\\), \"/exec/bigWigToWig")
(string-append "\""
(assoc-ref inputs "kentutils")
"/bin/bigWigToWig"))))))))
(inputs
`(("kentutils" ,kentutils)))
(home-page "https://github.com/tanaylab/misha")
(synopsis "Toolkit for analysis of genomic data")
(description "This package is intended to help users to efficiently
analyze genomic data resulting from various experiments.")
(license license:gpl2)))
(define-public r-shaman
(let ((commit "d6944e8ac7bd1dbd5c6cec646eafc1d19d0ca96f")
(release "2.0")
(revision "2"))
(package
(name "r-shaman")
(version (git-version release revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tanaylab/shaman")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"03sx138dzpfiq23j49z0m0s4j79855mrg64hpj9c83408wzphxi6"))
(snippet
;; This file will be generated.
'(delete-file "inst/doc/shaman-package.R"))))
(build-system r-build-system)
(propagated-inputs
`(("r-data-table" ,r-data-table)
("r-domc" ,r-domc)
("r-ggplot2" ,r-ggplot2)
("r-gviz" ,r-gviz)
("r-misha" ,r-misha)
("r-plyr" ,r-plyr)
("r-rann" ,r-rann)
("r-rcpp" ,r-rcpp)
("r-reshape2" ,r-reshape2)
;; For vignettes
("r-rmarkdown" ,r-rmarkdown)
("r-knitr" ,r-knitr)))
(home-page "https://github.com/tanaylab/shaman")
(synopsis "Sampling HiC contact matrices for a-parametric normalization")
(description "The Shaman package implements functions for
resampling Hi-C matrices in order to generate expected contact
distributions given constraints on marginal coverage and
contact-distance probability distributions. The package also provides
support for visualizing normalized matrices and statistical analysis
of contact distributions around selected landmarks.")
;; Any version of the GPL
(license license:gpl3+))))
(define-public r-centipede (define-public r-centipede
(package (package
(name "r-centipede") (name "r-centipede")
@ -7639,6 +7886,46 @@ includes software to
") ")
(license license:cc0)))) (license license:cc0))))
(define-public gdc-client
(package
(name "gdc-client")
(version "1.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/NCI-GDC/gdc-client.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0cagawlzjwj3wam10lv64xgbfx4zcnzxi5sjpsdhq7rn4z24mzc2"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "requirements.txt"
(("==") ">=")))))))
(inputs
`(("python-cryptography" ,python-cryptography)
("python-intervaltree" ,python-intervaltree)
("python-jsonschema" ,python-jsonschema)
("python-lxml" ,python-lxml)
("python-ndg-httpsclient" ,python-ndg-httpsclient)
("python-progressbar2" ,python-progressbar2)
("python-pyasn1" ,python-pyasn1)
("python-pyopenssl" ,python-pyopenssl)
("python-pyyaml" ,python-pyyaml)
("python-requests" ,python-requests)
("python-termcolor" ,python-termcolor)))
(home-page "https://gdc.nci.nih.gov/access-data/gdc-data-transfer-tool")
(synopsis "GDC data transfer tool")
(description "The gdc-client provides several convenience functions over
the GDC API which provides general download/upload via HTTPS.")
(license license:asl2.0)))
(define-public vsearch (define-public vsearch
(package (package
(name "vsearch") (name "vsearch")
@ -11642,14 +11929,14 @@ set.")
(define-public instrain (define-public instrain
(package (package
(name "instrain") (name "instrain")
(version "1.5.2") (version "1.5.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "inStrain" version)) (uri (pypi-uri "inStrain" version))
(sha256 (sha256
(base32 (base32
"0ykqlpf6yz4caihsaz3ys00cyvlr7wdj4s9a8rh56q5r8xf80ic0")))) "05w1lw75x4lwkzg4qpi055g7hdjp9rnc4ksbxg2hfgksq9djk0hx"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -11662,7 +11949,7 @@ set.")
(("from job_utils") (("from job_utils")
"from .job_utils"))))))) "from .job_utils")))))))
(inputs (inputs
`(("python-biopython" ,python-biopython) `(("python-biopython" ,python-biopython-1.73)
("python-boto3" ,python-boto3) ("python-boto3" ,python-boto3)
("python-h5py" ,python-h5py) ("python-h5py" ,python-h5py)
("python-lmfit" ,python-lmfit) ("python-lmfit" ,python-lmfit)
@ -14995,6 +15282,78 @@ line, interactively explore genomic data within Jupyter environment or web
browser.") browser.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public python-pyspoa
(package
(name "python-pyspoa")
(version "0.0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nanoporetech/pyspoa")
(commit (string-append "v" version))
(recursive? #true)))
(file-name (git-file-name name version))
(sha256
(base32
"1lgf2shzhxkcsircd6vy46h27pjljd5q95fyz1cm3lkk702qbnzx"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'build-libspoa
(lambda _
(mkdir-p "src/build")
(with-directory-excursion "src/build"
(invoke "cmake"
"-Dspoa_optimize_for_portability=ON"
"-DCMAKE_BUILD_TYPE=Release"
"-DCMAKE_CXX_FLAGS=\"-I ../vendor/cereal/include/\" -fPIC"
"..")
(invoke "make"))))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "tests/test_pyspoa.py")))))))
(propagated-inputs
`(("pybind11" ,pybind11)))
(native-inputs
`(("cmake" ,cmake-minimal)))
(home-page "https://github.com/nanoporetech/pyspoa")
(synopsis "Python bindings for the SIMD partial order alignment library ")
(description
"This package provides Python bindings for spoa, a C++ implementation of
the @dfn{partial order alignment} (POA) algorithm (as described in
10.1093/bioinformatics/18.3.452) which is used to generate consensus
sequences")
(license license:expat)))
(define-public python-bwapy
(package
(name "python-bwapy")
(version "0.1.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "bwapy" version))
(sha256
(base32 "090qwx3vl729zn3a7sksbviyg04kc71gpbm3nd8dalqp673x1npw"))))
(build-system python-build-system)
(propagated-inputs
`(("python-cffi" ,python-cffi)
("python-setuptools" ,python-setuptools)
("python-wheel" ,python-wheel)))
(inputs
`(("zlib" ,zlib)))
(home-page "https://github.com/ACEnglish/bwapy")
(synopsis "Python bindings to bwa alinger")
(description "This package provides Python bindings to the bwa mem
aligner.")
;; These Python bindings are licensed under Mozilla Public License 2.0,
;; bwa itself is licenced under GNU General Public License v3.0.
(license license:mpl2.0)))
(define-public scregseg (define-public scregseg
(package (package
(name "scregseg") (name "scregseg")

View file

@ -504,13 +504,19 @@ tree binary files. These are board description files used by Linux and BSD.")
;; https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1937246 ;; https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1937246
(search-patch "u-boot-sifive-prevent-reloc-initrd-fdt.patch")) (search-patch "u-boot-sifive-prevent-reloc-initrd-fdt.patch"))
(define %u-boot-allow-disabling-openssl-patch
;; Fixes build of u-boot 2021.10 without openssl
;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
(search-patch "u-boot-allow-disabling-openssl.patch"))
(define u-boot (define u-boot
(package (package
(name "u-boot") (name "u-boot")
(version "2021.07") (version "2021.10")
(source (origin (source (origin
(patches (patches
(list %u-boot-rockchip-inno-usb-patch (list %u-boot-rockchip-inno-usb-patch
%u-boot-allow-disabling-openssl-patch
%u-boot-sifive-prevent-relocating-initrd-fdt)) %u-boot-sifive-prevent-relocating-initrd-fdt))
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -518,7 +524,7 @@ tree binary files. These are board description files used by Linux and BSD.")
"u-boot-" version ".tar.bz2")) "u-boot-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0zm7igkdnz0w4ir8rfl2dislfrl0ip104grs5hvd30a5wkm7wari")))) "1m0bvwv8r62s4wk4w3cmvs888dhv9gnfa98dczr4drk2jbhj7ryd"))))
(native-inputs (native-inputs
`(("bc" ,bc) `(("bc" ,bc)
("bison" ,bison) ("bison" ,bison)
@ -590,7 +596,7 @@ def test_ctrl_c"))
;; See https://bugs.gnu.org/34717 for ;; See https://bugs.gnu.org/34717 for
;; details. ;; details.
(("CONFIG_FIT_SIGNATURE=y") (("CONFIG_FIT_SIGNATURE=y")
"CONFIG_FIT_SIGNATURE=n\nCONFIG_UT_LIB_ASN1=n") "CONFIG_FIT_SIGNATURE=n\nCONFIG_UT_LIB_ASN1=n\nCONFIG_TOOLS_LIBCRYPTO=n")
;; This test requires a sound system, which is un-used ;; This test requires a sound system, which is un-used
;; in u-boot-tools. ;; in u-boot-tools.
(("CONFIG_SOUND=y") "CONFIG_SOUND=n"))) (("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@ -689,6 +695,12 @@ board-independent tools.")))
suffix-len)))) suffix-len))))
(sort entries string-ci<))) (sort entries string-ci<)))
(error "Invalid boardname ~s." ,board)))))) (error "Invalid boardname ~s." ,board))))))
(add-after 'configure 'disable-tools-libcrypto
;; Disable libcrypto due to GPL and OpenSSL license
;; incompatibilities
(lambda _
(substitute* ".config"
(("CONFIG_TOOLS_LIBCRYPTO=.*$") "CONFIG_TOOLS_LIBCRYPTO=n"))))
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
@ -899,7 +911,8 @@ to Novena upstream, does not load u-boot.img from the first partition.")
(source (origin (source (origin
(inherit (package-source u-boot)) (inherit (package-source u-boot))
(patches (patches
(search-patches "u-boot-riscv64-fix-extlinux.patch"))))))) (search-patches "u-boot-riscv64-fix-extlinux.patch"
%u-boot-allow-disabling-openssl-patch)))))))
(define-public u-boot-sifive-unleashed (define-public u-boot-sifive-unleashed
(make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu")) (make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu"))

View file

@ -51,7 +51,7 @@ supported content to the Kodi media center.")
(define ublock-origin (define ublock-origin
(package (package
(name "ublock-origin") (name "ublock-origin")
(version "1.38.4") (version "1.38.6")
(home-page "https://github.com/gorhill/uBlock") (home-page "https://github.com/gorhill/uBlock")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
@ -60,7 +60,7 @@ supported content to the Kodi media center.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"127b5mg54zfci86q66fss701y20b0mjpa4flx7iar7nviqg9fa1h")))) "1jdi7p537dj0bpxsdnvs722cw8xv5ifh8mjj1ndwjvgasvj18fsd"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium")) (outputs '("xpi" "firefox" "chromium"))
(arguments (arguments

View file

@ -838,7 +838,7 @@ Service (S3) protocol for object storage.")
(define-public aws-c-mqtt (define-public aws-c-mqtt
(package (package
(name "aws-c-mqtt") (name "aws-c-mqtt")
(version "0.7.6") (version "0.7.8")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -847,7 +847,7 @@ Service (S3) protocol for object storage.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0qgblakp9n281z5w1kmmy9sjiz6s44kg487l76w7p43p1dp7s401")) "19j6nw2v36c4yff4p0fbf0748s06fd5r9cp2yakry9ybn1ada99c"))
(patches (search-patches "aws-c-mqtt-cmake-prefix.patch")))) (patches (search-patches "aws-c-mqtt-cmake-prefix.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments

View file

@ -231,13 +231,15 @@ files.")
'(begin '(begin
;; Make libraries respect LDFLAGS. ;; Make libraries respect LDFLAGS.
(substitute* '("paranoia/Makefile.in" "interface/Makefile.in") (substitute* '("paranoia/Makefile.in" "interface/Makefile.in")
(("-Wl,-soname") "$(LDFLAGS) -Wl,-soname")) (("-Wl,-soname") "$(LDFLAGS) -Wl,-soname"))))))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; there is no check target `(#:tests? #f ; there is no check target
#:configure-flags ; Add $libdir to the RUNPATH of all the executables. #:configure-flags ; Add $libdir to the RUNPATH of all the executables.
(list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")))) (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
;; Building in parallel is flaky: “ld: […]/cachetest.c:393: undefined
;; reference to `paranoia_free'”.
#:parallel-build? #f))
(home-page "https://www.xiph.org/paranoia/") (home-page "https://www.xiph.org/paranoia/")
(synopsis "Audio CD reading utility") (synopsis "Audio CD reading utility")
(description "Cdparanoia retrieves audio tracks from CDDA capable CDROM (description "Cdparanoia retrieves audio tracks from CDDA capable CDROM

View file

@ -336,8 +336,8 @@
(string-append "ungoogled-chromium-" category "-" name)))) (string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash)))) (sha256 (base32 hash))))
(define %chromium-version "94.0.4606.81") (define %chromium-version "95.0.4638.69")
(define %ungoogled-revision "94.0.4606.81-1") (define %ungoogled-revision (string-append %chromium-version "-1"))
(define %arch-revision "db2157b84924ce84201a8245e68a02f7d55f6491") (define %arch-revision "db2157b84924ce84201a8245e68a02f7d55f6491")
(define %debian-revision "debian/90.0.4430.85-1") (define %debian-revision "debian/90.0.4430.85-1")
@ -367,7 +367,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision)) (file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256 (sha256
(base32 (base32
"113abybh8kkw9a92lj6jww6dl6rc1sv5x7a7a1gjwsihzd2r0cik")))) "19azr4m4rd6za9vgcggijyq9x54jrjp0n07y4falgjrdz9q4f7aj"))))
(define %guix-patches (define %guix-patches
(list (local-file (list (local-file
@ -502,7 +502,7 @@
%chromium-version ".tar.xz")) %chromium-version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"16755mfqxxmvslm9ix060safrnml91ckj5p85960jj5g5hmslwbh")) "1rzg48mbd5n75nq2rfwknyxpmfrddds199ic82c736kcgirpv8rq"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet)))) (snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system) (build-system gnu-build-system)
@ -598,7 +598,6 @@
"rtc_use_h264=true" "rtc_use_h264=true"
"rtc_use_pipewire=true" "rtc_use_pipewire=true"
"rtc_link_pipewire=true" "rtc_link_pipewire=true"
"rtc_pipewire_version=\"0.3\""
;; Don't use bundled sources. ;; Don't use bundled sources.
"rtc_build_json=true" ;FIXME: libc++ std::string ABI difference "rtc_build_json=true" ;FIXME: libc++ std::string ABI difference
"rtc_build_libevent=false" "rtc_build_libevent=false"
@ -651,15 +650,16 @@
"")) ""))
;; XXX: Should be unnecessary when use_system_lcms2=true. ;; XXX: Should be unnecessary when use_system_lcms2=true.
(substitute* "third_party/pdfium/core/fxcodec/icc/iccmodule.h" (substitute* "third_party/pdfium/core/fxcodec/icc/icc_transform.h"
(("include \"third_party/lcms/include/lcms2\\.h\"") (("include \"third_party/lcms/include/lcms2\\.h\"")
"include \"lcms2.h\"")) "include \"lcms2.h\""))
;; Add missing include statement. ;; Chromium bundles a pre-release of Harfbuzz 3.0 and uses an
(substitute* "third_party/pdfium/core/fxcodec/png/png_decoder.cpp" ;; experimental API that was removed in 3.0. Adjust to use
(("#include \"core/fxcodec/fx_codec.h\"" all) ;; the updated API (taken from <https://crrev.com/c/3076563>).
(string-append all (substitute* "components/paint_preview/common/subset_font.cc"
"\n#include \"core/fxcodec/fx_codec_def.h\""))) (("hb_subset_input_no_subset_tables_set\\(input\\.get\\(\\)\\)")
"hb_subset_input_set(input.get(), HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG)"))
(substitute* (substitute*
"third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h" "third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h"

View file

@ -31,7 +31,7 @@
;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> ;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2020 Magali Lemes <magalilemes00@gmail.com> ;;; Copyright © 2020 Magali Lemes <magalilemes00@gmail.com>
;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; Copyright © 2020, 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2020 Aniket Patil <aniket112.patil@gmail.com> ;;; Copyright © 2020 Aniket Patil <aniket112.patil@gmail.com>
;;; Copyright © 2021 Marcel Schilling <marcel.schilling@uni-luebeck.de> ;;; Copyright © 2021 Marcel Schilling <marcel.schilling@uni-luebeck.de>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
@ -906,6 +906,27 @@ functions which can speed up workflow.")
control over dimensions and appearance.") control over dimensions and appearance.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public r-pnwcolors
(package
(name "r-pnwcolors")
(version "0.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "PNWColors" version))
(sha256
(base32
"1phplnclkficfv8s6wsyrckk4ixzbayiy5iix6dddg40485l9nyj"))))
(properties `((upstream-name . "PNWColors")))
(build-system r-build-system)
(home-page "https://github.com/jakelawlor/PNWColors")
(synopsis "Color palettes for data visualizations")
(description
"This package provides color palettes. They are checked for colorblind
accessibility from hue, saturation, and lightness value scaling using the
Chroma.js Color Palette Helper. See @url{https://gka.github.io/palettes}.")
(license license:cc0)))
(define-public r-ecp (define-public r-ecp
(package (package
(name "r-ecp") (name "r-ecp")
@ -23649,6 +23670,35 @@ univariate time series forecasts including exponential smoothing via state
space models and automatic ARIMA modelling.") space models and automatic ARIMA modelling.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-formattable
(package
(name "r-formattable")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "formattable" version))
(sha256
(base32 "1vdxi0xmg019qyzjrp8bkjxciz245jcxsrkhfzd44ynqcwi4s3ag"))))
(properties `((upstream-name . "formattable")))
(build-system r-build-system)
(propagated-inputs
`(("r-htmltools" ,r-htmltools)
("r-htmlwidgets" ,r-htmlwidgets)
("r-lifecycle" ,r-lifecycle)
("r-rmarkdown" ,r-rmarkdown)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/renkun-ken/formattable")
(synopsis "Print vectors and data frames with text fromatting")
(description
"This R package provides functions to create formattable vectors and data
frames. @emph{Formattable} vectors are printed with text formatting, and
formattable data frames are printed with multiple types of formatting in HTML
to improve the readability of data presented in tabular form rendered in web
pages.")
(license license:expat)))
(define-public r-xmisc (define-public r-xmisc
(package (package
(name "r-xmisc") (name "r-xmisc")
@ -28581,6 +28631,49 @@ algorithms; density clustering, hierarchical clustering, k-means, and the
discovery of differentially expressed genes and markers.") discovery of differentially expressed genes and markers.")
(license license:gpl3))) (license license:gpl3)))
(define-public r-seuratdisk
(let ((commit "163f1aade5bac38ed1e9e9c912283a7e74781610")
(revision "1"))
(package
(name "r-seuratdisk")
(version (git-version "0.0.0.9019" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mojaveazure/seurat-disk")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1d1v8qi6kknzy5fj6bl8akwy74h5h143i00lyidsnqjbwp9n4qnw"))))
(properties `((upstream-name . "SeuratDisk")))
(build-system r-build-system)
(propagated-inputs
`(("r-cli" ,r-cli)
("r-crayon" ,r-crayon)
("r-hdf5r" ,r-hdf5r)
("r-matrix" ,r-matrix)
("r-r6" ,r-r6)
("r-rlang" ,r-rlang)
("r-seurat" ,r-seurat)
("r-seuratobject" ,r-seuratobject)
("r-stringi" ,r-stringi)
("r-withr" ,r-withr)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "https://github.com/mojaveazure/seurat-disk")
(synopsis "Interfaces for HDF5-based single cell file formats")
(description
"The h5Seurat file format is specifically designed for the storage and
analysis of multi-modal single-cell and spatially-resolved expression
experiments, for example, from CITE-seq or 10X Visium technologies. It holds
all molecular information and associated metadata, including (for example)
nearest-neighbor graphs, dimensional reduction information, spatial
coordinates and image data, and cluster labels. This package also supports
rapid and on-disk conversion between h5Seurat and AnnData objects, with the
goal of enhancing interoperability between Seurat and Scanpy.")
(license license:gpl3))))
(define-public r-phangorn (define-public r-phangorn
(package (package
(name "r-phangorn") (name "r-phangorn")
@ -28836,6 +28929,26 @@ logging to plaintext, JSON, (rotating) files, memory buffers, and databases, as
well as email and push notifications.") well as email and push notifications.")
(license license:expat))) (license license:expat)))
(define-public r-mhg
(package
(name "r-mhg")
(version "1.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "mHG" version))
(sha256
(base32
"1rz5ncrvvv9h9grls15apa63v2nh9j87fmp4mwjjil37jx6a5zki"))))
(properties `((upstream-name . "mHG")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/package=mHG")
(synopsis "Minimum-hypergeometric test")
(description
"This package runs a minimum-hypergeometric (mHG) test as described in
\"Discovering Motifs in Ranked Lists of DNA Sequences\" by Eran Eden.")
(license license:gpl2)))
(define-public r-mlr3measures (define-public r-mlr3measures
(package (package
(name "r-mlr3measures") (name "r-mlr3measures")
@ -32033,6 +32146,71 @@ Python module, this utility provides a flexible and extensible way of
formatting and delivering log messages with low overhead.") formatting and delivering log messages with low overhead.")
(license license:agpl3+))) (license license:agpl3+)))
(define-public r-fasterize
(package
(name "r-fasterize")
(version "1.0.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "fasterize" version))
(sha256
(base32 "10bzl77c1b9jhcn1xp467qzp2n8c7s3wpxn53qjh1nwvbri5kd32"))))
(properties `((upstream-name . "fasterize")))
(build-system r-build-system)
(propagated-inputs
`(("r-raster" ,r-raster)
("r-rcpp" ,r-rcpp)
("r-rcpparmadillo" ,r-rcpparmadillo)
("r-sp" ,r-sp)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://github.com/ecohealthalliance/fasterize")
(synopsis "Fast Polygon to Raster Conversion")
(description
"This package provides a drop-in replacement for @code{rasterize} from
the @code{raster} package that takes sf-type objects, and is much faster.
There is support for the main options provided by the @code{rasterize}
function, including setting the field used and background value, and
options for aggregating multi-layer rasters.")
(license license:expat)))
(define-public r-bien
(package
(name "r-bien")
(version "1.2.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "BIEN" version))
(sha256
(base32 "1dagrs54ciagm2mgqrvxl6k2akahr0qk63ifxqnks7iljm0x1gw6"))))
(properties `((upstream-name . "BIEN")))
(build-system r-build-system)
(native-inputs
`(("r-knitr" ,r-knitr)
("r-testthat" ,r-testthat)))
(propagated-inputs
`(("r-ape" ,r-ape)
("r-dbi" ,r-dbi)
("r-doparallel" ,r-doparallel)
("r-fasterize" ,r-fasterize)
("r-foreach" ,r-foreach)
("r-raster" ,r-raster)
("r-rgdal" ,r-rgdal)
("r-rgeos" ,r-rgeos)
("r-rpostgresql" ,r-rpostgresql)
("r-sf" ,r-sf)
("r-sp" ,r-sp)))
(home-page "https://cran.r-project.org/package=BIEN")
(synopsis "Tools for accessing the BIEN database")
(description
"This package provides tools for accessing the Botanical Information and
Ecology Network (BIEN) database. The BIEN database contains cleaned and
standardized botanical data including occurrence, trait, plot and taxonomic
data. This package provides functions that query the BIEN database by
constructing and executing optimized SQL queries.")
(license license:expat)))
(define-public r-ggh4x (define-public r-ggh4x
(package (package
(name "r-ggh4x") (name "r-ggh4x")

View file

@ -20509,7 +20509,7 @@ IEEE 754-2008 binary16 type.")
(("rust-winapi" ,rust-winapi-0.3)))) (("rust-winapi" ,rust-winapi-0.3))))
(home-page "https://github.com/brson/home") (home-page "https://github.com/brson/home")
(synopsis "Shared definitions of home directories") (synopsis "Shared definitions of home directories")
(description "This packages provides the definition of @code{home_dir} (description "This package provides the definition of @code{home_dir}
used by @command{cargo} and @command{rustup}, as well as functions to find the used by @command{cargo} and @command{rustup}, as well as functions to find the
correct value of @samp{CARGO_HOME} and @samp{RUSTUP_HOME}.") correct value of @samp{CARGO_HOME} and @samp{RUSTUP_HOME}.")
(license (list license:expat license:asl2.0)))) (license (list license:expat license:asl2.0))))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 David Thompson <davet@gnu.org> ;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018, 2019, 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is> ;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@ -841,6 +841,41 @@ as the latest standard, SHA-3. It is an improved version of the SHA-3 finalist
BLAKE.") BLAKE.")
(license license:public-domain))) (license license:public-domain)))
(define-public b2sum
;; Upstream doesn't seem to use a versioned release workflow, so build from
;; a recent commit.
(let ((commit "54f4faa4c16ea34bcd59d16e8da46a64b259fc07")
(revision "0"))
(package
(name "b2sum")
(version (git-version "20190724" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/BLAKE2/BLAKE2")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "04z631v0vzl52g73v390ask5fnzi5wg83lcjkjhpmmymaz0jn152"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases
(add-before 'build 'change-directory
(lambda _
(chdir "b2sum")))
(delete 'configure)))) ; No ./configure script
(home-page "https://www.blake2.net/")
(synopsis "BLAKE2 checksum tool")
(description "BLAKE2 is a cryptographic hash function faster than MD5,
SHA-1, SHA-2, and SHA-3, yet is at least as secure as SHA-3.")
;; You may also choose to redistribute this program as Apache 2.0 or the
;; OpenSSL license. See 'b2sum/b2sum.c' in the source distribution.
(license license:cc0))))
(define-public rhash (define-public rhash
(package (package
(name "rhash") (name "rhash")
@ -898,14 +933,14 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R
(define-public botan (define-public botan
(package (package
(name "botan") (name "botan")
(version "2.18.1") (version "2.18.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://botan.randombit.net/releases/" (uri (string-append "https://botan.randombit.net/releases/"
"Botan-" version ".tar.xz")) "Botan-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0adf53drhk1hlpfih0175c9081bqpclw6p2afn51cmx849ib9izq")))) "0zih8agygp39ff0dwi3fv8y7dnnzpz3y86kcgjbhzlxry49kn6jl"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -918,6 +953,8 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R
(setenv "CXXFLAGS" "-O3") (setenv "CXXFLAGS" "-O3")
(invoke "python" "./configure.py" (invoke "python" "./configure.py"
(string-append "--prefix=" out) (string-append "--prefix=" out)
"--disable-static"
;; Otherwise, the `botan` executable cannot find ;; Otherwise, the `botan` executable cannot find
;; libbotan. ;; libbotan.
(string-append "--ldflags=-Wl,-rpath=" lib) (string-append "--ldflags=-Wl,-rpath=" lib)
@ -974,8 +1011,8 @@ security.")
(license license:gpl2))) (license license:gpl2)))
(define-public asignify (define-public asignify
(let ((commit "f58e7977a599f040797975d649ed318e25cbd2d5") (let ((commit "08af003e1f4833713db28b871759d94f9b2b1469")
(revision "0")) (revision "1"))
(package (package
(name "asignify") (name "asignify")
(version (git-version "1.1" revision commit)) (version (git-version "1.1" revision commit))
@ -987,7 +1024,7 @@ security.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1zl68qq6js6fdahxzyhvhrpyrwlv8c2zhdplycnfxyr1ckkhq8dw")))) "1zacpqa8b5lg270z1g06r5ik9vnb91crb4ivyy20381dny82xvr1"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View file

@ -5,7 +5,7 @@
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com> ;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com> ;;; Copyright © 2020, 2021 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; ;;;
@ -756,35 +756,38 @@ use than similar tools like @command{mtrace}.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public mspdebug (define-public mspdebug
(package ;; Last official release was 24 July 2017
(name "mspdebug") (let ((commit "4c4d94e43bc4a18ecf82070ff81cd38dd5641e3b")
(version "0.25") (revision "0"))
(source (origin (package
(method git-fetch) (name "mspdebug")
(uri (git-reference (version (git-version "0.25" revision commit))
(url "https://github.com/dlbeer/mspdebug") (source (origin
(commit (string-append "v" version)))) (method git-fetch)
(file-name (git-file-name name version)) (uri (git-reference
(sha256 (url "https://github.com/dlbeer/mspdebug")
(base32 "0prgwb5vx6fd4bj12ss1bbb6axj2kjyriyjxqrzd58s5jyyy8d3c")))) (commit commit)))
(build-system gnu-build-system) (file-name (git-file-name name version))
(arguments (sha256
`(#:tests? #f ; no test suite (base32 "1lgw1dsc1aglyja610ichadvgs5b0df3wlarinczb0ykf431gjln"))))
#:phases (build-system gnu-build-system)
(modify-phases %standard-phases (arguments
(delete 'configure)) ; no configure script `(#:tests? #f ; no test suite
#:make-flags #:phases
(list (string-append "CC=" ,(cc-for-target)) (modify-phases %standard-phases
"INSTALL=install" (delete 'configure)) ; no configure script
(string-append "PREFIX=" %output)))) #:make-flags
(inputs (list (string-append "CC=" ,(cc-for-target))
`(("libusb-compat" ,libusb-compat) "INSTALL=install"
("readline" ,readline))) (string-append "PREFIX=" %output))))
(synopsis "Debugging tool for MSP430 MCUs") (inputs
(description "MspDebug supports FET430UIF, eZ430, RF2500 and Olimex `(("libusb-compat" ,libusb-compat)
("readline" ,readline)))
(synopsis "Debugging tool for MSP430 MCUs")
(description "MspDebug supports FET430UIF, eZ430, RF2500 and Olimex
MSP430-JTAG-TINY programmers, as well as many other compatible MSP430-JTAG-TINY programmers, as well as many other compatible
devices. It can be used as a proxy for gdb or as an independent devices. It can be used as a proxy for gdb or as an independent
debugger with support for programming, disassembly and reverse debugger with support for programming, disassembly and reverse
engineering.") engineering.")
(home-page "https://github.com/dlbeer/mspdebug") (home-page "https://github.com/dlbeer/mspdebug")
(license license:gpl2+))) (license license:gpl2+))))

View file

@ -49,6 +49,7 @@
#:use-module (gnu packages mono) #:use-module (gnu packages mono)
#:use-module (gnu packages ocaml) #:use-module (gnu packages ocaml)
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
#:use-module (gnu packages pascal)
#:use-module (gnu packages patchutils) #:use-module (gnu packages patchutils)
#:use-module (gnu packages pdf) #:use-module (gnu packages pdf)
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
@ -72,7 +73,7 @@
(define-public diffoscope (define-public diffoscope
(package (package
(name "diffoscope") (name "diffoscope")
(version "188") (version "189")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -81,9 +82,9 @@
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1byd28ihni5g0ikjjcsq68smj1rw33vv9z0cymqa4ds670c77yvn")) (base32 "0dai9gwsr9xnficjy8myq6xr301y4iy82aidm936qsqjwrp8q1sm"))
(patches (patches
(search-patches "diffoscope-fix-test_item3_deflate_llvm_bitcode.patch")))) (search-patches "diffoscope-fix-llvm-test.patch"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases (modify-phases %standard-phases
@ -183,6 +184,7 @@
("dtc" ,dtc) ("dtc" ,dtc)
("e2fsprogs" ,e2fsprogs) ("e2fsprogs" ,e2fsprogs)
("ffmpeg" ,ffmpeg) ("ffmpeg" ,ffmpeg)
("fpc" ,fpc)
("gettext" ,gettext-minimal) ("gettext" ,gettext-minimal)
("ghostscript" ,ghostscript) ("ghostscript" ,ghostscript)
("giflib:bin" ,giflib "bin") ("giflib:bin" ,giflib "bin")
@ -229,7 +231,7 @@ install.")
(define-public reprotest (define-public reprotest
(package (package
(name "reprotest") (name "reprotest")
(version "0.7.16") (version "0.7.18")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -239,7 +241,7 @@ install.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0s7gyixk868dw6yqxsb1sq24mgg9ilz5s2yidd5j0zhl683n7dw9")))) "19lwsxq53isgfkvlxvxqqmbjfcim3lhcxwk7m9ddfjiynhq74949"))))
(inputs (inputs
`(("python-debian" ,python-debian) `(("python-debian" ,python-debian)
("python-distro" ,python-distro) ("python-distro" ,python-distro)

View file

@ -41,6 +41,7 @@
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages bash)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
@ -262,16 +263,16 @@ display manager which supports different greeters.")
(define-public lightdm-gtk-greeter (define-public lightdm-gtk-greeter
(package (package
(name "lightdm-gtk-greeter") (name "lightdm-gtk-greeter")
(version "2.0.7") (version "2.0.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://launchpad.net/lightdm-gtk-greeter/" "https://github.com/xubuntu/lightdm-gtk-greeter"
(version-major+minor version) "/" version "/releases/download/lightdm-gtk-greeter-" version "/"
"/+download/lightdm-gtk-greeter-" version ".tar.gz")) "lightdm-gtk-greeter-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1g7wc3d3vqfa7mrdhx1w9ywydgjbffla6rbrxq9k3sc62br97qms")))) "04q62mvr97l9gv8h37hfarygqc7p0498ig7xclcg4kxkqw0b7yxy"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -306,14 +307,16 @@ display manager which supports different greeters.")
(native-inputs (native-inputs
`(("exo" ,exo) `(("exo" ,exo)
("intltool" ,intltool) ("intltool" ,intltool)
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)
("xfce4-dev-tools" ,xfce4-dev-tools)))
(inputs (inputs
`(("lightdm" ,lightdm) `(("bash" ,bash-minimal) ; for wrap-program
("lightdm" ,lightdm)
("shared-mime-info" ,shared-mime-info) ("shared-mime-info" ,shared-mime-info)
("at-spi2-core" ,at-spi2-core) ("at-spi2-core" ,at-spi2-core)
("gtk+" ,gtk+))) ("gtk+" ,gtk+)))
(synopsis "GTK+ greeter for LightDM") (synopsis "GTK+ greeter for LightDM")
(home-page "https://launchpad.net/lightdm-gtk-greeter") (home-page "https://github.com/xubuntu/lightdm-gtk-greeter")
(description "This package provides a LightDM greeter implementation using (description "This package provides a LightDM greeter implementation using
GTK+, lets you select a desktop session and log in to it.") GTK+, lets you select a desktop session and log in to it.")
(license license:gpl3+))) (license license:gpl3+)))

View file

@ -151,7 +151,7 @@ a continuous layout.")
(define-public pdf2djvu (define-public pdf2djvu
(package (package
(name "pdf2djvu") (name "pdf2djvu")
(version "0.9.18") (version "0.9.18.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -159,7 +159,7 @@ a continuous layout.")
"https://github.com/jwilk/pdf2djvu/releases/download/" version "https://github.com/jwilk/pdf2djvu/releases/download/" version
"/pdf2djvu-" version ".tar.xz")) "/pdf2djvu-" version ".tar.xz"))
(sha256 (sha256
(base32 "0vxa0b3g7zhflc5m6ln4f0hi0shsqyqc3344y7azlllibxc5ba22")))) (base32 "0c595yziz81c9izf9s5sskd00qmgz2n1hp2vdcgg0dx81g3xfidb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -177,9 +177,12 @@ a continuous layout.")
`(#:test-target "test" `(#:test-target "test"
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'check 'set-home-for-tests (add-after 'unpack 'fix-tests
(lambda _ (lambda _
(setenv "HOME" "/tmp")))))) (substitute* "tests/test-xmp-broken.py"
;; Error message changed in recent versions of XML parser
(("XML parsing failure")
"Error in XMLValidator")))))))
(synopsis "PDF to DjVu converter") (synopsis "PDF to DjVu converter")
(description (description
"@code{pdf2djvu} creates DjVu files from PDF files. "@code{pdf2djvu} creates DjVu files from PDF files.

View file

@ -1062,14 +1062,14 @@ synthesis, and on-the-fly re-configuration.")
(define-public knot-resolver (define-public knot-resolver
(package (package
(name "knot-resolver") (name "knot-resolver")
(version "5.4.1") (version "5.4.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://secure.nic.cz/files/knot-resolver/" (uri (string-append "https://secure.nic.cz/files/knot-resolver/"
"knot-resolver-" version ".tar.xz")) "knot-resolver-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0rixiqfj53rfabrz8qpnq4whx8y29d2m5w64a4jlwx7gv4nrd2zv")))) "12x5cd09rv530pak5f2smxcfq2zdqg0g5qxsd5k0alm7f6aj2spa"))))
(build-system meson-build-system) (build-system meson-build-system)
(outputs '("out" "doc")) (outputs '("out" "doc"))
(arguments (arguments

View file

@ -459,8 +459,7 @@ the in DocBook SGML DTDs.")
(string-append (assoc-ref inputs input) (string-append (assoc-ref inputs input)
"/bin")) "/bin"))
'("libxslt" "texlive" '("libxslt" "texlive"
"imagemagick" "inkscape")))) "imagemagick" "inkscape"))))))))))
#t))))))
(home-page "http://dblatex.sourceforge.net") (home-page "http://dblatex.sourceforge.net")
(synopsis "DocBook to LaTeX Publishing") (synopsis "DocBook to LaTeX Publishing")
(description (description

View file

@ -102,6 +102,7 @@
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org> ;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org> ;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
;;; Copyright © 2021 Simon South <simon@simonsouth.net> ;;; Copyright © 2021 Simon South <simon@simonsouth.net>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -456,16 +457,16 @@ a generic Scheme interaction mode for the GNU Emacs editor.")
(define-public emacs-vc-hgcmd (define-public emacs-vc-hgcmd
(package (package
(name "emacs-vc-hgcmd") (name "emacs-vc-hgcmd")
(version "1.14") (version "1.14.1")
(source (origin (source
(method git-fetch) (origin
(uri (git-reference (method git-fetch)
(url "https://github.com/muffinmad/emacs-vc-hgcmd") (uri (git-reference
(commit (string-append "v" version)))) (url "https://github.com/muffinmad/emacs-vc-hgcmd")
(file-name (git-file-name name version)) (commit (string-append "v" version))))
(sha256 (file-name (git-file-name name version))
(base32 (sha256
"1mm8lnwii53j32v54aahl8sf3ciwymrvc1rgy4nw2m7hcrnjsb78")))) (base32 "1nlaicza4ds325827ks5gb7zn0nc536k2chq8jwbq34ybvxi93wj"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/muffinmad/emacs-vc-hgcmd") (home-page "https://github.com/muffinmad/emacs-vc-hgcmd")
(synopsis "Version control (VC) backend for the Mercurial command server") (synopsis "Version control (VC) backend for the Mercurial command server")
@ -1718,7 +1719,7 @@ directly.")
(home-page "https://bitbucket.org/agriggio/ahg") (home-page "https://bitbucket.org/agriggio/ahg")
(synopsis "Emacs front-end for the Mercurial SCM") (synopsis "Emacs front-end for the Mercurial SCM")
(description (description
"This packages provides a simple Emacs front-end for the Mercurial "This package provides a simple Emacs front-end for the Mercurial
Distributed @acronym{Source Control Management, SCM} system.") Distributed @acronym{Source Control Management, SCM} system.")
(license license:gpl3+)))) (license license:gpl3+))))
@ -6414,31 +6415,27 @@ for the current function or variable in the minibuffer.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-company-quickhelp (define-public emacs-company-quickhelp
;; XXX: release version 2.3.0 is on an unmaintained branch for some reason, (package
;; so we use the latest 2.2.0 commit instead (name "emacs-company-quickhelp")
(let ((commit "479676cade80a9f03802ca3d956591820ed5c537") (version "2.3.0")
(revision "1")) (source
(package (origin
(name "emacs-company-quickhelp") (method git-fetch)
(version (git-version "2.2.0" revision commit)) (uri (git-reference
(source (url "https://github.com/expez/company-quickhelp")
(origin (commit version)))
(method git-fetch) (file-name (git-file-name name version))
(uri (git-reference (sha256
(url "https://github.com/expez/company-quickhelp") (base32 "08ccsfvwdpzpj0gai3xrdb2bv1nl6myjkxsc5774pbvlq9nkfdvr"))))
(commit commit))) (build-system emacs-build-system)
(file-name (git-file-name name version)) (propagated-inputs
(sha256 `(("emacs-pos-tip" ,emacs-pos-tip)
(base32 "0hbqpnaf4hnin3nmdzmfj3v22kk9a97b6zssqs96ns36d9h52xcp")))) ("emacs-company" ,emacs-company)))
(build-system emacs-build-system) (home-page "https://github.com/expez/company-quickhelp")
(propagated-inputs (synopsis "Popup documentation for completion candidates")
`(("emacs-pos-tip" ,emacs-pos-tip) (description "@code{company-quickhelp} shows documentation for the
("emacs-company" ,emacs-company)))
(home-page "https://github.com/expez/company-quickhelp")
(synopsis "Popup documentation for completion candidates")
(description "@code{company-quickhelp} shows documentation for the
completion candidate when using the Company text completion framework.") completion candidate when using the Company text completion framework.")
(license license:gpl3+)))) (license license:gpl3+)))
(define-public emacs-math-symbol-lists (define-public emacs-math-symbol-lists
(package (package
@ -8208,7 +8205,7 @@ them easier to distinguish from other, less important buffers.")
(define-public emacs-embark (define-public emacs-embark
(package (package
(name "emacs-embark") (name "emacs-embark")
(version "0.10") (version "0.12")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -8216,7 +8213,7 @@ them easier to distinguish from other, less important buffers.")
(url "https://github.com/oantolin/embark") (url "https://github.com/oantolin/embark")
(commit version))) (commit version)))
(sha256 (sha256
(base32 "063hc0hganws11vjdk3ic0mxm9i0vpw6s7hzbgxvja0gjkdxjldz")) (base32 "16z7g6ynj4d64wsg49skhwypn5j6awlpsawbz61djsmpzlzjnv36"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
@ -18954,7 +18951,7 @@ powerful Org contents.")
(define-public emacs-org-re-reveal (define-public emacs-org-re-reveal
(package (package
(name "emacs-org-re-reveal") (name "emacs-org-re-reveal")
(version "3.12.1") (version "3.12.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -18963,7 +18960,7 @@ powerful Org contents.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0hi8lq9rj6i2m14dh75dzq7lq41i4f6qj4xbp2b8krqw6mk9xg7z")))) (base32 "08ai87b6nybg0l7y8falb53wwvdv8hr3jzj5q995x48ylw6r1582"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
`(("emacs-htmlize" ,emacs-htmlize) `(("emacs-htmlize" ,emacs-htmlize)
@ -21139,7 +21136,7 @@ file.")
(define-public emacs-packed (define-public emacs-packed
(package (package
(name "emacs-packed") (name "emacs-packed")
(version "3.0.3") (version "3.0.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -21148,8 +21145,7 @@ file.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "1gpv2vaci0m48fzn0sy7iwl1mnkkqc30bf05jjrqlpn9kpbjyf1p"))))
"06blk8parnpq3qi6y5628q3v59c8dyi41glb289a0l16248qwphk"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/emacscollective/packed") (home-page "https://github.com/emacscollective/packed")
(synopsis "Package manager agnostic Emacs Lisp package utilities") (synopsis "Package manager agnostic Emacs Lisp package utilities")
@ -23439,16 +23435,16 @@ buffer and launches Magit from the status buffer for the project at point.")
(define-public emacs-alect-themes (define-public emacs-alect-themes
(package (package
(name "emacs-alect-themes") (name "emacs-alect-themes")
(version "0.9") (version "0.10")
(source (origin (source
(method git-fetch) (origin
(uri (git-reference (method git-fetch)
(url "https://github.com/alezost/alect-themes") (uri (git-reference
(commit (string-append "v" version)))) (url "https://github.com/alezost/alect-themes")
(file-name (git-file-name name version)) (commit (string-append "v" version))))
(sha256 (file-name (git-file-name name version))
(base32 (sha256
"0nffxpdm0sa7bynwi0rmlwpc4qmvbda5ankhzz7fmk4ap9fkjxv9")))) (base32 "190clnm5x4hpzrq2wp18vxg6614ly3ciyv0y1sm9rfr9w9z5i0ya"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/alezost/alect-themes") (home-page "https://github.com/alezost/alect-themes")
(synopsis "Low contrast, light, dark and black color theme for Emacs") (synopsis "Low contrast, light, dark and black color theme for Emacs")
@ -23814,7 +23810,7 @@ processes for Emacs")
(define-public emacs-treemacs (define-public emacs-treemacs
(package (package
(name "emacs-treemacs") (name "emacs-treemacs")
(version "2.9.3") (version "2.9.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -23823,7 +23819,7 @@ processes for Emacs")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0ik7wkv6w5vga29pmj8zzn3lq9a2ww26gkl380hmaak809in6k65")))) (base32 "1g2fy2qkscqx01av92hpjbr6qld8s1gk59cdjbff8fm0vlx8xk2p"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
`(("emacs-ace-window" ,emacs-ace-window) `(("emacs-ace-window" ,emacs-ace-window)
@ -23895,9 +23891,11 @@ utilities.")
(name "emacs-treemacs-extra") (name "emacs-treemacs-extra")
(propagated-inputs (propagated-inputs
`(,@(package-propagated-inputs emacs-treemacs) `(,@(package-propagated-inputs emacs-treemacs)
("emacs-all-the-icons" ,emacs-all-the-icons)
("emacs-evil" ,emacs-evil) ("emacs-evil" ,emacs-evil)
("emacs-magit" ,emacs-magit) ("emacs-magit" ,emacs-magit)
("emacs-projectile" ,emacs-projectile) ("emacs-projectile" ,emacs-projectile)
("emacs-perspective" ,emacs-perspective)
("emacs-persp-mode" ,emacs-persp-mode))) ("emacs-persp-mode" ,emacs-persp-mode)))
(arguments (arguments
(substitute-keyword-arguments (substitute-keyword-arguments
@ -26066,14 +26064,14 @@ federated microblogging social network.")
(define-public emacs-ebdb (define-public emacs-ebdb
(package (package
(name "emacs-ebdb") (name "emacs-ebdb")
(version "0.8.6") (version "0.8.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/" (uri (string-append "https://elpa.gnu.org/packages/"
"ebdb-" version ".tar")) "ebdb-" version ".tar"))
(sha256 (sha256
(base32 "0amr1s1q5w4513qw31qsr8gpsfgj5b2j7qn017rmwbaf1mj0k6z0")))) (base32 "035xakji5vypdpc06qp9yhg8ny7qn80h8kax6cl80p0lljplzrnn"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/girzel/ebdb") (home-page "https://github.com/girzel/ebdb")
(synopsis "EIEIO port of BBDB, Emacs's contact-management package") (synopsis "EIEIO port of BBDB, Emacs's contact-management package")
@ -28655,26 +28653,29 @@ rather excellent completion provided by both Bash and Zsh.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-shell-command+ (define-public emacs-shell-command+
(package ;; XXX: Upstream did not tag last release. The commit below corresponds to
(name "emacs-shell-command+") ;; the exact version bump.
(version "2.2.0") (let ((commit "bf744c63bbd1e3bbb93407bd32d6da670b23e67e"))
(source (origin (package
(method git-fetch) (name "emacs-shell-command+")
(uri (git-reference (version "2.3.2")
(url "https://git.sr.ht/~pkal/shell-command-plus") (source (origin
(commit version))) (method git-fetch)
(file-name (git-file-name name version)) (uri (git-reference
(sha256 (url "https://git.sr.ht/~pkal/shell-command-plus")
(base32 "1micvz6smhjma7qbka8h3w0crb3sgrxf9lz2548iqfgww50gb0lj")))) (commit commit)))
(build-system emacs-build-system) (file-name (git-file-name name version))
(home-page "http://elpa.gnu.org/packages/shell-command+.html") (sha256
(synopsis "Extended Emacs @code{shell-command}") (base32 "0prlvcryq5ngrzn5f45rkw09wbr99v7nnwps2bjrjc3wvr2rp6h0"))))
(description (build-system emacs-build-system)
"Shell-command+ is a @code{shell-command} substitute that extends the (home-page "http://elpa.gnu.org/packages/shell-command+.html")
(synopsis "Extended Emacs @code{shell-command}")
(description
"Shell-command+ is a @code{shell-command} substitute that extends the
regular Emacs command with several features. You can for example count all regular Emacs command with several features. You can for example count all
the lines in a buffer with @code{> wc -l}, or delete all lower case letters in the lines in a buffer with @code{> wc -l}, or delete all lower case letters in
the selected region with @code{| tr -d a-z}.") the selected region with @code{| tr -d a-z}.")
(license license:gpl3+))) (license license:gpl3+))))
(define-public emacs-shell-pop (define-public emacs-shell-pop
(let ((commit "4b4394037940a890a313d715d203d9ead2d156a6") (let ((commit "4b4394037940a890a313d715d203d9ead2d156a6")
@ -29204,14 +29205,14 @@ work on alists, hash-table and arrays. All functions are prefixed with
(define-public emacs-xref (define-public emacs-xref
(package (package
(name "emacs-xref") (name "emacs-xref")
(version "1.3.0") (version "1.3.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/xref-" (uri (string-append "https://elpa.gnu.org/packages/xref-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 "0bw2cbxmjavzhmpd9gyl41d4c201p535jrfz3b7jb5zw12jdnppl")))) (base32 "13bsaxdxwn14plaam0hsrswngh3rm2k29v5ybjgjyjy4d5vwz78j"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/xref.html") (home-page "http://elpa.gnu.org/packages/xref.html")
(synopsis "Cross-referencing commands") (synopsis "Cross-referencing commands")
@ -29499,7 +29500,7 @@ shorter than usual, using mostly unprefixed keys.")
`(("emacs-yaml-mode" ,emacs-yaml-mode))) `(("emacs-yaml-mode" ,emacs-yaml-mode)))
(home-page "https://github.com/tom-tan/cwl-mode") (home-page "https://github.com/tom-tan/cwl-mode")
(synopsis "Emacs mode for @acronym{CWL, Common Workflow Language} files") (synopsis "Emacs mode for @acronym{CWL, Common Workflow Language} files")
(description "This packages provides a major mode for editing (description "This package provides a major mode for editing
@acronym{CWL, Common Workflow Language} files.") @acronym{CWL, Common Workflow Language} files.")
(license license:gpl3+))) (license license:gpl3+)))

View file

@ -183,15 +183,13 @@
(lambda* (#:key outputs target #:allow-other-keys) (lambda* (#:key outputs target #:allow-other-keys)
(let* ((libexec (string-append (assoc-ref outputs "out") (let* ((libexec (string-append (assoc-ref outputs "out")
"/libexec")) "/libexec"))
;; each of these find-files should return one file ;; each of these ought to only match a single file,
(pdmp (find-files libexec "^emacs\\.pdmp$")) ;; but even if not (find-files) sorts by string<,
(pdmp-real (find-files libexec ;; so the Nth element in one maps to the Nth element of
"^\\.emacs\\.pdmp-real$"))) ;; the other
(for-each (lambda (wrapper real) (pdmp (find-files libexec "\\.pdmp$"))
(delete-file wrapper) (pdmp-real (find-files libexec "\\.pdmp-real$")))
(rename-file real wrapper)) (for-each rename-file pdmp-real pdmp))))
pdmp pdmp-real))
#t))
(add-after 'glib-or-gtk-wrap 'strip-double-wrap (add-after 'glib-or-gtk-wrap 'strip-double-wrap
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
;; Directly copy emacs-X.Y to emacs, so that it is not wrapped ;; Directly copy emacs-X.Y to emacs, so that it is not wrapped

View file

@ -1752,7 +1752,7 @@ This is a part of the TiLP project.")
(define-public mame (define-public mame
(package (package
(name "mame") (name "mame")
(version "0.236") (version "0.237")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1761,7 +1761,7 @@ This is a part of the TiLP project.")
(commit (apply string-append "mame" (string-split version #\.))))) (commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0pxvvdirbwakl5cy7lp0zib6z176ckxx8c3mazsd7q1ddxxd3l8x")) (base32 "0syj7l262s2ac70dfg47pakd6fk8x3p3sasixmcwdmvnzkiqvmj4"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Remove bundled libraries. ;; Remove bundled libraries.

View file

@ -995,7 +995,7 @@ Emacs).")
("python" ,python-wrapper) ("python" ,python-wrapper)
("wxwidgets" ,wxwidgets) ("wxwidgets" ,wxwidgets)
("wxpython" ,python-wxpython))) ("wxpython" ,python-wxpython)))
(home-page "https://kicad-pcb.org/") (home-page "https://www.kicad.org/")
(synopsis "Electronics Design Automation Suite") (synopsis "Electronics Design Automation Suite")
(description "Kicad is a program for the formation of printed circuit (description "Kicad is a program for the formation of printed circuit
boards and electrical circuits. The software has a number of programs that boards and electrical circuits. The software has a number of programs that

View file

@ -88,7 +88,7 @@
(define-public autofs (define-public autofs
(package (package
(name "autofs") (name "autofs")
(version "5.1.7") (version "5.1.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -96,7 +96,7 @@
"v" (version-major version) "/" "v" (version-major version) "/"
"autofs-" version ".tar.xz")) "autofs-" version ".tar.xz"))
(sha256 (sha256
(base32 "1myfz6a3wj2c4j9h5g44zj796fdi82jhp1s92w2hg6xp2632csx3")))) (base32 "1zf0fgf6kr9amxq5amlgsp1v13sizwl3wvx2xl7b4r2nhmci0gdk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -118,8 +118,7 @@
(lambda _ (lambda _
(substitute* "configure" (substitute* "configure"
(("^searchpath=\".*\"") (("^searchpath=\".*\"")
"searchpath=\"$PATH\"")) "searchpath=\"$PATH\""))))
#t))
(add-before 'configure 'fix-rpath (add-before 'configure 'fix-rpath
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
@ -132,8 +131,7 @@
(lambda _ (lambda _
(substitute* "modules/Makefile" (substitute* "modules/Makefile"
(("ln -fs lookup_yp.so" match) (("ln -fs lookup_yp.so" match)
(string-append "# " match))) (string-append "# " match))))))))
#t)))))
(native-inputs (native-inputs
`(("bison" ,bison) `(("bison" ,bison)
("flex" ,flex) ("flex" ,flex)
@ -416,8 +414,8 @@ from a mounted file system.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public bcachefs-tools (define-public bcachefs-tools
(let ((commit "37850436dd7dfbe67738749c4d4a2506ffff1ec3") (let ((commit "f9f57789de567726f7cfa46bd13df4b0815d137a")
(revision "11")) (revision "12"))
(package (package
(name "bcachefs-tools") (name "bcachefs-tools")
(version (git-version "0.1" revision commit)) (version (git-version "0.1" revision commit))
@ -429,7 +427,7 @@ from a mounted file system.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "040vgxrimahmfs9rhlggfwg0bzl7h9j2ksx3563rh63asjwlhnhi")))) (base32 "13442qpmv7hywkpbnbwlg2sfhlfh16qxry1xwlv35vch2qnzlhrq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags `(#:make-flags
@ -509,7 +507,17 @@ performance and other characteristics.")
(substitute-keyword-arguments (package-arguments bcachefs-tools) (substitute-keyword-arguments (package-arguments bcachefs-tools)
((#:make-flags make-flags) ((#:make-flags make-flags)
`(append ,make-flags `(append ,make-flags
(list "LDFLAGS=-static"))))) (list "LDFLAGS=-static")))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'skip-shared-library
(lambda _
(substitute* "Makefile"
;; Building the shared library with -static obviously fails…
(("^((all|install):.*)\\blib\\b(.*)" _ prefix suffix)
(string-append prefix suffix "\n"))
;; …as does installing a now non-existent file.
((".*\\$\\(INSTALL\\).* lib.*") ""))))))))
(inputs (inputs
`(("eudev:static" ,eudev "static") `(("eudev:static" ,eudev "static")
("libscrypt:static" ,libscrypt "static") ("libscrypt:static" ,libscrypt "static")

View file

@ -116,7 +116,7 @@
(define-public bitcoin-core-0.21 (define-public bitcoin-core-0.21
(package (package
(name "bitcoin-core") (name "bitcoin-core")
(version "0.21.1") (version "0.21.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -124,7 +124,7 @@
version "/bitcoin-" version ".tar.gz")) version "/bitcoin-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1q51nqv64lhng5wh1cqb01jar7iswpnyyb1i7xslbkr0j9227zya")))) "17nvir1yc6mf4wr1fn4xsabw49cd5p9vig8wj77vv4anzi8zfij1"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
@ -1778,7 +1778,17 @@ editing on the Web.")
(base32 "0lf69nna0aahwpgd9m9yjzbv2fbfn081djfznssa84f0n7y1xx4z")))) (base32 "0lf69nna0aahwpgd9m9yjzbv2fbfn081djfznssa84f0n7y1xx4z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(;; Parallel build fails with: `(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'link-math-library
(lambda _
(substitute* "src/Makefile.am"
(("ta_common/libta_common.la")
"ta_common/libta_common.la -lm"))
(substitute* "src/Makefile.in"
(("\\$\\(libta_lib_la_LDFLAGS\\) \\$\\(LDFLAGS\\) -o \\$@")
"$(libta_lib_la_LDFLAGS) $(LDFLAGS) -lm -o $@")))))
;; Parallel build fails with:
;; mv -f .deps/gen_code-gen_code.Tpo .deps/gen_code-gen_code.Po ;; mv -f .deps/gen_code-gen_code.Tpo .deps/gen_code-gen_code.Po
;; mv: cannot stat '.deps/gen_code-gen_code.Tpo': No such file or directory ;; mv: cannot stat '.deps/gen_code-gen_code.Tpo': No such file or directory
;; Makefile:254: recipe for target 'gen_code-gen_code.o' failed ;; Makefile:254: recipe for target 'gen_code-gen_code.o' failed

View file

@ -465,7 +465,7 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64")) (define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
(package (package
(name (string-append "arm-trusted-firmware-" platform)) (name (string-append "arm-trusted-firmware-" platform))
(version "2.4") (version "2.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -476,7 +476,7 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
(file-name (git-file-name "arm-trusted-firmware" version)) (file-name (git-file-name "arm-trusted-firmware" version))
(sha256 (sha256
(base32 (base32
"12k0n79j156bdzqws18kpbli04kn00nh6dy42pjv6gakqrkx9px3")))) "0w3blkqgmyb5bahlp04hmh8abrflbzy0qg83kmj1x9nv4mw66f3b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases

View file

@ -8,6 +8,7 @@
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -50,7 +51,8 @@
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages libftdi) #:use-module (gnu packages libftdi)
#:use-module (gnu packages pciutils) #:use-module (gnu packages pciutils)
#:use-module (gnu packages qt)) #:use-module (gnu packages qt)
#:use-module (gnu packages tls))
(define-public flashrom (define-public flashrom
(package (package
@ -196,7 +198,7 @@ ISP.")
(define-public dfu-util (define-public dfu-util
(package (package
(name "dfu-util") (name "dfu-util")
(version "0.10") (version "0.11")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -204,7 +206,7 @@ ISP.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0hlvc47ccf5hry13saqhc1j5cdq5jyjv4i05kj0mdh3rzj6wagd0")))) "17piiyp08pccqmbhnswv957lkypmmm92kps79hypxvw23ai3pddl"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("libusb" ,libusb))) `(("libusb" ,libusb)))
@ -526,3 +528,55 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
manipulating EPROM load files. It reads and writes numerous EPROM file manipulating EPROM load files. It reads and writes numerous EPROM file
formats, and can perform many different manipulations.") formats, and can perform many different manipulations.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public uuu
(package
(name "uuu")
(version "1.4.165")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/NXPmicro/mfgtools")
(commit (string-append "uuu_" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0k309lp27d4k6x4qq0badbk8i47xsc6f3fffz73650iyfs4hcniw"))))
(arguments
`(#:tests? #f ; no tests
#:modules ((guix build utils)
(ice-9 popen)
(srfi srfi-26)
(guix build cmake-build-system))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'fix-version-gen
(lambda _
(call-with-output-file ".tarball-version"
(lambda (port)
(display ,version port)))))
(add-after 'install 'install-udev-rules
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(uuu (string-append out "/bin/uuu"))
(pipe (open-pipe* OPEN_READ uuu "-udev"))
(rules
(string-append out "/lib/udev/rules.d/70-uuu.rules")))
(mkdir-p (string-append out "/lib/udev/rules.d"))
(call-with-output-file rules
(cut dump-port pipe <>))))))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("libusb" ,libusb)
("bzip2" ,bzip2)
("zlib" ,zlib)
("libzip" ,libzip)
("openssl" ,openssl)))
(home-page "https://github.com/NXPmicro/mfgtools")
(synopsis "Freescale/NXP I.MX chip image deploy tools")
(description "@code{uuu} is a command line tool, evolved out of MFGTools.
It can be used to upload images to I.MX SoC's using at least their boot ROM.")
(license license:bsd-3)))

View file

@ -743,7 +743,7 @@ for use at smaller text sizes")))
(define-public font-gnu-unifont (define-public font-gnu-unifont
(package (package
(name "font-gnu-unifont") (name "font-gnu-unifont")
(version "13.0.06") (version "14.0.01")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -753,22 +753,21 @@ for use at smaller text sizes")))
(string-append "mirror://gnu/unifont/unifont-" (string-append "mirror://gnu/unifont/unifont-"
version "/unifont-" version ".tar.gz"))) version "/unifont-" version ".tar.gz")))
(sha256 (sha256
(base32 "09g91g0gv76sadslp70m5xwfk3jf8kh7rpk2pz3l2hpldnjggpk8")))) (base32 "0wkdn8h20pprna5a3hbny0qk2mgksrbxs2y6ng6qarj6rkpdmlbs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" ; TrueType version (outputs '("out" ; TrueType version
"pcf" ; PCF (bitmap) version "pcf" ; PCF (bitmap) version
"psf" ; PSF (console) version "psf" ; PSF (console) version
"bin")) ; Utilities to manipulate '.hex' format "bin")) ; Utilities to manipulate '.hex' format
(arguments (arguments
'(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:make-flags
(list (string-append "CC=" ,(cc-for-target)))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace (delete 'configure)
'configure (replace 'install
(lambda _ (setenv "CC" "gcc") #t)) (lambda* (#:key make-flags outputs #:allow-other-keys)
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((ttf (string-append (assoc-ref outputs "out") (let* ((ttf (string-append (assoc-ref outputs "out")
"/share/fonts/truetype")) "/share/fonts/truetype"))
(pcf (string-append (assoc-ref outputs "pcf") (pcf (string-append (assoc-ref outputs "pcf")
@ -776,18 +775,17 @@ for use at smaller text sizes")))
(psf (string-append (assoc-ref outputs "psf") (psf (string-append (assoc-ref outputs "psf")
"/share/consolefonts")) "/share/consolefonts"))
(bin (assoc-ref outputs "bin"))) (bin (assoc-ref outputs "bin")))
(invoke "make" (apply invoke "make" "install"
(string-append "PREFIX=" bin) (string-append "PREFIX=" bin)
(string-append "TTFDEST=" ttf) (string-append "TTFDEST=" ttf)
(string-append "PCFDEST=" pcf) (string-append "PCFDEST=" pcf)
(string-append "CONSOLEDEST=" psf) (string-append "CONSOLEDEST=" psf)
"install") make-flags)
;; Move Texinfo file to the right place. ;; Move Texinfo file to the right place.
(mkdir (string-append bin "/share/info")) (mkdir (string-append bin "/share/info"))
(invoke "gzip" "-9n" "doc/unifont.info") (invoke "gzip" "-9n" "doc/unifont.info")
(install-file "doc/unifont.info.gz" (install-file "doc/unifont.info.gz"
(string-append bin "/share/info")) (string-append bin "/share/info"))))))))
#t))))))
(inputs (inputs
`(("perl" ,perl))) ; for utilities `(("perl" ,perl))) ; for utilities
(synopsis (synopsis
@ -845,7 +843,7 @@ visual language \"Material Design\".")
(define-public font-borg-sans-mono (define-public font-borg-sans-mono
(package (package
(name "font-borg-sans-mono") (name "font-borg-sans-mono")
(version "0.3.2") (version "0.3.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -854,7 +852,7 @@ visual language \"Material Design\".")
"/releases/download/v" version "/borg-sans-mono.zip")) "/releases/download/v" version "/borg-sans-mono.zip"))
(sha256 (sha256
(base32 (base32
"0q16gw3ry9hpgbl2636qq00ap59xyx15jf3gzvx2ybz3gja164c4")))) "0xzi866ag9w4q114bn984yjfy72pmfs563v5yy1rkbqycphgwwyp"))))
(build-system font-build-system) (build-system font-build-system)
(home-page "https://github.com/charje/borg-sans-mono") (home-page "https://github.com/charje/borg-sans-mono")
(synopsis "The Borg Sans Mono font") (synopsis "The Borg Sans Mono font")
@ -1968,25 +1966,25 @@ in small sizes, the text looks crisper.")
(define-public font-juliamono (define-public font-juliamono
(package (package
(name "font-juliamono") (name "font-juliamono")
(version "0.031") (version "0.043")
(source (source
(origin (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append
(url "https://github.com/cormullion/juliamono") "https://github.com/cormullion/juliamono/releases/download/"
(commit (string-append "v" version)))) "v" version "/JuliaMono-ttf.tar.gz"))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 "0pcz2qaw0g0gak4plvhgg3m76h4gamffa373r52dzx0qwn1i1cf1")))) (base32
"0vb7n9yqgasnxzps13ckklay5bla6b0i79pzmfqvjms1r37079gh"))))
(build-system font-build-system) (build-system font-build-system)
(arguments (arguments
`(#:phases `(#:phases (modify-phases %standard-phases
(modify-phases %standard-phases (replace 'unpack
(add-after 'unpack 'delete-website-folder (lambda* (#:key source #:allow-other-keys)
;; This folder contains other unrelated fonts. (mkdir "source")
(lambda _ (chdir "source")
(delete-file-recursively "website") (invoke "tar" "xzf" source))))))
#t))))) (native-inputs `(("tar" ,tar)))
(home-page "https://github.com/cormullion/juliamono") (home-page "https://github.com/cormullion/juliamono")
(synopsis "Monospaced font for programming") (synopsis "Monospaced font for programming")
(description (description

View file

@ -846,7 +846,7 @@ maintain the Noto Fonts project.")
(define-public fcft (define-public fcft
(package (package
(name "fcft") (name "fcft")
(version "2.4.5") (version "2.4.6")
(home-page "https://codeberg.org/dnkl/fcft") (home-page "https://codeberg.org/dnkl/fcft")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
@ -854,7 +854,7 @@ maintain the Noto Fonts project.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0z4bqap88pydkgcxrsvm3fmcyhi9x7z8knliarvdcvqlk7qnyzfh")))) "0jh05wzrif7z1xf9jzs8bgf49lpj5zs55agj414bmmwdddk7my7j"))))
(build-system meson-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
`(("check" ,check) `(("check" ,check)
@ -888,7 +888,7 @@ generated list of fallback fonts are checked.")
(define-public fontmanager (define-public fontmanager
(package (package
(name "fontmanager") (name "fontmanager")
(version "0.8.4") (version "0.8.7")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -897,8 +897,7 @@ generated list of fallback fonts are checked.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0nyda2a6vbzyz4sn9mmrr8bkifzxmmjp7x9a3c4s6n925ccy79cn"))))
"09rv0srpj8ann2n1zpv1frlpxz0x10d2y21c5lys7pmfngljlxi9"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t
@ -935,7 +934,7 @@ work well with other GTK+ desktop environments.")
(define-public fntsample (define-public fntsample
(package (package
(name "fntsample") (name "fntsample")
(version "5.3") (version "5.4")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -944,7 +943,7 @@ work well with other GTK+ desktop environments.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"02rx3gp7k472304vhjwb129nw10a29s4nvgs7i2m6bpjhlk2xgs5")))) "0pcqqdriv6hq64zrqd9vhdd9p2vhimjnajcxdz10qnqgrkmm751v"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; There are no tests. `(#:tests? #f ; There are no tests.
@ -965,8 +964,7 @@ work well with other GTK+ desktop environments.")
"/lib/perl5/site_perl/" "/lib/perl5/site_perl/"
,(package-version perl)))) ,(package-version perl))))
(wrap-program (string-append out "/bin/pdfoutline") (wrap-program (string-append out "/bin/pdfoutline")
`("PERL5LIB" ":" prefix (,perllib))) `("PERL5LIB" ":" prefix (,perllib)))))))))
#t))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal))) ("gettext" ,gettext-minimal)))
@ -979,13 +977,15 @@ work well with other GTK+ desktop environments.")
("perl-pdf-api2" ,perl-pdf-api2) ("perl-pdf-api2" ,perl-pdf-api2)
("perl-libintl-perl" ,perl-libintl-perl) ("perl-libintl-perl" ,perl-libintl-perl)
("unicode-blocks" ("unicode-blocks"
,(origin ,(let ((version "14.0.0"))
(method url-fetch) (origin
(uri "https://unicode.org/Public/UNIDATA/Blocks.txt") (method url-fetch)
(file-name "unicode-blocks.txt") (uri (string-append "https://unicode.org/Public/"
(sha256 version "/ucd/Blocks.txt"))
(base32 (file-name (string-append "unicode-blocks-" version ".txt"))
"1xs8fnhh48gs41wg004r7m4r2azh9khmyjjlnvyzy9c6zrd212x2")))))) (sha256
(base32
"05vzgrvfp35mgxjgkm4wnxjjgzva8n6545i9jxd4pczpvvfp122r")))))))
(home-page "https://github.com/eugmes/fntsample") (home-page "https://github.com/eugmes/fntsample")
(synopsis "PDF and PostScript font samples generator") (synopsis "PDF and PostScript font samples generator")
(description "This package provides a tool that can be used to make font (description "This package provides a tool that can be used to make font

View file

@ -26,6 +26,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Robby Zambito <contact@robbyzambito.me> ;;; Copyright © 2021 Robby Zambito <contact@robbyzambito.me>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -2055,17 +2056,14 @@ Python, that binds to the C library @code{uchardet} to increase performance.")
(define-public udiskie (define-public udiskie
(package (package
(name "udiskie") (name "udiskie")
(version "2.1.0") (version "2.3.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "udiskie" version)) (uri (pypi-uri "udiskie" version))
(sha256 (sha256
(base32 (base32
"0smib8vbs9q37n7ynhzyw97q16fgdkcdw7fw69lci0xvyq00v1dz")) "0sagdmsc5km32h3jvgj843p8bicrrgfz26qhl04ibxmas6725zr0"))))
;; Remove support for the libappindicator library of the
;; Unity desktop environment which is not in Guix.
(patches (search-patches "udiskie-no-appindicator.patch"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("asciidoc" ,asciidoc) `(("asciidoc" ,asciidoc)
@ -2074,6 +2072,7 @@ Python, that binds to the C library @code{uchardet} to increase performance.")
(inputs (inputs
`(("gobject-introspection" ,gobject-introspection) `(("gobject-introspection" ,gobject-introspection)
("gtk+" ,gtk+) ("gtk+" ,gtk+)
("libappindicator" ,libappindicator)
("libnotify" ,libnotify) ("libnotify" ,libnotify)
("udisks" ,udisks))) ("udisks" ,udisks)))
(propagated-inputs (propagated-inputs
@ -2350,16 +2349,15 @@ fallback to generic Systray support if none of those are available.")
(define-public xdg-desktop-portal (define-public xdg-desktop-portal
(package (package
(name "xdg-desktop-portal") (name "xdg-desktop-portal")
(version "1.8.1") (version "1.10.1")
(source (origin (source (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append
(url "https://github.com/flatpak/xdg-desktop-portal") "https://github.com/flatpak/xdg-desktop-portal/releases/download/"
(commit version))) version "/xdg-desktop-portal-" version ".tar.xz"))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0pq0kmvzk56my396vh97pzw4wizwmlmzvv2kr2xv047x3044mr5n")))) "199lqr2plsy9qqnxx5a381ml8ygcbz4nkjla5pvljjcrwzlqsygd"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -2410,16 +2408,15 @@ and others.")
(define-public xdg-desktop-portal-gtk (define-public xdg-desktop-portal-gtk
(package (package
(name "xdg-desktop-portal-gtk") (name "xdg-desktop-portal-gtk")
(version "1.7.1") (version "1.10.0")
(source (origin (source (origin
(method git-fetch) (method url-fetch)
(uri (git-reference (uri (string-append
(url "https://github.com/flatpak/xdg-desktop-portal-gtk") "https://github.com/flatpak/xdg-desktop-portal-gtk/releases/download/"
(commit version))) version "/xdg-desktop-portal-gtk-" version ".tar.xz"))
(file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"183iha9dxmvprn99ymgz17jx1lyn1fj5jyj6ghxl716zn9mxmird")))) "0nlbnd6qvs92fanrmmn123vy0y2ml0v3ndxyk5x0cpfbnmxpa2f8"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -2430,13 +2427,21 @@ and others.")
(for-each (lambda (po) (for-each (lambda (po)
(chmod po #o666)) (chmod po #o666))
(find-files "po" "\\.po$")) (find-files "po" "\\.po$"))
#t))))) #t)))
;; Enable Gnome portal backends
#:configure-flags
(list
"--enable-appchooser"
"--enable-wallpaper"
"--enable-screenshot"
"--enable-screencast"
"--enable-background"
"--enable-settings")))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("autoconf" ,autoconf) ("autoconf" ,autoconf)
("automake" ,automake) ("automake" ,automake)
("libtool" ,libtool) ("libtool" ,libtool)
("xdg-desktop-portal" ,xdg-desktop-portal)
("glib:bin" ,glib "bin") ("glib:bin" ,glib "bin")
("which" ,which) ("which" ,which)
("gettext" ,gettext-minimal))) ("gettext" ,gettext-minimal)))
@ -2446,10 +2451,8 @@ and others.")
("fontconfig" ,fontconfig) ("fontconfig" ,fontconfig)
("gnome-desktop" ,gnome-desktop) ("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas))) ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
(native-search-paths (propagated-inputs
(list (search-path-specification `(("xdg-desktop-portal" ,xdg-desktop-portal)))
(variable "XDG_DESKTOP_PORTAL_DIR")
(files '("share/xdg-desktop-portal/portals")))))
(home-page "https://github.com/flatpak/xdg-desktop-portal-gtk") (home-page "https://github.com/flatpak/xdg-desktop-portal-gtk")
(synopsis "GTK implementation of xdg-desktop-portal") (synopsis "GTK implementation of xdg-desktop-portal")
(description (description
@ -2499,7 +2502,7 @@ compositors.")
(define-public waypipe (define-public waypipe
(package (package
(name "waypipe") (name "waypipe")
(version "0.8.0") (version "0.8.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2508,22 +2511,13 @@ compositors.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1qa47ljfvb1vv3h647xwn1j5j8gfmcmdfaz4j8ygnkvj36y87vnz")))) (base32 "1v08dv3dfz420v51ahz7qgv3429073kmgrf8f66s4c3jlpch2pa1"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-sleep-path
(lambda* (#:key inputs #:allow-other-keys)
(let ((coreutils (assoc-ref inputs "coreutils")))
(substitute* "./test/startup_failure.py"
(("sleep") (string-append coreutils "/bin/sleep")))))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("scdoc" ,scdoc) ("scdoc" ,scdoc)
;; For tests ;; For tests
("python" ,python) ("python" ,python)))
("coreutils" ,coreutils)))
(home-page "https://gitlab.freedesktop.org/mstoeckl/waypipe") (home-page "https://gitlab.freedesktop.org/mstoeckl/waypipe")
(synopsis "Proxy for Wayland protocol applications") (synopsis "Proxy for Wayland protocol applications")
(description (description

View file

@ -866,7 +866,7 @@ package is the Nuklear bindings for LÖVE created by Kevin Harrison.")
(define-public allegro-4 (define-public allegro-4
(package (package
(name "allegro") (name "allegro")
(version "4.4.3") (version "4.4.3.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/liballeg/allegro5/" (uri (string-append "https://github.com/liballeg/allegro5/"
@ -874,7 +874,7 @@ package is the Nuklear bindings for LÖVE created by Kevin Harrison.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1d5ws3ihvpa6f4qc6a6drq31pajw6bblxifr4kcxzqj9br1nw28y")))) "1m6lz35nk07dli26kkwz3wa50jsrxs1kb6w1nj14a911l34xn6gc"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:phases '(#:phases
@ -886,8 +886,7 @@ package is the Nuklear bindings for LÖVE created by Kevin Harrison.")
;; unconditionally clobbered in the build script. ;; unconditionally clobbered in the build script.
(substitute* '("CMakeLists.txt") (substitute* '("CMakeLists.txt")
(("ADDON_LINKAGE STATIC") (("ADDON_LINKAGE STATIC")
"ADDON_LINKAGE SHARED")) "ADDON_LINKAGE SHARED")))))))
#t)))))
(inputs (inputs
`(("glu" ,glu) `(("glu" ,glu)
("libpng" ,libpng) ("libpng" ,libpng)
@ -1184,7 +1183,7 @@ to create fully featured games and multimedia programs in the python language.")
(define-public python-pygame-sdl2 (define-public python-pygame-sdl2
(let ((real-version "2.1.0") (let ((real-version "2.1.0")
(renpy-version "7.4.8")) (renpy-version "7.4.10"))
(package (package
(inherit python-pygame) (inherit python-pygame)
(name "python-pygame-sdl2") (name "python-pygame-sdl2")
@ -1194,7 +1193,7 @@ to create fully featured games and multimedia programs in the python language.")
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" renpy-version (uri (string-append "https://www.renpy.org/dl/" renpy-version
"/pygame_sdl2-" version ".tar.gz")) "/pygame_sdl2-" version ".tar.gz"))
(sha256 (base32 "1yyqcg7khac17jif86vi2d4j9l8x2vfg4h5pasrwwsy0g8386zsm")) (sha256 (base32 "0m0asrr722a4v24fm8199b0c53igagylay8bn9bz9rmc0r4v8si4"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -1240,21 +1239,19 @@ developed mainly for Ren'py.")
(define-public python2-renpy (define-public python2-renpy
(package (package
(name "python2-renpy") (name "python2-renpy")
(version "7.4.8") (version "7.4.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" version (uri (string-append "https://www.renpy.org/dl/" version
"/renpy-" version "-source.tar.bz2")) "/renpy-" version "-source.tar.bz2"))
(sha256 (base32 "1ml3gs87xxk1iflrg5ivffr4q8fi7d65l1cx462bvvpm1rs2sa8d")) (sha256 (base32 "1yngs2kh1l8micg28mcp9580qsvgq3aa8bkhv2xqfkg9qqrbr8y4"))
(modules '((guix build utils))) (modules '((guix build utils)))
(patches (patches
(search-patches (search-patches
"renpy-use-system-fribidi.patch")) "renpy-use-system-fribidi.patch"))
(snippet (snippet
'(with-directory-excursion "module" '(with-directory-excursion "module"
;; drop generated sources
(delete-file-recursively "gen")
;; drop fribidi sources ;; drop fribidi sources
(delete-file-recursively "fribidi-src") (delete-file-recursively "fribidi-src")
#t)))) #t))))

View file

@ -4136,7 +4136,7 @@ falling, themeable graphics and sounds, and replays.")
(define-public wesnoth (define-public wesnoth
(package (package
(name "wesnoth") (name "wesnoth")
(version "1.14.17") (version "1.16.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/wesnoth/wesnoth-" (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-"
@ -4145,7 +4145,7 @@ falling, themeable graphics and sounds, and replays.")
"wesnoth-" version ".tar.bz2")) "wesnoth-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"1qc4ylhc4ab51milclzhflpmzw6bg35knwqaj3b157700jkcniin")))) "0qs102ws46z0cqyk3maxd1c4bywswlacbqkpmb51x9jd8c746vhz"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f)) ;no check target `(#:tests? #f)) ;no check target
@ -6397,18 +6397,17 @@ with the mouse isnt always trivial.")
(define-public chroma (define-public chroma
(package (package
(name "chroma") (name "chroma")
(version "1.18") (version "1.19")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://level7.org.uk/chroma/download/chroma-" (uri (string-append "http://level7.org.uk/chroma/download/chroma-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"12bjisf5nlqinw8n4r223vld52p0p2mw3fca92vi175c46bycbzn")))) "19ybvv0dkql913xpgjgxyyy50s72vajc7hm83zsvy2lsq8lhg76q"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no tests included `(#:tests? #f)) ; no tests included
#:configure-flags '("CFLAGS=-fgnu89-inline"))) ; fix inlines
(inputs (inputs
`(("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer sdl-ttf))) `(("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer sdl-ttf)))
("freetype" ,freetype) ("freetype" ,freetype)

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -56,97 +57,37 @@
(patches (search-patches "genimage-signedness.patch")))) (patches (search-patches "genimage-signedness.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:modules
((ice-9 match)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'guixify (add-after 'unpack 'guixify
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Note to maintainers: Check ".def =" lines in source. (map (match-lambda
(substitute* "config.c" ((input directory regexp)
(("\\.def = \"cpio\"") (substitute* "config.c"
(string-append ".def = \"" (((format #f "\\.def = \"(~a)\"" regexp) _ command)
(assoc-ref inputs "cpio") (format #f ".def = \"~a/~a/~a\""
"/bin/cpio\"")) (assoc-ref inputs input) directory command)))))
(("\\.def = \"dd\"") '(("cpio" "bin" "cpio")
(string-append ".def = \"" ("coreutils" "bin" "dd")
(assoc-ref inputs "coreutils") ("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs")
"/bin/dd\"")) ("genext2fs" "bin" "genext2fs")
(("\\.def = \"debugfs\"") ("cdrkit-libre" "bin" "genisoimage")
(string-append ".def = \"" ("mtools" "bin" "mcopy|mmd")
(assoc-ref inputs "e2fsprogs") ;; mkcramfs is obsolete.
"/sbin/debugfs\"")) ("dosfstools" "sbin" "mkdosfs")
(("\\.def = \"e2fsck\"") ("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize")
(string-append ".def = \"" ("squashfs-tools" "bin" "mksquashfs")
(assoc-ref inputs "e2fsprogs") ("qemu" "bin" "qemu-img")
"/sbin/e2fsck\"")) ("tar" "bin" "tar")
(("\\.def = \"genext2fs\"") ("u-boot-tools" "bin" "mkimage")))
(string-append ".def = \""
(assoc-ref inputs "genext2fs")
"/bin/genext2fs\""))
(("\\.def = \"genisoimage\"")
(string-append ".def = \""
(assoc-ref inputs "cdrkit-libre")
"/bin/genisoimage\""))
(("\\.def = \"mcopy\"")
(string-append ".def = \""
(assoc-ref inputs "mtools")
"/bin/mcopy\""))
(("\\.def = \"mmd\"")
(string-append ".def = \""
(assoc-ref inputs "mtools")
"/bin/mmd\""))
;;; Note: mkcramfs is obsolete.
(("\\.def = \"mkdosfs\"")
(string-append ".def = \""
(assoc-ref inputs "dosfstools")
"/sbin/mkfs.fat\""))
(("\\.def = \"mke2fs\"")
(string-append ".def = \""
(assoc-ref inputs "e2fsprogs")
"/sbin/mke2fs\""))
(("\\.def = \"mkfs\\.jffs2\"")
(string-append ".def = \""
(assoc-ref inputs "mtd-utils")
"/sbin/mkfs.jffs2\""))
(("\\.def = \"mkfs\\.ubifs\"")
(string-append ".def = \""
(assoc-ref inputs "mtd-utils")
"/sbin/mkfs.ubifs\""))
(("\\.def = \"mksquashfs\"")
(string-append ".def = \""
(assoc-ref inputs "squashfs-tools")
"/bin/mksquashfs\""))
(("\\.def = \"qemu-img\"")
(string-append ".def = \""
(assoc-ref inputs "qemu")
"/bin/qemu-img\""))
(("\\.def = \"tar\"")
(string-append ".def = \""
(assoc-ref inputs "tar")
"/bin/tar\""))
(("\\.def = \"tune2fs\"")
(string-append ".def = \""
(assoc-ref inputs "e2fsprogs")
"/sbin/tune2fs\""))
(("\\.def = \"ubinize\"")
(string-append ".def = \""
(assoc-ref inputs "mtd-utils")
"/sbin/ubinize\""))
(("\\.def = \"mkimage\"")
(string-append ".def = \""
(assoc-ref inputs "u-boot-tools")
"/bin/mkimage\"")))
(substitute* "test/basic-images.test"
;; Work around bug in sharness.sh.
(("mkdosfs")
"mkfs.fat")
;; Work around bug in sharness.sh.
(("dd,mkfs\\.fat,mcopy")
"dd,mkfs_fat,mcopy")
;; Should be in the next upstream release.
(("qemu_img") "qemu-img"))
(substitute* "util.c" (substitute* "util.c"
(("\"/bin/sh\"") (("\"/bin/sh\"")
(string-append "\"" (assoc-ref inputs "bash") "/bin/sh\""))) (string-append "\"" (assoc-ref inputs "bash") "/bin/sh\"")))))
(add-before 'check 'fix-failing-tests
(lambda _
;; We don't have /etc/passwd so uid 0 is not known as "root". ;; We don't have /etc/passwd so uid 0 is not known as "root".
;; Thus patch it out. ;; Thus patch it out.
(substitute* '("test/ext2test.dump" (substitute* '("test/ext2test.dump"
@ -154,16 +95,14 @@
"test/ext4test.dump" "test/ext4test.dump"
"test/ext2test-percent.dump" "test/ext2test-percent.dump"
"test/mke2fs.dump") "test/mke2fs.dump")
(("root") "unknown")) (("root") "unknown"))))
#t))
(add-before 'check 'setenv-check (add-before 'check 'setenv-check
(lambda _ (lambda _
;; Our container doesn't provide access to /etc/mtab ;; Our container doesn't provide access to /etc/mtab
(setenv "EXT2FS_NO_MTAB_OK" "1") (setenv "EXT2FS_NO_MTAB_OK" "1")
;; Make test reproducible ;; Make test reproducible
(setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U") (setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U")
(setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs") (setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs")))
#t))
(replace 'check (replace 'check
(lambda _ (lambda _
(invoke "make" "TEST_LOG_COMPILER=" "check")))))) (invoke "make" "TEST_LOG_COMPILER=" "check"))))))

View file

@ -268,7 +268,7 @@ provided, as well as a framework to add new color models and data types.")
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("maxflow" ,maxflow) ("maxflow" ,maxflow)
("openexr" ,openexr) ("openexr" ,openexr-2)
("pango" ,pango) ("pango" ,pango)
("poppler" ,poppler) ("poppler" ,poppler)
("sdl2" ,sdl2))) ("sdl2" ,sdl2)))
@ -355,7 +355,7 @@ buffers.")
("libmng" ,libmng) ; optional, MNG support ("libmng" ,libmng) ; optional, MNG support
("librsvg" ,librsvg) ; optional, SVG support ("librsvg" ,librsvg) ; optional, SVG support
("libxcursor" ,libxcursor) ; optional, Mouse Cursor support ("libxcursor" ,libxcursor) ; optional, Mouse Cursor support
("openexr" ,openexr) ; optional, EXR support ("openexr" ,openexr-2) ; optional, EXR support
("openjpeg" ,openjpeg) ; optional, JPEG 2000 support ("openjpeg" ,openjpeg) ; optional, JPEG 2000 support
("poppler" ,poppler) ; optional, PDF support ("poppler" ,poppler) ; optional, PDF support
("poppler-data" ,poppler-data) ; optional, PDF support ("poppler-data" ,poppler-data) ; optional, PDF support

View file

@ -4588,8 +4588,7 @@ and RDP protocols.")
;; much longer than the default of 30 seconds. ;; much longer than the default of 30 seconds.
(substitute* "tests/meson.build" (substitute* "tests/meson.build"
(("test\\(unit_test\\[0\\], exe" all) (("test\\(unit_test\\[0\\], exe" all)
(string-append all ", timeout : 90"))) (string-append all ", timeout: 300"))))))))
#t)))))
(home-page "https://developer.gnome.org/dconf/") (home-page "https://developer.gnome.org/dconf/")
(synopsis "Low-level GNOME configuration system") (synopsis "Low-level GNOME configuration system")
(description "Dconf is a low-level configuration system. Its main purpose (description "Dconf is a low-level configuration system. Its main purpose
@ -12251,7 +12250,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(define-public komikku (define-public komikku
(package (package
(name "komikku") (name "komikku")
(version "0.35.1") (version "0.35.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -12261,7 +12260,7 @@ integrated profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0975c55lmiwaqm0wj0ci91a90syjan3i99akrp0hl9m7r73jnfh9")))) "11iq2mc8k7ny70vb0iqfjhj1hii0wvr4cv2p6b5rnjqdp6hc63n9"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:glib-or-gtk? #t `(#:glib-or-gtk? #t

File diff suppressed because it is too large Load diff

View file

@ -26,6 +26,7 @@
;;; Copyright © 2021 Antoine Côté <antoine.cote@posteo.net> ;;; Copyright © 2021 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2021 Andy Tai <atai@atai.org> ;;; Copyright © 2021 Andy Tai <atai@atai.org>
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -573,7 +574,7 @@ typically encountered in feature film production.")
("libxrender" ,libxrender) ("libxrender" ,libxrender)
("opencolorio" ,opencolorio) ("opencolorio" ,opencolorio)
("openimageio" ,openimageio) ("openimageio" ,openimageio)
("openexr" ,openexr) ("openexr" ,openexr-2)
("opensubdiv" ,opensubdiv) ("opensubdiv" ,opensubdiv)
("ilmbase" ,ilmbase) ("ilmbase" ,ilmbase)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
@ -672,7 +673,7 @@ application can be customized via its API for Python scripting.")
("libx11" ,libx11) ("libx11" ,libx11)
("opencolorio" ,opencolorio) ("opencolorio" ,opencolorio)
("openimageio" ,openimageio) ("openimageio" ,openimageio)
("openexr" ,openexr) ("openexr" ,openexr-2)
("ilmbase" ,ilmbase) ("ilmbase" ,ilmbase)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
@ -800,6 +801,28 @@ many more.")
;; permissive licenses. ;; permissive licenses.
(license license:gpl3+))) (license license:gpl3+)))
(define-public imath
(package
(name "imath")
(version "3.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AcademySoftwareFoundation/Imath")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1nyld18mf220ghm1vidnfnn0rdns9z5i4l9s66xgd0kfdgarb31f"))))
(build-system cmake-build-system)
(home-page "https://github.com/AcademySoftwareFoundation/Imath")
(synopsis "Library of math operations for computer graphics")
(description
"Imath is a C++ representation of 2D and 3D vectors and matrices and other
mathematical objects, functions, and data types common in computer graphics
applications, including the \"half\" 16-bit floating-point type.")
(license license:bsd-3)))
(define-public ilmbase (define-public ilmbase
(package (package
(name "ilmbase") (name "ilmbase")
@ -1087,19 +1110,49 @@ graphics.")
(license license:expat))) (license license:expat)))
(define-public openexr (define-public openexr
(package
(name "openexr")
(version "3.1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AcademySoftwareFoundation/openexr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0vyclrrikphwkkpyjg8kzh3qzflzk3d6xsidgqllgfdgllr9wmgv"))))
(build-system cmake-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
;; /var/tmp does not exist in the Guix build environment
(add-after 'unpack 'patch-test-directory
(lambda _
(substitute* '("src/test/OpenEXRUtilTest/tmpDir.h"
"src/test/OpenEXRFuzzTest/tmpDir.h"
"src/test/OpenEXRTest/tmpDir.h"
"src/test/OpenEXRCoreTest/main.cpp")
(("/var/tmp") "/tmp")))))))
(inputs
`(("imath" ,imath)
("zlib" ,zlib)))
(home-page "https://www.openexr.com/")
(synopsis "High-dynamic-range file format library")
(description
"OpenEXR provides the specification and reference implementation of the
EXR file format. The purpose of EXR format is to accurately and efficiently
represent high-dynamic-range scene-linear image data and associated metadata,
with strong support for multi-part, multi-channel use cases.")
(license license:bsd-3)))
(define-public openexr-2
(package (package
(name "openexr") (name "openexr")
(version (package-version ilmbase)) (version (package-version ilmbase))
(source (origin (source (origin
(inherit (package-source ilmbase)) (inherit (package-source ilmbase))
(file-name (git-file-name "openexr" version)) (file-name (git-file-name "openexr" version))))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* (find-files "OpenEXR" "tmpDir\\.h")
(("\"/var/tmp/\"")
"\"/tmp/\""))
#t))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -1108,6 +1161,12 @@ graphics.")
(lambda _ (lambda _
(chdir "OpenEXR") (chdir "OpenEXR")
#t)) #t))
(add-after 'change-directory 'patch-test-directory
(lambda _
(substitute* '("IlmImfFuzzTest/tmpDir.h"
"IlmImfTest/tmpDir.h"
"IlmImfUtilTest/tmpDir.h")
(("/var/tmp") "/tmp"))))
(add-after 'change-directory 'increase-test-timeout (add-after 'change-directory 'increase-test-timeout
(lambda _ (lambda _
;; On armhf-linux, we need to override the CTest default ;; On armhf-linux, we need to override the CTest default
@ -1133,13 +1192,10 @@ graphics.")
(propagated-inputs (propagated-inputs
`(("ilmbase" ,ilmbase) ;used in public headers `(("ilmbase" ,ilmbase) ;used in public headers
("zlib" ,zlib))) ;OpenEXR.pc reads "-lz" ("zlib" ,zlib))) ;OpenEXR.pc reads "-lz"
(home-page "https://www.openexr.com/") (home-page (package-home-page openexr))
(synopsis "High-dynamic range file format library") (synopsis (package-synopsis openexr))
(description (description (package-description openexr))
"OpenEXR is a high dynamic-range (HDR) image file format developed for (license (package-license openexr))))
use in computer imaging applications. The IlmImf C++ libraries support
storage of the \"EXR\" file format for storing 16-bit floating-point images.")
(license license:bsd-3)))
(define-public openimageio (define-public openimageio
(package (package
@ -1171,7 +1227,7 @@ storage of the \"EXR\" file format for storing 16-bit floating-point images.")
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("giflib" ,giflib) ("giflib" ,giflib)
("openexr" ,openexr) ("openexr" ,openexr-2)
("ilmbase" ,ilmbase) ("ilmbase" ,ilmbase)
("pugixml" ,pugixml) ("pugixml" ,pugixml)
("python" ,python-wrapper) ("python" ,python-wrapper)
@ -1259,6 +1315,56 @@ virtual reality, scientific visualization and modeling.")
`(("libjpeg" ,libjpeg-turbo) `(("libjpeg" ,libjpeg-turbo)
,@(package-inputs openscenegraph))))) ,@(package-inputs openscenegraph)))))
(define-public gr-framework
(package
(name "gr-framework")
(version "0.58.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sciapp/gr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0q1rz4iyxbh0dc22y4w28ry3hr0yypdwdm6pw2zlwgjya7wkbvsw"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "3rdparty")
#t))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no test target
(inputs
`(("bzip2" ,bzip2)
("cairo" ,cairo)
("fontconfig" ,fontconfig)
("ffmpeg" ,ffmpeg)
("freetype" ,freetype)
("ghostscript" ,ghostscript)
("glfw" ,glfw)
("libjpeg-turbo" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("libx11" ,libx11)
("libxft" ,libxft)
("libxt" ,libxt)
("pixman" ,pixman)
("qtbase" ,qtbase-5)
("qhull" ,qhull)
("zlib" ,zlib)))
(home-page "https://gr-framework.org/")
(synopsis "Graphics library for visualisation applications")
(description "GR is a universal framework for cross-platform visualization
applications. It offers developers a compact, portable and consistent graphics
library for their programs. Applications range from publication quality 2D
graphs to the representation of complex 3D scenes. GR is essentially based on
an implementation of a @acronym{GKS, Graphical Kernel System}. As a
self-contained system it can quickly and easily be integrated into existing
applications (i.e. using the @code{ctypes} mechanism in Python or @code{ccall}
in Julia).")
(license license:expat)))
(define-public openmw-openscenegraph (define-public openmw-openscenegraph
;; OpenMW prefers its own fork of openscenegraph: ;; OpenMW prefers its own fork of openscenegraph:
@ -1324,7 +1430,7 @@ virtual reality, scientific visualization and modeling.")
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("openexr" ,openexr) ("openexr" ,openexr-2)
("sdl" ,sdl) ("sdl" ,sdl)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
@ -1445,7 +1551,7 @@ and is connected to the programming logic using data bindings and commands.")
(arguments '(#:tests? #f)) ;no 'test' target (arguments '(#:tests? #f)) ;no 'test' target
;; Headers include OpenEXR and IlmBase headers. ;; Headers include OpenEXR and IlmBase headers.
(propagated-inputs `(("openexr" ,openexr))) (propagated-inputs `(("openexr" ,openexr-2)))
(home-page "http://ampasctl.sourceforge.net") (home-page "http://ampasctl.sourceforge.net")
(synopsis "Color Transformation Language") (synopsis "Color Transformation Language")

View file

@ -773,7 +773,7 @@ model to base your own plug-in on, here it is.")
("mesa" ,mesa) ("mesa" ,mesa)
("neon" ,neon) ("neon" ,neon)
("openal" ,openal) ("openal" ,openal)
("openexr" ,openexr) ("openexr" ,openexr-2)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("openssl" ,openssl) ("openssl" ,openssl)
("opus" ,opus) ("opus" ,opus)

View file

@ -7,6 +7,7 @@
;;; Copyright © 2021 Denis Carikli <GNUtoo@cyberdimension.org> ;;; Copyright © 2021 Denis Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name> ;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -59,6 +60,7 @@
#:use-module (gnu packages xorg) #:use-module (gnu packages xorg)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
@ -568,6 +570,32 @@ MSR addresses differ (greatly) between processors, and any such modification can
be dangerous and may void your CPU or system board's warranty.") be dangerous and may void your CPU or system board's warranty.")
(license license:gpl2))) ; cpuid.c is gpl2, {rd,wr}msr.c are gpl2+ (license license:gpl2))) ; cpuid.c is gpl2, {rd,wr}msr.c are gpl2+
(define-public openhmd
(package
(name "openhmd")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OpenHMD/OpenHMD")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1hkpdl4zgycag5k8njvqpx01apxmm8m8pvhlsxgxpqiqy9a38ccg"))))
(build-system meson-build-system)
(arguments
`(#:tests? #f)) ; no test target although there is a test folder
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("hidapi" ,hidapi)))
(home-page "http://www.openhmd.net/")
(synopsis "API and drivers for immersive technology")
(description "OpenHMD aims to provide an API and drivers for immersive
technology, such as head mounted displays with built in head tracking.")
(license license:boost1.0)))
(define-public wavemon (define-public wavemon
(package (package
(name "wavemon") (name "wavemon")

View file

@ -18,6 +18,7 @@
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -57,6 +58,7 @@
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages geo) #:use-module (gnu packages geo)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages gimp)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
@ -161,7 +163,7 @@ licences similar to the Modified BSD licence."))))
("maxflow" ,maxflow) ("maxflow" ,maxflow)
("niftilib" ,niftilib) ("niftilib" ,niftilib)
("nlopt" ,nlopt) ("nlopt" ,nlopt)
("openexr" ,openexr) ("openexr" ,openexr-2)
("python-lxml" ,python2-lxml) ("python-lxml" ,python2-lxml)
("vtk" ,vtk))) ("vtk" ,vtk)))
(native-inputs (native-inputs
@ -231,7 +233,7 @@ of external libraries that provide additional functionality.")
;; ocioconvert fails: error: conflicting declaration ?typedef void ;; ocioconvert fails: error: conflicting declaration ?typedef void
;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*) ;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*)
`(("lcms" ,lcms) `(("lcms" ,lcms)
("openexr" ,openexr) ("openexr" ,openexr-2)
("tinyxml" ,tinyxml))) ("tinyxml" ,tinyxml)))
(home-page "https://opencolorio.org") (home-page "https://opencolorio.org")
(synopsis "Color management for visual effects and animation") (synopsis "Color management for visual effects and animation")
@ -635,7 +637,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("zlib" ,zlib) ("zlib" ,zlib)
("gtkglext" ,gtkglext) ("gtkglext" ,gtkglext)
("openexr" ,openexr) ("openexr" ,openexr-2)
("ilmbase" ,ilmbase) ("ilmbase" ,ilmbase)
("gtk+" ,gtk+-2) ("gtk+" ,gtk+-2)
("python-numpy" ,python-numpy) ("python-numpy" ,python-numpy)
@ -701,7 +703,7 @@ vision algorithms. It can be used to do things like:
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("matio" ,matio) ("matio" ,matio)
("niftilib" ,niftilib) ("niftilib" ,niftilib)
("openexr" ,openexr) ("openexr" ,openexr-2)
("orc" ,orc) ("orc" ,orc)
("pango" ,pango) ("pango" ,pango)
("poppler" ,poppler))) ("poppler" ,poppler)))
@ -753,7 +755,7 @@ due to its architecture which automatically parallelises the image workflows.")
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("libx11" ,libx11) ("libx11" ,libx11)
;;("opencv" ,opencv) ;OpenCV is currently broken in the CI ;;("opencv" ,opencv) ;OpenCV is currently broken in the CI
("openexr" ,openexr) ("openexr" ,openexr-2)
("zlib" ,zlib))) ("zlib" ,zlib)))
(home-page "https://gmic.eu/") (home-page "https://gmic.eu/")
(synopsis "Full-featured framework for digital image processing") (synopsis "Full-featured framework for digital image processing")
@ -801,6 +803,25 @@ including 2D color images.")
(assoc-ref %build-inputs "gmic") "/lib"))))) (assoc-ref %build-inputs "gmic") "/lib")))))
(synopsis "Krita plugin for the G'MIC image processing framework"))) (synopsis "Krita plugin for the G'MIC image processing framework")))
(define-public gmic-qt-gimp
(package
(inherit gmic-qt)
(name "gmic-qt-gimp")
(inputs
;; GIMP and its dependencies.
`(("gimp" ,gimp)
("gdk-pixbuf" ,gdk-pixbuf)
("cairo" ,cairo)
("gegl" ,gegl)
,@(package-inputs gmic-qt)))
(arguments
(substitute-keyword-arguments (package-arguments gmic-qt)
((#:configure-flags flags)
'(list "-DGMIC_QT_HOST=gimp" "-DENABLE_DYNAMIC_LINKING=ON"
(string-append "-DGMIC_LIB_PATH="
(assoc-ref %build-inputs "gmic") "/lib")))))
(synopsis "GIMP plugin for the G'MIC image processing framework")))
(define-public nip2 (define-public nip2
(package (package
(name "nip2") (name "nip2")
@ -840,7 +861,7 @@ including 2D color images.")
("matio" ,matio) ("matio" ,matio)
("lcms" ,lcms) ("lcms" ,lcms)
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("openexr" ,openexr) ("openexr" ,openexr-2)
("poppler" ,poppler) ("poppler" ,poppler)
("gsl" ,gsl))) ("gsl" ,gsl)))
(native-inputs (native-inputs

View file

@ -546,7 +546,7 @@ It supports JPEG, PNG and GIF formats.")
("libpng" ,libpng) ("libpng" ,libpng)
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("lcms" ,lcms) ("lcms" ,lcms)
("openexr" ,openexr) ("openexr" ,openexr-2)
("fftw" ,fftwf) ("fftw" ,fftwf)
("gsl" ,gsl) ("gsl" ,gsl)
("libtiff" ,libtiff))) ("libtiff" ,libtiff)))

View file

@ -11,7 +11,7 @@
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016, 2017, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Nikita <nikita@n0.is> ;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017,2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017,2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -1168,7 +1168,7 @@ supplies a generic doubly-linked list and some string functions.")
("libraw" ,libraw) ("libraw" ,libraw)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("libwebp" ,libwebp) ("libwebp" ,libwebp)
("openexr" ,openexr) ("openexr" ,openexr-2)
("openjpeg" ,openjpeg) ("openjpeg" ,openjpeg)
("zlib" ,zlib))) ("zlib" ,zlib)))
(synopsis "Library for handling popular graphics image formats") (synopsis "Library for handling popular graphics image formats")
@ -1209,7 +1209,7 @@ graphics image formats like PNG, BMP, JPEG, TIFF and others.")
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("openexr" ,openexr) ("openexr" ,openexr-2)
("python" ,python-wrapper) ("python" ,python-wrapper)
("python-numpy" ,python-numpy) ("python-numpy" ,python-numpy)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -1362,18 +1362,25 @@ channels.")
(define-public exiv2 (define-public exiv2
(package (package
(name "exiv2") (name "exiv2")
(version "0.27.4") (version "0.27.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://www.exiv2.org/builds/exiv2-" version (uri (string-append "https://www.exiv2.org/builds/exiv2-" version
"-Source.tar.gz")) "-Source.tar.gz"))
(sha256 (sha256
(base32 "0klhxkxvkzzzcqpzv8jb56pykq0gyhb6rk9vc2kzjahngjx6sdl4")))) (base32 "1qm6bvj28l42km009nc60gffn1qhngc0m2wjlhf90si3mcc8d99m"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
'(#:test-target "tests" '(#:test-target "tests"
#:configure-flags (list "-DEXIV2_BUILD_UNIT_TESTS=ON"))) #:configure-flags (list "-DEXIV2_BUILD_UNIT_TESTS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'install 'delete-static-libraries
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
(for-each delete-file (find-files lib "\\.a$"))))))))
(propagated-inputs (propagated-inputs
`(("expat" ,expat) `(("expat" ,expat)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -1421,7 +1428,7 @@ and XMP metadata of images in various formats.")
("libmng" ,libmng) ("libmng" ,libmng)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("openexr" ,openexr) ("openexr" ,openexr-2)
("zlib" ,zlib))) ("zlib" ,zlib)))
(synopsis "Library for manipulating many image formats") (synopsis "Library for manipulating many image formats")
(description "Developer's Image Library (DevIL) is a library to develop (description "Developer's Image Library (DevIL) is a library to develop
@ -1433,7 +1440,7 @@ convert, manipulate, filter and display a wide variety of image formats.")
(define-public jasper (define-public jasper
(package (package
(name "jasper") (name "jasper")
(version "2.0.32") (version "2.0.33")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1442,7 +1449,7 @@ convert, manipulate, filter and display a wide variety of image formats.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0hhggh2jxp1wn7nwzvbx2z1vi1ih8wmz4av17bljyn0c3mxjs22k")))) "0p3fj89gkhd2ys5ci75cwb6p7rvb2pf52jd8c9d4g76qp846njnx"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(inputs (inputs
`(("libjpeg" ,libjpeg-turbo))) `(("libjpeg" ,libjpeg-turbo)))
@ -2364,7 +2371,7 @@ Wacom-style graphics tablets.")
(define-public phockup (define-public phockup
(package (package
(name "phockup") (name "phockup")
(version "1.5.9") (version "1.7.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2374,7 +2381,7 @@ Wacom-style graphics tablets.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"13ajj0xch7yfqaaxbw0awxs0fz17n1rxir4gqh2wcgxjysqk1j2y")))) "0nqd89g4ppwc96gxyh9npain7ipnzj66p6n3irsvhrpi4k54h388"))))
(build-system copy-build-system) (build-system copy-build-system)
(arguments (arguments
`(#:install-plan '(("src" "share/phockup/") `(#:install-plan '(("src" "share/phockup/")
@ -2394,11 +2401,18 @@ Wacom-style graphics tablets.")
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(mkdir (string-append out "/bin")) (mkdir (string-append out "/bin"))
(symlink (string-append out "/share/phockup/phockup.py") (symlink (string-append out "/share/phockup/phockup.py")
(string-append out "/bin/phockup"))) (string-append out "/bin/phockup")))))
#t))))) (add-after 'install-bin 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/phockup")
`("GUIX_PYTHONPATH" prefix
,(search-path-as-string->list
(getenv "GUIX_PYTHONPATH"))))))))))
(inputs (inputs
`(("perl-image-exiftool" ,perl-image-exiftool) `(("perl-image-exiftool" ,perl-image-exiftool)
("python" ,python))) ("python" ,python)
("python-tqdm" ,python-tqdm)))
(native-inputs (native-inputs
`(("python-pytest" ,python-pytest) `(("python-pytest" ,python-pytest)
("python-pytest-mock" ,python-pytest-mock))) ("python-pytest-mock" ,python-pytest-mock)))

View file

@ -553,7 +553,7 @@ external server.")
(define-public mujs (define-public mujs
(package (package
(name "mujs") (name "mujs")
(version "1.1.1") (version "1.1.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -562,7 +562,7 @@ external server.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0ivqz06fq8v36p2gkjh64vgv0gm7nghds0n42vrv7vm46phdffvb")))) (base32 "0qizld89qw24i9v6i2j9cxjyqn425xbiqfp1b7qfrkyxqkn0byws"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases

View file

@ -36,6 +36,7 @@
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages imagemagick) #:use-module (gnu packages imagemagick)
@ -522,6 +523,55 @@ rendering library.")
(description "This package provides a wrapper for the glib library.") (description "This package provides a wrapper for the glib library.")
(license license:expat))) (license license:expat)))
(define-public julia-gr-jll
(package
(name "julia-gr-jll")
(version "0.58.1+0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaBinaryWrappers/GR_jll.jl")
(commit (string-append "GR-v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16m22n0wh86v3lh0im2pc9bg381djbmqji5hjx42j6aaz634gqiq"))))
(build-system julia-build-system)
(arguments
'(#:tests? #f ; no runtests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'override-binary-path
(lambda* (#:key inputs #:allow-other-keys)
(map
(lambda (wrapper)
(substitute* wrapper
(("generate_wrapper_header.*")
(string-append
"generate_wrapper_header(\"GR\", \""
(assoc-ref inputs "gr-framework") "\")\n"))))
;; There's a Julia file for each platform, override them all
(find-files "src/wrappers/" "\\.jl$")))))))
(inputs
`(("gr-framework" ,gr-framework)))
(propagated-inputs
`(("julia-jllwrappers" ,julia-jllwrappers)
("julia-bzip2-jll" ,julia-bzip2-jll)
("julia-cairo-jll" ,julia-cairo-jll)
("julia-ffmpeg-jll" ,julia-ffmpeg-jll)
("julia-fontconfig-jll" ,julia-fontconfig-jll)
("julia-glfw-jll" ,julia-glfw-jll)
("julia-jpegturbo-jll" ,julia-jpegturbo-jll)
("julia-libpng-jll" ,julia-libpng-jll)
("julia-libtiff-jll" ,julia-libtiff-jll)
("julia-pixman-jll" ,julia-pixman-jll)
("julia-qt5base-jll" ,julia-qt5base-jll)
("julia-zlib-jll" ,julia-zlib-jll)))
(home-page "https://github.com/JuliaBinaryWrappers/GR_jll.jl")
(synopsis "GR framework library wrappers")
(description "This package provides a wrapper for the GR framework.")
(license license:expat)))
(define-public julia-gumbo-jll (define-public julia-gumbo-jll
(package (package
(name "julia-gumbo-jll") (name "julia-gumbo-jll")

View file

@ -561,6 +561,38 @@ can be a test-only dependency, allowing it to have potentially heavy
dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.") dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
(license license:expat))) (license license:expat)))
(define-public julia-codeczlib
(package
(name "julia-codeczlib")
(version "0.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaIO/CodecZlib.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xm603nylkwk4bzx66zv1g3syzrvn3jh9spdx7kvcvgszzyrrgh4"))))
(build-system julia-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'reset-gzip-timestamps 'make-files-writable
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(for-each make-file-writable
(find-files out "\\.gz$"))
#t))))))
(propagated-inputs
`(("julia-zlib-jll" ,julia-zlib-jll)
("julia-transcodingstreams" ,julia-transcodingstreams)))
(home-page "https://github.com/JuliaIO/CodecZlib.jl")
(synopsis "Zlib codecs for @code{TranscodingStreams.jl}")
(description "This package provides zlib codecs for
@code{TranscodingStreams.jl}.")
(license license:expat)))
(define-public julia-colors (define-public julia-colors
(package (package
(name "julia-colors") (name "julia-colors")
@ -624,11 +656,11 @@ color scales for graphics.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0n7h70caqv7yd0khjhn90iax62r73mcif8qzkwj5b4q46li1r8ih")))) (base32 "0n7h70caqv7yd0khjhn90iax62r73mcif8qzkwj5b4q46li1r8ih"))))
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(build-system julia-build-system) (build-system julia-build-system)
(propagated-inputs (propagated-inputs
`(("julia-fixedpointnumbers" ,julia-fixedpointnumbers))) `(("julia-fixedpointnumbers" ,julia-fixedpointnumbers)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaGraphics/ColorTypes.jl") (home-page "https://github.com/JuliaGraphics/ColorTypes.jl")
(synopsis "Basic color types and constructor") (synopsis "Basic color types and constructor")
(description "This minimalistic package serves as the foundation for (description "This minimalistic package serves as the foundation for
@ -806,14 +838,12 @@ for construction of objects.")
(sha256 (sha256
(base32 "15zbkn32v7xlz7559s0r5a0vkwmjwsswxaqpzijly4lky4jnp33d")))) (base32 "15zbkn32v7xlz7559s0r5a0vkwmjwsswxaqpzijly4lky4jnp33d"))))
(build-system julia-build-system) (build-system julia-build-system)
(arguments
`(#:tests? #f)) ; Documenter.jl not packaged yet.
(propagated-inputs (propagated-inputs
`(("julia-staticarrays" ,julia-staticarrays))) `(("julia-staticarrays" ,julia-staticarrays)))
;(native-inputs (native-inputs
; `(("julia-documenter" ,julia-documenter) `(("julia-documenter" ,julia-documenter)
; ("julia-forwarddiff" ,julia-forwarddiff) ("julia-forwarddiff" ,julia-forwarddiff)
; ("julia-unitful" ,julia-unitful))) ("julia-unitful" ,julia-unitful)))
(home-page "https://github.com/JuliaGeometry/CoordinateTransformations.jl") (home-page "https://github.com/JuliaGeometry/CoordinateTransformations.jl")
(synopsis "Coordinate transformations in Julia") (synopsis "Coordinate transformations in Julia")
(description "@code{CoordinateTransformations} is a Julia package to manage (description "@code{CoordinateTransformations} is a Julia package to manage
@ -1745,6 +1775,31 @@ differentiation (AD).")
arbitrary functions.") arbitrary functions.")
(license license:expat))) (license license:expat)))
(define-public julia-functors
(package
(name "julia-functors")
(version "0.2.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FluxML/Functors.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03ry1wn1y2jssq65l29bi6q4ki041aa6gl1nd2w6cgl00k2mrxf3"))))
(build-system julia-build-system)
(home-page "https://fluxml.ai/Functors.jl/stable/")
(synopsis "Design pattern for structures as in machine learning")
(description "This package provides tools to express a design pattern for
dealing with large/ nested structures, as in machine learning and
optimisation. For large machine learning models it can be cumbersome or
inefficient to work with parameters as one big, flat vector, and structs help
in managing complexity; but it is also desirable to easily operate over all
parameters at once, e.g. for changing precision or applying an optimiser
update step.")
(license license:expat)))
(define-public julia-fuzzycompletions (define-public julia-fuzzycompletions
(package (package
(name "julia-fuzzycompletions") (name "julia-fuzzycompletions")
@ -1840,6 +1895,73 @@ analysis of dense matrices. The diagonal eigen-decomposition of normal
matrices the Schur form is often more useful.") matrices the Schur form is often more useful.")
(license license:expat))) (license license:expat)))
(define-public julia-geometrybasics
(package
(name "julia-geometrybasics")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaGeometry/GeometryBasics.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "057j3hjpli3q5b98cqkpi4p10x2k9pyksrz62hjmv1kb5qzdvhsj"))))
(build-system julia-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-earcut
(lambda _
(substitute* '("Project.toml"
"src/GeometryBasics.jl")
((".*EarCut.*") ""))
#t))
(add-after 'unpack 'skip-incompatible-test
(lambda _
(substitute* "test/runtests.jl"
(("@testset.*MetaT and heterogeneous data.*" all)
(string-append all "return\n")))
#t)))))
(propagated-inputs
`(("julia-itertools" ,julia-itertools)
("julia-staticarrays" ,julia-staticarrays)
("julia-structarrays" ,julia-structarrays)
("julia-tables" ,julia-tables)))
(native-inputs
`(("julia-offsetarrays" ,julia-offsetarrays)))
(home-page "https://github.com/JuliaGeometry/GeometryBasics.jl")
(synopsis "Basic Geometry Types")
(description "This package aims to offer a standard set of Geometry types,
which easily work with metadata, query frameworks on geometries and different
memory layouts. The aim is to create a solid basis for Graphics/Plotting,
finite elements analysis, Geo applications, and general geometry manipulations
- while offering a Julian API, that still allows performant C-interop.")
(license license:expat)))
(define-public julia-gr
(package
(name "julia-gr")
(version "0.58.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jheinen/GR.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18zxa1w2wmrf44c5l10qbh99zjdp7h94gxlymh47cf5kj5fc4xmx"))))
(build-system julia-build-system)
(propagated-inputs
`(("julia-gr-jll" ,julia-gr-jll)))
(home-page "https://github.com/jheinen/GR.jl")
(synopsis "Plotting for Julia based on GR")
(description "This module provides a Julia interface to GR, a framework for
visualisation applications.")
(license license:expat)))
(define-public julia-graphics (define-public julia-graphics
(package (package
(name "julia-graphics") (name "julia-graphics")
@ -2326,6 +2448,39 @@ assigned its own index, which is used to retrieve the value from the
indexed images, sometimes called \"colormap images\" or \"paletted images.\"") indexed images, sometimes called \"colormap images\" or \"paletted images.\"")
(license license:expat))) (license license:expat)))
(define-public julia-infinity
(package
(name "julia-infinity")
(version "0.2.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cjdoris/Infinity.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1941lwvrdjnrynigzixxin3chpg1ba6xplvcwc89x0f6z658hwmm"))))
(build-system julia-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-timezones.jl
(lambda _
(substitute* "test/runtests.jl"
(("using TimeZones.*") "")
((".*infextendedtime.*") ""))
#t)))))
(propagated-inputs
`(("julia-requires" ,julia-requires)))
(native-inputs
`(("julia-compat" ,julia-compat)))
(home-page "https://docs.juliahub.com/Infinity/")
(synopsis "Representation of infinity in Julia")
(description "This package provides representations for infinity and
negative infinity in Julia.")
(license license:expat)))
(define-public julia-inifile (define-public julia-inifile
(package (package
(name "julia-inifile") (name "julia-inifile")
@ -2463,11 +2618,11 @@ as a string together with the return value.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "11334fcg2slpwcj0raxf457brhf7pxglgxc6cy8q58ggrpxqfqql")))) (base32 "11334fcg2slpwcj0raxf457brhf7pxglgxc6cy8q58ggrpxqfqql"))))
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(build-system julia-build-system) (build-system julia-build-system)
(propagated-inputs (propagated-inputs
`(("julia-macrotools" ,julia-macrotools))) `(("julia-macrotools" ,julia-macrotools)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/FluxML/IRTools.jl") (home-page "https://github.com/FluxML/IRTools.jl")
(synopsis "Simple and flexible IR format") (synopsis "Simple and flexible IR format")
(description "This package provides a simple and flexible IR format, (description "This package provides a simple and flexible IR format,
@ -2810,6 +2965,32 @@ expressions involving differing types of units that are then evaluated,
resolving them into absolute units.") resolving them into absolute units.")
(license license:expat))) (license license:expat)))
(define-public julia-media
(package
(name "julia-media")
(version "0.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JunoLab/Media.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05jq9j3vs8yfj2lwz3sh1vk5rha06xdcikp9s2q3dn316vryy6di"))))
(build-system julia-build-system)
;; Package without Project.toml
(arguments
'(#:julia-package-name "Media"))
(propagated-inputs
`(("julia-macrotools" ,julia-macrotools)))
(home-page "https://github.com/JunoLab/Media.jl")
(synopsis "Unified measure and coordinates types")
(description "This package provides a display system which enables the
user handle multiple input/output devices and decide what media types get
displayed where.")
(license license:expat)))
(define-public julia-missings (define-public julia-missings
(package (package
(name "julia-missings") (name "julia-missings")
@ -3125,10 +3306,10 @@ languages like Fortran.")
(sha256 (sha256
(base32 "0ran2vj6ahlzib0g77y7g0jhavy3k9s2mqq23ybpgp9z677wf26h")))) (base32 "0ran2vj6ahlzib0g77y7g0jhavy3k9s2mqq23ybpgp9z677wf26h"))))
(build-system julia-build-system) (build-system julia-build-system)
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(propagated-inputs (propagated-inputs
`(("julia-offsetarrays" ,julia-offsetarrays))) `(("julia-offsetarrays" ,julia-offsetarrays)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaArrays/PaddedViews.jl") (home-page "https://github.com/JuliaArrays/PaddedViews.jl")
(synopsis "Add virtual padding to the edges of an array") (synopsis "Add virtual padding to the edges of an array")
(description "@code{PaddedViews} provides a simple wrapper type, (description "@code{PaddedViews} provides a simple wrapper type,
@ -4125,8 +4306,7 @@ some performance improvements).")
(base32 "1fwiaxdpx1z9dli3jr8kyraych0jbdiny3qklynf0r13px25r6i7")))) (base32 "1fwiaxdpx1z9dli3jr8kyraych0jbdiny3qklynf0r13px25r6i7"))))
(build-system julia-build-system) (build-system julia-build-system)
(arguments (arguments
`(#:tests? #f ; Documenter.jl not packaged yet `(#:phases
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'skip-doctest (add-after 'unpack 'skip-doctest
(lambda _ (lambda _
@ -4135,9 +4315,9 @@ some performance improvements).")
#t))))) #t)))))
(propagated-inputs (propagated-inputs
`(("julia-offsetarrays" ,julia-offsetarrays))) `(("julia-offsetarrays" ,julia-offsetarrays)))
;(native-inputs (native-inputs
; `(("julia-aqua" ,julia-aqua) `(("julia-aqua" ,julia-aqua)
; ("julia-documenter" ,julia-documenter))) ("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaArrays/StackViews.jl") (home-page "https://github.com/JuliaArrays/StackViews.jl")
(synopsis "No more catcat") (synopsis "No more catcat")
(description "StackViews provides only one array type: @code{StackView}. (description "StackViews provides only one array type: @code{StackView}.
@ -4541,6 +4721,34 @@ package.")
automatic differentiation for its machine learning platform.") automatic differentiation for its machine learning platform.")
(license license:expat))) (license license:expat)))
(define-public julia-transcodingstreams
(package
(name "julia-transcodingstreams")
(version "0.9.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JuliaIO/TranscodingStreams.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1w3klii293caqiclfh28jggv7f53xclm9fr6xmw38brwrn1hjb48"))))
(build-system julia-build-system)
(arguments
`(#:tests? #f)) ; Circular dependency with various codecs.
(home-page "https://github.com/JuliaIO/TranscodingStreams.jl")
(synopsis "Fast I/O transcoding data streams")
(description "This package provides tools for transcoding data streams
which are:
@itemize
@item fast: small overhead and specialized methods
@item consistent: basic I/O operations work as expected
@item generic: support any I/O objects like files, buffers, pipes, etc.
@item extensible: easy definition for new codec to transcode data
@end itemize")
(license license:expat)))
(define-public julia-typedtables (define-public julia-typedtables
(package (package
(name "julia-typedtables") (name "julia-typedtables")

View file

@ -1814,7 +1814,7 @@ by applications to write metadata.")
("pkg-config" ,pkg-config))) ("pkg-config" ,pkg-config)))
(inputs (inputs
`(("karchive" ,karchive) ; for Krita and OpenRaster images `(("karchive" ,karchive) ; for Krita and OpenRaster images
("openexr" ,openexr) ; for OpenEXR high dynamic-range images ("openexr" ,openexr-2) ; for OpenEXR high dynamic-range images
("qtbase" ,qtbase-5))) ("qtbase" ,qtbase-5)))
(arguments (arguments
`(#:phases `(#:phases

View file

@ -522,7 +522,7 @@ illustrate project schedules.")
("libx11" ,libx11) ("libx11" ,libx11)
("libxcb" ,libxcb) ("libxcb" ,libxcb)
("libxi" ,libxi) ("libxi" ,libxi)
("openexr" ,openexr) ("openexr" ,openexr-2)
("perl" ,perl) ("perl" ,perl)
("poppler-qt5" ,poppler-qt5) ("poppler-qt5" ,poppler-qt5)
("qtbase" ,qtbase-5) ("qtbase" ,qtbase-5)

View file

@ -57,6 +57,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Josselin Poiret <josselin.poiret@protonmail.ch> ;;; Copyright © 2021 Josselin Poiret <josselin.poiret@protonmail.ch>
;;; Copyright © 2021 Olivier Dion <olivier.dion@polymtl.ca>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -351,17 +352,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major ;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream. ;; versions that are still supported upstream.
(define-public linux-libre-5.14-version "5.14.12") (define-public linux-libre-5.14-version "5.14.15")
(define-public linux-libre-5.14-gnu-revision "gnu") (define-public linux-libre-5.14-gnu-revision "gnu")
(define deblob-scripts-5.14 (define deblob-scripts-5.14
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.14-version linux-libre-5.14-version
linux-libre-5.14-gnu-revision linux-libre-5.14-gnu-revision
(base32 "00vv2a51cvw2nx8iazmiy9i4h3jj9gvvpwz9gxp2v1hcmrsxq935") (base32 "11zax57brk8bl75q68c71xsdlvslj48wpmrv8rh34sb8wym9n4mc")
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7"))) (base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
(define-public linux-libre-5.14-pristine-source (define-public linux-libre-5.14-pristine-source
(let ((version linux-libre-5.14-version) (let ((version linux-libre-5.14-version)
(hash (base32 "0dswxf1qk70lms5lph15i7nz3ybwiia58v8zzrmi71ajviwjc9wd"))) (hash (base32 "01m4qw1z7xn3ngsbm1bvcvikqpkjjr9n8585556wkmz9d469mwvl")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.14))) deblob-scripts-5.14)))
@ -369,92 +370,92 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support. ;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines: ;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html> ;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-5.10-version "5.10.73") (define-public linux-libre-5.10-version "5.10.76")
(define-public linux-libre-5.10-gnu-revision "gnu1") (define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10 (define deblob-scripts-5.10
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.10-version linux-libre-5.10-version
linux-libre-5.10-gnu-revision linux-libre-5.10-gnu-revision
(base32 "19d1pdsilq1ycnx1zw3vhf9mwdxbi5nmgzm0g1kj1lkkf1y4i1mv") (base32 "1swy3y851jnnmk3hc0khllpsifb98camlwyskpn1dyvjsgjljd8x")
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7"))) (base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
(define-public linux-libre-5.10-pristine-source (define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version) (let ((version linux-libre-5.10-version)
(hash (base32 "0xhf0g5pra27hnavpy0y3mn05m5hqn5rd3d6fx0a3vr35c1jicpd"))) (hash (base32 "140qkvs88b5zh6mxxzpf36z1r8bbvyh3yigripqjz1k236x0j2j8")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.10))) deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.153") (define-public linux-libre-5.4-version "5.4.156")
(define-public linux-libre-5.4-gnu-revision "gnu1") (define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4 (define deblob-scripts-5.4
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.4-version linux-libre-5.4-version
linux-libre-5.4-gnu-revision linux-libre-5.4-gnu-revision
(base32 "1cdxljvmivdwcy9v9fr5iv0x0d1884pf3876p9nzrly599lz2wnl") (base32 "1nlgk8ajb5wl3aa96h9a0pb9j5a5wmrbpk63varn557x1d00r7wj")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p"))) (base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.4-pristine-source (define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version) (let ((version linux-libre-5.4-version)
(hash (base32 "0jaz57sd51xqc7w8k3f43bfc5mdsh1413mdngqqsgr8isv4hg7vd"))) (hash (base32 "1zkpqfhrc5n0yiij3jzvzywgabva53c8668f1ly1pkrzcbj77zh6")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.4))) deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.211") (define-public linux-libre-4.19-version "4.19.214")
(define-public linux-libre-4.19-gnu-revision "gnu1") (define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19 (define deblob-scripts-4.19
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-4.19-version linux-libre-4.19-version
linux-libre-4.19-gnu-revision linux-libre-4.19-gnu-revision
(base32 "1hiaagdyfy6b0f9ivdy7zq0cd6akaj6v3c4nzikrgsk12vgc1a1q") (base32 "06pqv050bkii0hc2v7ymny5264w1bca8db0dp1pw9mfmjg865am5")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p"))) (base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.19-pristine-source (define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version) (let ((version linux-libre-4.19-version)
(hash (base32 "1m3y5gsf5s8bb4jxkri20dlxi8aiqabzaijj2h1svz4r19ca8j7v"))) (hash (base32 "0i08np4gxiks7chp6j328pdqb02apbba53mj4zvxb9v37qpxzqgz")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.19))) deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.250") (define-public linux-libre-4.14-version "4.14.253")
(define-public linux-libre-4.14-gnu-revision "gnu1") (define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14 (define deblob-scripts-4.14
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-4.14-version linux-libre-4.14-version
linux-libre-4.14-gnu-revision linux-libre-4.14-gnu-revision
(base32 "0cnax38650m9sxiwvc1xm5saymlsmx427j3jqpx34df2ah2rnrwf") (base32 "02rxvr0gmxb3zfsyyzdmzgfq04gkdkv1cc38md0xfl0mxzdzdfyk")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p"))) (base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.14-pristine-source (define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version) (let ((version linux-libre-4.14-version)
(hash (base32 "0zbf6gxm8iwf7cra310gfd0zyj8l9ckdahky9w6wb9wlznwkvd54"))) (hash (base32 "1mgl55c8fa2ry4qp0phkdkzjhwfnkbhvi266n348kyjyqnjl234f")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.14))) deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.286") (define-public linux-libre-4.9-version "4.9.288")
(define-public linux-libre-4.9-gnu-revision "gnu1") (define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9 (define deblob-scripts-4.9
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-4.9-version linux-libre-4.9-version
linux-libre-4.9-gnu-revision linux-libre-4.9-gnu-revision
(base32 "1n74ddrifnw06hx7ih2sk8jaiqlm1jyyhswyjpxiyhrrcvjcilch") (base32 "0nai5m4rbh37qaj1xf2qj7656l2gacfh0847q5d07y22b048fq5n")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p"))) (base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.9-pristine-source (define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version) (let ((version linux-libre-4.9-version)
(hash (base32 "0id62p43dmkl9ir278p0dsfg3q7m1d8rlxv0c9qi1pzalkygv8p2"))) (hash (base32 "0v5592v565bl924c23m1n7p5zddr0w7zn8m97pmikk6p7cyhjq9n")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.9))) deblob-scripts-4.9)))
(define-public linux-libre-4.4-version "4.4.288") (define-public linux-libre-4.4-version "4.4.290")
(define-public linux-libre-4.4-gnu-revision "gnu1") (define-public linux-libre-4.4-gnu-revision "gnu1")
(define deblob-scripts-4.4 (define deblob-scripts-4.4
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-4.4-version linux-libre-4.4-version
linux-libre-4.4-gnu-revision linux-libre-4.4-gnu-revision
(base32 "11397dgj6cdfv6anxrj7jwgvnqvwh5i0ci6c8mb85ry6h4fnfmq4") (base32 "1mmnv77432la5dkhpy1n8w59c0v6l08fyf2ggh294gyrx8nbci11")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p"))) (base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.4-pristine-source (define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version) (let ((version linux-libre-4.4-version)
(hash (base32 "028w3yzmzymy7l1nf3n1pfbg95hfi4ilphkyl00ddgj8sfm542c7"))) (hash (base32 "1dcx58nmzkcc5nz2b5b7mgw4w7y28v3s9wd8h78czdqfa0kxrl20")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.4))) deblob-scripts-4.4)))
@ -1226,7 +1227,7 @@ and should be used with caution, especially on untested models.")
(define-public corefreq (define-public corefreq
(package (package
(name "corefreq") (name "corefreq")
(version "1.86.7") (version "1.87.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1235,7 +1236,7 @@ and should be used with caution, especially on untested models.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1k8pyxcahc78kcc8q1h76dr91i1r33jciqhgkajkz3xa28qx8mhn")))) (base32 "01g1smhfzb02gmfjm8c7rchc79dan9jc9pv9c0f8f7fly2hy5zvs"))))
(build-system linux-module-build-system) (build-system linux-module-build-system)
(outputs (list "out" "linux-module")) (outputs (list "out" "linux-module"))
(arguments (arguments
@ -5820,7 +5821,7 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(define-public thinkfan (define-public thinkfan
(package (package
(name "thinkfan") (name "thinkfan")
(version "1.2.2") (version "1.3.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -5829,7 +5830,7 @@ feature, and a laptop with an accelerometer. It has no effect on SSDs.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "01l1pnj1cgy3dwgyys2s5iqzyv6kk47vlpy09qjafk8py21ijik3")))) (base32 "1whdhf3aw0g4xwbn1csy2wz6g1hw5nlw64r91nnxba9qn25nl9k4"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:modules ((guix build cmake-build-system) `(#:modules ((guix build cmake-build-system)
@ -8288,6 +8289,71 @@ enable and disable specific instrumentation points, and writes event records
to ring buffers shared with a consumer daemon.") to ring buffers shared with a consumer daemon.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public lttng-tools
(package
(name "lttng-tools")
(version "2.12.5")
(source (origin
(method url-fetch)
(uri (string-append "https://lttng.org/files/lttng-tools/"
"lttng-tools-" version ".tar.bz2"))
(sha256
(base32
"0bgk35423v6z17j1w80m7dcza7gigs1pwyq24sdmgqwg6j2d1zmc"))))
(build-system gnu-build-system)
(arguments
`(;; FIXME - Currently there's a segmentation fault by swig when enabling
;; Python's bindings. Thus, bindings are disable here. Replace
;; `disable` by `enable` in #:configure-flags when this is fixed.
#:configure-flags '("--disable-python-bindings")
;; FIXME - Tests are disabled for now because one test hangs
;; indefinetely. Also, parallel testing is not possible because of how
;; the lttng-daemon handles sessions. Thus, keep parallel testing
;; disabled even after tests are enabled!
#:tests? #f
#:parallel-tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'configure 'set-environment-variables
(lambda _
(setenv "HOME" "/tmp")
(setenv "LTTNG_HOME" "/tmp")))
;; We don't put (which "man") here because LTTng uses execlp.
(add-after 'unpack 'patch-default-man-path
(lambda _
(substitute* "src/common/defaults.h"
(("/usr/bin/man") "man")))))))
;; NOTE - Users have to install python-3 in their profile to use the
;; bindings. We don't put it in the inputs, because the rest of the tools
;; can work without it.
(inputs
`(("liburcu" ,liburcu)
("popt" ,popt)
("numactl" ,numactl)))
(propagated-inputs
`(("kmod" ,kmod)
("module-init-tools" ,module-init-tools)))
(native-inputs
`(("pkg-config" ,pkg-config)
("perl" ,perl)
("libpfm4" ,libpfm4)
("python-3" ,python-3)
("swig" ,swig)
("procps" ,procps)
("which" ,which)
("flex" ,flex)
("bison" ,bison)
("asciidoc" ,asciidoc)
("libxml2" ,libxml2)
("lttng-ust" ,lttng-ust)))
(home-page "https://lttng.org/")
(synopsis "LTTng userspace tracer libraries")
(description "The lttng-tools project provides a session
daemon @code{lttng-sessiond} that acts as a tracing registry, the @command{lttng} command
line for tracing control, a @code{lttng-ctl} library for tracing control and a
@code{lttng-relayd} for network streaming.")
(license (list license:gpl2 license:lgpl2.1))))
(define-public kexec-tools (define-public kexec-tools
(package (package
(name "kexec-tools") (name "kexec-tools")

View file

@ -1,5 +1,13 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Andy Patterson <ajpatter@uwaterloo.ca>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020, 2021 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2019, 2020, 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 Charles Jackson <charles.b.jackson@protonmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -16,6 +24,9 @@
;;; You should have received a copy of the GNU General Public License ;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This module only contains Common Lisp libraries related to code testing
;;; facilities.
(define-module (gnu packages lisp-check) (define-module (gnu packages lisp-check)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
@ -24,10 +35,474 @@
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system asdf)) #:use-module (guix build-system asdf))
;;; Commentary: (define-public sbcl-1am
;;; (let ((commit "8b1da94eca4613fd8a20bdf63f0e609e379b0ba5"))
;;; This module only contains Common Lisp libraries related to code testing (package
;;; facilities. (name "sbcl-1am")
(version (git-version "0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lmj/1am")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"05ss4nz1jb9kb796295482b62w5cj29msfj8zis33sp2rw2vmv2g"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/lmj/1am")
(synopsis "Minimal testing framework for Common Lisp")
(description "A minimal testing framework for Common Lisp.")
(license license:expat))))
(define-public cl-1am
(sbcl-package->cl-source-package sbcl-1am))
(define-public ecl-1am
(sbcl-package->ecl-package sbcl-1am))
(define-public sbcl-check-it
(let ((commit "b79c9103665be3976915b56b570038f03486e62f"))
(package
(name "sbcl-check-it")
(version (git-version "0.1.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/DalekBaldwin/check-it/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1kbjwpniffdpv003igmlz5r0vy65m7wpfnhg54fhwirp1227hgg7"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("closer-mop" ,sbcl-closer-mop)
("optima" ,sbcl-optima)))
(native-inputs
`(("stefil" ,sbcl-stefil)))
(home-page "https://github.com/arclanguage/Clamp")
(synopsis "Randomized specification-based testing for Common Lisp")
(description
"This is a randomized property-based testing library for Common Lisp.
Rather than being a full-fledged general test framework in its own right, it's
designed to embed randomized tests in whatever framework you like.")
(license license:llgpl))))
(define-public cl-check-it
(sbcl-package->cl-source-package sbcl-check-it))
(define-public ecl-check-it
(sbcl-package->ecl-package sbcl-check-it))
(define-public sbcl-checkl
(let ((commit "80328800d047fef9b6e32dfe6bdc98396aee3cc9")
(revision "1"))
(package
(name "sbcl-checkl")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rpav/CheckL")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0bpisihx1gay44xmyr1dmhlwh00j0zzi04rp9fy35i95l2r4xdlx"))))
(build-system asdf-build-system/sbcl)
(arguments
;; Error while trying to load definition for system checkl-test from
;; pathname [...]/checkl-test.asd: The function CHECKL:DEFINE-TEST-OP
;; is undefined.
'(#:asd-files '("checkl.asd")
#:tests? #f))
(native-inputs
`(("sbcl-fiveam" ,sbcl-fiveam)))
(inputs
`(("sbcl-marshal" ,sbcl-marshal)))
(home-page "https://github.com/rpav/CheckL/")
(synopsis "Dynamic testing for Common Lisp")
(description
"CheckL lets you write tests dynamically, it checks resulting values
against the last run.")
;; The author specifies both LLGPL and "BSD", but the "BSD" license
;; isn't specified anywhere, so I don't know which kind. LLGPL is the
;; stronger of the two and so I think only listing this should suffice.
(license license:llgpl))))
(define-public cl-checkl
(sbcl-package->cl-source-package sbcl-checkl))
(define-public ecl-checkl
(sbcl-package->ecl-package sbcl-checkl))
(define-public sbcl-cl-mock
;; .asd version only got updated recently, despired the old GitHug "1.0.1" release.
(let ((commit "7988dca2093358911b67597a2cd1570c785dfe76"))
(package
(name "sbcl-cl-mock")
(version (git-version "1.0.1" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Ferada/cl-mock/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0f40wikcf783jx26ip0nnhwjjfjvjiw7njqsqrb6kaphc8bgw0i1"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("closer-mop" ,sbcl-closer-mop)
("trivia" ,sbcl-trivia)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)))
(home-page "https://github.com/Ferada/cl-mock")
(synopsis "Mocking functions for Common Lisp testing")
(description
"This small library provides a way to replace the actual implementation
of either regular or generic functions with mocks.")
(license license:agpl3))))
(define-public ecl-cl-mock
(sbcl-package->ecl-package sbcl-cl-mock))
(define-public cl-mock
(sbcl-package->cl-source-package sbcl-cl-mock))
(define-public sbcl-cl-quickcheck
(let ((commit "807b2792a30c883a2fbecea8e7db355b50ba662f")
(revision "1"))
(package
(name "sbcl-cl-quickcheck")
(version (git-version "0.0.4" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mcandre/cl-quickcheck")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"165lhypq5xkcys6hvzb3jq7ywnmqvzaflda29qk2cbs3ggas4767"))))
(build-system asdf-build-system/sbcl)
(synopsis
"Common Lisp port of the QuickCheck unit test framework")
(description
"Common Lisp port of the QuickCheck unit test framework")
(home-page "https://github.com/mcandre/cl-quickcheck")
;; MIT
(license license:expat))))
(define-public cl-quickcheck
(sbcl-package->cl-source-package sbcl-cl-quickcheck))
(define-public ecl-cl-quickcheck
(sbcl-package->ecl-package sbcl-cl-quickcheck))
(define-public sbcl-clunit
(let ((commit "6f6d72873f0e1207f037470105969384f8380628")
(revision "1"))
(package
(name "sbcl-clunit")
(version (git-version "0.2.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tgutu/clunit")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1idf2xnqzlhi8rbrqmzpmb3i1l6pbdzhhajkmhwbp6qjkmxa4h85"))))
(build-system asdf-build-system/sbcl)
(synopsis "CLUnit is a Common Lisp unit testing framework")
(description
"CLUnit is a Common Lisp unit testing framework. It is designed
to be easy to use so that you can quickly start testing. CLUnit
provides a rich set of features aimed at improving your unit testing
experience.")
(home-page "https://tgutu.github.io/clunit/")
;; MIT License
(license license:expat))))
(define-public cl-clunit
(sbcl-package->cl-source-package sbcl-clunit))
(define-public ecl-clunit
(sbcl-package->ecl-package sbcl-clunit))
(define-public sbcl-clunit2
(let ((commit "5e28343734eb9b7aee39306a614af92c1062d50b")
(revision "1"))
(package
(name "sbcl-clunit2")
(version (git-version "0.2.4" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://notabug.org/cage/clunit2.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1ngiapfki6nm8a555mzhb5p7ch79i3w665za5bmb5j7q34fy80vw"))))
(build-system asdf-build-system/sbcl)
(synopsis "Unit testing framework for Common Lisp")
(description
"CLUnit is a Common Lisp unit testing framework. It is designed to be
easy to use so that you can quickly start testing.")
(home-page "https://notabug.org/cage/clunit2")
(license license:expat))))
(define-public cl-clunit2
(sbcl-package->cl-source-package sbcl-clunit2))
(define-public ecl-clunit2
(sbcl-package->ecl-package sbcl-clunit2))
(define-public sbcl-eos
(let ((commit "b4413bccc4d142cbe1bf49516c3a0a22c9d99243")
(revision "2"))
(package
(name "sbcl-eos")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/adlai/Eos")
(commit commit)))
(sha256
(base32 "1afllvmlnx97yzz404gycl3pa3kwx427k3hrbf37rpmjlv47knhk"))
(file-name (git-file-name "eos" version))))
(build-system asdf-build-system/sbcl)
(synopsis "Unit Testing for Common Lisp")
(description
"Eos was a unit testing library for Common Lisp.
It began as a fork of FiveAM; however, FiveAM development has continued, while
that of Eos has not. Thus, Eos is now deprecated in favor of FiveAM.")
(home-page "https://github.com/adlai/Eos")
(license license:expat))))
(define-public cl-eos
(sbcl-package->cl-source-package sbcl-eos))
(define-public ecl-eos
(sbcl-package->ecl-package sbcl-eos))
(define-public sbcl-fiasco
(let ((commit "d62f7558b21addc89f87e306f65d7f760632655f")
(revision "1"))
(package
(name "sbcl-fiasco")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/joaotavora/fiasco")
(commit commit)))
(file-name (git-file-name "fiasco" version))
(sha256
(base32
"1zwxs3d6iswayavcmb49z2892xhym7n556d8dnmvalc32pm9bkjh"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
(synopsis "Simple and powerful test framework for Common Lisp")
(description "A Common Lisp test framework that treasures your failures,
logical continuation of Stefil. It focuses on interactive debugging.")
(home-page "https://github.com/joaotavora/fiasco")
;; LICENCE specifies this is public-domain unless the legislation
;; doesn't allow or recognize it. In that case it falls back to a
;; permissive licence.
(license (list license:public-domain
(license:x11-style "file://LICENCE"))))))
(define-public cl-fiasco
(sbcl-package->cl-source-package sbcl-fiasco))
(define-public ecl-fiasco
(sbcl-package->ecl-package sbcl-fiasco))
(define-public sbcl-fiveam
(package
(name "sbcl-fiveam")
(version "1.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sionescu/fiveam")
(commit (string-append "v" version))))
(file-name (git-file-name "fiveam" version))
(sha256
(base32 "04mh5plmlb15jbq3dkd8b9jl1dmbbg4hnd3k7859vpf6s12k5p4j"))))
(inputs
`(("alexandria" ,sbcl-alexandria)
("net.didierverna.asdf-flv" ,sbcl-net.didierverna.asdf-flv)
("trivial-backtrace" ,sbcl-trivial-backtrace)))
(build-system asdf-build-system/sbcl)
(synopsis "Common Lisp testing framework")
(description "FiveAM is a simple (as far as writing and running tests
goes) regression testing framework. It has been designed with Common Lisp's
interactive development model in mind.")
(home-page "https://common-lisp.net/project/fiveam/")
(license license:bsd-3)))
(define-public cl-fiveam
(sbcl-package->cl-source-package sbcl-fiveam))
(define-public ecl-fiveam
(sbcl-package->ecl-package sbcl-fiveam))
(define-public sbcl-hu.dwim.stefil
(let ((commit "414902c6f575818c39a8a156b8b61b1adfa73dad"))
(package
(name "sbcl-hu.dwim.stefil")
(version (git-version "0.0.0" "2" commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/hu-dwim/hu.dwim.stefil")
(commit commit)))
(sha256
(base32 "14izmjjim590rh74swrssavdmdznj2z8vhqixy780sjhpcr5pmkc"))
(file-name (git-file-name "hu.dwim.stefil" version))))
(build-system asdf-build-system/sbcl)
(native-inputs
`(("asdf:cl-hu.dwim.asdf" ,sbcl-hu.dwim.asdf)))
(inputs
`(("sbcl-alexandria" ,sbcl-alexandria)))
(home-page "http://dwim.hu/project/hu.dwim.stefil")
(synopsis "Simple test framework")
(description "Stefil is a simple test framework for Common Lisp,
with a focus on interactive development.")
(license license:public-domain))))
(define-public cl-hu.dwim.stefil
(sbcl-package->cl-source-package sbcl-hu.dwim.stefil))
(define-public ecl-hu.dwim.stefil
(sbcl-package->ecl-package sbcl-hu.dwim.stefil))
(define-public sbcl-lift
(let ((commit "2594160d6ca3a77d8750110dfa63214256aab852")
(revision "2"))
(package
(name "sbcl-lift")
(version (git-version "1.7.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gwkkwg/lift")
(commit commit)))
(sha256
(base32 "01xvz9sl5l5lai4h9dabmcjnm659wf5zllaxqbs55lffskp6jwq3"))
(file-name (git-file-name "lift" version))
(modules '((guix build utils)))
(snippet
;; Don't keep the bundled website
`(begin
(delete-file-recursively "website")
#t))))
(build-system asdf-build-system/sbcl)
(arguments
;; The tests require a debugger, but we run with the debugger disabled.
'(#:tests? #f))
(synopsis "LIsp Framework for Testing")
(description
"The LIsp Framework for Testing (LIFT) is a unit and system test tool for LISP.
Though inspired by SUnit and JUnit, it's built with Lisp in mind. In LIFT,
testcases are organized into hierarchical testsuites each of which can have
its own fixture. When run, a testcase can succeed, fail, or error. LIFT
supports randomized testing, benchmarking, profiling, and reporting.")
(home-page "https://github.com/gwkkwg/lift")
(license license:expat))))
(define-public cl-lift
(sbcl-package->cl-source-package sbcl-lift))
(define-public ecl-lift
(sbcl-package->ecl-package sbcl-lift))
(define-public sbcl-lisp-unit
(let ((commit "89653a232626b67400bf9a941f9b367da38d3815"))
(package
(name "sbcl-lisp-unit")
(version (git-version "0.0.0" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OdonataResearchLLC/lisp-unit")
(commit commit)))
(sha256
(base32
"0p6gdmgr7p383nvd66c9y9fp2bjk4jx1lpa5p09g43hr9y9pp9ry"))
(file-name (git-file-name "lisp-unit" version))))
(build-system asdf-build-system/sbcl)
(synopsis "Common Lisp Test framework inspired by JUnit to be simple of use")
(description
"@command{lisp-unit} is a Common Lisp library that supports unit
testing. It is an extension of the library written by Chris Riesbeck.")
(home-page "https://github.com/OdonataResearchLLC/lisp-unit")
(license license:expat))))
(define-public cl-lisp-unit
(sbcl-package->cl-source-package sbcl-lisp-unit))
(define-public ecl-lisp-unit
(sbcl-package->ecl-package sbcl-lisp-unit))
(define-public sbcl-lisp-unit2
;; There is a cyclical dependency between symbol-munger and lisp-unit2.
;; See https://github.com/AccelerationNet/symbol-munger/issues/4
(let ((commit "fb9721524d1e4e73abb223ee036d74ce14a5505c")
(revision "1"))
(package
(name "sbcl-lisp-unit2")
(version (git-version "0.2.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AccelerationNet/lisp-unit2")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1rsqy8y0jqll6xn9a593848f5wvd5ribv4csry1ly0hmdhfnqzlp"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-interpol" ,sbcl-cl-interpol)
("iterate" ,sbcl-iterate)
("symbol-munger" ,sbcl-symbol-munger)))
(synopsis "Test Framework for Common Lisp")
(description
"LISP-UNIT2 is a Common Lisp library that supports unit testing in the
style of JUnit for Java. It is a new version of the lisp-unit library written
by Chris Riesbeck.")
(home-page "https://github.com/AccelerationNet/lisp-unit2")
(license license:expat))))
(define-public cl-lisp-unit2
(sbcl-package->cl-source-package sbcl-lisp-unit2))
(define-public ecl-lisp-unit2
(sbcl-package->ecl-package sbcl-lisp-unit2))
(define-public sbcl-nst (define-public sbcl-nst
(let ((commit "6c0990f594abcf5887e8d80f1035e3b60454b61b") (let ((commit "6c0990f594abcf5887e8d80f1035e3b60454b61b")
@ -60,4 +535,313 @@
(define-public cl-nst (define-public cl-nst
(sbcl-package->cl-source-package sbcl-nst)) (sbcl-package->cl-source-package sbcl-nst))
;;; lisp-check.scm ends here (define-public sbcl-parachute
(let ((commit "ca04dd8e43010a6dfffa26dbe1d62af86008d666")
(revision "0"))
(package
(name "sbcl-parachute")
(version (git-version "1.1.1" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Shinmera/parachute")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1mvsm3r0r6a2bg75nw0q7n9vlby3ch45qjl7hnb5k1z2n5x5lh60"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("documentation-utils" ,sbcl-documentation-utils)
("form-fiddle" ,sbcl-form-fiddle)))
(synopsis "Extensible and cross-compatible testing framework for Common Lisp")
(description
"Parachute is a simple-to-use and extensible testing framework.
In Parachute, things are organised as a bunch of named tests within a package.
Each test can contain a bunch of test forms that make up its body.")
(home-page "https://shinmera.github.io/parachute/")
(license license:zlib))))
(define-public cl-parachute
(sbcl-package->cl-source-package sbcl-parachute))
(define-public ecl-parachute
(sbcl-package->ecl-package sbcl-parachute))
(define-public sbcl-prove
(let ((commit "5d71f02795b89e36f34e8c7d50e69b67ec6ca2de")
(revision "2"))
(package
(name "sbcl-prove")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fukamachi/prove")
(commit commit)))
(sha256
(base32 "0ca6ha3zhmckq3ad9lxm6sbg4i0hg3m81xhan4dkxd3x9898jzpc"))
(file-name (git-file-name "prove" version))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("cl-colors" ,sbcl-cl-colors)
("cl-ppcre" ,sbcl-cl-ppcre)
("cl-ansi-text" ,sbcl-cl-ansi-text)))
(synopsis "Yet another unit testing framework for Common Lisp")
(description
"This project was originally called @command{cl-test-more}.
@command{prove} is yet another unit testing framework for Common Lisp. The
advantages of @command{prove} are:
@itemize
@item Various simple functions for testing and informative error messages
@item ASDF integration
@item Extensible test reporters
@item Colorizes the report if it's available (note for SLIME)
@item Reports test durations
@end itemize\n")
(home-page "https://github.com/fukamachi/prove")
(license license:expat))))
(define-public cl-prove
(sbcl-package->cl-source-package sbcl-prove))
(define-public ecl-prove
(sbcl-package->ecl-package sbcl-prove))
(define-public sbcl-ptester
(let ((commit "fe69fde54f4bce00ce577feb918796c293fc7253")
(revision "1"))
(package
(name "sbcl-ptester")
(version (git-version "2.1.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "http://git.kpe.io/ptester.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1l0lfl7cdnr2qf4zh38hi4llxg22c49zkm639bdkmvlkzwj3ndwf"))))
(build-system asdf-build-system/sbcl)
(home-page "http://quickdocs.org/ptester/")
(synopsis "Portable test harness package")
(description
"@command{ptester} is a portable testing framework based on Franz's
tester module.")
(license license:llgpl))))
(define-public cl-ptester
(sbcl-package->cl-source-package sbcl-ptester))
(define-public ecl-ptester
(sbcl-package->ecl-package sbcl-ptester))
(define-public sbcl-rove
(package
(name "sbcl-rove")
(version "0.9.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fukamachi/rove")
(commit "f3695db08203bf26f3b861dc22ac0f4257d3ec21")))
(file-name (git-file-name name version))
(sha256
(base32
"07ala4l2fncxf540fzxj3h5mhi9i4wqllhj0rqk8m2ljl5zbz89q"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("bordeaux-threads" ,sbcl-bordeaux-threads)
("dissect" ,sbcl-dissect)
("trivial-gray-streams" ,sbcl-trivial-gray-streams)))
(home-page "https://github.com/fukamachi/rove")
(synopsis
"Yet another common lisp testing library")
(description
"Rove is a unit testing framework for Common Lisp applications.
This is intended to be a successor of Prove.")
(license license:bsd-3)))
(define-public cl-rove
(sbcl-package->cl-source-package sbcl-rove))
(define-public ecl-rove
(sbcl-package->ecl-package sbcl-rove))
(define-public sbcl-rt
(let ((commit "a6a7503a0b47953bc7579c90f02a6dba1f6e4c5a")
(revision "1"))
(package
(name "sbcl-rt")
(version (git-version "1990.12.19" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "http://git.kpe.io/rt.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "13si2rrxaagbr0bkvg6sqicxxpyshabx6ad6byc9n2ik5ysna69b"))))
(build-system asdf-build-system/sbcl)
(synopsis "MIT Regression Tester")
(description
"RT provides a framework for writing regression test suites.")
(home-page "https://www.cliki.net/rt")
(license license:expat))))
(define-public cl-rt
(sbcl-package->cl-source-package sbcl-rt))
(define-public ecl-rt
(sbcl-package->ecl-package sbcl-rt))
(define-public sbcl-should-test
(let ((commit "48facb9f9c07aeceb71fc0c48ce17fd7d54a09d4")
(revision "0"))
(package
(name "sbcl-should-test")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vseloved/should-test")
(commit commit)))
(file-name (git-file-name "should-test" version))
(sha256
(base32 "1fqqa7lhf28qg60ji9libkylkcy747x576qpjn1y7c945j2fxmnm"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("cl-ppcre" ,sbcl-cl-ppcre)
("local-time" ,sbcl-local-time)
("osicat" ,sbcl-osicat)
("rutils" ,sbcl-rutils)))
(home-page "https://github.com/vseloved/should-test")
(synopsis "Minimal yet feature-rich Common Lisp test framework")
(description
"SHOULD-TEST is a methodology-agnostic and non-opinionated Common Lisp
test framework, i.e. it doesn't care what kind of test approach you'd like to
take.")
(license license:expat))))
(define-public cl-should-test
(sbcl-package->cl-source-package sbcl-should-test))
(define-public ecl-should-test
(sbcl-package->ecl-package sbcl-should-test))
(define-public sbcl-stefil
(let ((commit "0398548ec95dceb50fc2c2c03e5fb0ce49b86c7a")
(revision "0"))
(package
(name "sbcl-stefil")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.common-lisp.net/stefil/stefil.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0bqz64q2szzhf91zyqyssmvrz7da6442rs01808pf3wrdq28bclh"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("iterate" ,sbcl-iterate)
("metabang-bind" ,sbcl-metabang-bind)
("swank" ,sbcl-slime-swank)))
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'drop-unnecessary-dependency
(lambda _
(substitute* "package.lisp"
((":stefil-system") ""))
#t)))))
(home-page "https://common-lisp.net/project/stefil/index-old.shtml")
(synopsis "Simple test framework")
(description
"Stefil is a simple test framework for Common Lisp, with a focus on
interactive development.")
(license license:public-domain))))
(define-public cl-stefil
(sbcl-package->cl-source-package sbcl-stefil))
(define-public ecl-stefil
(sbcl-package->ecl-package sbcl-stefil))
(define-public sbcl-unit-test
(let ((commit "266afaf4ac091fe0e8803bac2ae72d238144e735")
(revision "1"))
(package
(name "sbcl-unit-test")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hanshuebner/unit-test")
(commit commit)))
(file-name (git-file-name "unit-test" version))
(sha256
(base32 "11hpksz56iqkv7jw25p2a8r3n9dj922fyarn16d98589g6hdskj9"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/hanshuebner/unit-test")
(synopsis "Unit-testing framework for Common Lisp")
(description "This is a unit-testing framework for Common Lisp.")
(license license:unlicense))))
(define-public ecl-unit-test
(sbcl-package->ecl-package sbcl-unit-test))
(define-public cl-unit-test
(sbcl-package->cl-source-package sbcl-unit-test))
(define-public sbcl-xlunit
(let ((commit "3805d34b1d8dc77f7e0ee527a2490194292dd0fc")
(revision "1"))
(package
(name "sbcl-xlunit")
(version (git-version "0.6.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "http://git.kpe.io/xlunit.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0argfmp9nghs4sihyj3f8ch9qfib2b7ll07v5m9ziajgzsfl5xw3"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
(substitute* "xlunit.asd"
((" :force t") ""))
#t)))))
(synopsis "Unit testing package for Common Lisp")
(description
"The XLUnit package is a toolkit for building test suites. It is based
on the XPTest package by Craig Brozensky and the JUnit package by Kent Beck.")
(home-page "http://quickdocs.org/xlunit/")
(license license:bsd-3))))
(define-public cl-xlunit
(sbcl-package->cl-source-package sbcl-xlunit))
(define-public ecl-xlunit
(sbcl-package->ecl-package sbcl-xlunit))

File diff suppressed because it is too large Load diff

View file

@ -1896,7 +1896,7 @@ facilities for checking incoming mail.")
(package (package
(name "dovecot") (name "dovecot")
;; Also update dovecot-pigeonhole when updating to a new minor version. ;; Also update dovecot-pigeonhole when updating to a new minor version.
(version "2.3.16") (version "2.3.17")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1904,7 +1904,7 @@ facilities for checking incoming mail.")
(version-major+minor version) "/" (version-major+minor version) "/"
"dovecot-" version ".tar.gz")) "dovecot-" version ".tar.gz"))
(sha256 (sha256
(base32 "04ngqv5mml5z0i4p7fkchp4xw2awy7x7mq2mim9frnav0m9iv9q3")))) (base32 "1y9dpn4jgzrfjibp5zrc11bdk0q843d998kxhpxkyfm2fz6i4i12"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
@ -1939,8 +1939,7 @@ facilities for checking incoming mail.")
(("sleep") (which "sleep"))) (("sleep") (which "sleep")))
(substitute* (list "src/lib-smtp/test-bin/sendmail-exit-1.sh" (substitute* (list "src/lib-smtp/test-bin/sendmail-exit-1.sh"
"src/lib-smtp/test-bin/sendmail-success.sh") "src/lib-smtp/test-bin/sendmail-success.sh")
(("cat") (which "cat"))) (("cat") (which "cat")))))
#t))
(replace 'install (replace 'install
(lambda* (#:key make-flags #:allow-other-keys) (lambda* (#:key make-flags #:allow-other-keys)
;; Simple hack to avoid installing a trivial README in /etc. ;; Simple hack to avoid installing a trivial README in /etc.
@ -1961,7 +1960,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(let ((dovecot-version (version-major+minor (package-version dovecot)))) (let ((dovecot-version (version-major+minor (package-version dovecot))))
(package (package
(name "dovecot-pigeonhole") (name "dovecot-pigeonhole")
(version "0.5.16") (version "0.5.17")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1969,7 +1968,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
"https://pigeonhole.dovecot.org/releases/" dovecot-version "/" "https://pigeonhole.dovecot.org/releases/" dovecot-version "/"
"dovecot-" dovecot-version "-pigeonhole-" version ".tar.gz")) "dovecot-" dovecot-version "-pigeonhole-" version ".tar.gz"))
(sha256 (sha256
(base32 "0f79qsiqnhaxn7mrrfcrnsjyv6357kzb7wa0chhfd69vwa06g8sw")) (base32 "0j6ng173hh5iiqxdkxfb5v9djpn39gxdrv5ki7i22cf5cqwq47h3"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -1978,8 +1977,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(substitute* "configure" (substitute* "configure"
(("doc/rfc/Makefile") "")) (("doc/rfc/Makefile") ""))
(substitute* "doc/Makefile.in" (substitute* "doc/Makefile.in"
(("rfc ") "")) (("rfc ") ""))))))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -2007,8 +2005,7 @@ It supports mbox/Maildir and its own dbox/mdbox formats.")
(substitute* "src/managesieve-login/managesieve-login-settings.c" (substitute* "src/managesieve-login/managesieve-login-settings.c"
(("\\.executable = \"managesieve-login\"") (("\\.executable = \"managesieve-login\"")
(string-append ".executable = \"" libexec (string-append ".executable = \"" libexec
"/managesieve-login\""))) "/managesieve-login\"")))))))))
#t))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs

View file

@ -1315,7 +1315,7 @@ extremely large and complex data collections.")
(define-public hdf5-1.12 (define-public hdf5-1.12
(package (package
(inherit hdf5-1.8) (inherit hdf5-1.8)
(version "1.12.0") (version "1.12.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1329,7 +1329,7 @@ extremely large and complex data collections.")
(take (string-split version #\.) 2)) (take (string-split version #\.) 2))
"/src/hdf5-" version ".tar.bz2"))) "/src/hdf5-" version ".tar.bz2")))
(sha256 (sha256
(base32 "0qazfslkqbmzg495jafpvqp0khws3jkxa0z7rph9qvhacil6544p")) (base32 "074g3z504xf77ff38igs30i1aqxpm508p7yw78ykva7dncrgbyda"))
(patches (search-patches "hdf5-config-date.patch")))))) (patches (search-patches "hdf5-config-date.patch"))))))
(define-public hdf5 (define-public hdf5
@ -2224,6 +2224,163 @@ Computational Engineering and Sciences} at The University of Texas at Austin.
includes a complete LAPACK implementation.") includes a complete LAPACK implementation.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public libpotassco
;; No public release, update together with clasp
(let ((revision "1")
(commit "2f9fb7ca2c202f1b47643aa414054f2f4f9c1821"))
(package
(name "libpotassco")
(version (git-version "0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/potassco/libpotassco")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1c32f9gqclf7qx07lpx8wd720vfhkjqhzc6nyy8mjmgwpmb3iyyn"))))
(arguments
`(#:configure-flags '("-DLIB_POTASSCO_BUILD_TESTS=on"
"-DLIB_POTASSCO_INSTALL_LIB=on"
"-DBUILD_SHARED_LIBS=on")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
(substitute* "CMakeLists.txt"
;; clasp expects lowercase potassco and include directory is
;; lowercase as well, so let's use that
(("\"cmake/Potassco\"") "\"cmake/potassco\"")
(("PotasscoConfig\\.cmake") "potassco-config.cmake")
(("PotasscoConfigVersion\\.cmake")
"potassco-config-version.cmake"))
(rename-file "cmake/PotasscoConfig.cmake.in"
"cmake/potassco-config.cmake.in"))))))
(build-system cmake-build-system)
(home-page "https://potassco.org/")
(synopsis "Utility library for Potassco's projects")
(description "@code{libpotassco} is a utility library providing functions
and datatypes for
@itemize
@item parsing, writing, and converting logic programs in aspif and smodels
format,
@item passing information between a grounder and a solver,
@item and defining and parsing command-line options and for creating
command-line applications.
@end itemize
Furthermore, it comes with the tool @command{lpconvert} that converts either
between aspif and smodels format or to a human-readable text format.")
(license license:expat))))
(define-public clasp
(package
(name "clasp")
(version "3.3.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/potassco/clasp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0rahqiq530jckvx717858h1q5p8znp1kb6sjm95p8blkr4n3pvmj"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DCLASP_BUILD_TESTS=on"
"-DCLASP_INSTALL_LIB=on"
"-DCLASP_USE_LOCAL_LIB_POTASSCO=off"
"-DBUILD_SHARED_LIBS=on")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
(substitute* "CMakeLists.txt"
;; Use lowercase to be consistent with libpotassco
(("\"cmake/Clasp\"") "\"cmake/clasp\"")
(("ClaspConfig\\.cmake") "clasp-config.cmake")
(("ClaspConfigVersion\\.cmake")
"clasp-config-version.cmake"))
(substitute* "cmake/ClaspConfig.cmake.in"
(("find_package\\(Potassco") "find_package(potassco"))
(rename-file "cmake/ClaspConfig.cmake.in"
"cmake/clasp-config.cmake.in"))))))
(inputs
`(("libpotassco" ,libpotassco)))
(home-page "https://potassco.org/")
(synopsis "Answer set solver")
(description "clasp is an answer set solver for (extended) normal and
disjunctive logic programs. The primary algorithm of clasp relies on
conflict-driven nogood learning, a technique that proved very successful for
satisfiability checking (SAT).")
(license license:expat)))
(define-public clingo
(package
(name "clingo")
(version "5.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/potassco/clingo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0rfjwkcwm0mmf3r4i7asyjwb6cia4i7px7fn2kdbi9j85qvas4pb"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags `("-DCLINGO_BUILD_TESTS=on"
"-DCLINGO_INSTALL_LIB=on"
"-DCLINGO_BUILD_STATIC=off"
"-DCLINGO_BUILD_SHARED=on"
;; XXX: Clingo requries private headers and
;; sources from clasp
,(string-append
"-DCLASP_SOURCE_DIR="
(assoc-ref %build-inputs "clasp-src")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(clasp\\)")
"find_package(clasp REQUIRED)"))
(substitute* "libclingo/CMakeLists.txt"
(("\"cmake/Clingo\"") "\"cmake/clingo\"")
(("ClingoConfig\\.cmake") "clingo-config.cmake")
(("ClingoConfigVersion\\.cmake")
"clingo-config-version.cmake"))
(substitute* "cmake/ClingoConfig.cmake.in"
(("find_package\\(Clasp") "find_package(clasp"))
(rename-file "cmake/ClingoConfig.cmake.in"
"cmake/clingo-config.cmake.in")))
(add-after 'unpack 'skip-failing-tests
(lambda _
(with-directory-excursion "libclingo/tests"
(substitute* "CMakeLists.txt"
(("COMMAND test_clingo" all)
(string-append all
" -f "
"\"${CMAKE_CURRENT_SOURCE_DIR}/good.txt\"")))
(call-with-output-file "good.txt"
(lambda (port)
(for-each (lambda (test) (format port "~s~%" test))
'("parse-ast-v2" "add-ast-v2" "build-ast-v2"
"unpool-ast-v2" "parse_term"
"propagator" "propgator-sequence-mining"
"symbol" "visitor"))))))))))
(inputs
`(("clasp" ,clasp)
("libpotassco" ,libpotassco)))
(native-inputs
`(("clasp-src" ,(package-source clasp))))
(home-page "https://potassco.org/")
(synopsis "Grounder and solver for logic programs")
(description "Clingo computes answer sets for a given logic program.")
(license license:expat)))
(define-public ceres (define-public ceres
(package (package
(name "ceres-solver") (name "ceres-solver")
@ -5663,6 +5820,65 @@ as equations, scalars, vectors, and matrices.")
theories} (SMT) solver. It provides a C/C++ API, as well as Python bindings.") theories} (SMT) solver. It provides a C/C++ API, as well as Python bindings.")
(license license:expat))) (license license:expat)))
(define-public ocaml-z3
(package
(inherit z3)
(name "ocaml-z3")
(arguments
`(#:imported-modules ((guix build python-build-system)
,@%gnu-build-system-modules)
#:modules (((guix build python-build-system) #:select (site-packages))
(guix build gnu-build-system)
(guix build utils))
#:tests? #f; no ml tests
#:phases
(modify-phases %standard-phases
(add-before 'configure 'bootstrap
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "OCAMLFIND_LDCONF" "ignore")
(setenv "OCAMLFIND_DESTDIR" (string-append out "/lib/ocaml/site-lib"))
(mkdir-p (string-append out "/lib/ocaml/site-lib"))
(substitute* "scripts/mk_util.py"
(("LIBZ3 = LIBZ3")
(string-append "LIBZ3 = LIBZ3 + ' -dllpath " out "/lib'"))
;; Do not build z3 again, use the library passed as input
;; instead
(("z3linkdep,") "\"\",")
(("z3linkdep)") "\"\")"))
(invoke "python" "scripts/mk_make.py"))))
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(invoke "./configure"
"--ml"
(string-append "--prefix=" (assoc-ref outputs "out")))))
(add-after 'configure 'change-directory
(lambda _
(chdir "build")
#t))
(replace 'build
(lambda _
(invoke "make" "ml")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(invoke "ocamlfind" "install" "-destdir"
(string-append (assoc-ref outputs "out") "/lib/ocaml/site-lib")
"z3" "api/ml/META" "api/ml/z3enums.mli" "api/ml/z3enums.cmi"
"api/ml/z3enums.cmx" "api/ml/z3native.mli"
"api/ml/z3native.cmi" "api/ml/z3native.cmx"
"../src/api/ml/z3.mli" "api/ml/z3.cmi" "api/ml/z3.cmx"
"api/ml/libz3ml.a" "api/ml/z3ml.a" "api/ml/z3ml.cma"
"api/ml/z3ml.cmxa" "api/ml/z3ml.cmxs" "api/ml/dllz3ml.so"))))))
(native-inputs
`(("which" ,which)
("python" ,python-wrapper)
("ocaml" ,ocaml)
("ocaml-findlib" ,ocaml-findlib)))
(propagated-inputs
`(("ocaml-zarith" ,ocaml-zarith)))
(inputs
`(("z3" ,z3)))))
(define-public elpa (define-public elpa
(package (package
(name "elpa") (name "elpa")

View file

@ -1039,14 +1039,14 @@ simultaneously and therefore appear under the same nickname on IRC.")
(define-public python-nbxmpp (define-public python-nbxmpp
(package (package
(name "python-nbxmpp") (name "python-nbxmpp")
(version "2.0.2") (version "2.0.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (uri
(pypi-uri "nbxmpp" version)) (pypi-uri "nbxmpp" version))
(sha256 (sha256
(base32 "1482fva70i01w60fk70c0fhqmqgzi1fb4xflllz2v6c8mdqkd1m3")))) (base32 "1s2phiipq7ks8vrd93p96dzd5wgmgg8q9h2rxsnh2gg7iy06gj9c"))))
(build-system python-build-system) (build-system python-build-system)
(native-inputs (native-inputs
`(("glib:bin" ,glib "bin"))) `(("glib:bin" ,glib "bin")))
@ -1068,7 +1068,7 @@ of xmpppy.")
(define-public gajim (define-public gajim
(package (package
(name "gajim") (name "gajim")
(version "1.3.2") (version "1.3.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1077,7 +1077,7 @@ of xmpppy.")
(version-major+minor version) (version-major+minor version)
"/gajim-" version ".tar.gz")) "/gajim-" version ".tar.gz"))
(sha256 (sha256
(base32 "1vjzv8zg9s393xw81klcgbkn4h6j2blzla9iil5kqfrw7wmldskh")) (base32 "1337qkpcv7j0fgws9scnk82mn2l7s17060vmrbh3ihinmxmbxg6x"))
(patches (search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch")))) (patches (search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
@ -1091,13 +1091,6 @@ of xmpppy.")
(guix build utils)) (guix build utils))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda _
;; ModuleNotFoundError: No module named 'gajim.gui.emoji_data'
;; https://dev.gajim.org/gajim/gajim/-/issues/10478
(delete-file "test/lib/gajim_mocks.py")
(delete-file "test/unit/test_gui_interface.py")
#t))
(replace 'check (replace 'check
(lambda _ (lambda _
;; Tests require a running X server. ;; Tests require a running X server.
@ -1105,8 +1098,7 @@ of xmpppy.")
(setenv "DISPLAY" ":1") (setenv "DISPLAY" ":1")
;; For missing '/etc/machine-id'. ;; For missing '/etc/machine-id'.
(setenv "DBUS_FATAL_WARNINGS" "0") (setenv "DBUS_FATAL_WARNINGS" "0")
(invoke "dbus-launch" "python" "./setup.py" "test") (invoke "dbus-launch" "python" "./setup.py" "test")))
#t))
(add-after 'install 'glib-or-gtk-compile-schemas (add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'install 'glib-or-gtk-wrap (add-after 'install 'glib-or-gtk-wrap
@ -1122,8 +1114,7 @@ of xmpppy.")
(wrap-program file (wrap-program file
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))) `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))))
'("gajim" "gajim-remote" "gajim-history-manager"))) '("gajim" "gajim-remote" "gajim-history-manager"))))))))
#t)))))
(native-search-paths (native-search-paths
(list (list
(search-path-specification (search-path-specification

View file

@ -7,6 +7,7 @@
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -256,6 +257,29 @@ and (for Fortran-90 programs) read/write statements need to be changed. PSLQ
and numerical quadrature programs are included.") and numerical quadrature programs are included.")
(license bsd-3))) (license bsd-3)))
(define-public cln
(package
(name "cln")
(version "1.3.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.ginac.de/CLN/cln-"
version ".tar.bz2"))
(sha256
(base32 "0jlq9l4hphk7qqlgqj9ihjp4m3rwjbhk6q4v00lsbgbri07574pl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")))
(inputs
`(("gmp" ,gmp)))
(home-page "https://www.ginac.de/CLN/")
(synopsis "Library for arbitrary precision computations")
(description "CLN is a C++ library for efficient computations with all
kinds of numbers in arbitrary precision. It provides a rich set of number
classes and elementary, logical and transcendental functions.")
(license gpl2+)))
(define-public tomsfastmath (define-public tomsfastmath
(package (package
(name "tomsfastmath") (name "tomsfastmath")

View file

@ -1865,7 +1865,7 @@ device supports.")
(define-public bsequencer (define-public bsequencer
(package (package
(name "bsequencer") (name "bsequencer")
(version "1.8.0") (version "1.8.10")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1874,12 +1874,13 @@ device supports.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0w7iwzz2r4a699fi24qk71vv2k3jpl9ylzlgmvyc3rlgad0m01k1")))) "0w3m7x0619iq8rafcy0bal4gwh9m9h7iq93q7gkpxhv6dq58ix6l"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags `(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))) (list (string-append "CC=" ,(cc-for-target))
#:tests? #f ; there are none (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; there are none
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure)))) (delete 'configure))))
@ -1900,7 +1901,7 @@ with a selectable pattern matrix size.")
(package (package
(inherit bsequencer) (inherit bsequencer)
(name "bchoppr") (name "bchoppr")
(version "1.8.0") (version "1.10.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1909,8 +1910,7 @@ with a selectable pattern matrix size.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0gxz0cpxdfj7ajcd9yg05d26i7p24mx5865vy3ph76ni8kycdlrc"))))
"1nd6byy75f0rbz9dm9drhxmpsfhxhg0y7q3v2m3098llynhy9k2j"))))
(synopsis "Audio stream-chopping LV2 plugin") (synopsis "Audio stream-chopping LV2 plugin")
(description "B.Choppr cuts the audio input stream into a repeated (description "B.Choppr cuts the audio input stream into a repeated
sequence of up to 16 chops. Each chop can be leveled up or down (gating). sequence of up to 16 chops. Each chop can be leveled up or down (gating).
@ -1922,7 +1922,7 @@ B.Choppr is the successor of B.Slizr.")
(package (package
(inherit bsequencer) (inherit bsequencer)
(name "bshapr") (name "bshapr")
(version "0.9") (version "0.13")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1931,7 +1931,7 @@ B.Choppr is the successor of B.Slizr.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "04zd3a178i2nivg5rjailzqvc5mlnilmhj1ziygmbhshbrywplri")))) (base32 "1qr3fxqcplgb6iqi2vxc27jghhv6qsidww2by15zb2vs34yh73pl"))))
(synopsis "Beat/envelope shaper LV2 plugin") (synopsis "Beat/envelope shaper LV2 plugin")
(description "B.Shapr is a beat/envelope shaper LV2 plugin.") (description "B.Shapr is a beat/envelope shaper LV2 plugin.")
(home-page "https://github.com/sjaehn/BShapr") (home-page "https://github.com/sjaehn/BShapr")
@ -1941,7 +1941,7 @@ B.Choppr is the successor of B.Slizr.")
(package (package
(inherit bsequencer) (inherit bsequencer)
(name "bjumblr") (name "bjumblr")
(version "1.4.2") (version "1.6.8")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1950,8 +1950,7 @@ B.Choppr is the successor of B.Slizr.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "00fgax8aqqggs54pjpagw5pc30kgxaghh8mrzpqwhs06cnchcam9"))))
"0kl6hrxmqrdf0195bfnzsa2h1073fgiqrfhg2276fm1954sm994v"))))
(inputs (inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
("libsndfile" ,libsndfile) ("libsndfile" ,libsndfile)
@ -1966,7 +1965,7 @@ re-sequencer LV2 plugin.")
(package (package
(inherit bsequencer) (inherit bsequencer)
(name "bschaffl") (name "bschaffl")
(version "1.2.0") (version "1.4.8")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1975,8 +1974,7 @@ re-sequencer LV2 plugin.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "1kfc75xhj365fwl8cbvhg5chwz1snzcvf4929flds02ljylc7k6d"))))
"1c09acqrbd387ba41f8ch1qykdap5h6cg9if5pgd16i4dmjnpghj"))))
(inputs (inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
("fontconfig" ,fontconfig) ("fontconfig" ,fontconfig)
@ -6271,7 +6269,7 @@ ones.")
(define-public dpf-plugins (define-public dpf-plugins
(package (package
(name "dpf-plugins") (name "dpf-plugins")
(version "1.3") (version "1.4")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -6281,17 +6279,15 @@ ones.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0y7qvpfm34g6f7d786c6c9043dlbg5c4h71l2s24dsc9m8i7x2ww"))))
"1hsfmpv3kvpiwk8nfw9xpaipzy0n27i83y2v1yr93lznwm5rqrbs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
#:make-flags #:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "CC=" ,(cc-for-target)))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'build 'set-CC-variable
(lambda _ (setenv "CC" "gcc") #t))
(delete 'configure)))) (delete 'configure))))
(inputs (inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
@ -6487,7 +6483,7 @@ plugin support, JACK support and chord assistance.")
(define-public dragonfly-reverb (define-public dragonfly-reverb
(package (package
(name "dragonfly-reverb") (name "dragonfly-reverb")
(version "3.2.1") (version "3.2.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -6499,11 +6495,12 @@ plugin support, JACK support and chord assistance.")
(recursive? #t))) (recursive? #t)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0vfm2510shah67k87mdyar4wr4vqwii59y9lqfhwm6blxparkrqa")))) (base32 "14kia9wjs0nqfx4psnr3vf4x6hihkf80gb0mjzmdnnnk4cnrdydm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:make-flags (list "CC=gcc") #:make-flags
(list (string-append "CC=" ,(cc-for-target)))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure) ;no configure target (delete 'configure) ;no configure target
@ -6527,8 +6524,7 @@ plugin support, JACK support and chord assistance.")
(and (and
(equal? (dirname name) "bin") (equal? (dirname name) "bin")
(not (string-suffix? ".so" name)) (not (string-suffix? ".so" name))
(not (string-suffix? ".lv2" name)))))) (not (string-suffix? ".lv2" name))))))))))))
#t))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(inputs (inputs

View file

@ -649,14 +649,14 @@ systems with no further dependencies.")
(define-public blueman (define-public blueman
(package (package
(name "blueman") (name "blueman")
(version "2.2.2") (version "2.2.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/blueman-project/blueman/releases" (uri (string-append "https://github.com/blueman-project/blueman/releases"
"/download/" version "/blueman-" version ".tar.xz")) "/download/" version "/blueman-" version ".tar.xz"))
(sha256 (sha256
(base32 "1xnhxhr2l4cf703j76wvzl4rf2k4xxgjjisz03y89x9ll6qmkv8r")))) (base32 "1s86w4mklzr8hvbgl3nkg8jycl6grww533dhzw8gdn5glqfpkpbf"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags (list "--enable-polkit" `(#:configure-flags (list "--enable-polkit"
@ -1219,14 +1219,14 @@ receiving NDP messages.")
(define-public ethtool (define-public ethtool
(package (package
(name "ethtool") (name "ethtool")
(version "5.12") (version "5.14")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://kernel.org/software/network/" (uri (string-append "mirror://kernel.org/software/network/"
"ethtool/ethtool-" version ".tar.xz")) "ethtool/ethtool-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"01vgyczgldrfss98cqrgjz8krj6kwb29xjf8p08q0g85fnfgmpgm")))) "11kns8imm55i0miggsnv9nblnzm60zgnanxnjajdgb2wj68xn4xv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))

View file

@ -7258,8 +7258,8 @@ these missing pieces.")
(synopsis (synopsis
"Backport new syntax to older OCaml versions") "Backport new syntax to older OCaml versions")
(description (description
"This packages backports new features of the language to older "This package backports new language features such as @code{let+} to older
compilers, such as let+.") OCaml compilers.")
(license license:expat))) (license license:expat)))
(define-public ocaml-angstrom (define-public ocaml-angstrom

View file

@ -145,8 +145,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to ;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this. ;; start precisely like this.
(let ((version "1.3.0") (let ((version "1.3.0")
(commit "c3c502896b1454b345ee9f17d20063853652a35a") (commit "014f1b607f1d88a8e733017afaca006545b7d99b")
(revision 10)) (revision 11))
(package (package
(name "guix") (name "guix")
@ -162,7 +162,7 @@
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"037nlr5z8qmq2zp0slcg5lyhcdp7v6vxl1f36wkqrw9xzgq8k6kf")) "0mmq0ypkxj6dc1r9j1mdgih87h6fc0mk05hp481cjp8shdc1w6gw"))
(file-name (string-append "guix-" version "-checkout")))) (file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
@ -1584,14 +1584,15 @@ the boot loader configuration.")
(define-public flatpak (define-public flatpak
(package (package
(name "flatpak") (name "flatpak")
(version "1.10.2") (version "1.12.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/flatpak/flatpak/releases/download/" (uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
version "/flatpak-" version ".tar.xz")) version "/flatpak-" version ".tar.xz"))
(sha256 (sha256
(base32 "1r6xw7r3ir2vaa30n3mily6m7d51cf4qv22fkqlzzy3js0wjf5fv")))) (base32 "0my82ijg1ipa4lwrvh88jlrxbabfqfz2ssfb8cn6k0pfgz53p293"))
(patches (search-patches "flatpak-fix-path.patch"))))
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to ;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
;; find the TLS backend in glib-networking. ;; find the TLS backend in glib-networking.
@ -1626,6 +1627,16 @@ cp -r /tmp/locale/*/en_US.*")))
(("/bin/kill") (which "kill")) (("/bin/kill") (which "kill"))
(("/usr/bin/python3") (which "python3"))) (("/usr/bin/python3") (which "python3")))
#t)) #t))
(add-after 'unpack 'p11-kit-fix
(lambda* (#:key inputs #:allow-other-keys)
(let ((p11-path (string-append (assoc-ref inputs "p11-kit-next")
"/bin/p11-kit")))
(substitute* "session-helper/flatpak-session-helper.c"
(("\"p11-kit\",")
(string-append "\"" p11-path "\","))
(("if \\(g_find_program_in_path \\(\"p11-kit\"\\)\\)")
(string-append "if (g_find_program_in_path (\""
p11-path "\"))"))))))
;; Many tests fail for unknown reasons, so we just run a few basic ;; Many tests fail for unknown reasons, so we just run a few basic
;; tests. ;; tests.
(replace 'check (replace 'check
@ -1664,6 +1675,7 @@ cp -r /tmp/locale/*/en_US.*")))
("libsoup" ,libsoup) ("libsoup" ,libsoup)
("libxau" ,libxau) ("libxau" ,libxau)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
("p11-kit-next" ,p11-kit-next)
("util-linux" ,util-linux) ("util-linux" ,util-linux)
("xdg-dbus-proxy" ,xdg-dbus-proxy))) ("xdg-dbus-proxy" ,xdg-dbus-proxy)))
(home-page "https://flatpak.org") (home-page "https://flatpak.org")

View file

@ -61,14 +61,14 @@
(define-public parallel (define-public parallel
(package (package
(name "parallel") (name "parallel")
(version "20210922") (version "20211022")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-" (uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 "0rjd9636sgmnhaww2q8rbnpwhpq1aqg3df6rmpdm880zqi7skp6y")))) (base32 "16yyjvlm70lj7csaz4am98dlyqrc588xydnfnabxm71awby90wfs"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -82,8 +82,7 @@
;; $Global::shell = $ENV{'PARALLEL_SHELL'} || ;; $Global::shell = $ENV{'PARALLEL_SHELL'} ||
;; parent_shell($$) || $ENV{'SHELL'} || "/bin/sh"; ;; parent_shell($$) || $ENV{'SHELL'} || "/bin/sh";
(("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n")))) (("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n"))))
(list "src/parallel" "src/sem")) (list "src/parallel" "src/sem"))))
#t))
(add-after 'install 'wrap-program (add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
@ -92,8 +91,7 @@
,(map (lambda (input) ,(map (lambda (input)
(string-append (assoc-ref inputs input) "/bin")) (string-append (assoc-ref inputs input) "/bin"))
'("perl" '("perl"
"procps")))) "procps")))))))
#t)))
(add-after 'wrap-program 'post-install-test (add-after 'wrap-program 'post-install-test
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(invoke (string-append (invoke (string-append

View file

@ -1,77 +0,0 @@
From dc0f8f8bf8608c39da32e3c8ca1484b766fc7452 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Mon, 17 May 2021 16:47:19 -0400
Subject: [PATCH] build: Fix cross-compilation.
The cross-compilation issues corrected by this change were discovered
when attempting to cross-compile disarchive for the i586-gnu target on
GNU Guix.
* configure.ac [O_NOFOLLOW]: Rewrite test using AC_COMPUTE_INT, which
is supported even when cross-compiling.
(GUILD_TARGET_OPTION): New computed variable.
* build-aux/guile.am ($(AM_V_GUILEC)GUILE_AUTO_COMPILE): Use it.
---
build-aux/guile.am | 6 +++---
configure.ac | 24 +++++++++++++++---------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/build-aux/guile.am b/build-aux/guile.am
index bec04ea..7745125 100644
--- a/build-aux/guile.am
+++ b/build-aux/guile.am
@@ -54,7 +54,7 @@ AM_V_GUILEC_0 = @echo " GUILEC" $@;
SUFFIXES = .scm .go
.scm.go:
- $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
- $(top_builddir)/pre-inst-env \
- $(GUILD) compile $(GUILE_WARNINGS) \
+ $(AM_V_GUILEC)GUILE_AUTO_COMPILE=0 \
+ $(top_builddir)/pre-inst-env \
+ $(GUILD) compile $(GUILE_WARNINGS) $(GUILD_TARGET_OPTION) \
-o "$@" "$<"
diff --git a/configure.ac b/configure.ac
index 99c5ac5..0cd0173 100644
--- a/configure.ac
+++ b/configure.ac
@@ -39,21 +39,27 @@ AS_IF([test "x$GUILD" = "x"],
[AC_MSG_ERROR(m4_normalize([
'guild' binary not found; please check your Guile installation.]))])])
+dnl This argument is passed to guild; it ensures cross-compiling uses
+dnl the right target.
+if test -n "$host_alias"; then
+ AC_SUBST([GUILD_TARGET_OPTION], [--target=$host_alias])
+fi
+
GUILE_MODULE_REQUIRED(gcrypt hash)
dnl Guile defines a handful of values from <fcntl.h>, but it is
dnl missing O_NOFOLLOW.
AC_ARG_VAR([O_NOFOLLOW], [value to use for O_NOFOLLOW (cf. <fcntl.h>)])
AS_IF([test "x$O_NOFOLLOW" = "x"],
- [AC_MSG_CHECKING([the value of O_NOFOLLOW])
- AC_RUN_IFELSE([AC_LANG_PROGRAM([[
- #include <fcntl.h>
- #include <stdio.h>
- ]], [[
- printf("%d\n", O_NOFOLLOW)
- ]])],
- [O_NOFOLLOW=`./conftest$EXEEXT`],
- [AC_MSG_FAILURE([could find value for O_NOFOLLOW])])])
+ [AC_MSG_CHECKING([the value of O_NOFOLLOW])]
+ [AC_COMPUTE_INT([O_NOFOLLOW],
+ [O_NOFOLLOW],
+ [[
+ #include <fcntl.h>
+ #include <stdio.h>
+ ]],
+ [AC_MSG_FAILURE([could find value for O_NOFOLLOW])])]
+ [AC_MSG_RESULT([$O_NOFOLLOW])])
AC_ARG_VAR([TAR], [tar utility])
AS_IF([test "x$TAR" = "x"], [AC_PATH_PROG([TAR], [tar])])
--
2.31.1

View file

@ -0,0 +1,29 @@
Flatpak writes files for installed applications with the full Flatpak (store) path. This patch makes it write just "flatpak", using Flatpak from PATH. This is similar to the NixOS [0] patch, updated for Flatpak 1.12.1
[0] https://github.com/NixOS/nixpkgs/blob/bf4167861d0f864b0fc457778d54feb4a2675ea2/pkgs/development/libraries/flatpak/use-flatpak-from-path.patch
diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c
index 80ff5e5f..0c111c31 100644
--- a/common/flatpak-dir.c
+++ b/common/flatpak-dir.c
@@ -7134,8 +7134,7 @@ export_desktop_file (const char *app,
flatpak = FLATPAK_BINDIR "/flatpak";
g_string_append_printf (new_exec,
- "%s run --branch=%s --arch=%s",
- flatpak,
+ "flatpak run --branch=%s --arch=%s",
escaped_branch,
escaped_arch);
@@ -8467,8 +8466,8 @@ flatpak_dir_deploy (FlatpakDir *self,
if ((flatpak = g_getenv ("FLATPAK_BINARY")) == NULL)
flatpak = FLATPAK_BINDIR "/flatpak";
- bin_data = g_strdup_printf ("#!/bin/sh\nexec %s run --branch=%s --arch=%s %s \"$@\"\n",
- flatpak, escaped_branch, escaped_arch, escaped_app);
+ bin_data = g_strdup_printf ("#!/bin/sh\nexec flatpak run --branch=%s --arch=%s %s \"$@\"\n",
+ escaped_branch, escaped_arch, escaped_app);
if (!g_file_replace_contents (wrapper, bin_data, strlen (bin_data), NULL, FALSE,
G_FILE_CREATE_REPLACE_DESTINATION, NULL, cancellable, error))
return FALSE;

View file

@ -0,0 +1,110 @@
Make some of the changes needed to the 'makeicecat' script, to allow it to run
in a snippet without network access. After this patch is applied, some
additional changes will be made using 'substitute*'.
diff --git a/makeicecat b/makeicecat
index 8be2362..48716f2 100755
--- a/makeicecat
+++ b/makeicecat
@@ -31,55 +31,55 @@ SOURCEDIR=icecat-$FFVERSION
DATA="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/data
-mkdir -p output
-cd output
+# mkdir -p output
+# cd output
###############################################################################
# Retrieve FF source code
###############################################################################
-rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf
-
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
-gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
-echo -n 1aa041db28cd742e93d663a9da8defd33040b38d8b9470350538473251621643 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
-
-echo Extracting Firefox tarball
-tar -xf firefox-${FFVERSION}esr.source.tar.xz
-
-mv firefox-${FFVERSION} $SOURCEDIR
+# rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf
+#
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
+# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
+# echo -n 1aa041db28cd742e93d663a9da8defd33040b38d8b9470350538473251621643 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
+#
+# echo Extracting Firefox tarball
+# tar -xf firefox-${FFVERSION}esr.source.tar.xz
+#
+# mv firefox-${FFVERSION} $SOURCEDIR
###############################################################################
# Retrieve l10n
###############################################################################
-mkdir l10n
-cd l10n
-while read line;do
- line=$(echo $line |cut -d' ' -f1)
- #[ $line = "es-ES" ] || continue # To speed up testing
- [ $line = "en-US" ] && continue
- hg clone https://hg.mozilla.org/l10n-central/$line
- mkdir -p $line/browser/chrome/browser/preferences
- touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
- rm -rf $line/.hg*
-done < ../$SOURCEDIR/browser/locales/shipped-locales
-cd ..
-
-mv l10n $SOURCEDIR
-
-hg clone https://hg.mozilla.org/l10n/compare-locales/
-cd compare-locales/
-hg checkout RELEASE_8_0_0
-cd ..
-rm compare-locales/.hg* compare-locales/.git* -rf
-mv compare-locales $SOURCEDIR/l10n
+# mkdir l10n
+# cd l10n
+# while read line;do
+# line=$(echo $line |cut -d' ' -f1)
+# #[ $line = "es-ES" ] || continue # To speed up testing
+# [ $line = "en-US" ] && continue
+# hg clone https://hg.mozilla.org/l10n-central/$line
+# mkdir -p $line/browser/chrome/browser/preferences
+# touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
+# rm -rf $line/.hg*
+# done < ../$SOURCEDIR/browser/locales/shipped-locales
+# cd ..
+#
+# mv l10n $SOURCEDIR
+#
+# hg clone https://hg.mozilla.org/l10n/compare-locales/
+# cd compare-locales/
+# hg checkout RELEASE_8_0_0
+# cd ..
+# rm compare-locales/.hg* compare-locales/.git* -rf
+# mv compare-locales $SOURCEDIR/l10n
#######################################################
-cd $SOURCEDIR
+# cd $SOURCEDIR
shopt -s nullglob
for patch in $DATA/patches/*.patch; do
@@ -598,6 +598,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
# Fix CVE-2012-3386
/bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true
-cd ..
-echo Packaging tarball
-tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR
+# cd ..
+# echo Packaging tarball
+# tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR

View file

@ -3,108 +3,49 @@ in a snippet without network access. After this patch is applied, some
additional changes will be made using 'substitute*'. additional changes will be made using 'substitute*'.
diff --git a/makeicecat b/makeicecat diff --git a/makeicecat b/makeicecat
index 8be2362..48716f2 100755 index bf2b7a6..bc3b19b 100755
--- a/makeicecat --- a/makeicecat
+++ b/makeicecat +++ b/makeicecat
@@ -31,55 +31,55 @@ SOURCEDIR=icecat-$FFVERSION @@ -58,7 +58,7 @@ readonly SOURCEDIR=icecat-${FFVERSION}
# debug/shell options
readonly DEVEL=0
set -euo pipefail
-(( DEVEL )) && set -x
+set -x
DATA="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/data
-mkdir -p output
-cd output
+# mkdir -p output
+# cd output
############################################################################### ###############################################################################
# Retrieve FF source code @@ -459,7 +459,7 @@ configure_search()
sed 's|ddg@|ddg-html@|' -i browser/components/search/extensions/ddg-html/manifest.json
# Process various JSON pre-configuration dumps.
- python3 ../../tools/process-json-files.py . browser/components/extensions/schemas/
+ python3 "${DATADIR}"/../tools/process-json-files.py . browser/components/extensions/schemas/
}
configure_mobile()
@@ -855,12 +855,12 @@ finalize_sourceball()
# entry point
############################################################################### ###############################################################################
-rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf -validate_env || exit 1
- -prepare_env
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz -fetch_source
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc -verify_sources
-gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 -extract_sources
-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc -fetch_l10n
-echo -n 1aa041db28cd742e93d663a9da8defd33040b38d8b9470350538473251621643 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +# validate_env || exit 1
- +# prepare_env
-echo Extracting Firefox tarball +# fetch_source
-tar -xf firefox-${FFVERSION}esr.source.tar.xz +# verify_sources
- +# extract_sources
-mv firefox-${FFVERSION} $SOURCEDIR +# fetch_l10n
+# rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf apply_patches
+# configure
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz configure_search
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc @@ -872,4 +872,4 @@ prepare_macos_packaging
+# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 configure_extensions
+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc configure_onboarding
+# echo -n 1aa041db28cd742e93d663a9da8defd33040b38d8b9470350538473251621643 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - apply_bugfixes
+# -finalize_sourceball
+# echo Extracting Firefox tarball +# finalize_sourceball
+# tar -xf firefox-${FFVERSION}esr.source.tar.xz
+#
+# mv firefox-${FFVERSION} $SOURCEDIR
###############################################################################
# Retrieve l10n
###############################################################################
-mkdir l10n
-cd l10n
-while read line;do
- line=$(echo $line |cut -d' ' -f1)
- #[ $line = "es-ES" ] || continue # To speed up testing
- [ $line = "en-US" ] && continue
- hg clone https://hg.mozilla.org/l10n-central/$line
- mkdir -p $line/browser/chrome/browser/preferences
- touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
- rm -rf $line/.hg*
-done < ../$SOURCEDIR/browser/locales/shipped-locales
-cd ..
-
-mv l10n $SOURCEDIR
-
-hg clone https://hg.mozilla.org/l10n/compare-locales/
-cd compare-locales/
-hg checkout RELEASE_8_0_0
-cd ..
-rm compare-locales/.hg* compare-locales/.git* -rf
-mv compare-locales $SOURCEDIR/l10n
+# mkdir l10n
+# cd l10n
+# while read line;do
+# line=$(echo $line |cut -d' ' -f1)
+# #[ $line = "es-ES" ] || continue # To speed up testing
+# [ $line = "en-US" ] && continue
+# hg clone https://hg.mozilla.org/l10n-central/$line
+# mkdir -p $line/browser/chrome/browser/preferences
+# touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
+# rm -rf $line/.hg*
+# done < ../$SOURCEDIR/browser/locales/shipped-locales
+# cd ..
+#
+# mv l10n $SOURCEDIR
+#
+# hg clone https://hg.mozilla.org/l10n/compare-locales/
+# cd compare-locales/
+# hg checkout RELEASE_8_0_0
+# cd ..
+# rm compare-locales/.hg* compare-locales/.git* -rf
+# mv compare-locales $SOURCEDIR/l10n
#######################################################
-cd $SOURCEDIR
+# cd $SOURCEDIR
shopt -s nullglob
for patch in $DATA/patches/*.patch; do
@@ -598,6 +598,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
# Fix CVE-2012-3386
/bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true
-cd ..
-echo Packaging tarball
-tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR
+# cd ..
+# echo Packaging tarball
+# tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR

View file

@ -1,51 +0,0 @@
This patch came from https://git.ghostscript.com/?p=mupdf.git;a=patch;h=cee7cefc610d42fd383b3c80c12cbc675443176a
and fixes CVE-2021-3407.
From cee7cefc610d42fd383b3c80c12cbc675443176a Mon Sep 17 00:00:00 2001
From: Robin Watts <Robin.Watts@artifex.com>
Date: Fri, 22 Jan 2021 17:05:15 +0000
Subject: [PATCH] Bug 703366: Fix double free of object during linearization.
This appears to happen because we parse an illegal object from
a broken file and assign it to object 0, which is defined to
be free.
Here, we fix the parsing code so this can't happen.
---
source/pdf/pdf-parse.c | 6 ++++++
source/pdf/pdf-xref.c | 2 ++
2 files changed, 8 insertions(+)
diff --git a/source/pdf/pdf-parse.c b/source/pdf/pdf-parse.c
index 7abc8c3d4..5761c3351 100644
--- a/source/pdf/pdf-parse.c
+++ b/source/pdf/pdf-parse.c
@@ -749,6 +749,12 @@ pdf_parse_ind_obj(fz_context *ctx, pdf_document *doc,
fz_throw(ctx, FZ_ERROR_SYNTAX, "expected generation number (%d ? obj)", num);
}
gen = buf->i;
+ if (gen < 0 || gen >= 65536)
+ {
+ if (try_repair)
+ *try_repair = 1;
+ fz_throw(ctx, FZ_ERROR_SYNTAX, "invalid generation number (%d)", gen);
+ }
tok = pdf_lex(ctx, file, buf);
if (tok != PDF_TOK_OBJ)
diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c
index 1b2bdcd59..30197b4b8 100644
--- a/source/pdf/pdf-xref.c
+++ b/source/pdf/pdf-xref.c
@@ -1190,6 +1190,8 @@ pdf_read_new_xref(fz_context *ctx, pdf_document *doc, pdf_lexbuf *buf)
{
ofs = fz_tell(ctx, doc->file);
trailer = pdf_parse_ind_obj(ctx, doc, doc->file, buf, &num, &gen, &stm_ofs, NULL);
+ if (num == 0)
+ fz_throw(ctx, FZ_ERROR_GENERIC, "Trailer object number cannot be 0\n");
}
fz_catch(ctx)
{
--
2.17.1

View file

@ -1,27 +0,0 @@
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Tue, 24 Nov 2020 10:29:28 +0000
Subject: [PATCH] gnu: mupdf: Fix linkage.
Replace broken linkage to build/shared-release/libmupdf.so with the
proper -L$(libdir) -lmupdf incantation, and fix libmupdf.so's mode.
--- mupdf-1.18.0-source.org/Makefile
+++ mupdf-1.18.0-source/Makefile
@@ -61,7 +61,7 @@
ifdef RANLIB
RANLIB_CMD = $(QUIET_RANLIB) $(RANLIB) $@
endif
-LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(LDFLAGS) -o $@ $^ $(LIBS)
+LINK_CMD = $(QUIET_LINK) $(MKTGTDIR) ; $(CC) $(LDFLAGS) -o $@ $(subst $(MUPDF_LIB),-L$(libdir) -L$(OUT) -lmupdf,$^) $(LIBS)
TAGS_CMD = $(QUIET_TAGS) ctags -R --c-kinds=+p
WINDRES_CMD = $(QUIET_WINDRES) $(MKTGTDIR) ; $(WINDRES) $< $@
OBJCOPY_CMD = $(QUIET_OBJCOPY) $(MKTGTDIR) ; $(LD) -r -b binary -z noexecstack -o $@ $<
@@ -364,7 +364,7 @@ install: libs apps
install -m 644 include/mupdf/pdf/*.h $(DESTDIR)$(incdir)/mupdf/pdf
install -d $(DESTDIR)$(libdir)
- install -m 644 $(INSTALL_LIBS) $(DESTDIR)$(libdir)
+ install -m 755 $(INSTALL_LIBS) $(DESTDIR)$(libdir)
install -d $(DESTDIR)$(bindir)
install -m 755 $(TOOL_APPS) $(VIEW_APPS) $(DESTDIR)$(bindir)

View file

@ -0,0 +1,25 @@
Make PeachPy processes deterministic:
https://github.com/Maratyszcza/PeachPy/issues/88
https://issues.guix.gnu.org/50672
diff --git a/peachpy/name.py b/peachpy/name.py
index b6a03dc..412079d 100644
--- a/peachpy/name.py
+++ b/peachpy/name.py
@@ -86,13 +86,13 @@ def add_scoped_name(self, scoped_name):
self.names[scope_name.name] = scope
else:
assert scope_name.name is None
- self.prenames.setdefault(scope_name.prename, set())
+ self.prenames.setdefault(scope_name.prename, {})
if subscoped_name:
for subscope in iter(self.prenames[scope_name.prename]):
if isinstance(subscope, Namespace) and subscope.scope_name is scope_name:
subscope.add_scoped_name(subscoped_name)
return
- self.prenames[scope_name.prename].add(scope)
+ self.prenames[scope_name.prename][scope] = None
def assign_names(self):
# Step 1: assign names to symbols with prenames with no conflicts

View file

@ -0,0 +1,66 @@
Allow a QEMU host to set the time and shutdown Guix guests. Styled
after the patch from the Nix package:
https://github.com/NixOS/nixpkgs/blob/master/pkgs/applications/virtualization/qemu/fix-qemu-ga.patch
diff --git a/qga/commands-posix.c b/qga/commands-posix.c
index 75dbaab..b416b03 100644
--- a/qga/commands-posix.c
+++ b/qga/commands-posix.c
@@ -84,6 +84,7 @@ static void ga_wait_child(pid_t pid, int *status, Error **errp)
void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
{
const char *shutdown_flag;
+ const char *command;
Error *local_err = NULL;
pid_t pid;
int status;
@@ -91,10 +92,13 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
slog("guest-shutdown called, mode: %s", mode);
if (!has_mode || strcmp(mode, "powerdown") == 0) {
shutdown_flag = "-P";
+ command = "shutdown";
} else if (strcmp(mode, "halt") == 0) {
shutdown_flag = "-H";
+ command = "halt";
} else if (strcmp(mode, "reboot") == 0) {
shutdown_flag = "-r";
+ command = "reboot";
} else {
error_setg(errp,
"mode is invalid (valid values are: halt|powerdown|reboot");
@@ -109,6 +113,11 @@ void qmp_guest_shutdown(bool has_mode, const char *mode, Error **errp)
reopen_fd_to_null(1);
reopen_fd_to_null(2);
+ /* try Guixs shutdown/halt/reboot first */
+ char *path = g_strdup_printf("/run/current-system/profile/sbin/%s", command);
+ execle(path, command, (char *)NULL, environ);
+ g_free(path);
+
execle("/sbin/shutdown", "shutdown", "-h", shutdown_flag, "+0",
"hypervisor initiated shutdown", (char *)NULL, environ);
_exit(EXIT_FAILURE);
@@ -158,10 +167,12 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
Error *local_err = NULL;
struct timeval tv;
static const char hwclock_path[] = "/sbin/hwclock";
+ static const char hwclock_path_guix[] = "/run/current-system/profile/sbin/hwclock";
static int hwclock_available = -1;
if (hwclock_available < 0) {
- hwclock_available = (access(hwclock_path, X_OK) == 0);
+ hwclock_available = (access(hwclock_path_guix, X_OK) == 0) ||
+ (access(hwclock_path, X_OK) == 0);
}
if (!hwclock_available) {
@@ -207,6 +218,8 @@ void qmp_guest_set_time(bool has_time, int64_t time_ns, Error **errp)
/* Use '/sbin/hwclock -w' to set RTC from the system time,
* or '/sbin/hwclock -s' to set the system time from RTC. */
+ execle(hwclock_path_guix, "hwclock", has_time ? "-w" : "-s",
+ NULL, environ);
execle(hwclock_path, "hwclock", has_time ? "-w" : "-s",
NULL, environ);
_exit(EXIT_FAILURE);

View file

@ -0,0 +1,164 @@
From f060e90d148270307228315e2759a0065ec1d796 Mon Sep 17 00:00:00 2001
From: Vagrant Cascadian <vagrant@debian.org>
Date: Fri, 22 Oct 2021 17:34:53 -0700
Subject: [PATCH] Revert "tools: kwbimage: Do not hide usage of secure header
under CONFIG_ARMADA_38X"
This reverts commit b4f3cc2c42d97967a3a3c8796c340f6b07ecccac.
---
tools/Makefile | 8 ++++++++
tools/kwbimage.c | 22 ++++++++++++++++++++++
2 files changed, 30 insertions(+)
diff --git a/tools/Makefile b/tools/Makefile
index 4a86321f64..9517f203fd 100644
--- a/tools/Makefile
+++ b/tools/Makefile
@@ -169,6 +169,14 @@ HOST_EXTRACFLAGS += -DCONFIG_FIT_SIGNATURE_MAX_SIZE=0xffffffff
HOST_EXTRACFLAGS += -DCONFIG_FIT_CIPHER
endif
+ifneq ($(CONFIG_SYS_U_BOOT_OFFS),)
+HOSTCFLAGS_kwbimage.o += -DCONFIG_SYS_U_BOOT_OFFS=$(CONFIG_SYS_U_BOOT_OFFS)
+endif
+
+ifneq ($(CONFIG_ARMADA_38X),)
+HOSTCFLAGS_kwbimage.o += -DCONFIG_KWB_SECURE
+endif
+
# MXSImage needs LibSSL
ifneq ($(CONFIG_MX23)$(CONFIG_MX28)$(CONFIG_ARMADA_38X)$(CONFIG_TOOLS_LIBCRYPTO),)
HOSTCFLAGS_kwbimage.o += \
diff --git a/tools/kwbimage.c b/tools/kwbimage.c
index d200ff2425..23d6be3c9a 100644
--- a/tools/kwbimage.c
+++ b/tools/kwbimage.c
@@ -14,6 +14,7 @@
#include <stdint.h>
#include "kwbimage.h"
+#ifdef CONFIG_KWB_SECURE
#include <openssl/bn.h>
#include <openssl/rsa.h>
#include <openssl/pem.h>
@@ -39,10 +40,13 @@ void EVP_MD_CTX_cleanup(EVP_MD_CTX *ctx)
EVP_MD_CTX_reset(ctx);
}
#endif
+#endif
static struct image_cfg_element *image_cfg;
static int cfgn;
+#ifdef CONFIG_KWB_SECURE
static int verbose_mode;
+#endif
struct boot_mode {
unsigned int id;
@@ -237,6 +241,8 @@ image_count_options(unsigned int optiontype)
return count;
}
+#if defined(CONFIG_KWB_SECURE)
+
static int image_get_csk_index(void)
{
struct image_cfg_element *e;
@@ -259,6 +265,8 @@ static bool image_get_spezialized_img(void)
return e->sec_specialized_img;
}
+#endif
+
/*
* Compute a 8-bit checksum of a memory area. This algorithm follows
* the requirements of the Marvell SoC BootROM specifications.
@@ -353,6 +361,7 @@ static uint8_t baudrate_to_option(unsigned int baudrate)
}
}
+#if defined(CONFIG_KWB_SECURE)
static void kwb_msg(const char *fmt, ...)
{
if (verbose_mode) {
@@ -847,6 +856,8 @@ done:
return ret;
}
+#endif
+
static void *image_create_v0(size_t *imagesz, struct image_tool_params *params,
int payloadsz)
{
@@ -977,11 +988,13 @@ static size_t image_headersz_v1(int *hasext)
*hasext = 1;
}
+#if defined(CONFIG_KWB_SECURE)
if (image_get_csk_index() >= 0) {
headersz += sizeof(struct secure_hdr_v1);
if (hasext)
*hasext = 1;
}
+#endif
/*
* The payload should be aligned on some reasonable
@@ -1058,6 +1071,8 @@ err_close:
return -1;
}
+#if defined(CONFIG_KWB_SECURE)
+
int export_pub_kak_hash(RSA *kak, struct secure_hdr_v1 *secure_hdr)
{
FILE *hashf;
@@ -1170,6 +1185,7 @@ int add_secure_header_v1(struct image_tool_params *params, uint8_t *ptr,
return 0;
}
+#endif
static void *image_create_v1(size_t *imagesz, struct image_tool_params *params,
uint8_t *ptr, int payloadsz)
@@ -1177,7 +1193,9 @@ static void *image_create_v1(size_t *imagesz, struct image_tool_params *params,
struct image_cfg_element *e;
struct main_hdr_v1 *main_hdr;
struct register_set_hdr_v1 *register_set_hdr;
+#if defined(CONFIG_KWB_SECURE)
struct secure_hdr_v1 *secure_hdr = NULL;
+#endif
size_t headersz;
uint8_t *image, *cur;
int hasext = 0;
@@ -1253,6 +1271,7 @@ static void *image_create_v1(size_t *imagesz, struct image_tool_params *params,
if (main_hdr->blockid == IBR_HDR_PEX_ID)
main_hdr->srcaddr = cpu_to_le32(0xFFFFFFFF);
+#if defined(CONFIG_KWB_SECURE)
if (image_get_csk_index() >= 0) {
/*
* only reserve the space here; we fill the header later since
@@ -1263,6 +1282,7 @@ static void *image_create_v1(size_t *imagesz, struct image_tool_params *params,
*next_ext = 1;
next_ext = &secure_hdr->next;
}
+#endif
datai = 0;
register_set_hdr = (struct register_set_hdr_v1 *)cur;
@@ -1310,9 +1330,11 @@ static void *image_create_v1(size_t *imagesz, struct image_tool_params *params,
return NULL;
}
+#if defined(CONFIG_KWB_SECURE)
if (secure_hdr && add_secure_header_v1(params, ptr, payloadsz,
headersz, image, secure_hdr))
return NULL;
+#endif
/* Calculate and set the header checksum */
main_hdr->checksum = image_checksum8(main_hdr, headersz);
--
2.30.2

View file

@ -1,155 +0,0 @@
Remove the support for Unity's appindicator.
diff -Naur udiskie-2.0.4/completions/zsh/_udiskie udiskie-2.0.4-new/completions/zsh/_udiskie
--- udiskie-2.0.4/completions/zsh/_udiskie 2020-01-21 01:12:40.000000000 +0100
+++ udiskie-2.0.4-new/completions/zsh/_udiskie 2020-01-23 10:15:46.956141667 +0100
@@ -18,8 +18,6 @@
'(-a)'{-A,--no-automount}"[disable automounting]"
'(-N)'{-n,--notify}"[show popup notifications]"
'(-n)'{-N,--no-notify}"[disable notifications]"
- '(--no-appindicator)'--appindicator"[use appindicator for status icon]"
- '(--appindicator)'--no-appindicator"[don't use appindicator]"
'(-T -s)'{-t,--tray}"[show tray icon]"
'(-T -t)'{-s,--smart-tray}"[auto hide tray icon]"
'(-t -s)'{-T,--no-tray}"[disable tray icon]"
diff -Naur udiskie-2.0.4/doc/udiskie.8.txt udiskie-2.0.4-new/doc/udiskie.8.txt
--- udiskie-2.0.4/doc/udiskie.8.txt 2020-01-21 01:12:40.000000000 +0100
+++ udiskie-2.0.4-new/doc/udiskie.8.txt 2020-01-23 10:16:12.636290647 +0100
@@ -92,12 +92,6 @@
*--no-terminal*::
Disable terminal action.
-*--appindicator*::
- Use AppIndicator3 for the status icon. Use this on Ubuntu/Unity if no icon is shown.
-
-*--no-appindicator*::
- Use Gtk.StatusIcon for the status icon (default).
-
*--password-cache MINUTES*::
Cache passwords for LUKS partitions and set the timeout.
diff -Naur udiskie-2.0.4/udiskie/appindicator.py udiskie-2.0.4-new/udiskie/appindicator.py
--- udiskie-2.0.4/udiskie/appindicator.py 2020-01-21 01:12:40.000000000 +0100
+++ udiskie-2.0.4-new/udiskie/appindicator.py 1970-01-01 01:00:00.000000000 +0100
@@ -1,61 +0,0 @@
-"""
-Status icon using AppIndicator3.
-"""
-
-from gi.repository import Gtk
-from gi.repository import AppIndicator3
-
-from .async_ import Future
-
-
-class AppIndicatorIcon:
-
- """
- Show status icon using AppIndicator as backend. Replaces
- `udiskie.tray.StatusIcon` on ubuntu/unity.
- """
-
- def __init__(self, menumaker, _icons):
- self._maker = menumaker
- self._menu = Gtk.Menu()
- self._indicator = AppIndicator3.Indicator.new(
- 'udiskie',
- _icons.get_icon_name('media'),
- AppIndicator3.IndicatorCategory.HARDWARE)
- self._indicator.set_status(AppIndicator3.IndicatorStatus.PASSIVE)
- self._indicator.set_menu(self._menu)
- # Get notified before menu is shown, see:
- # https://bugs.launchpad.net/screenlets/+bug/522152/comments/15
- dbusmenuserver = self._indicator.get_property('dbus-menu-server')
- self._dbusmenuitem = dbusmenuserver.get_property('root-node')
- self._conn = self._dbusmenuitem.connect('about-to-show', self._on_show)
- self.task = Future()
- menumaker._quit_action = self.destroy
- # Populate menu initially, so libdbusmenu does not ignore the
- # 'about-to-show':
- self._maker(self._menu)
-
- def destroy(self):
- self.show(False)
- self._dbusmenuitem.disconnect(self._conn)
- self.task.set_result(True)
-
- @property
- def visible(self):
- status = self._indicator.get_status()
- return status == AppIndicator3.IndicatorStatus.ACTIVE
-
- def show(self, show=True):
- if show == self.visible:
- return
- status = (AppIndicator3.IndicatorStatus.ACTIVE if show else
- AppIndicator3.IndicatorStatus.PASSIVE)
- self._indicator.set_status(status)
-
- def _on_show(self, menu):
- # clear menu:
- for item in self._menu.get_children():
- self._menu.remove(item)
- # repopulate:
- self._maker(self._menu)
- self._menu.show_all()
diff -Naur udiskie-2.0.4/udiskie/cli.py udiskie-2.0.4-new/udiskie/cli.py
--- udiskie-2.0.4/udiskie/cli.py 2020-01-21 01:12:40.000000000 +0100
+++ udiskie-2.0.4-new/udiskie/cli.py 2020-01-23 10:17:13.064810617 +0100
@@ -287,9 +287,6 @@
-T, --no-tray Disable tray icon
-m MENU, --menu MENU Tray menu [flat/nested]
- --appindicator Use appindicator for status icon
- --no-appindicator Don't use appindicator
-
--password-cache MINUTES Set password cache timeout
--no-password-cache Disable password cache
@@ -312,7 +309,6 @@
'notify': True,
'tray': False,
'menu': 'flat',
- 'appindicator': False,
'file_manager': 'xdg-open',
'terminal': '',
'password_prompt': 'builtin:gui',
@@ -328,7 +324,6 @@
'--no-tray': False,
'--smart-tray': 'auto'}),
'menu': Value('--menu'),
- 'appindicator': Switch('appindicator'),
'file_manager': OptionalValue('--file-manager'),
'password_prompt': OptionalValue('--password-prompt'),
'password_cache': OptionalValue('--password-cache'),
@@ -459,11 +454,7 @@
menu_maker = udiskie.tray.UdiskieMenu(self, icons, actions, flat,
config.quickmenu_actions)
- if options['appindicator']:
- import udiskie.appindicator
- TrayIcon = udiskie.appindicator.AppIndicatorIcon
- else:
- TrayIcon = udiskie.tray.TrayIcon
+ TrayIcon = udiskie.tray.TrayIcon
trayicon = TrayIcon(menu_maker, icons)
return udiskie.tray.UdiskieStatusIcon(trayicon, menu_maker, smart)
diff -Naur udiskie-2.0.4/udiskie.egg-info/SOURCES.txt udiskie-2.0.4-new/udiskie.egg-info/SOURCES.txt
--- udiskie-2.0.4/udiskie.egg-info/SOURCES.txt 2020-01-21 01:12:41.000000000 +0100
+++ udiskie-2.0.4-new/udiskie.egg-info/SOURCES.txt 2020-01-23 10:17:50.657205798 +0100
@@ -25,7 +25,6 @@
test/test_cache.py
test/test_match.py
udiskie/__init__.py
-udiskie/appindicator.py
udiskie/async_.py
udiskie/automount.py
udiskie/cache.py
@@ -47,4 +46,4 @@
udiskie.egg-info/entry_points.txt
udiskie.egg-info/requires.txt
udiskie.egg-info/top_level.txt
-udiskie.egg-info/zip-safe
\ Pas de fin de ligne à la fin du fichier
+udiskie.egg-info/zip-safe

View file

@ -0,0 +1,31 @@
This test fails with "error.CompilationIncorrectlySucceeded".
diff --git a/test/compile_errors.zig b/test/compile_errors.zig
index fd1255c..20d5548 100644
--- a/test/compile_errors.zig
+++ b/test/compile_errors.zig
@@ -2751,15 +2751,15 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
"tmp.zig:3:5: error: dependency on libc must be explicitly specified in the build command",
});
- cases.addTest("libc headers note",
- \\const c = @cImport(@cInclude("stdio.h"));
- \\export fn entry() void {
- \\ _ = c.printf("hello, world!\n");
- \\}
- , &[_][]const u8{
- "tmp.zig:1:11: error: C import failed",
- "tmp.zig:1:11: note: libc headers not available; compilation does not link against libc",
- });
+// cases.addTest("libc headers note",
+// \\const c = @cImport(@cInclude("stdio.h"));
+// \\export fn entry() void {
+// \\ _ = c.printf("hello, world!\n");
+// \\}
+// , &[_][]const u8{
+// "tmp.zig:1:11: error: C import failed",
+// "tmp.zig:1:11: note: libc headers not available; compilation does not link against libc",
+// });
}
cases.addTest("comptime vector overflow shows the index",

View file

@ -0,0 +1,143 @@
This patch replaces the OS-specific detection mechanism by one that solely
relies on environment variables. This has the benefit that said environment
variables can be used as search paths in Guix.
Index: zig-0.8.1/lib/std/zig/system.zig
===================================================================
--- zig-0.8.1.orig/lib/std/zig/system.zig
+++ zig-0.8.1/lib/std/zig/system.zig
@@ -39,101 +39,57 @@ pub const NativePaths = struct {
};
errdefer self.deinit();
- var is_nix = false;
- if (process.getEnvVarOwned(allocator, "NIX_CFLAGS_COMPILE")) |nix_cflags_compile| {
- defer allocator.free(nix_cflags_compile);
-
- is_nix = true;
- var it = mem.tokenize(nix_cflags_compile, " ");
+ // TODO: Support cross-compile paths?
+ if (process.getEnvVarOwned(allocator, "C_INCLUDE_PATH")) |c_include_path| {
+ defer allocator.free(c_include_path);
+ var it = mem.tokenize(c_include_path, ":");
while (true) {
- const word = it.next() orelse break;
- if (mem.eql(u8, word, "-isystem")) {
- const include_path = it.next() orelse {
- try self.addWarning("Expected argument after -isystem in NIX_CFLAGS_COMPILE");
- break;
- };
- try self.addIncludeDir(include_path);
- } else {
- if (mem.startsWith(u8, word, "-frandom-seed=")) {
- continue;
- }
- try self.addWarningFmt("Unrecognized C flag from NIX_CFLAGS_COMPILE: {s}", .{word});
- }
+ const dir = it.next() orelse break;
+ try self.addIncludeDir(dir);
}
} else |err| switch (err) {
error.InvalidUtf8 => {},
error.EnvironmentVariableNotFound => {},
error.OutOfMemory => |e| return e,
}
- if (process.getEnvVarOwned(allocator, "NIX_LDFLAGS")) |nix_ldflags| {
- defer allocator.free(nix_ldflags);
- is_nix = true;
- var it = mem.tokenize(nix_ldflags, " ");
+ if (process.getEnvVarOwned(allocator, "CPLUS_INCLUDE_PATH")) |cplus_include_path| {
+ defer allocator.free(cplus_include_path);
+ var it = mem.tokenize(cplus_include_path, ":");
while (true) {
- const word = it.next() orelse break;
- if (mem.eql(u8, word, "-rpath")) {
- const rpath = it.next() orelse {
- try self.addWarning("Expected argument after -rpath in NIX_LDFLAGS");
- break;
- };
- try self.addRPath(rpath);
- } else if (word.len > 2 and word[0] == '-' and word[1] == 'L') {
- const lib_path = word[2..];
- try self.addLibDir(lib_path);
- } else {
- try self.addWarningFmt("Unrecognized C flag from NIX_LDFLAGS: {s}", .{word});
- break;
- }
+ const dir = it.next() orelse break;
+ try self.addIncludeDir(dir);
}
} else |err| switch (err) {
error.InvalidUtf8 => {},
error.EnvironmentVariableNotFound => {},
error.OutOfMemory => |e| return e,
}
- if (is_nix) {
- return self;
- }
-
- if (comptime Target.current.isDarwin()) {
- try self.addIncludeDir("/usr/include");
- try self.addIncludeDir("/usr/local/include");
- try self.addLibDir("/usr/lib");
- try self.addLibDir("/usr/local/lib");
-
- try self.addFrameworkDir("/Library/Frameworks");
- try self.addFrameworkDir("/System/Library/Frameworks");
-
- return self;
+ if (process.getEnvVarOwned(allocator, "LIBRARY_PATH")) |library_path| {
+ defer allocator.free(library_path);
+ var it = mem.tokenize(library_path, ":");
+ while (true) {
+ const dir = it.next() orelse break;
+ try self.addLibDir(dir);
+ }
+ } else |err| switch (err) {
+ error.InvalidUtf8 => {},
+ error.EnvironmentVariableNotFound => {},
+ error.OutOfMemory => |e| return e,
}
- if (native_target.os.tag != .windows) {
- const triple = try native_target.linuxTriple(allocator);
- const qual = native_target.cpu.arch.ptrBitWidth();
-
- // TODO: $ ld --verbose | grep SEARCH_DIR
- // the output contains some paths that end with lib64, maybe include them too?
- // TODO: what is the best possible order of things?
- // TODO: some of these are suspect and should only be added on some systems. audit needed.
-
- try self.addIncludeDir("/usr/local/include");
- try self.addLibDirFmt("/usr/local/lib{d}", .{qual});
- try self.addLibDir("/usr/local/lib");
-
- try self.addIncludeDirFmt("/usr/include/{s}", .{triple});
- try self.addLibDirFmt("/usr/lib/{s}", .{triple});
-
- try self.addIncludeDir("/usr/include");
- try self.addLibDirFmt("/lib{d}", .{qual});
- try self.addLibDir("/lib");
- try self.addLibDirFmt("/usr/lib{d}", .{qual});
- try self.addLibDir("/usr/lib");
-
- // example: on a 64-bit debian-based linux distro, with zlib installed from apt:
- // zlib.h is in /usr/include (added above)
- // libz.so.1 is in /lib/x86_64-linux-gnu (added here)
- try self.addLibDirFmt("/lib/{s}", .{triple});
+ if (process.getEnvVarOwned(allocator, "DYLD_FRAMEWORK_PATH")) |dyld_framework_path| {
+ defer allocator.free(dyld_framework_path);
+ var it = mem.tokenize(dyld_framework_path, ":");
+ while (true) {
+ const dir = it.next() orelse break;
+ try self.addFrameworkDir(dir);
+ }
+ } else |err| switch (err) {
+ error.InvalidUtf8 => {},
+ error.EnvironmentVariableNotFound => {},
+ error.OutOfMemory => |e| return e,
}
return self;

View file

@ -721,21 +721,20 @@ extracting content or merging files.")
(define-public mupdf (define-public mupdf
(package (package
(name "mupdf") (name "mupdf")
(version "1.18.0") (version "1.19.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://mupdf.com/downloads/archive/" (uri (string-append "https://mupdf.com/downloads/archive/"
"mupdf-" version "-source.tar.xz")) "mupdf-" version "-source.tar.xz"))
(sha256 (sha256
(base32 "16m5sksil22sshxy70xkslsb2qhvcqb1d95i9savnhds1xn4ybar")) (base32 "1i98xqgnzp168hnnhradl8658qsif06wlbvcglz0mmh8wi1rkwrq"))
(patches (search-patches "mupdf-fix-linkage.patch"
"mupdf-CVE-2021-3407.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
;; Remove bundled software. ;; Remove bundled software.
(let* ((keep (list "lcms2")) ; different from our lcms2 package (let* ((keep (list "extract"
"lcms2")) ; different from our lcms2 package
(from "thirdparty") (from "thirdparty")
(kept (string-append from "~temp"))) (kept (string-append from "~temp")))
(mkdir-p kept) (mkdir-p kept)

View file

@ -413,7 +413,7 @@ overlapping images, as well as some command line tools.")
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("openexr" ,openexr) ("openexr" ,openexr-2)
("vigra" ,vigra) ("vigra" ,vigra)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
@ -568,7 +568,7 @@ photographic equipment.")
("libxslt" ,libxslt) ("libxslt" ,libxslt)
("lua" ,lua) ;optional, for plugins ("lua" ,lua) ;optional, for plugins
("opencl-icd-loader" ,opencl-icd-loader) ;optional, for OpenCL support ("opencl-icd-loader" ,opencl-icd-loader) ;optional, for OpenCL support
("openexr" ,openexr) ;optional, for EXR import/export ("openexr" ,openexr-2) ;optional, for EXR import/export
("openjpeg" ,openjpeg) ;optional, for JPEG2000 export ("openjpeg" ,openjpeg) ;optional, for JPEG2000 export
("osm-gps-map" ,osm-gps-map) ;optional, for geotagging view ("osm-gps-map" ,osm-gps-map) ;optional, for geotagging view
("pugixml" ,pugixml) ("pugixml" ,pugixml)
@ -726,7 +726,7 @@ off' shooting directly from the controlling computer.")
("libxi" ,libxi) ("libxi" ,libxi)
("libxmu" ,libxmu) ("libxmu" ,libxmu)
("mesa" ,mesa) ("mesa" ,mesa)
("openexr" ,openexr) ("openexr" ,openexr-2)
("sqlite" ,sqlite) ("sqlite" ,sqlite)
("vigra" ,vigra) ("vigra" ,vigra)
("wxwidgets" ,wxwidgets) ("wxwidgets" ,wxwidgets)

View file

@ -60,7 +60,7 @@
(define-public php (define-public php
(package (package
(name "php") (name "php")
(version "7.4.22") (version "7.4.25")
(home-page "https://secure.php.net/") (home-page "https://secure.php.net/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -68,7 +68,7 @@
"php-" version ".tar.xz")) "php-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1s5xjy1cchlg0vfxic73wy2wip8spfjr094hzzyc76plsbbqq1wf")) "02iw75niazf3zh3ry15k5yjy6ivg49rwzlr8g8w49rgyszqmi9qj"))
(patches (search-patches "php-bug-74093-test.patch")) (patches (search-patches "php-bug-74093-test.patch"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
@ -82,8 +82,7 @@
;;"fileinfo/libmagic" ; a patched version of libmagic ;;"fileinfo/libmagic" ; a patched version of libmagic
'("gd/libgd" '("gd/libgd"
"pcre/pcre2lib" "pcre/pcre2lib"
"xmlrpc/libxmlrpc")) "xmlrpc/libxmlrpc"))))))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags

View file

@ -120,7 +120,7 @@ interfaces with pytest.")
("python-six" ,python-six))) ("python-six" ,python-six)))
(home-page "https://github.com/nicoulaj/pytest-csv") (home-page "https://github.com/nicoulaj/pytest-csv")
(synopsis "CSV reporter for Pytest") (synopsis "CSV reporter for Pytest")
(description "This packages provides a plugin for Pytest that enables a (description "This package provides a plugin for Pytest that enables a
CSV output mode for Pytest. It can be enabled via the @option{--csv} option CSV output mode for Pytest. It can be enabled via the @option{--csv} option
it adds to the Pytest command line interface (CLI).") it adds to the Pytest command line interface (CLI).")
(license license:gpl3+))) (license license:gpl3+)))

View file

@ -4571,13 +4571,13 @@ Python.")
(define-public python-slugify (define-public python-slugify
(package (package
(name "python-slugify") (name "python-slugify")
(version "4.0.1") (version "5.0.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "python-slugify" version)) (uri (pypi-uri "python-slugify" version))
(sha256 (sha256
(base32 "0w22fapghmzk3xdasc4dn7h8sl58l08d1h5zbf72dh80drv1g9b9")))) (base32 "1aww2ncglyii4jkbfjxqhinivawf9zmwifcj32d69gpwp6h86czi"))))
(propagated-inputs (propagated-inputs
`(("python-unidecode" ,python-unidecode) `(("python-unidecode" ,python-unidecode)
("python-text-unidecode" ,python-text-unidecode))) ("python-text-unidecode" ,python-text-unidecode)))
@ -4585,8 +4585,9 @@ Python.")
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda _ (lambda* (#:key tests? #:allow-other-keys)
(invoke "python" "test.py")))))) (when tests?
(invoke "python" "test.py")))))))
(build-system python-build-system) (build-system python-build-system)
(home-page "https://github.com/un33k/python-slugify") (home-page "https://github.com/un33k/python-slugify")
(synopsis "Python Slugify application that handles Unicode") (synopsis "Python Slugify application that handles Unicode")

View file

@ -110,6 +110,7 @@
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev> ;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net> ;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Sébastien Lerique <sl@eauchat.org> ;;; Copyright © 2021 Sébastien Lerique <sl@eauchat.org>
;;; Copyright © 2021 Raphaël Mélotte <raphael.melotte@mind.be>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -4332,7 +4333,7 @@ software version simply.")
(define-public python-deprecated (define-public python-deprecated
(package (package
(name "python-deprecated") (name "python-deprecated")
(version "1.2.5") (version "1.2.13")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4342,13 +4343,14 @@ software version simply.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"14909glxxwwc4b9qpz2b9jdriwzi5n65ichw85xqppap5f79wcwz")))) "0v4ys9xr8lski2r98da99spsj6hjlnnqgnhhmyhrm66myiix885c"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases (modify-phases %standard-phases
(replace 'check (replace 'check
(lambda _ (lambda* (#:key tests? #:allow-other-keys)
(invoke "pytest")))))) (when tests?
(invoke "pytest")))))))
(propagated-inputs (propagated-inputs
`(("python-wrapt" ,python-wrapt))) `(("python-wrapt" ,python-wrapt)))
(native-inputs (native-inputs
@ -18389,14 +18391,14 @@ perform the operations required for synchronizing plain text.")
(define-public python-levenshtein (define-public python-levenshtein
(package (package
(name "python-levenshtein") (name "python-levenshtein")
(version "0.12.0") (version "0.12.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "python-Levenshtein" version)) (uri (pypi-uri "python-Levenshtein" version))
(sha256 (sha256
(base32 (base32
"1c9ybqcja31nghfcc8xxbbz9h60s9qi12b9hr4jyl69xbvg12fh3")))) "1xj60gymwx1jl2ra9razx2wk8nb9cv1i7l8d14qsp8a8s7xra8yw"))))
(build-system python-build-system) (build-system python-build-system)
(home-page "https://github.com/ztane/python-Levenshtein") (home-page "https://github.com/ztane/python-Levenshtein")
(synopsis "Fast computation of Levenshtein distance and string similarity") (synopsis "Fast computation of Levenshtein distance and string similarity")
@ -27051,8 +27053,8 @@ result.")
(home-page "https://github.com/readthedocs/recommonmark") (home-page "https://github.com/readthedocs/recommonmark")
(synopsis "Docutils-compatibility bridge to CommonMark") (synopsis "Docutils-compatibility bridge to CommonMark")
(description (description
"This packages provides a docutils-compatibility bridge to CommonMark, "This package provides a docutils-compatibility bridge to CommonMark that
enabling you to write CommonMark inside of Docutils & Sphinx projects.") lets you write CommonMark inside of Docutils & Sphinx projects.")
(license license:expat))) (license license:expat)))
(define-public python-pyhull (define-public python-pyhull
@ -27125,7 +27127,8 @@ and BMI2).")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1yy62k3cjr6556nbp651w6v4hzl7kz4y75wy2dfqgndgbnixskx2")))) "1yy62k3cjr6556nbp651w6v4hzl7kz4y75wy2dfqgndgbnixskx2"))
(patches (search-patches "python-peachpy-determinism.patch"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
'(#:phases (modify-phases %standard-phases '(#:phases (modify-phases %standard-phases
@ -27660,3 +27663,38 @@ and decorators library. It is useful when changing behavior in existing
code is desired. It includes tools for debugging and testing: code is desired. It includes tools for debugging and testing:
simple mock/record and a complete capture/replay framework.") simple mock/record and a complete capture/replay framework.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public python-ijson
(package
(name "python-ijson")
(version "3.1.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ijson" version))
(sha256
(base32 "1sp463ywj4jv5cp6hsv2qwiima30d09xsabxb2dyq5b17jp0640x"))))
(arguments
`(#:phases
(modify-phases %standard-phases
;; the tests run by the default setup.py require yajl 1.x,
;; but we have 2.x. yajl 1.x support is going to be removed
;; anyway, so use pytest to avoid running the yajl1-related
;; tests. See: https://github.com/ICRAR/ijson/issues/55
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(inputs
;; libyajl is optional, but compiling with it makes faster
;; backends available to ijson:
`(("libyajl", libyajl)))
(native-inputs
`(("python-pytest", python-pytest)))
(build-system python-build-system)
(home-page "https://github.com/ICRAR/ijson")
(synopsis "Iterative JSON parser with Python iterator interfaces")
(description
"Ijson is an iterative JSON parser with standard Python iterator
interfaces.")
(license license:bsd-3)))

View file

@ -380,14 +380,14 @@ SoapySDR library.")
(define-public chirp (define-public chirp
(package (package
(name "chirp") (name "chirp")
(version "20201121") (version "20211016")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://trac.chirp.danplanet.com/chirp_daily/daily-" (uri (string-append "https://trac.chirp.danplanet.com/chirp_daily/daily-"
version "/chirp-daily-" version ".tar.gz")) version "/chirp-daily-" version ".tar.gz"))
(sha256 (sha256
(base32 "092jryb1jn9li6zj243awv6piz1lhghqsm4phrz7j0rgqf76dy4n")))) (base32 "13xzqnhvnw6yipv4izkq0s9ykyl9pc5ifpr1ii8xfp28ch706qyw"))))
(build-system python-build-system) (build-system python-build-system)
(inputs (inputs
`(("python2-libxml2" ,python2-libxml2) `(("python2-libxml2" ,python2-libxml2)
@ -954,7 +954,7 @@ or USB connection.")
(define-public flamp (define-public flamp
(package (package
(name "flamp") (name "flamp")
(version "2.2.05") (version "2.2.07")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -963,7 +963,7 @@ or USB connection.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0ll2wbhyh1sb4iqsypwrd118mrgw3vbsdbz442qhk4r6l8kjzblq")))) (base32 "0rygd5w04nspxdj8qj81gpb3mgijvlmii74s1f4mihqs5kb8nwh6"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
@ -1070,7 +1070,7 @@ you must extend 'udev-service-type' with this package. E.g.:
(define-public hamlib (define-public hamlib
(package (package
(name "hamlib") (name "hamlib")
(version "4.2") (version "4.3.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1078,7 +1078,7 @@ you must extend 'udev-service-type' with this package. E.g.:
"https://github.com/Hamlib/Hamlib/releases/download/" "https://github.com/Hamlib/Hamlib/releases/download/"
version "/hamlib-" version ".tar.gz")) version "/hamlib-" version ".tar.gz"))
(sha256 (sha256
(base32 "1m8gb20i8ga6ndnnw187ry1h4z8wx27v1hl7c610r6ky60pv4072")))) (base32 "0c578m04zs8dllbd4cv6nxb44y0dn8kiapzkih84ycfjzmnkhdrl"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("doxygen" ,doxygen) `(("doxygen" ,doxygen)
@ -2130,6 +2130,7 @@ various hardware.")
(inputs (inputs
`(("airspyhf" ,airspyhf) `(("airspyhf" ,airspyhf)
("alsa-lib" ,alsa-lib) ("alsa-lib" ,alsa-lib)
("codec2" ,codec2)
("fftwf" ,fftwf) ("fftwf" ,fftwf)
("glew" ,glew) ("glew" ,glew)
("glfw" ,glfw) ("glfw" ,glfw)
@ -2144,7 +2145,8 @@ various hardware.")
(arguments (arguments
`(#:tests? #f ; No test suite. `(#:tests? #f ; No test suite.
#:configure-flags '("-DOPT_BUILD_AIRSPY_SOURCE=OFF" #:configure-flags '("-DOPT_BUILD_AIRSPY_SOURCE=OFF"
"-DOPT_BUILD_PLUTOSDR_SOURCE=OFF") "-DOPT_BUILD_PLUTOSDR_SOURCE=OFF"
"-DOPT_BUILD_M17_DECODER=ON")
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'fix-paths (add-after 'unpack 'fix-paths

View file

@ -8684,6 +8684,8 @@ application.")
(build-system ruby-build-system) (build-system ruby-build-system)
(arguments (arguments
'(#:tests? #f)) ; test suite tries to connect to google.com '(#:tests? #f)) ; test suite tries to connect to google.com
(inputs
`(("openssl" ,openssl)))
(native-inputs (native-inputs
`(("ruby-rake-compiler" ,ruby-rake-compiler))) `(("ruby-rake-compiler" ,ruby-rake-compiler)))
(synopsis "Single-threaded network event framework for Ruby") (synopsis "Single-threaded network event framework for Ruby")

View file

@ -440,7 +440,7 @@ mixed.")
(define-public chibi-scheme (define-public chibi-scheme
(package (package
(name "chibi-scheme") (name "chibi-scheme")
(version "0.9") (version "0.10")
(home-page "https://github.com/ashinn/chibi-scheme") (home-page "https://github.com/ashinn/chibi-scheme")
(source (source
(origin (origin
@ -448,17 +448,15 @@ mixed.")
(uri (git-reference (url home-page) (commit version))) (uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "0yhmj0lws3r3bl4ivs31dhlzxqc7f0dinixi904mraz1fmrg3w7f"))))
"1lnap41gl9vg82h557f4rlr69jgmd2gh0iqs6cxm77d39kv1scb8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases `(#:phases
(delete 'configure) (modify-phases %standard-phases
(add-before 'build 'set-cc (delete 'configure)) ; no configure script
(lambda _
(setenv "CC" "gcc"))))
#:make-flags (let ((out (assoc-ref %outputs "out"))) #:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "PREFIX=" out) (list (string-append "PREFIX=" out)
(string-append "CC=" ,(cc-for-target))
(string-append "LDFLAGS=-Wl,-rpath=" out "/lib"))) (string-append "LDFLAGS=-Wl,-rpath=" out "/lib")))
#:test-target "test")) #:test-target "test"))
(synopsis "Small embeddable Scheme implementation") (synopsis "Small embeddable Scheme implementation")

View file

@ -2,7 +2,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com>
;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -36,19 +36,26 @@
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system meson) #:use-module (guix build-system meson)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages aspell)
#:use-module (gnu packages base)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages ebook)
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages groff)
#:use-module (gnu packages less) #:use-module (gnu packages less)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pdf) #:use-module (gnu packages pdf)
#:use-module (gnu packages photo)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-crypto) #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sphinx) #:use-module (gnu packages sphinx)
#:use-module (gnu packages time) #:use-module (gnu packages time)
#:use-module (gnu packages web) #:use-module (gnu packages web)
@ -286,6 +293,104 @@ accounting for new lines and paragraph changes. It also has robust support
for parsing HTML files.") for parsing HTML files.")
(license gpl3+))) (license gpl3+)))
(define-public recoll
(package
(name "recoll")
(version "1.31.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.lesbonscomptes.com/recoll/"
"recoll-" version ".tar.gz"))
(sha256
(base32 "0m1w5hf2n09lbzmzvlrm2lks4lci9vvjxy2mcmgb2avgly7v5vfk"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--disable-webkit"
"--disable-python-module"
"--without-systemd"
(string-append "QMAKEPATH=" (assoc-ref %build-inputs "qtbase")
"/bin/qmake"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-default-data-dir
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "python/recoll/recoll/rclconfig.py"
(("/opt/local")
(assoc-ref outputs "out")))))
(add-after 'install 'wrap-filters
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(mapping
'(("rclps"
"poppler")
("rclpdf.py"
"poppler")
("rclpurple"
"gawk")
("rcllyx"
"libiconv")
("rcltex"
"libiconv")
("rclkwd"
"unzip" "gzip" "tar" "libxslt")
("rclman"
"groff")
("rclgaim"
"gawk" "libiconv")
("rclaptosidman"
"sed")
("rclscribus"
"grep" "gawk" "sed"))))
(for-each
(lambda (program packages)
(wrap-program (string-append out "/share/recoll/filters/" program)
`("PATH" ":" prefix
,(map (lambda (i)
(string-append (assoc-ref inputs i) "/bin"))
packages))))
(map car mapping)
(map cdr mapping))
(wrap-program (string-append out "/share/recoll/filters/rclimg")
`("PERL5LIB" ":" prefix
(,(getenv "PERL5LIB"))))))))))
(inputs
`(("aspell" ,aspell)
("chmlib" ,chmlib)
("inotify-tools" ,inotify-tools)
("libxslt" ,libxslt)
("libxml2" ,libxml2)
("python" ,python)
("qtbase" ,qtbase-5)
("unzip" ,unzip)
("xapian" ,xapian)
("zlib" ,zlib)
;; For filters
("gawk" ,gawk)
("grep" ,grep)
("groff" ,groff)
("gzip" ,gzip)
("libiconv" ,libiconv)
("perl" ,perl)
("perl-image-exiftool" ,perl-image-exiftool)
("poppler" ,poppler)
("sed" ,sed)
("tar" ,tar)))
(native-inputs
`(("pkg-config" ,pkg-config)
("which" ,which)))
(home-page "https://www.lesbonscomptes.com/recoll/")
(synopsis "Find documents based on their contents or file names")
(description "Recoll finds documents based on their contents as well as
their file names. It can search most document formats, but you may need
external applications for text extraction. It can reach any storage place:
files, archive members, email attachments, transparently handling
decompression.")
(license gpl2+)))
(define-public hyperestraier (define-public hyperestraier
(package (package
(name "hyperestraier") (name "hyperestraier")

View file

@ -53,6 +53,7 @@
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages man) #:use-module (gnu packages man)
@ -112,7 +113,8 @@ readers and is needed to communicate with such devices through the
(define-public eid-mw (define-public eid-mw
(package (package
(name "eid-mw") (name "eid-mw")
(version "5.0.14") ;; When updating, remove the short-lived libbsd input and module import!
(version "5.0.28")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -121,7 +123,7 @@ readers and is needed to communicate with such devices through the
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1hyxsbxjjn9hh5p7jlcfb5yplf3n8dg49dfgi8fjp95phis3gbd4")))) (base32 "0fmpdx09a60ndbsvy3m6w77naqy3j6k2ydq6jdcmdvxnr31z7fmf"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
@ -134,6 +136,7 @@ readers and is needed to communicate with such devices through the
("perl" ,perl))) ("perl" ,perl)))
(inputs (inputs
`(("curl" ,curl) `(("curl" ,curl)
("libbsd" ,libbsd)
("openssl" ,openssl) ("openssl" ,openssl)
("gtk+" ,gtk+) ("gtk+" ,gtk+)
("pcsc-lite" ,pcsc-lite) ("pcsc-lite" ,pcsc-lite)
@ -153,22 +156,7 @@ readers and is needed to communicate with such devices through the
(substitute* "scripts/build-aux/genver.sh" (substitute* "scripts/build-aux/genver.sh"
(("/bin/sh") (which "sh")) (("/bin/sh") (which "sh"))
(("^(GITDESC=).*" _ match) (string-append match ,version "\n"))) (("^(GITDESC=).*" _ match) (string-append match ,version "\n")))
(invoke "sh" "./bootstrap.sh"))) (invoke "sh" "./bootstrap.sh"))))))
(add-after 'unpack 'make-reproducible
(lambda _
(substitute* "scripts/mac/create-vers.sh"
(("NOW=.*")
"NOW=1970-01-01\n"))
#t))
;; Remove failing test that was removed upstream after version 5.0.8.
;; See: https://github.com/Fedict/eid-mw/commit/3d1187b1b61118b9ae97607903d3d2fc0bad7518
(add-before 'check 'remove-failing-test
(lambda _
(substitute* "tests/unit/Makefile.am"
(("sign_state ordering cardcom_common")
"sign_state ordering #cardcom_common"))
#t))
)))
(synopsis "Belgian eID Middleware") (synopsis "Belgian eID Middleware")
(description "The Belgian eID Middleware is required to authenticate with (description "The Belgian eID Middleware is required to authenticate with
online services using the Belgian electronic identity card.") online services using the Belgian electronic identity card.")

View file

@ -12,6 +12,7 @@
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org> ;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz> ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -42,18 +43,21 @@
#:use-module (gnu packages bison) #:use-module (gnu packages bison)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages libunistring)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages ruby) #:use-module (gnu packages ruby)
#:use-module (gnu packages shells) #:use-module (gnu packages shells)
#:use-module (gnu packages tmux)) #:use-module (gnu packages tmux)
#:use-module (gnu packages vim))
(define-public boxes (define-public boxes
(package (package
(name "boxes") (name "boxes")
(version "1.3") (version "2.1.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -62,32 +66,43 @@
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0b12rsynrmkldlwcb62drk33kk0aqwbj10mq5y5x3hjf626gjwsi")))) "1bf5rnfiw04ffs1l17zhbg4wvq2vfn2qbz1xmd250xqj15lysw88"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:test-target "test" `(#:test-target "test"
#:make-flags (list (string-append "GLOBALCONF=" #:make-flags (list (string-append "GLOBALCONF="
(assoc-ref %outputs "out") (assoc-ref %outputs "out")
"/etc/boxes-config")) "/etc/boxes-config"))
#:modules
((ice-9 match)
,@%gnu-build-system-modules)
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(delete 'configure) (delete 'configure)
(replace 'install (replace 'install
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let ((dest (assoc-ref outputs "out"))) (let ((out (assoc-ref outputs "out")))
(for-each (lambda (x) (for-each (match-lambda
(install-file (car x) ((source target)
(string-append dest "/" (cdr x)))) (install-file source
'(("src/boxes" . "bin") (string-append out "/" target))))
("doc/boxes.1" . "share/man/man1") '(("out/boxes" "bin/")
("boxes-config" . "etc/"))) ("doc/boxes.1" "share/man/man1/")
#t)))))) ("boxes-config" "etc/")))))))))
(native-inputs `(("flex" ,flex) ("bison" ,bison))) (native-inputs
`(("bison" ,bison)
("flex" ,flex)
;; For the tests.
("xxd" ,xxd)))
(inputs
`(("libunistring" ,libunistring)
("pcre2" ,pcre2)))
(home-page "https://boxes.thomasjensen.com")
(synopsis "Command line ASCII boxes") (synopsis "Command line ASCII boxes")
(description (description
"This command-line filter program draws ASCII-art boxes around your input "This command-line filter program draws ASCII-art boxes around your input
text.") text.")
(home-page "https://boxes.thomasjensen.com/build.html")
(license license:gpl2))) (license license:gpl2)))
(define-public zsh-autosuggestions (define-public zsh-autosuggestions
@ -449,3 +464,51 @@ the UNIX philosophy, these commands are designed to be composed via pipes. A
large collection of functions such as basename, replace, contains or is_dir large collection of functions such as basename, replace, contains or is_dir
are provided as arguments to these commands.") are provided as arguments to these commands.")
(license license:expat))) (license license:expat)))
(define-public rig
(package
(name "rig")
(version "1.11")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/rig/rig/"
version "/rig-"
version ".tar.gz"))
(sha256
(base32
"1f3snysjqqlpk2kgvm5p2icrj4lsdymccmn3igkc2f60smqckgq0"))))
(build-system gnu-build-system)
(arguments `(#:make-flags
(list (string-append "CXX=" ,(cxx-for-target))
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'fix-build
(lambda _
(substitute* "rig.cc"
(("^#include <string>")
"#include <cstring>"))
(substitute* "Makefile"
(("g\\+\\+")
"${CXX} -O2")
(("install -g 0 -m 755 -o 0 -s rig \\$\\(BINDIR\\)")
"install -m 755 -d $(DESTDIR)$(BINDIR)\n\t\
install -m 755 rig $(DESTDIR)$(BINDIR)/rig")
(("install -g 0 -m 644 -o 0 rig.6 \\$\\(MANDIR\\)/man6/rig.6")
"install -m 755 -d $(DESTDIR)$(MANDIR)/man6/\n\t\
install -m 644 rig.6 $(DESTDIR)$(MANDIR)/man6/rig.6")
(("install -g 0 -m 755 -o 0 -d \\$\\(DATADIR\\)")
"install -m 755 -d $(DESTDIR)$(DATADIR)")
(("install -g 0 -m 644 -o 0 data/\\*.idx \\$\\(DATADIR\\)")
"install -m 644 data/*.idx $(DESTDIR)$(DATADIR)")))))
#:tests? #f))
(home-page "http://rig.sourceforge.net")
(synopsis "Random identity generator")
(description
"RIG (Random Identity Generator) generates random, yet real-looking,
personal data. It is useful if you need to feed a name to a Web site, BBS, or
real person, and are too lazy to think of one yourself. Also, if the Web
site/BBS/person you are giving the information to tries to cross-check the
city, state, zip, or area code, it will check out.")
(license license:gpl2+)))

View file

@ -30,14 +30,14 @@
(define-public skalibs (define-public skalibs
(package (package
(name "skalibs") (name "skalibs")
(version "2.10.0.3") (version "2.11.0.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/skalibs/skalibs-" (uri (string-append "https://skarnet.org/software/skalibs/skalibs-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0ka6n5rnxd5sn5lycarf596d5wlak5s535zqqlz0rnhdcnpb105p")))) (base32 "1n9l7mb54dlb0iijjaf446jba6nmq1ql9n39s095ngrk5ahcipwq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f ; no tests exist '(#:tests? #f ; no tests exist
@ -48,8 +48,7 @@
;; and *.so files are reproducible. ;; and *.so files are reproducible.
(substitute* "Makefile" (substitute* "Makefile"
(("\\$\\(wildcard src/lib\\*/\\*.c\\)") (("\\$\\(wildcard src/lib\\*/\\*.c\\)")
"$(sort $(wildcard src/lib*/*.c))")) "$(sort $(wildcard src/lib*/*.c))")))))))
#t)))))
(home-page "https://skarnet.org/software/skalibs/") (home-page "https://skarnet.org/software/skalibs/")
(synopsis "Platform abstraction libraries for skarnet.org software") (synopsis "Platform abstraction libraries for skarnet.org software")
(description (description
@ -62,14 +61,14 @@ and file system operations. It is used by all skarnet.org software.")
(define-public execline (define-public execline
(package (package
(name "execline") (name "execline")
(version "2.8.0.1") (version "2.8.1.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/execline/execline-" (uri (string-append "https://skarnet.org/software/execline/execline-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "1v9swmhw2rcrr9fmkmd7qh8qq0kslhmvxwz2a3bhan9ksabz8wx3")))) (base32 "0msmzf5zwjcsgjlvvq28rd2i0fkdb2skmv8ii0ix8dhyckwwjmav"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs))) (inputs `(("skalibs" ,skalibs)))
(arguments (arguments
@ -104,14 +103,14 @@ complexity.")))
(define-public s6 (define-public s6
(package (package
(name "s6") (name "s6")
(version "2.10.0.3") (version "2.11.0.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/s6/s6-" (uri (string-append "https://skarnet.org/software/s6/s6-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0mw7blp8dwr09z58m9mrxwmmvvpnjzq9klcf1vgm0hbha4qkf88x")))) (base32 "1a3lj0xfhn1w3a4ygqsxy8q4dr3n48hnwml4xzdpz3nrikhy8if5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs) (inputs `(("skalibs" ,skalibs)
("execline" ,execline))) ("execline" ,execline)))
@ -133,8 +132,7 @@ complexity.")))
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/s6-" ,version))) (doc (string-append out "/share/doc/s6-" ,version)))
(copy-recursively "doc" doc) (copy-recursively "doc" doc)))))))
#t))))))
(home-page "https://skarnet.org/software/s6") (home-page "https://skarnet.org/software/s6")
(license isc) (license isc)
(synopsis "Small suite of programs for process supervision") (synopsis "Small suite of programs for process supervision")
@ -150,14 +148,14 @@ functionality with a very small amount of code.")))
(define-public s6-dns (define-public s6-dns
(package (package
(name "s6-dns") (name "s6-dns")
(version "2.3.5.1") (version "2.3.5.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-dns/s6-dns-" (uri (string-append "https://skarnet.org/software/s6-dns/s6-dns-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "0qsgqwdr5ms337fc9f2b4aa5cr7myvbzndvgkgswnrdwszjm078c")))) (base32 "0nczzjprvp6wirzycgf5h32dlgx4r8grzkqhif27n3ii6f5g78yw"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs))) (inputs `(("skalibs" ,skalibs)))
(arguments (arguments
@ -179,14 +177,14 @@ as an alternative to the BIND, djbdns or other DNS clients.")))
(define-public s6-networking (define-public s6-networking
(package (package
(name "s6-networking") (name "s6-networking")
(version "2.4.1.1") (version "2.5.0.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-networking/" (uri (string-append "https://skarnet.org/software/s6-networking/"
"s6-networking-" version ".tar.gz")) "s6-networking-" version ".tar.gz"))
(sha256 (sha256
(base32 "0m55ibx7k2wgrqbpci1n667ij0h925ajzggxalq2pj65kmwcmyx3")))) (base32 "1fn3g9gkwgmnxallhk82f5rly81pnkilj7n49g5fbfmaalsq96mh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs) (inputs `(("skalibs" ,skalibs)
("execline" ,execline) ("execline" ,execline)
@ -222,14 +220,14 @@ clock synchronization.")))
(define-public s6-rc (define-public s6-rc
(package (package
(name "s6-rc") (name "s6-rc")
(version "0.5.2.2") (version "0.5.2.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-rc/s6-rc-" (uri (string-append "https://skarnet.org/software/s6-rc/s6-rc-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "12bzc483jpd16xmhfsfrib84daj1k3kwy5s5nc18ap60apa1r39a")))) (base32 "1xyaplwzvqnb53mg59a7jklakzwsiqivp6qggsry3sbaw4hf3d5j"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs) (inputs `(("skalibs" ,skalibs)
("execline" ,execline) ("execline" ,execline)
@ -263,7 +261,7 @@ environment.")))
(define-public s6-portable-utils (define-public s6-portable-utils
(package (package
(name "s6-portable-utils") (name "s6-portable-utils")
(version "2.2.3.2") (version "2.2.3.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -271,7 +269,7 @@ environment.")))
"https://skarnet.org/software/s6-portable-utils/s6-portable-utils-" "https://skarnet.org/software/s6-portable-utils/s6-portable-utils-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "173nmygkp7ky3093dg4rx3ahvyl7ll86z8qj6pl3jd96xb9s49v6")))) (base32 "132jj5qk8x40kw6lrrn7jiqhvqj9d2h6g6mhl8zma1sp37bg0i84"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs))) (inputs `(("skalibs" ,skalibs)))
(arguments (arguments
@ -295,7 +293,7 @@ systems and other constrained environments, but they work everywhere.")))
(define-public s6-linux-init (define-public s6-linux-init
(package (package
(name "s6-linux-init") (name "s6-linux-init")
(version "1.0.6.3") (version "1.0.6.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -303,7 +301,7 @@ systems and other constrained environments, but they work everywhere.")))
"https://skarnet.org/software/s6-linux-init/s6-linux-init-" "https://skarnet.org/software/s6-linux-init/s6-linux-init-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "1idqjcxhl5wgff8yrsvx2812wahjri2hcs7qs6k62g0sdd8niqr9")))) (base32 "0grqk111d6aqym1c4l9j26fdqcgra1hvwb9vdgylrfbvn1c3hlpb"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("execline" ,execline) `(("execline" ,execline)
@ -341,7 +339,7 @@ all the details.")))
(define-public s6-linux-utils (define-public s6-linux-utils
(package (package
(name "s6-linux-utils") (name "s6-linux-utils")
(version "2.5.1.5") (version "2.5.1.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -349,7 +347,7 @@ all the details.")))
"https://skarnet.org/software/s6-linux-utils/s6-linux-utils-" "https://skarnet.org/software/s6-linux-utils/s6-linux-utils-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 "1fj5ldlrc6bx40pphg29rp3byd6fal6869v85kw86c2kdgrxn063")))) (base32 "0hr49nl0d7a6i5w8cfg43xzvzayb8kpqij9xg7bmw2fyvc2z338z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs))) (inputs `(("skalibs" ,skalibs)))
(arguments (arguments

View file

@ -904,6 +904,38 @@ It is a front end for ii-like chat programs. It uses @code{tail -f} to get the
chat output in the background.") chat output in the background.")
(license license:isc)))) (license license:isc))))
(define-public snooze
(package
(name "snooze")
(version "0.5")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/leahneukirchen/snooze")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02ng3r1gzgpyjia4b60i11dj5bhn3xjsdcbwmxaam6dzb33dmgib"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests.
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
;; Set prefix path to root of package path in store instead
;; of /usr/local.
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://github.com/leahneukirchen/snooze")
(synopsis "Run a command at a particular time")
(description
"@command{snooze} is a tool for waiting until a particular time and then
running a command.")
(license license:cc0)))
(define-public scron (define-public scron
(package (package
(name "scron") (name "scron")

View file

@ -143,7 +143,7 @@ and querying data, exposing task data in multiple formats to other tools.")
(define-public dstask (define-public dstask
(package (package
(name "dstask") (name "dstask")
(version "0.24.1") (version "0.25")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -152,7 +152,7 @@ and querying data, exposing task data in multiple formats to other tools.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "03rl2wh58xd6a80ji43c7ak3h0ysi3ddg570pn8ry24s7s45zsz2")))) (base32 "1m83zc2zqvpcbjng92jvlnk0biw4krv12wjvjas66jbbk3sjghcy"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
`(#:import-path "github.com/naggie/dstask" `(#:import-path "github.com/naggie/dstask"
@ -178,8 +178,7 @@ and querying data, exposing task data in multiple formats to other tools.")
(install-file "dstask" bindir) (install-file "dstask" bindir)
(install-file "dstask-import" bindir) (install-file "dstask-import" bindir)
(install-file ".dstask-bash-completions.sh" bash-completion) (install-file ".dstask-bash-completions.sh" bash-completion)
(install-file ".dstask-zsh-completions.sh" zsh-completion))) (install-file ".dstask-zsh-completions.sh" zsh-completion))))))))
#t)))))
(synopsis "CLI-based TODO manager with git-based sync + markdown notes per task") (synopsis "CLI-based TODO manager with git-based sync + markdown notes per task")
(description "dstask is a personal task tracker that uses git for (description "dstask is a personal task tracker that uses git for
synchronization. It offers a note command to attach a Markdown based note to synchronization. It offers a note command to attach a Markdown based note to

View file

@ -198,7 +198,7 @@ insert mode and command mode where keybindings have different functions.")
(define-public asciinema (define-public asciinema
(package (package
(name "asciinema") (name "asciinema")
(version "2.0.2") (version "2.1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -207,22 +207,13 @@ insert mode and command mode where keybindings have different functions.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "1alcz018jrrpasrmgs8nw775a6pf62xq2xgs54c4mb396prdqy4x"))))
"1a2pysxnp6icyd08mgf66xr6f6j0irnfxdpf3fmzcz31ix7l9kc4"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before 'build 'patch-exec-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((ncurses (assoc-ref inputs "ncurses")))
(substitute* "asciinema/term.py"
(("'tput'")
(string-append "'" ncurses "/bin/tput'"))))
#t))
(replace 'check (replace 'check
(lambda _ (invoke "nosetests" "-v")))))) (lambda _ (invoke "nosetests" "-v"))))))
(inputs `(("ncurses" ,ncurses)))
(native-inputs (native-inputs
;; For tests. ;; For tests.
`(("python-nose" ,python-nose))) `(("python-nose" ,python-nose)))

View file

@ -925,14 +925,14 @@ Octave. TeXmacs is completely extensible via Guile.")
(define-public scintilla (define-public scintilla
(package (package
(name "scintilla") (name "scintilla")
(version "5.1.1") (version "5.1.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (let ((v (apply string-append (string-split version #\.)))) (uri (let ((v (apply string-append (string-split version #\.))))
(string-append "https://www.scintilla.org/scintilla" v ".tgz"))) (string-append "https://www.scintilla.org/scintilla" v ".tgz")))
(sha256 (sha256
(base32 "1d0yjx2wlx4fj5bccxdgfmrr7nzazkw4m08i6h4c0a54sb484yif")))) (base32 "1zgzpbl7yzyqwqlk7l8s8g74ddg02wa6f0w4dkwdp7fp7ayjn9a2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags (list "GTK3=1" "CC=gcc" "-Cgtk") `(#:make-flags (list "GTK3=1" "CC=gcc" "-Cgtk")

Some files were not shown because too many files have changed in this diff Show more