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

View file

@ -1,5 +1,5 @@
;;; 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>
;;;
;;; This file is part of GNU Guix.
@ -59,6 +59,7 @@ (define translated-texi-manuals
;; failed" crash: <https://bugs.gnu.org/47428>.
(computed-file (computed-file-name result)
(computed-file-gexp result)
#:local-build? #f
#:options (computed-file-options result)
#:guile guile-3.0-latest)))))
@ -699,7 +700,7 @@ (define (language->texi-file-name language)
'#$languages)))))
(let* ((name (string-append manual "-html-manual"))
(manual (computed-file name build)))
(manual (computed-file name build #:local-build? #f)))
(syntax-highlighted-html manual
#:mono-node-indexes mono-node-indexes
#:split-node-indexes split-node-indexes
@ -803,7 +804,8 @@ (define (normalize language) ;XXX: deduplicate
opts))))
'#$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)
"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:
@example
guix environment guix --pure
guix shell -D guix --pure
@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
following are the required packages in addition to those mentioned in the
@ -92,10 +92,10 @@ installation instructions (@pxref{Requirements}).
@end itemize
On Guix, extra dependencies can be added by instead running @command{guix
environment} with @option{--ad-hoc}:
shell}:
@example
guix environment guix --pure --ad-hoc help2man git strace
guix shell -D guix help2man git strace --pure
@end example
Run @command{./bootstrap} to generate the build system infrastructure

View file

@ -120,6 +120,7 @@ Documentation License''.
@dircategory Software development
@direntry
* guix shell: (guix)Invoking guix shell. Creating software environments.
* guix environment: (guix)Invoking guix environment. Building development environments with Guix.
* guix build: (guix)Invoking guix build. Building packages.
* guix pack: (guix)Invoking guix pack. Creating binary bundles.
@ -263,6 +264,7 @@ Channels
Development
* Invoking guix shell:: Spawning one-off software environments.
* Invoking guix environment:: Setting up development environments.
* Invoking guix pack:: Creating software bundles.
* 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}).
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
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 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
in the root of their project source tree that can be used to test
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
package definitions. Running @code{guix package -f} on
@ -3343,6 +3345,17 @@ objects, like this:
'("emacs" "guile@@2.2" "guile@@2.2:debug"))
@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
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
this chapter is about.
The @command{guix environment} command provides a convenient way to set up
@dfn{development environments} containing all the dependencies and tools
necessary to work on the software package of your choice. The @command{guix
The @command{guix shell} command provides a convenient way to set up
one-off software environments, be it for development purposes or to run
a command without installing it in your profile. The @command{guix
pack} command allows you to create @dfn{application bundles} that can be
easily distributed to users who do not run Guix.
@menu
* Invoking guix shell:: Spawning one-off software environments.
* Invoking guix environment:: Setting up development environments.
* Invoking guix pack:: Creating software bundles.
* The GCC toolchain:: Working with languages supported by GCC.
* Invoking guix git authenticate:: Authenticating Git repositories.
@end menu
@node Invoking guix environment
@section Invoking @command{guix environment}
@node Invoking guix shell
@section Invoking @command{guix shell}
@cindex reproducible build environments
@cindex development environments
@cindex @command{guix environment}
@cindex environment, package build environment
The purpose of @command{guix environment} is to assist hackers in
creating reproducible development environments without polluting their
package profile. The @command{guix environment} tool takes one or more
packages, builds all of their inputs, and creates a shell
environment to use them.
The purpose of @command{guix shell} is to make it easy to create one-off
software environments, without changing one's profile. It is typically
used to create development environments; it is also a convenient way to
run applications without ``polluting'' your profile.
@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:
@ -5710,6 +6081,11 @@ guix environment --preserve='^DISPLAY$' --container --network \
The available options are summarized below.
@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}
@itemx -r @var{file}
@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}.
@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
dependency graph and associated build procedures, it is often useful to
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
@dots{}
$ 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]# cd foo-1.2
@end example
Here, @command{guix environment -C} creates a container and spawns a new
shell in it (@pxref{Invoking guix environment}). The @command{--ad-hoc
strace gdb} part adds the @command{strace} and @command{gdb} commands to
Here, @command{guix shell -C} creates a container and spawns a new
shell in it (@pxref{Invoking guix shell}). The @command{strace gdb}
part adds the @command{strace} and @command{gdb} commands to
the container, which you may find handy while debugging. The
@option{--no-grafts} option makes sure we get the exact same
environment, with ungrafted packages (@pxref{Security Updates}, for more
@ -11173,7 +11590,7 @@ remove @file{/bin/sh}:
@end example
(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
can run:
@ -13468,8 +13885,8 @@ is subject to radical change in the future.
The purpose of @command{guix container} is to manipulate processes
running within an isolated environment, commonly known as a
``container'', typically created by the @command{guix environment}
(@pxref{Invoking guix environment}) and @command{guix system container}
``container'', typically created by the @command{guix shell}
(@pxref{Invoking guix shell}) and @command{guix system container}
(@pxref{Invoking guix system}) commands.
The general syntax is:
@ -13655,7 +14072,7 @@ listed.}. Here's an example of the information it returns:
$ sudo guix processes
SessionPID: 19002
ClientPID: 19090
ClientCommand: guix environment --ad-hoc python
ClientCommand: guix shell python
SessionPID: 19402
ClientPID: 19367
@ -17362,6 +17779,10 @@ Data type representing the configuration for @code{rsync-service}.
@item @code{package} (default: @var{rsync})
@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})
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
@ -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:
@example
guix environment --ad-hoc tigervnc-client -- \
vncviewer localhost:5900
guix shell tigervnc-client -- vncviewer localhost:5900
@end example
The default configuration (see @code{hurd-vm-configuration} below)
@ -34125,7 +34545,7 @@ guix system delete-generations
@end example
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
guix system delete-generations 2m
@ -35657,12 +36077,27 @@ still in an experimental stage, though.
@section Declaring the Home Environment
The home environment is configured by providing a
@code{home-environment} declaration in a file that can be passed to the
@command{guix home} command (@pxref{Invoking guix home}). 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 dotfiles, before installing any configuration
files, Guix Home will back up existing config files to a separate place
in the home folder.
@command{guix home} command (@pxref{Invoking guix home}). The easiest
way to get started is by generating an initial configuration with
@command{guix home import}:
@example
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
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
environment and extend other parts of it. The extension mechanism
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
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
@section Configuring the Shell
This section is safe to skip if your shell or shells are managed by
@ -36283,7 +36728,7 @@ guix home delete-generations
@end example
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
guix home delete-generations 2m
@ -36313,6 +36758,38 @@ generations that are up to 10 days old:
$ guix home list-generations 10d
@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
@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
-$(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"
-$(AM_V_POXREF)$(xref_command)
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
$(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"
-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" "$@"
$(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_POXREF)$(xref_command)
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
%D%/os-config-%.texi: gnu/system/examples/%.tmpl

View file

@ -1,5 +1,5 @@
# 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>
#
# This file is part of GNU Guix.
@ -28,10 +28,11 @@ _guix_complete_command ()
if [ -z "$_guix_commands" ]
then
# 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 '^ ' \
| sed '-es/^ *\([a-z-]\+\).*$/\1/g')"
fi
COMPREPLY+=($(compgen -W "$_guix_commands" -- "$word_at_point"))
}
@ -71,10 +72,16 @@ _guix_complete_option ()
{
local command="${COMP_WORDS[$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
subcommand=""
fi
local options="$(${COMP_WORDS[0]} $command $subcommand --help 2> /dev/null \
| grep '^ \+-' \
| sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')"
@ -215,7 +222,7 @@ _guix_complete ()
if [[ "$word" = "--" ]]
then
case "$command" in
environment)
environment|shell)
break
;;
time-machine)
@ -228,6 +235,7 @@ _guix_complete ()
case $COMP_CWORD in
$command_index)
_guix_complete_command
_guix_complete_option 0 "$word_at_point"
;;
*)
if [[ "$command" = "package" ]]
@ -265,7 +273,7 @@ _guix_complete ()
else
_guix_complete_available_package_or_store_file "$word_at_point"
fi
elif [[ "$command" = "environment" ]]
elif [[ "$command" = "environment" || "$command" = "shell" ]]
then
if _guix_is_dash_L || _guix_is_dash_m || _guix_is_dash_p || _guix_is_dash_l
then

View file

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

View file

@ -23,6 +23,95 @@
(channel-news
(version 0)
(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
(en "Guix Home is a part of GNU Guix")

View file

@ -131,7 +131,11 @@ (define (run-fs-type-page)
(run-listbox-selection-page
#:info-text (G_ "Please select the file-system type for this partition.")
#: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
#:sort-listbox-items? #f
#:button-text (G_ "Exit")

View file

@ -612,6 +612,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/xdisorg.scm \
%D%/packages/xorg.scm \
%D%/packages/xfce.scm \
%D%/packages/zig.scm \
%D%/packages/zile.scm \
%D%/packages/zwave.scm \
\
@ -1000,9 +1001,8 @@ dist_patch_DATA = \
%D%/packages/patches/desmume-gcc6-fixes.patch \
%D%/packages/patches/desmume-gcc7-fixes.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/disarchive-cross-compilation.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.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/findutils-localstatedir.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/foobillard++-pkg-config.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-xattr.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-avoid-bundled-libraries.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-mumps.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-video-z64-glew-correct-path.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-flask-restful-werkzeug-compat.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-pyfakefs-remove-bad-test.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-glibc-2.27.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/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qt4-ldflags.patch \
@ -1836,12 +1838,12 @@ dist_patch_DATA = \
%D%/packages/patches/tup-unbundle-dependencies.patch \
%D%/packages/patches/tuxpaint-stamps-path.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-rockchip-inno-usb.patch \
%D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \
%D%/packages/patches/u-boot-riscv64-fix-extlinux.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-ffmpeg-compat.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-updates.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 = \
%D%/packages/ld-wrapper.in

View file

@ -12,7 +12,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; 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>
;;;
;;; This file is part of GNU Guix.
@ -343,7 +343,7 @@ (define-public cmh
(define-public giac
(package
(name "giac")
(version "1.7.0-37")
(version "1.7.0-39")
(source
(origin
(method url-fetch)
@ -355,7 +355,7 @@ (define-public giac
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
(base32 "1mzqf7r40ppmzixf4s6sjk76y0wpcf6xp7hklzrn2l1910ld61pz"))))
(base32 "0mmdzhnahiz6hr7a4brnjdmmm4mcaqkigrh1b6n9z5l46bilaii3"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 ftw)
@ -988,6 +988,36 @@ (define-public symengine
(license (list license:expat ;SymEngine
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
(package
(name "eigen")

View file

@ -179,7 +179,7 @@ (define-public synfig
("libxml++" ,libxml++)
("libsigc++" ,libsigc++)
("mlt" ,mlt-6)
("openexr" ,openexr)
("openexr" ,openexr-2)
("pango" ,pango)))
(native-inputs
`(("intltool" ,intltool)

View file

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

View file

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

View file

@ -7331,6 +7331,37 @@ (define-public r-sigpathway
phenotype of interest.")
(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
(package
(name "r-fgsea")

View file

@ -106,6 +106,7 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages java-compression)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages jupyter)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages lsof)
@ -1216,14 +1217,14 @@ (define-public perl-bio-db-hts
(define-public python-biopython
(package
(name "python-biopython")
(version "1.73")
(version "1.76")
(source (origin
(method url-fetch)
;; use PyPi rather than biopython.org to ease updating
(uri (pypi-uri "biopython" version))
(sha256
(base32
"1q55jhf76z3k6is3psis0ckbki7df26x7dikpcc3vhk1vhkwribh"))))
"0wlch9xpa0fpgjzyxi6jsfca6iakaq9a05927xg8vqnmvaccnwrq"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -1244,6 +1245,18 @@ (define-public python-biopython
into separate processes; and more.")
(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
(package-with-python2 python-biopython))
@ -1270,6 +1283,133 @@ (define-public python-fastalite
(define-public python2-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
;; The last release was in 2014 and the recommended way to install from source
;; is to clone the git repository, so we do this.
@ -7448,6 +7588,33 @@ (define-public r-snapatac
single cell ATAC-seq sequencing data.")
(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
(let ((commit
"aecbd56e66802f28e397f5ae1f19403aadd12163")
@ -7576,6 +7743,86 @@ (define-public r-scde
;; See https://github.com/hms-dbmi/scde/issues/38
(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
(package
(name "r-centipede")
@ -7639,6 +7886,46 @@ (define-public r-demultiplex
")
(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
(package
(name "vsearch")
@ -11642,14 +11929,14 @@ (define-public python-drep
(define-public instrain
(package
(name "instrain")
(version "1.5.2")
(version "1.5.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "inStrain" version))
(sha256
(base32
"0ykqlpf6yz4caihsaz3ys00cyvlr7wdj4s9a8rh56q5r8xf80ic0"))))
"05w1lw75x4lwkzg4qpi055g7hdjp9rnc4ksbxg2hfgksq9djk0hx"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -11662,7 +11949,7 @@ (define-public instrain
(("from job_utils")
"from .job_utils")))))))
(inputs
`(("python-biopython" ,python-biopython)
`(("python-biopython" ,python-biopython-1.73)
("python-boto3" ,python-boto3)
("python-h5py" ,python-h5py)
("python-lmfit" ,python-lmfit)
@ -14995,6 +15282,78 @@ (define-public python-coolbox
browser.")
(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
(package
(name "scregseg")

View file

@ -504,13 +504,19 @@ (define %u-boot-sifive-prevent-relocating-initrd-fdt
;; https://bugs.launchpad.net/ubuntu/+source/u-boot/+bug/1937246
(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
(package
(name "u-boot")
(version "2021.07")
(version "2021.10")
(source (origin
(patches
(list %u-boot-rockchip-inno-usb-patch
%u-boot-allow-disabling-openssl-patch
%u-boot-sifive-prevent-relocating-initrd-fdt))
(method url-fetch)
(uri (string-append
@ -518,7 +524,7 @@ (define u-boot
"u-boot-" version ".tar.bz2"))
(sha256
(base32
"0zm7igkdnz0w4ir8rfl2dislfrl0ip104grs5hvd30a5wkm7wari"))))
"1m0bvwv8r62s4wk4w3cmvs888dhv9gnfa98dczr4drk2jbhj7ryd"))))
(native-inputs
`(("bc" ,bc)
("bison" ,bison)
@ -590,7 +596,7 @@ (define-public u-boot-tools
;; See https://bugs.gnu.org/34717 for
;; details.
(("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
;; in u-boot-tools.
(("CONFIG_SOUND=y") "CONFIG_SOUND=n")))
@ -689,6 +695,12 @@ (define-public (make-u-boot-package board triplet)
suffix-len))))
(sort entries string-ci<)))
(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
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -899,7 +911,8 @@ (define-public u-boot-qemu-riscv64-smode
(source (origin
(inherit (package-source u-boot))
(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
(make-u-boot-package "sifive_unleashed" "riscv64-linux-gnu"))

View file

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

View file

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

View file

@ -231,13 +231,15 @@ (define-public cdparanoia
'(begin
;; Make libraries respect LDFLAGS.
(substitute* '("paranoia/Makefile.in" "interface/Makefile.in")
(("-Wl,-soname") "$(LDFLAGS) -Wl,-soname"))
#t))))
(("-Wl,-soname") "$(LDFLAGS) -Wl,-soname"))))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there is no check target
#: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/")
(synopsis "Audio CD reading utility")
(description "Cdparanoia retrieves audio tracks from CDDA capable CDROM

View file

@ -336,8 +336,8 @@ (define* (debian-patch name hash #:optional (revision %debian-revision))
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
(define %chromium-version "94.0.4606.81")
(define %ungoogled-revision "94.0.4606.81-1")
(define %chromium-version "95.0.4638.69")
(define %ungoogled-revision (string-append %chromium-version "-1"))
(define %arch-revision "db2157b84924ce84201a8245e68a02f7d55f6491")
(define %debian-revision "debian/90.0.4430.85-1")
@ -367,7 +367,7 @@ (define %ungoogled-origin
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"113abybh8kkw9a92lj6jww6dl6rc1sv5x7a7a1gjwsihzd2r0cik"))))
"19azr4m4rd6za9vgcggijyq9x54jrjp0n07y4falgjrdz9q4f7aj"))))
(define %guix-patches
(list (local-file
@ -502,7 +502,7 @@ (define-public ungoogled-chromium
%chromium-version ".tar.xz"))
(sha256
(base32
"16755mfqxxmvslm9ix060safrnml91ckj5p85960jj5g5hmslwbh"))
"1rzg48mbd5n75nq2rfwknyxpmfrddds199ic82c736kcgirpv8rq"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@ -598,7 +598,6 @@ (define-public ungoogled-chromium
"rtc_use_h264=true"
"rtc_use_pipewire=true"
"rtc_link_pipewire=true"
"rtc_pipewire_version=\"0.3\""
;; Don't use bundled sources.
"rtc_build_json=true" ;FIXME: libc++ std::string ABI difference
"rtc_build_libevent=false"
@ -651,15 +650,16 @@ (define-public ungoogled-chromium
""))
;; 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 \"lcms2.h\""))
;; Add missing include statement.
(substitute* "third_party/pdfium/core/fxcodec/png/png_decoder.cpp"
(("#include \"core/fxcodec/fx_codec.h\"" all)
(string-append all
"\n#include \"core/fxcodec/fx_codec_def.h\"")))
;; Chromium bundles a pre-release of Harfbuzz 3.0 and uses an
;; experimental API that was removed in 3.0. Adjust to use
;; the updated API (taken from <https://crrev.com/c/3076563>).
(substitute* "components/paint_preview/common/subset_font.cc"
(("hb_subset_input_no_subset_tables_set\\(input\\.get\\(\\)\\)")
"hb_subset_input_set(input.get(), HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG)"))
(substitute*
"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 Arun Isaac <arunisaac@systemreboot.net>
;;; 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 © 2021 Marcel Schilling <marcel.schilling@uni-luebeck.de>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
@ -906,6 +906,27 @@ (define-public r-pheatmap
control over dimensions and appearance.")
(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
(package
(name "r-ecp")
@ -23649,6 +23670,35 @@ (define-public r-forecast
space models and automatic ARIMA modelling.")
(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
(package
(name "r-xmisc")
@ -28581,6 +28631,49 @@ (define-public r-seurat
discovery of differentially expressed genes and markers.")
(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
(package
(name "r-phangorn")
@ -28836,6 +28929,26 @@ (define-public r-lgr
well as email and push notifications.")
(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
(package
(name "r-mlr3measures")
@ -32033,6 +32146,71 @@ (define-public r-logger
formatting and delivering log messages with low overhead.")
(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
(package
(name "r-ggh4x")

View file

@ -20509,7 +20509,7 @@ (define-public rust-home-0.5
(("rust-winapi" ,rust-winapi-0.3))))
(home-page "https://github.com/brson/home")
(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
correct value of @samp{CARGO_HOME} and @samp{RUSTUP_HOME}.")
(license (list license:expat license:asl2.0))))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; 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 © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@ -841,6 +841,41 @@ (define-public libb2
BLAKE.")
(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
(package
(name "rhash")
@ -898,14 +933,14 @@ (define-public rhash
(define-public botan
(package
(name "botan")
(version "2.18.1")
(version "2.18.2")
(source (origin
(method url-fetch)
(uri (string-append "https://botan.randombit.net/releases/"
"Botan-" version ".tar.xz"))
(sha256
(base32
"0adf53drhk1hlpfih0175c9081bqpclw6p2afn51cmx849ib9izq"))))
"0zih8agygp39ff0dwi3fv8y7dnnzpz3y86kcgjbhzlxry49kn6jl"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -918,6 +953,8 @@ (define-public botan
(setenv "CXXFLAGS" "-O3")
(invoke "python" "./configure.py"
(string-append "--prefix=" out)
"--disable-static"
;; Otherwise, the `botan` executable cannot find
;; libbotan.
(string-append "--ldflags=-Wl,-rpath=" lib)
@ -974,8 +1011,8 @@ (define-public ccrypt
(license license:gpl2)))
(define-public asignify
(let ((commit "f58e7977a599f040797975d649ed318e25cbd2d5")
(revision "0"))
(let ((commit "08af003e1f4833713db28b871759d94f9b2b1469")
(revision "1"))
(package
(name "asignify")
(version (git-version "1.1" revision commit))
@ -987,7 +1024,7 @@ (define-public asignify
(file-name (git-file-name name version))
(sha256
(base32
"1zl68qq6js6fdahxzyhvhrpyrwlv8c2zhdplycnfxyr1ckkhq8dw"))))
"1zacpqa8b5lg270z1g06r5ik9vnb91crb4ivyy20381dny82xvr1"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View file

@ -5,7 +5,7 @@
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.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 © 2021 Felix Gruber <felgru@posteo.net>
;;;
@ -756,17 +756,20 @@ (define-public libleak
(license license:gpl2+)))
(define-public mspdebug
;; Last official release was 24 July 2017
(let ((commit "4c4d94e43bc4a18ecf82070ff81cd38dd5641e3b")
(revision "0"))
(package
(name "mspdebug")
(version "0.25")
(version (git-version "0.25" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlbeer/mspdebug")
(commit (string-append "v" version))))
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0prgwb5vx6fd4bj12ss1bbb6axj2kjyriyjxqrzd58s5jyyy8d3c"))))
(base32 "1lgw1dsc1aglyja610ichadvgs5b0df3wlarinczb0ykf431gjln"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
@ -787,4 +790,4 @@ (define-public mspdebug
debugger with support for programming, disassembly and reverse
engineering.")
(home-page "https://github.com/dlbeer/mspdebug")
(license license:gpl2+)))
(license license:gpl2+))))

View file

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

View file

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

View file

@ -151,7 +151,7 @@ (define-public djview
(define-public pdf2djvu
(package
(name "pdf2djvu")
(version "0.9.18")
(version "0.9.18.1")
(source
(origin
(method url-fetch)
@ -159,7 +159,7 @@ (define-public pdf2djvu
"https://github.com/jwilk/pdf2djvu/releases/download/" version
"/pdf2djvu-" version ".tar.xz"))
(sha256
(base32 "0vxa0b3g7zhflc5m6ln4f0hi0shsqyqc3344y7azlllibxc5ba22"))))
(base32 "0c595yziz81c9izf9s5sskd00qmgz2n1hp2vdcgg0dx81g3xfidb"))))
(build-system gnu-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
@ -177,9 +177,12 @@ (define-public pdf2djvu
`(#:test-target "test"
#:phases
(modify-phases %standard-phases
(add-before 'check 'set-home-for-tests
(add-after 'unpack 'fix-tests
(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")
(description
"@code{pdf2djvu} creates DjVu files from PDF files.

View file

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

View file

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

View file

@ -102,6 +102,7 @@
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 Noisytoot <noisytoot@disroot.org>
;;; Copyright © 2021 Simon South <simon@simonsouth.net>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -456,16 +457,16 @@ (define-public emacs-geiser-chez
(define-public emacs-vc-hgcmd
(package
(name "emacs-vc-hgcmd")
(version "1.14")
(source (origin
(version "1.14.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/muffinmad/emacs-vc-hgcmd")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1mm8lnwii53j32v54aahl8sf3ciwymrvc1rgy4nw2m7hcrnjsb78"))))
(base32 "1nlaicza4ds325827ks5gb7zn0nc536k2chq8jwbq34ybvxi93wj"))))
(build-system emacs-build-system)
(home-page "https://github.com/muffinmad/emacs-vc-hgcmd")
(synopsis "Version control (VC) backend for the Mercurial command server")
@ -1718,7 +1719,7 @@ (define-public emacs-ahg
(home-page "https://bitbucket.org/agriggio/ahg")
(synopsis "Emacs front-end for the Mercurial SCM")
(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.")
(license license:gpl3+))))
@ -6414,22 +6415,18 @@ (define-public emacs-irony-eldoc
(license license:gpl3+)))
(define-public emacs-company-quickhelp
;; XXX: release version 2.3.0 is on an unmaintained branch for some reason,
;; so we use the latest 2.2.0 commit instead
(let ((commit "479676cade80a9f03802ca3d956591820ed5c537")
(revision "1"))
(package
(name "emacs-company-quickhelp")
(version (git-version "2.2.0" revision commit))
(version "2.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/expez/company-quickhelp")
(commit commit)))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0hbqpnaf4hnin3nmdzmfj3v22kk9a97b6zssqs96ns36d9h52xcp"))))
(base32 "08ccsfvwdpzpj0gai3xrdb2bv1nl6myjkxsc5774pbvlq9nkfdvr"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-pos-tip" ,emacs-pos-tip)
@ -6438,7 +6435,7 @@ (define-public emacs-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.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-math-symbol-lists
(package
@ -8208,7 +8205,7 @@ (define-public emacs-solaire-mode
(define-public emacs-embark
(package
(name "emacs-embark")
(version "0.10")
(version "0.12")
(source
(origin
(method git-fetch)
@ -8216,7 +8213,7 @@ (define-public emacs-embark
(url "https://github.com/oantolin/embark")
(commit version)))
(sha256
(base32 "063hc0hganws11vjdk3ic0mxm9i0vpw6s7hzbgxvja0gjkdxjldz"))
(base32 "16z7g6ynj4d64wsg49skhwypn5j6awlpsawbz61djsmpzlzjnv36"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
@ -18954,7 +18951,7 @@ (define-public emacs-org-reveal
(define-public emacs-org-re-reveal
(package
(name "emacs-org-re-reveal")
(version "3.12.1")
(version "3.12.3")
(source
(origin
(method git-fetch)
@ -18963,7 +18960,7 @@ (define-public emacs-org-re-reveal
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0hi8lq9rj6i2m14dh75dzq7lq41i4f6qj4xbp2b8krqw6mk9xg7z"))))
(base32 "08ai87b6nybg0l7y8falb53wwvdv8hr3jzj5q995x48ylw6r1582"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-htmlize" ,emacs-htmlize)
@ -21139,7 +21136,7 @@ (define-public emacs-package-lint
(define-public emacs-packed
(package
(name "emacs-packed")
(version "3.0.3")
(version "3.0.4")
(source
(origin
(method git-fetch)
@ -21148,8 +21145,7 @@ (define-public emacs-packed
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"06blk8parnpq3qi6y5628q3v59c8dyi41glb289a0l16248qwphk"))))
(base32 "1gpv2vaci0m48fzn0sy7iwl1mnkkqc30bf05jjrqlpn9kpbjyf1p"))))
(build-system emacs-build-system)
(home-page "https://github.com/emacscollective/packed")
(synopsis "Package manager agnostic Emacs Lisp package utilities")
@ -23439,16 +23435,16 @@ (define-public emacs-repology
(define-public emacs-alect-themes
(package
(name "emacs-alect-themes")
(version "0.9")
(source (origin
(version "0.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alezost/alect-themes")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0nffxpdm0sa7bynwi0rmlwpc4qmvbda5ankhzz7fmk4ap9fkjxv9"))))
(base32 "190clnm5x4hpzrq2wp18vxg6614ly3ciyv0y1sm9rfr9w9z5i0ya"))))
(build-system emacs-build-system)
(home-page "https://github.com/alezost/alect-themes")
(synopsis "Low contrast, light, dark and black color theme for Emacs")
@ -23814,7 +23810,7 @@ (define-public emacs-pfuture
(define-public emacs-treemacs
(package
(name "emacs-treemacs")
(version "2.9.3")
(version "2.9.4")
(source
(origin
(method git-fetch)
@ -23823,7 +23819,7 @@ (define-public emacs-treemacs
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ik7wkv6w5vga29pmj8zzn3lq9a2ww26gkl380hmaak809in6k65"))))
(base32 "1g2fy2qkscqx01av92hpjbr6qld8s1gk59cdjbff8fm0vlx8xk2p"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-ace-window" ,emacs-ace-window)
@ -23895,9 +23891,11 @@ (define-public emacs-treemacs-extra
(name "emacs-treemacs-extra")
(propagated-inputs
`(,@(package-propagated-inputs emacs-treemacs)
("emacs-all-the-icons" ,emacs-all-the-icons)
("emacs-evil" ,emacs-evil)
("emacs-magit" ,emacs-magit)
("emacs-projectile" ,emacs-projectile)
("emacs-perspective" ,emacs-perspective)
("emacs-persp-mode" ,emacs-persp-mode)))
(arguments
(substitute-keyword-arguments
@ -26066,14 +26064,14 @@ (define-public emacs-mastodon
(define-public emacs-ebdb
(package
(name "emacs-ebdb")
(version "0.8.6")
(version "0.8.8")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"ebdb-" version ".tar"))
(sha256
(base32 "0amr1s1q5w4513qw31qsr8gpsfgj5b2j7qn017rmwbaf1mj0k6z0"))))
(base32 "035xakji5vypdpc06qp9yhg8ny7qn80h8kax6cl80p0lljplzrnn"))))
(build-system emacs-build-system)
(home-page "https://github.com/girzel/ebdb")
(synopsis "EIEIO port of BBDB, Emacs's contact-management package")
@ -28655,17 +28653,20 @@ (define-public emacs-pcmpl-args
(license license:gpl3+)))
(define-public emacs-shell-command+
;; XXX: Upstream did not tag last release. The commit below corresponds to
;; the exact version bump.
(let ((commit "bf744c63bbd1e3bbb93407bd32d6da670b23e67e"))
(package
(name "emacs-shell-command+")
(version "2.2.0")
(version "2.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~pkal/shell-command-plus")
(commit version)))
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1micvz6smhjma7qbka8h3w0crb3sgrxf9lz2548iqfgww50gb0lj"))))
(base32 "0prlvcryq5ngrzn5f45rkw09wbr99v7nnwps2bjrjc3wvr2rp6h0"))))
(build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/shell-command+.html")
(synopsis "Extended Emacs @code{shell-command}")
@ -28674,7 +28675,7 @@ (define-public emacs-shell-command+
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 selected region with @code{| tr -d a-z}.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-shell-pop
(let ((commit "4b4394037940a890a313d715d203d9ead2d156a6")
@ -29204,14 +29205,14 @@ (define-public emacs-map
(define-public emacs-xref
(package
(name "emacs-xref")
(version "1.3.0")
(version "1.3.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/xref-"
version ".tar"))
(sha256
(base32 "0bw2cbxmjavzhmpd9gyl41d4c201p535jrfz3b7jb5zw12jdnppl"))))
(base32 "13bsaxdxwn14plaam0hsrswngh3rm2k29v5ybjgjyjy4d5vwz78j"))))
(build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/xref.html")
(synopsis "Cross-referencing commands")
@ -29499,7 +29500,7 @@ (define-public emacs-cwl-mode
`(("emacs-yaml-mode" ,emacs-yaml-mode)))
(home-page "https://github.com/tom-tan/cwl-mode")
(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.")
(license license:gpl3+)))

View file

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

View file

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

View file

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

View file

@ -88,7 +88,7 @@ (define-module (gnu packages file-systems)
(define-public autofs
(package
(name "autofs")
(version "5.1.7")
(version "5.1.8")
(source
(origin
(method url-fetch)
@ -96,7 +96,7 @@ (define-public autofs
"v" (version-major version) "/"
"autofs-" version ".tar.xz"))
(sha256
(base32 "1myfz6a3wj2c4j9h5g44zj796fdi82jhp1s92w2hg6xp2632csx3"))))
(base32 "1zf0fgf6kr9amxq5amlgsp1v13sizwl3wvx2xl7b4r2nhmci0gdk"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -118,8 +118,7 @@ (define-public autofs
(lambda _
(substitute* "configure"
(("^searchpath=\".*\"")
"searchpath=\"$PATH\""))
#t))
"searchpath=\"$PATH\""))))
(add-before 'configure 'fix-rpath
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -132,8 +131,7 @@ (define-public autofs
(lambda _
(substitute* "modules/Makefile"
(("ln -fs lookup_yp.so" match)
(string-append "# " match)))
#t)))))
(string-append "# " match))))))))
(native-inputs
`(("bison" ,bison)
("flex" ,flex)
@ -416,8 +414,8 @@ (define-public gphotofs
(license license:gpl2+)))
(define-public bcachefs-tools
(let ((commit "37850436dd7dfbe67738749c4d4a2506ffff1ec3")
(revision "11"))
(let ((commit "f9f57789de567726f7cfa46bd13df4b0815d137a")
(revision "12"))
(package
(name "bcachefs-tools")
(version (git-version "0.1" revision commit))
@ -429,7 +427,7 @@ (define-public bcachefs-tools
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "040vgxrimahmfs9rhlggfwg0bzl7h9j2ksx3563rh63asjwlhnhi"))))
(base32 "13442qpmv7hywkpbnbwlg2sfhlfh16qxry1xwlv35vch2qnzlhrq"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@ -509,7 +507,17 @@ (define-public bcachefs-tools/static
(substitute-keyword-arguments (package-arguments bcachefs-tools)
((#:make-flags 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
`(("eudev:static" ,eudev "static")
("libscrypt:static" ,libscrypt "static")

View file

@ -116,7 +116,7 @@ (define-module (gnu packages finance)
(define-public bitcoin-core-0.21
(package
(name "bitcoin-core")
(version "0.21.1")
(version "0.21.2")
(source (origin
(method url-fetch)
(uri
@ -124,7 +124,7 @@ (define-public bitcoin-core-0.21
version "/bitcoin-" version ".tar.gz"))
(sha256
(base32
"1q51nqv64lhng5wh1cqb01jar7iswpnyyb1i7xslbkr0j9227zya"))))
"17nvir1yc6mf4wr1fn4xsabw49cd5p9vig8wj77vv4anzi8zfij1"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -1778,7 +1778,17 @@ (define-public ta-lib
(base32 "0lf69nna0aahwpgd9m9yjzbv2fbfn081djfznssa84f0n7y1xx4z"))))
(build-system gnu-build-system)
(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: cannot stat '.deps/gen_code-gen_code.Tpo': No such file or directory
;; Makefile:254: recipe for target 'gen_code-gen_code.o' failed

View file

@ -465,7 +465,7 @@ (define-public ovmf-arm
(define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
(package
(name (string-append "arm-trusted-firmware-" platform))
(version "2.4")
(version "2.5")
(source
(origin
(method git-fetch)
@ -476,7 +476,7 @@ (define* (make-arm-trusted-firmware platform #:optional (arch "aarch64"))
(file-name (git-file-name "arm-trusted-firmware" version))
(sha256
(base32
"12k0n79j156bdzqws18kpbli04kn00nh6dy42pjv6gakqrkx9px3"))))
"0w3blkqgmyb5bahlp04hmh8abrflbzy0qg83kmj1x9nv4mw66f3b"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View file

@ -8,6 +8,7 @@
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -50,7 +51,8 @@ (define-module (gnu packages flashing-tools)
#:use-module (gnu packages libusb)
#:use-module (gnu packages libftdi)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages qt))
#:use-module (gnu packages qt)
#:use-module (gnu packages tls))
(define-public flashrom
(package
@ -196,7 +198,7 @@ (define-public dfu-programmer
(define-public dfu-util
(package
(name "dfu-util")
(version "0.10")
(version "0.11")
(source (origin
(method url-fetch)
(uri (string-append
@ -204,7 +206,7 @@ (define-public dfu-util
version ".tar.gz"))
(sha256
(base32
"0hlvc47ccf5hry13saqhc1j5cdq5jyjv4i05kj0mdh3rzj6wagd0"))))
"17piiyp08pccqmbhnswv957lkypmmm92kps79hypxvw23ai3pddl"))))
(build-system gnu-build-system)
(inputs
`(("libusb" ,libusb)))
@ -526,3 +528,55 @@ (define-public srecord
manipulating EPROM load files. It reads and writes numerous EPROM file
formats, and can perform many different manipulations.")
(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 @@ (define-public font-anonymous-pro-minus
(define-public font-gnu-unifont
(package
(name "font-gnu-unifont")
(version "13.0.06")
(version "14.0.01")
(source
(origin
(method url-fetch)
@ -753,22 +753,21 @@ (define-public font-gnu-unifont
(string-append "mirror://gnu/unifont/unifont-"
version "/unifont-" version ".tar.gz")))
(sha256
(base32 "09g91g0gv76sadslp70m5xwfk3jf8kh7rpk2pz3l2hpldnjggpk8"))))
(base32 "0wkdn8h20pprna5a3hbny0qk2mgksrbxs2y6ng6qarj6rkpdmlbs"))))
(build-system gnu-build-system)
(outputs '("out" ; TrueType version
"pcf" ; PCF (bitmap) version
"psf" ; PSF (console) version
"bin")) ; Utilities to manipulate '.hex' format
(arguments
'(#:tests? #f ; no check target
`(#:tests? #f ; no check target
#:make-flags
(list (string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(replace
'configure
(lambda _ (setenv "CC" "gcc") #t))
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(delete 'configure)
(replace 'install
(lambda* (#:key make-flags outputs #:allow-other-keys)
(let* ((ttf (string-append (assoc-ref outputs "out")
"/share/fonts/truetype"))
(pcf (string-append (assoc-ref outputs "pcf")
@ -776,18 +775,17 @@ (define-public font-gnu-unifont
(psf (string-append (assoc-ref outputs "psf")
"/share/consolefonts"))
(bin (assoc-ref outputs "bin")))
(invoke "make"
(apply invoke "make" "install"
(string-append "PREFIX=" bin)
(string-append "TTFDEST=" ttf)
(string-append "PCFDEST=" pcf)
(string-append "CONSOLEDEST=" psf)
"install")
make-flags)
;; Move Texinfo file to the right place.
(mkdir (string-append bin "/share/info"))
(invoke "gzip" "-9n" "doc/unifont.info")
(install-file "doc/unifont.info.gz"
(string-append bin "/share/info"))
#t))))))
(string-append bin "/share/info"))))))))
(inputs
`(("perl" ,perl))) ; for utilities
(synopsis
@ -845,7 +843,7 @@ (define-public font-google-roboto
(define-public font-borg-sans-mono
(package
(name "font-borg-sans-mono")
(version "0.3.2")
(version "0.3.3")
(source
(origin
(method url-fetch)
@ -854,7 +852,7 @@ (define-public font-borg-sans-mono
"/releases/download/v" version "/borg-sans-mono.zip"))
(sha256
(base32
"0q16gw3ry9hpgbl2636qq00ap59xyx15jf3gzvx2ybz3gja164c4"))))
"0xzi866ag9w4q114bn984yjfy72pmfs563v5yy1rkbqycphgwwyp"))))
(build-system font-build-system)
(home-page "https://github.com/charje/borg-sans-mono")
(synopsis "The Borg Sans Mono font")
@ -1968,25 +1966,25 @@ (define-public font-jetbrains-mono
(define-public font-juliamono
(package
(name "font-juliamono")
(version "0.031")
(version "0.043")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cormullion/juliamono")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"https://github.com/cormullion/juliamono/releases/download/"
"v" version "/JuliaMono-ttf.tar.gz"))
(sha256
(base32 "0pcz2qaw0g0gak4plvhgg3m76h4gamffa373r52dzx0qwn1i1cf1"))))
(base32
"0vb7n9yqgasnxzps13ckklay5bla6b0i79pzmfqvjms1r37079gh"))))
(build-system font-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'delete-website-folder
;; This folder contains other unrelated fonts.
(lambda _
(delete-file-recursively "website")
#t)))))
`(#:phases (modify-phases %standard-phases
(replace 'unpack
(lambda* (#:key source #:allow-other-keys)
(mkdir "source")
(chdir "source")
(invoke "tar" "xzf" source))))))
(native-inputs `(("tar" ,tar)))
(home-page "https://github.com/cormullion/juliamono")
(synopsis "Monospaced font for programming")
(description

View file

@ -846,7 +846,7 @@ (define-public nototools
(define-public fcft
(package
(name "fcft")
(version "2.4.5")
(version "2.4.6")
(home-page "https://codeberg.org/dnkl/fcft")
(source (origin
(method git-fetch)
@ -854,7 +854,7 @@ (define-public fcft
(file-name (git-file-name name version))
(sha256
(base32
"0z4bqap88pydkgcxrsvm3fmcyhi9x7z8knliarvdcvqlk7qnyzfh"))))
"0jh05wzrif7z1xf9jzs8bgf49lpj5zs55agj414bmmwdddk7my7j"))))
(build-system meson-build-system)
(native-inputs
`(("check" ,check)
@ -888,7 +888,7 @@ (define-public fcft
(define-public fontmanager
(package
(name "fontmanager")
(version "0.8.4")
(version "0.8.7")
(source
(origin
(method git-fetch)
@ -897,8 +897,7 @@ (define-public fontmanager
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"09rv0srpj8ann2n1zpv1frlpxz0x10d2y21c5lys7pmfngljlxi9"))))
(base32 "0nyda2a6vbzyz4sn9mmrr8bkifzxmmjp7x9a3c4s6n925ccy79cn"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -935,7 +934,7 @@ (define-public fontmanager
(define-public fntsample
(package
(name "fntsample")
(version "5.3")
(version "5.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -944,7 +943,7 @@ (define-public fntsample
(file-name (git-file-name name version))
(sha256
(base32
"02rx3gp7k472304vhjwb129nw10a29s4nvgs7i2m6bpjhlk2xgs5"))))
"0pcqqdriv6hq64zrqd9vhdd9p2vhimjnajcxdz10qnqgrkmm751v"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; There are no tests.
@ -965,8 +964,7 @@ (define-public fntsample
"/lib/perl5/site_perl/"
,(package-version perl))))
(wrap-program (string-append out "/bin/pdfoutline")
`("PERL5LIB" ":" prefix (,perllib)))
#t))))))
`("PERL5LIB" ":" prefix (,perllib)))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)))
@ -979,13 +977,15 @@ (define-public fntsample
("perl-pdf-api2" ,perl-pdf-api2)
("perl-libintl-perl" ,perl-libintl-perl)
("unicode-blocks"
,(origin
,(let ((version "14.0.0"))
(origin
(method url-fetch)
(uri "https://unicode.org/Public/UNIDATA/Blocks.txt")
(file-name "unicode-blocks.txt")
(uri (string-append "https://unicode.org/Public/"
version "/ucd/Blocks.txt"))
(file-name (string-append "unicode-blocks-" version ".txt"))
(sha256
(base32
"1xs8fnhh48gs41wg004r7m4r2azh9khmyjjlnvyzy9c6zrd212x2"))))))
"05vzgrvfp35mgxjgkm4wnxjjgzva8n6545i9jxd4pczpvvfp122r")))))))
(home-page "https://github.com/eugmes/fntsample")
(synopsis "PDF and PostScript font samples generator")
(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 Robby Zambito <contact@robbyzambito.me>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2055,17 +2056,14 @@ (define-public python-cchardet
(define-public udiskie
(package
(name "udiskie")
(version "2.1.0")
(version "2.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "udiskie" version))
(sha256
(base32
"0smib8vbs9q37n7ynhzyw97q16fgdkcdw7fw69lci0xvyq00v1dz"))
;; Remove support for the libappindicator library of the
;; Unity desktop environment which is not in Guix.
(patches (search-patches "udiskie-no-appindicator.patch"))))
"0sagdmsc5km32h3jvgj843p8bicrrgfz26qhl04ibxmas6725zr0"))))
(build-system python-build-system)
(native-inputs
`(("asciidoc" ,asciidoc)
@ -2074,6 +2072,7 @@ (define-public udiskie
(inputs
`(("gobject-introspection" ,gobject-introspection)
("gtk+" ,gtk+)
("libappindicator" ,libappindicator)
("libnotify" ,libnotify)
("udisks" ,udisks)))
(propagated-inputs
@ -2350,16 +2349,15 @@ (define-public libportal
(define-public xdg-desktop-portal
(package
(name "xdg-desktop-portal")
(version "1.8.1")
(version "1.10.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/xdg-desktop-portal")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"https://github.com/flatpak/xdg-desktop-portal/releases/download/"
version "/xdg-desktop-portal-" version ".tar.xz"))
(sha256
(base32
"0pq0kmvzk56my396vh97pzw4wizwmlmzvv2kr2xv047x3044mr5n"))))
"199lqr2plsy9qqnxx5a381ml8ygcbz4nkjla5pvljjcrwzlqsygd"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -2410,16 +2408,15 @@ (define-public xdg-desktop-portal
(define-public xdg-desktop-portal-gtk
(package
(name "xdg-desktop-portal-gtk")
(version "1.7.1")
(version "1.10.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/xdg-desktop-portal-gtk")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"https://github.com/flatpak/xdg-desktop-portal-gtk/releases/download/"
version "/xdg-desktop-portal-gtk-" version ".tar.xz"))
(sha256
(base32
"183iha9dxmvprn99ymgz17jx1lyn1fj5jyj6ghxl716zn9mxmird"))))
"0nlbnd6qvs92fanrmmn123vy0y2ml0v3ndxyk5x0cpfbnmxpa2f8"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases
@ -2430,13 +2427,21 @@ (define-public xdg-desktop-portal-gtk
(for-each (lambda (po)
(chmod po #o666))
(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
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("xdg-desktop-portal" ,xdg-desktop-portal)
("glib:bin" ,glib "bin")
("which" ,which)
("gettext" ,gettext-minimal)))
@ -2446,10 +2451,8 @@ (define-public xdg-desktop-portal-gtk
("fontconfig" ,fontconfig)
("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
(native-search-paths
(list (search-path-specification
(variable "XDG_DESKTOP_PORTAL_DIR")
(files '("share/xdg-desktop-portal/portals")))))
(propagated-inputs
`(("xdg-desktop-portal" ,xdg-desktop-portal)))
(home-page "https://github.com/flatpak/xdg-desktop-portal-gtk")
(synopsis "GTK implementation of xdg-desktop-portal")
(description
@ -2499,7 +2502,7 @@ (define-public xdg-desktop-portal-wlr
(define-public waypipe
(package
(name "waypipe")
(version "0.8.0")
(version "0.8.1")
(source
(origin
(method git-fetch)
@ -2508,22 +2511,13 @@ (define-public waypipe
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1qa47ljfvb1vv3h647xwn1j5j8gfmcmdfaz4j8ygnkvj36y87vnz"))))
(base32 "1v08dv3dfz420v51ahz7qgv3429073kmgrf8f66s4c3jlpch2pa1"))))
(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
`(("pkg-config" ,pkg-config)
("scdoc" ,scdoc)
;; For tests
("python" ,python)
("coreutils" ,coreutils)))
("python" ,python)))
(home-page "https://gitlab.freedesktop.org/mstoeckl/waypipe")
(synopsis "Proxy for Wayland protocol applications")
(description

View file

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

View file

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

View file

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

View file

@ -268,7 +268,7 @@ (define-public gegl
("libtiff" ,libtiff)
("libwebp" ,libwebp)
("maxflow" ,maxflow)
("openexr" ,openexr)
("openexr" ,openexr-2)
("pango" ,pango)
("poppler" ,poppler)
("sdl2" ,sdl2)))
@ -355,7 +355,7 @@ (define-public gimp
("libmng" ,libmng) ; optional, MNG support
("librsvg" ,librsvg) ; optional, SVG support
("libxcursor" ,libxcursor) ; optional, Mouse Cursor support
("openexr" ,openexr) ; optional, EXR support
("openexr" ,openexr-2) ; optional, EXR support
("openjpeg" ,openjpeg) ; optional, JPEG 2000 support
("poppler" ,poppler) ; optional, PDF support
("poppler-data" ,poppler-data) ; optional, PDF support

View file

@ -4588,8 +4588,7 @@ (define-public dconf
;; much longer than the default of 30 seconds.
(substitute* "tests/meson.build"
(("test\\(unit_test\\[0\\], exe" all)
(string-append all ", timeout : 90")))
#t)))))
(string-append all ", timeout: 300"))))))))
(home-page "https://developer.gnome.org/dconf/")
(synopsis "Low-level GNOME configuration system")
(description "Dconf is a low-level configuration system. Its main purpose
@ -12251,7 +12250,7 @@ (define-public gnome-builder
(define-public komikku
(package
(name "komikku")
(version "0.35.1")
(version "0.35.2")
(source
(origin
(method git-fetch)
@ -12261,7 +12260,7 @@ (define-public komikku
(file-name (git-file-name name version))
(sha256
(base32
"0975c55lmiwaqm0wj0ci91a90syjan3i99akrp0hl9m7r73jnfh9"))))
"11iq2mc8k7ny70vb0iqfjhj1hii0wvr4cv2p6b5rnjqdp6hc63n9"))))
(build-system meson-build-system)
(arguments
`(#: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 Andy Tai <atai@atai.org>
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -573,7 +574,7 @@ (define-public blender
("libxrender" ,libxrender)
("opencolorio" ,opencolorio)
("openimageio" ,openimageio)
("openexr" ,openexr)
("openexr" ,openexr-2)
("opensubdiv" ,opensubdiv)
("ilmbase" ,ilmbase)
("openjpeg" ,openjpeg)
@ -672,7 +673,7 @@ (define-public blender-2.79
("libx11" ,libx11)
("opencolorio" ,opencolorio)
("openimageio" ,openimageio)
("openexr" ,openexr)
("openexr" ,openexr-2)
("ilmbase" ,ilmbase)
("openjpeg" ,openjpeg)
("libjpeg" ,libjpeg-turbo)
@ -800,6 +801,28 @@ (define-public cgal
;; permissive licenses.
(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
(package
(name "ilmbase")
@ -1087,19 +1110,49 @@ (define-public ogre
(license license:expat)))
(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
(name "openexr")
(version (package-version ilmbase))
(source (origin
(inherit (package-source ilmbase))
(file-name (git-file-name "openexr" version))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* (find-files "OpenEXR" "tmpDir\\.h")
(("\"/var/tmp/\"")
"\"/tmp/\""))
#t))))
(file-name (git-file-name "openexr" version))))
(build-system cmake-build-system)
(arguments
`(#:phases
@ -1108,6 +1161,12 @@ (define-public openexr
(lambda _
(chdir "OpenEXR")
#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
(lambda _
;; On armhf-linux, we need to override the CTest default
@ -1133,13 +1192,10 @@ (define-public openexr
(propagated-inputs
`(("ilmbase" ,ilmbase) ;used in public headers
("zlib" ,zlib))) ;OpenEXR.pc reads "-lz"
(home-page "https://www.openexr.com/")
(synopsis "High-dynamic range file format library")
(description
"OpenEXR is a high dynamic-range (HDR) image file format developed for
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)))
(home-page (package-home-page openexr))
(synopsis (package-synopsis openexr))
(description (package-description openexr))
(license (package-license openexr))))
(define-public openimageio
(package
@ -1171,7 +1227,7 @@ (define-public openimageio
("libjpeg" ,libjpeg-turbo)
("libtiff" ,libtiff)
("giflib" ,giflib)
("openexr" ,openexr)
("openexr" ,openexr-2)
("ilmbase" ,ilmbase)
("pugixml" ,pugixml)
("python" ,python-wrapper)
@ -1259,6 +1315,56 @@ (define-public openscenegraph-3.4
`(("libjpeg" ,libjpeg-turbo)
,@(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
;; OpenMW prefers its own fork of openscenegraph:
@ -1324,7 +1430,7 @@ (define-public povray
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("openexr" ,openexr)
("openexr" ,openexr-2)
("sdl" ,sdl)
("zlib" ,zlib)))
(arguments
@ -1445,7 +1551,7 @@ (define-public ctl
(arguments '(#:tests? #f)) ;no 'test' target
;; Headers include OpenEXR and IlmBase headers.
(propagated-inputs `(("openexr" ,openexr)))
(propagated-inputs `(("openexr" ,openexr-2)))
(home-page "http://ampasctl.sourceforge.net")
(synopsis "Color Transformation Language")

View file

@ -773,7 +773,7 @@ (define-public gst-plugins-bad
("mesa" ,mesa)
("neon" ,neon)
("openal" ,openal)
("openexr" ,openexr)
("openexr" ,openexr-2)
("openjpeg" ,openjpeg)
("openssl" ,openssl)
("opus" ,opus)

View file

@ -7,6 +7,7 @@
;;; Copyright © 2021 Denis Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -59,6 +60,7 @@ (define-module (gnu packages hardware)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix git-download)
@ -568,6 +570,32 @@ (define-public msr-tools
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+
(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
(package
(name "wavemon")

View file

@ -18,6 +18,7 @@
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;;
;;; This file is part of GNU Guix.
;;;
@ -57,6 +58,7 @@ (define-module (gnu packages image-processing)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages geo)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gimp)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
@ -161,7 +163,7 @@ (define-public mia
("maxflow" ,maxflow)
("niftilib" ,niftilib)
("nlopt" ,nlopt)
("openexr" ,openexr)
("openexr" ,openexr-2)
("python-lxml" ,python2-lxml)
("vtk" ,vtk)))
(native-inputs
@ -231,7 +233,7 @@ (define-public opencolorio
;; ocioconvert fails: error: conflicting declaration ?typedef void
;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*)
`(("lcms" ,lcms)
("openexr" ,openexr)
("openexr" ,openexr-2)
("tinyxml" ,tinyxml)))
(home-page "https://opencolorio.org")
(synopsis "Color management for visual effects and animation")
@ -635,7 +637,7 @@ (define-public opencv
("libwebp" ,libwebp)
("zlib" ,zlib)
("gtkglext" ,gtkglext)
("openexr" ,openexr)
("openexr" ,openexr-2)
("ilmbase" ,ilmbase)
("gtk+" ,gtk+-2)
("python-numpy" ,python-numpy)
@ -701,7 +703,7 @@ (define-public vips
("libwebp" ,libwebp)
("matio" ,matio)
("niftilib" ,niftilib)
("openexr" ,openexr)
("openexr" ,openexr-2)
("orc" ,orc)
("pango" ,pango)
("poppler" ,poppler)))
@ -753,7 +755,7 @@ (define-public gmic
("libtiff" ,libtiff)
("libx11" ,libx11)
;;("opencv" ,opencv) ;OpenCV is currently broken in the CI
("openexr" ,openexr)
("openexr" ,openexr-2)
("zlib" ,zlib)))
(home-page "https://gmic.eu/")
(synopsis "Full-featured framework for digital image processing")
@ -801,6 +803,25 @@ (define-public gmic-qt-krita
(assoc-ref %build-inputs "gmic") "/lib")))))
(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
(package
(name "nip2")
@ -840,7 +861,7 @@ (define-public nip2
("matio" ,matio)
("lcms" ,lcms)
("libwebp" ,libwebp)
("openexr" ,openexr)
("openexr" ,openexr-2)
("poppler" ,poppler)
("gsl" ,gsl)))
(native-inputs

View file

@ -546,7 +546,7 @@ (define-public luminance-hdr
("libpng" ,libpng)
("libjpeg" ,libjpeg-turbo)
("lcms" ,lcms)
("openexr" ,openexr)
("openexr" ,openexr-2)
("fftw" ,fftwf)
("gsl" ,gsl)
("libtiff" ,libtiff)))

View file

@ -11,7 +11,7 @@
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20162021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; 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 © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017,2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -1168,7 +1168,7 @@ (define-public freeimage
("libraw" ,libraw)
("libtiff" ,libtiff)
("libwebp" ,libwebp)
("openexr" ,openexr)
("openexr" ,openexr-2)
("openjpeg" ,openjpeg)
("zlib" ,zlib)))
(synopsis "Library for handling popular graphics image formats")
@ -1209,7 +1209,7 @@ (define-public vigra
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("openexr" ,openexr)
("openexr" ,openexr-2)
("python" ,python-wrapper)
("python-numpy" ,python-numpy)
("zlib" ,zlib)))
@ -1362,18 +1362,25 @@ (define-public libmng
(define-public exiv2
(package
(name "exiv2")
(version "0.27.4")
(version "0.27.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.exiv2.org/builds/exiv2-" version
"-Source.tar.gz"))
(sha256
(base32 "0klhxkxvkzzzcqpzv8jb56pykq0gyhb6rk9vc2kzjahngjx6sdl4"))))
(base32 "1qm6bvj28l42km009nc60gffn1qhngc0m2wjlhf90si3mcc8d99m"))))
(build-system cmake-build-system)
(arguments
'(#: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
`(("expat" ,expat)
("zlib" ,zlib)))
@ -1421,7 +1428,7 @@ (define-public devil
("libmng" ,libmng)
("libpng" ,libpng)
("libtiff" ,libtiff)
("openexr" ,openexr)
("openexr" ,openexr-2)
("zlib" ,zlib)))
(synopsis "Library for manipulating many image formats")
(description "Developer's Image Library (DevIL) is a library to develop
@ -1433,7 +1440,7 @@ (define-public devil
(define-public jasper
(package
(name "jasper")
(version "2.0.32")
(version "2.0.33")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1442,7 +1449,7 @@ (define-public jasper
(file-name (git-file-name name version))
(sha256
(base32
"0hhggh2jxp1wn7nwzvbx2z1vi1ih8wmz4av17bljyn0c3mxjs22k"))))
"0p3fj89gkhd2ys5ci75cwb6p7rvb2pf52jd8c9d4g76qp846njnx"))))
(build-system cmake-build-system)
(inputs
`(("libjpeg" ,libjpeg-turbo)))
@ -2364,7 +2371,7 @@ (define-public mypaint
(define-public phockup
(package
(name "phockup")
(version "1.5.9")
(version "1.7.1")
(source
(origin
(method git-fetch)
@ -2374,7 +2381,7 @@ (define-public phockup
(file-name (git-file-name name version))
(sha256
(base32
"13ajj0xch7yfqaaxbw0awxs0fz17n1rxir4gqh2wcgxjysqk1j2y"))))
"0nqd89g4ppwc96gxyh9npain7ipnzj66p6n3irsvhrpi4k54h388"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("src" "share/phockup/")
@ -2394,11 +2401,18 @@ (define-public phockup
(let ((out (assoc-ref outputs "out")))
(mkdir (string-append out "/bin"))
(symlink (string-append out "/share/phockup/phockup.py")
(string-append out "/bin/phockup")))
#t)))))
(string-append out "/bin/phockup")))))
(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
`(("perl-image-exiftool" ,perl-image-exiftool)
("python" ,python)))
("python" ,python)
("python-tqdm" ,python-tqdm)))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-mock" ,python-pytest-mock)))

View file

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

View file

@ -36,6 +36,7 @@ (define-module (gnu packages julia-jll)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
@ -522,6 +523,55 @@ (define-public julia-glib-jll
(description "This package provides a wrapper for the glib library.")
(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
(package
(name "julia-gumbo-jll")

View file

@ -561,6 +561,38 @@ (define-public julia-chainrulestestutils
dependencies, while keeping @code{ChainRulesCore.jl} as light-weight as possible.")
(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
(package
(name "julia-colors")
@ -624,11 +656,11 @@ (define-public julia-colortypes
(file-name (git-file-name name version))
(sha256
(base32 "0n7h70caqv7yd0khjhn90iax62r73mcif8qzkwj5b4q46li1r8ih"))))
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(build-system julia-build-system)
(propagated-inputs
`(("julia-fixedpointnumbers" ,julia-fixedpointnumbers)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaGraphics/ColorTypes.jl")
(synopsis "Basic color types and constructor")
(description "This minimalistic package serves as the foundation for
@ -806,14 +838,12 @@ (define-public julia-coordinatetransformations
(sha256
(base32 "15zbkn32v7xlz7559s0r5a0vkwmjwsswxaqpzijly4lky4jnp33d"))))
(build-system julia-build-system)
(arguments
`(#:tests? #f)) ; Documenter.jl not packaged yet.
(propagated-inputs
`(("julia-staticarrays" ,julia-staticarrays)))
;(native-inputs
; `(("julia-documenter" ,julia-documenter)
; ("julia-forwarddiff" ,julia-forwarddiff)
; ("julia-unitful" ,julia-unitful)))
(native-inputs
`(("julia-documenter" ,julia-documenter)
("julia-forwarddiff" ,julia-forwarddiff)
("julia-unitful" ,julia-unitful)))
(home-page "https://github.com/JuliaGeometry/CoordinateTransformations.jl")
(synopsis "Coordinate transformations in Julia")
(description "@code{CoordinateTransformations} is a Julia package to manage
@ -1745,6 +1775,31 @@ (define-public julia-functionwrappers
arbitrary functions.")
(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
(package
(name "julia-fuzzycompletions")
@ -1840,6 +1895,73 @@ (define-public julia-genericschur
matrices the Schur form is often more useful.")
(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
(package
(name "julia-graphics")
@ -2326,6 +2448,39 @@ (define-public julia-indirectarrays
indexed images, sometimes called \"colormap images\" or \"paletted images.\"")
(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
(package
(name "julia-inifile")
@ -2463,11 +2618,11 @@ (define-public julia-irtools
(file-name (git-file-name name version))
(sha256
(base32 "11334fcg2slpwcj0raxf457brhf7pxglgxc6cy8q58ggrpxqfqql"))))
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(build-system julia-build-system)
(propagated-inputs
`(("julia-macrotools" ,julia-macrotools)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/FluxML/IRTools.jl")
(synopsis "Simple and flexible IR format")
(description "This package provides a simple and flexible IR format,
@ -2810,6 +2965,32 @@ (define-public julia-measures
resolving them into absolute units.")
(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
(package
(name "julia-missings")
@ -3125,10 +3306,10 @@ (define-public julia-paddedviews
(sha256
(base32 "0ran2vj6ahlzib0g77y7g0jhavy3k9s2mqq23ybpgp9z677wf26h"))))
(build-system julia-build-system)
(arguments
'(#:tests? #f)) ;require Documenter, not packaged yet
(propagated-inputs
`(("julia-offsetarrays" ,julia-offsetarrays)))
(native-inputs
`(("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaArrays/PaddedViews.jl")
(synopsis "Add virtual padding to the edges of an array")
(description "@code{PaddedViews} provides a simple wrapper type,
@ -4125,8 +4306,7 @@ (define-public julia-stackviews
(base32 "1fwiaxdpx1z9dli3jr8kyraych0jbdiny3qklynf0r13px25r6i7"))))
(build-system julia-build-system)
(arguments
`(#:tests? #f ; Documenter.jl not packaged yet
#:phases
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-doctest
(lambda _
@ -4135,9 +4315,9 @@ (define-public julia-stackviews
#t)))))
(propagated-inputs
`(("julia-offsetarrays" ,julia-offsetarrays)))
;(native-inputs
; `(("julia-aqua" ,julia-aqua)
; ("julia-documenter" ,julia-documenter)))
(native-inputs
`(("julia-aqua" ,julia-aqua)
("julia-documenter" ,julia-documenter)))
(home-page "https://github.com/JuliaArrays/StackViews.jl")
(synopsis "No more catcat")
(description "StackViews provides only one array type: @code{StackView}.
@ -4541,6 +4721,34 @@ (define-public julia-tracker
automatic differentiation for its machine learning platform.")
(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
(package
(name "julia-typedtables")

View file

@ -1814,7 +1814,7 @@ (define-public kimageformats
("pkg-config" ,pkg-config)))
(inputs
`(("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)))
(arguments
`(#:phases

View file

@ -522,7 +522,7 @@ (define-public krita
("libx11" ,libx11)
("libxcb" ,libxcb)
("libxi" ,libxi)
("openexr" ,openexr)
("openexr" ,openexr-2)
("perl" ,perl)
("poppler-qt5" ,poppler-qt5)
("qtbase" ,qtbase-5)

View file

@ -57,6 +57,7 @@
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021 Josselin Poiret <josselin.poiret@protonmail.ch>
;;; Copyright © 2021 Olivier Dion <olivier.dion@polymtl.ca>
;;;
;;; This file is part of GNU Guix.
;;;
@ -351,17 +352,17 @@ (define (%upstream-linux-source version hash)
;; The current "stable" kernels. That is, the most recently released major
;; 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 deblob-scripts-5.14
(linux-libre-deblob-scripts
linux-libre-5.14-version
linux-libre-5.14-gnu-revision
(base32 "00vv2a51cvw2nx8iazmiy9i4h3jj9gvvpwz9gxp2v1hcmrsxq935")
(base32 "11zax57brk8bl75q68c71xsdlvslj48wpmrv8rh34sb8wym9n4mc")
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
(define-public linux-libre-5.14-pristine-source
(let ((version linux-libre-5.14-version)
(hash (base32 "0dswxf1qk70lms5lph15i7nz3ybwiia58v8zzrmi71ajviwjc9wd")))
(hash (base32 "01m4qw1z7xn3ngsbm1bvcvikqpkjjr9n8585556wkmz9d469mwvl")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.14)))
@ -369,92 +370,92 @@ (define-public linux-libre-5.14-pristine-source
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <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 deblob-scripts-5.10
(linux-libre-deblob-scripts
linux-libre-5.10-version
linux-libre-5.10-gnu-revision
(base32 "19d1pdsilq1ycnx1zw3vhf9mwdxbi5nmgzm0g1kj1lkkf1y4i1mv")
(base32 "1swy3y851jnnmk3hc0khllpsifb98camlwyskpn1dyvjsgjljd8x")
(base32 "024rz0bp3n3r5nkwbib7byx10d72c2fh5cw9iv00diyzgnp819g7")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0xhf0g5pra27hnavpy0y3mn05m5hqn5rd3d6fx0a3vr35c1jicpd")))
(hash (base32 "140qkvs88b5zh6mxxzpf36z1r8bbvyh3yigripqjz1k236x0j2j8")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
linux-libre-5.4-gnu-revision
(base32 "1cdxljvmivdwcy9v9fr5iv0x0d1884pf3876p9nzrly599lz2wnl")
(base32 "1nlgk8ajb5wl3aa96h9a0pb9j5a5wmrbpk63varn557x1d00r7wj")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "0jaz57sd51xqc7w8k3f43bfc5mdsh1413mdngqqsgr8isv4hg7vd")))
(hash (base32 "1zkpqfhrc5n0yiij3jzvzywgabva53c8668f1ly1pkrzcbj77zh6")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
linux-libre-4.19-gnu-revision
(base32 "1hiaagdyfy6b0f9ivdy7zq0cd6akaj6v3c4nzikrgsk12vgc1a1q")
(base32 "06pqv050bkii0hc2v7ymny5264w1bca8db0dp1pw9mfmjg865am5")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "1m3y5gsf5s8bb4jxkri20dlxi8aiqabzaijj2h1svz4r19ca8j7v")))
(hash (base32 "0i08np4gxiks7chp6j328pdqb02apbba53mj4zvxb9v37qpxzqgz")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.14
(linux-libre-deblob-scripts
linux-libre-4.14-version
linux-libre-4.14-gnu-revision
(base32 "0cnax38650m9sxiwvc1xm5saymlsmx427j3jqpx34df2ah2rnrwf")
(base32 "02rxvr0gmxb3zfsyyzdmzgfq04gkdkv1cc38md0xfl0mxzdzdfyk")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "0zbf6gxm8iwf7cra310gfd0zyj8l9ckdahky9w6wb9wlznwkvd54")))
(hash (base32 "1mgl55c8fa2ry4qp0phkdkzjhwfnkbhvi266n348kyjyqnjl234f")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.9
(linux-libre-deblob-scripts
linux-libre-4.9-version
linux-libre-4.9-gnu-revision
(base32 "1n74ddrifnw06hx7ih2sk8jaiqlm1jyyhswyjpxiyhrrcvjcilch")
(base32 "0nai5m4rbh37qaj1xf2qj7656l2gacfh0847q5d07y22b048fq5n")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "0id62p43dmkl9ir278p0dsfg3q7m1d8rlxv0c9qi1pzalkygv8p2")))
(hash (base32 "0v5592v565bl924c23m1n7p5zddr0w7zn8m97pmikk6p7cyhjq9n")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
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 deblob-scripts-4.4
(linux-libre-deblob-scripts
linux-libre-4.4-version
linux-libre-4.4-gnu-revision
(base32 "11397dgj6cdfv6anxrj7jwgvnqvwh5i0ci6c8mb85ry6h4fnfmq4")
(base32 "1mmnv77432la5dkhpy1n8w59c0v6l08fyf2ggh294gyrx8nbci11")
(base32 "1a0k9i8gnzkyvfr80f8xw2fnxfwddhz1pzicz9fh0y3jzzkzk45p")))
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
(hash (base32 "028w3yzmzymy7l1nf3n1pfbg95hfi4ilphkyl00ddgj8sfm542c7")))
(hash (base32 "1dcx58nmzkcc5nz2b5b7mgw4w7y28v3s9wd8h78czdqfa0kxrl20")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@ -1226,7 +1227,7 @@ (define-public acpi-call-linux-module
(define-public corefreq
(package
(name "corefreq")
(version "1.86.7")
(version "1.87.4")
(source
(origin
(method git-fetch)
@ -1235,7 +1236,7 @@ (define-public corefreq
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1k8pyxcahc78kcc8q1h76dr91i1r33jciqhgkajkz3xa28qx8mhn"))))
(base32 "01g1smhfzb02gmfjm8c7rchc79dan9jc9pv9c0f8f7fly2hy5zvs"))))
(build-system linux-module-build-system)
(outputs (list "out" "linux-module"))
(arguments
@ -5820,7 +5821,7 @@ (define-public freefall
(define-public thinkfan
(package
(name "thinkfan")
(version "1.2.2")
(version "1.3.0")
(source
(origin
(method git-fetch)
@ -5829,7 +5830,7 @@ (define-public thinkfan
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "01l1pnj1cgy3dwgyys2s5iqzyv6kk47vlpy09qjafk8py21ijik3"))))
(base32 "1whdhf3aw0g4xwbn1csy2wz6g1hw5nlw64r91nnxba9qn25nl9k4"))))
(build-system cmake-build-system)
(arguments
`(#:modules ((guix build cmake-build-system)
@ -8288,6 +8289,71 @@ (define-public lttng-ust
to ring buffers shared with a consumer daemon.")
(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
(package
(name "kexec-tools")

View file

@ -1,5 +1,13 @@
;;; 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 Charles Jackson <charles.b.jackson@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -16,6 +24,9 @@
;;; You should have received a copy of the GNU General Public License
;;; 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)
#:use-module (gnu packages)
#:use-module ((guix licenses) #:prefix license:)
@ -24,10 +35,474 @@ (define-module (gnu packages lisp-check)
#:use-module (guix git-download)
#:use-module (guix build-system asdf))
;;; Commentary:
;;;
;;; This module only contains Common Lisp libraries related to code testing
;;; facilities.
(define-public sbcl-1am
(let ((commit "8b1da94eca4613fd8a20bdf63f0e609e379b0ba5"))
(package
(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
(let ((commit "6c0990f594abcf5887e8d80f1035e3b60454b61b")
@ -60,4 +535,313 @@ (define-public ecl-nst
(define-public cl-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 @@ (define-public dovecot
(package
(name "dovecot")
;; Also update dovecot-pigeonhole when updating to a new minor version.
(version "2.3.16")
(version "2.3.17")
(source
(origin
(method url-fetch)
@ -1904,7 +1904,7 @@ (define-public dovecot
(version-major+minor version) "/"
"dovecot-" version ".tar.gz"))
(sha256
(base32 "04ngqv5mml5z0i4p7fkchp4xw2awy7x7mq2mim9frnav0m9iv9q3"))))
(base32 "1y9dpn4jgzrfjibp5zrc11bdk0q843d998kxhpxkyfm2fz6i4i12"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -1939,8 +1939,7 @@ (define-public dovecot
(("sleep") (which "sleep")))
(substitute* (list "src/lib-smtp/test-bin/sendmail-exit-1.sh"
"src/lib-smtp/test-bin/sendmail-success.sh")
(("cat") (which "cat")))
#t))
(("cat") (which "cat")))))
(replace 'install
(lambda* (#:key make-flags #:allow-other-keys)
;; Simple hack to avoid installing a trivial README in /etc.
@ -1961,7 +1960,7 @@ (define-public dovecot-pigeonhole
(let ((dovecot-version (version-major+minor (package-version dovecot))))
(package
(name "dovecot-pigeonhole")
(version "0.5.16")
(version "0.5.17")
(source
(origin
(method url-fetch)
@ -1969,7 +1968,7 @@ (define-public dovecot-pigeonhole
"https://pigeonhole.dovecot.org/releases/" dovecot-version "/"
"dovecot-" dovecot-version "-pigeonhole-" version ".tar.gz"))
(sha256
(base32 "0f79qsiqnhaxn7mrrfcrnsjyv6357kzb7wa0chhfd69vwa06g8sw"))
(base32 "0j6ng173hh5iiqxdkxfb5v9djpn39gxdrv5ki7i22cf5cqwq47h3"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1978,8 +1977,7 @@ (define-public dovecot-pigeonhole
(substitute* "configure"
(("doc/rfc/Makefile") ""))
(substitute* "doc/Makefile.in"
(("rfc ") ""))
#t))))
(("rfc ") ""))))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -2007,8 +2005,7 @@ (define-public dovecot-pigeonhole
(substitute* "src/managesieve-login/managesieve-login-settings.c"
(("\\.executable = \"managesieve-login\"")
(string-append ".executable = \"" libexec
"/managesieve-login\"")))
#t))))))
"/managesieve-login\"")))))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs

View file

@ -1315,7 +1315,7 @@ (define-public hdf5-1.10
(define-public hdf5-1.12
(package
(inherit hdf5-1.8)
(version "1.12.0")
(version "1.12.1")
(source
(origin
(method url-fetch)
@ -1329,7 +1329,7 @@ (define-public hdf5-1.12
(take (string-split version #\.) 2))
"/src/hdf5-" version ".tar.bz2")))
(sha256
(base32 "0qazfslkqbmzg495jafpvqp0khws3jkxa0z7rph9qvhacil6544p"))
(base32 "074g3z504xf77ff38igs30i1aqxpm508p7yw78ykva7dncrgbyda"))
(patches (search-patches "hdf5-config-date.patch"))))))
(define-public hdf5
@ -2224,6 +2224,163 @@ (define-public libflame
includes a complete LAPACK implementation.")
(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
(package
(name "ceres-solver")
@ -5663,6 +5820,65 @@ (define-public z3
theories} (SMT) solver. It provides a C/C++ API, as well as Python bindings.")
(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
(package
(name "elpa")

View file

@ -1039,14 +1039,14 @@ (define-public znc
(define-public python-nbxmpp
(package
(name "python-nbxmpp")
(version "2.0.2")
(version "2.0.4")
(source
(origin
(method url-fetch)
(uri
(pypi-uri "nbxmpp" version))
(sha256
(base32 "1482fva70i01w60fk70c0fhqmqgzi1fb4xflllz2v6c8mdqkd1m3"))))
(base32 "1s2phiipq7ks8vrd93p96dzd5wgmgg8q9h2rxsnh2gg7iy06gj9c"))))
(build-system python-build-system)
(native-inputs
`(("glib:bin" ,glib "bin")))
@ -1068,7 +1068,7 @@ (define-public python-nbxmpp
(define-public gajim
(package
(name "gajim")
(version "1.3.2")
(version "1.3.3")
(source
(origin
(method url-fetch)
@ -1077,7 +1077,7 @@ (define-public gajim
(version-major+minor version)
"/gajim-" version ".tar.gz"))
(sha256
(base32 "1vjzv8zg9s393xw81klcgbkn4h6j2blzla9iil5kqfrw7wmldskh"))
(base32 "1337qkpcv7j0fgws9scnk82mn2l7s17060vmrbh3ihinmxmbxg6x"))
(patches (search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch"))))
(build-system python-build-system)
(arguments
@ -1091,13 +1091,6 @@ (define-public gajim
(guix build utils))
#: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
(lambda _
;; Tests require a running X server.
@ -1105,8 +1098,7 @@ (define-public gajim
(setenv "DISPLAY" ":1")
;; For missing '/etc/machine-id'.
(setenv "DBUS_FATAL_WARNINGS" "0")
(invoke "dbus-launch" "python" "./setup.py" "test")
#t))
(invoke "dbus-launch" "python" "./setup.py" "test")))
(add-after 'install 'glib-or-gtk-compile-schemas
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas))
(add-after 'install 'glib-or-gtk-wrap
@ -1122,8 +1114,7 @@ (define-public gajim
(wrap-program file
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))))
'("gajim" "gajim-remote" "gajim-history-manager")))
#t)))))
'("gajim" "gajim-remote" "gajim-history-manager"))))))))
(native-search-paths
(list
(search-path-specification

View file

@ -7,6 +7,7 @@
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -256,6 +257,29 @@ (define-public qd
and numerical quadrature programs are included.")
(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
(package
(name "tomsfastmath")

View file

@ -1865,7 +1865,7 @@ (define-public tascam-gtk
(define-public bsequencer
(package
(name "bsequencer")
(version "1.8.0")
(version "1.8.10")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1874,11 +1874,12 @@ (define-public bsequencer
(file-name (git-file-name name version))
(sha256
(base32
"0w7iwzz2r4a699fi24qk71vv2k3jpl9ylzlgmvyc3rlgad0m01k1"))))
"0w3m7x0619iq8rafcy0bal4gwh9m9h7iq93q7gkpxhv6dq58ix6l"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:tests? #f ; there are none
#:phases
(modify-phases %standard-phases
@ -1900,7 +1901,7 @@ (define-public bchoppr
(package
(inherit bsequencer)
(name "bchoppr")
(version "1.8.0")
(version "1.10.10")
(source
(origin
(method git-fetch)
@ -1909,8 +1910,7 @@ (define-public bchoppr
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1nd6byy75f0rbz9dm9drhxmpsfhxhg0y7q3v2m3098llynhy9k2j"))))
(base32 "0gxz0cpxdfj7ajcd9yg05d26i7p24mx5865vy3ph76ni8kycdlrc"))))
(synopsis "Audio stream-chopping LV2 plugin")
(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).
@ -1922,7 +1922,7 @@ (define-public bshapr
(package
(inherit bsequencer)
(name "bshapr")
(version "0.9")
(version "0.13")
(source
(origin
(method git-fetch)
@ -1931,7 +1931,7 @@ (define-public bshapr
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "04zd3a178i2nivg5rjailzqvc5mlnilmhj1ziygmbhshbrywplri"))))
(base32 "1qr3fxqcplgb6iqi2vxc27jghhv6qsidww2by15zb2vs34yh73pl"))))
(synopsis "Beat/envelope shaper LV2 plugin")
(description "B.Shapr is a beat/envelope shaper LV2 plugin.")
(home-page "https://github.com/sjaehn/BShapr")
@ -1941,7 +1941,7 @@ (define-public bjumblr
(package
(inherit bsequencer)
(name "bjumblr")
(version "1.4.2")
(version "1.6.8")
(source
(origin
(method git-fetch)
@ -1950,8 +1950,7 @@ (define-public bjumblr
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0kl6hrxmqrdf0195bfnzsa2h1073fgiqrfhg2276fm1954sm994v"))))
(base32 "00fgax8aqqggs54pjpagw5pc30kgxaghh8mrzpqwhs06cnchcam9"))))
(inputs
`(("cairo" ,cairo)
("libsndfile" ,libsndfile)
@ -1966,7 +1965,7 @@ (define-public bschaffl
(package
(inherit bsequencer)
(name "bschaffl")
(version "1.2.0")
(version "1.4.8")
(source
(origin
(method git-fetch)
@ -1975,8 +1974,7 @@ (define-public bschaffl
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1c09acqrbd387ba41f8ch1qykdap5h6cg9if5pgd16i4dmjnpghj"))))
(base32 "1kfc75xhj365fwl8cbvhg5chwz1snzcvf4929flds02ljylc7k6d"))))
(inputs
`(("cairo" ,cairo)
("fontconfig" ,fontconfig)
@ -6271,7 +6269,7 @@ (define-public mamba
(define-public dpf-plugins
(package
(name "dpf-plugins")
(version "1.3")
(version "1.4")
(source
(origin
(method git-fetch)
@ -6281,17 +6279,15 @@ (define-public dpf-plugins
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1hsfmpv3kvpiwk8nfw9xpaipzy0n27i83y2v1yr93lznwm5rqrbs"))))
(base32 "0y7qvpfm34g6f7d786c6c9043dlbg5c4h71l2s24dsc9m8i7x2ww"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#: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
(modify-phases %standard-phases
(add-before 'build 'set-CC-variable
(lambda _ (setenv "CC" "gcc") #t))
(delete 'configure))))
(inputs
`(("cairo" ,cairo)
@ -6487,7 +6483,7 @@ (define-public zrythm
(define-public dragonfly-reverb
(package
(name "dragonfly-reverb")
(version "3.2.1")
(version "3.2.5")
(source
(origin
(method git-fetch)
@ -6499,11 +6495,12 @@ (define-public dragonfly-reverb
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "0vfm2510shah67k87mdyar4wr4vqwii59y9lqfhwm6blxparkrqa"))))
(base32 "14kia9wjs0nqfx4psnr3vf4x6hihkf80gb0mjzmdnnnk4cnrdydm"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:make-flags (list "CC=gcc")
#:make-flags
(list (string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure) ;no configure target
@ -6527,8 +6524,7 @@ (define-public dragonfly-reverb
(and
(equal? (dirname name) "bin")
(not (string-suffix? ".so" name))
(not (string-suffix? ".lv2" name))))))
#t))))))
(not (string-suffix? ".lv2" name))))))))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs

View file

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

View file

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

View file

@ -145,8 +145,8 @@ (define-public guix
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.3.0")
(commit "c3c502896b1454b345ee9f17d20063853652a35a")
(revision 10))
(commit "014f1b607f1d88a8e733017afaca006545b7d99b")
(revision 11))
(package
(name "guix")
@ -162,7 +162,7 @@ (define-public guix
(commit commit)))
(sha256
(base32
"037nlr5z8qmq2zp0slcg5lyhcdp7v6vxl1f36wkqrw9xzgq8k6kf"))
"0mmq0ypkxj6dc1r9j1mdgih87h6fc0mk05hp481cjp8shdc1w6gw"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -1584,14 +1584,15 @@ (define-public libostree
(define-public flatpak
(package
(name "flatpak")
(version "1.10.2")
(version "1.12.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
version "/flatpak-" version ".tar.xz"))
(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
;; find the TLS backend in glib-networking.
@ -1626,6 +1627,16 @@ (define-public flatpak
(("/bin/kill") (which "kill"))
(("/usr/bin/python3") (which "python3")))
#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
;; tests.
(replace 'check
@ -1664,6 +1675,7 @@ (define-public flatpak
("libsoup" ,libsoup)
("libxau" ,libxau)
("libxml2" ,libxml2)
("p11-kit-next" ,p11-kit-next)
("util-linux" ,util-linux)
("xdg-dbus-proxy" ,xdg-dbus-proxy)))
(home-page "https://flatpak.org")

View file

@ -61,14 +61,14 @@ (define-module (gnu packages parallel)
(define-public parallel
(package
(name "parallel")
(version "20210922")
(version "20211022")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
(base32 "0rjd9636sgmnhaww2q8rbnpwhpq1aqg3df6rmpdm880zqi7skp6y"))))
(base32 "16yyjvlm70lj7csaz4am98dlyqrc588xydnfnabxm71awby90wfs"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -82,8 +82,7 @@ (define-public parallel
;; $Global::shell = $ENV{'PARALLEL_SHELL'} ||
;; parent_shell($$) || $ENV{'SHELL'} || "/bin/sh";
(("/bin/sh\\\";\n$") (string-append (which "sh") "\";\n"))))
(list "src/parallel" "src/sem"))
#t))
(list "src/parallel" "src/sem"))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -92,8 +91,7 @@ (define-public parallel
,(map (lambda (input)
(string-append (assoc-ref inputs input) "/bin"))
'("perl"
"procps"))))
#t)))
"procps")))))))
(add-after 'wrap-program 'post-install-test
(lambda* (#:key outputs #:allow-other-keys)
(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*'.
diff --git a/makeicecat b/makeicecat
index 8be2362..48716f2 100755
index bf2b7a6..bc3b19b 100755
--- a/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
-
-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
-validate_env || exit 1
-prepare_env
-fetch_source
-verify_sources
-extract_sources
-fetch_l10n
+# validate_env || exit 1
+# prepare_env
+# fetch_source
+# verify_sources
+# extract_sources
+# fetch_l10n
apply_patches
configure
configure_search
@@ -872,4 +872,4 @@ prepare_macos_packaging
configure_extensions
configure_onboarding
apply_bugfixes
-finalize_sourceball
+# finalize_sourceball

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 @@ (define-public podofo
(define-public mupdf
(package
(name "mupdf")
(version "1.18.0")
(version "1.19.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://mupdf.com/downloads/archive/"
"mupdf-" version "-source.tar.xz"))
(sha256
(base32 "16m5sksil22sshxy70xkslsb2qhvcqb1d95i9savnhds1xn4ybar"))
(patches (search-patches "mupdf-fix-linkage.patch"
"mupdf-CVE-2021-3407.patch"))
(base32 "1i98xqgnzp168hnnhradl8658qsif06wlbvcglz0mmh8wi1rkwrq"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove bundled software.
(let* ((keep (list "lcms2")) ; different from our lcms2 package
(let* ((keep (list "extract"
"lcms2")) ; different from our lcms2 package
(from "thirdparty")
(kept (string-append from "~temp")))
(mkdir-p kept)

View file

@ -413,7 +413,7 @@ (define-public enblend-enfuse
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libtiff" ,libtiff)
("openexr" ,openexr)
("openexr" ,openexr-2)
("vigra" ,vigra)
("zlib" ,zlib)))
(arguments
@ -568,7 +568,7 @@ (define-public darktable
("libxslt" ,libxslt)
("lua" ,lua) ;optional, for plugins
("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
("osm-gps-map" ,osm-gps-map) ;optional, for geotagging view
("pugixml" ,pugixml)
@ -726,7 +726,7 @@ (define-public hugin
("libxi" ,libxi)
("libxmu" ,libxmu)
("mesa" ,mesa)
("openexr" ,openexr)
("openexr" ,openexr-2)
("sqlite" ,sqlite)
("vigra" ,vigra)
("wxwidgets" ,wxwidgets)

View file

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

View file

@ -120,7 +120,7 @@ (define-public python-pytest-csv
("python-six" ,python-six)))
(home-page "https://github.com/nicoulaj/pytest-csv")
(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
it adds to the Pytest command line interface (CLI).")
(license license:gpl3+)))

View file

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

View file

@ -110,6 +110,7 @@
;;; Copyright © 2021 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; 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.
;;;
@ -4332,7 +4333,7 @@ (define-public python-bumpversion
(define-public python-deprecated
(package
(name "python-deprecated")
(version "1.2.5")
(version "1.2.13")
(source
(origin
(method git-fetch)
@ -4342,13 +4343,14 @@ (define-public python-deprecated
(file-name (git-file-name name version))
(sha256
(base32
"14909glxxwwc4b9qpz2b9jdriwzi5n65ichw85xqppap5f79wcwz"))))
"0v4ys9xr8lski2r98da99spsj6hjlnnqgnhhmyhrm66myiix885c"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "pytest"))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest")))))))
(propagated-inputs
`(("python-wrapt" ,python-wrapt)))
(native-inputs
@ -18389,14 +18391,14 @@ (define-public python2-dirsync
(define-public python-levenshtein
(package
(name "python-levenshtein")
(version "0.12.0")
(version "0.12.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-Levenshtein" version))
(sha256
(base32
"1c9ybqcja31nghfcc8xxbbz9h60s9qi12b9hr4jyl69xbvg12fh3"))))
"1xj60gymwx1jl2ra9razx2wk8nb9cv1i7l8d14qsp8a8s7xra8yw"))))
(build-system python-build-system)
(home-page "https://github.com/ztane/python-Levenshtein")
(synopsis "Fast computation of Levenshtein distance and string similarity")
@ -27051,8 +27053,8 @@ (define-public python-recommonmark
(home-page "https://github.com/readthedocs/recommonmark")
(synopsis "Docutils-compatibility bridge to CommonMark")
(description
"This packages provides a docutils-compatibility bridge to CommonMark,
enabling you to write CommonMark inside of Docutils & Sphinx projects.")
"This package provides a docutils-compatibility bridge to CommonMark that
lets you write CommonMark inside of Docutils & Sphinx projects.")
(license license:expat)))
(define-public python-pyhull
@ -27125,7 +27127,8 @@ (define-public python-peachpy
(file-name (git-file-name name version))
(sha256
(base32
"1yy62k3cjr6556nbp651w6v4hzl7kz4y75wy2dfqgndgbnixskx2"))))
"1yy62k3cjr6556nbp651w6v4hzl7kz4y75wy2dfqgndgbnixskx2"))
(patches (search-patches "python-peachpy-determinism.patch"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -27660,3 +27663,38 @@ (define-public python-aspectlib
code is desired. It includes tools for debugging and testing:
simple mock/record and a complete capture/replay framework.")
(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 @@ (define-public soapyrtlsdr
(define-public chirp
(package
(name "chirp")
(version "20201121")
(version "20211016")
(source
(origin
(method url-fetch)
(uri (string-append "https://trac.chirp.danplanet.com/chirp_daily/daily-"
version "/chirp-daily-" version ".tar.gz"))
(sha256
(base32 "092jryb1jn9li6zj243awv6piz1lhghqsm4phrz7j0rgqf76dy4n"))))
(base32 "13xzqnhvnw6yipv4izkq0s9ykyl9pc5ifpr1ii8xfp28ch706qyw"))))
(build-system python-build-system)
(inputs
`(("python2-libxml2" ,python2-libxml2)
@ -954,7 +954,7 @@ (define-public flrig
(define-public flamp
(package
(name "flamp")
(version "2.2.05")
(version "2.2.07")
(source
(origin
(method git-fetch)
@ -963,7 +963,7 @@ (define-public flamp
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ll2wbhyh1sb4iqsypwrd118mrgw3vbsdbz442qhk4r6l8kjzblq"))))
(base32 "0rygd5w04nspxdj8qj81gpb3mgijvlmii74s1f4mihqs5kb8nwh6"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -1070,7 +1070,7 @@ (define-public hackrf
(define-public hamlib
(package
(name "hamlib")
(version "4.2")
(version "4.3.1")
(source
(origin
(method url-fetch)
@ -1078,7 +1078,7 @@ (define-public hamlib
"https://github.com/Hamlib/Hamlib/releases/download/"
version "/hamlib-" version ".tar.gz"))
(sha256
(base32 "1m8gb20i8ga6ndnnw187ry1h4z8wx27v1hl7c610r6ky60pv4072"))))
(base32 "0c578m04zs8dllbd4cv6nxb44y0dn8kiapzkih84ycfjzmnkhdrl"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)
@ -2130,6 +2130,7 @@ (define-public sdr++
(inputs
`(("airspyhf" ,airspyhf)
("alsa-lib" ,alsa-lib)
("codec2" ,codec2)
("fftwf" ,fftwf)
("glew" ,glew)
("glfw" ,glfw)
@ -2144,7 +2145,8 @@ (define-public sdr++
(arguments
`(#:tests? #f ; No test suite.
#:configure-flags '("-DOPT_BUILD_AIRSPY_SOURCE=OFF"
"-DOPT_BUILD_PLUTOSDR_SOURCE=OFF")
"-DOPT_BUILD_PLUTOSDR_SOURCE=OFF"
"-DOPT_BUILD_M17_DECODER=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths

View file

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

View file

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

View file

@ -2,7 +2,7 @@
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;; 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 Adam Massmann <massmannak@gmail.com>
;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -36,19 +36,26 @@ (define-module (gnu packages search)
#:use-module (guix build-system python)
#:use-module (guix build-system meson)
#:use-module (gnu packages)
#:use-module (gnu packages aspell)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages databases)
#:use-module (gnu packages ebook)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages groff)
#:use-module (gnu packages less)
#:use-module (gnu packages linux)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pdf)
#:use-module (gnu packages photo)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages time)
#:use-module (gnu packages web)
@ -286,6 +293,104 @@ (define-public bool
for parsing HTML files.")
(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
(package
(name "hyperestraier")

View file

@ -53,6 +53,7 @@ (define-module (gnu packages security-token)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages man)
@ -112,7 +113,8 @@ (define-public ccid
(define-public eid-mw
(package
(name "eid-mw")
(version "5.0.14")
;; When updating, remove the short-lived libbsd input and module import!
(version "5.0.28")
(source
(origin
(method git-fetch)
@ -121,7 +123,7 @@ (define-public eid-mw
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hyxsbxjjn9hh5p7jlcfb5yplf3n8dg49dfgi8fjp95phis3gbd4"))))
(base32 "0fmpdx09a60ndbsvy3m6w77naqy3j6k2ydq6jdcmdvxnr31z7fmf"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -134,6 +136,7 @@ (define-public eid-mw
("perl" ,perl)))
(inputs
`(("curl" ,curl)
("libbsd" ,libbsd)
("openssl" ,openssl)
("gtk+" ,gtk+)
("pcsc-lite" ,pcsc-lite)
@ -153,22 +156,7 @@ (define-public eid-mw
(substitute* "scripts/build-aux/genver.sh"
(("/bin/sh") (which "sh"))
(("^(GITDESC=).*" _ match) (string-append match ,version "\n")))
(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))
)))
(invoke "sh" "./bootstrap.sh"))))))
(synopsis "Belgian eID Middleware")
(description "The Belgian eID Middleware is required to authenticate with
online services using the Belgian electronic identity card.")

View file

@ -12,6 +12,7 @@
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -42,18 +43,21 @@ (define-module (gnu packages shellutils)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
#:use-module (gnu packages golang)
#:use-module (gnu packages libunistring)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (gnu packages shells)
#:use-module (gnu packages tmux))
#:use-module (gnu packages tmux)
#:use-module (gnu packages vim))
(define-public boxes
(package
(name "boxes")
(version "1.3")
(version "2.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -62,32 +66,43 @@ (define-public boxes
(file-name (git-file-name name version))
(sha256
(base32
"0b12rsynrmkldlwcb62drk33kk0aqwbj10mq5y5x3hjf626gjwsi"))))
"1bf5rnfiw04ffs1l17zhbg4wvq2vfn2qbz1xmd250xqj15lysw88"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
#:make-flags (list (string-append "GLOBALCONF="
(assoc-ref %outputs "out")
"/etc/boxes-config"))
#:modules
((ice-9 match)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((dest (assoc-ref outputs "out")))
(for-each (lambda (x)
(install-file (car x)
(string-append dest "/" (cdr x))))
'(("src/boxes" . "bin")
("doc/boxes.1" . "share/man/man1")
("boxes-config" . "etc/")))
#t))))))
(native-inputs `(("flex" ,flex) ("bison" ,bison)))
(let ((out (assoc-ref outputs "out")))
(for-each (match-lambda
((source target)
(install-file source
(string-append out "/" target))))
'(("out/boxes" "bin/")
("doc/boxes.1" "share/man/man1/")
("boxes-config" "etc/")))))))))
(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")
(description
"This command-line filter program draws ASCII-art boxes around your input
text.")
(home-page "https://boxes.thomasjensen.com/build.html")
(license license:gpl2)))
(define-public zsh-autosuggestions
@ -449,3 +464,51 @@ (define-public shell-functools
large collection of functions such as basename, replace, contains or is_dir
are provided as arguments to these commands.")
(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-module (gnu packages skarnet)
(define-public skalibs
(package
(name "skalibs")
(version "2.10.0.3")
(version "2.11.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/skalibs/skalibs-"
version ".tar.gz"))
(sha256
(base32 "0ka6n5rnxd5sn5lycarf596d5wlak5s535zqqlz0rnhdcnpb105p"))))
(base32 "1n9l7mb54dlb0iijjaf446jba6nmq1ql9n39s095ngrk5ahcipwq"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests exist
@ -48,8 +48,7 @@ (define-public skalibs
;; and *.so files are reproducible.
(substitute* "Makefile"
(("\\$\\(wildcard src/lib\\*/\\*.c\\)")
"$(sort $(wildcard src/lib*/*.c))"))
#t)))))
"$(sort $(wildcard src/lib*/*.c))")))))))
(home-page "https://skarnet.org/software/skalibs/")
(synopsis "Platform abstraction libraries for skarnet.org software")
(description
@ -62,14 +61,14 @@ (define-public skalibs
(define-public execline
(package
(name "execline")
(version "2.8.0.1")
(version "2.8.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/execline/execline-"
version ".tar.gz"))
(sha256
(base32 "1v9swmhw2rcrr9fmkmd7qh8qq0kslhmvxwz2a3bhan9ksabz8wx3"))))
(base32 "0msmzf5zwjcsgjlvvq28rd2i0fkdb2skmv8ii0ix8dhyckwwjmav"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@ -104,14 +103,14 @@ (define-public execline
(define-public s6
(package
(name "s6")
(version "2.10.0.3")
(version "2.11.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6/s6-"
version ".tar.gz"))
(sha256
(base32 "0mw7blp8dwr09z58m9mrxwmmvvpnjzq9klcf1vgm0hbha4qkf88x"))))
(base32 "1a3lj0xfhn1w3a4ygqsxy8q4dr3n48hnwml4xzdpz3nrikhy8if5"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)
("execline" ,execline)))
@ -133,8 +132,7 @@ (define-public s6
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/s6-" ,version)))
(copy-recursively "doc" doc)
#t))))))
(copy-recursively "doc" doc)))))))
(home-page "https://skarnet.org/software/s6")
(license isc)
(synopsis "Small suite of programs for process supervision")
@ -150,14 +148,14 @@ (define-public s6
(define-public s6-dns
(package
(name "s6-dns")
(version "2.3.5.1")
(version "2.3.5.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-dns/s6-dns-"
version ".tar.gz"))
(sha256
(base32 "0qsgqwdr5ms337fc9f2b4aa5cr7myvbzndvgkgswnrdwszjm078c"))))
(base32 "0nczzjprvp6wirzycgf5h32dlgx4r8grzkqhif27n3ii6f5g78yw"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@ -179,14 +177,14 @@ (define-public s6-dns
(define-public s6-networking
(package
(name "s6-networking")
(version "2.4.1.1")
(version "2.5.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-networking/"
"s6-networking-" version ".tar.gz"))
(sha256
(base32 "0m55ibx7k2wgrqbpci1n667ij0h925ajzggxalq2pj65kmwcmyx3"))))
(base32 "1fn3g9gkwgmnxallhk82f5rly81pnkilj7n49g5fbfmaalsq96mh"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)
("execline" ,execline)
@ -222,14 +220,14 @@ (define-public s6-networking
(define-public s6-rc
(package
(name "s6-rc")
(version "0.5.2.2")
(version "0.5.2.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://skarnet.org/software/s6-rc/s6-rc-"
version ".tar.gz"))
(sha256
(base32 "12bzc483jpd16xmhfsfrib84daj1k3kwy5s5nc18ap60apa1r39a"))))
(base32 "1xyaplwzvqnb53mg59a7jklakzwsiqivp6qggsry3sbaw4hf3d5j"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)
("execline" ,execline)
@ -263,7 +261,7 @@ (define-public s6-rc
(define-public s6-portable-utils
(package
(name "s6-portable-utils")
(version "2.2.3.2")
(version "2.2.3.3")
(source
(origin
(method url-fetch)
@ -271,7 +269,7 @@ (define-public s6-portable-utils
"https://skarnet.org/software/s6-portable-utils/s6-portable-utils-"
version ".tar.gz"))
(sha256
(base32 "173nmygkp7ky3093dg4rx3ahvyl7ll86z8qj6pl3jd96xb9s49v6"))))
(base32 "132jj5qk8x40kw6lrrn7jiqhvqj9d2h6g6mhl8zma1sp37bg0i84"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments
@ -295,7 +293,7 @@ (define-public s6-portable-utils
(define-public s6-linux-init
(package
(name "s6-linux-init")
(version "1.0.6.3")
(version "1.0.6.4")
(source
(origin
(method url-fetch)
@ -303,7 +301,7 @@ (define-public s6-linux-init
"https://skarnet.org/software/s6-linux-init/s6-linux-init-"
version ".tar.gz"))
(sha256
(base32 "1idqjcxhl5wgff8yrsvx2812wahjri2hcs7qs6k62g0sdd8niqr9"))))
(base32 "0grqk111d6aqym1c4l9j26fdqcgra1hvwb9vdgylrfbvn1c3hlpb"))))
(build-system gnu-build-system)
(inputs
`(("execline" ,execline)
@ -341,7 +339,7 @@ (define-public s6-linux-init
(define-public s6-linux-utils
(package
(name "s6-linux-utils")
(version "2.5.1.5")
(version "2.5.1.6")
(source
(origin
(method url-fetch)
@ -349,7 +347,7 @@ (define-public s6-linux-utils
"https://skarnet.org/software/s6-linux-utils/s6-linux-utils-"
version ".tar.gz"))
(sha256
(base32 "1fj5ldlrc6bx40pphg29rp3byd6fal6869v85kw86c2kdgrxn063"))))
(base32 "0hr49nl0d7a6i5w8cfg43xzvzayb8kpqij9xg7bmw2fyvc2z338z"))))
(build-system gnu-build-system)
(inputs `(("skalibs" ,skalibs)))
(arguments

View file

@ -904,6 +904,38 @@ (define-public lchat
chat output in the background.")
(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
(package
(name "scron")

View file

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

View file

@ -198,7 +198,7 @@ (define-public termite
(define-public asciinema
(package
(name "asciinema")
(version "2.0.2")
(version "2.1.0")
(source
(origin
(method git-fetch)
@ -207,22 +207,13 @@ (define-public asciinema
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1a2pysxnp6icyd08mgf66xr6f6j0irnfxdpf3fmzcz31ix7l9kc4"))))
(base32 "1alcz018jrrpasrmgs8nw775a6pf62xq2xgs54c4mb396prdqy4x"))))
(build-system python-build-system)
(arguments
`(#: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
(lambda _ (invoke "nosetests" "-v"))))))
(inputs `(("ncurses" ,ncurses)))
(native-inputs
;; For tests.
`(("python-nose" ,python-nose)))

View file

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

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