me
/
guix
Archived
1
0
Fork 0

Merge remote-tracking branch 'origin/master' into wip-ungrafting

master
Ludovic Courtès 2021-04-29 15:41:48 +02:00
commit 2c11e7be74
No known key found for this signature in database
GPG Key ID: 090B11993D9AEBB5
225 changed files with 679758 additions and 143469 deletions

2
.gitignore vendored
View File

@ -146,7 +146,7 @@ tmp
/doc/os-config-lightweight-desktop.texi
/nix/scripts/download
/.version
/doc/stamp-[0-9]
/doc/stamp-[0-9]*
/gnu/packages/bootstrap
/gnu/packages/aux-files/guile-guile-launcher.o
/guile

View File

@ -86,8 +86,6 @@
(;; primary: "4F71 6F9A 8FA2 C80E F1B5 E1BA 5E35 F231 DE1A C5E0"
"B051 5948 F1E7 D3C1 B980 38A0 2646 FA30 BACA 7F08"
(name "lfam"))
("148B CB8B D80B FB16 B1DE 0E91 45A8 B1E8 6BCD 10A6"
(name "lle_bout"))
("8887 84C4 1459 ACCB 83E7 E84C 634C 6E89 79FA BEC2"
(name "m1gu3l"))
("CBF5 9755 CBE7 E7EF EF18 3FB1 DD40 9A15 D822 469D"

View File

@ -38,7 +38,7 @@ Joshua Grant <tadni@riseup.net> <gzg@riseup.net>
Joshua Grant <tadni@riseup.net> <jgrant@parenthetical.io>
Joshua Grant <tadni@riseup.net> <tadnimi@gmail.com>
Joshua Grant <tadni@riseup.net> <youlysses@riseup.net>
Kei Kebreau <kei@openmailbox.org> <kkebreau@posteo.net>
Kei Kebreau <kkebreau@posteo.net>
Leo Famulari <leo@famulari.name> <lfamular@gmail.com>
Ludovic Courtès <ludo@gnu.org> <ludovic.courtes@inria.fr>
Marek Benc <dusxmt@gmx.com> <merkur32@gmail.com>

View File

@ -261,7 +261,6 @@ MODULES = \
guix/import/opam.scm \
guix/import/print.scm \
guix/import/pypi.scm \
guix/import/snix.scm \
guix/import/stackage.scm \
guix/import/texlive.scm \
guix/import/utils.scm \
@ -300,7 +299,6 @@ MODULES = \
guix/scripts/import/go.scm \
guix/scripts/import/hackage.scm \
guix/scripts/import/json.scm \
guix/scripts/import/nix.scm \
guix/scripts/import/opam.scm \
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm \
@ -489,7 +487,6 @@ SCM_TESTS = \
tests/services/linux.scm \
tests/sets.scm \
tests/size.scm \
tests/snix.scm \
tests/status.scm \
tests/store-database.scm \
tests/store-deduplication.scm \

View File

@ -1,7 +1,7 @@
#!/bin/sh
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2021 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
@ -91,14 +91,11 @@ then
# Place for the substituter's cache.
XDG_CACHE_HOME="$GUIX_STATE_DIRECTORY/cache-$$"
# For the (guix import snix) tests.
NIXPKGS="@NIXPKGS@"
export NIX_IGNORE_SYMLINK_STORE NIX_STORE_DIR \
GUIX_LOG_DIRECTORY GUIX_STATE_DIRECTORY GUIX_DATABASE_DIRECTORY \
GUIX_BINARY_SUBSTITUTE_URL \
GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES \
GUIX_CONFIGURATION_DIRECTORY XDG_CACHE_HOME NIXPKGS
GUIX_CONFIGURATION_DIRECTORY XDG_CACHE_HOME
# Launch the daemon without chroot support because is may be
# unavailable, for instance if we're not running as root.

View File

@ -195,23 +195,6 @@ AC_SUBST([GZIP])
AC_SUBST([BZIP2])
AC_SUBST([XZ])
AC_ARG_WITH([nixpkgs],
[AS_HELP_STRING([--with-nixpkgs=DIR],
[search for Nixpkgs in DIR (for testing purposes only)])],
[case "$withval" in
yes|no) AC_MSG_ERROR([Please use `--with-nixpkgs=DIR'.]);;
*) NIXPKGS="$withval";;
esac],
[])
AC_MSG_CHECKING([for Nixpkgs source tree])
if test -f "$NIXPKGS/default.nix"; then
AC_MSG_RESULT([$NIXPKGS])
AC_SUBST([NIXPKGS])
else
AC_MSG_RESULT([not found])
fi
LIBGCRYPT_LIBDIR="no"
LIBGCRYPT_PREFIX="no"

View File

@ -63,9 +63,9 @@
"guix"))
(define %languages
;; The cookbook is currently only translated into German.
;; The cookbook is not translated in the same languages as the manual
(if (string=? %manual "guix-cookbook")
'("de" "en")
'("de" "en" "fr")
'("de" "en" "es" "fr" "ru" "zh_CN")))
(define (texinfo-manual-images source)
@ -948,7 +948,7 @@ from SOURCE."
(div
(ul
(li (a (@ (href "html_node"))
"HTML, with one page per node"))
"HTML, with a separate page per node"))
(li (a (@ (href
,(string-append
#$manual

View File

@ -29,6 +29,7 @@ choice.
* Tracking Bugs and Patches:: Using Debbugs.
* Commit Access:: Pushing to the official repository.
* Updating the Guix Package:: Updating the Guix package definition.
* Translating Guix:: Make Guix speak your native language.
@end menu
@node Building from Git
@ -1079,12 +1080,14 @@ rebuilding induced, commits go to different branches, along these lines:
@code{staging} branch (non-disruptive changes). This branch is intended
to be merged in @code{master} every 6 weeks or so. Topical changes
(e.g., an update of the GNOME stack) can instead go to a specific branch
(say, @code{gnome-updates}).
(say, @code{gnome-updates}). This branch is not expected to be
buildable or usable until late in its development process.
@item more than 1,800 dependent packages
@code{core-updates} branch (may include major and potentially disruptive
changes). This branch is intended to be merged in @code{master} every
6 months or so.
6 months or so. This branch is not expected to be buildable or usable
until late in its development process.
@end table
All these branches are @uref{@value{SUBSTITUTE-URL},
@ -1429,3 +1432,266 @@ This check can be disabled, @emph{at your own peril}, by setting the
@code{GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT} environment variable. When
this variable is set, the updated package source is also added to the
store. This is used as part of the release process of Guix.
@cindex translation
@cindex l10n
@cindex i18n
@cindex native language support
@node Translating Guix
@section Translating Guix
Writing code and packages is not the only way to provide a meaningful
contribution to Guix. Translating to a language you speak is another
example of a valuable contribution you can make. This section is designed
to describe the translation process. It gives you advice on how you can
get involved, what can be translated, what mistakes you should avoid and
what we can do to help you!
Guix is a big project that has multiple components that can be translated.
We coordinate the translation effort on a
@uref{https://translate.fedoraproject.org/projects/guix/,Weblate instance}
hosted by our friends at Fedora. You will need an account to submit
translations.
Some of the software packaged in Guix also contain translations. We do not
host a translation platform for them. If you want to translate a package
provided by Guix, you should contact their developpers or find the information
on their website. As an example, you can find the homepage of the
@code{hello} package by typing @code{guix show hello}. On the ``homepage''
line, you will see @url{https://www.gnu.org/software/hello/} as the homepage.
Many GNU and non-GNU packages can be translated on the
@uref{https://translationproject.org,Translation Project}. Some projects
with multiple components have their own platform. For instance, GNOME has
its own platform, @uref{https://l10n.gnome.org/,Damned Lies}.
Guix has five components hosted on Weblate.
@itemize
@item @code{guix} contains all the strings from the Guix software (the
guided system installer, the package manager, etc), excluding packages.
@item @code{packages} contains the synopsis (single-sentence description
of a package) and description (longer description) of packages in Guix.
@item @code{website} contains the official Guix website, except for
blog posts and multimedia content.
@item @code{documentation-manual} corresponds to this manual.
@item @code{documentation-cookbook} is the component for the cookbook.
@end itemize
@subsubheading General Directions
Once you get an account, you should be able to select a component from
@uref{https://translate.fedoraproject.org/projects/guix/,the guix project},
and select a language. If your language does not appear in the list, go
to the bottom and click on the ``Start new translation'' button. Select
the language you want to translate to from the list, to start your new
translation.
Like lots of other free software packages, Guix uses
@uref{https://www.gnu.org/software/gettext,GNU Gettext} for its translations,
with which translatable strings are extracted from the source code to so-called
PO files.
Even though PO files are text files, changes should not be made with a text
editor but with PO editing software. Weblate integrates PO editing
functionality. Alternatively, translators can use any of various
free-software tools for filling in translations, of which
@uref{https://poedit.net/,Poedit} is one example, and (after logging in)
@uref{https://docs.weblate.org/en/latest/user/files.html,upload} the changed
file. There is also a special
@uref{https://www.emacswiki.org/emacs/PoMode,PO editing mode} for users of GNU
Emacs. Over time translators find out what software they are happy with and
what features they need.
On Weblate, you will find various links to the editor, that will show various
subsets (or all) of the strings. Have a look around and at the
@uref{https://docs.weblate.org/en/latest/,documentation} to familiarize
yourself with the platform.
@subsubheading Translation Components
In this section, we provide more detailed guidance on the translation
process, as well as details on what you should or should not do. When in
doubt, please contact us, we will be happy to help!
@table @asis
@item guix
Guix is written in the Guile programming language, and some strings contain
special formating that is interpreted by Guile. These special formating
should be highlighted by Weblate. They start with @code{~} followed by one
or more characters.
When printing the string, Guile replaces the special formating symbols with
actual values. For instance, the string @samp{ambiguous package specification
`~a'} would be substituted to contain said package specification instead of
@code{~a}. To properly translate this string, you must keep the formating
code in your translation, although you can place it where it makes sense in
your language. For instance, the French translation says @samp{spécification
du paquet « ~a » ambiguë} because the adjective needs to be placed in the
end of the sentence.
If there are multiple formating symbols, make sure to respect the order.
Guile does not know in which order you intended the string to be read, so it
will substitute the symbols in the same order as the English sentence.
As an example, you cannot translate @samp{package '~a' has been superseded by
'~a'} by @samp{'~a' superseeds package '~a'}, because the meaning would be
reversed. If foo is superseeded by bar, the translation would read
@samp{'foo' superseeds package 'bar'}. To work around this problem, it
is possible to use more advanced formating to select a given piece of data,
instead of following the default English order. @xref{Formatted Output,,,
guile, GNU Guile Reference Manual}, for more information on formating in Guile.
@item packages
Package descriptions occasionally contain Texinfo markup (@pxref{Synopses
and Descriptions}). Texinfo markup looks like @samp{@@code@{rm -rf@}},
@samp{@@emph@{important@}}, etc. When translating, please leave markup as is.
The characters after ``@@'' form the name of the markup, and the text between
``@{'' and ``@}'' is its content. In general, you should not translate the
content of markup like @code{@@code}, as it contains literal code that do not
change with language. You can translate the content of formating markup such
as @code{@@emph}, @code{@@i}, @code{@@itemize}, @code{@@item}. However, do
not translate the name of the markup, or it will not be recognized. Do
not translate the word after @code{@@end}, it is the name of the markup that
is closed at this position (e.g.@: @code{@@itemize ... @@end itemize}).
@item documentation-manual and documentation-cookbook
The first step to ensure a successful translation of the manual is to find
and translate the following strings @emph{first}:
@itemize
@item @code{version.texi}: Translate this string as @code{version-xx.texi},
where @code{xx} is your language code (the one shown in the URL on
weblate).
@item @code{contributing.texi}: Translate this string as
@code{contributing.xx.texi}, where @code{xx} is the same language code.
@item @code{Top}: Do not translate this string, it is important for Texinfo.
If you translate it, the document will be empty (missing a Top node).
Please look for it, and register @code{Top} as its translation.
@end itemize
Translating these strings first ensure we can include your translation in
the guix repository without breaking the make process or the
@command{guix pull} machinery.
The manual and the cookbook both use Texinfo. As for @code{packages}, please
keep Texinfo markup as is. There are more possible markup types in the manual
than in the package descriptions. In general, do not translate the content
of @code{@@code}, @code{@@file}, @code{@@var}, @code{@@value}, etc. You
should translate the content of formating markup such as @code{@@emph},
@code{@@i}, etc.
The manual contains sections that can be refered to by name by @code{@@ref},
@code{@@xref} and @code{@@pxref}. We have a mechanism in place so you do
not have to translate their content. If you keep the English title, we will
automatically replace it with your translation of that title. This ensures
that Texinfo will always be able to find the node. If you decide to change
the translation of the title, the references will automatically be updated
and you will not have to update them all yourself.
When translating references from the cookbook to the manual, you need to
replace the name of the manual and the name of the section. For instance,
to translate @code{@@pxref@{Defining Packages,,, guix, GNU Guix Reference
Manual@}}, you would replace @code{Defining Packages} with the title of that
section in the translated manual @emph{only} if that title is translated.
If the title is not translated in your language yet, do not translate it here,
or the link will be broken. Replace @code{guix} with @code{guix.xx} where
@code{xx} is your language code. @code{GNU Guix Reference Manual} is the
text of the link. You can translate it however you wish.
@item website
The website pages are written using SXML, an s-expression version of HTML,
the basic language of the web. We have a process to extract translatable
strings from the source, and replace complex s-expressions with a more familiar
XML markup, where each markup is numbered. Translators can arbitrarily change
the ordering, as in the following example.
@example
#. TRANSLATORS: Defining Packages is a section name
#. in the English (en) manual.
#: apps/base/templates/about.scm:64
msgid "Packages are <1>defined<1.1>en</1.1><1.2>Defining-Packages.html</1.2></1> as native <2>Guile</2> modules."
msgstr "Pakete werden als reine <2>Guile</2>-Module <1>definiert<1.1>de</1.1><1.2>Pakete-definieren.html</1.2></1>."
@end example
Note that you need to include the same markups. You cannot skip any.
@end table
In case you make a mistake, the component might fail to build properly with your
language, or even make guix pull fail. To prevent that, we have a process
in place to check the content of the files before pushing to our repository.
We will not be able to update the translation for your language in Guix, so
we will notify you (through weblate and/or by email) so you get a chance to
fix the issue.
@subsubheading Outside of Weblate
Currently, some parts of Guix cannot be translated on Weblate, help wanted!
@itemize
@item @command{guix pull} news can be translated in @file{news.scm}, but is not
available from Weblate. If you want to provide a translation, you
can prepare a patch as described above, or simply send us your
translation with the name of the news entry you translated and your
language. @xref{Writing Channel News}, for more information about
channel news.
@item Guix blog posts cannot currently be translated.
@item The installer script (for foreign distributions) is entirely in English.
@item Some of the libraries Guix uses cannot be translated or are translated
outside of the Guix project. Guile itself is not internationalized.
@item Other manuals linked from this manual or the cookbook might not be
translated.
@end itemize
@subsubheading Translation Infrastructure
Weblate is backed by a git repository from which it discovers new strings to
translate and pushes new and updated translations. Normally, it would be
enough to give it commit access to our repositories. However, we decided
to use a separate repository for two reasons. First, we would have to give
Weblate commit access and authorize its signing key, but we do not trust it
in the same way we trust guix developpers, especially since we do not manage
the instance ourselves. Second, if translators mess something up, it can
break the generation of the website and/or guix pull for all our users,
independently of their language.
For these reasons, we use a dedicated repository to host translations, and we
synchronize it with our guix and artworks repositories after checking no issue
was introduced in the translation.
Developpers can download the latest PO files from weblate in the Guix
repository by runnig the @command{make download-po} target. It will
automatically download the latest files from weblate, reformat them to a
canonical form, and check they do not contain issues. The manual needs to be
built again to check for additional issues that might crash Texinfo.
Before pushing new translation files, developpers should add them to the
make machinery so the translations are actually available. The process
differs for the various components.
@itemize
@item New po files for the @code{guix} and @code{packages} components must
be registered by adding the new language to @file{po/guix/LINGUAS} or
@file{po/packages/LINGUAS}.
@item New po files for the @code{documentation-manual} component must be
registered by adding the file name to @code{DOC_PO_FILES} in
@file{po/doc/local.mk}, the generated @file{%D%/guix.xx.texi} manual to
@code{info_TEXINFOS} in @file{doc/local.mk} and the generated
@file{%D%/guix.xx.texi} and @file{%D%/contributing.xx.texi} to
@code{TRANSLATED_INFO} also in @file{doc/local.mk}.
@item New po files for the @code{documentation-cookbook} component must be
registered by adding the file name to @code{DOC_COOKBOOK_PO_FILES} in
@file{po/doc/local.mk}, the generated @file{%D%/guix-cookbook.xx.texi}
manual to @code{info_TEXINFOS} in @file{doc/local.mk} and the generated
@file{%D%/guix-cookbook.xx.texi} to @code{TRANSLATED_INFO} also
in @file{doc/local.mk}.
@item New po files for the @code{website} component must be added to the
@code{guix-artwork} repository, in @file{website/po/}.
@file{website/po/LINGUAS} and @file{website/po/ietf-tags.scm} must
be updated accordingly (see @file{website/i18n-howto.txt} for more
information on the process).
@end itemize

View File

@ -36,7 +36,7 @@ Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner@*
Copyright @copyright{} 2016 John Darrington@*
Copyright @copyright{} 2016, 2017 Nikita Gillmann@*
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Jan Nieuwenhuizen@*
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020 Julien Lepiller@*
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Julien Lepiller@*
Copyright @copyright{} 2016 Alex ter Weele@*
Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Christopher Baines@*
Copyright @copyright{} 2017, 2018, 2019 Clément Lassieur@*
@ -68,7 +68,7 @@ Copyright @copyright{} 2019 Ivan Petkov@*
Copyright @copyright{} 2019 Jakob L. Kreuze@*
Copyright @copyright{} 2019 Kyle Andrews@*
Copyright @copyright{} 2019 Alex Griffin@*
Copyright @copyright{} 2019, 2020 Guillaume Le Vaillant@*
Copyright @copyright{} 2019, 2020, 2021 Guillaume Le Vaillant@*
Copyright @copyright{} 2020 Leo Prikler@*
Copyright @copyright{} 2019, 2020 Simon Tournier@*
Copyright @copyright{} 2020 Wiktor Żelazny@*
@ -88,6 +88,7 @@ Copyright @copyright{} 2020 John Soo@*
Copyright @copyright{} 2020 Jonathan Brielmaier@*
Copyright @copyright{} 2020 Edgar Vincent@*
Copyright @copyright{} 2021 Maxime Devos@*
Copyright @copyright{} 2021 B. Wilson@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@ -146,7 +147,7 @@ Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}), and
Russian (@pxref{Top,,, guix.ru, Руководство GNU Guix}). If you
would like to translate it in your native language, consider joining
@uref{https://translate.fedoraproject.org/projects/guix/documentation-manual,
Weblate}.
Weblate} (@pxref{Translating Guix}).
@menu
* Introduction:: What is Guix about?
@ -11417,36 +11418,6 @@ and outputs a package expression:
guix import json hello.json
@end example
@item nix
Import metadata from a local copy of the source of the
@uref{https://nixos.org/nixpkgs/, Nixpkgs distribution}@footnote{This
relies on the @command{nix-instantiate} command of
@uref{https://nixos.org/nix/, Nix}.}. Package definitions in Nixpkgs are
typically written in a mixture of Nix-language and Bash code. This
command only imports the high-level package structure that is written in
the Nix language. It normally includes all the basic fields of a
package definition.
When importing a GNU package, the synopsis and descriptions are replaced
by their canonical upstream variant.
Usually, you will first need to do:
@example
export NIX_REMOTE=daemon
@end example
@noindent
so that @command{nix-instantiate} does not try to open the Nix database.
As an example, the command below imports the package definition of
LibreOffice (more precisely, it imports the definition of the package
bound to the @code{libreoffice} top-level attribute):
@example
guix import nix ~/path/to/nixpkgs libreoffice
@end example
@item hackage
@cindex hackage
Import metadata from the Haskell community's central package archive
@ -19948,6 +19919,9 @@ Socket file to use for local (non-network) connections.
@item @code{extra-content} (default: @code{""})
Additional settings for the @file{my.cnf} configuration file.
@item @code{extra-environment} (default: @code{#~'()})
List of environment variables passed to the @command{mysqld} process.
@item @code{auto-upgrade?} (default: @code{#t})
Whether to automatically run @command{mysql_upgrade} after starting the
service. This is necessary to upgrade the @dfn{system schema} after
@ -27029,6 +27003,12 @@ The peer public-key represented as a base64 string.
A list of IP addresses from which incoming traffic for this peer is
allowed and to which incoming traffic for this peer is directed.
@item @code{keep-alive} (default: @code{#f})
An optional time interval in seconds. A packet will be sent to the
server endpoint once per time interval. This helps receiving
incoming connections from this peer when you are behind a NAT or
a firewall.
@end table
@end deftp
@ -29051,10 +29031,11 @@ By default, it produces
@lisp
'("--device" "rtl8139,netdev=net0"
"--netdev" "user,id=net0\
,hostfwd=tcp:127.0.0.1:@var{secrets-port}-:1004\
,hostfwd=tcp:127.0.0.1:@var{ssh-port}-:2222\
,hostfwd=tcp:127.0.0.1:@var{vnc-port}-:5900")
"--netdev" (string-append
"user,id=net0,"
"hostfwd=tcp:127.0.0.1:@var{secrets-port}-:1004,"
"hostfwd=tcp:127.0.0.1:@var{ssh-port}-:2222,"
"hostfwd=tcp:127.0.0.1:@var{vnc-port}-:5900"))
@end lisp
with forwarded ports:
@ -31179,6 +31160,15 @@ will use the current system it's running on as the default.
@item @code{max-parallel-builds} (default: @code{1})
The number of builds to perform in parallel.
@item @code{max-1min-load-average} (default: @code{#f})
Load average value to look at when considering starting new builds, if
the 1 minute load average exceeds this value, the agent will wait before
starting new builds.
This will be unspecified if the value is @code{#f}, and the agent will
use the number of cores reported by the system as the max 1 minute load
average.
@item @code{derivation-substitute-urls} (default: @code{#f})
URLs from which to attempt to fetch substitutes for derivations, if the
derivations aren't already available.
@ -31282,7 +31272,7 @@ The Guix Build Coordinator package to use.
@item @code{user} (default: @code{"guix-build-coordinator-queue-builds"})
The system user to run the service as.
@item @code{coordinator} (default: @code{"http://localhost:8745"})
@item @code{coordinator} (default: @code{"http://localhost:8746"})
The URI to use when connecting to the coordinator.
@item @code{systems} (default: @code{#f})
@ -31457,6 +31447,86 @@ parameters, can be done as follow:
@end lisp
@end deffn
@cindex rasdaemon
@cindex Platform Reliability, Availability and Serviceability daemon
@subsubheading Rasdaemon Service
The Rasdaemon service provides a daemon which monitors the platform Reliablity,
Availability and Serviceability (RAS) reports from the Linux kernel trace
events, logging them to syslogd.
Reliability, Availability and Serviceability is a concept used on servers meant
to measure their robustness.
@strong{Relability} is the probability that a system will produce correct
outputs:
@itemize @bullet
@item Generally measured as Mean Time Between Failures (MTBF), and
@item Enhanced by features that help to avoid, detect and repair hardware
faults
@end itemize
@strong{Availability} is the probability that a system is operational at a
given time:
@itemize @bullet
@item Generally measured as a percentage of downtime per a period of time, and
@item Often uses mechanisms to detect and correct hardware faults in runtime.
@end itemize
@strong{Serviceability} is the simplicity and speed with which a system can be
repaired or maintained:
@itemize @bullet
@item Generally measured on Mean Time Between Repair (MTBR).
@end itemize
Among the monitoring measures, the most usual ones include:
@itemize @bullet
@item CPU detect errors at instruction execution and at L1/L2/L3 caches;
@item Memory add error correction logic (ECC) to detect and correct errors;
@item I/O add CRC checksums for transferred data;
@item Storage RAID, journal file systems, checksums, Self-Monitoring,
Analysis and Reporting Technology (SMART).
@end itemize
By monitoring the number of occurrences of error detections, it is possible to
identify if the probability of hardware errors is increasing, and, on such
case, do a preventive maintenance to replace a degraded component while those
errors are correctable.
For detailed information about the types of error events gathered and how to
make sense of them, see the kernel administrator's guide at
@url{https://www.kernel.org/doc/html/latest/admin-guide/ras.html}.
@defvr {Scheme Variable} rasdaemon-service-type
Service type for the @command{rasdaemon} service. It accepts a
@code{rasdaemon-configuration} object. Instantiating like
@lisp
(service rasdaemon-service-type)
@end lisp
will load with a default configuration, which monitors all events and logs to
syslogd.
@end defvr
@deftp {Data Type} rasdaemon-configuration
The data type representing the configuration of @command{rasdaemon}.
@table @asis
@item @code{record?} (default: @code{#f})
A boolean indicating whether to record the events in an SQLite database. This
provides a more structured access to the information contained in the log file.
The database location is hard-coded to @file{/var/lib/rasdaemon/ras-mc_event.db}.
@end table
@end deftp
@cindex zram
@cindex compressed swap
@cindex Compressed RAM-based block devices

View File

@ -397,15 +397,15 @@ guile-gtk node ${GS}/guile-gtk/docs/guile-gtk/
guile-rpc mono ${GS}/guile-rpc/manual/guile-rpc.html
guile-rpc node ${GS}/guile-rpc/manual/html_node/
guix.de mono ${GS}/guix/manual/de/guix.html
guix.de mono ${GS}/guix/manual/de/guix.de.html
guix.de node ${GS}/guix/manual/de/html_node/
guix.es mono ${GS}/guix/manual/es/guix.html
guix.es mono ${GS}/guix/manual/es/guix.es.html
guix.es node ${GS}/guix/manual/es/html_node/
guix.fr mono ${GS}/guix/manual/fr/guix.html
guix.fr mono ${GS}/guix/manual/fr/guix.fr.html
guix.fr node ${GS}/guix/manual/fr/html_node/
guix.ru mono ${GS}/guix/manual/ru/guix.html
guix.ru mono ${GS}/guix/manual/ru/guix.ru.html
guix.ru node ${GS}/guix/manual/ru/html_node/
guix.zh_CN mono ${GS}/guix/manual/zh-cn/guix.html
guix.zh_CN mono ${GS}/guix/manual/zh-cn/guix.zh_CN.html
guix.zh_CN node ${GS}/guix/manual/zh-cn/html_node/
guix mono ${GS}/guix/manual/en/guix.html
guix node ${GS}/guix/manual/en/html_node/

View File

@ -24,11 +24,20 @@
info_TEXINFOS = %D%/guix.texi \
%D%/guix.de.texi \
%D%/guix.es.texi \
%D%/guix.fa.texi \
%D%/guix.fr.texi \
%D%/guix.it.texi \
%D%/guix.ko.texi \
%D%/guix.pt_BR.texi \
%D%/guix.ru.texi \
%D%/guix.sk.texi \
%D%/guix.zh_CN.texi \
%D%/guix-cookbook.texi \
%D%/guix-cookbook.de.texi
%D%/guix-cookbook.de.texi \
%D%/guix-cookbook.fa.texi \
%D%/guix-cookbook.fr.texi \
%D%/guix-cookbook.ko.texi \
%D%/guix-cookbook.zh_Hans.texi
%C%_guix_TEXINFOS = \
%D%/contributing.texi \
@ -61,18 +70,33 @@ OS_CONFIG_EXAMPLES_TEXI = \
%D%/os-config-desktop.texi \
%D%/os-config-lightweight-desktop.texi
# Do not forget to update these, when updating info_TEXINFOS
TRANSLATED_INFO = \
%D%/guix.de.texi \
%D%/guix.es.texi \
%D%/guix.fa.texi \
%D%/guix.fr.texi \
%D%/guix.it.texi \
%D%/guix.ko.texi \
%D%/guix.pt_BR.texi \
%D%/guix.ru.texi \
%D%/guix.sk.texi \
%D%/guix.zh_CN.texi \
%D%/contributing.de.texi \
%D%/contributing.es.texi \
%D%/contributing.fa.texi \
%D%/contributing.fr.texi \
%D%/contributing.it.texi \
%D%/contributing.ko.texi \
%D%/contributing.pt_BR.texi \
%D%/contributing.ru.texi \
%D%/contributing.sk.texi \
%D%/contributing.zh_CN.texi \
%D%/guix-cookbook.de.texi
%D%/guix-cookbook.de.texi \
%D%/guix-cookbook.fa.texi \
%D%/guix-cookbook.fr.texi \
%D%/guix-cookbook.ko.texi \
%D%/guix-cookbook.zh_Hans.texi
# Bundle this file so that makeinfo finds it in out-of-source-tree builds.
BUILT_SOURCES += $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
@ -100,7 +124,7 @@ cat "$@.tmp" | egrep '@p?x?ref' -A1 | sed 'N;s|--\n||g;P;D' | sed 's|^| |g' | \
line=$$(grep -n "^msgid \"$$e\"" "$<" | cut -f1 --delimiter=":") ;\
((line++)) ;\
if [ "$$line" != "1" ]; then \
translation=$$(head -n "$$line" "$<" | tail -1 | grep msgstr | sed 's|msgstr "\(.*\)"|\1|') ;\
translation=$$(head -n "$$line" "$<" | tail -1 | grep msgstr | sed 's|msgstr "\([^"]*\)"|\1|') ;\
if [ "$$translation" != "" ]; then \
sed "N;s@\(p\?x\?ref\){$$(echo $$e | sed 's| |[\\n ]|g')\(,\|}\)@\1{$$translation\2@g;P;D" -i "$@.tmp" ;\
fi ;\

View File

@ -322,8 +322,6 @@ complete -f -c guix -n '__fish_guix_needs_command' -a import -d 'Run IMPORTER wi
##### import gnu
complete -f -c guix -n '__fish_guix_using_command import; and not __fish_seen_subcommand_from $remotecommands' -a gnu -d 'Return a package declaration template for PACKAGE, a GNU package.'
complete -f -c guix -n '__fish_guix_using_command import; and __fish_seen_subcommand_from gnu' -a "--key-download=" -d 'handle missing OpenPGP keys according to POLICY: "always", "never", and "interactive", which is also used when "key-download" is not specified.'
##### import nix
complete -f -c guix -n '__fish_guix_using_command import; and not __fish_seen_subcommand_from $remotecommands' -a nix -d 'Import and convert the Nix expression ATTRIBUTE of NIXPKGS.'
##### import pypi
complete -f -c guix -n '__fish_guix_using_command import; and not __fish_seen_subcommand_from $remotecommands' -a pypi -d 'Import and convert the PyPI package for PACKAGE-NAME.'
##### import cpan

View File

@ -644,16 +644,13 @@ if DEVICE does not contain a NTFS file system."
(loop parts))))))))))
(define (ENOENT-safe proc)
"Wrap the one-argument PROC such that ENOENT errors are caught and lead to a
warning and #f as the result."
"Wrap the one-argument PROC such that ENOENT, EIO, and ENOMEDIUM errors are
caught and lead to a warning and #f as the result."
(lambda (device)
(catch 'system-error
(lambda ()
(proc device))
(lambda args
;; When running on the hand-made /dev,
;; 'disk-partitions' could return partitions for which
;; we have no /dev node. Handle that gracefully.
(let ((errno (system-error-errno args)))
(cond ((= ENOENT errno)
(format (current-error-port)
@ -671,11 +668,10 @@ warning and #f as the result."
(define (partition-field-reader read field)
"Return a procedure that takes a device and returns the value of a FIELD in
the partition superblock or #f."
(let ((read (ENOENT-safe read)))
(lambda (device)
(let ((sblock (read device)))
(and sblock
(field sblock))))))
(lambda (device)
(let ((sblock (read device)))
(and sblock
(field sblock)))))
(define (read-partition-field device partition-field-readers)
"Returns the value of a FIELD in the partition superblock of DEVICE or #f. It
@ -742,11 +738,14 @@ partition field reader that returned a value."
(define (partition-predicate reader =)
"Return a predicate that returns true if the FIELD of partition header that
was READ is = to the given value."
(lambda (expected)
(lambda (device)
(let ((actual (reader device)))
(and actual
(= actual expected))))))
;; When running on the hand-made /dev, 'disk-partitions' could return
;; partitions for which we have no /dev node. Handle that gracefully.
(let ((reader (ENOENT-safe reader)))
(lambda (expected)
(lambda (device)
(let ((actual (reader device)))
(and actual
(= actual expected)))))))
(define partition-label-predicate
(partition-predicate read-partition-label string=?))

View File

@ -61,7 +61,7 @@
(inexact->exact (ceiling (/ size 1024)))))
(define (estimate-partition-size root)
"Given the ROOT directory, evalute and return its size. As this doesn't
"Given the ROOT directory, evaluate and return its size. As this doesn't
take the partition metadata size into account, take a 25% margin."
(* 1.25 (file-size root)))

View File

@ -66,9 +66,14 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
#:export (%core-packages
#:export (derivation->job
image->job
%core-packages
%cross-targets
channel-source->package
arguments->systems
cuirass-jobs))
;;; Commentary:
@ -232,43 +237,48 @@ SYSTEM."
(define (hours hours)
(* 3600 hours))
(define* (image->job store image
#:key name system)
"Return the job for IMAGE on SYSTEM. If NAME is passed, use it as job name,
otherwise use the IMAGE name."
(let* ((image-name (or name
(symbol->string (image-name image))))
(name (string-append image-name "." system))
(drv (run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(lower-object (system-image image))))))
(parameterize ((%graft? #f))
(derivation->job name drv))))
(define (image-jobs store system)
"Return a list of jobs that build images for SYSTEM."
(define (->job name drv)
(let ((name (string-append name "." system)))
(parameterize ((%graft? #f))
(derivation->job name drv))))
(define (build-image image)
(run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(lower-object (system-image image)))))
(define MiB
(expt 2 20))
(if (member system %guix-system-supported-systems)
`(,(->job "usb-image"
(build-image
(image
(inherit efi-disk-image)
(operating-system installation-os))))
,(->job "iso9660-image"
(build-image
(image
(inherit (image-with-label
iso9660-image
(string-append "GUIX_" system "_"
(if (> (string-length %guix-version) 7)
(substring %guix-version 0 7)
%guix-version))))
(operating-system installation-os))))
`(,(image->job store
(image
(inherit efi-disk-image)
(operating-system installation-os))
#:name "usb-image"
#:system system)
,(image->job
store
(image
(inherit (image-with-label
iso9660-image
(string-append "GUIX_" system "_"
(if (> (string-length %guix-version) 7)
(substring %guix-version 0 7)
%guix-version))))
(operating-system installation-os))
#:name "iso9660-image"
#:system system)
;; Only cross-compile Guix System images from x86_64-linux for now.
,@(if (string=? system "x86_64-linux")
(map (lambda (image)
(->job (symbol->string (image-name image))
(build-image image)))
(map (cut image->job store <>
#:system system)
%guix-system-images)
'()))
'()))
@ -354,6 +364,7 @@ SYSTEM."
(>>= (profile-derivation (packages->manifest (list guix)))
(lambda (profile)
(self-contained-tarball "guix-binary" profile
#:profile-name "current-guix"
#:localstatedir? #t
#:compressor
(lookup-compressor "xz")))))
@ -434,6 +445,13 @@ valid."
load-manifest)
manifests))))
(define (arguments->systems arguments)
"Return the systems list from ARGUMENTS."
(match (assoc-ref arguments 'systems)
(#f %cuirass-supported-systems)
((lst ...) lst)
((? string? str) (call-with-input-string str read))))
;;;
;;; Cuirass entry point.
@ -445,10 +463,7 @@ valid."
(assoc-ref arguments 'subset))
(define systems
(match (assoc-ref arguments 'systems)
(#f %cuirass-supported-systems)
((lst ...) lst)
((? string? str) (call-with-input-string str read))))
(arguments->systems arguments))
(define channels
(let ((channels (assq-ref arguments 'channels)))
@ -513,6 +528,15 @@ valid."
('tarball
;; Build Guix tarball only.
(tarball-jobs store system))
(('custom . modules)
;; Build custom modules jobs only.
(append-map
(lambda (module)
(let ((proc (module-ref
(resolve-interface module)
'cuirass-jobs)))
(proc store arguments)))
modules))
(('channels . channels)
;; Build only the packages from CHANNELS.
(let ((all (all-packages)))

View File

@ -95,14 +95,17 @@ DEVICES list."
(define (run-label-page button-text button-callback)
"Run a page asking the user to select a partition table label."
(run-listbox-selection-page
#:info-text (G_ "Select a new partition table type. \
;; Force the GPT label if UEFI is supported.
(if (efi-installation?)
"gpt"
(run-listbox-selection-page
#:info-text (G_ "Select a new partition table type. \
Be careful, all data on the disk will be lost.")
#:title (G_ "Partition table")
#:listbox-items '("msdos" "gpt")
#:listbox-item->text identity
#:button-text button-text
#:button-callback-procedure button-callback))
#:title (G_ "Partition table")
#:listbox-items '("msdos" "gpt")
#:listbox-item->text identity
#:button-text button-text
#:button-callback-procedure button-callback)))
(define (run-type-page partition)
"Run a page asking the user to select a partition type."

View File

@ -70,6 +70,7 @@
small-freespace-partition?
esp-partition?
boot-partition?
efi-installation?
default-esp-mount-point
with-delay-device-in-use?
@ -193,12 +194,8 @@ inferior to MAX-SIZE, #f otherwise."
(define (esp-partition? partition)
"Return #t if partition has the ESP flag, return #f otherwise."
(let* ((disk (partition-disk partition))
(disk-type (disk-disk-type disk))
(has-extended? (disk-type-check-feature
disk-type
DISK-TYPE-FEATURE-EXTENDED)))
(disk-type (disk-disk-type disk)))
(and (data-partition? partition)
(not has-extended?)
(partition-is-flag-available? partition PARTITION-FLAG-ESP)
(partition-get-flag partition PARTITION-FLAG-ESP))))
@ -918,30 +915,26 @@ exists."
;; disk space. Otherwise, set the swap size to 5% of the disk space.
(swap-size (min default-swap-size five-percent-disk)))
(if has-extended?
;; msdos - remove everything.
(disk-remove-all-partitions disk)
;; gpt - remove everything but esp if it exists.
(for-each
(lambda (partition)
(and (data-partition? partition)
(disk-remove-partition* disk partition)))
non-boot-partitions))
;; Remove everything but esp if it exists.
(for-each
(lambda (partition)
(and (data-partition? partition)
(disk-remove-partition* disk partition)))
non-boot-partitions)
(let* ((start-partition
(and (not has-extended?)
(if (efi-installation?)
(and (not esp-partition)
(user-partition
(fs-type 'fat32)
(esp? #t)
(size new-esp-size)
(mount-point (default-esp-mount-point))))
(if (efi-installation?)
(and (not esp-partition)
(user-partition
(fs-type 'ext4)
(bootable? #t)
(bios-grub? #t)
(size bios-grub-size)))))
(fs-type 'fat32)
(esp? #t)
(size new-esp-size)
(mount-point (default-esp-mount-point))))
(user-partition
(fs-type 'ext4)
(bootable? #t)
(bios-grub? #t)
(size bios-grub-size))))
(new-partitions
(cond
((or (eq? scheme 'entire-root)

View File

@ -37,7 +37,8 @@
enter-host-name+passwords
choose-services
choose-partitioning
conclude-installation
start-installation
complete-installation
edit-configuration-file))
@ -281,14 +282,19 @@ instrumented for further testing."
(define* (choose-partitioning port
#:key
(encrypted? #t)
(uefi-support? #f)
(passphrase "thepassphrase")
(edit-configuration-file
edit-configuration-file))
"Converse over PORT to choose the partitioning method. When ENCRYPTED? is
true, choose full-disk encryption with PASSPHRASE as the LUKS passphrase.
When UEFI-SUPPORT? is true, assume that we are running the installation tests
on an UEFI capable machine.
This conversation stops when the user partitions have been formatted, right
before the installer generates the configuration file and shows it in a dialog
box."
box. "
(converse port
((list-selection (title "Partitioning method")
(multiple-choices? #f)
@ -306,11 +312,15 @@ box."
disks))
;; The "Partition table" dialog pops up only if there's not already a
;; partition table.
;; partition table and if the system does not support UEFI.
((list-selection (title "Partition table")
(multiple-choices? #f)
(items _))
;; When UEFI is supported, the partition is forced to GPT by the
;; installer.
(not uefi-support?)
"gpt")
((list-selection (title "Partition scheme")
(multiple-choices? #f)
(items (,one-partition _ ...)))
@ -338,10 +348,10 @@ box."
;; UUIDs before it generates the configuration file.
(values))))
(define (conclude-installation port)
"Conclude the installation by checking over PORT that we get the generated
(define (start-installation port)
"Start the installation by checking over PORT that we get the generated
configuration file, accepting it and starting the installation, and then
receiving the final messages once the 'guix system init' process has
receiving the pause message once the 'guix system init' process has
completed."
;; Assume the previous message received was 'starting-final-step'; here we
;; send the reply to that message, which lets the installer continue.
@ -355,8 +365,19 @@ completed."
(file ,configuration-file))
(edit-configuration-file configuration-file))
((pause) ;"Press Enter to continue."
#t)
((installation-complete) ;congratulations!
(values))))
(define (complete-installation port)
"Complete the installation by replying to the installer pause message and
waiting for the installation-complete message."
;; Assume the previous message received was 'pause'; here we send the reply
;; to that message, which lets the installer continue.
(write #t port)
(newline port)
(force-output port)
(converse port
((installation-complete)
(values))))
;;; Local Variables:

View File

@ -420,6 +420,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/openldap.scm \
%D%/packages/openpgp.scm \
%D%/packages/openstack.scm \
%D%/packages/orange.scm \
%D%/packages/orpheus.scm \
%D%/packages/ots.scm \
%D%/packages/package-management.scm \
@ -901,6 +902,7 @@ dist_patch_DATA = \
%D%/packages/patches/clang-9.0-libc-search-path.patch \
%D%/packages/patches/clang-10.0-libc-search-path.patch \
%D%/packages/patches/clang-11.0-libc-search-path.patch \
%D%/packages/patches/clang-12-tools-extra-directory.patch \
%D%/packages/patches/clang-runtime-asan-build-fixes.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \
@ -1084,7 +1086,6 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/gimp-make-gegl-introspect-optional.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glib-CVE-2021-27218.patch \
@ -1169,7 +1170,13 @@ dist_patch_DATA = \
%D%/packages/patches/grub-setup-root.patch \
%D%/packages/patches/grub-verifiers-Blocklist-fallout-cleanup.patch \
%D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/gst-libav-64channels-stack-corruption.patch \
%D%/packages/patches/gst-plugins-bad-fix-overflow.patch \
%D%/packages/patches/gst-plugins-base-fix-id3v2-invalid-read.patch \
%D%/packages/patches/gst-plugins-good-fix-test.patch \
%D%/packages/patches/gst-plugins-good-CVE-2021-3497.patch \
%D%/packages/patches/gst-plugins-good-CVE-2021-3498.patch \
%D%/packages/patches/gst-plugins-ugly-fix-out-of-bound-reads.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-skip-oom-test.patch \
%D%/packages/patches/guile-2.2-skip-so-test.patch \
@ -1368,6 +1375,7 @@ dist_patch_DATA = \
%D%/packages/patches/linkchecker-tests-require-network.patch \
%D%/packages/patches/linphone-desktop-without-sdk.patch \
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
%D%/packages/patches/linux-libre-arm64-generic-pinebook-lcd.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \
%D%/packages/patches/lirc-localstatedir.patch \
%D%/packages/patches/lirc-reproducible-build.patch \
@ -1735,8 +1743,6 @@ dist_patch_DATA = \
%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-system-nspr.patch \
%D%/packages/patches/ungoogled-chromium-system-opus.patch \
%D%/packages/patches/unison-fix-ocaml-4.08.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \

View File

@ -40,6 +40,7 @@
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021 Hyunseok Kim <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
;;; Copyright © 2021 WinterHound <winterhound@yandex.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -469,6 +470,34 @@ services.")
(license license:public-domain)
(home-page "https://cr.yp.to/daemontools.html")))
(define-public daemonize
(package
(name "daemonize")
(version "1.7.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bmc/daemonize")
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0w4g0iyssyw7dd0061881z8s5czcl01mz6v00znax57zfxjqpvnm"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; No tests available.
(home-page "http://software.clapper.org/daemonize/")
(synopsis "Command line utility to run a program as a daemon")
(description
"daemonize runs a command as a Unix daemon. It will close all open file
descriptors, change working directory of the process to the root filesystem,
reset its umask, run in the background, ignore I/O signals, handle
@code{SIGCLD}, etc. Most programs that are designed to be run as daemons do
that work for themselves. However, youll occasionally run across one that
does not. When you must run a daemon program that does not properly make
itself into a true Unix daemon, you can use daemonize to force it to run as a
true daemon.")
(license license:bsd-3)))
(define-public dfc
(package
(name "dfc")
@ -652,14 +681,13 @@ memory, disks, network and processes.")
(define-public bpytop
(package
(name "bpytop")
(version "1.0.63")
(version "1.0.64")
(source
(origin
(method url-fetch)
(uri (pypi-uri "bpytop" version))
(sha256
(base32
"0ql72s842g56rnzdqja6m53lw5y68c4gb540ihp1bjg7x9ycim11"))))
(base32 "02m25i79fp5cpz0i1b2r5is7z2w7pz2x2yqvlnmvsyqlssaai3vm"))))
(build-system python-build-system)
(inputs
`(("python-psutil" ,python-psutil)))
@ -679,7 +707,7 @@ memory, disks, network and processes.")
"https://github.com/aristocratos/bpytop")
(synopsis "Resource monitor")
(description "Resource monitor that shows usage and stats for processor,
memory, disks, network and processes. It's a Python port of
memory, disks, network and processes. It's a Python port and continuation of
@command{bashtop}.")
(license license:asl2.0)))
@ -1107,7 +1135,7 @@ connection alive.")
(define-public isc-dhcp
(let* ((bind-major-version "9")
(bind-minor-version "11")
(bind-patch-version "29")
(bind-patch-version "31")
(bind-release-type "") ; for patch release, use "-P"
(bind-release-version "") ; for patch release, e.g. "6"
(bind-version (string-append bind-major-version
@ -1244,7 +1272,7 @@ connection alive.")
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
"01vvkvlhsxz4ffz2fw86z0fsf170b93jjnn5710ai6vfri8wgfy7"))))
"0sm3vy5g21isdywxr650442x9r00fpj9cxc81n3qcbibyibl9wpm"))))
("coreutils*" ,coreutils)
("sed*" ,sed)))
@ -3566,14 +3594,14 @@ information tool.")
(define-public nnn
(package
(name "nnn")
(version "3.6")
(version "4.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/nnn-v" version ".tar.gz"))
(sha256
(base32 "1dbq16cdipij5ws59ab3alfmxli7n4wx28ip7gsyq8ncxg598l47"))))
(base32 "0m07nh1cdfikn4bkpni29j61hr9jdwbl0n5fmlm53l1xmn7yq6d2"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)
@ -3589,10 +3617,7 @@ information tool.")
(lambda _
(substitute* "Makefile"
(("pkg-config")
(or (which "pkg-config")
(string-append ,(%current-target-system)
"-pkg-config"))))
#t)))
,(pkg-config-for-target))))))
#:make-flags
(list
(string-append "PREFIX="
@ -3610,7 +3635,7 @@ make it a perfect utility on modern distros.")
(define-public thermald
(package
(name "thermald")
(version "2.4.3")
(version "2.4.4")
(source
(origin
(method git-fetch)
@ -3619,7 +3644,7 @@ make it a perfect utility on modern distros.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1ibihgpmx038xci0k2h471scs5ssn7z5kcvjrfz63qf2ppdf9yh8"))))
(base32 "1k0r2c13fihjndwfh0byw0i8ni4lzsjgwz874pvpj1l1nvjj0ajx"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -3808,7 +3833,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.3.03-1")
(version "3.3.04-1")
(source
(origin
(method git-fetch)
@ -3817,7 +3842,7 @@ Python loading in HPC environments.")
(commit version)))
(file-name (git-file-name real-name version))
(sha256
(base32 "1pahns10i5farw47v9v8cykrk5arq8218vpsa8c0bmaia0rf2n1q"))))
(base32 "1rrhycp8i43yf9wi80n4pq2hkfhvb2rg1srz8if28bh6fhhasjzw"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash-minimal)
@ -4018,7 +4043,7 @@ cache of unix and unix-like systems.")
(define-public solaar
(package
(name "solaar")
(version "1.0.5")
(version "1.0.6")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4027,7 +4052,7 @@ cache of unix and unix-like systems.")
(file-name (git-file-name name version))
(sha256
(base32
"17gkr2lf1kzp1198gcdr30j3c8xd81kg7ly12aar1jrgi6lc7klk"))))
"04zclzfc31l2fj5shcsngnmcvcmmhnc567l3wb9yfhs8k39k9kb2"))))
(build-system python-build-system)
(arguments
`(#:phases

View File

@ -341,7 +341,7 @@ precision.")
(define-public giac
(package
(name "giac")
(version "1.7.0-1")
(version "1.7.0-3")
(source
(origin
(method url-fetch)
@ -353,7 +353,7 @@ precision.")
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
(base32 "0s926aza2larfz02hrhdlpxn77yjlrhjg844b3fhwz11yj942p9q"))))
(base32 "1w3ij4pkkrq7lbsklkqa673fb7xjmap59hnmd2sinmr2nsfyq7qq"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 ftw)

View File

@ -887,13 +887,13 @@ JPL ephemerides use to predict raw (x,y,z) planetary positions.")
(define-public python-pyerfa
(package
(name "python-pyerfa")
(version "1.7.2")
(version "1.7.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyerfa" version))
(sha256
(base32 "1s78mdyrxha2jcckfs0wg5ynkf0pwh1bw9mmh99vprinxh9n4xri"))
(base32 "1jqqrxvrgly4r0br5f6dsy8nab2xmhz915vp6md5f31ysr2sdwvc"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1011,23 +1011,23 @@ astronomical images, especially when there is no WCS information available.")
(define-public python-skyfield
(package
(name "python-skyfield")
(version "1.38")
(version "1.39")
(source
(origin
(method url-fetch)
(uri (pypi-uri "skyfield" version))
(sha256
(base32 "1qi1l8qn6irdv6w41qq30s2yjwak7h6ayywr1pry9gwcm2c25bv5"))))
(base32 "1qh3k7g9dm6idppk87hnwxpx9a22xx98vav0zk31p6291drak3as"))))
(build-system python-build-system)
(arguments
;; NOTE: (Sharlatan-20210207T163305+0000): tests depend on custom test
;; framework https://github.com/brandon-rhodes/assay
`(#:tests? #f))
(inputs
`(("certifi" ,python-certifi)
("jplephem" ,python-jplephem)
("numpy" ,python-numpy)
("sgp4" ,python-sgp4)))
`(("python-certifi" ,python-certifi)
("python-jplephem" ,python-jplephem)
("python-numpy" ,python-numpy)
("python-sgp4" ,python-sgp4)))
(home-page "https://rhodesmill.org/skyfield/")
(synopsis "Astronomy for Python")
(description

View File

@ -302,7 +302,7 @@ Linux kernel.")
(define-public libopenmpt
(package
(name "libopenmpt")
(version "0.5.4")
(version "0.5.8")
(source
(origin
(method url-fetch)
@ -310,7 +310,7 @@ Linux kernel.")
(string-append "https://download.openmpt.org/archive/libopenmpt/src/"
"libopenmpt-" version "+release.autotools.tar.gz"))
(sha256
(base32 "0h7gpjx1221jwsq3k91p8zhf1h77qaxyasakc88s3g57vawhckgk"))))
(base32 "1kca5nc870mfv7i4ww2g1q9jn61gsq46irsypbr6fgxpfh8w5qi9"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -407,7 +407,7 @@ by MusicIP.")
(define-public libtimidity
(package
(name "libtimidity")
(version "0.2.6")
(version "0.2.7")
(source
(origin
(method url-fetch)
@ -415,7 +415,7 @@ by MusicIP.")
(string-append "https://sourceforge.net/projects/" name "/files/"
name "/" version "/" name "-" version ".tar.gz"))
(sha256
(base32 "0p2px0m907gi1zpdr0l9adq25jl89j85c11ag9s2g4yc6n1nhgfm"))))
(base32 "0sif6lxa058b1mg19zwjm8rl2sg8cg0443k4dgi65clz0jy7qi16"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; XXX: LibTiMidity could not be initialised

View File

@ -2,7 +2,7 @@
;;; Copyright © 2014, 2015, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
@ -719,14 +719,14 @@ to not fully trusted targets. Borg is a fork of Attic.")
(define-public wimlib
(package
(name "wimlib")
(version "1.13.3")
(version "1.13.4")
(source (origin
(method url-fetch)
(uri (string-append "https://wimlib.net/downloads/"
"wimlib-" version ".tar.gz"))
(sha256
(base32
"0zpsbl9iicc6y81xfl6kf8farwfsyrl63shc0idp654kgp8421wa"))))
"04ny5s5z05gk6davbwkjkraan781k2xzw6kjwp75h6ncv45dv1sb"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -736,7 +736,9 @@ to not fully trusted targets. Borg is a fork of Attic.")
("ntfs-3g" ,ntfs-3g)
("openssl" ,openssl)))
(arguments
`(#:configure-flags (list "--enable-test-support")))
`(#:configure-flags
(list "--disable-static"
"--enable-test-support")))
(home-page "https://wimlib.net/")
(synopsis "WIM file manipulation library and utilities")
(description "wimlib is a C library and set of command-line utilities for

View File

@ -7767,7 +7767,7 @@ accessibility data.")
(description
"@code{r-circrnaprofiler} is a computational framework for a comprehensive
in silico analysis of @dfn{circular RNA} (circRNAs). This computational
framework allows to combine and analyze circRNAs previously detected by
framework allows combining and analyzing circRNAs previously detected by
multiple publicly available annotation-based circRNA detection tools. It
covers different aspects of circRNAs analysis from differential expression
analysis, evolutionary conservation, biogenesis to functional analysis.")
@ -10550,7 +10550,7 @@ experiments, and visualize de influence of the involved factors.")
"https://bioconductor.org/packages/msmsTests")
(synopsis "Differential LC-MS/MS expression tests")
(description
"This packages provides statistical tests for label-free LC-MS/MS data
"This package provides statistical tests for label-free LC-MS/MS data
by spectral counts, to discover differentially expressed proteins between two
biological conditions. Three tests are available: Poisson GLM regression,
quasi-likelihood GLM regression, and the negative binomial of the edgeR

View File

@ -130,6 +130,7 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
#:use-module (gnu packages ruby)
#:use-module (gnu packages serialization)
#:use-module (gnu packages shells)
@ -144,6 +145,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages vim)
#:use-module (gnu packages web)
#:use-module (gnu packages wget)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (srfi srfi-1)
@ -327,7 +329,7 @@ BAM files.")
(define-public bcftools
(package
(name "bcftools")
(version "1.11")
(version "1.12")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/samtools/bcftools/"
@ -335,11 +337,11 @@ BAM files.")
version "/bcftools-" version ".tar.bz2"))
(sha256
(base32
"0r508mp15pqzf8r1269kb4v5naw9zsvbwd3cz8s1yj7carsf9viw"))
"1x94l1hy2pi3lbz0sxlbw0g6q5z5apcrhrlcwda94ns9n4r6a3ks"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.11")
(delete-file-recursively "htslib-1.12")
#t))))
(build-system gnu-build-system)
(arguments
@ -453,7 +455,7 @@ computational cluster.")
(define-public bedtools
(package
(name "bedtools")
(version "2.29.2")
(version "2.30.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/arq5x/bedtools2/releases/"
@ -461,7 +463,7 @@ computational cluster.")
"bedtools-" version ".tar.gz"))
(sha256
(base32
"0m3hk6548846w83a9s5drsczvy67n2azx41kj71n03klb2gbzwg3"))))
"1f2hh79l7dn147c2xyfgf5wfjvlqfw32kjfnnh2n1qy6rpzx2fik"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"
@ -473,7 +475,7 @@ computational cluster.")
(native-inputs
`(("python" ,python-wrapper)))
(inputs
`(("samtools" ,samtools-1.9)
`(("samtools" ,samtools)
("zlib" ,zlib)))
(home-page "https://github.com/arq5x/bedtools2")
(synopsis "Tools for genome analysis and arithmetic")
@ -4476,7 +4478,7 @@ performance.")
(define-public htslib
(package
(name "htslib")
(version "1.11")
(version "1.12")
(source (origin
(method url-fetch)
(uri (string-append
@ -4484,7 +4486,7 @@ performance.")
version "/htslib-" version ".tar.bz2"))
(sha256
(base32
"1mrq4mihzx37yqhj3sfz6da6mw49niia808bzsw2gkkgmadxvyng"))))
"1jplnvizgr0fyyvvmkfmnsywrrpqhid3760vw15bllz98qdi9012"))))
(build-system gnu-build-system)
;; Let htslib translate "gs://" and "s3://" to regular https links with
;; "--enable-gcs" and "--enable-s3". For these options to work, we also
@ -5901,7 +5903,7 @@ to the user's query of interest.")
(define-public samtools
(package
(name "samtools")
(version "1.11")
(version "1.12")
(source
(origin
(method url-fetch)
@ -5910,11 +5912,11 @@ to the user's query of interest.")
version "/samtools-" version ".tar.bz2"))
(sha256
(base32
"1dp5wknak4arnw5ghhif9mmljlfnw5bgm91wib7z0j8wdjywx0z2"))
"1jrdj2idpma5ja9cg0rr73b565vdbr9wyy6zig54bidicc2pg8vd"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.11")
(delete-file-recursively "htslib-1.12")
#t))))
(build-system gnu-build-system)
(arguments
@ -7249,6 +7251,43 @@ clustering analysis, differential analysis, motif inference and exploration of
single cell ATAC-seq sequencing data.")
(license license:gpl3)))
(define-public r-shinycell
(let ((commit
"aecbd56e66802f28e397f5ae1f19403aadd12163")
(revision "1"))
(package
(name "r-shinycell")
(version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/SGDDNB/ShinyCell")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"13jn2ikmvljnzayk485g1mmq5abcp9m1b8n1djdb1agmn83zaki5"))))
(properties `((upstream-name . "ShinyCell")))
(build-system r-build-system)
(propagated-inputs
`(("r-data-table" ,r-data-table)
("r-ggplot2" ,r-ggplot2)
("r-glue" ,r-glue)
("r-gridextra" ,r-gridextra)
("r-hdf5r" ,r-hdf5r)
("r-matrix" ,r-matrix)
("r-r-utils" ,r-r-utils)
("r-rcolorbrewer" ,r-rcolorbrewer)
("r-readr" ,r-readr)
("r-reticulate" ,r-reticulate)))
(home-page "https://github.com/SGDDNB/ShinyCell")
(synopsis "Shiny interactive web apps for single-cell data")
(description
"This package provides Shiny apps for interactive exploration of
single-cell data.")
(license license:gpl3))))
(define-public r-archr
(let ((commit "46b519ffb6f73edf132497ac31650d19ef055dc1")
(revision "1"))
@ -7563,6 +7602,64 @@ Perl and can be helpful if you want to filter, reformat, or trim your sequence
data. It also generates basic statistics for your sequences.")
(license license:gpl3+)))
(define-public shorah
(package
(name "shorah")
(version "1.99.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/cbg-ethz/shorah"
"/releases/download/v" version
"/shorah-" version ".tar.xz"))
(sha256
(base32
"158dir9qcqspknlnyfr9zwk41x48nrh5wcg10k2grh9cidp9daiq"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-test-wrapper
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(substitute* "examples/run_end2end_test"
(("\\$\\{interpreter\\} ../\\$\\{testscript\\}")
(string-append bin "/${testscript}"))))))
(delete 'check)
(add-after 'install 'wrap-programs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(site (string-append
out "/lib/python"
,(version-major+minor
(package-version python))
"/site-packages"))
(pythonpath (getenv "PYTHONPATH"))
(script (string-append out "/bin/shorah")))
(chmod script #o555)
(wrap-program script `("PYTHONPATH" ":" prefix (,site ,pythonpath))))))
(add-after 'wrap-programs 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "make" "check")))))))
(inputs
`(("boost" ,boost)
("htslib" ,htslib)
("python" ,python)
("python-biopython" ,python-biopython)
("python-numpy" ,python-numpy)
("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "")
(synopsis "Short reads assembly into haplotypes")
(description
"ShoRAH is a project for the analysis of next generation sequencing data.
It is designed to analyse genetically heterogeneous samples. Its tools
provide error correction, haplotype reconstruction and estimation of the
frequency of the different genetic variants present in a mixed sample.")
(license license:gpl3+)))
(define-public ruby-bio-kseq
(package
(name "ruby-bio-kseq")
@ -11853,7 +11950,7 @@ in an easily configurable manner.")
(define-public pigx-bsseq
(package
(name "pigx-bsseq")
(version "0.1.2")
(version "0.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/"
@ -11861,7 +11958,7 @@ in an easily configurable manner.")
"/pigx_bsseq-" version ".tar.gz"))
(sha256
(base32
"0mpzlay2d5cjpmrcp7knff6rg1c2mqszd638n7lw0mc0cycbp9f8"))))
"0blm0bl5z3ng01n7hh2ffk4rkzvf7vb3nm0crgdzrxr5cahxdxql"))))
(build-system gnu-build-system)
(arguments
`(;; TODO: tests currently require 12+GB of RAM. See
@ -11887,8 +11984,11 @@ in an easily configurable manner.")
("r-annotationhub" ,r-annotationhub)
("r-dt" ,r-dt)
("r-genomation" ,r-genomation)
("r-ggbio" ,r-ggbio)
("r-ggrepel" ,r-ggrepel)
("r-matrixstats" ,r-matrixstats)
("r-methylkit" ,r-methylkit)
("r-reshape2" ,r-reshape2)
("r-rtracklayer" ,r-rtracklayer)
("r-rmarkdown" ,r-rmarkdown)
("r-bookdown" ,r-bookdown)
@ -12490,7 +12590,7 @@ in RNA-seq data.")
("python-igraph" ,python-igraph)
("python-joblib" ,python-joblib)
("python-legacy-api-wrap" ,python-legacy-api-wrap)
("python-louvain" ,python-louvain)
("python-louvain" ,python-louvain-0.6)
("python-matplotlib" ,python-matplotlib)
("python-natsort" ,python-natsort)
("python-networkx" ,python-networkx)
@ -15061,6 +15161,154 @@ signaling, and more. It continues to be evolved and expanded by an
international community.")
(license license:lgpl2.1+)))
(define-public kraken2
(package
(name "kraken2")
(version "2.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/DerrickWood/kraken2")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0h7a7vygd7y5isbrnc6srwq6xj1rmyd33pm8mmcgfkmlxlg5vkg3"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #false ; there are none
#:make-flags (list "-C" "src"
(string-append "KRAKEN2_DIR="
(assoc-ref %outputs "out") "/bin"))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'install 'install-scripts
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append (assoc-ref outputs "out") "/bin"))
(replacements `(("KRAKEN2_DIR" . ,bin)
("VERSION" . ,,version))))
(mkdir-p bin)
(with-directory-excursion "scripts"
(let ((scripts (find-files "." ".*")))
(substitute* scripts
(("#####=([^=]+)=#####" _ key)
(or (assoc-ref replacements key)
(error (format #false "unknown key: ~a~%" key)))))
(substitute* "kraken2"
(("compression_program = \"bzip2\"")
(string-append "compression_program = \""
(which "bzip2")
"\""))
(("compression_program = \"gzip\"")
(string-append "compression_program = \""
(which "gzip")
"\"")))
(substitute* '("download_genomic_library.sh"
"download_taxonomy.sh"
"16S_gg_installation.sh"
"16S_silva_installation.sh"
"16S_rdp_installation.sh")
(("wget") (which "wget")))
(substitute* '("download_taxonomy.sh"
"download_genomic_library.sh"
"rsync_from_ncbi.pl")
(("rsync -")
(string-append (which "rsync") " -")))
(substitute* "mask_low_complexity.sh"
(("which") (which "which")))
(substitute* '("mask_low_complexity.sh"
"download_genomic_library.sh"
"16S_silva_installation.sh")
(("sed -e ")
(string-append (which "sed") " -e ")))
(substitute* '("rsync_from_ncbi.pl"
"16S_rdp_installation.sh"
"16S_silva_installation.sh"
"16S_gg_installation.sh"
"download_taxonomy.sh"
"download_genomic_library.sh")
(("gunzip") (which "gunzip")))
(for-each (lambda (script)
(chmod script #o555)
(install-file script bin))
scripts)))))))))
(inputs
`(("gzip" ,gzip)
("perl" ,perl)
("rsync" ,rsync)
("sed" ,sed)
("wget" ,wget)
("which" ,which)))
(home-page "https://github.com/DerrickWood/kraken2")
(synopsis "Taxonomic sequence classification system")
(description "Kraken is a taxonomic sequence classifier that assigns
taxonomic labels to DNA sequences. Kraken examines the k-mers within a query
sequence and uses the information within those k-mers to query a
database. That database maps k-mers to the lowest common ancestor (LCA) of all
genomes known to contain a given k-mer.")
(license license:expat)))
(define-public lofreq
(package
(name "lofreq")
(version "2.1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CSB5/lofreq")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qssrn3mgjak7df6iqc1rljqd3g3a5syvg0lsv4vds43s3fq23bl"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "bug-tests"
#:tests? #false)) ; test data are not included
(inputs
`(("htslib" ,htslib)
("python" ,python-wrapper)
("zlib" ,zlib)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("which" ,which)))
(home-page "https://csb5.github.io/lofreq/")
(synopsis "Sensitive variant calling from sequencing data ")
(description "LoFreq is a fast and sensitive variant-caller for inferring
SNVs and indels from next-generation sequencing data. It makes full use of
base-call qualities and other sources of errors inherent in
sequencing (e.g. mapping or base/indel alignment uncertainty), which are
usually ignored by other methods or only used for filtering.")
(license license:expat)))
(define-public python-pyliftover
(package
(name "python-pyliftover")
(version "0.4")
;; The version of pypi does not include test data.
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/konstantint/pyliftover")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1j8jp9iynv2l3jv5pr0pn0p3azlama1bqg233piglzm6bqh3m2m3"))))
(build-system python-build-system)
(arguments `(#:tests? #false)) ; the tests access the web
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://github.com/konstantint/pyliftover")
(synopsis "Python implementation of UCSC liftOver genome coordinate conversion")
(description
"PyLiftover is a library for quick and easy conversion of genomic (point)
coordinates between different assemblies.")
(license license:expat)))
(define-public r-signac
(let ((commit "e0512d348adeda4a3f23a2e8f56d1fe09840e03c")
(revision "1"))

View File

@ -1207,8 +1207,8 @@ order to add a suitable bootloader menu entry.")
(description "iPXE is a network boot firmware. It provides a full PXE
implementation enhanced with additional features such as booting from: a web
server via HTTP, an iSCSI SAN, a Fibre Channel SAN via FCoE, an AoE SAN, a
wireless network, a wide-area network, an Infiniband network. It allows to
control the boot process with a script. You can use iPXE to replace the
wireless network, a wide-area network, an Infiniband network. It
controls the boot process with a script. You can use iPXE to replace the
existing PXE ROM on your network card, or you can chainload into iPXE to obtain
the features of iPXE without the hassle of reflashing.")
(license license:gpl2+))))

View File

@ -49,7 +49,7 @@ supported content to the Kodi media center.")
(make-chromium-extension play-to-kodi))
(define uassets
(let ((commit "61b43044fbe7be0cf4e9c636fe96236dc52e44cf"))
(let ((commit "edfb13aaeaa9c8f943834f0465e7afac4b56aa98"))
(origin
(method git-fetch)
(uri (git-reference
@ -58,12 +58,12 @@ supported content to the Kodi media center.")
(file-name (git-file-name "uAssets" (string-take commit 9)))
(sha256
(base32
"03ikia0prmzsc34qa3418dc49ss8ari9hj6g3s6nvxrgyd127idi")))))
"0ivddccfblka5bzc9hxjl7ygv7g1pgy28w1cb43kipach8vh1alf")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.33.2")
(version "1.35.0")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
@ -71,7 +71,7 @@ supported content to the Kodi media center.")
(file-name (git-file-name name version))
(sha256
(base32
"1pdf3fzc7ld65gr87s1cdy2sb84jbqnyq9lvwg1mgzi9dg8x7639"))))
"07nlkrgwn1bcn5n2w7ik16ps12dckmjhn76qay6dz64f5754cgn3"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(arguments

View File

@ -8,7 +8,7 @@
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -953,15 +953,15 @@ CD data, and more. It's mostly compatible with @code{cdrtools}.")
(define-public libmirage
(package
(name "libmirage")
(version "3.2.4")
(version "3.2.5")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/cdemu/libmirage/libmirage-"
version ".tar.bz2"))
version ".tar.xz"))
(sha256
(base32
"0md3f71x2dbgyw5s254vx1s80slh3f25r9pvjihkrmj0rn53nnzw"))))
"0f8i2ha44rykkk3ac2q8zsw3y1zckw6qnf6zvkyrj3qqbzhrf3fm"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -982,15 +982,15 @@ the data stored in various image formats.")
(define-public cdemu-daemon
(package
(name "cdemu-daemon")
(version "3.2.4")
(version "3.2.5")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/cdemu/cdemu-daemon/"
"cdemu-daemon-" version ".tar.bz2"))
"cdemu-daemon-" version ".tar.xz"))
(sha256
(base32
"02yyj8sr7d5briamhzrqh8zdsiiggxmx5y05kx25y7k3g15jvcx6"))))
"16g6fv1lxkdmbsy6zh5sj54dvgwvm900fd18aq609yg8jnqm644d"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -1011,15 +1011,15 @@ drive and disc (including CD-ROMs and DVD-ROMs).")
(define-public cdemu-client
(package
(name "cdemu-client")
(version "3.2.4")
(version "3.2.5")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/cdemu/cdemu-client/cdemu-client-"
version ".tar.bz2"))
version ".tar.xz"))
(sha256
(base32
"1swylaja1p1jfjf3s58c9hsk1cyy20i7mrq32kcg6kzp88grs8my"))))
"1prrdhv0ia0axc6b73crszqzh802wlkihz6d100yvg7wbgmqabd7"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -2915,3 +2915,26 @@ system. The code under test requires no modification to work with pyfakefs.")
(description "Aiounittest is a library that helps write tests using
asynchronous code in Python (asyncio).")
(license license:expat)))
(define-public python-pytest-dependency
(package
(name "python-pytest-dependency")
(version "0.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pytest-dependency" version))
(sha256
(base32
"0swl3mxca7nnjbb5grfzrm3fa2750h9vjsha0f2kyrljc6895a62"))))
(build-system python-build-system)
(propagated-inputs
`(("python-pytest" ,python-pytest)))
(home-page
"https://github.com/RKrahl/pytest-dependency")
(synopsis "Manage dependencies of tests")
(description "This pytest plugin manages dependencies of tests. It allows
to mark some tests as dependent from other tests. These tests will then be
skipped if any of the dependencies did fail or has been skipped.")
(license license:asl2.0)))

View File

@ -150,9 +150,14 @@
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
"third_party/devtools-frontend/src/third_party/typescript" ;ASL2.0
"third_party/dom_distiller_js" ;BSD-3
"third_party/eigen3" ;MPL2.0
"third_party/emoji-segmenter" ;ASL2.0
"third_party/farmhash" ;Expat
"third_party/fdlibm" ;non-copyleft
"third_party/fft2d" ;non-copyleft
"third_party/flatbuffers" ;ASL2.0
"third_party/fusejs" ;ASL2.0
"third_party/gemmlowp" ;ASL2.0
"third_party/google_input_tools" ;ASL2.0
"third_party/google_input_tools/third_party/closure_library" ;ASL2.0
"third_party/google_input_tools/third_party/closure_library/third_party/closure" ;Expat
@ -171,8 +176,10 @@
"third_party/libXNVCtrl" ;Expat
"third_party/libaddressinput" ;ASL2.0
"third_party/libaom" ;BSD-2 or "Alliance for Open Media Patent License 1.0"
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
"third_party/libaom/source/libaom/third_party/vector" ;Expat
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
"third_party/libgav1" ;ASL2.0
"third_party/libgifcodec" ;MPL1.1/GPL2+/LGPL2.1+, BSD-3, BSD-2
"third_party/libjingle_xmpp" ;BSD-3
"third_party/libphonenumber" ;ASL2.0
@ -190,6 +197,7 @@
"third_party/libwebm" ;BSD-3
"third_party/libxml/chromium" ;BSD-3
"third_party/libyuv" ;BSD-3
"third_party/libzip" ;BSD-3
"third_party/lottie" ;Expat
"third_party/lss" ;BSD-3
"third_party/mako" ;Expat
@ -211,6 +219,7 @@
"third_party/pdfium/third_party/agg23" ;Expat
"third_party/pdfium/third_party/base" ;BSD-3
"third_party/pdfium/third_party/bigint" ;Public domain, BSD-3
"third_party/pdfium/third_party/libtiff" ;non-copyleft
"third_party/pdfium/third_party/skia_shared" ;BSD-3
"third_party/pdfium/third_party/freetype/include/pstables.h" ;FreeType
"third_party/perfetto" ;ASL2.0
@ -228,6 +237,7 @@
;; ABI relies on libstdc++ internals. See build/linux/unbundle/re2.gn.
"third_party/re2" ;BSD-3
"third_party/rnnoise" ;BSD-3
"third_party/ruy" ;ASL2.0
"third_party/s2cellid" ;ASL2.0
"third_party/schema_org" ;CC-BY-SA3.0
"third_party/securemessage" ;ASL2.0
@ -247,9 +257,15 @@
"third_party/swiftshader/third_party/subzero" ;NCSA
"third_party/swiftshader/third_party/SPIRV-Headers" ;X11-style
"third_party/tcmalloc/chromium" ;BSD-3
"third_party/tensorflow-text" ;ASL2.0
"third_party/tflite" ;ASL2.0
"third_party/tflite/src/third_party/eigen3" ;MPL2.0
"third_party/tflite/src/third_party/fft2d" ;ASL2.0
"third_party/tflite-support" ;ASL2.0
"third_party/ukey2" ;ASL2.0
"third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2
"third_party/utf" ;Expat
"third_party/vulkan-deps" ;ASL2.0, BSD-3, Expat
"third_party/vulkan_memory_allocator" ;Expat
"third_party/wayland/protocol" ;Expat
@ -269,6 +285,7 @@
"third_party/widevine/cdm/widevine_cdm_version.h" ;BSD-3
"third_party/widevine/cdm/widevine_cdm_common.h" ;BSD-3
"third_party/woff2" ;ASL2.0
"third_party/wuffs" ;ASL2.0
"third_party/xcbproto" ;X11
"third_party/xdg-utils" ;Expat
@ -293,7 +310,7 @@
;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
(define (debian-patch name revision hash)
(define* (debian-patch name hash #:optional (revision %debian-revision))
(origin
(method url-fetch)
(uri (string-append "https://salsa.debian.org/chromium-team/chromium/-/raw/"
@ -303,36 +320,34 @@
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
(define %ungoogled-revision "89.0.4389.114-1")
(define %debian-revision "debian/84.0.4147.105-1")
(define %chromium-version "90.0.4430.93")
(define %debian-revision "debian/90.0.4430.85-1")
(define %ungoogled-revision "90.0.4430.85-1-11-g3184907")
(define %debian-patches
(list (debian-patch "system/zlib.patch" %debian-revision
"09vqgs37w9ycc7par14wa7rnvmg9bm0z9pqg6fyl3iqvpghyjyr4")
(debian-patch "system/openjpeg.patch" %debian-revision
"0zd6v5njx1pc7i0y6mslxvpx5j4cq01mmyx55qcqx8qzkm0gm48j")))
(list (debian-patch "fixes/missing-includes.patch"
"1f0drxp1cy76g71rkkzxxbwixn03yn9b0q22vb0mb6h2qk6cw92q")
(debian-patch "fixes/nomerge.patch"
"0lybs2b5gk08j8cr6vjrs9d3drd7qfw013z2r0y00by8dnpm74i3")
(debian-patch "system/nspr.patch"
"1gdirn1k1i841l8zp8xgr95kl16b5nx827am9rcxj8sfkm8hgkn3")
(debian-patch "system/zlib.patch"
"0j313bd3q8qc065j60x97dckrfgbwl4qxc8jhz33iihvv4lwziwv")
(debian-patch "system/openjpeg.patch"
"048405xh84pys0kky81vlqhaxjyxvcql4py217z01qxiv991zxaj")))
(define %ungoogled-origin
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium")
(commit %ungoogled-revision)))
(file-name (git-file-name "ungoogled-chromium"
(if (= 40 (string-length %ungoogled-revision))
(string-take %ungoogled-revision 7)
%ungoogled-revision)))
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"0cr2i51gxhgl55c8f9w0ra3m5q2dk03sf7p2qn4bqq1l1l72hw6s"))))
"18xfwgkw3xarxcgnzvyv70h4icyqh3k8lfx6fvhp7fsr6x20sai0"))))
(define %guix-patches
(list (local-file
(assume-valid-file-name
(search-patch "ungoogled-chromium-system-nspr.patch")))
(local-file
(assume-valid-file-name
(search-patch "ungoogled-chromium-system-opus.patch")))
(local-file
(assume-valid-file-name
(search-patch "ungoogled-chromium-extension-search-path.patch")))))
@ -415,7 +430,7 @@
(define libvpx/chromium
(package
(inherit libvpx)
(version "1.9.0-104-gb5d77a48d")
(version "1.9.0-147-g61edec1ef")
(source (origin
(inherit (package-source libvpx))
(uri (git-reference
@ -424,7 +439,7 @@
(file-name (git-file-name "libvpx" version))
(sha256
(base32
"07nkpx8myw5nd4bkaj6l4wr5ipk2c6lg9cwirz0i5qbr659051rk"))))))
"0mw13y7j2lg8jj3alm9367c3b40b6s218fdz3nn1m2k85c78wzr7"))))))
;; 'make-ld-wrapper' can only work with an 'ld' executable, so we need
;; this trick to make it wrap 'lld'.
@ -454,17 +469,19 @@
(define-public ungoogled-chromium
(package
(name "ungoogled-chromium")
(version %ungoogled-revision)
(version (string-append %chromium-version "-0."
(match (string-split %ungoogled-revision #\-)
((version revision commits g+short)
(string-drop g+short 1)))))
(synopsis "Graphical web browser")
(source (origin
(method url-fetch)
(uri (string-append "https://commondatastorage.googleapis.com"
"/chromium-browser-official/chromium-"
(string-drop-right %ungoogled-revision 2)
".tar.xz"))
%chromium-version ".tar.xz"))
(sha256
(base32
"007df9p78bbmk3iyfi8qn57mmn68qqrdhx6z8n2hl8ksd7lspw7j"))
"0zimr975vp0v12zz1nqjwag3f0q147wrmdhpzgi4yf089rgwfbjk"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@ -506,6 +523,9 @@
"enable_widevine=false"
;; Disable type-checking for the Web UI to avoid a Java dependency.
"enable_js_type_check=false"
;; Disable code using TensorFlow until it has been scrutinized
;; by the ungoogled project.
"build_with_tflite_lib=false"
;; Define a custom toolchain that simply looks up CC, AR and
;; friends from the environment.
@ -565,7 +585,13 @@
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda _
(lambda* (#:key inputs #:allow-other-keys)
(let ((openjpeg (assoc-ref inputs "openjpeg")))
(substitute* "third_party/pdfium/BUILD.gn"
;; This include path is added by Debians openjpeg patch.
(("/usr/include/openjpeg")
(string-append openjpeg "/include/openjpeg"))))
(substitute*
'("base/process/launch_posix.cc"
"base/third_party/dynamic_annotations/dynamic_annotations.c"
@ -735,6 +761,7 @@
"chrome_200_percent.pak"
"resources.pak"
"v8_context_snapshot.bin"
;; Chromium ships its own libGL
;; implementation called ANGLE.
"libEGL.so" "libGLESv2.so"))

View File

@ -55,8 +55,8 @@
#:use-module (guix build-system gnu))
(define-public cuirass
(let ((commit "922cc66089035d4dbc277df06366e41a0806bffb")
(revision "11"))
(let ((commit "40b32387cf290a84660d34c42da0637bc93c2b00")
(revision "16"))
(package
(name "cuirass")
(version (git-version "1.0.0" revision commit))
@ -69,7 +69,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1kanag19dvaqpij7j6gznsfzajc5iir9qj6vq016bc4al5x6ggj4"))))
"0sxcms1lz3mn02a48gqrlapyg2p2jjrsc9pjvri2lkq0lyy02w7b"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build utils)

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2021 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,7 +25,9 @@
#:use-module (gnu packages dbm)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl))
#:use-module (gnu packages perl)
#:use-module (gnu packages web)
#:use-module (gnu packages xml))
(define-public gnucobol
(package
@ -43,7 +45,10 @@
(arguments
'(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
"/lib")
(string-append "JSON_C_CFLAGS=-I"
(assoc-ref %build-inputs "json-c")
"/include/json-c"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'place-cobol85-test-suite
@ -55,19 +60,21 @@
(lambda _ (setenv "TERM" "xterm-256color"))))
#:test-target "checkall"))
(native-inputs
`(("perl" ,perl)))
(inputs
`(("bdb" ,bdb)
("gmp" ,gmp)
("ncurses" ,ncurses)
`(("perl" ,perl)
("newcob" ,(origin
(method url-fetch)
(uri "https://www.itl.nist.gov/div897/ctg/suites/newcob.val.Z")
(sha256
(base32
"1yb1plmv4firfnbb119r2vh1hay221w1ya34nyz0qwsxppfr56hy"))))))
(inputs
`(("bdb" ,bdb)
("gmp" ,gmp)
("json-c" ,json-c)
("libxml2" ,libxml2)
("ncurses" ,ncurses)))
(build-system gnu-build-system)
(home-page "https://savannah.gnu.org/projects/gnucobol/")
(home-page "https://www.gnu.org/software/gnucobol/")
(synopsis "A modern COBOL compiler")
(description "GnuCOBOL is a free, modern COBOL compiler. GnuCOBOL
implements a substantial part of the COBOL 85, COBOL 2002 and COBOL 2014

View File

@ -15,6 +15,7 @@
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 lu hui <luhuins@163.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -135,7 +136,8 @@ highlighting your own code that seemed comprehensible when you wrote it.")
(base32
"10vvsgx8v54whb4j9mk5qqyb5h3rdd9da0il3wir8pcpksyk0dww"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
(inputs `(("coreutils" ,coreutils)
("ncurses" ,ncurses)
("libltdl" ,libltdl)
("sqlite" ,sqlite)
("python-wrapper" ,python-wrapper)))
@ -149,6 +151,12 @@ highlighting your own code that seemed comprehensible when you wrote it.")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-globash
(lambda* (#:key inputs #:allow-other-keys)
(let* ((echo (string-append
(assoc-ref inputs "coreutils") "/bin/echo")))
(substitute* "globash/globash.in"
(("/bin/echo") echo)))))
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
;; Install the plugin files in the right place.

View File

@ -3936,6 +3936,9 @@ is the GNU Compiler Collection.")
(define-public gcc-toolchain-10
(make-gcc-toolchain gcc-10))
(define-public gcc-toolchain-11
(make-gcc-toolchain gcc-11))
(define-public gcc-toolchain-aka-gcc
;; It's natural for users to try "guix install gcc". This package
;; automatically "redirects" them to 'gcc-toolchain'.

View File

@ -273,7 +273,7 @@ combination of these streams.")
(define-public xsimd
(package
(name "xsimd")
(version "7.4.10")
(version "7.5.0")
(source
(origin
(method git-fetch)
@ -281,7 +281,7 @@ combination of these streams.")
(url "https://github.com/QuantStack/xsimd")
(commit version)))
(sha256
(base32 "097yvxrxdldi5s5m4nsxv8f4gwv9xj42mqig98a1z3hkjj1j2gn5"))
(base32 "0c9pq5vz43j99z83w3b9qylfi66mn749k1afpv5cwfxggbxvy63f"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -775,7 +775,7 @@ standard GNU style syntax for options.")
(define-public folly
(package
(name "folly")
(version "2021.01.25.00")
(version "2021.04.26.00")
(source (origin
(method git-fetch)
(uri (git-reference
@ -784,7 +784,7 @@ standard GNU style syntax for options.")
(file-name (git-file-name name version))
(sha256
(base32
"14dl1g6vf7mc90mcync5h2lp14fwcx8n9h91pmiq6rfgv1fjjrwz"))))
"0s3jb02qjl9f4gfj01pa01cilkfpc4p0gbpn6bg5vcicyj76garg"))))
(build-system cmake-build-system)
(arguments
'(;; Tests must be explicitly enabled

View File

@ -28260,6 +28260,80 @@ Xiaohui Yan, Jiafeng Guo, Yanyan Lan, Xueqi Cheng (2013)
BTM-WWW13.pdf}.")
(license license:asl2.0)))
(define-public r-rjsonio
(package
(name "r-rjsonio")
(version "1.3-1.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "RJSONIO" version))
(sha256
(base32
"141ijm9570mg1180isvi0jb9vd3b08s5gb9dl1wa5v0m3s9jq52l"))))
(properties `((upstream-name . "RJSONIO")))
(build-system r-build-system)
(home-page "https://cran.r-project.org/package=RJSONIO")
(synopsis "Serialize R objects to JSON")
(description
"This is a package that allows conversion to and from data in JavaScript
Object Notation (JSON) format. This allows R objects to be inserted into
Javascript/ECMAScript/ActionScript code and allows R programmers to read and
convert JSON content to R objects. This is an alternative to the @code{rjson}
package.")
(license license:bsd-3)))
(define-public r-revgeo
(package
(name "r-revgeo")
(version "0.15")
(source
(origin
(method url-fetch)
(uri (cran-uri "revgeo" version))
(sha256
(base32
"1ns7d1817475lriss6wwgvdm6lj760p40yxqaifla13c2xb73a55"))))
(properties `((upstream-name . "revgeo")))
(build-system r-build-system)
(propagated-inputs
`(("r-rcurl" ,r-rcurl)
("r-rjsonio" ,r-rjsonio)))
(home-page "https://cran.r-project.org/package=revgeo")
(synopsis "Reverse geocoding")
(description
"The @code{revgeo} procedure allows you to use the Photon geocoder for
OpenStreetMap, Google Maps, and Bing to reverse geocode coordinate pairs with
minimal hassle.")
(license license:gpl3+)))
(define-public r-qpcr
(package
(name "r-qpcr")
(version "1.4-1")
(source
(origin
(method url-fetch)
(uri (cran-uri "qpcR" version))
(sha256
(base32
"1r01q7jv3w59yx1gc0qw91rq7rvdhqsi8y57sqqkmwyqfw2x2vsv"))))
(properties `((upstream-name . "qpcR")))
(build-system r-build-system)
(propagated-inputs
`(("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
("r-minpack-lm" ,r-minpack-lm)
("r-rgl" ,r-rgl)
("r-robustbase" ,r-robustbase)))
(home-page "https://cran.r-project.org/package=qpcR")
(synopsis "Modelling and analysis of real-time PCR data")
(description
"This is a package for model fitting, optimal model selection and
calculation of various features that are essential in the analysis of
quantitative real-time polymerase chain reaction (qPCR).")
(license license:gpl2+)))
(define-public r-textplot
(package
(name "r-textplot")

View File

@ -2532,7 +2532,7 @@ properly display animated cursors.")
(synopsis "Bindings to libwayland-egl")
(description
"This crate provides bindings for OpenGL/Vulkan support for
Wayland client apps. It allows to create an EGLSurface from any
Wayland client apps. It creates an EGLSurface from any
WlSurface, which can then play the role of the base surface for
initializing an OpenGL or Vulkan context.")
(license license:expat)))

View File

@ -15831,7 +15831,7 @@ derived from an internal hasher used in FireFox and Rustc.")
(home-page "https://github.com/Stebalien/gag-rs")
(synopsis "Gag, redirect, or hold stdout/stderr output")
(description
"This packages gags, redirects, or holds stdout/stderr output.")
"This package gags, redirects, or holds stdout/stderr output.")
(license license:expat)))
(define-public rust-galil-seiferas-0.1
@ -20378,8 +20378,8 @@ byte slices for sets of ASCII characters or bytes.")
(home-page "https://github.com/jni-rs/jni-rs")
(synopsis "Rust bindings to the JNI")
(description
"This package provides Rust bindings to the JNI. It permits to
implement native Java methods for JVM and Android in Rust, call Java
"This package provides Rust bindings to the JNI. It
implements native Java methods for JVM and Android in Rust, call Java
code from Rust, embed JVM in Rust applications and use any Java
libraries.")
(license (list license:expat license:asl2.0))))
@ -27399,7 +27399,7 @@ deserialization, and interpreter in Rust.")
(("rust-easy-parallel" ,rust-easy-parallel-3))))
(home-page "https://github.com/stjepang/parking")
(synopsis "Thread parking and unparking")
(description "This packages provides methods for thread parking and
(description "This package provides methods for thread parking and
unparking.")
(license (list license:asl2.0 license:expat))))
@ -27707,7 +27707,7 @@ synchronization primitives.")
(home-page "")
(synopsis "Parse zoneinfo files from the IANA database")
(description
"This packages parses zoneinfo files from the IANA database.")
"This package parses zoneinfo files from the IANA database.")
(license license:expat)))
(define-public rust-partial-io-0.3
@ -32078,7 +32078,7 @@ Rust.")
(home-page "https://github.com/jonathandturner/rawkey")
(synopsis "Raw terminal key input")
(description
"This packages provides support for raw key input in terminals.")
"This package provides support for raw key input in terminals.")
(license license:expat)))
(define-public rust-rayon-core-1
@ -42640,7 +42640,7 @@ closures after a delay or at a given timestamp.")
(("rust-lazy-static" ,rust-lazy-static-0.2))))
(home-page "https://github.com/savage13/tint")
(synopsis "Color creation and manipulation")
(description "This packages provides tools for color creation and
(description "This package provides tools for color creation and
manipulation in Rust.")
(license license:expat)))

View File

@ -7,7 +7,7 @@
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018, 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
@ -782,6 +782,7 @@ data on your platform, so the seed itself will be as random as possible.
(commit
(string-append "CRYPTOPP_"
(string-replace-substring version "." "_")))))
(file-name (git-file-name name version))
(sha256
(base32
"0in7rlazq91vfi519g9wr7bh87hii47cimxv7fmj0f88vhjaidq3"))))

View File

@ -28,7 +28,7 @@
;;; Copyright © 2017, 2018 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com>
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
@ -49,6 +49,7 @@
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 David Larsson <david.larsson@selfhosted.xyz>
;;; Copyright © 2021 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2073,6 +2074,36 @@ Driver.")
;; COPYING contains copy of lgpl2.1 - but copyright notices just say "LGPL"
(home-page "http://www.unixodbc.org")))
(define-public nanodbc
(package
(name "nanodbc")
(version "2.13.0")
(source (origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/nanodbc/nanodbc")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1q80p7yv9mcl4hyvnvcjdr70y8nc940ypf368lp97vpqn5yckkgm"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
;; The tests require ODBC backends to be installed.
(list "-DNANODBC_DISABLE_TESTS=ON"
"-DBUILD_SHARED_LIBS=ON")
#:tests? #false))
(inputs
`(("unixodbc" ,unixodbc)))
(home-page "https://nanodbc.io/")
(synopsis "C++ wrapper for the native C ODBC API")
(description "The goal for nanodbc is to make developers happy by providing
a simpler and less verbose API for working with ODBC. Common tasks should be
easy, requiring concise and simple code.")
(license license:expat)))
(define-public unqlite
(package
(name "unqlite")
@ -2151,6 +2182,27 @@ sets, bitmaps and hyperloglogs.")
(home-page "https://redis.io/")
(license license:bsd-3)))
(define-public ruby-redis
(package
(name "ruby-redis")
(version "4.2.5")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "redis" version))
(sha256
(base32
"15x2sr6h094rjbvg8pkq6m3lcd5abpyx93aifvfdz3wv6x55xa48"))))
(build-system ruby-build-system)
(arguments
`(#:tests? #f)) ; Tests require a running redis server.
(synopsis "Ruby client for Redis' API")
(description
"This package provides a Ruby client that tries to match Redis' API
one-to-one, while still providing an idiomatic interface.")
(home-page "https://github.com/redis/redis-rb")
(license license:expat)))
(define-public kyotocabinet
(package
(name "kyotocabinet")
@ -3836,14 +3888,14 @@ PostreSQL, SQLite, ODBC and MySQL.")
(define-public freetds
(package
(name "freetds")
(version "1.2.19")
(version "1.2.20")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.freetds.org/files/stable/"
"freetds-" version ".tar.gz"))
(sha256
(base32 "11xf2w8gh2p9cq4i38jfvdiwgig8wqbg098xjc08kx4iii8lxy3m"))))
(base32 "11fzwcahc1bc8npxbif0448v9cwyf7k04167i7fcspmfw7a0hj0d"))))
(build-system gnu-build-system)
(arguments
;; NOTE: (Sharlatan-20210110213908+0000) some tests require DB connection,

View File

@ -126,7 +126,7 @@ contains the archive keys used for that.")
(define-public debootstrap
(package
(name "debootstrap")
(version "1.0.123")
(version "1.0.124")
(source
(origin
(method git-fetch)
@ -135,7 +135,7 @@ contains the archive keys used for that.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0fr5ir8arzisx71jybbk4xz85waz50lf2y052nfimzh6vv9dx54c"))))
(base32 "0pbvrp7gb87pwmjika5hy97342mdfvm0gmy23ag8xz1nnpmn160j"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2017, 2018, 2019, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
@ -113,14 +113,14 @@ acronyms distributed as an info document.")
(define-public gcide
(package
(name "gcide")
(version "0.52")
(version "0.53")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://gnu/gcide/gcide-" version ".tar.xz"))
(sha256
(base32
"1n3bp91sik66z3ca7mjqbr9nck3hg5ck0c8g84xc0qnfpx5vznh2"))))
"17rigzfmih5i1z5s5v1hdr1jw8rngf40768kblnh5kp19ncbvb6k"))))
(build-system copy-build-system)
(arguments
'(#:install-plan

View File

@ -13,7 +13,7 @@
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019, 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019, 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
@ -494,14 +494,14 @@ and a @command{fsck.vfat} compatibility symlink for use in an initrd.")
(define-public sdparm
(package
(name "sdparm")
(version "1.11")
(version "1.12")
(source
(origin
(method url-fetch)
(uri (string-append "http://sg.danny.cz/sg/p/"
"sdparm-" version ".tar.xz"))
(sha256
(base32 "1nqjc4w2w47zavcbf5xmm53x1zbwgljaw1lpajcdi537cgy32fa8"))))
(base32 "1gmdxr36allrgap2j4dv238d8awkj327ww0jjwpjwrpbvfpyzjf4"))))
(build-system gnu-build-system)
(home-page "http://sg.danny.cz/sg/sdparm.html")
(synopsis "Provide access to SCSI device parameters")
@ -1216,3 +1216,40 @@ that support this feature).")
built on top of jemalloc which enables control of memory characteristics
and a partitioning of the heap between kinds of memory (for NUMA).")
(license license:bsd-3)))
(define-public mmc-utils
(let ((commit "e9654ebc4a6a48642848822c4a1355a9de4958d1")
(revision "0"))
(package
(name "mmc-utils")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1dbsppsmky0r4z6kxwczrw8pih8bhc2pb61gsvs986r4xy6jr17a"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No test suite
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))
(string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
;; No ./configure script
(delete 'configure)
;; The Makefile's "install-man" target is a no-op.
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man1 (string-append out "/share/man/man1")))
(install-file "man/mmc.1" man1)))))))
(home-page "https://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc-utils.git/")
(synopsis "Configure MMC storage devices from userspace")
(description "mmc-utils is a command-line tool for configuring and
inspecting MMC storage devices from userspace.")
(license license:gpl2))))

View File

@ -320,7 +320,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
;; When updating, check whether isc-dhcp's bundled copy should be as well.
;; The BIND release notes are available here:
;; https://www.isc.org/bind/
(version "9.16.13")
(version "9.16.15")
(source (origin
(method url-fetch)
(uri (string-append
@ -328,7 +328,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
"/bind-" version ".tar.xz"))
(sha256
(base32
"026cliyj570wxvvij96mrzsxyf421xv9a80gc5gv6savza9wfk55"))))
"0fbqisrh84f8wszm94cqp7v8q9r7pql3qyzbay7vz9vqv0rg9dlq"))))
(build-system gnu-build-system)
(outputs `("out" "utils"))
(inputs

View File

@ -614,14 +614,14 @@ Portuguese, Spanish and Italian.")
(define-public fet
(package
(name "fet")
(version "5.49.1")
(version "6.0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
"fet-" version ".tar.bz2"))
(sha256
(base32 "1aa8xnhwvbhvp7yigcdk7qdwqh59yyfknqbpn3ybgjljc22m8w5n"))))
(base32 "08q265i43bnj9syh3xlp11fr47xmzb0nma3nnwm76xq314102f0f"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -653,14 +653,14 @@ hours.")
(define-public klavaro
(package
(name "klavaro")
(version "3.11")
(version "3.12")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/klavaro/klavaro-"
version ".tar.bz2"))
(sha256
(base32 "1rkxaqb62w4mv86fcnmr32lq6y0h4hh92wmsy5ddb9a8jnzx6r7w"))))
(base32 "0ymrmgllyjk9wp1f1ayw51xc3myar8ld9a5531wdbrym0xzy4l64"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -669,6 +669,7 @@ hours.")
`(("cairo" ,cairo)
("curl" ,curl)
("gtk+" ,gtk+)
("gtkdatabox" ,gtkdatabox)
("pango" ,pango)))
(home-page "https://klavaro.sourceforge.io/en/index.html")
(synopsis "Touch typing tutor")

View File

@ -43,6 +43,7 @@
#:use-module (gnu packages libftdi)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages qt))
@ -308,22 +309,23 @@ individual low-level driver modules.")
(define-public xoscope
(package
(name "xoscope")
(version "2.2")
(version "2.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xoscope/xoscope/"
version "/xoscope-" version ".tar.gz"))
(sha256
(base32
"1b9wxnrwz8qy6qyx5icrklb4720rlxnr1c4h3dr6g0dzj6nkc5av"))))
"0a5ycfc1qdmibvagc82r2mhv2i99m6pndy5i6ixas3j2297g6pgq"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
`(("m4" ,m4)
("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("comedilib" ,comedilib)
("fftw" ,fftw)
("gtk+-2" ,gtk+-2)
("gtk+" ,gtk+)
("gtkdatabox" ,gtkdatabox)))
(synopsis "Digital oscilloscope")
(description "Xoscope is a digital oscilloscope that can acquire signals

View File

@ -318,6 +318,29 @@ using geiser.")
a generic Scheme interaction mode for the GNU Emacs editor.")
(license license:expat)))
(define-public emacs-vc-hgcmd
(package
(name "emacs-vc-hgcmd")
(version "1.13")
(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
"14c2brvw6vnf1h3lbpap4jh5d7mjnzxrbny4jk77832v09mj2ria"))))
(build-system emacs-build-system)
(home-page "https://github.com/muffinmad/emacs-vc-hgcmd")
(synopsis "Version control (VC) backend for the Mercurial command server")
(description
"This package provides an Emacs VC backend to work with Mercurial
repositories through the
@uref{https://www.mercurial-scm.org/wiki/CommandServer,Mercurial command
server}. The main advantage compared to @code{vc-hg} is speed.")
(license license:gpl3+)))
(define-public emacs-hyperbole
(package
(name "emacs-hyperbole")
@ -336,6 +359,7 @@ a generic Scheme interaction mode for the GNU Emacs editor.")
`(#:include '("DEMO"
"DEMO-ROLO.otl"
"HY-ABOUT"
"man/hkey-help.txt"
"\\.el$"
"\\.info$"
"\\.kotl$")
@ -350,8 +374,15 @@ a generic Scheme interaction mode for the GNU Emacs editor.")
(string-append (assoc-ref inputs "inetutils")
"/bin/dnsdomainname")))
(substitute* "hyperbole.el"
(("\\(hyperb:check-dir-user\\)") ""))
#t)))))
(("\\(hyperb:check-dir-user\\)") ""))))
(add-after 'install 'install-images
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(for-each (lambda (file)
(install-file
file
(string-append out "/share/info/im")))
(find-files "man/im" "\\.png$"))))))))
(inputs
`(("inetutils" ,inetutils)))
(home-page "https://www.gnu.org/software/hyperbole/")
@ -2276,14 +2307,14 @@ as a library for other Emacs packages.")
(define-public emacs-auctex
(package
(name "emacs-auctex")
(version "13.0.6")
(version "13.0.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"auctex-" version ".tar"))
(sha256
(base32 "00wp388rh2nnk8fam53kilykg90jylps31qxv9ijy1lsp1hqdjys"))))
(base32 "150b0xh71xwva7599arjapspdxyy70yyk6a5nabaq22w3dcpasb5"))))
(build-system emacs-build-system)
;; We use 'emacs' because AUCTeX requires dbus at compile time
;; ('emacs-minimal' does not provide dbus).
@ -2511,6 +2542,28 @@ Its features are:
;; Software is dual-licensed.
(license (list license:unlicense license:wtfpl2))))
(define-public emacs-corfu
(package
(name "emacs-corfu")
(version "0.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/minad/corfu")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1yw90clfbqny2pchjc1cxqgr0gjag7bz6hys6jgidsxifzr662ps"))))
(build-system emacs-build-system)
(home-page "https://github.com/minad/corfu")
(synopsis "Completion overlay region function")
(description "Corfu enhances the default completion in region function
with a completion overlay. The current candidates are shown in a popup
overlay below or above the point. Corfu can be considered the minimalistic
@code{completion-in-region} counterpart of the Vertico minibuffer UI.")
(license license:gpl3+)))
(define-public emacs-direnv
(package
(name "emacs-direnv")
@ -4875,6 +4928,27 @@ file).")
"This package provides a macro that writes your namespaces for you.")
(license license:gpl3+))))
(define-public emacs-nameless
(package
(name "emacs-nameless")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Malabarba/Nameless")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "107q1rximjnag9r9vgwh0iv687i3rsscbdnjc46f8l16j6vi4n7d"))))
(build-system emacs-build-system)
(home-page "https://github.com/Malabarba/nameless")
(synopsis "Hide package namespace in your Emacs-lisp code")
(description
"This package provides a @code{nameless-mode} minor mode in which the
package namespace prefix is hidden by a colon.")
(license license:gpl2+)))
(define-public emacs-evil-leader
(package
(name "emacs-evil-leader")
@ -5291,14 +5365,14 @@ source code using IPython.")
(define-public emacs-debbugs
(package
(name "emacs-debbugs")
(version "0.27")
(version "0.28")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
version ".tar"))
(sha256
(base32 "1zn9p9vmfv5ihrp8d06b6abs48q225v42cgwa01s39hld6zg6wbv"))))
(base32 "1qks38hpg3drhxzw66n5yxfq0v6fj9ya7d9dc6x0xwfp6r2x0li0"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
(propagated-inputs
@ -7444,7 +7518,7 @@ style, or as multiple word prefixes.")
(home-page "https://github.com/minad/consult")
(synopsis "Consulting completing-read")
(description "This package provides various handy commands based on the
Emacs completion function completing-read, which allows to quickly select from a
Emacs completion function completing-read, which allows quickly selecting from a
list of candidates.")
(license license:gpl3+)))
@ -7764,7 +7838,7 @@ after buffer changes.")
(description
"RealGUD is a modular, extensible GNU Emacs front-end for interacting
with external debuggers. It integrates various debuggers such as gdb, pdb,
ipdb, jdb, lldb, bashdb, zshdb, etc. and allows to visually step code in the
ipdb, jdb, lldb, bashdb, zshdb, etc. and allows visually steping through code in the
sources. Unlike GUD, it also supports running multiple debug sessions in
parallel.")
(license license:gpl3+)))
@ -8542,28 +8616,31 @@ asynchronously, with Counsel and Ivy. Simply call
(license license:gpl3+))))
(define-public emacs-counsel-projectile
(package
(name "emacs-counsel-projectile")
(version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ericdanan/counsel-projectile")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1k4n5lw6wwbgpwv0dg9dw0bjzi0hvbgkzrs1zmq36yhfz6y8gwnh"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-counsel" ,emacs-counsel)
("emacs-projectile" ,emacs-projectile)))
(home-page "https://github.com/ericdanan/counsel-projectile")
(synopsis "Enhance Projectile with Ivy")
(description
"This package uses Ivy to provide additional actions for Projectile
;; Use a recent commit in order to fix recent breakage with Ivy.
(let ((commit "06b03c1080d3ccc3fa9b9c41b1ccbcf13f058e4b")
(revision "0"))
(package
(name "emacs-counsel-projectile")
(version (git-version "0.3.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ericdanan/counsel-projectile")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "10afil6grwxj1x8fxd3ar7ikw3s3hzrkjsjin8wzchbz04389l7s"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-counsel" ,emacs-counsel)
("emacs-projectile" ,emacs-projectile)))
(home-page "https://github.com/ericdanan/counsel-projectile")
(synopsis "Enhance Projectile with Ivy")
(description
"This package uses Ivy to provide additional actions for Projectile
commands and replacements for existing functions.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-qml-mode
(package
@ -10112,7 +10189,7 @@ target will call @code{compile} on it.")
(define-public emacs-cider
(package
(name "emacs-cider")
(version "1.0.0")
(version "1.1.0")
(source
(origin
(method git-fetch)
@ -10121,7 +10198,7 @@ target will call @code{compile} on it.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "143kh9k34yk0g6kdlkma6g432kmb2r9r1lhyq4irsw6d3vaql7dj"))))
(base32 "0wigprg45n6q6jmkw2a9s7mr4h500l2ky9244rrdvkjsgj6af8q8"))))
(build-system emacs-build-system)
(arguments
'(#:exclude ;don't exclude 'cider-test.el'
@ -12126,8 +12203,18 @@ highlights quasi-quoted expressions.")
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "SHELL" (which "sh"))
;; Ensure the tclespeak.so binary is found in the correct location
;; by adding the path to the Tclx library to the Tcl $auto_path
;; variable.
(with-fluids ((%default-port-encoding "ISO-8859-1"))
(substitute* "servers/espeak"
(("package require Tclx")
(string-append "set auto_path [linsert $auto_path 0 "
(assoc-ref inputs "tclx")
"/lib]\n"
"package require Tclx"))))
;; Configure Emacspeak according to etc/install.org.
(invoke "make" "config")))
(add-after 'build 'build-espeak
@ -12155,18 +12242,7 @@ highlights quasi-quoted expressions.")
;; Install the convenient startup script.
(mkdir-p bin)
(copy-file "run" (string-append bin "/emacspeak")))
#t))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(emacspeak (string-append out "/bin/emacspeak"))
(espeak (string-append (assoc-ref inputs "espeak")
"/bin/espeak")))
;; The environment variable DTK_PROGRAM tells emacspeak what
;; program to use for speech.
(wrap-program emacspeak
`("DTK_PROGRAM" ":" prefix (,espeak)))
#t))))
#t)))
#:tests? #f)) ; no check target
(inputs
`(("emacs" ,emacs)
@ -12650,14 +12726,14 @@ shuangpin, wubi and cangjie.")
(define-public emacs-posframe
(package
(name "emacs-posframe")
(version "1.0.1")
(version "1.0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"posframe-" version ".tar"))
(sha256
(base32 "17znlh5xkk57imbblnfndwvld9m02h5fkr9gys89n2skdbxw9c7r"))))
(base32 "19a1dkjyw9m74aamyqrsvzrdwshngqpmjzdngx6v5nifvcilrlnk"))))
(build-system emacs-build-system)
;; emacs-minimal does not include the function font-info.
(arguments
@ -17074,7 +17150,7 @@ or expressions with SVG rounded box labels that are fully customizable.")
(build-system emacs-build-system)
(home-page "https://github.com/rougier/emacs-svg-icon")
(synopsis "Emacs library to create SVG icons on the fly")
(description "This library allows to create SVG icons by parsing remote
(description "This library allows creating SVG icons by parsing remote
collections whose license are compatibles with Emacs. The default size of an
icon is exactly 2x1 characters such that it can be inserted inside a text
without disturbing alignment.")
@ -17311,6 +17387,28 @@ within Emacs.")
grouping buffers by their projectile root directory.")
(license license:gpl3+)))
(define-public emacs-ibuffer-vc
(package
(name "emacs-ibuffer-vc")
(version "0.11")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/purcell/ibuffer-vc")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1mgn7b786j4hwq1ks012hxxgvrfn5rz90adi2j190gmjz60rc5g5"))))
(build-system emacs-build-system)
(home-page "https://github.com/purcell/ibuffer-vc")
(synopsis "Group Ibuffer's list by revision control system indications")
(description
"Ibuffer-VC adds functionality to Ibuffer for grouping buffers by their
parent revision control system root directory, and for displaying, or sorting,
by the status of listed files.")
(license license:gpl3+)))
(define-public emacs-elm-mode
(package
(name "emacs-elm-mode")
@ -22521,6 +22619,29 @@ displays as you type thanks to Helm, though @command{notmuch-search} does the
real search.")
(license license:gpl3+)))
(define-public emacs-notmuch-maildir
(package
(name "emacs-notmuch-maildir")
(version "0.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~tarsius/notmuch-maildir")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0pmikf1djkr07067nkgmdcxyn7l7ibswx6qlnai8v1v51f9h1g9q"))))
(build-system emacs-build-system)
(propagated-inputs
`(("notmuch" ,notmuch)))
(home-page "https://git.sr.ht/~tarsius/notmuch-maildir")
(synopsis "Visualize maildirs as a tree")
(description
"This package can visualize maildirs hierarchically in Notmuch's ``hello
buffer''.")
(license license:gpl3+)))
(define-public emacs-elmacro
(package
(name "emacs-elmacro")
@ -22548,7 +22669,7 @@ as Emacs Lisp.")
(define-public emacs-transient
(package
(name "emacs-transient")
(version "0.3.0")
(version "0.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -22557,7 +22678,7 @@ as Emacs Lisp.")
(file-name (git-file-name name version))
(sha256
(base32
"0g694ydmb9zjn99hxgfjd3m73kpmnkbrgqhr73b4crbxza5sl29c"))))
"1766hdqzg95k62nqhadfv502mpnjlx1l59ppqmc6r0las82dc6a8"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #f ;no test suite
@ -24808,7 +24929,7 @@ Emacs that integrate with major modes like Org-mode.")
(define-public emacs-modus-themes
(package
(name "emacs-modus-themes")
(version "1.2.3")
(version "1.3.0")
(source
(origin
(method git-fetch)
@ -24817,7 +24938,7 @@ Emacs that integrate with major modes like Org-mode.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1l392hz6zs6wg06x2zxnk7s0h5cpmvbkcynh68gjmqjj84l7mqrk"))))
(base32 "0dw33kvs6k1a933d64fnrckzhs12d8m03a31cwblm39vmirgmf6y"))))
(build-system emacs-build-system)
(home-page "https://protesilaos.com/modus-themes/")
(synopsis "Accessible themes (WCAG AAA)")
@ -26975,6 +27096,26 @@ Features:
@end itemize\n")
(license license:gpl3+)))
(define-public emacs-shell-command+
(package
(name "emacs-shell-command+")
(version "2.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"shell-command+-" version ".tar"))
(sha256
(base32 "1jyrnv89989bi03m5h8dj0cllsw3rvyxkiyfrh9v6gpxjwfy8lmq"))))
(build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/shell-command+.html")
(synopsis "Extended Emacs @code{shell-command}")
(description
"Shell-command+ is a @code{shell-command} substitute that extends the
regular Emacs command with several features. You can for example count all
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+)))
(define-public emacs-shell-pop
(let ((commit "4b4394037940a890a313d715d203d9ead2d156a6")
(revision "0"))
@ -27552,7 +27693,7 @@ rules about where space should be left to separate words and parentheses.")
`(("emacs-request" ,emacs-request)))
(home-page "https://github.com/etu/webpaste.el")
(synopsis "Paste to pastebin-like services")
(description "This mode allows to paste whole buffers or parts of buffers
(description "This mode pastes whole buffers or parts of buffers
to pastebin-like services. It supports more than one service and will
failover if one service fails. More services can easily be added over time
and preferred services can easily be configured.")
@ -27620,7 +27761,7 @@ and preferred services can easily be configured.")
(define-public emacs-vertico
(package
(name "emacs-vertico")
(version "0.4")
(version "0.6")
(source
(origin
(method git-fetch)
@ -27629,14 +27770,8 @@ and preferred services can easily be configured.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ijahr9dzs7v56w2n74xp0akzbzbxlw5852bywc4h24xdspakj52"))))
(base32 "1is189z4hmrq49zqvm10xmq7ggj0zy57p0drzcrn1m94qicxnwj2"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'install 'build-doc
(lambda _
(invoke "makeinfo" "vertico.texi"))))))
(native-inputs
`(("texinfo" ,texinfo)))
(home-page "https://github.com/minad/vertico")
@ -27650,6 +27785,27 @@ commands. Additional optional enhancements can be provided externally by
complementary packages.")
(license license:gpl3+)))
(define-public emacs-wisp-mode
(package
(name "emacs-wisp-mode")
(version "0.2.9")
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://hg.sr.ht/~arnebab/wisp")
(changeset (string-append "wisp-mode-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1xdzyj3yqzvdg0vrllp9wi8cswpa89i0gmiz22a25brw4qy185ar"))))
(build-system emacs-build-system)
(home-page "https://www.draketo.de/software/wisp")
(synopsis "Syntax highlighting and indentation support for Wisp files")
(description
"This package provides @code{wisp-mode}, an Emacs major mode for Wisp
files, providing syntax highlighting and indentation rules.")
(license license:gpl3+)))
(define-public emacs-ivy-hydra
(package
(name "emacs-ivy-hydra")
@ -27673,4 +27829,3 @@ complementary packages.")
quasi-prefix map, with many useful bindings. These bindings are
shorter than usual, using mostly unprefixed keys.")
(license license:gpl3+)))

View File

@ -13,6 +13,7 @@
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Christopher Howard <christopher@librehacker.com>
;;; Copyright © 2021 Felipe Balbi <balbi@kernel.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -44,6 +45,7 @@
#:use-module (gnu packages autogen)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages backup)
#:use-module (gnu packages cdrom)
@ -53,6 +55,7 @@
#:use-module (gnu packages curl)
#:use-module (gnu packages digest)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
@ -97,6 +100,45 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system python))
(define-public vice
(package
(name "vice")
(version "3.5")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/vice-emu/releases/"
"vice-" version ".tar.gz"))
(sha256
(base32
"03nwcldg2h7dxj6aa77ggqc0442hqc1lsq5x69h8kcmqmvx7ifan"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-pdf-docs")))
(native-inputs
`(("bison" ,bison)
("dos2unix" ,dos2unix)
("flex" ,flex)
("glib" ,glib "bin") ; for glib-genmarshal, etc.
("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("glew" ,glew)
("glib" ,glib)
("gtk+" ,gtk+)
("pulseaudio" ,pulseaudio)
("sdl" ,sdl)
("sdl-image" ,sdl-image)
("xa" ,xa)))
(home-page "https://vice-emu.sourceforge.io/")
(synopsis "The versatile Commodore emulator")
(description
"VICE is a program that emulates the C64, the C64DTV, the C128, the
VIC20, practically all PET models, the PLUS4 and the CBM-II (aka
C610/C510). An extra emulator is provided for C64 expanded with the CMD
SuperCPU.")
(license license:gpl2+)))
(define-public desmume
(package
(name "desmume")
@ -540,7 +582,7 @@ The following systems are supported:
(define-public mgba
(package
(name "mgba")
(version "0.9.0")
(version "0.9.1")
(source
(origin
(method git-fetch)
@ -549,7 +591,7 @@ The following systems are supported:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "16v08m9irping65d94vb5skp4m6nc63zj6bfajbzhmf944dswmi5"))
(base32 "163azad5y4zxwzxyrb481rwfc2p86v99pf7nvdr6bavzq98x2z8h"))
(modules '((guix build utils)))
(snippet
;; Make sure we don't use the bundled software.
@ -1233,47 +1275,45 @@ emulation community. It provides highly accurate emulation.")
(license license:gpl2+)))
(define-public libretro-lowresnx
(let ((commit "743ab43a6c4a13e0d5363b0d25ac12c7511c6581")
(revision "1"))
(package
(name "libretro-lowresnx")
(version (git-version "1.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/timoinutilis/lowres-nx")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0r15kb5p5s2jwky6zy4v1j9i95i4rz36p9wxg0g6xdjksf04b5cf"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags (list "-C" "platform/LibRetro"
(string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libretrodir (string-append out "/lib/libretro")))
(install-file "platform/LibRetro/lowresnx_libretro.so"
libretrodir)
#t))))))
(home-page "https://lowresnx.inutilis.com/")
(synopsis "Libretro core for LowRES NX")
(description "LowRES NX is a simulated retro game console, which can be
(package
(name "libretro-lowresnx")
(version "1.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/timoinutilis/lowres-nx")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0b0vg3iz342dpkffvf7frsnqh8inj8yzi8550bsx8vnbpq5r2ay5"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags (list "-C" "platform/LibRetro"
(string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(libretrodir (string-append out "/lib/libretro")))
(install-file "platform/LibRetro/lowresnx_libretro.so"
libretrodir)
#t))))))
(home-page "https://lowresnx.inutilis.com/")
(synopsis "Libretro core for LowRES NX")
(description "LowRES NX is a simulated retro game console, which can be
programmed in the classic BASIC language. This package provides a libretro
core allowing the lowRES NX programs to be used with libretro frontends such
as RetroArch.")
(license license:zlib))))
(license license:zlib)))
(define-public retroarch
(package
(name "retroarch")
(version "1.9.0")
(version "1.9.1")
(source
(origin
(method git-fetch)
@ -1282,7 +1322,7 @@ as RetroArch.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n0dcv85vqrdr79psnf009hi4r2mvsgsjbghrrc9pm5g7ywwwcvp"))
(base32 "0cacb2m3p4fsxxbwh4h5q75mczyp0x56i2gc99pdkz1a4434zfnh"))
(patches
(search-patches "retroarch-LIBRETRO_DIRECTORY.patch"))))
(build-system gnu-build-system)
@ -1319,6 +1359,7 @@ as RetroArch.")
'("--enable-neon" "--enable-floathard")
'())
(string-append "--prefix=" out)
"--disable-git_version" ; we use release version
;; Non-free software are available through the core updater,
;; disable it. See <https://issues.guix.gnu.org/38360>.
"--disable-update_cores"

View File

@ -2359,7 +2359,7 @@ comments.")))
(define-public freecad
(package
(name "freecad")
(version "0.19.1")
(version "0.19.2")
(source
(origin
(method git-fetch)
@ -2368,8 +2368,7 @@ comments.")))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0c53q2iawy4yfp11czyc7lbr9ivp3r7v24x4c20myh11wyplffc0"))))
(base32 "0fhjv0x3dix1c7jml91yx63z9xifjlbhjbcdb73lw80smpxrq7mm"))))
(build-system qt-build-system)
(native-inputs
`(("doxygen" ,doxygen)
@ -2734,14 +2733,14 @@ GUI.")
(define-public poke
(package
(name "poke")
(version "1.1")
(version "1.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/poke/poke-" version
".tar.gz"))
(sha256
(base32
"1mkaq19a8d951n9l6d3f8rwq45a7gkr05snb285idd21qxixys6d"))))
"0qnz7lc681nxa16rw9n9q4spy9fas6m2adrpb49imh34bgdgh77n"))))
(build-system gnu-build-system)
;; The GUI, which we elide, requires tcl and tk.
(native-inputs `(;; Requires bison 3.6+ but we currently only have 3.5.

View File

@ -36,6 +36,7 @@
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
@ -370,7 +371,10 @@ Libraries with some extra bells and whistles.")
(propagated-inputs
`(("efl" ,efl)
("libxkbcommon" ,libxkbcommon)
("wayland-protocols" ,wayland-protocols)))
("wayland-protocols" ,wayland-protocols)
;; Default font that applications such as IceCat require.
("font-dejavu" ,font-dejavu)))
(home-page "https://www.enlightenment.org/about-enlightenment")
(synopsis "Lightweight desktop environment")
(description

View File

@ -50,7 +50,7 @@
(define-public fcitx-qt5
(package
(name "fcitx-qt5")
(version "1.2.5")
(version "1.2.6")
(source
(origin
(method git-fetch)
@ -61,7 +61,7 @@
(file-name
(git-file-name name version))
(sha256
(base32 "1d56bp11jp85b2r4syw1clfg4vqxqfh7gygpwz8wk5sxmfmmdq83"))))
(base32 "13sanrir696fv7s44b7q453s5qi4r7ag0r3iyggyzk8xyf6rw8fk"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ; No target

View File

@ -340,8 +340,8 @@ from a mounted file system.")
(license license:gpl2+)))
(define-public bcachefs-tools
(let ((commit "bb6eccc2ecd4728871bfc70462d3a4a20daa9d68")
(revision "4"))
(let ((commit "ce906d661e63d4318b9f26ec145f2ff5fddf5162")
(revision "5"))
(package
(name "bcachefs-tools")
(version (git-version "0.1" revision commit))
@ -353,7 +353,7 @@ from a mounted file system.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ziqmcxbrak6bjck6s46hqrqx44zc97yaj0kbk3amsxf18rsfs0n"))))
(base32 "1fkfqrk3q6shjr8jnpf3myd79xdpc8hbs0grwdmzb3dhw65k9isi"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@ -472,7 +472,7 @@ from the bcachefs-tools package. It is meant to be used in initrds.")
(define-public exfatprogs
(package
(name "exfatprogs")
(version "1.1.0")
(version "1.1.1")
(source
(origin
(method git-fetch)
@ -481,7 +481,7 @@ from the bcachefs-tools package. It is meant to be used in initrds.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ciy28lx7c1vr1f138qi0mkz88pzlkay6nlwmp1yjzd830x48549"))))
(base32 "1zl3w5w2mzyggizc4dsiln0pa013f8sf5dxmm5wflplpfm6k4brk"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -6,7 +6,7 @@
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@ -23,6 +23,7 @@
;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2021 ZmnSCPxj jxPCSnmZ <ZmnSCPxj@protonmail.com>
;;; Copyright © 2021 François J <francois-oss@avalenn.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -762,7 +763,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.17.2.0")
(version "0.17.2.1")
(source
(origin
(method git-fetch)
@ -779,7 +780,7 @@ the Monero command line client and daemon.")
(delete-file-recursively "monero")
#t))
(sha256
(base32 "17il26gh0g69x7lqkyb461x1712959wajg3iadx0p08djr3m13mf"))))
(base32 "17z4l7xj3zzbkb3fivsam38y5psknc2qbsg6yc72vb6n675khnsa"))))
(build-system qt-build-system)
(native-inputs
`(,@(package-native-inputs monero)
@ -1588,14 +1589,14 @@ that allows you to run services and through them access the Bitcoin Cash network
(define-public beancount
(package
(name "beancount")
(version "2.2.3")
(version "2.3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "beancount" version))
(sha256
(base32
"0pcfl2rx2ng06i4f9izdpnlnb1k0rdzsckbzzn4cn4ixfzyssm0m"))
"1h465zc7gb0bc5pagm9fsp083sqxrn2mjfbk9l7h162xm7k8rw1b"))
(patches (search-patches "beancount-disable-googleapis-fonts.patch"))))
(build-system python-build-system)
(arguments

View File

@ -6,7 +6,7 @@
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
@ -800,7 +800,7 @@ maintain the Noto Fonts project.")
(define-public fcft
(package
(name "fcft")
(version "2.3.2")
(version "2.3.3")
(home-page "https://codeberg.org/dnkl/fcft")
(source (origin
(method git-fetch)
@ -808,7 +808,7 @@ maintain the Noto Fonts project.")
(file-name (git-file-name name version))
(sha256
(base32
"0k2i57rakm4g86f7hbhkby8af0vv7v63a70lk3m58mkycpy5q2rm"))))
"0314r038jl17hrhc9nrbx30jk0pz8ckbdnizws4r46b1rf4h0b1f"))))
(build-system meson-build-system)
(arguments
`(#:meson ,meson-0.55))

View File

@ -1766,7 +1766,7 @@ scripted in a Python-like language.")
(define-public entt
(package
(name "entt")
(version "3.7.0")
(version "3.7.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1775,7 +1775,7 @@ scripted in a Python-like language.")
(file-name (git-file-name name version))
(sha256
(base32
"0nzvnhiw3r6nkmxp749zwxc8kzja09nijyxibdbri3g2i7pysf58"))))
"151jg3m262xwaywl2rqnc90yr6p48rhmgi5mxyv6bwqvmfli2m5p"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DENTT_BUILD_TESTING=ON"

View File

@ -1623,6 +1623,50 @@ destroying an ancient book using a special wand.")
;; license. The whole package is released under GPLv3+.
(license license:gpl3+)))
(define-public gnome-2048
(package
(name "gnome-2048")
(version "3.38.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnome-2048/"
(version-major+minor version) "/"
"gnome-2048-" version ".tar.xz"))
(sha256
(base32
"0s5fg4z5in1h39fcr69j1qc5ynmg7a8mfprk3mc3c0csq3snfwz2"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))
#t)))))
(inputs
`(("gtk+" ,gtk+)
("clutter" ,clutter)
("clutter-gtk" ,clutter-gtk)
("libgee" ,libgee)
("libgnome-games-support" ,libgnome-games-support)))
(native-inputs
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin") ; for desktop-file-validate and appstream-util
("itstool" ,itstool)
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)
("vala" ,vala)))
(home-page "https://wiki.gnome.org/Apps/2048")
(synopsis "Move the tiles until you obtain the 2048 tile")
(description "GNOME 2048 provides a 2D grid for playing 2048, a
single-player sliding tile puzzle game. The objective of the game is to merge
together adjacent tiles of the same number until the sum of 2048 is achieved
in one tile.")
(license license:gpl3+)))
(define-public gnome-chess
(package
(name "gnome-chess")
@ -4540,7 +4584,7 @@ Transport Tycoon Deluxe.")
(define-public openrct2
(package
(name "openrct2")
(version "0.3.2")
(version "0.3.3")
(source
(origin
(method git-fetch)
@ -4549,7 +4593,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fd32wniiy6qz2046ppqfj2sb3rf2qf086rf9v1bdhyj254d0b1z"))))
(base32 "01nanpbz5ycdhkyd46fjfvj18sw729l4vk7xg12600f9rjngjk76"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DDOWNLOAD_OBJECTS=OFF"

View File

@ -594,6 +594,20 @@ It also includes runtime support libraries for these languages.")))
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
"gcc-5.0-libvtv-runpath.patch"))))))
(define-public gcc-11
(package
(inherit gcc-8)
(version "11.1.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz"))
(sha256
(base32
"1pwxrjhsymv90xzh0x42cxfnmhjinf2lnrrf3hj5jq1rm2w6yjjc"))
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
"gcc-5.0-libvtv-runpath.patch"))))))
;; Note: When changing the default gcc version, update
;; the gcc-toolchain-* definitions.
(define-public gcc gcc-7)
@ -758,6 +772,11 @@ as the 'native-search-paths' field."
(custom-gcc gcc-10 "gdc" '("d")
%generic-search-paths)))
(define-public gdc-11
(hidden-package
(custom-gcc gcc-11 "gdc" '("d")
%generic-search-paths)))
(define-public libgccjit
(package
(inherit gcc-9)

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@ -44,14 +44,14 @@
(define-public gdb-10
(package
(name "gdb")
(version "10.1")
(version "10.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gdb/gdb-"
version ".tar.xz"))
(sha256
(base32
"1h32dckz1y8fnyxh22iyw8h3hnhxr79v1ng85px3ljn1xv71wbzq"))))
"0aag1c0fw875pvhjg1qp7x8pf6gf92bjv5gcic5716scacyj58da"))))
(build-system gnu-build-system)
(arguments

View File

@ -208,7 +208,7 @@ provided, as well as a framework to add new color models and data types.")
(define-public gegl
(package
(name "gegl")
(version "0.4.28")
(version "0.4.30")
(source (origin
(method url-fetch)
(uri (list (string-append "https://download.gimp.org/pub/gegl/"
@ -222,7 +222,7 @@ provided, as well as a framework to add new color models and data types.")
"/gegl-" version ".tar.xz")))
(sha256
(base32
"003ri7yv7lm2fi86ama3vlkwnz656yyib4r36hxwlk6mfy2hs48x"))))
"1pd8xkx70k0fsi1hrzrmaify7112wjmxzk0p6bi6js89yhn7h4n1"))))
(build-system meson-build-system)
(arguments
`(#:meson ,meson-0.55
@ -269,7 +269,7 @@ buffers.")
(define-public gimp
(package
(name "gimp")
(version "2.10.22")
(version "2.10.24")
(source
(origin
(method url-fetch)
@ -277,8 +277,7 @@ buffers.")
(version-major+minor version)
"/gimp-" version ".tar.bz2"))
(sha256
(base32 "1fqqyshakvdarf1jipk2n33ibqr23ni22z3d8srq13bpydblpf1d"))
(patches (search-patches "gimp-make-gegl-introspect-optional.patch"))))
(base32 "17lq6ns5qhspd171zqh76yf98xnn5n0hcl7hbhbx63cc6ribf6xx"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 9 MiB of gtk-doc HTML

View File

@ -5987,7 +5987,7 @@ queries upon that data.")
(define-public libgnome-games-support
(package
(name "libgnome-games-support")
(version "1.4.4")
(version "1.7.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libgnome-games-support/"
@ -5995,16 +5995,17 @@ queries upon that data.")
"libgnome-games-support-" version ".tar.xz"))
(sha256
(base32
"1zkbmnrn161p74qg6jhsn9f66yjjzxfm13pl1klv9av8k1bax9pq"))))
(build-system gnu-build-system)
"11g1r3ppb9v8m3anks9gxf7fv1x38vmjiya3lr7zjjv328pb69d6"))))
(build-system meson-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; Tests require a writable HOME.
(setenv "HOME" (getcwd))
#t)))))
'(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; Tests require a writable HOME.
(setenv "HOME" (getcwd))
#t)))))
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)
@ -10631,7 +10632,7 @@ configurable file renaming. ")
(define-public workrave
(package
(name "workrave")
(version "1.10.42")
(version "1.10.43")
(source
(origin
(method git-fetch)
@ -10642,7 +10643,7 @@ configurable file renaming. ")
version)))))
(file-name (git-file-name name version))
(sha256
(base32 "03i9kk8r1wgrfkkbwikx8wxaw4r4kn62vismr2zdq5g34fkkjh95"))))
(base32 "1baa9qjzd4b3q1zy5vhvyrx0hyz17mk237373ca48647897kw4cr"))))
(build-system glib-or-gtk-build-system)
(arguments
;; The only tests are maintainer tests (in po/), which fail.
@ -10955,7 +10956,7 @@ tabs, and it supports drag and drop re-ordering of terminals.")
(define-public libhandy
(package
(name "libhandy")
(version "1.2.0")
(version "1.2.1")
(source
(origin
(method git-fetch)
@ -10964,7 +10965,7 @@ tabs, and it supports drag and drop re-ordering of terminals.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1a8wfgm2jd3gcbk1nzhq6f2xq7vkxdc9qky8p9k0za9gqi7xfg4v"))))
(base32 "1mkxvqk8r6kk5my2c7nnb7z0y39grgrl7y41cnq857qs6ljqlrfv"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags

View File

@ -2,7 +2,7 @@
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
;;; Copyright © 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nikita <nikita@n0.is>
@ -74,14 +74,14 @@
(define-public libextractor
(package
(name "libextractor")
(version "1.10")
(version "1.11")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libextractor/libextractor-"
version ".tar.gz"))
(sha256
(base32
"0mr38g7kfn3p050hd3hckbcz2yd3za6dwl1c26x2kjf7vnsi3vcy"))))
"13xxv11mif3m0mpk7i43mljhhaqrj52kznm1qi3qb8s6hymk7xhn"))))
(build-system gnu-build-system)
;; WARNING: Checks require /dev/shm to be in the build chroot, especially
;; not to be a symbolic link to /run/shm.
@ -115,7 +115,7 @@
(native-inputs
`(("pkg-config" ,pkg-config)))
(outputs '("out"
"static")) ; 396 KiB .a files
"static")) ; 420 KiB .a files
(arguments
`(#:configure-flags
(list (string-append "--with-ltdl="
@ -157,14 +157,14 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd
(package
(name "libmicrohttpd")
(version "0.9.72")
(version "0.9.73")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz"))
(sha256
(base32
"1y1g9hk608jm4sfdbs8gql5wphalyhfdz824zl0i5x6pw3w2bs0a"))))
"0bh39irwzkv48fkw43skfgkk8ka3793bx1lm21sgw6zxi0djyyx3"))))
(build-system gnu-build-system)
(inputs
`(("curl" ,curl)

View File

@ -694,8 +694,8 @@ from forcing GEXP-PROMISE."
#:system system
#:guile-for-build guile)))
(define %icecat-version "78.9.0-guix0-preview1")
(define %icecat-build-id "20210323000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-version "78.10.0-guix0-preview1")
(define %icecat-build-id "20210419000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -717,7 +717,7 @@ from forcing GEXP-PROMISE."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0r28wrsk2k6pc922zfs5wljh8ziqm4a98lisn7409j2szhfsq0wf"))))
"0h6zl87czbhyhy3597bxqzwy4p1vsaqimkg92lw31gjbv6k434cp"))))
(upstream-icecat-base-version "78.7.0") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
@ -1305,11 +1305,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20210323000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20210419000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "78.9.0")
(version "78.10.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1589,7 +1589,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
,(let ((changeset "1a5cd2aa11de609116f258b413afcf113ed72f3a"))
,(let ((changeset "ca53556517b609ca2e9a8b7578a4f4dc1273b32f"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1598,7 +1598,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"0qgz9qj8gbn2ccmhvk3259ahs9p435ipvkzsysn3xj8a6klbz02w")))))
"1alkh651pf3l8nqwgh6qdhh6wfgpqrrmlfx3wrkfzhq6s9ghrmq8")))))
("autoconf" ,autoconf-2.13)
("cargo" ,rust-1.41 "cargo")
("clang" ,clang)

View File

@ -6837,7 +6837,7 @@ sinks and sources.")
(home-page "https://github.com/mesilliac/pulse-simple")
(synopsis "Cgo bindings to PulseAudio's Simple API")
(description
"This packages provides Cgo bindings to PulseAudio's Simple API, to play
"This package provides Cgo bindings to PulseAudio's Simple API, to play
or capture raw audio.")
(license license:expat))))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019, 2020, 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -39,7 +39,7 @@
(define-public gpodder
(package
(name "gpodder")
(version "3.10.18")
(version "3.10.19")
(source
(origin
(method git-fetch)
@ -47,7 +47,7 @@
(url "https://github.com/gpodder/gpodder")
(commit version)))
(sha256
(base32 "1d73q46sqandzbn74nfw9bzzah99z91wsxq2hcivwdgnsv2g2d8y"))
(base32 "1nx1cdwij9zy01s97aciqbkd63h4alzyvjdzdvr6wrl6hh42amrx"))
(file-name (git-file-name name version))
(patches (search-patches "gpodder-disable-updater.patch"))))
(build-system python-build-system)

View File

@ -6,6 +6,7 @@
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2020 Alexander Krotov <krotov@iitp.ru>
;;; Copyright © 2020 Pierre Langlois <pierre.langlos@gmx.com>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -229,6 +230,27 @@ subplots, multiple-axes, polar charts, and bubble charts. ")
(package-with-python2 python-plotly-2.4.1))
(define-public python-louvain
(package
(name "python-louvain")
(version "0.15")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-louvain" version))
(sha256
(base32 "1sqp97fwh4asx0jr72x8hil8z8fcg2xq92jklmh2m599pvgnx19a"))))
(build-system python-build-system)
(propagated-inputs
`(("python-networkx" ,python-networkx)
("python-numpy" ,python-numpy)))
(home-page "https://github.com/taynaud/python-louvain")
(synopsis "Louvain algorithm for community detection")
(description
"This package provides a pure Python implementation of the Louvain
algorithm for community detection in large networks.")
(license license:bsd-3)))
(define-public python-louvain-0.6
(package
(name "python-louvain")
(version "0.6.1")

View File

@ -527,6 +527,7 @@ typically encountered in feature film production.")
"-DWITH_INSTALL_PORTABLE=OFF"
"-DWITH_JACK=ON"
"-DWITH_MOD_OCEANSIM=ON"
"-DWITH_OPENVDB=ON"
"-DWITH_OPENSUBDIV=ON"
"-DWITH_PYTHON_INSTALL=OFF"
(string-append "-DPYTHON_LIBRARY=python" ,python-version)
@ -582,6 +583,7 @@ typically encountered in feature film production.")
("pugixml" ,pugixml)
("python" ,python)
("python-numpy" ,python-numpy)
("openvdb" ,openvdb)
("tbb" ,tbb)
("zlib" ,zlib)
("embree" ,embree)))

View File

@ -527,6 +527,7 @@ This package provides the core library and elements.")
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(patches (search-patches "gst-plugins-base-fix-id3v2-invalid-read.patch"))
(sha256
(base32
"1b05kg46azrxxvq42c71071lfsnc34pw4vynnkczdqi6g0gzn16x"))))
@ -591,7 +592,9 @@ for the GStreamer multimedia library.")
(string-append
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(patches (search-patches "gst-plugins-good-fix-test.patch"))
(patches (search-patches "gst-plugins-good-fix-test.patch"
"gst-plugins-good-CVE-2021-3497.patch"
"gst-plugins-good-CVE-2021-3498.patch"))
(sha256
(base32 "1929nhjsvbl4bw37nfagnfsnxz737cm2x3ayz9ayrn9lwkfm45zp"))))
(build-system meson-build-system)
@ -679,6 +682,7 @@ model to base your own plug-in on, here it is.")
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(patches (search-patches "gst-plugins-bad-fix-overflow.patch"))
(sha256
(base32
"06ildd4rl6cynirv3p00d2ddf5is9svj4i7mkahldzhq24pq5mca"))))
@ -789,6 +793,7 @@ par compared to the rest.")
(uri
(string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(patches (search-patches "gst-plugins-ugly-fix-out-of-bound-reads.patch"))
(sha256
(base32 "1nwbcv5yaib3d8icvyja3zf6lyjf5zf1hndbijrhj8j7xlia0dx3"))))
(build-system meson-build-system)
@ -849,6 +854,7 @@ think twice about shipping them.")
(string-append
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(patches (search-patches "gst-libav-64channels-stack-corruption.patch"))
(sha256
(base32 "0jbzams9ggk3sq9ywv4gsl9rghyn203l2582m6l5c1sz9ka9m5in"))))
(build-system meson-build-system)

View File

@ -15,7 +15,7 @@
;;; Copyright © 2016 Patrick Hetu <patrick.hetu@auf.org>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018, 2020 Arun Isaac <arunisaac@systemreboot.net>
@ -2334,19 +2334,19 @@ foreground and background colors, text justification and more.")
(define-public gtkdatabox
(package
(name "gtkdatabox")
(version "0.9.3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gtkdatabox/gtkdatabox/"
version "/gtkdatabox-" version ".tar.gz"))
(sha256
(base32
"1rdxnjgh6v3yjqgsfmamyzpfxckzchps4kqvvz88nifmd7ckhjfh"))))
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gtkdatabox/gtkdatabox-1/"
"gtkdatabox-" version ".tar.gz"))
(sha256
(base32 "1qykm551bx8j8pfgxs60l2vhpi8lv4r8va69zvn2594lchh71vlb"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("gtk+-2" ,gtk+-2)))
`(("gtk+" ,gtk+)))
(synopsis "Display widget for dynamic data")
(description "GtkDatabox is a widget for live display of large amounts of
fluctuating numerical data. It enables data presentation (for example, on

View File

@ -1778,7 +1778,7 @@ user which package sets would they like to install from it.")
(define-public guile-wisp
(package
(name "guile-wisp")
(version "1.0.3")
(version "1.0.4")
(source (origin
(method hg-fetch)
(uri (hg-reference
@ -1787,7 +1787,7 @@ user which package sets would they like to install from it.")
(file-name (git-file-name name version))
(sha256
(base32
"10g97jz3ahpb5mg933ajsc3pa9jxlg14f42yf01qwx0dwq1b06d5"))))
"0d54l2s8qsfckg0imbx40npggi6f867hn7fsy0jjsmxz4b8a3949"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)

View File

@ -15,7 +15,7 @@
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 Taylan Kammer <taylan.kammer@gmail.com>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -360,6 +360,7 @@ without requiring the source code to be rewritten.")
(uri (git-reference
(url "https://git.savannah.gnu.org/git/guile.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"09i1c77h2shygylfk0av31jsc1my6zjl230b2cx6vyl58q8c0cqy"))))
@ -776,21 +777,25 @@ type system, elevating types to first-class status.")
(define-public guile-git
(package
(name "guile-git")
(version "0.5.0")
(version "0.5.1")
(home-page "https://gitlab.com/guile-git/guile-git.git")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.com/guile-git/guile-git/uploads/"
"30be542d90619ca844dd3a3ed2e13808/guile-git-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1j39c1cq9cbwir90mpnbdijpbwh7wkxampgl2r177bv8bfw6y203"))))
"1x3wa6la4j1wcfxyhhjlmd7yp85wwpny0y6lrzpz803i9z5fwagc"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("texinfo" ,texinfo)
("guile" ,guile-3.0)
("guile-bytestructures" ,guile-bytestructures)))
(inputs

View File

@ -342,14 +342,14 @@ to @code{cabal repl}).")
(define-public git-annex
(package
(name "git-annex")
(version "8.20210330")
(version "8.20210428")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32 "07dhxlmnj48drgndcplafc7xhby0w3rks68fz9wsppxan929240p"))))
(base32 "0xpvhpnl600874sa392wjfd2yd9s6ps2cq2qfkzyxxf90p9fcwg8"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags

View File

@ -1945,7 +1945,7 @@ identical visual appearance.")
(define-public grim
(package
(name "grim")
(version "1.3.1")
(version "1.3.2")
(source
(origin
(method git-fetch)
@ -1954,7 +1954,7 @@ identical visual appearance.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0fjmjq0ws9rlblkcqxxw2lv7zvvyi618jqzlnz5z9zb477jwdfib"))))
(base32 "1l4gwvvc0zvg5b6f6w92xjhmwj7cg9hlgrf43lc7ygaz8dh6cmzg"))))
(build-system meson-build-system)
(native-inputs `(("pkg-config" ,pkg-config)
("scdoc" ,scdoc)))
@ -1971,7 +1971,7 @@ identical visual appearance.")
(define-public slurp
(package
(name "slurp")
(version "1.3.1")
(version "1.3.2")
(source
(origin
(method git-fetch)
@ -1980,7 +1980,7 @@ identical visual appearance.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fby2v2ylcadgclds05wpkl9xi2r9dfz49dqyqpn20rjv1wnz3jv"))))
(base32 "00dx6ds1227qnxqrw58k0am78q8fa49rgp1zingrkjcbpbi7g475"))))
(build-system meson-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -10,6 +10,7 @@
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2021 WinterHound <winterhound@yandex.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,6 +32,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
@ -376,6 +378,36 @@ for the IRCv3 protocol.")
"sic is a simple IRC client, even more minimalistic than ii.")
(license license:expat)))
(define-public kirc
(package
(name "kirc")
(version "0.2.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mcpcpc/kirc")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11pwbil44q7sm3mp1khgw8wmwln2n03f1qawlgmg168jzyxqrs16"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(delete 'configure)))) ; No ./configure script
(synopsis "IRC client written in POSIX C99")
(description "Kirc is an Internet Relay Chat (IRC) client. It includes
support for Simple Authentication and Security Layer (SASL), the
client-to-client (CTCP) protocol, simple chat history logging, synchronous
message handling, multi-channel joining at server connection, full support for
all RFC 2812 commands, and customized color scheme definitions.")
(home-page "http://kirc.io/index.html")
(license license:expat)))
(define-public limnoria
(package
(name "limnoria")

View File

@ -2,11 +2,11 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2017, 2019 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017, 2019, 2021 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017-2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
@ -1749,6 +1749,9 @@ IcedTea build harness.")
((guix build ant-build-system)
(guix build syscalls)
,@%gnu-build-system-modules)
#:disallowed-references ((,icedtea-7 "jdk"))
,@(substitute-keyword-arguments (package-arguments icedtea-7)
((#:modules modules)
`((guix build utils)
@ -1792,12 +1795,21 @@ new Date();"))
(add-after 'unpack 'patch-jni-libs
;; Hardcode dynamically loaded libraries.
(lambda _
(let* ((library-path (search-path-as-string->list
(getenv "LIBRARY_PATH")))
(define remove
(@ (srfi srfi-1) remove))
(define (icedtea-or-openjdk? path)
(or (string-contains path "openjdk")
(string-contains path "icedtea")))
(let* ((library-path (remove icedtea-or-openjdk?
(search-path-as-string->list
(getenv "LIBRARY_PATH"))))
(find-library (lambda (name)
(search-path
library-path
(string-append "lib" name ".so")))))
(or (search-path
library-path
(string-append "lib" name ".so"))
(string-append "lib" name ".so")))))
(for-each
(lambda (file)
(catch 'decoding-error
@ -1805,9 +1817,9 @@ new Date();"))
(substitute* file
(("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
_ name version)
(format #f "\"~a\"" (find-library name)))
(string-append "\"" (find-library name) "\""))
(("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
(format #f "\"~a\"" (find-library name)))))
(string-append "\"" (find-library name) "\""))))
(lambda _
;; Those are safe to skip.
(format (current-error-port)
@ -1893,6 +1905,9 @@ new Date();"))
#:imported-modules
((guix build syscalls)
,@%gnu-build-system-modules)
#:disallowed-references (,icedtea-8 (,icedtea-8 "jdk"))
#:phases
(modify-phases %standard-phases
(add-after 'patch-source-shebangs 'fix-java-shebangs
@ -1931,12 +1946,21 @@ new Date();"))
(add-after 'unpack 'patch-jni-libs
;; Hardcode dynamically loaded libraries.
(lambda _
(let* ((library-path (search-path-as-string->list
(getenv "LIBRARY_PATH")))
(define remove
(@ (srfi srfi-1) remove))
(define (icedtea-or-openjdk? path)
(or (string-contains path "openjdk")
(string-contains path "icedtea")))
(let* ((library-path (remove icedtea-or-openjdk?
(search-path-as-string->list
(getenv "LIBRARY_PATH"))))
(find-library (lambda (name)
(search-path
library-path
(string-append "lib" name ".so")))))
(or (search-path
library-path
(string-append "lib" name ".so"))
(string-append "lib" name ".so")))))
(for-each
(lambda (file)
(catch 'decoding-error
@ -1944,9 +1968,9 @@ new Date();"))
(substitute* file
(("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
_ name version)
(format #f "\"~a\"" (find-library name)))
(string-append "\"" (find-library name) "\""))
(("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
(format #f "\"~a\"" (find-library name)))))
(string-append "\"" (find-library name) "\""))))
(lambda _
;; Those are safe to skip.
(format (current-error-port)
@ -2079,7 +2103,9 @@ new Date();"))
"--with-libjpeg=system"
"--with-native-debug-symbols=zipped"
(string-append "--prefix=" (assoc-ref outputs "out")))
#t))))))
#t))))
((#:disallowed-references _ '())
`(,openjdk9 (,openjdk9 "jdk")))))
(native-inputs
`(("openjdk9" ,openjdk9)
("openjdk9:jdk" ,openjdk9 "jdk")
@ -2109,6 +2135,9 @@ new Date();"))
(arguments
`(#:imported-modules ((guix build syscalls)
,@%gnu-build-system-modules)
#:disallowed-references (,openjdk10 (,openjdk10 "jdk"))
#:tests? #f; requires jtreg
;; TODO package jtreg
#:configure-flags
@ -2139,12 +2168,21 @@ new Date();"))
(add-after 'unpack 'patch-jni-libs
;; Hardcode dynamically loaded libraries.
(lambda _
(let* ((library-path (search-path-as-string->list
(getenv "LIBRARY_PATH")))
(define remove
(@ (srfi srfi-1) remove))
(define (icedtea-or-openjdk? path)
(or (string-contains path "openjdk")
(string-contains path "icedtea")))
(let* ((library-path (remove icedtea-or-openjdk?
(search-path-as-string->list
(getenv "LIBRARY_PATH"))))
(find-library (lambda (name)
(search-path
library-path
(string-append "lib" name ".so")))))
(or (search-path
library-path
(string-append "lib" name ".so"))
(string-append "lib" name ".so")))))
(for-each
(lambda (file)
(catch 'decoding-error
@ -2152,9 +2190,9 @@ new Date();"))
(substitute* file
(("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)"
_ name version)
(format #f "\"~a\"" (find-library name)))
(string-append "\"" (find-library name) "\""))
(("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
(format #f "\"~a\"" (find-library name)))))
(string-append "\"" (find-library name) "\""))))
(lambda _
;; Those are safe to skip.
(format (current-error-port)
@ -2478,14 +2516,14 @@ new Date();"))
(define-public ant/java8
(package (inherit ant-bootstrap)
(name "ant")
(version "1.10.9")
(version "1.10.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://apache/ant/source/apache-ant-"
version "-src.tar.gz"))
(sha256
(base32
"0x78434q5ab193ma7ys27m9kwpdgrfzqj00hrf1szwcgk0lzw01z"))
"1dhkk9ajc378cln6sj9q0ya8bl9dpyji5xcrl1zq41zx1k6j54g5"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Pierre Neidhardt <mail@ambrevar.xyz>
@ -557,7 +557,7 @@ external server.")
(define-public mujs
(package
(name "mujs")
(version "1.1.0")
(version "1.1.1")
(source
(origin
(method git-fetch)
@ -566,7 +566,7 @@ external server.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00j748hzf4azgjgykc8x9xalh70hj1dm8qvqzvldbf08zq0s3n5j"))))
(base32 "0ivqz06fq8v36p2gkjh64vgv0gm7nghds0n42vrv7vm46phdffvb"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -525,7 +525,7 @@ stressing the robustness of differentiation tools.")
`(("julia-staticarrays" ,julia-staticarrays)))
(home-page "https://github.com/JuliaArrays/FillArrays.jl")
(synopsis "Lazy matrix representation")
(description "This package allows to lazily represent matrices filled with
(description "This package lazily represents matrices filled with
a single entry, as well as identity matrices. This package exports the
following types: @code{Eye}, @code{Fill}, @code{Ones}, @code{Zeros},
@code{Trues} and @code{Falses}.")
@ -699,7 +699,7 @@ implementing both a client and a server.")
(home-page "https://github.com/JuliaIO/IniFile.jl")
(synopsis "Reading Windows-style INI files")
(description "This is a Julia package that defines an IniFile type that
allows to interface with @file{.ini} files.")
interfaces with @file{.ini} files.")
(license license:expat)))
(define-public julia-irtools

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 20192021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
@ -33,7 +33,7 @@
(define-public less
(package
(name "less")
(version "563")
(version "581.2")
(source
(origin
(method url-fetch)
@ -43,7 +43,7 @@
version ".tar.gz")))
(patches (search-patches "less-hurd-path-max.patch"))
(sha256
(base32 "16lsvk88vwjwp5ax1wnll44wxwnzs8lb2fn90xx2si64kwmnsnyf"))))
(base32 "0fyqslvrasv19qjvqrwfwz2n7mnm93y61x9bcx09ga90mxyb8d6f"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)))
(home-page "https://www.gnu.org/software/less/")

View File

@ -53,6 +53,7 @@
;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2020 David Dashyan <mail@davie.li>
;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net>
;;; Copyright © 2021 B. Wilson <elaexuotee@wilsonb.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -130,6 +131,7 @@
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages slang)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
@ -354,7 +356,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-5.11-version "5.11.14")
(define-public linux-libre-5.11-version "5.11.17")
(define deblob-scripts-5.11
(linux-libre-deblob-scripts
linux-libre-5.11-version
@ -362,7 +364,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0yvr80g200hdryz54gdnzj4fl38pf7g4qbgj475rhcfwixhp1j7n")))
(define-public linux-libre-5.11-pristine-source
(let ((version linux-libre-5.11-version)
(hash (base32 "1ia4wzh44lkvrbvnhdnnjcdyvqx2ihpbwkih7wqm1n5prhq38ql7")))
(hash (base32 "18yld85jymb3wf71kd425zzzvriz9wxlw90pklgf91q37r9rxpa1")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.11)))
@ -370,7 +372,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; 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.30")
(define-public linux-libre-5.10-version "5.10.33")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
linux-libre-5.10-version
@ -378,12 +380,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0hh27ccqimagr3aij7ygwikxw66y63sqwd0xlf49bhpjd090r9a7")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0h06lavcbbj9a4dfzca9sprghiq9z33q8i4gh3n2912wmjsnj0nl")))
(hash (base32 "05a3bcc6ic9gyhp8bahfrk8xm8pwb6jmgad6nwqgih3icg1xngwk")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.112")
(define-public linux-libre-5.4-version "5.4.115")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
@ -391,12 +393,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1xghbbnaisjd0k1klbyn1p7r6r4x5a1bpmkm56a3gh2zvw4s7mj8")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "190cq97pm0r6s115ay66rjra7fnyn7m4rak89inwhm223931sdmq")))
(hash (base32 "1llxk04vlpi7a4ca2f5vlcxfn68n8yhmsar3hsl259i7hms28isv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.187")
(define-public linux-libre-4.19-version "4.19.189")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
@ -404,12 +406,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "1hx0jw11xmj57v9a8w34729vgrandaing2n9qkhx5dq4mhy04k50")))
(hash (base32 "12a3qn5s66rrbrq5p8dsf7kn0l74q0ahqkl3bmbw1fvyy1fhwyvi")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.230")
(define-public linux-libre-4.14-version "4.14.232")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
linux-libre-4.14-version
@ -417,12 +419,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "1gn5cs1ss4bfsnnv0b2s4g5ibiigpzsx0i3qfswchdbxvdag75cw")))
(hash (base32 "0sa3sz7bznlhijd0iwv37nyrrnw34iq6dq1bqr6cj2wpyrhr7h8x")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.266")
(define-public linux-libre-4.9-version "4.9.268")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
linux-libre-4.9-version
@ -430,12 +432,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "0qzigcslfp714vaswwlw93xj0h2f8laikppw6krrhfnh5wwrp5dr")))
(hash (base32 "0aknrlf5q0dsqib8c9klmf5c60dy7hg2zksb020qvyrp077gcrjv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
(define-public linux-libre-4.4-version "4.4.266")
(define-public linux-libre-4.4-version "4.4.268")
(define deblob-scripts-4.4
(linux-libre-deblob-scripts
linux-libre-4.4-version
@ -443,7 +445,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf")))
(define-public linux-libre-4.4-pristine-source
(let ((version linux-libre-4.4-version)
(hash (base32 "00x2dmjiiv9zpc0vih9xqmf78kynqzj9q9v1chc2q2hcjpqfj31c")))
(hash (base32 "1srk08kaxq5jjlqx804cgjffhcsrdkv3idh8ipagl6v2w4kas5v8")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.4)))
@ -479,12 +481,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(define-public linux-libre-5.11-source
(source-with-patches linux-libre-5.11-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
%linux-libre-arm-export-__sync_icache_dcache-patch
;; Pinebook Pro patch to fix LCD display
(search-patch
"linux-libre-arm64-generic-pinebook-lcd.patch"))))
(define-public linux-libre-5.10-source
(source-with-patches linux-libre-5.10-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
%linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch
"linux-libre-arm64-generic-pinebook-lcd.patch"))))
(define-public linux-libre-5.4-source
(source-with-patches linux-libre-5.4-pristine-source
@ -1042,7 +1049,11 @@ It has been modified to remove all non-free binary blobs.")
("CONFIG_BATTERY_AXP20X" . m)
("CONFIG_PINCTRL_AXP209" . m)
("CONFIG_AXP20X_POWER" . m)
("CONFIG_AXP20X_ADC" . m))
("CONFIG_AXP20X_ADC" . m)
;; Pinebook PRO battery and sound support
("CONFIG_BATTERY_CW2015" . m)
("CONFIG_CHARGER_GPIO" . m)
("CONFIG_SND_SOC_ES8316" . m))
%default-extra-linux-options)))
(define-public linux-libre-arm64-generic-5.10
@ -1063,7 +1074,11 @@ It has been modified to remove all non-free binary blobs.")
("CONFIG_BATTERY_AXP20X" . m)
("CONFIG_PINCTRL_AXP209" . m)
("CONFIG_AXP20X_POWER" . m)
("CONFIG_AXP20X_ADC" . m))
("CONFIG_AXP20X_ADC" . m)
;; Pinebook PRO battery and sound support
("CONFIG_BATTERY_CW2015" . m)
("CONFIG_CHARGER_GPIO" . m)
("CONFIG_SND_SOC_ES8316" . m))
%default-extra-linux-options)))
(define-public linux-libre-arm64-generic-5.4
@ -1600,6 +1615,12 @@ providing the system administrator with some help in common tasks.")
(string-append "--with-bashcompletiondir="
(assoc-ref %outputs "out")
"/etc/bash_completion.d"))
;; FIXME: For now we cannot reliably run tests on GNU/Hurd:
;; <https://bugs.gnu.org/47791>.
#:tests? ,(and (not (%current-target-system))
(not (string-suffix? "-gnu" (%current-system))))
#:phases (modify-phases %standard-phases
(add-before 'configure 'patch-build-scripts
(lambda* (#:key outputs #:allow-other-keys)
@ -2411,7 +2432,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
(define-public iproute
(package
(name "iproute2")
(version "5.10.0")
(version "5.12.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -2419,7 +2440,7 @@ that the Ethernet protocol is much simpler than the IP protocol.")
version ".tar.xz"))
(sha256
(base32
"1sakmhvh40gh4x55vzgy6cyvizqkhqalcfpvs6r0c14w62p38jm5"))))
"0vrjbzhwzcvaxyyhkr2ii89w2vznzwp2pfgk7w72mviniawqs9lx"))))
(build-system gnu-build-system)
(arguments
`( ;; There is a test suite, but it wants network namespaces and sudo.
@ -4311,14 +4332,14 @@ isolation or root privileges.")
(define-public hdparm
(package
(name "hdparm")
(version "9.60")
(version "9.61")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/hdparm/hdparm/"
"hdparm-" version ".tar.gz"))
(sha256
(base32
"1k1mcv7naiacw1y6bdd1adnjfiq1kkx2ivsadjwmlkg4fff775w3"))))
"0hskvzsg58hw8abkkmxh5kky0hhilv516870x2bq62zihww1q6ns"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
@ -4350,7 +4371,7 @@ Translation (@dfn{SAT}) are also supported.")
(define-public nvme-cli
(package
(name "nvme-cli")
(version "1.13")
(version "1.14")
(home-page "https://github.com/linux-nvme/nvme-cli")
(source (origin
(method git-fetch)
@ -4358,7 +4379,7 @@ Translation (@dfn{SAT}) are also supported.")
(url home-page)
(commit (string-append "v" version))))
(sha256
(base32 "1d538kp841bjh8h8d9q7inqz56rdcwb3m78zfx8607ddykv7wcqb"))
(base32 "0dpadz945482srqpsbfx1bh7rc499fgpyzz1flhk9g9xjbpapkzc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@ -6842,7 +6863,7 @@ the MTP device as a file system.")
(define-public procenv
(package
(name "procenv")
(version "0.51")
(version "0.55")
(source
(origin
(method git-fetch)
@ -6851,9 +6872,8 @@ the MTP device as a file system.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ilrsw1rc85w29mkbkmm5n5w427gapv43yrjzvkb4kc9xhscgdjn"))))
(base32 "13fnr4gfj2xlxghw93m5gsxzlwzv3s6jv9hja0w0pb23hlncbmhy"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags '("--disable-silent-rules")))
(native-inputs
`(("pkg-config" ,pkg-config)
@ -8031,3 +8051,46 @@ kernel side implementation.")
read-only file system optimized for resource-scarce devices. This package
provides user-space tools for creating EROFS file systems.")
(license license:gpl2+)))
(define-public rasdaemon
(package
(name "rasdaemon")
(version "0.6.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mchehab/rasdaemon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "13g39x19lfjf9izdcb0nlyfjrgpliivhv4nw3ndgyzi59l3yqc0v"))))
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(inputs `(("sqlite" ,sqlite)))
(arguments
`(#:configure-flags '("--enable-all"
"--localstatedir=/var")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'munge-autotools
(lambda _
;; For some reason upstream forces sysconfdir=/etc. This results
;; in EPERM during the install phase. Removing the offending
;; line lets sysconfdir correctly pick up DESTDIR.
(substitute* "configure.ac"
(("^test .* sysconfdir=/etc\n$") ""))
;; Upstream tries to create /var/lib/rasdaemon at install time.
;; This results in EPERM on guix. Instead, the service should
;; create this at activation time.
(substitute* "Makefile.am"
(("^\\s*\\$\\(install_sh\\) -d .*@RASSTATEDIR@.*$") "")))))))
(build-system gnu-build-system)
(home-page "https://github.com/mchehab/rasdaemon")
(synopsis "Platform Reliability, Availability and Serviceability tools")
(description "The @code{rasdaemon} program is a daemon which monitors the
platform Reliablity, Availability and Serviceability (RAS) reports from the
Linux kernel trace events. These trace events are logged in
/sys/kernel/debug/tracing, reporting them via syslog/journald.")
(license license:gpl2)))

View File

@ -68,6 +68,7 @@
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libffi)
@ -80,6 +81,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
@ -5682,6 +5684,79 @@ basic everyday functions and macros.")
(define-public ecl-fare-utils
(sbcl-package->ecl-package sbcl-fare-utils))
(define-public sbcl-fare-mop
(let ((commit "538aa94590a0354f382eddd9238934763434af30")
(revision "1"))
(package
(name "sbcl-fare-mop")
(version (git-version "1.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fare/fare-mop")
(commit commit)))
(file-name (git-file-name "fare-mop" version))
(sha256
(base32
"0maxs8392953fhnaa6zwnm2mdbhxjxipp4g4rvypm06ixr6pyv1c"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("close-mop" ,sbcl-closer-mop)
("fare-utils" ,sbcl-fare-utils)))
(home-page "https://github.com/fare/fare-mop")
(synopsis "General purpose Common Lisp utilities using the MOP")
(description
"FARE-MOP is a small collection of utilities using the MetaObject
Protocol. It notably contains a SIMPLE-PRINT-OBJECT method, and
a SIMPLE-PRINT-OBJECT-MIXIN mixin that allow you to trivially define
PRINT-OBJECT methods that print the interesting slots in your objects, which is
great for REPL interaction and debugging.")
(license license:unlicense))))
(define-public ecl-fare-mop
(sbcl-package->ecl-package sbcl-fare-mop))
(define-public cl-fare-mop
(sbcl-package->cl-source-package sbcl-fare-mop))
(define-public sbcl-inferior-shell
(let ((commit "15c2d04a7398db965ea1c3ba2d49efa7c851f2c2")
(revision "1"))
(package
(name "sbcl-inferior-shell")
(version (git-version "2.0.5" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fare/inferior-shell")
(commit commit)))
(file-name (git-file-name "inferior-shell" version))
(sha256
(base32 "02qx37zzk5j4xmwh77k2qa2wvnzvaj6qml5dh2q7b6b1ljvgcj4m"))))
(build-system asdf-build-system/sbcl)
(native-inputs
`(("hu.dwim.stefil" ,sbcl-hu.dwim.stefil)))
(inputs
`(("alexandira" ,sbcl-alexandria)
("fare-mop" ,sbcl-fare-mop)
("fare-quasiquote" ,sbcl-fare-quasiquote)
("fare-utils" ,sbcl-fare-utils)
("trivia" ,sbcl-trivia)))
(home-page "https://github.com/fare/inferior-shell")
(synopsis "Spawn local or remote processes and shell pipes")
(description
"This package provides a Common Lisp system helping in scripting, it
uses @code{uiop:run-program} as a backend.")
(license license:expat))))
(define-public ecl-inferior-shell
(sbcl-package->ecl-package sbcl-inferior-shell))
(define-public cl-inferior-shell
(sbcl-package->cl-source-package sbcl-inferior-shell))
(define-public sbcl-trivial-utf-8
(let ((commit "4d427cfbb1c452436a0efb71c3205c9da67f718f")
(revision "1"))
@ -9224,6 +9299,77 @@ for reading and writing JPEG image files.")
(define-public ecl-cl-jpeg
(sbcl-package->ecl-package sbcl-cl-jpeg))
(define-public sbcl-png
(let ((commit "11b965fe378fd0561abe3616b18ff03af5179648")
(revision "1"))
(package
(name "sbcl-png")
(version (git-version "0.6" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ljosa/cl-png")
(commit commit)))
(file-name (git-file-name "cl-png" version))
(sha256
(base32 "173hqwpd0rwqf95mfx1h9l9c3i8bb0gvnpspzmmz3g5x3440czy4"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-lib-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "libpng.lisp"
(("\"libpng\"")
(string-append "\""
(assoc-ref inputs "libpng")
"/lib/libpng\""))))))))
(inputs
`(("cffi" ,sbcl-cffi)
("libpng" ,libpng)))
(home-page "https://github.com/ljosa/cl-png")
(synopsis "Read and write PNG file format")
(description
"This package provides a @code{PNG} Common Lisp system to operate with
Portable Network Graphics file format.")
(license license:lgpl2.1))))
(define-public ecl-png
(sbcl-package->ecl-package sbcl-png))
(define-public cl-png
(sbcl-package->cl-source-package sbcl-png))
(define-public sbcl-cl-svg
(let ((commit "1e988ebd2d6e2ee7be4744208828ef1b59e5dcdc")
(revision "1"))
(package
(name "sbcl-cl-svg")
(version (git-version "0.0.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wmannis/cl-svg")
(commit commit)))
(file-name (git-file-name "cl-svg" version))
(sha256
(base32 "11rmzimy6j7ln7q5y1h2kw1225rsfb6fpn89qjcq7h5lc8fay0wz"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/wmannis/cl-svg")
(synopsis "Write SVG file format")
(description
"This package provides the @code{CL-SVG} Common Lisp system to produce
Scalable Vector Graphics files.")
(license license:expat))))
(define-public ecl-cl-svg
(sbcl-package->ecl-package sbcl-cl-svg))
(define-public cl-svg
(sbcl-package->cl-source-package sbcl-cl-svg))
(define-public sbcl-nodgui
(let ((commit "4a9c2e7714b278fbe97d198c56f54ea87290001d")
(revision "1"))
@ -15014,8 +15160,8 @@ protocol for Mastodon.")
(sbcl-package->cl-source-package sbcl-tooter))
(define-public sbcl-croatoan
(let ((commit "89ecd147cf1548f569f23353b3ab656cfb74de1f")
(revision "1"))
(let ((commit "7077ef14d27e8708515ad8d309886f516e7fbd98")
(revision "2"))
(package
(name "sbcl-croatoan")
(version (git-version "0.0.1" revision commit))
@ -15027,7 +15173,7 @@ protocol for Mastodon.")
(commit commit)))
(file-name (git-file-name "croatoan" version))
(sha256
(base32 "0pk4mym88531jx0f1zmm6gmvrmdjzj2zcl2cdywdsxvjygr53zyx"))))
(base32 "0gf2sjpsdkd9s8imwy2wjrkdx82a5sc4yy9bndlnjlwmdraw4j37"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:phases
@ -15880,7 +16026,7 @@ allows one to gradually make their programs safer.")
"Clip is an attempt at a templating library that allows you to write
templates in a way that is both accessible to direct webdesign and
flexible. The main idea is to incorporate transformation commands into an HTML
file through tags and attributes. Clip is heavily dependant on Plump and
file through tags and attributes. Clip is heavily dependent on Plump and
lQuery.")
(license license:zlib))))
@ -15889,3 +16035,252 @@ lQuery.")
(define-public cl-clip
(sbcl-package->cl-source-package sbcl-clip))
(define-public sbcl-pathname-utils
(let ((commit "70f517e44e13a38e0c8f296613236376d679fa8f")
(revision "1"))
(package
(name "sbcl-pathname-utils")
(version (git-version "1.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/pathname-utils")
(commit commit)))
(file-name (git-file-name "pathname-utils" version))
(sha256
(base32 "1zm4bf6gajpgmhr7zwf7600zlaf8fs1fcyzabqsh2ma2crkgqdxq"))))
(build-system asdf-build-system/sbcl)
(native-inputs
`(("parachute" ,sbcl-parachute)))
(home-page "https://shinmera.github.io/pathname-utils/")
(synopsis "Collection of utilities to help with pathname operations")
(description
"This package provides a Common Lisp system a with collection of common
tests and operations to help handling pathnames. It does not actually deal in
handling the accessing of files on the underlying system however.")
(license license:zlib))))
(define-public ecl-pathname-utils
(sbcl-package->ecl-package sbcl-pathname-utils))
(define-public cl-pathname-utils
(sbcl-package->cl-source-package sbcl-pathname-utils))
(define-public sbcl-terrable
(let ((commit "e4fe23ffa08e8d53a8168105b413861da59cc786")
(revision "1"))
(package
(name "sbcl-terrable")
(version (git-version "1.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shirakumo/terrable")
(commit commit)))
(file-name (git-file-name "terrable" version))
(sha256
(base32 "0pnqflgz410zydc1ivwnd8hcl24bgr7x12yjzr7g4lq3ibc8y97b"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("documentation-utils" ,sbcl-documentation-utils)
("fast-io" ,sbcl-fast-io)
("ieee-floats" ,sbcl-ieee-floats)
("static-vectors" ,sbcl-static-vectors)
("trivial-garbage" ,sbcl-trivial-garbage)))
(home-page "https://shirakumo.github.io/terrable/")
(synopsis "Parser library for Terragen TER terrain files")
(description
"This package provides Common Lisp support for reading the Terragen
@code{.TER} format. The format specification can be found at
@url{https://planetside.co.uk/wiki/index.php?title=Terragen_.TER_Format}")
(license license:zlib))))
(define-public ecl-terrable
(sbcl-package->ecl-package sbcl-terrable))
(define-public cl-terrable
(sbcl-package->cl-source-package sbcl-terrable))
(define-public sbcl-simple-rgb
(let ((commit "ba9b0689362c28aa6a91c0636796c6c372657293")
(revision "1"))
(package
(name "sbcl-simple-rgb")
(version (git-version "0.01" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wmannis/simple-rgb/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ggv0h2n4mvwnggjr1b40gw667gnyykzki2zadaczi38ydzyzlp1"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/wmannis/simple-rgb")
(synopsis "Manipulate colors in RGB format")
(description
"This Common Lisp library focuses on the small set of basic color
manipulations (lightening, compliments, etc.) you might use to generate a
color palette for a GUI or web page.")
(license license:bsd-2))))
(define-public ecl-simple-rgb
(sbcl-package->ecl-package sbcl-simple-rgb))
(define-public cl-simple-rgb
(sbcl-package->cl-source-package sbcl-simple-rgb))
(define-public sbcl-cl-qprint
(let ((commit "bfe398551cbfb7ca84a9ba59a26a1116ac5c06eb")
(revision "1"))
(package
(name "sbcl-cl-qprint")
(version (git-version "0.9.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/eugeneia/cl-qprint/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "099h0rrdzxnlmn8avi72mg2dl0kccp7w01b2p9nwyy4b8yr32cir"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("flexi-streams" ,sbcl-flexi-streams)))
(home-page "https://github.com/eugeneia/cl-qprint/")
(synopsis "Implementation of the quoted-printable encoding")
(description
"This Common Lisp library implements the quoted-printable encoding as
described in RFC 2045 (see @url{http://tools.ietf.org/html/rfc2045}).")
(license license:lgpl2.1))))
(define-public ecl-cl-qprint
(sbcl-package->ecl-package sbcl-cl-qprint))
(define-public cl-qprint
(sbcl-package->cl-source-package sbcl-cl-qprint))
(define-public sbcl-cl-mime
(let ((commit "d30a28e0a40393bd3af7d138daa05319ed2e9d07")
(revision "1"))
(package
(name "sbcl-cl-mime")
;; One commit says "update to cl-mime-0.5.3", even though the .asd is at 0.5.1.
(version (git-version "0.5.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
;; Maintained fork according to http://www.cliki.net/CL-MIME:
(url "https://github.com/40ants/cl-mime")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0qn8if0fj6vzc897pqqqs0m1y107gmzqngpqhqmwrcsp1ckj5k0v"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("ppcre" ,sbcl-cl-ppcre)
("cl-base64" ,sbcl-cl-base64)
("cl-qprint" ,sbcl-cl-qprint)))
(native-inputs
`(("rove" ,sbcl-rove)))
(home-page "https://github.com/eugeneia/cl-qprint/")
(synopsis "Read and print MIME content in Common Lisp")
(description
"This is a Common Lisp library for reading and printing MIME content.
It supports automatic conversion between 7-bit, quoted-printable and base64
encodings.")
(license license:lgpl2.1))))
(define-public ecl-cl-mime
(sbcl-package->ecl-package sbcl-cl-mime))
(define-public cl-mime
(sbcl-package->cl-source-package sbcl-cl-mime))
(define-public sbcl-lispbuilder-sdl
(let ((commit "589b3c6d552bbec4b520f61388117d6c7b3de5ab"))
(package
(name "sbcl-lispbuilder-sdl")
(version (git-version "0.9.8.2" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lispbuilder/lispbuilder")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0zga59fjlhq3mhwbf80qwqwpkjkxqnn2mhxajlb8563vhn3dbafp"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("cffi" ,sbcl-cffi)
("trivial-garbage" ,sbcl-trivial-garbage)
("sdl" ,sdl)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'cd-sdl
(lambda _
(chdir "lispbuilder-sdl")
#t))
(add-after 'cd-sdl 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cffi/library.lisp"
(("libSDL[^\"]*" all)
(string-append (assoc-ref inputs "sdl") "/lib/" all)))
#t)))))
(home-page "https://github.com/lispbuilder/lispbuilder/wiki/LispbuilderSDL")
(synopsis "Common Lisp wrapper for SDL")
(description
"This library is an SDL wrapper as part of an umbrella project that
provides cross-platform packages for building large, interactive applications
in Common Lisp.")
(license license:expat))))
(define-public ecl-lispbuilder-sdl
(sbcl-package->ecl-package sbcl-lispbuilder-sdl))
(define-public cl-lispbuilder-sdl
(sbcl-package->cl-source-package sbcl-lispbuilder-sdl))
(define-public sbcl-dufy
(package
(name "sbcl-dufy")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/privet-kitty/dufy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15vrp1kayhjb5c1vc9x8wlm8rimk73vpa7yc101cf0gsg1fjazl6"))))
(build-system asdf-build-system/sbcl)
(inputs
`(("alexandria" ,sbcl-alexandria)
("ppcre" ,sbcl-cl-ppcre)))
(native-inputs
`(("fiveam" ,sbcl-fiveam)
("cl-csv" ,sbcl-cl-csv)
("parse-float" ,sbcl-parse-float)
("lispbuilder-sdl" ,sbcl-lispbuilder-sdl)
("lparallel" ,sbcl-lparallel)))
(home-page "https://github.com/privet-kitty/dufy")
(synopsis "Color library for Common Lisp")
(description
"Dufy is a library for exact color manipulation and conversion in various
color spaces, which supports many color models.")
(license license:expat)))
(define-public ecl-dufy
(sbcl-package->ecl-package sbcl-dufy))
(define-public cl-dufy
(sbcl-package->cl-source-package sbcl-dufy))

View File

@ -847,7 +847,7 @@ enough to play the original mainframe Zork all the way through.")
(define-public txr
(package
(name "txr")
(version "255")
(version "257")
(source
(origin
(method git-fetch)
@ -856,7 +856,7 @@ enough to play the original mainframe Zork all the way through.")
(commit (string-append "txr-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0fjca44761x29xg5hh60yf4i3k7462z7ysnadbk2wzisp42yxk6j"))))
(base32 "02lp71m4b0817c3ajrd46jjfm8yycbwxk5ic8s2yxc45ym7q73cj"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -3,7 +3,7 @@
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Dennis Mungai <dmngaie@gmail.com>
;;; Copyright © 2016, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2018, 2019, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@ -476,21 +476,21 @@ output), and Binutils.")
("libc-debug" ,glibc "debug")
("libc-static" ,glibc "static")))))
(define-public llvm-11
(define-public llvm-12
(package
(name "llvm")
(version "11.0.0")
(version "12.0.0")
(source
(origin
(method url-fetch)
(uri (llvm-uri "llvm" version))
(sha256
(base32
"0s94lwil98w7zb7cjrbnxli0z7gklb312pkw74xs1d6zk346hgwi"))))
"0l4b79gwfvxild974aigcq1yigypjsk2j5p59syhl6ksd744gp29"))))
(build-system cmake-build-system)
(outputs '("out" "opt-viewer"))
(native-inputs
`(("python" ,python-2) ;bytes->str conversion in clang>=3.7 needs python-2
`(("python" ,python)
("perl" ,perl)))
(inputs
`(("libffi" ,libffi)))
@ -538,6 +538,45 @@ languages is in development. The compiler infrastructure includes mirror sets
of programming tools as well as libraries with equivalent functionality.")
(license license:asl2.0))) ;with LLVM exceptions, see LICENSE.txt
(define-public clang-runtime-12
(clang-runtime-from-llvm
llvm-12
"0d444qihq9jhqnfv003cr704v363va72zl6qaw2algj1c85cva45"))
(define-public clang-12
(clang-from-llvm llvm-12 clang-runtime-12
"1vd9rhhrd8ghdg111lac7w8by71y9l14yh5zxfijsm6lj4p4avp2"
#:patches '("clang-11.0-libc-search-path.patch")
#:tools-extra
(origin
(method url-fetch)
(uri (llvm-uri "clang-tools-extra"
(package-version llvm-12)))
(patches
(search-patches "clang-12-tools-extra-directory.patch"))
(sha256
(base32
"0p3dzr0qa7mar83y66xa5m5apynf6ia0lsdsq6axwnm64ysy0hdd")))))
(define-public clang-toolchain-12
(make-clang-toolchain clang-12))
(define-public llvm-11
(package
(inherit llvm-12)
(version "11.0.0")
(source
(origin
(method url-fetch)
(uri (llvm-uri "llvm" version))
(sha256
(base32
"0s94lwil98w7zb7cjrbnxli0z7gklb312pkw74xs1d6zk346hgwi"))))
(native-inputs
`(;; TODO: Switch to Python 3 in the next rebuild cycle.
("python" ,python-2)
("perl" ,perl)))))
(define-public clang-runtime-11
(clang-runtime-from-llvm
llvm-11
@ -956,6 +995,97 @@ use with Clang, targeting C++11, C++14 and above.")
`(("clang" ,clang-6)
("llvm" ,llvm-6)))))
(define-public libcxxabi-6
(package
(name "libcxxabi")
(version "6.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/llvm/llvm-project")
(commit (string-append "llvmorg-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ki6796b5z08kh3a3rbysr5wwb2dkl6wal5dzd03i4li5xfkvx1g"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list (string-append "-DLIBCXXABI_LIBCXX_INCLUDES="
(assoc-ref %build-inputs "libcxx")
"/include")
"-DCMAKE_C_COMPILER=clang"
"-DCMAKE_CXX_COMPILER=clang++")
#:phases
(modify-phases (@ (guix build cmake-build-system) %standard-phases)
(add-after 'unpack 'chdir
(lambda _ (chdir "libcxxabi")))
(add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
;; Hide GCC's C++ headers so that they do not interfere with
;; the ones we are attempting to build.
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(cons (string-append
(assoc-ref inputs "libcxx") "/include/c++/v1")
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:)))
":"))
(format #true
"environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
(getenv "CPLUS_INCLUDE_PATH")))))
(add-after 'install 'install-headers
(lambda* (#:key outputs #:allow-other-keys)
(let ((include-dir (string-append
(assoc-ref outputs "out") "/include")))
(install-file "../libcxxabi/include/__cxxabi_config.h" include-dir)
(install-file "../libcxxabi/include/cxxabi.h" include-dir)))))))
(native-inputs
`(("clang" ,clang-6)
("llvm" ,llvm-6)
("libcxx" ,libcxx-6)))
(home-page "https://libcxxabi.llvm.org")
(synopsis "C++ standard library support")
(description
"This package provides an implementation of low level support for a
standard C++ library.")
(license license:expat)))
(define-public libcxx+libcxxabi-6
(package
(inherit libcxx-6)
(name "libcxx+libcxxabi")
(version (package-version libcxx-6))
(arguments
`(#:configure-flags
(list "-DLIBCXX_CXX_ABI=libcxxabi"
(string-append "-DLIBCXX_CXX_ABI_INCLUDE_PATHS="
(assoc-ref %build-inputs "libcxxabi")
"/include"))
#:phases
(modify-phases (@ (guix build cmake-build-system) %standard-phases)
(add-after 'set-paths 'adjust-CPLUS_INCLUDE_PATH
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
;; Hide GCC's C++ headers so that they do not interfere with
;; the ones we are attempting to build.
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH")
#\:))
":"))
(format #true
"environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%"
(getenv "CPLUS_INCLUDE_PATH"))))))))
(native-inputs
`(("clang" ,clang-6)
("llvm" ,llvm-6)
("libcxxabi" ,libcxxabi-6)))))
(define-public libclc
(package
(name "libclc")

View File

@ -1173,7 +1173,7 @@ enabled.")
(define-public fennel
(package
(name "fennel")
(version "0.8.1")
(version "0.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1182,7 +1182,7 @@ enabled.")
(file-name (git-file-name name version))
(sha256
(base32
"0n0xkgzlrwpppm5vbvn84mq418xhmyakk9hakdmjv1lk2dfdq2g7"))
"07qgycf5cxm9zcc4fgpgvplg95ndavh3ynpdjpvzkikzbnyj7xia"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -915,13 +915,13 @@ for scientific computing and data science (e.g. BLAS and OpenMP).")
(define-public python-pynndescent
(package
(name "python-pynndescent")
(version "0.4.8")
(version "0.5.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pynndescent" version))
(sha256
(base32 "0li1fclif50v6xrq7wh3lif9vv5jpj7xhrb0z6g89wwjnp9b9833"))))
(base32 "0w87c2v0li2rdbx6qfc2lb6y6bxpdy3jwfgzfs1kcr4d1chj5zfr"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)))
@ -941,7 +941,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.")
(define-public python-opentsne
(package
(name "python-opentsne")
(version "0.4.4")
(version "0.5.2")
(source
(origin
;; No tests in the PyPI tarball.
@ -951,7 +951,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32 "08wamsssmyf6511cbmglm67dp48i6xazs89m1cskdk219v90bc76"))))
(base32 "1hl42wmafydk4fxdx05l180k3canmqw8h9r20fsqq2aq440b09gh"))))
(build-system python-build-system)
(arguments
`(#:phases

View File

@ -17,7 +17,7 @@
;;; Copyright © 2016, 2017 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
@ -129,6 +129,7 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages ragel)
#:use-module (gnu packages regex)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
@ -492,7 +493,7 @@ to run without any changes.")
(define-public fetchmail
(package
(name "fetchmail")
(version "6.4.18")
(version "6.4.19")
(source
(origin
(method url-fetch)
@ -500,7 +501,7 @@ to run without any changes.")
(version-major+minor version) "/"
"fetchmail-" version ".tar.xz"))
(sha256
(base32 "17r5zfk9yh7jhgdb360dlzx5fx9lsbmalasx6zgxw9v9vjycjb9h"))))
(base32 "0pvbknpimf38ws4gskad79wd1cvy62kcsjy65sm0rr83s6ii33fd"))))
(build-system gnu-build-system)
(inputs
`(("openssl" ,openssl)))
@ -3659,7 +3660,7 @@ operators and scripters.")
(define-public alpine
(package
(name "alpine")
(version "2.24")
(version "2.24.1")
(source
(origin
(method git-fetch)
@ -3672,7 +3673,7 @@ operators and scripters.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0d5ybnsv29gs8krl66db56avmssq28jlg0qj5i1wka05ncc3740d"))
(base32 "0dvp6m9xdxycc2lh4cbp6wvq0bkqmmkzs4c4aqsa321p7y03vs9q"))
(modules '((guix build utils)))
(snippet
'(begin
@ -4375,3 +4376,82 @@ black lists. Each message is analysed by Rspamd and given a spam
score.")
(home-page "https://www.rspamd.com/")
(license license:asl2.0)))
(define-public crm114
(package
(name "crm114")
(version "20100106")
(source
(origin
(method url-fetch)
(uri (string-append "http://crm114.sourceforge.net/tarballs/crm114-"
version "-BlameMichelson.src.tar.gz"))
(sha256
(base32
"0awcjc5j2mclkkpbjyijj9mv8xjz3haljvaj0fyc4fm4xir68qpv"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
((guix build emacs-build-system) #:prefix emacs:)
(guix build utils)
(ice-9 string-fun))
#:imported-modules (,@%gnu-build-system-modules
(guix build emacs-build-system)
(guix build emacs-utils))
#:make-flags (list (string-append "prefix=" %output)
"LDFLAGS=") ; disable static linking
;; Test suite is not fully automated. It requires a human to read the
;; results and determine if the tests have passed.
#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'fix-build
(lambda _
;; Inline functions can only be used from the same compilation
;; unit. This causes the build to fail.
(substitute* "crm_svm_matrix.c"
(("^inline ") ""))))
(add-before 'install 'pre-install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; Install maillib.crm library.
(install-file "maillib.crm" (string-append out "/share/crm"))
;; Set absolute store paths.
(substitute* "mailreaver.crm"
(("insert maillib.crm")
(string-append "insert " out "/share/crm/maillib.crm"))
(("\\\\/bin\\\\/ls")
(string-replace-substring (which "ls") "/" "\\/"))
((":\\*:trainer_invoke_command:")
(string-append out "/bin/mailtrainer.crm")))
;; Install mail related crm scripts.
(for-each (lambda (file)
(install-file file (string-append out "/bin")))
(list "mailfilter.crm" "mailreaver.crm" "mailtrainer.crm"))
;; Create emacs site-lisp directory so that the install phase
;; can install crm-mode.
(mkdir-p (string-append out "/share/emacs/site-lisp")))))
;; Run phases from the emacs build system.
(add-after 'install 'make-autoloads
(assoc-ref emacs:%standard-phases 'make-autoloads))
(add-after 'make-autoloads 'enable-autoloads-compilation
(assoc-ref emacs:%standard-phases 'enable-autoloads-compilation))
(add-after 'enable-autoloads-compilation 'emacs-build
(assoc-ref emacs:%standard-phases 'build))
(add-after 'emacs-build 'validate-compiled-autoloads
(assoc-ref emacs:%standard-phases 'validate-compiled-autoloads)))))
(inputs
`(("tre" ,tre)))
(native-inputs
`(("emacs" ,emacs-minimal)))
(home-page "http://crm114.sourceforge.net/")
(synopsis "Controllable regex mutilator")
(description "CRM114 is a system to examine incoming e-mail, system log
streams, data files or other data streams, and to sort, filter, or alter the
incoming files or data streams according to the user's wildest desires.
Criteria for categorization of data can be via a host of methods, including
regexes, approximate regexes, a Hidden Markov Model, Orthogonal Sparse
Bigrams, WINNOW, Correllation, KNN/Hyperspace, or Bit Entropy (or by other
means--it's all programmable).")
(license license:gpl3)))

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
@ -1580,6 +1580,9 @@ used to bring up authentication dialogs.")
("shared-mime-info" ,shared-mime-info)
("yelp" ,yelp)
("zenity" ,zenity)))
(propagated-inputs
;; Default font that applications such as IceCat require.
`(("font-dejavu" ,font-dejavu)))
(synopsis "The MATE desktop environment")
(home-page "https://mate-desktop.org/")
(description

View File

@ -3608,7 +3608,7 @@ point numbers.")
(define-public wxmaxima
(package
(name "wxmaxima")
(version "21.02.0")
(version "21.04.0")
(source
(origin
(method git-fetch)
@ -3617,7 +3617,7 @@ point numbers.")
(commit (string-append "Version-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19sab596ydwz65151bwymnfilyfmr8qcxb0k8cxlnj1gmdldlyz6"))))
(base32 "0xj95zk16x8kac8qhzd5kvf3b00x7hgdw85da9ww63xyndvhh2lw"))))
(build-system cmake-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)))
@ -4480,7 +4480,7 @@ evaluates expressions using the standard order of operations.")
(define-public xaos
(package
(name "xaos")
(version "4.0")
(version "4.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4489,7 +4489,7 @@ evaluates expressions using the standard order of operations.")
(file-name (git-file-name name version))
(sha256
(base32
"00110p5xscjsmn7avfqgydn656zbmdj3l3y2fpv9b4ihzpid8n7a"))))
"0maw5am6rrkyjrprfg113zjq37mqj0iaznkg4h2927ff7wrprc94"))))
(build-system gnu-build-system)
(native-inputs `(("gettext" ,gettext-minimal)
("qtbase" ,qtbase)
@ -4512,12 +4512,14 @@ evaluates expressions using the standard order of operations.")
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; The DESTDIR is originally set to install the xaos binary to
;; the "bin" folder inside the build directory. Setting make
;; flags doesn't seem to change this.
(substitute* "XaoS.pro"
;; The DESTDIR is originally set to install the xaos binary to
;; the "bin" folder inside the build directory. Setting make
;; flags doesn't seem to change this.
(("DESTDIR.*$")
(string-append "DESTDIR=" out "/bin")))
(string-append "DESTDIR=" out "/bin"))
;; Set the correct path to the lrelease binary.
(("lrelease-qt5") "lrelease"))
(substitute* "src/include/config.h"
(("/usr/share/XaoS")
(string-append out "/share/XaoS")))

View File

@ -2743,7 +2743,7 @@ social and chat platform.")
(define-public psi-plus
(package
(name "psi-plus")
(version "1.5.1482")
(version "1.5.1484")
(source
(origin
(method git-fetch)
@ -2757,7 +2757,7 @@ social and chat platform.")
`(begin
(delete-file-recursively "3rdparty")))
(sha256
(base32 "0lcx616hchwf492m1dm8ddb4qd2pmgf703ajnnb0y9ky99kgg8q2"))))
(base32 "1jsm39nzzbqkp3zc0xqx7jid6p4q1ra28xad38wjr2l1jb8qjn24"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ; No target

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
;;; Copyright © 2015, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
@ -29,14 +29,14 @@
(define-public mtools
(package
(name "mtools")
(version "4.0.26")
(version "4.0.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mtools/mtools-"
version ".tar.bz2"))
(sha256
(base32
"06pabnjc4r2vv3dzfm6q97g6jbp2k5bhmcdwv2cf25ka8y5ir7sk"))
"1crqi10adwfahj8xyw60lx70hkpcc5g00b5r8277cm2f4kcwi24w"))
(patches
(search-patches "mtools-mformat-uninitialized.patch"))))
(build-system gnu-build-system)

View File

@ -453,7 +453,7 @@ playing your music.")
(define-public strawberry
(package
(name "strawberry")
(version "0.9.2")
(version "0.9.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -462,7 +462,7 @@ playing your music.")
(file-name (git-file-name name version))
(sha256
(base32
"0d9asg21j9ai23sb35cimws8bd8fsnpha777rgscraa7i09q0rx2"))
"0lby5zi66i08s0mcygja8l3rbd97inhaxqbhahj8lfxs52r4grrq"))
(modules '((guix build utils)
(ice-9 regex)))
(snippet
@ -5997,7 +5997,7 @@ It can also play and mix samples.")
#:make-flags
(list (string-append "PREFIX="
(assoc-ref %outputs "out"))
"CC=gcc")
(string-append "CC=" ,(cc-for-target)))
#:phases
(modify-phases %standard-phases
(delete 'configure))))

View File

@ -1421,14 +1421,14 @@ of the same name.")
(define-public wireshark
(package
(name "wireshark")
(version "3.4.4")
(version "3.4.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.wireshark.org/download/src/wireshark-"
version ".tar.xz"))
(sha256
(base32 "0aad3m8nh4i75dgjs68217135bzqmhmlgjklmpjh1ihmjwgd373j"))))
(base32 "0cyk8nqws9gp8p2ywszbynh8vawivnbhw60dhmy21qd1038sy6ny"))))
(build-system cmake-build-system)
(arguments
`(#:phases

View File

@ -6373,15 +6373,15 @@ variants.")
(synopsis
"Executable code blocks inside markdown files")
(description
"@code{ocaml-mdx} allows to execute code blocks inside markdown files.
"@code{ocaml-mdx} executes code blocks inside markdown files.
There are (currently) two sub-commands, corresponding
to two modes of operations: pre-processing (@code{ocaml-mdx pp})
and tests (@code{ocaml-mdx test}]).
The pre-processor mode allows to mix documentation and code,
The pre-processor mode allows mixing documentation and code,
and to practice @dfn{literate programming} using markdown and OCaml.
The test mode allows to ensure that shell scripts and OCaml fragments
The test mode ensures that shell scripts and OCaml fragments
in the documentation always stays up-to-date.
@code{ocaml-mdx} is released as two binaries called @code{ocaml-mdx} and

View File

@ -0,0 +1,209 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages orange)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages graph)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt))
(define-public python-orange-canvas-core
(package
(name "python-orange-canvas-core")
(version "0.1.19")
(source
(origin
(method url-fetch)
(uri (pypi-uri "orange-canvas-core" version))
(sha256
(base32 "03wav2msfm32y8zwq69v1v6qyh1ld76xla2z60avf49yhbwjgwal"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
;; This test fails with: RuntimeError: Event loop is closed.
(substitute* "orangecanvas/application/tests/test_mainwindow.py"
(("test_help_requests") "_test_help_requests"))
(setenv "HOME" "/tmp")
(setenv "QT_QPA_PLATFORM" "offscreen")
#t)))))
(propagated-inputs
`(("python-anyqt" ,python-anyqt)
("python-cachecontrol" ,python-cachecontrol)
("python-commonmark" ,python-commonmark)
("python-dictdiffer" ,python-dictdiffer)
("python-docutils" ,python-docutils)
("python-pyqt" ,python-pyqt)
("python-qasync" ,python-qasync)
("python-requests" ,python-requests)))
(home-page "https://github.com/biolab/orange-canvas-core")
(synopsis "Core component of Orange Canvas")
(description
"Orange Canvas Core is a framework for building graphical user interfaces
for editing workflows. It is a component used to build the Orange Canvas
data-mining application.")
(license license:gpl3)))
(define-public python-orange-widget-base
(package
(name "python-orange-widget-base")
(version "4.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "orange-widget-base" version))
(sha256
(base32 "13sy3s8rdqs3i3ghixljpqvnfz81qmbb0kqlasw39zvf39qc22kz"))))
(build-system python-build-system)
(arguments
`(;; unittest fails to load one test, all other tests are passing:
;; AttributeError: module 'orangewidget' has no attribute 'version'.
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
(setenv "HOME" "/tmp")
(setenv "QT_QPA_PLATFORM" "offscreen")
#t)))))
(propagated-inputs
`(("python-anyqt" ,python-anyqt)
("python-matplotlib" ,python-matplotlib)
("python-orange-canvas-core"
,python-orange-canvas-core)
("python-pyqtgraph" ,python-pyqtgraph)))
(home-page "https://github.com/biolab/orange-widget-base")
(synopsis "Base Widget for Orange Canvas")
(description
"Orange Widget Base provides a base widget component for a interactive
GUI based workflow. It is primarily used in the Orange framework.")
(license license:gpl3+)))
(define-public orange
(package
(name "orange")
(version "3.28.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Orange3" version))
(sha256
(base32 "1ac4xjjkx06z10hl7k0zh1z3qhkl5vng15l9jkpkmck9spinbzil"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'preparations
(lambda _
;; Delete test that opens an outgoing connection.
(delete-file "Orange/tests/test_url_reader.py")
;; This is a binary data file and it breaks runpath validation.
(delete-file "Orange/tests/datasets/binary-blob.tab")
;; Skip the test which uses that binary file.
(substitute* "Orange/tests/test_txt_reader.py"
(("test_read_nonutf8_encoding") "_test_read_nonutf8_encoding"))
;; We use a correct version of PyQtWebEngine, but the build scripts
;; consider it incorrect anyways. Remove the constraint entirely to
;; work around this bug.
(substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") ""))
#t))
(add-before 'check 'set-HOME
;; Tests need a writable home.
(lambda _ (setenv "HOME" "/tmp") #t))
(add-after 'install 'wrap-executable
;; Ensure that icons are found at runtime.
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/orange-canvas")
`("QT_PLUGIN_PATH" prefix
,(list (string-append (assoc-ref inputs "qtsvg")
"/lib/qt5/plugins/")))))
#t)))))
(native-inputs
`(("python-cython" ,python-cython)))
(inputs
`(("python-anyqt" ,python-anyqt)
("python-baycomp" ,python-baycomp)
("python-bottleneck" ,python-bottleneck)
("python-chardet" ,python-chardet)
("python-httpx" ,python-httpx)
("python-joblib" ,python-joblib)
("python-keyring" ,python-keyring)
("python-keyrings.alt" ,python-keyrings.alt)
("python-louvain" ,python-louvain)
("python-matplotlib" ,python-matplotlib)
("python-networkx" ,python-networkx)
("python-numpy" ,python-numpy)
("python-openpyxl" ,python-openpyxl)
("python-opentsne" ,python-opentsne)
("python-orange-canvas-core"
,python-orange-canvas-core)
("python-orange-widget-base"
,python-orange-widget-base)
("python-pandas" ,python-pandas)
("python-pyqt" ,python-pyqt)
("python-pyqtgraph" ,python-pyqtgraph)
("python-pyqtwebengine" ,python-pyqtwebengine)
("python-pyyaml" ,python-pyyaml)
("python-requests" ,python-requests)
("python-scikit-learn" ,python-scikit-learn)
("python-scipy" ,python-scipy)
("python-serverfiles" ,python-serverfiles)
("python-xlrd" ,python-xlrd)
("python-xlsxwriter" ,python-xlsxwriter)
("qtbase" ,qtbase)
("qtsvg" ,qtsvg)
("xdg-utils" ,xdg-utils)))
(home-page "https://orangedatamining.com/")
(synopsis "Component-based data mining framework")
(description
"Orange is a component-based, graphical framework for machine learning,
data analysis, data mining and data visualization.")
(license license:gpl3+)))
(define-public python-serverfiles
(package
(name "python-serverfiles")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "serverfiles" version))
(sha256
(base32 "1qgbzgnaxj4wsp2rdas53qxsh0j7xpibq25w6lviwyaqwwrgq42y"))))
(build-system python-build-system)
(propagated-inputs
`(("python-requests" ,python-requests)))
(home-page "https://github.com/biolab/serverfiles")
(synopsis "Utility to access files on a HTTP server and store them locally")
(description
"This package provides an utility that accesses files on a HTTP server
and stores them locally for reuse. It is primarily used by the Orange
framework.")
(license license:gpl3+)))

View File

@ -1049,8 +1049,8 @@ environments.")
(license (list license:gpl3+ license:agpl3+ license:silofl1.1))))
(define-public guix-build-coordinator
(let ((commit "6fb5eafc33efa109b220efe71594cfcdb2efe133")
(revision "24"))
(let ((commit "1305724c7ea3c2bb3e557918d5a1b17d572aa110")
(revision "27"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@ -1061,7 +1061,7 @@ environments.")
(commit commit)))
(sha256
(base32
"1lf7jry18kwglvyakfkmi8bif8ppsdinl0xjgmkgkp4mvmymh2gj"))
"179n33mkhl6f2fv0gyn7sdm3k4hhm1hvca6dgc923d0w7zv4p577"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -1096,6 +1096,7 @@ environments.")
"guile-lib"
"guile-lzlib"
"guile-zlib"
"guile-sqlite3"
"gnutls"
,@(if (hurd-target?)
'()

View File

@ -57,14 +57,14 @@
(define-public parallel
(package
(name "parallel")
(version "20210322")
(version "20210422")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
(base32 "152np0jg4n94sbl2p2fzxjfnssiyp5sg7r5wx6s8p893b921pxwq"))))
(base32 "1s4ynlsh5fr5vxcf5xm45fcfyzp62zclzjq5b7rbwrs4chxnlgmy"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -198,7 +198,12 @@ execution is also possible.")
,@(if (target-64bit?) '() '("--enable-deprecated")))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(add-after 'unpack 'patch-plugin-linker-flags
(lambda _
(substitute* (find-files "src/plugins/" "Makefile.in")
(("_la_LDFLAGS = ")
"_la_LDFLAGS = ../../../api/libslurm.la "))))
(add-after 'patch-plugin-linker-flags 'autoconf
(lambda _ (invoke "autoconf"))) ;configure.ac was patched
(add-after 'install 'install-libpmi
(lambda _

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se>
@ -136,19 +136,18 @@ human.")
(base32 "0azq20rqsx7axrigha4qh81ipvhqnnlb27w3xdjg5z4h3jky4dp5"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags '("-DWITH_XC_ALL=YES"
`(#:modules ((guix build cmake-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%cmake-build-system-modules
(guix build qt-utils))
#:configure-flags '("-DWITH_XC_ALL=YES"
"-DWITH_XC_UPDATECHECK=NO")
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-bin
(lambda* (#:key outputs inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/keepassxc")
`("QT_PLUGIN_PATH" ":" prefix
,(map (lambda (label)
(string-append (assoc-ref inputs label)
"/lib/qt5/plugins"))
'("qtbase" "qtsvg")))))
(add-after 'install 'wrap-qt
(lambda* (#:key outputs #:allow-other-keys)
(wrap-qt-program (assoc-ref outputs "out") "keepassxc")
#t)))))
(native-inputs
`(("asciidoctor" ,ruby-asciidoctor)

View File

@ -0,0 +1,16 @@
Help CMake locate the "tools-extra" directory.
Taken from <https://bugs.llvm.org/show_bug.cgi?id=49990#c3>.
diff --git a/clang-tools-extra/clangd/quality/CompletionModel.cmake b/clang-tools-extra/clangd/quality/CompletionModel.cmake
--- a/clangd/quality/CompletionModel.cmake
+++ b/clangd/quality/CompletionModel.cmake
@@ -5,7 +5,7 @@
# will define a C++ class called ${cpp_class} - which may be a
# namespace-qualified class name.
function(gen_decision_forest model filename cpp_class)
- set(model_compiler ${CMAKE_SOURCE_DIR}/../clang-tools-extra/clangd/quality/CompletionModelCodegen.py)
+ set(model_compiler ${CMAKE_CURRENT_LIST_DIR}/quality/CompletionModelCodegen.py)
set(output_dir ${CMAKE_CURRENT_BINARY_DIR})
set(header_file ${output_dir}/${filename}.h)

View File

@ -1,43 +0,0 @@
From 2cae9b9acf9da98c4c9990819ffbd5aabe23017e Mon Sep 17 00:00:00 2001
From: Jehan <jehan@girinstud.io>
Date: Mon, 14 Dec 2020 19:53:38 +0100
Subject: [PATCH] app: make "gegl:introspect" an optional operation dependency.
Check at runtime for the operation availability and set the "Show Image
Graph" action active depending on this check.
This goes with discussions to make this operation optional with a
runtime check for the tool `dot`.
See: https://gitlab.gnome.org/GNOME/gegl/-/merge_requests/84
---
app/actions/debug-actions.c | 6 ++++++
app/sanity.c | 1 -
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/app/actions/debug-actions.c b/app/actions/debug-actions.c
index 6be4422b228..22ca38b15ea 100644
--- a/app/actions/debug-actions.c
+++ b/app/actions/debug-actions.c
@@ -103,4 +103,10 @@ void
debug_actions_update (GimpActionGroup *group,
gpointer data)
{
+#define SET_SENSITIVE(action,condition) \
+ gimp_action_group_set_action_sensitive (group, action, (condition) != 0)
+
+ SET_SENSITIVE ("debug-show-image-graph", gegl_has_operation ("gegl:introspect"));
+
+#undef SET_SENSITIVE
}
diff --git a/app/sanity.c b/app/sanity.c
index 015801a396e..6374ac1ad20 100644
--- a/app/sanity.c
+++ b/app/sanity.c
@@ -650,7 +650,6 @@ sanity_check_gegl_ops (void)
"gegl:hue-chroma",
"gegl:illusion",
"gegl:image-gradient",
- "gegl:introspect",
"gegl:invert-gamma",
"gegl:invert-linear",
"gegl:lens-blur",

View File

@ -0,0 +1,31 @@
Fix a stack corruption when handling files with more than 64 audio
channels:
https://gstreamer.freedesktop.org/security/sa-2021-0005.html
Patch copied from upstream source repository:
https://gitlab.freedesktop.org/gstreamer/gst-libav/-/commit/dcea8baa14a5fc3b796d876baaf2f238546ba2b1
diff --git a/ext/libav/gstavcodecmap.c b/ext/libav/gstavcodecmap.c
index b5be4bb7a5f2712f78383da9319754a8849e3307..be22f22cf5c7c7b22b13e44b10999adaacbcca2b 100644
--- a/ext/libav/gstavcodecmap.c
+++ b/ext/libav/gstavcodecmap.c
@@ -102,7 +102,7 @@ gst_ffmpeg_channel_layout_to_gst (guint64 channel_layout, gint channels,
guint nchannels = 0;
gboolean none_layout = FALSE;
- if (channel_layout == 0) {
+ if (channel_layout == 0 || channels > 64) {
nchannels = channels;
none_layout = TRUE;
} else {
@@ -163,7 +163,7 @@ gst_ffmpeg_channel_layout_to_gst (guint64 channel_layout, gint channels,
} else {
guint i;
- for (i = 0; i < nchannels; i++)
+ for (i = 0; i < nchannels && i < 64; i++)
pos[i] = GST_AUDIO_CHANNEL_POSITION_NONE;
}
}

View File

@ -0,0 +1,263 @@
Fix an overflow when calculating something for AVC/HEVC videos:
https://security-tracker.debian.org/tracker/TEMP-0000000-C6AAE1
Patch copied from upstream source repository:
https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/commit/0cfbf7ad91c7f121192c8ce135769f8eb276c41d
From 0cfbf7ad91c7f121192c8ce135769f8eb276c41d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
Date: Tue, 23 Mar 2021 19:19:14 +0200
Subject: [PATCH] h2645parser: Catch overflows in AVC/HEVC NAL unit length
calculations
Offset and size are stored as 32 bit guint and might overflow when
adding the nal_length_size, so let's avoid that.
For the size this would happen if the AVC/HEVC NAL unit size happens to
be stored in 4 bytes and is 4294967292 or higher, which is likely
corrupted data anyway.
For the offset this is something for the caller of these functions to
take care of but is unlikely to happen as it would require parsing on a
>4GB buffer.
Allowing these overflows causes all kinds of follow-up bugs in the
h2645parse elements, ranging from infinite loops and memory leaks to
potential memory corruptions.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2107>
---
gst-libs/gst/codecparsers/gsth264parser.c | 16 +++++-
gst-libs/gst/codecparsers/gsth265parser.c | 16 +++++-
tests/check/libs/h264parser.c | 60 +++++++++++++++++++++++
tests/check/libs/h265parser.c | 60 +++++++++++++++++++++++
4 files changed, 150 insertions(+), 2 deletions(-)
diff --git a/gst-libs/gst/codecparsers/gsth264parser.c b/gst-libs/gst/codecparsers/gsth264parser.c
index 012f1d0d7..68aa25068 100644
--- a/gst-libs/gst/codecparsers/gsth264parser.c
+++ b/gst-libs/gst/codecparsers/gsth264parser.c
@@ -1556,6 +1556,14 @@ gst_h264_parser_identify_nalu_avc (GstH264NalParser * nalparser,
memset (nalu, 0, sizeof (*nalu));
+ /* Would overflow guint below otherwise: the callers needs to ensure that
+ * this never happens */
+ if (offset > G_MAXUINT32 - nal_length_size) {
+ GST_WARNING ("offset + nal_length_size overflow");
+ nalu->size = 0;
+ return GST_H264_PARSER_BROKEN_DATA;
+ }
+
if (size < offset + nal_length_size) {
GST_DEBUG ("Can't parse, buffer has too small size %" G_GSIZE_FORMAT
", offset %u", size, offset);
@@ -1570,7 +1578,13 @@ gst_h264_parser_identify_nalu_avc (GstH264NalParser * nalparser,
nalu->sc_offset = offset;
nalu->offset = offset + nal_length_size;
- if (size < nalu->size + nal_length_size) {
+ if (nalu->size > G_MAXUINT32 - nal_length_size) {
+ GST_WARNING ("NALU size + nal_length_size overflow");
+ nalu->size = 0;
+ return GST_H264_PARSER_BROKEN_DATA;
+ }
+
+ if (size < (gsize) nalu->size + nal_length_size) {
nalu->size = 0;
return GST_H264_PARSER_NO_NAL_END;
diff --git a/gst-libs/gst/codecparsers/gsth265parser.c b/gst-libs/gst/codecparsers/gsth265parser.c
index 26e68b276..dc7f27aa9 100644
--- a/gst-libs/gst/codecparsers/gsth265parser.c
+++ b/gst-libs/gst/codecparsers/gsth265parser.c
@@ -1531,6 +1531,14 @@ gst_h265_parser_identify_nalu_hevc (GstH265Parser * parser,
memset (nalu, 0, sizeof (*nalu));
+ /* Would overflow guint below otherwise: the callers needs to ensure that
+ * this never happens */
+ if (offset > G_MAXUINT32 - nal_length_size) {
+ GST_WARNING ("offset + nal_length_size overflow");
+ nalu->size = 0;
+ return GST_H265_PARSER_BROKEN_DATA;
+ }
+
if (size < offset + nal_length_size) {
GST_DEBUG ("Can't parse, buffer has too small size %" G_GSIZE_FORMAT
", offset %u", size, offset);
@@ -1545,7 +1553,13 @@ gst_h265_parser_identify_nalu_hevc (GstH265Parser * parser,
nalu->sc_offset = offset;
nalu->offset = offset + nal_length_size;
- if (size < nalu->size + nal_length_size) {
+ if (nalu->size > G_MAXUINT32 - nal_length_size) {
+ GST_WARNING ("NALU size + nal_length_size overflow");
+ nalu->size = 0;
+ return GST_H265_PARSER_BROKEN_DATA;
+ }
+
+ if (size < (gsize) nalu->size + nal_length_size) {
nalu->size = 0;
return GST_H265_PARSER_NO_NAL_END;
diff --git a/tests/check/libs/h264parser.c b/tests/check/libs/h264parser.c
index c7c46d9a2..d322dd8db 100644
--- a/tests/check/libs/h264parser.c
+++ b/tests/check/libs/h264parser.c
@@ -229,6 +229,65 @@ GST_START_TEST (test_h264_parse_slice_5bytes)
GST_END_TEST;
+GST_START_TEST (test_h264_parse_identify_nalu_avc)
+{
+ GstH264ParserResult res;
+ GstH264NalUnit nalu;
+ GstH264NalParser *const parser = gst_h264_nal_parser_new ();
+ /* Skip 3 bytes for the start code */
+ const gsize nal_size = sizeof (slice_dpa) - 3;
+ const gsize buf_size = 4 + nal_size;
+ guint8 *buf = g_new (guint8, buf_size);
+
+ memcpy (buf + 4, slice_dpa + 3, nal_size);
+
+ GST_WRITE_UINT16_BE (buf + 2, nal_size);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 2, buf_size, 2, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_OK);
+ assert_equals_int (nalu.type, GST_H264_NAL_SLICE_DPA);
+ assert_equals_int (nalu.offset, 4);
+ assert_equals_int (nalu.size, nal_size);
+
+ GST_WRITE_UINT32_BE (buf, nal_size);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_OK);
+ assert_equals_int (nalu.type, GST_H264_NAL_SLICE_DPA);
+ assert_equals_int (nalu.offset, 4);
+ assert_equals_int (nalu.size, nal_size);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 2);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 3);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 4);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_NO_NAL_END);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 6);
+ res = gst_h264_parser_identify_nalu_avc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H264_PARSER_NO_NAL_END);
+
+ g_free (buf);
+ gst_h264_nal_parser_free (parser);
+}
+
+GST_END_TEST;
+
static guint8 nalu_sps_with_vui[] = {
0x00, 0x00, 0x00, 0x01, 0x67, 0x64, 0x00, 0x28,
0xac, 0xd9, 0x40, 0x78, 0x04, 0x4f, 0xde, 0x03,
@@ -666,6 +725,7 @@ h264parser_suite (void)
tcase_add_test (tc_chain, test_h264_parse_slice_dpa);
tcase_add_test (tc_chain, test_h264_parse_slice_eoseq_slice);
tcase_add_test (tc_chain, test_h264_parse_slice_5bytes);
+ tcase_add_test (tc_chain, test_h264_parse_identify_nalu_avc);
tcase_add_test (tc_chain, test_h264_parse_invalid_sei);
tcase_add_test (tc_chain, test_h264_create_sei);
diff --git a/tests/check/libs/h265parser.c b/tests/check/libs/h265parser.c
index 0a0e4db97..5b6a215ec 100644
--- a/tests/check/libs/h265parser.c
+++ b/tests/check/libs/h265parser.c
@@ -255,6 +255,65 @@ GST_START_TEST (test_h265_parse_slice_6bytes)
GST_END_TEST;
+GST_START_TEST (test_h265_parse_identify_nalu_hevc)
+{
+ GstH265ParserResult res;
+ GstH265NalUnit nalu;
+ GstH265Parser *parser = gst_h265_parser_new ();
+ /* Skip 4 bytes for the start code */
+ const gsize nal_size = sizeof (slice_eos_slice_eob) - 4;
+ const gsize buf_size = 4 + nal_size;
+ guint8 *buf = g_new (guint8, buf_size);
+
+ memcpy (buf + 4, slice_eos_slice_eob + 4, nal_size);
+
+ GST_WRITE_UINT16_BE (buf + 2, nal_size);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 2, buf_size, 2, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_OK);
+ assert_equals_int (nalu.type, GST_H265_NAL_SLICE_IDR_W_RADL);
+ assert_equals_int (nalu.offset, 4);
+ assert_equals_int (nalu.size, nal_size);
+
+ GST_WRITE_UINT32_BE (buf, nal_size);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_OK);
+ assert_equals_int (nalu.type, GST_H265_NAL_SLICE_IDR_W_RADL);
+ assert_equals_int (nalu.offset, 4);
+ assert_equals_int (nalu.size, nal_size);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 2);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 3);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_BROKEN_DATA);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 4);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_NO_NAL_END);
+
+ GST_WRITE_UINT32_BE (buf, G_MAXUINT32 - 6);
+ res = gst_h265_parser_identify_nalu_hevc (parser, buf, 0, buf_size, 4, &nalu);
+
+ assert_equals_int (res, GST_H265_PARSER_NO_NAL_END);
+
+ g_free (buf);
+ gst_h265_parser_free (parser);
+}
+
+GST_END_TEST;
+
GST_START_TEST (test_h265_base_profiles)
{
GstH265ProfileTierLevel ptl;
@@ -1101,6 +1160,7 @@ h265parser_suite (void)
tcase_add_test (tc_chain, test_h265_parse_slice_eos_slice_eob);
tcase_add_test (tc_chain, test_h265_parse_pic_timing);
tcase_add_test (tc_chain, test_h265_parse_slice_6bytes);
+ tcase_add_test (tc_chain, test_h265_parse_identify_nalu_hevc);
tcase_add_test (tc_chain, test_h265_base_profiles);
tcase_add_test (tc_chain, test_h265_base_profiles_compat);
tcase_add_test (tc_chain, test_h265_format_range_profiles_exact_match);
--
2.31.1

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