Merge remote-tracking branch 'savannah/master' into mesa-updates

Change-Id: Iad185e2ced97067b3dff8fd722435a6c5e2c00e5
This commit is contained in:
Christopher Baines 2024-04-09 16:44:22 +01:00
commit 6cae1db889
No known key found for this signature in database
GPG Key ID: 5E28A33B0B84F577
171 changed files with 93583 additions and 57651 deletions

View File

@ -131,10 +131,7 @@
(eval . (put 'with-database 'scheme-indent-function 2)) (eval . (put 'with-database 'scheme-indent-function 2))
(eval . (put 'call-with-database 'scheme-indent-function 1)) (eval . (put 'call-with-database 'scheme-indent-function 1))
(eval . (put 'call-with-transaction 'scheme-indent-function 1)) (eval . (put 'call-with-transaction 'scheme-indent-function 1))
(eval . (put 'with-statement 'scheme-indent-function 3))
(eval . (put 'call-with-retrying-transaction 'scheme-indent-function 1)) (eval . (put 'call-with-retrying-transaction 'scheme-indent-function 1))
(eval . (put 'call-with-savepoint 'scheme-indent-function 1))
(eval . (put 'call-with-retrying-savepoint 'scheme-indent-function 1))
(eval . (put 'call-with-container 'scheme-indent-function 1)) (eval . (put 'call-with-container 'scheme-indent-function 1))
(eval . (put 'container-excursion 'scheme-indent-function 1)) (eval . (put 'container-excursion 'scheme-indent-function 1))

View File

@ -106,7 +106,7 @@ if test "x$guix_build_daemon" = "xyes"; then
dnl Determine the appropriate default list of substitute URLs (GnuTLS dnl Determine the appropriate default list of substitute URLs (GnuTLS
dnl is required so we can default to 'https'.) dnl is required so we can default to 'https'.)
guix_substitute_urls="https://ci.guix.gnu.org https://bordeaux.guix.gnu.org" guix_substitute_urls="https://bordeaux.guix.gnu.org https://ci.guix.gnu.org"
AC_MSG_CHECKING([for default substitute URLs]) AC_MSG_CHECKING([for default substitute URLs])
AC_MSG_RESULT([$guix_substitute_urls]) AC_MSG_RESULT([$guix_substitute_urls])

View File

@ -70,7 +70,7 @@
(define %cookbook-languages (define %cookbook-languages
;; Available translations for the 'guix-cookbook' text domain. ;; Available translations for the 'guix-cookbook' text domain.
'("de" "en" "fr" "sk")) '("de" "en" "fr" "ko" "pt_BR" "sk"))
(define %languages (define %languages
;; Available translations for the document being built. ;; Available translations for the document being built.

View File

@ -20,7 +20,9 @@ on-line communication; they can use any name or pseudonym of their
choice. choice.
@menu @menu
* Requirements:: Software needed to build and run Guix.
* Building from Git:: The latest and greatest. * Building from Git:: The latest and greatest.
* Running the Test Suite:: Testing Guix.
* Running Guix Before It Is Installed:: Hacker tricks. * Running Guix Before It Is Installed:: Hacker tricks.
* The Perfect Setup:: The right tools. * The Perfect Setup:: The right tools.
* Alternative Setups:: Other possible tools that do the job. * Alternative Setups:: Other possible tools that do the job.
@ -36,6 +38,103 @@ choice.
* Translating Guix:: Make Guix speak your native language. * Translating Guix:: Make Guix speak your native language.
@end menu @end menu
@node Requirements
@section Requirements
This section lists requirements when building Guix from source. The
build procedure for Guix is the same as for other GNU software, and is
not covered here. Please see the files @file{README} and @file{INSTALL}
in the Guix source tree for additional details.
@cindex official website
GNU Guix is available for download from its website at
@url{https://www.gnu.org/software/guix/}.
GNU Guix depends on the following packages:
@itemize
@item @url{https://gnu.org/software/guile/, GNU Guile}, version 3.0.x,
version 3.0.3 or later;
@item @url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt}, version
0.1.0 or later;
@item
@uref{https://gitlab.com/gnutls/guile/, Guile-GnuTLS} (@pxref{Guile
Preparations, how to install the GnuTLS bindings for Guile,,
gnutls-guile, GnuTLS-Guile})@footnote{The Guile bindings to
@uref{https://gnutls.org/, GnuTLS} were distributed as part of GnuTLS
until version 3.7.8 included.};
@item
@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
or later;
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib},
version 0.1.0 or later;
@item @uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};
@item @uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};
@item
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, version 0.5.0
or later;
@item @uref{https://git-scm.com, Git} (yes, both!);
@item @uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON}
4.3.0 or later;
@item @url{https://www.gnu.org/software/make/, GNU Make}.
@end itemize
The following dependencies are optional:
@itemize
@item
@c Note: We need at least 0.13.0 for #:nodelay.
Support for build offloading (@pxref{Daemon Offload Setup}) and
@command{guix copy} (@pxref{Invoking guix copy}) depends on
@uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH},
version 0.13.0 or later.
@item
@uref{https://notabug.org/guile-zstd/guile-zstd, Guile-zstd}, for zstd
compression and decompression in @command{guix publish} and for
substitutes (@pxref{Invoking guix publish}).
@item
@uref{https://ngyro.com/software/guile-semver.html, Guile-Semver} for
the @code{crate} importer (@pxref{Invoking guix import}).
@item
@uref{https://www.nongnu.org/guile-lib/doc/ref/htmlprag/, Guile-Lib} for
the @code{go} importer (@pxref{Invoking guix import}) and for some of
the ``updaters'' (@pxref{Invoking guix refresh}).
@item
When @url{http://www.bzip.org, libbz2} is available,
@command{guix-daemon} can use it to compress build logs.
@end itemize
Unless @option{--disable-daemon} was passed to @command{configure}, the
following packages are also needed:
@itemize
@item @url{https://gnupg.org/, GNU libgcrypt};
@item @url{https://sqlite.org, SQLite 3};
@item @url{https://gcc.gnu.org, GCC's g++}, with support for the
C++11 standard.
@end itemize
@cindex state directory
@cindex localstatedir
@cindex system configuration directory
@cindex sysconfdir
When configuring Guix on a system that already has a Guix installation,
be sure to specify the same state directory as the existing installation
using the @option{--localstatedir} option of the @command{configure}
script (@pxref{Directory Variables, @code{localstatedir},, standards,
GNU Coding Standards}). Usually, this @var{localstatedir} option is set
to the value @file{/var}. The @command{configure} script protects
against unintended misconfiguration of @var{localstatedir} so you do not
inadvertently corrupt your store (@pxref{The Store}). The configuration
directory should also be configured by setting the @option{--sysconfdir}
option to the @file{/etc} value, which is the location used by Guix to
store for example the access control list of authorized machines and the
definition of offload machines.
@node Building from Git @node Building from Git
@section Building from Git @section Building from Git
@ -203,6 +302,107 @@ example, the @code{origin} record) has changed, and all of guix needs
to be recompiled to take that change into account. To do so, run to be recompiled to take that change into account. To do so, run
@command{make clean-go} followed by @command{make}. @command{make clean-go} followed by @command{make}.
Should @command{make} fail with an Automake error message after
updating, you need to repeat the steps outlined in this section,
commencing with @command{./bootstrap}.
@node Running the Test Suite
@section Running the Test Suite
@cindex test suite
After a successful @command{configure} and @code{make} run, it is a good
idea to run the test suite. It can help catch issues with the setup or
environment, or bugs in Guix itself---and really, reporting test
failures is a good way to help improve the software. To run the test
suite, type:
@example
make check
@end example
Test cases can run in parallel: you can use the @code{-j} option of
GNU@tie{}make to speed things up. The first run may take a few minutes
on a recent machine; subsequent runs will be faster because the store
that is created for test purposes will already have various things in
cache.
It is also possible to run a subset of the tests by defining the
@code{TESTS} makefile variable as in this example:
@example
make check TESTS="tests/store.scm tests/cpio.scm"
@end example
By default, tests results are displayed at a file level. In order to
see the details of every individual test cases, it is possible to define
the @code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:
@example
make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no"
@end example
The underlying SRFI 64 custom Automake test driver used for the 'check'
test suite (located at @file{build-aux/test-driver.scm}) also allows
selecting which test cases to run at a finer level, via its
@option{--select} and @option{--exclude} options. Here's an example, to
run all the test cases from the @file{tests/packages.scm} test file
whose names start with ``transaction-upgrade-entry'':
@example
export SCM_LOG_DRIVER_FLAGS="--select=^transaction-upgrade-entry"
make check TESTS="tests/packages.scm"
@end example
Those wishing to inspect the results of failed tests directly from the
command line can add the @option{--errors-only=yes} option to the
@code{SCM_LOG_DRIVER_FLAGS} makefile variable and set the @code{VERBOSE}
Automake makefile variable, as in:
@example
make check SCM_LOG_DRIVER_FLAGS="--brief=no --errors-only=yes" VERBOSE=1
@end example
The @option{--show-duration=yes} option can be used to print the
duration of the individual test cases, when used in combination with
@option{--brief=no}:
@example
make check SCM_LOG_DRIVER_FLAGS="--brief=no --show-duration=yes"
@end example
@xref{Parallel Test Harness,,,automake,GNU Automake} for more
information about the Automake Parallel Test Harness.
Upon failure, please email @email{bug-guix@@gnu.org} and attach the
@file{test-suite.log} file. Please specify the Guix version being used
as well as version numbers of the dependencies (@pxref{Requirements}) in
your message.
Guix also comes with a whole-system test suite that tests complete
Guix System instances. It can only run on systems where
Guix is already installed, using:
@example
make check-system
@end example
@noindent
or, again, by defining @code{TESTS} to select a subset of tests to run:
@example
make check-system TESTS="basic mcron"
@end example
These system tests are defined in the @code{(gnu tests @dots{})}
modules. They work by running the operating systems under test with
lightweight instrumentation in a virtual machine (VM). They can be
computationally intensive or rather cheap, depending on whether
substitutes are available for their dependencies (@pxref{Substitutes}).
Some of them require a lot of storage space to hold VM images.
Again in case of test failures, please send @email{bug-guix@@gnu.org}
all the details.
@node Running Guix Before It Is Installed @node Running Guix Before It Is Installed
@section Running Guix Before It Is Installed @section Running Guix Before It Is Installed

View File

@ -64,9 +64,11 @@ its API, and related concepts.
@c how to join your own translation team and how to report issues with the @c how to join your own translation team and how to report issues with the
@c translation. @c translation.
This manual is also available in French (@pxref{Top,,, guix-cookbook.fr, This manual is also available in French (@pxref{Top,,, guix-cookbook.fr,
Livre de recettes de GNU Guix}), German (@pxref{Top,,, Livre de recettes de GNU Guix}), German (@pxref{Top,,, guix-cookbook.de,
guix-cookbook.de, GNU-Guix-Kochbuch}) and Slovak (@pxref{Top,,, GNU-Guix-Kochbuch}), Korean (@pxref{Top,,, guix-cookbook.ko, GNU Guix 쿡북}),
guix-cookbook.sk, Receptár GNU Guix}). If you would like to translate Brazilian Portuguese (@pxref{Top,,, guix-cookbook.pt_BR,
Livro de Receitas do GNU Guix}) and Slovak (@pxref{Top,,, guix-cookbook.sk,
Receptár GNU Guix}). If you would like to translate
this document in your native language, consider joining this document in your native language, consider joining
@uref{https://translate.fedoraproject.org/projects/guix/documentation-cookbook, @uref{https://translate.fedoraproject.org/projects/guix/documentation-cookbook,
Weblate} (@pxref{Translating Guix,,, guix, GNU Guix reference Weblate} (@pxref{Translating Guix,,, guix, GNU Guix reference
@ -3803,7 +3805,7 @@ the guest.
@quotation Important @quotation Important
By default, a single MAC address is used for all guests, unless By default, a single MAC address is used for all guests, unless
provided. Failing to provided different MAC addresses to each virtual provided. Failing to provide different MAC addresses to each virtual
machine making use of the bridge would cause networking issues. machine making use of the bridge would cause networking issues.
@end quotation @end quotation

View File

@ -17,8 +17,8 @@
@set BASE-URL https://ftp.gnu.org/gnu/guix @set BASE-URL https://ftp.gnu.org/gnu/guix
@c The official substitute server used by default. @c The official substitute server used by default.
@set SUBSTITUTE-SERVER-1 ci.guix.gnu.org @set SUBSTITUTE-SERVER-1 bordeaux.guix.gnu.org
@set SUBSTITUTE-SERVER-2 bordeaux.guix.gnu.org @set SUBSTITUTE-SERVER-2 ci.guix.gnu.org
@set SUBSTITUTE-URLS https://@value{SUBSTITUTE-SERVER-1} https://@value{SUBSTITUTE-SERVER-2} @set SUBSTITUTE-URLS https://@value{SUBSTITUTE-SERVER-1} https://@value{SUBSTITUTE-SERVER-2}
@copying @copying
@ -60,7 +60,7 @@ Copyright @copyright{} 2018, 2021, 2023 Oleg Pykhalov@*
Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Mike Gerwitz@*
Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@*
Copyright @copyright{} 2018, 2019 Gábor Boskovits@* Copyright @copyright{} 2018, 2019 Gábor Boskovits@*
Copyright @copyright{} 2018, 2019, 2020, 2022, 2023 Florian Pelz@* Copyright @copyright{} 2018, 2019, 2020, 2022, 2023, 2024 Florian Pelz@*
Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Laura Lazzati@*
Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2018 Alex Vong@*
Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019 Josh Holland@*
@ -125,6 +125,7 @@ Copyright @copyright{} 2023 Saku Laesvuori@*
Copyright @copyright{} 2023 Graham James Addis@* Copyright @copyright{} 2023 Graham James Addis@*
Copyright @copyright{} 2023 Tomas Volf@* Copyright @copyright{} 2023 Tomas Volf@*
Copyright @copyright{} 2024 Herman Rimm@* Copyright @copyright{} 2024 Herman Rimm@*
Copyright @copyright{} 2024 Matthew Trzcinski@*
Permission is granted to copy, distribute and/or modify this document Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or under the terms of the GNU Free Documentation License, Version 1.3 or
@ -227,8 +228,6 @@ Introduction
Installation Installation
* Binary Installation:: Getting Guix running in no time! * Binary Installation:: Getting Guix running in no time!
* Requirements:: Software needed to build and run Guix.
* Running the Test Suite:: Testing Guix.
* Setting Up the Daemon:: Preparing the build daemon's environment. * Setting Up the Daemon:: Preparing the build daemon's environment.
* Invoking guix-daemon:: Running the build daemon. * Invoking guix-daemon:: Running the build daemon.
* Application Setup:: Application-specific setup. * Application Setup:: Application-specific setup.
@ -358,7 +357,7 @@ Foreign Architectures
System Configuration System Configuration
* Getting Started with the System:: Your first steps. * Getting Started with the System:: Your first steps.
* Using the Configuration System:: Customizing your GNU system. * Using the Configuration System:: Customizing your GNU system.
* operating-system Reference:: Detail of operating-system declarations. * operating-system Reference:: Detail of operating-system declarations.
* File Systems:: Configuring file system mounts. * File Systems:: Configuring file system mounts.
@ -691,20 +690,20 @@ to join! @xref{Contributing}, for information about how you can help.
@chapter Installation @chapter Installation
@cindex installing Guix @cindex installing Guix
@cindex foreign distro
@cindex Guix System
You can install the package management tool Guix on top of an existing
GNU/Linux or GNU/Hurd system@footnote{Hurd support is currently
limited.}, referred to as a @dfn{foreign distro}. If, instead, you want
to install the complete, standalone GNU system distribution,
@dfn{Guix@tie{}System}, @pxref{System Installation}. This section is
concerned only with the installation of Guix on a foreign distro.
@quotation Note @quotation Important
We recommend the use of this This section only applies to systems without Guix. Following it for
@uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh, existing Guix installations will overwrite important system files.
shell installer script} to install Guix on top of a running GNU/Linux system,
thereafter called a @dfn{foreign distro}.@footnote{This section is concerned
with the installation of the package manager, which can be done on top of a
running GNU/Linux system. If, instead, you want to install the complete GNU
operating system, @pxref{System Installation}.} The script automates the
download, installation, and initial configuration of Guix. It should be run
as the root user.
@end quotation @end quotation
@cindex foreign distro
@cindex directories related to foreign distro @cindex directories related to foreign distro
When installed on a foreign distro, GNU@tie{}Guix complements the available When installed on a foreign distro, GNU@tie{}Guix complements the available
tools without interference. Its data lives exclusively in two directories, tools without interference. Its data lives exclusively in two directories,
@ -714,15 +713,8 @@ such as @file{/etc}, are left untouched.
Once installed, Guix can be updated by running @command{guix pull} Once installed, Guix can be updated by running @command{guix pull}
(@pxref{Invoking guix pull}). (@pxref{Invoking guix pull}).
If you prefer to perform the installation steps manually or want to tweak
them, you may find the following subsections useful. They describe the
software requirements of Guix, as well as how to install it manually and get
ready to use it.
@menu @menu
* Binary Installation:: Getting Guix running in no time! * Binary Installation:: Getting Guix running in no time!
* Requirements:: Software needed to build and run Guix.
* Running the Test Suite:: Testing Guix.
* Setting Up the Daemon:: Preparing the build daemon's environment. * Setting Up the Daemon:: Preparing the build daemon's environment.
* Invoking guix-daemon:: Running the build daemon. * Invoking guix-daemon:: Running the build daemon.
* Application Setup:: Application-specific setup. * Application Setup:: Application-specific setup.
@ -736,210 +728,69 @@ ready to use it.
@cindex installer script @cindex installer script
This section describes how to install Guix from a self-contained tarball This section describes how to install Guix from a self-contained tarball
providing binaries for Guix and for all its dependencies. This is often providing binaries for Guix and for all its dependencies. This is often
quicker than installing from source, which is described in the next quicker than installing from source, described later (@pxref{Building
sections. Binary installation requires a system using a Hurd or Linux from Git}).
kernel; the GNU@tie{}tar and Xz commands must also be available.
@quotation Important @quotation Important
This section only applies to systems without Guix. Following it for This section only applies to systems without Guix. Following it for
existing Guix installations will overwrite important system files. existing Guix installations will overwrite important system files.
@end quotation
@c Note duplicated from the ``Installation'' node. Some GNU/Linux distributions, such as Debian, Ubuntu, and openSUSE
We recommend the use of this provide Guix through their own package managers. The version of Guix
@uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh, may be older than @value{VERSION} but you can update it afterwards by
shell installer script}. The script automates the download, installation, and running @samp{guix pull}.
initial configuration steps described below. It should be run as the root
user. As root, you can thus run this:
@example For Debian or a derivative such as Ubuntu, call:
cd /tmp
wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
chmod +x guix-install.sh
./guix-install.sh
@end example
If you're running Debian or a derivative such as Ubuntu, you can instead
install the package (it might be a version older than @value{VERSION}
but you can update it afterwards by running @samp{guix pull}):
@example @example
sudo apt install guix sudo apt install guix
@end example @end example
Likewise on openSUSE: Likewise, on openSUSE:
@example @example
sudo zypper install guix sudo zypper install guix
@end example @end example
When you're done, @pxref{Application Setup} for extra configuration you The Guix project also provides a shell script, @file{guix-install.sh},
might need, and @ref{Getting Started} for your first steps! which automates the binary installation process without use of a foreign
@end quotation distro package
manager@footnote{@uref{https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh}}.
Use of @file{guix-install.sh} requires Bash, GnuPG, GNU@tie{}tar, wget,
and Xz.
Installing goes along these lines: The script guides you through the following:
@enumerate @itemize
@item @item Downloading and extracting the binary tarball
@cindex downloading Guix binary @item Setting up the build daemon
Download the binary tarball from @item Making the guix command available to non-root users
@indicateurl{@value{BASE-URL}/guix-binary-@value{VERSION}.x86_64-linux.tar.xz}, @item Configuring substitute servers
where @code{x86_64-linux} can be replaced with @code{i686-linux} for an @end itemize
@code{i686} (32-bits) machine already running the kernel Linux, and so on
(@pxref{GNU Distribution}).
@c The following is somewhat duplicated in ``System Installation''. As root, run:
Make sure to download the associated @file{.sig} file and to verify the
authenticity of the tarball against it, along these lines:
@example
$ wget @value{BASE-URL}/guix-binary-@value{VERSION}.x86_64-linux.tar.xz.sig
$ gpg --verify guix-binary-@value{VERSION}.x86_64-linux.tar.xz.sig
@end example
If that command fails because you do not have the required public key,
then run this command to import it:
@example
$ wget '@value{OPENPGP-SIGNING-KEY-URL}' \
-qO - | gpg --import -
@end example
@noindent
and rerun the @code{gpg --verify} command.
Take note that a warning like ``This key is not certified with a trusted
signature!'' is normal.
@c end authentication part
@item
Now, you need to become the @code{root} user. Depending on your distribution,
you may have to run @code{su -} or @code{sudo -i}. As @code{root}, run:
@example @example
# cd /tmp # cd /tmp
# tar --warning=no-timestamp -xf \ # wget https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
/path/to/guix-binary-@value{VERSION}.x86_64-linux.tar.xz # chmod +x guix-install.sh
# mv var/guix /var/ && mv gnu / # ./guix-install.sh
@end example @end example
This creates @file{/gnu/store} (@pxref{The Store}) and @file{/var/guix}. @quotation Note
The latter contains a ready-to-use profile for @code{root} (see next By default, @file{guix-install.sh} will configure Guix to download
step). pre-built package binaries, called @dfn{substitutes}
(@pxref{Substitutes}), from the project's build farms. If you choose
not to permit this, Guix will build @emph{everything} from source,
making each installation and upgrade very expensive. @xref{On Trusting
Binaries} for a discussion of why you may want to build packages from
source.
Do @emph{not} unpack the tarball on a working Guix system since that
would overwrite its own essential files.
The @option{--warning=no-timestamp} option makes sure GNU@tie{}tar does
not emit warnings about ``implausibly old time stamps'' (such
warnings were triggered by GNU@tie{}tar 1.26 and older; recent
versions are fine).
They stem from the fact that all the
files in the archive have their modification time set to 1 (which
means January 1st, 1970). This is done on purpose to make sure the
archive content is independent of its creation time, thus making it
reproducible.
@item
Make the profile available under @file{~root/.config/guix/current}, which is
where @command{guix pull} will install updates (@pxref{Invoking guix pull}):
@example
# mkdir -p ~root/.config/guix
# ln -sf /var/guix/profiles/per-user/root/current-guix \
~root/.config/guix/current
@end example
Source @file{etc/profile} to augment @env{PATH} and other relevant
environment variables:
@example
# GUIX_PROFILE="`echo ~root`/.config/guix/current" ; \
source $GUIX_PROFILE/etc/profile
@end example
@item
Create the group and user accounts for build users as explained below
(@pxref{Build Environment Setup}).
@item
Run the daemon, and set it to automatically start on boot.
If your host distro uses the systemd init system, this can be achieved
with these commands:
@c Versions of systemd that supported symlinked service files are not
@c yet widely deployed, so we should suggest that users copy the service
@c files into place.
@c
@c See this thread for more information:
@c https://lists.gnu.org/archive/html/guix-devel/2017-01/msg01199.html
@example
# cp ~root/.config/guix/current/lib/systemd/system/gnu-store.mount \
~root/.config/guix/current/lib/systemd/system/guix-daemon.service \
/etc/systemd/system/
# systemctl enable --now gnu-store.mount guix-daemon
@end example
You may also want to arrange for @command{guix gc} to run periodically:
@example
# cp ~root/.config/guix/current/lib/systemd/system/guix-gc.service \
~root/.config/guix/current/lib/systemd/system/guix-gc.timer \
/etc/systemd/system/
# systemctl enable --now guix-gc.timer
@end example
You may want to edit @file{guix-gc.service} to adjust the command line
options to fit your needs (@pxref{Invoking guix gc}).
If your host distro uses the Upstart init system:
@example
# initctl reload-configuration
# cp ~root/.config/guix/current/lib/upstart/system/guix-daemon.conf \
/etc/init/
# start guix-daemon
@end example
Otherwise, you can still start the daemon manually with:
@example
# ~root/.config/guix/current/bin/guix-daemon \
--build-users-group=guixbuild
@end example
@item
Make the @command{guix} command available to other users on the machine,
for instance with:
@example
# mkdir -p /usr/local/bin
# cd /usr/local/bin
# ln -s /var/guix/profiles/per-user/root/current-guix/bin/guix
@end example
It is also a good idea to make the Info version of this manual available
there:
@example
# mkdir -p /usr/local/share/info
# cd /usr/local/share/info
# for i in /var/guix/profiles/per-user/root/current-guix/share/info/* ;
do ln -s $i ; done
@end example
That way, assuming @file{/usr/local/share/info} is in the search path,
running @command{info guix} will open this manual (@pxref{Other Info
Directories,,, texinfo, GNU Texinfo}, for more details on changing the
Info search path).
@item
@cindex substitutes, authorization thereof @cindex substitutes, authorization thereof
To use substitutes from @code{@value{SUBSTITUTE-SERVER-1}}, To use substitutes from @code{@value{SUBSTITUTE-SERVER-1}},
@code{@value{SUBSTITUTE-SERVER-2}} or a mirror (@pxref{Substitutes}), @code{@value{SUBSTITUTE-SERVER-2}} or a mirror, you must authorize them.
authorize them: For example,
@example @example
# guix archive --authorize < \ # guix archive --authorize < \
@ -947,28 +798,13 @@ authorize them:
# guix archive --authorize < \ # guix archive --authorize < \
~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub ~root/.config/guix/current/share/guix/@value{SUBSTITUTE-SERVER-2}.pub
@end example @end example
@quotation Note
If you do not enable substitutes, Guix will end up building
@emph{everything} from source on your machine, making each installation
and upgrade very expensive. @xref{On Trusting Binaries}, for a
discussion of reasons why one might want do disable substitutes.
@end quotation @end quotation
@item When you're done installing Guix, @pxref{Application Setup} for extra
Each user may need to perform a few additional steps to make their Guix configuration you might need, and @ref{Getting Started} for your first
environment ready for use, @pxref{Application Setup}. steps!
@end enumerate
Voilà, the installation is complete!
You can confirm that Guix is working by installing a sample package into
the root profile:
@example
# guix install hello
@end example
@quotation Note
The binary installation tarball can be (re)produced and verified simply The binary installation tarball can be (re)produced and verified simply
by running the following command in the Guix source tree: by running the following command in the Guix source tree:
@ -985,200 +821,19 @@ guix pack -s @var{system} --localstatedir \
@end example @end example
@xref{Invoking guix pack}, for more info on this handy tool. @xref{Invoking guix pack}, for more info on this handy tool.
@end quotation
@node Requirements @cindex uninstalling Guix
@section Requirements @cindex uninstallation, of Guix
Should you eventually want to uninstall Guix, run the same script with
This section lists requirements when building Guix from source. The the @option{--uninstall} flag:
build procedure for Guix is the same as for other GNU software, and is
not covered here. Please see the files @file{README} and @file{INSTALL}
in the Guix source tree for additional details.
@cindex official website
GNU Guix is available for download from its website at
@url{https://www.gnu.org/software/guix/}.
GNU Guix depends on the following packages:
@itemize
@item @url{https://gnu.org/software/guile/, GNU Guile}, version 3.0.x,
version 3.0.3 or later;
@item @url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt}, version
0.1.0 or later;
@item
@uref{https://gitlab.com/gnutls/guile/, Guile-GnuTLS} (@pxref{Guile
Preparations, how to install the GnuTLS bindings for Guile,,
gnutls-guile, GnuTLS-Guile})@footnote{The Guile bindings to
@uref{https://gnutls.org/, GnuTLS} were distributed as part of GnuTLS
until version 3.7.8 included.};
@item
@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
or later;
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib},
version 0.1.0 or later;
@item @uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};
@item @uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};
@item
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, version 0.5.0
or later;
@item @uref{https://git-scm.com, Git} (yes, both!);
@item @uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON}
4.3.0 or later;
@item @url{https://www.gnu.org/software/make/, GNU Make}.
@end itemize
The following dependencies are optional:
@itemize
@item
@c Note: We need at least 0.13.0 for #:nodelay.
Support for build offloading (@pxref{Daemon Offload Setup}) and
@command{guix copy} (@pxref{Invoking guix copy}) depends on
@uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH},
version 0.13.0 or later.
@item
@uref{https://notabug.org/guile-zstd/guile-zstd, Guile-zstd}, for zstd
compression and decompression in @command{guix publish} and for
substitutes (@pxref{Invoking guix publish}).
@item
@uref{https://ngyro.com/software/guile-semver.html, Guile-Semver} for
the @code{crate} importer (@pxref{Invoking guix import}).
@item
@uref{https://www.nongnu.org/guile-lib/doc/ref/htmlprag/, Guile-Lib} for
the @code{go} importer (@pxref{Invoking guix import}) and for some of
the ``updaters'' (@pxref{Invoking guix refresh}).
@item
When @url{http://www.bzip.org, libbz2} is available,
@command{guix-daemon} can use it to compress build logs.
@end itemize
Unless @option{--disable-daemon} was passed to @command{configure}, the
following packages are also needed:
@itemize
@item @url{https://gnupg.org/, GNU libgcrypt};
@item @url{https://sqlite.org, SQLite 3};
@item @url{https://gcc.gnu.org, GCC's g++}, with support for the
C++11 standard.
@end itemize
@cindex state directory
@cindex localstatedir
@cindex system configuration directory
@cindex sysconfdir
When configuring Guix on a system that already has a Guix installation,
be sure to specify the same state directory as the existing installation
using the @option{--localstatedir} option of the @command{configure}
script (@pxref{Directory Variables, @code{localstatedir},, standards,
GNU Coding Standards}). Usually, this @var{localstatedir} option is set
to the value @file{/var}. The @command{configure} script protects
against unintended misconfiguration of @var{localstatedir} so you do not
inadvertently corrupt your store (@pxref{The Store}). The configuration
directory should also be configured by setting the @option{--sysconfdir}
option to the @file{/etc} value, which is the location used by Guix to
store for example the access control list of authorized machines and the
definition of offload machines.
@node Running the Test Suite
@section Running the Test Suite
@cindex test suite
After a successful @command{configure} and @code{make} run, it is a good
idea to run the test suite. It can help catch issues with the setup or
environment, or bugs in Guix itself---and really, reporting test
failures is a good way to help improve the software. To run the test
suite, type:
@example @example
make check ./guix-install.sh --uninstall
@end example @end example
Test cases can run in parallel: you can use the @code{-j} option of With @option{--uninstall}, the script irreversibly deletes all the Guix
GNU@tie{}make to speed things up. The first run may take a few minutes files, configuration, and services.
on a recent machine; subsequent runs will be faster because the store
that is created for test purposes will already have various things in
cache.
It is also possible to run a subset of the tests by defining the
@code{TESTS} makefile variable as in this example:
@example
make check TESTS="tests/store.scm tests/cpio.scm"
@end example
By default, tests results are displayed at a file level. In order to
see the details of every individual test cases, it is possible to define
the @code{SCM_LOG_DRIVER_FLAGS} makefile variable as in this example:
@example
make check TESTS="tests/base64.scm" SCM_LOG_DRIVER_FLAGS="--brief=no"
@end example
The underlying SRFI 64 custom Automake test driver used for the 'check'
test suite (located at @file{build-aux/test-driver.scm}) also allows
selecting which test cases to run at a finer level, via its
@option{--select} and @option{--exclude} options. Here's an example, to
run all the test cases from the @file{tests/packages.scm} test file
whose names start with ``transaction-upgrade-entry'':
@example
export SCM_LOG_DRIVER_FLAGS="--select=^transaction-upgrade-entry"
make check TESTS="tests/packages.scm"
@end example
Those wishing to inspect the results of failed tests directly from the
command line can add the @option{--errors-only=yes} option to the
@code{SCM_LOG_DRIVER_FLAGS} makefile variable and set the @code{VERBOSE}
Automake makefile variable, as in:
@example
make check SCM_LOG_DRIVER_FLAGS="--brief=no --errors-only=yes" VERBOSE=1
@end example
The @option{--show-duration=yes} option can be used to print the
duration of the individual test cases, when used in combination with
@option{--brief=no}:
@example
make check SCM_LOG_DRIVER_FLAGS="--brief=no --show-duration=yes"
@end example
@xref{Parallel Test Harness,,,automake,GNU Automake} for more
information about the Automake Parallel Test Harness.
Upon failure, please email @email{bug-guix@@gnu.org} and attach the
@file{test-suite.log} file. Please specify the Guix version being used
as well as version numbers of the dependencies (@pxref{Requirements}) in
your message.
Guix also comes with a whole-system test suite that tests complete
Guix System instances. It can only run on systems where
Guix is already installed, using:
@example
make check-system
@end example
@noindent
or, again, by defining @code{TESTS} to select a subset of tests to run:
@example
make check-system TESTS="basic mcron"
@end example
These system tests are defined in the @code{(gnu tests @dots{})}
modules. They work by running the operating systems under test with
lightweight instrumentation in a virtual machine (VM). They can be
computationally intensive or rather cheap, depending on whether
substitutes are available for their dependencies (@pxref{Substitutes}).
Some of them require a lot of storage space to hold VM images.
Again in case of test failures, please send @email{bug-guix@@gnu.org}
all the details.
@node Setting Up the Daemon @node Setting Up the Daemon
@section Setting Up the Daemon @section Setting Up the Daemon
@ -5514,6 +5169,7 @@ account security concerns and deal with authenticated updates.
* Specifying Additional Channels:: Extending the package collection. * Specifying Additional Channels:: Extending the package collection.
* Using a Custom Guix Channel:: Using a customized Guix. * Using a Custom Guix Channel:: Using a customized Guix.
* Replicating Guix:: Running the @emph{exact same} Guix. * Replicating Guix:: Running the @emph{exact same} Guix.
* Customizing the System-Wide Guix:: Default channels on Guix System.
* Channel Authentication:: How Guix verifies what it fetches. * Channel Authentication:: How Guix verifies what it fetches.
* Channels with Substitutes:: Using channels with available substitutes. * Channels with Substitutes:: Using channels with available substitutes.
* Creating a Channel:: How to write your custom channel. * Creating a Channel:: How to write your custom channel.
@ -5671,6 +5327,64 @@ artifacts with very fine grain, and to reproduce software environments at
will---some sort of ``meta reproducibility'' capabilities, if you will. will---some sort of ``meta reproducibility'' capabilities, if you will.
@xref{Inferiors}, for another way to take advantage of these super powers. @xref{Inferiors}, for another way to take advantage of these super powers.
@node Customizing the System-Wide Guix
@section Customizing the System-Wide Guix
@cindex system-wide Guix, customization
@cindex channels, for the default Guix
If you're running Guix System or building system images with it, maybe
you will want to customize the system-wide @command{guix} it
provides---specifically, @file{/run/current-system/profile/bin/guix}.
For example, you might want to provide additional channels or to pin its
revision.
This can be done using the @code{guix-for-channels} procedure, which
returns a package for the given channels, and using it as part of your
operating system configuration, as in this example:
@lisp
(use-modules (guix channels))
(define my-channels
;; Channels that should be available to
;; /run/current-system/profile/bin/guix.
(append
(list (channel
(name 'guix-science)
(url "https://github.com/guix-science/guix-science")
(branch "master")))
%default-channels))
(operating-system
;; @dots{}
(services
;; Change the package used by 'guix-service-type'.
(modify-services %base-services
(guix-service-type
config => (guix-configuration
(inherit config)
(channels my-channels)
(guix (guix-for-channels my-channels)))))))
@end lisp
The resulting operating system will have both the @code{guix} and the
@code{guix-science} channels visible by default. The @code{channels}
field of @code{guix-configuration} above further ensures that
@file{/etc/guix/channels.scm}, which is used by @command{guix pull},
specifies the same set of channels (@pxref{guix-configuration-channels,
@code{channels} field of @code{guix-configuration}}).
The @code{(gnu packages package-management)} module exports the
@code{guix-for-channels} procedure, described below.
@deffn {Procedure} guix-for-channels @var{channels}
Return a package corresponding to @var{channels}.
The result is a ``regular'' package, which can be used in
@code{guix-configuration} as shown above or in any other place that
expects a package.
@end deffn
@node Channel Authentication @node Channel Authentication
@section Channel Authentication @section Channel Authentication
@ -10451,7 +10165,10 @@ field (@pxref{Channels}); alternatively, its source can be a directory
name, in which case an additional @code{#:commit} argument must be name, in which case an additional @code{#:commit} argument must be
supplied to specify the commit being built (a hexadecimal string). supplied to specify the commit being built (a hexadecimal string).
The resulting package is a Guix instance of the given channel, similar Optionally, a @code{#:channels} argument specifying additional channels
can be provided.
The resulting package is a Guix instance of the given channel(s), similar
to how @command{guix time-machine} would build it. to how @command{guix time-machine} would build it.
@end defvar @end defvar
@ -12475,9 +12192,10 @@ The resulting file holds references to all the dependencies of @var{exp}
or a subset thereof. or a subset thereof.
@end deffn @end deffn
@deffn {Procedure} scheme-file name exp [#:splice? #f] [#:set-load-path? #t] @deffn {Procedure} scheme-file name exp [#:splice? #f] @
[#:guile #f] [#:set-load-path? #t]
Return an object representing the Scheme file @var{name} that contains Return an object representing the Scheme file @var{name} that contains
@var{exp}. @var{exp}. @var{guile} is the Guile package used to produce that file.
This is the declarative counterpart of @code{gexp->file}. This is the declarative counterpart of @code{gexp->file}.
@end deffn @end deffn
@ -17081,7 +16799,7 @@ instantiated. Then we show how this mechanism can be extended, for
instance to support new system services. instance to support new system services.
@menu @menu
* Getting Started with the System:: Your first steps. * Getting Started with the System:: Your first steps.
* Using the Configuration System:: Customizing your GNU system. * Using the Configuration System:: Customizing your GNU system.
* operating-system Reference:: Detail of operating-system declarations. * operating-system Reference:: Detail of operating-system declarations.
* File Systems:: Configuring file system mounts. * File Systems:: Configuring file system mounts.
@ -17649,6 +17367,7 @@ configuration (@pxref{Using the Configuration System}).
@table @asis @table @asis
@item @code{kernel} (default: @code{linux-libre}) @item @code{kernel} (default: @code{linux-libre})
@c footnote duplicated in @pxref{Installation}
The package object of the operating system kernel to The package object of the operating system kernel to
use@footnote{Currently only the Linux-libre kernel is fully supported. use@footnote{Currently only the Linux-libre kernel is fully supported.
Using GNU@tie{}mach with the GNU@tie{}Hurd is experimental and only Using GNU@tie{}mach with the GNU@tie{}Hurd is experimental and only
@ -19731,7 +19450,8 @@ This data type represents the configuration of the Guix build daemon.
@table @asis @table @asis
@item @code{guix} (default: @var{guix}) @item @code{guix} (default: @var{guix})
The Guix package to use. The Guix package to use. @xref{Customizing the System-Wide Guix} to
learn how to provide a package with a pre-configured set of channels.
@item @code{build-group} (default: @code{"guixbuild"}) @item @code{build-group} (default: @code{"guixbuild"})
Name of the group for build user accounts. Name of the group for build user accounts.

View File

@ -1,7 +1,7 @@
# htmlxref.cnf - reference file for free Texinfo manuals on the web. # htmlxref.cnf - reference file for free Texinfo manuals on the web.
# Modified by Ludovic Courtès <ludo@gnu.org> for the GNU Guix manual. # Modified by Ludovic Courtès <ludo@gnu.org> for the GNU Guix manual.
htmlxrefversion=2022-12-18.15; # UTC htmlxrefversion=2024-03-31.22; # UTC
# Copyright 2010-2020, 2022 Free Software Foundation, Inc. # Copyright 2010-2020, 2022 Free Software Foundation, Inc.
# #
@ -436,6 +436,10 @@ GUIX_COOKBOOK = ${GUIX_ROOT}/cookbook
guix-cookbook.de node ${GUIX_COOKBOOK}/de/html_node/ guix-cookbook.de node ${GUIX_COOKBOOK}/de/html_node/
guix-cookbook.fr mono ${GUIX_COOKBOOK}/fr/guix-cookbook.fr.html guix-cookbook.fr mono ${GUIX_COOKBOOK}/fr/guix-cookbook.fr.html
guix-cookbook.fr node ${GUIX_COOKBOOK}/fr/html_node/ guix-cookbook.fr node ${GUIX_COOKBOOK}/fr/html_node/
guix-cookbook.ko mono ${GUIX_COOKBOOK}/ko/guix-cookbook.ko.html
guix-cookbook.ko node ${GUIX_COOKBOOK}/ko/html_node/
guix-cookbook.pt_BR mono ${GUIX_COOKBOOK}/pt-br/guix-cookbook.pt_BR.html
guix-cookbook.pt_BR node ${GUIX_COOKBOOK}/pt-br/html_node/
guix-cookbook.sk mono ${GUIX_COOKBOOK}/sk/guix-cookbook.sk.html guix-cookbook.sk mono ${GUIX_COOKBOOK}/sk/guix-cookbook.sk.html
guix-cookbook.sk node ${GUIX_COOKBOOK}/sk/html_node/ guix-cookbook.sk node ${GUIX_COOKBOOK}/sk/html_node/
guix-cookbook mono ${GUIX_COOKBOOK}/en/guix-cookbook.html guix-cookbook mono ${GUIX_COOKBOOK}/en/guix-cookbook.html

View File

@ -23,7 +23,7 @@
# If adding a language, update the following variables, and info_TEXINFOS. # If adding a language, update the following variables, and info_TEXINFOS.
MANUAL_LANGUAGES = de es fr pt_BR ru zh_CN MANUAL_LANGUAGES = de es fr pt_BR ru zh_CN
COOKBOOK_LANGUAGES = de fr ko sk COOKBOOK_LANGUAGES = de fr ko pt_BR sk
# Arg1: A list of languages codes. # Arg1: A list of languages codes.
# Arg2: The file name stem. # Arg2: The file name stem.
@ -42,6 +42,7 @@ info_TEXINFOS = %D%/guix.texi \
%D%/guix-cookbook.de.texi \ %D%/guix-cookbook.de.texi \
%D%/guix-cookbook.fr.texi \ %D%/guix-cookbook.fr.texi \
%D%/guix-cookbook.ko.texi \ %D%/guix-cookbook.ko.texi \
%D%/guix-cookbook.pt_BR.texi \
%D%/guix-cookbook.sk.texi %D%/guix-cookbook.sk.texi
%C%_guix_TEXINFOS = \ %C%_guix_TEXINFOS = \
@ -231,10 +232,9 @@ $(srcdir)/%D%/guix.1: scripts/guix.in $(sub_commands_mans)
# prerequisite is solely meant to force these docs to be made only after all # prerequisite is solely meant to force these docs to be made only after all
# Guile modules have been compiled. We also need the guix script to exist. # Guile modules have been compiled. We also need the guix script to exist.
$(srcdir)/%D%/guix-%.1: guix/scripts/%.scm $(GOBJECTS) scripts/guix $(srcdir)/%D%/guix-%.1: guix/scripts/%.scm $(GOBJECTS) scripts/guix
-@case '$?' in \ -@case '$?' in \
*$<*) $(AM_V_P) && set -x || echo " HELP2MAN $@"; \ *$<*) $(AM_V_HELP2MAN:@%=%)$(gen_man) --output="$@" "guix $*";; \
$(gen_man) --output="$@" "guix $*";; \ *) : ;; \
*) : ;; \
esac esac
if BUILD_DAEMON if BUILD_DAEMON

View File

@ -12,6 +12,8 @@
# Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> # Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2022 Prafulla Giri <prafulla.giri@protonmail.com> # Copyright © 2022 Prafulla Giri <prafulla.giri@protonmail.com>
# Copyright © 2023 Andrew Tropin <andrew@trop.in> # Copyright © 2023 Andrew Tropin <andrew@trop.in>
# Copyright © 2020 David A. Redick <david.a.redick@gmail.com>
# Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
# #
# This file is part of GNU Guix. # This file is part of GNU Guix.
# #
@ -70,7 +72,9 @@ REQUIRE=(
"chmod" "chmod"
"uname" "uname"
"groupadd" "groupadd"
"groupdel"
"useradd" "useradd"
"userdel"
"tail" "tail"
"tr" "tr"
"xz" "xz"
@ -191,6 +195,7 @@ chk_term()
*) *)
ERR="[ FAIL ] " ERR="[ FAIL ] "
PAS="[ PASS ] " PAS="[ PASS ] "
WAR="[ WARN ] "
;; ;;
esac esac
fi fi
@ -377,6 +382,18 @@ sys_create_store()
_msg "${PAS}activated root profile at ${GUIX_PROFILE}" _msg "${PAS}activated root profile at ${GUIX_PROFILE}"
} }
sys_delete_store()
{
_msg "${INF}removing /var/guix"
rm -rf /var/guix
_msg "${INF}removing /gnu"
rm -rf /gnu
_msg "${INF}removing ${ROOT_HOME}/.config/guix"
rm -rf ${ROOT_HOME}/.config/guix
}
sys_create_build_user() sys_create_build_user()
{ # Create the group and user accounts for build users. { # Create the group and user accounts for build users.
@ -411,6 +428,16 @@ sys_create_build_user()
done done
} }
sys_delete_build_user()
{
for i in $(seq -w 1 10); do
userdel -f guixbuilder${i}
done
_msg "${INF}delete group guixbuild"
groupdel -f guixbuild
}
sys_enable_guix_daemon() sys_enable_guix_daemon()
{ # Run the daemon, and set it to automatically start on boot. { # Run the daemon, and set it to automatically start on boot.
@ -500,11 +527,70 @@ sys_enable_guix_daemon()
done done
} }
sys_delete_guix_daemon()
{ # Disabled, stop and remove the various guix daemons.
local info_path
local local_bin
local var_guix
_debug "--- [ $FUNCNAME ] ---"
info_path="/usr/local/share/info"
local_bin="/usr/local/bin"
case "$INIT_SYS" in
upstart)
_msg "${INF}stopping guix-daemon"
stop guix-daemon
_msg "${INF}removing guix-daemon"
rm /etc/init/guix-daemon.conf
;;
systemd)
_msg "${INF}disabling guix-daemon"
systemctl disable guix-daemon
_msg "${INF}stopping guix-daemon"
systemctl stop guix-daemon
_msg "${INF}removing guix-daemon"
rm -f /etc/systemd/system/guix-daemon.service
if [ -x /etc/systemd/system/gnu-store.mount ]; then
_msg "${INF}disabling gnu-store.mount"
systemctl disable gnu-store.mount
_msg "${INF}stopping gnu-store.mount"
systemctl stop gnu-store.mount
_msg "${INF}removing gnu-store.mount"
rm -f /etc/systemd/system/gnu-store.mount
fi
systemctl daemon-reload
;;
sysv-init)
update-rc.d guix-daemon disable
service guix-daemon stop
rm -rf /etc/init.d/guix-daemon
;;
NA|*)
_msg "${ERR}unsupported init system; disable, stop and remove the daemon manually:"
echo " ${ROOT_HOME}/.config/guix/current/bin/guix-daemon --build-users-group=guixbuild"
;;
esac
_msg "${INF}removing $local_bin/guix"
rm -f "$local_bin"/guix
_msg "${INF}removing $info_path/guix*"
rm -f "$info_path"/guix*
}
sys_authorize_build_farms() sys_authorize_build_farms()
{ # authorize the public key(s) of the build farm(s) { # authorize the public key(s) of the build farm(s)
local hosts=( local hosts=(
ci.guix.gnu.org
bordeaux.guix.gnu.org bordeaux.guix.gnu.org
ci.guix.gnu.org
) )
if prompt_yes_no "Permit downloading pre-built package binaries from the \ if prompt_yes_no "Permit downloading pre-built package binaries from the \
@ -557,6 +643,10 @@ GUIX_LOCPATH="$GUIX_PROFILE/lib/locale:${GUIX_LOCPATH:+:}$GUIX_LOCPATH"
export GUIX_LOCPATH export GUIX_LOCPATH
# Make Guix modules available
export GUILE_LOAD_PATH="$_GUIX_PROFILE/share/guile/site/3.0${GUILE_LOAD_PATH:+:}$GUILE_LOAD_PATH"
export GUILE_LOAD_COMPILED_PATH="$_GUIX_PROFILE/lib/guile/3.0/site-ccache${GUILE_LOAD_COMPILED_PATH:+:}$GUILE_LOAD_COMPILED_PATH"
EOF EOF
} }
@ -623,8 +713,29 @@ sys_maybe_setup_selinux()
restorecon -R /gnu /var/guix restorecon -R /gnu /var/guix
} }
sys_delete_init_profile()
{
_msg "${INF}removing /etc/profile.d/guix.sh"
rm -f /etc/profile.d/guix.sh
}
sys_delete_user_profiles()
{
_msg "${INF}removing ${ROOT_HOME}/.guix-profile"
rm -f ${ROOT_HOME}/.guix-profile
rm -rf ${ROOT_HOME}/.cache/guix
_msg "${INF}removing .guix-profile, .cache/guix and .config/guix of all /home users"
for user in `ls -1 /home`; do
rm -f /home/$user/.guix-profile
rm -rf /home/$user/.cache/guix
rm -rf /home/$user/.config/guix
done
}
welcome() welcome()
{ {
local uninstall_flag="$1"
local char local char
cat<<"EOF" cat<<"EOF"
░░░ ░░░ ░░░ ░░░
@ -647,10 +758,17 @@ welcome()
| |__| | |\ | |__| | | |__| | |_| | |> < | |__| | |\ | |__| | | |__| | |_| | |> <
\_____|_| \_|\____/ \_____|\__,_|_/_/\_\ \_____|_| \_|\____/ \_____|\__,_|_/_/\_\
This script installs GNU Guix on your system
https://www.gnu.org/software/guix/ https://www.gnu.org/software/guix/
EOF EOF
if [ '--uninstall' = "$uninstall_flag" ]; then
echo "${WARN}This script will uninstall GNU Guix from your system"
echo "To install, run this script with no parameters."
else
echo "This script installs GNU Guix on your system"
echo "To uninstall, pass in the '--uninstall' parameter."
fi
# Don't use read -p here! It won't display when run non-interactively. # Don't use read -p here! It won't display when run non-interactively.
echo -n "Press return to continue..."$'\r' echo -n "Press return to continue..."$'\r'
if ! read -r char; then if ! read -r char; then
@ -665,7 +783,7 @@ EOF
fi fi
} }
main() main_install()
{ {
local tmp_path local tmp_path
welcome welcome
@ -715,4 +833,53 @@ main()
_msg "${INF}Please log out and back in to complete the installation." _msg "${INF}Please log out and back in to complete the installation."
} }
main_uninstall()
{
welcome --uninstall
_msg "Starting uninstall process ($(date))"
chk_term
chk_require "${REQUIRE[@]}"
# it's ok to leave the gpg key
chk_init_sys
chk_sys_arch
_msg "${INF}system is ${ARCH_OS}"
# stop the build, package system.
sys_delete_guix_daemon
# stop people from accessing their profiles.
sys_delete_user_profiles
# kill guix off all the guts of guix
sys_delete_store
# clean up the system
sys_delete_init_profile
sys_delete_build_user
# these directories are created on the fly during usage.
_msg "${INF}removing /etc/guix"
rm -rf /etc/guix
_msg "${INF}removing /var/log/guix"
rm -rf /var/log/guix
_msg "${PAS}Guix has successfully been uninstalled!"
}
main()
{
# expect no parameters
# or '--uninstall'
if [ 0 -eq $# ]; then
main_install
else
local uninstall_flag="$1"
if [ '--uninstall' = "${uninstall_flag}" ]; then
main_uninstall
else
echo "unsupported parameters: $@"
exit 1
fi
fi
}
main "$@" main "$@"

View File

@ -31,6 +31,16 @@
(channel-news (channel-news
(version 0) (version 0)
(entry (commit "b4aed68e960116b2b60f68ea1468d7a526149823")
(title
(en "Linux-libre LTS kernel updated to 6.6")
(de "Linux-libre LTS Kernel wird auf 6.6 aktualisiert"))
(body
(en "The default version of the @code{linux-libre-lts} kernel has been
updated to the 6.6 longterm release series.")
(de "Der standardmäßig verwendete @code{linux-libre-lts}-Kernel basiert
jetzt auf der 6.6-Versionsreihe (Langzeitunterstützung).")))
(entry (commit "523f3def65ab061a87f4fc9e6f9008e6a78fafb5") (entry (commit "523f3def65ab061a87f4fc9e6f9008e6a78fafb5")
(title (title
(en "GNOME updated to version 44 with a more modular desktop service") (en "GNOME updated to version 44 with a more modular desktop service")

View File

@ -127,8 +127,8 @@ FULL-VALUE tentatives, spaced by 1 second."
(lambda _ #f)) (lambda _ #f))
(alarm 3)) (alarm 3))
(lambda () (lambda ()
(or (url-alive? "https://ci.guix.gnu.org") (or (url-alive? "https://bordeaux.guix.gnu.org")
(url-alive? "https://bordeaux.guix.gnu.org"))) (url-alive? "https://ci.guix.gnu.org")))
(lambda () (lambda ()
(alarm 0)))) (alarm 0))))

View File

@ -49,7 +49,7 @@
# Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com> # Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
# Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de> # Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
# Copyright © 2022 Remco van 't Veer <remco@remworks.net> # Copyright © 2022 Remco van 't Veer <remco@remworks.net>
# Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> # Copyright © 2022, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
# Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com> # Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com>
# Copyright © 2022 muradm <mail@muradm.net> # Copyright © 2022 muradm <mail@muradm.net>
# Copyright © 2022 Hilton Chain <hako@ultrarare.space> # Copyright © 2022 Hilton Chain <hako@ultrarare.space>
@ -609,6 +609,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/sml.scm \ %D%/packages/sml.scm \
%D%/packages/solidity.scm \ %D%/packages/solidity.scm \
%D%/packages/sourcehut.scm \ %D%/packages/sourcehut.scm \
%D%/packages/specifications.scm \
%D%/packages/speech.scm \ %D%/packages/speech.scm \
%D%/packages/sphinx.scm \ %D%/packages/sphinx.scm \
%D%/packages/spice.scm \ %D%/packages/spice.scm \
@ -1195,6 +1196,7 @@ dist_patch_DATA = \
%D%/packages/patches/ffmpeg-jami-libopusdec-enable-FEC.patch \ %D%/packages/patches/ffmpeg-jami-libopusdec-enable-FEC.patch \
%D%/packages/patches/ffmpeg-jami-libopusenc-enable-FEC.patch \ %D%/packages/patches/ffmpeg-jami-libopusenc-enable-FEC.patch \
%D%/packages/patches/ffmpeg-jami-libopusenc-reload-packet-loss-at-encode.patch \ %D%/packages/patches/ffmpeg-jami-libopusenc-reload-packet-loss-at-encode.patch \
%D%/packages/patches/ffmpeg-jami-pipewiregrab-source-filter.patch \
%D%/packages/patches/ffmpeg-jami-remove-mjpeg-log.patch \ %D%/packages/patches/ffmpeg-jami-remove-mjpeg-log.patch \
%D%/packages/patches/ffmpeg-jami-screen-sharing-x11-fix.patch \ %D%/packages/patches/ffmpeg-jami-screen-sharing-x11-fix.patch \
%D%/packages/patches/fifengine-boost-compat.patch \ %D%/packages/patches/fifengine-boost-compat.patch \
@ -1434,6 +1436,7 @@ dist_patch_DATA = \
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \ %D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \ %D%/packages/patches/gtksourceview-2-add-default-directory.patch \
%D%/packages/patches/gwenview-kimageannotator.patch \
%D%/packages/patches/gzdoom-search-in-installed-share.patch \ %D%/packages/patches/gzdoom-search-in-installed-share.patch \
%D%/packages/patches/gzdoom-find-system-libgme.patch \ %D%/packages/patches/gzdoom-find-system-libgme.patch \
%D%/packages/patches/hdf4-reproducibility.patch \ %D%/packages/patches/hdf4-reproducibility.patch \
@ -1490,8 +1493,9 @@ dist_patch_DATA = \
%D%/packages/patches/itk-snap-alt-glibc-compat.patch \ %D%/packages/patches/itk-snap-alt-glibc-compat.patch \
%D%/packages/patches/jami-disable-integration-tests.patch \ %D%/packages/patches/jami-disable-integration-tests.patch \
%D%/packages/patches/jami-libjami-headers-search.patch \ %D%/packages/patches/jami-libjami-headers-search.patch \
%D%/packages/patches/jami-qml-tests-discovery.patch \ %D%/packages/patches/jami-qwindowkit.patch \
%D%/packages/patches/jami-skip-tests-requiring-internet.patch \ %D%/packages/patches/jami-skip-tests-requiring-internet.patch \
%D%/packages/patches/jami-tests-qtwebengine-ifdef-to-if.patch \
%D%/packages/patches/jami-unbundle-dependencies.patch \ %D%/packages/patches/jami-unbundle-dependencies.patch \
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \ %D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \ %D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
@ -1572,6 +1576,7 @@ dist_patch_DATA = \
%D%/packages/patches/liba52-use-mtune-not-mcpu.patch \ %D%/packages/patches/liba52-use-mtune-not-mcpu.patch \
%D%/packages/patches/libaio-32bit-test.patch \ %D%/packages/patches/libaio-32bit-test.patch \
%D%/packages/patches/libaio-riscv-test5.patch \ %D%/packages/patches/libaio-riscv-test5.patch \
%D%/packages/patches/libarchive-remove-potential-backdoor.patch \
%D%/packages/patches/libbase-fix-includes.patch \ %D%/packages/patches/libbase-fix-includes.patch \
%D%/packages/patches/libbase-use-own-logging.patch \ %D%/packages/patches/libbase-use-own-logging.patch \
%D%/packages/patches/libbonobo-activation-test-race.patch \ %D%/packages/patches/libbonobo-activation-test-race.patch \
@ -1762,7 +1767,6 @@ dist_patch_DATA = \
%D%/packages/patches/openboardview-use-system-imgui.patch \ %D%/packages/patches/openboardview-use-system-imgui.patch \
%D%/packages/patches/openboardview-use-system-mpc.patch \ %D%/packages/patches/openboardview-use-system-mpc.patch \
%D%/packages/patches/openbox-python3.patch \ %D%/packages/patches/openbox-python3.patch \
%D%/packages/patches/opencolorio-fix-build-with-gcc11.patch \
%D%/packages/patches/openjdk-currency-time-bomb.patch \ %D%/packages/patches/openjdk-currency-time-bomb.patch \
%D%/packages/patches/openjdk-currency-time-bomb2.patch \ %D%/packages/patches/openjdk-currency-time-bomb2.patch \
%D%/packages/patches/openjdk-9-pointer-comparison.patch \ %D%/packages/patches/openjdk-9-pointer-comparison.patch \
@ -1773,7 +1777,6 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \ %D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \
%D%/packages/patches/openjdk-21-fix-rpath.patch \ %D%/packages/patches/openjdk-21-fix-rpath.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \ %D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openssh-gcc-13-ppc64le-fzero-call-used-regs.patch \
%D%/packages/patches/openssh-trust-guix-store-directory.patch \ %D%/packages/patches/openssh-trust-guix-store-directory.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \ %D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \ %D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
@ -1961,10 +1964,12 @@ dist_patch_DATA = \
%D%/packages/patches/qemu-fix-agent-paths.patch \ %D%/packages/patches/qemu-fix-agent-paths.patch \
%D%/packages/patches/qrcodegen-cpp-make-install.patch \ %D%/packages/patches/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qtbase-absolute-runpath.patch \ %D%/packages/patches/qtbase-absolute-runpath.patch \
%D%/packages/patches/qtbase-find-tools-in-PATH.patch \
%D%/packages/patches/qtbase-qmake-fix-includedir.patch \
%D%/packages/patches/qtbase-qmlimportscanner-qml-import-path.patch \
%D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \ %D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \
%D%/packages/patches/qtbase-qmake-use-libname.patch \ %D%/packages/patches/qtbase-qmake-use-libname.patch \
%D%/packages/patches/qtbase-5-use-TZDIR.patch \ %D%/packages/patches/qtbase-5-use-TZDIR.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \

View File

@ -64,6 +64,7 @@
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com> ;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr> ;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Tomás Ortín Fernández <tomasortin@mailbox.org> ;;; Copyright © 2023 Tomás Ortín Fernández <tomasortin@mailbox.org>
;;; Copyright © 2024 dan <i@dan.games>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -99,6 +100,7 @@
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix platform)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
@ -135,6 +137,7 @@
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-compression) #:use-module (gnu packages golang-compression)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -5119,7 +5122,12 @@ Netgear devices.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1y4qmc8i7zg2cqrmz38dxbsj8bb2h7jm1zz23gqcdygkgaymwddw")))) "09prpw20ps6cd8qr63glbcip3jrvnnic0m7j1q02g8hjnw8z50ld"))
(snippet
;; The 'mkdate' script generates a new 'versdate.h' header
;; containing the build date. That makes builds
;; non-reproducible so remove it.
#~(delete-file "mkdate"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -5160,56 +5168,121 @@ disk utilization, priority, username, state, and exit code.")
`((release-monitoring-url . "https://www.atoptool.nl/downloadatop.php"))) `((release-monitoring-url . "https://www.atoptool.nl/downloadatop.php")))
(license license:gpl2+))) (license license:gpl2+)))
;; TODO: Unvendor u-root (pkg: forth, golang, testutil). ;; TODO: Pack u-root for: forth, and some tests.
(define fiano (define-public fiano
(package (package
(name "fiano") (name "fiano")
(version "5.0.0") ;; The versioning count has been changed since commit <2021-12-01>
;; 1eb599564549691603589219c2be34f966a32ff1.
(version "1.2.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/linuxboot/fiano.git") (url "https://github.com/linuxboot/fiano.git")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout")) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"03ihdwwhb7g6bihx141cn0924sjs5ps6q3ps58pk1cg0g0srrr9h")) "0s5fx4lhgb68qbx4ql34rcm678qdf0c4xl97bgc8dx9xwwqifza1"))))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "vendor/golang.org")
(delete-file-recursively "vendor/github.com")
#t))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
`(#:import-path "github.com/linuxboot/fiano" (list
#:unpack-path "github.com/linuxboot/fiano")) #:install-source? #f
(native-inputs #:import-path "github.com/linuxboot/fiano"
`()) #:unpack-path "github.com/linuxboot/fiano"
#:phases
#~(modify-phases %standard-phases
;; XXX: Replace this part when it's implemented in go-build-system.
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
(for-each
(lambda (cmd)
(invoke "go" "build" "-v" "-x" "-ldflags=-s -w" "-trimpath"
(string-append import-path "/cmds/" cmd)))
(list "cbfs"
"create-ffs"
;; TODO: Not packed yet in guix, long jorney:
;; - github.com/tjfoc/gmsm
;;
;; "fittool"
"fmap"
"fspinfo"
"glzma"
"guid2english"
"microcode"
"utk"))))
(replace 'check
(lambda* (#:key import-path tests? #:allow-other-keys)
(when tests?
(for-each
(lambda (dir)
(invoke "go" "test" "-v"
(string-append import-path dir "/...")))
(list "/pkg/bytes"
;; TODO: Not packed yet in Guix, long jorney:
;; - github.com/jedib0t
;;
;; "/pkg/amd"
"/pkg/cbfs"
"/pkg/compression"
"/pkg/fmap"
"/pkg/fsp"
"/pkg/guid"
"/pkg/guid2english"
;; TODO: Not packed yet in Guix, long jorney:
;; - github.com/tjfoc/gmsm
;;
;; "/pkg/intel"
"/pkg/knownguids"
"/pkg/log"
"/pkg/uefi"
"/pkg/unicode"
"/pkg/utk"
"/pkg/visitors"
"/cmds/cbfs"
"/cmds/create-ffs"
;; TODO: Not packed yet in Guix, long jorney:
;; - github.com/u-root/u-root
;;
;; "/cmds/fmap"
;; "/cmds/fittool"
"/cmds/fspinfo"
"/cmds/glzma"
"/cmds/guid2english"
"/cmds/microcode"
"/cmds/utk")))))
(replace 'install
(lambda _
(let ((bindir (string-append #$output "/bin")))
(for-each
(lambda (cmd)
(install-file cmd bindir))
(list "cbfs"
"create-ffs"
;; "fittool"
"fmap"
"fspinfo"
"glzma"
"guid2english"
"microcode"
"utk"))))))))
(inputs (inputs
`(("go-golang-org-x-text" ,go-golang-org-x-text) (list go-github-com-dustin-go-humanize
("go-github-com-ulikunitz-xz" ,go-github-com-ulikunitz-xz))) go-github-com-hashicorp-errwrap
(synopsis "UEFI image editor") go-github-com-hashicorp-go-multierror
(description "This package provides a command-line UEFI image editor.") go-github-com-jessevdk-go-flags
go-github-com-pierrec-lz4
go-github-com-spf13-pflag
go-github-com-ulikunitz-xz
go-golang-org-x-text))
(home-page "https://github.com/linuxboot/fiano") (home-page "https://github.com/linuxboot/fiano")
(synopsis "UEFI image editor")
(description
"This package provides a command-line UEFI image editor, including cbfs,
create-ffs, fmap, fspinfo, glzma, guid2english, microcode and utk CLI
utilities.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public fiano-utk
(package
(inherit fiano)
(name "fiano-utk")
(arguments
`(#:import-path "github.com/linuxboot/fiano/cmds/utk"
#:unpack-path "github.com/linuxboot/fiano"))))
(define-public fiano-fmap
(package
(inherit fiano)
(name "fiano-fmap")
(arguments
`(#:import-path "github.com/linuxboot/fiano/cmds/fmap"
#:unpack-path "github.com/linuxboot/fiano"))))
(define-public novena-eeprom (define-public novena-eeprom
(package (package
(name "novena-eeprom") (name "novena-eeprom")
@ -5462,7 +5535,14 @@ it won't take longer to install 15 machines than it would to install just 2.")
(man1 (string-append man "/man1")) (man1 (string-append man "/man1"))
(man5 (string-append man "/man5")) (man5 (string-append man "/man5"))
(man7 (string-append man "/man7")) (man7 (string-append man "/man7"))
(release "target/release") (release ,(if (%current-target-system)
(string-append
"target/"
(platform-rust-target
(lookup-platform-by-target
(%current-target-system)))
"/release")
"target/release"))
(greetd-bin (string-append release "/greetd")) (greetd-bin (string-append release "/greetd"))
(agreety-bin (string-append release "/agreety"))) (agreety-bin (string-append release "/agreety")))
(install-file greetd-bin sbin) (install-file greetd-bin sbin)
@ -5472,8 +5552,10 @@ it won't take longer to install 15 machines than it would to install just 2.")
(install-file "greetd.5" man5) (install-file "greetd.5" man5)
(install-file "greetd-ipc.7" man7) (install-file "greetd-ipc.7" man7)
(install-file "agreety.1" man1)))))))) (install-file "agreety.1" man1))))))))
(inputs
(list linux-pam))
(native-inputs (native-inputs
(list linux-pam scdoc)) (list scdoc))
(synopsis "Minimal and flexible login manager daemon") (synopsis "Minimal and flexible login manager daemon")
(description (description
"greetd is a minimal and flexible login manager daemon "greetd is a minimal and flexible login manager daemon

View File

@ -414,7 +414,6 @@ precision.")
glpk-4 glpk-4
gmp gmp
gsl gsl
lapack
libjpeg-turbo libjpeg-turbo
libpng libpng
libsamplerate libsamplerate
@ -426,6 +425,7 @@ precision.")
mpfi mpfi
mpfr mpfr
ntl ntl
openblas
pari-gp pari-gp
perl perl
tcsh)) tcsh))

View File

@ -50,6 +50,7 @@
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages java) #:use-module (gnu packages java)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)

View File

@ -56,7 +56,7 @@
(home-page "https://www.gnu.org/software/apl/") (home-page "https://www.gnu.org/software/apl/")
(inputs (inputs
(list gettext-minimal (list gettext-minimal
lapack openblas
pcre2 pcre2
readline readline
sqlite)) sqlite))

View File

@ -323,7 +323,6 @@ rendering of the atmosphere model and examine its properties.
gsl gsl
gtkmm-3 gtkmm-3
hdf5 hdf5
lapack
libpng libpng
libsigc++ libsigc++
libxml2 libxml2
@ -411,7 +410,6 @@ wide set of telescopes.")
fftwf fftwf
gfortran gfortran
hdf5 hdf5
lapack
ncurses ncurses
openblas openblas
python python
@ -1390,7 +1388,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
qtmultimedia-5 qtmultimedia-5
qtpositioning qtpositioning
qtscript qtscript
qtserialport qtserialport-5
qttranslations qttranslations
qtwebengine-5 qtwebengine-5
qxlsx-qt5 qxlsx-qt5

View File

@ -774,7 +774,7 @@ purposes developed at Queen Mary, University of London.")
(define-public ardour (define-public ardour
(package (package
(name "ardour") (name "ardour")
(version "8.0") (version "8.4")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -791,7 +791,7 @@ purposes developed at Queen Mary, University of London.")
namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }"))))) namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \"\"; }")))))
(sha256 (sha256
(base32 (base32
"1a2dbysd64njiw087ypkwlvr31qz3dvfaca55nq2bc4fmm71mgv4")) "17gh1yaaby17zwx43h5v8dsrcznks9pn8jddc3wadq13b5x7zb7a"))
(file-name (string-append name "-" version)))) (file-name (string-append name "-" version))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
@ -800,6 +800,7 @@ namespace ARDOUR { const char* revision = \"" version "\" ; const char* date = \
'(list "--cxx11" ;required by gtkmm '(list "--cxx11" ;required by gtkmm
"--optimize" "--optimize"
"--no-phone-home" ;don't contact ardour.org "--no-phone-home" ;don't contact ardour.org
"--no-ytk" ;don't use bundled GTK2
"--freedesktop" ;build .desktop file "--freedesktop" ;build .desktop file
"--test" ;build unit tests "--test" ;build unit tests
"--use-external-libs") ;use system libraries "--use-external-libs") ;use system libraries
@ -6368,7 +6369,7 @@ and DSD streams.")
(define-public qpwgraph (define-public qpwgraph
(package (package
(name "qpwgraph") (name "qpwgraph")
(version "0.6.2") (version "0.6.3")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -6377,7 +6378,7 @@ and DSD streams.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0185hxbwqxhjiyym0s7bmrm50f3p4bnvx92qqmgvg3zd7r1x8m8s")))) "04ddcrc1r9il275jzcmr3wpii1is0s3hifc3a3h4aamxf1facdcr"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list #:tests? #f)) ; no tests (list #:tests? #f)) ; no tests

View File

@ -85,110 +85,106 @@
(sha256 (sha256
(base32 "1qffis277wshldr3i939b0r2x3a2mlr53samxqmr2nk1sfm2b4w9")) (base32 "1qffis277wshldr3i939b0r2x3a2mlr53samxqmr2nk1sfm2b4w9"))
(modules '((guix build utils))) (modules '((guix build utils)))
;; Remove pre-built Java binaries.
(snippet (snippet
'(begin '(delete-file-recursively "lib/"))))
;; Remove pre-built Java binaries.
(delete-file-recursively "lib/")
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:tests? #f ; no check target (list
#:modules ((guix build gnu-build-system) #:tests? #f ; no check target
#:modules '((guix build gnu-build-system)
(guix build utils) (guix build utils)
(srfi srfi-1) (srfi srfi-1)
(srfi srfi-26) (srfi srfi-26)
(ice-9 match) (ice-9 match)
(ice-9 regex)) (ice-9 regex))
#:phases #:phases
(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths (add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; prepare ChibiOS ;; prepare ChibiOS
(invoke "unzip" "-o" (assoc-ref inputs "chibios")) (invoke "unzip" "-o" (assoc-ref inputs "chibios"))
(invoke "mv" "ChibiOS_2.6.9" "chibios") (invoke "mv" "ChibiOS_2.6.9" "chibios")
(with-directory-excursion "chibios/ext" (with-directory-excursion "chibios/ext"
(invoke "unzip" "-o" "fatfs-0.9-patched.zip")) (invoke "unzip" "-o" "fatfs-0.9-patched.zip"))
;; Remove source of non-determinism in ChibiOS ;; Remove source of non-determinism in ChibiOS
(substitute* "chibios/os/various/shell.c" (substitute* "chibios/os/various/shell.c"
(("#ifdef __DATE__") "#if 0")) (("#ifdef __DATE__") "#if 0"))
;; Patch shell paths ;; Patch shell paths
(substitute* '("src/main/java/qcmds/QCmdCompileFirmware.java" (substitute* '("src/main/java/qcmds/QCmdCompileFirmware.java"
"src/main/java/qcmds/QCmdCompilePatch.java" "src/main/java/qcmds/QCmdCompilePatch.java"
"src/main/java/qcmds/QCmdFlashDFU.java") "src/main/java/qcmds/QCmdFlashDFU.java")
(("/bin/sh") (which "sh"))) (("/bin/sh") (which "sh")))
;; Override cross compiler base name ;; Override cross compiler base name
(substitute* "firmware/Makefile.patch" (substitute* "firmware/Makefile.patch"
(("arm-none-eabi-(gcc|g\\+\\+|objcopy|objdump)" tool) (("arm-none-eabi-(gcc|g\\+\\+|objcopy|objdump)" tool)
(which tool))) (which tool)))
;; XXX: for some reason the whitespace substitution does not ;; XXX: for some reason the whitespace substitution does not
;; work, so we disable it. ;; work, so we disable it.
(substitute* "firmware/Makefile.patch" (substitute* "firmware/Makefile.patch"
(("^BDIR=.*") "BDIR=${axoloti_home}/build\n")) (("^BDIR=.*") "BDIR=${axoloti_home}/build\n"))
;; Hardcode full path to compiler tools ;; Hardcode full path to compiler tools
(substitute* '("firmware/Makefile" (substitute* '("firmware/Makefile"
"firmware/flasher/Makefile" "firmware/flasher/Makefile"
"firmware/mounter/Makefile") "firmware/mounter/Makefile")
(("TRGT =.*") (("TRGT =.*")
(string-append "TRGT = " (string-append "TRGT = "
(assoc-ref inputs "cross-toolchain") (assoc-ref inputs "cross-toolchain")
"/bin/arm-none-eabi-\n"))) "/bin/arm-none-eabi-\n")))
;; Hardcode path to "make" ;; Hardcode path to "make"
(substitute* '("firmware/compile_firmware_linux.sh" (substitute* '("firmware/compile_firmware_linux.sh"
"firmware/compile_patch_linux.sh") "firmware/compile_patch_linux.sh")
(("make") (which "make"))) (("make") (which "make")))
;; Hardcode path to "dfu-util" ;; Hardcode path to "dfu-util"
(substitute* "platform_linux/upload_fw_dfu.sh" (substitute* "platform_linux/upload_fw_dfu.sh"
(("-f \"\\$\\{platformdir\\}/bin/dfu-util\"") "-z \"\"") (("-f \"\\$\\{platformdir\\}/bin/dfu-util\"") "-z \"\"")
(("\\./dfu-util") (which "dfu-util"))) (("\\./dfu-util") (which "dfu-util")))))
#t)) (delete 'configure)
(delete 'configure) (replace 'build
(replace 'build ;; Build Axoloti firmware with cross-compiler
;; Build Axoloti firmware with cross-compiler (lambda _
(lambda _ (with-directory-excursion "platform_linux"
(with-directory-excursion "platform_linux" (invoke "sh" "compile_firmware.sh"))))
(invoke "sh" "compile_firmware.sh")))) (replace 'install
(replace 'install (lambda* (#:key inputs outputs #:allow-other-keys)
(lambda* (#:key inputs outputs #:allow-other-keys) (let* ((share (string-append #$output "/share/axoloti/"))
(let* ((out (assoc-ref outputs "out")) (doc (string-append share "doc"))
(share (string-append out "/share/axoloti/")) (dir (getcwd))
(doc (string-append share "doc")) (pats '("/doc/[^/]+$"
(dir (getcwd)) "/patches/[^/]+/[^/]+$"
(pats '("/doc/[^/]+$" "/objects/[^/]+/[^/]+$"
"/patches/[^/]+/[^/]+$" "/firmware/.+"
"/objects/[^/]+/[^/]+$" "/chibios/[^/]+$"
"/firmware/.+" "/chibios/boards/ST_STM32F4_DISCOVERY/[^/]+$"
"/chibios/[^/]+$" "/chibios/(ext|os|docs)/.+"
"/chibios/boards/ST_STM32F4_DISCOVERY/[^/]+$" "/CMSIS/[^/]+/[^/]+$"
"/chibios/(ext|os|docs)/.+" "/patch/[^/]+/[^/]+$"
"/CMSIS/[^/]+/[^/]+$" "/[^/]+\\.txt$"))
"/patch/[^/]+/[^/]+$" (pattern (string-append
"/[^/]+\\.txt$")) "(" (string-join
(pattern (string-append (map (cut string-append dir <>)
"(" (string-join pats)
(map (cut string-append dir <>) "|") ")"))
pats) (files (find-files dir
"|") ")")) (lambda (file stat)
(files (find-files dir (and (eq? 'regular (stat:type stat))
(lambda (file stat) (string-match pattern file))))))
(and (eq? 'regular (stat:type stat)) (for-each (lambda (file)
(string-match pattern file)))))) (install-file file
(for-each (lambda (file) (string-append
(install-file file share
(string-append (regexp-substitute
share #f
(regexp-substitute (string-match dir (dirname file))
#f 'pre 'post))))
(string-match dir (dirname file)) files)))))))
'pre 'post))))
files)
#t))))))
(inputs (inputs
`(("chibios" `(("chibios"
,(origin ,(origin
@ -618,3 +614,324 @@ for sketching digital audio algorithms. The patches run on a standalone
powerful microcontroller board: Axoloti Core.") powerful microcontroller board: Axoloti Core.")
(license (list license:gpl3+ ; the whole project and GUI (license (list license:gpl3+ ; the whole project and GUI
license:bsd-3)))) ; the elfloader license:bsd-3)))) ; the elfloader
(define-public ksoloti-runtime
(package
(name "ksoloti-runtime")
(version "1.0.12-7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ksoloti/ksoloti")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "046jddrzlx1pdn53z0l8wf3rz7jsx7qn6l08ccw104gk996gr3gn"))
(modules '((guix build utils)))
;; Remove pre-built Java binaries.
(snippet
'(delete-file-recursively "lib/"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no check target
#:modules '((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match)
(ice-9 regex))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
;; prepare ChibiOS
(invoke "unzip" "-o" (assoc-ref inputs "chibios"))
(invoke "mv" "ChibiOS_2.6.9" "chibios")
(with-directory-excursion "chibios/ext"
(invoke "unzip" "-o" "fatfs-0.9-patched.zip"))
;; Remove source of non-determinism in ChibiOS
(substitute* "chibios/os/various/shell.c"
(("#ifdef __DATE__") "#if 0"))
;; Patch shell paths
(substitute* '("src/main/java/qcmds/QCmdCompileFirmware.java"
"src/main/java/qcmds/QCmdCompilePatch.java"
"src/main/java/qcmds/QCmdFlashDFU.java")
(("/bin/sh") (which "sh")))
;; Override cross compiler base name
(substitute* '("firmware/Makefile.patch"
"firmware_axoloti_legacy/Makefile.patch")
(("arm-none-eabi-(gcc|g\\+\\+|objcopy|objdump|size)" tool)
(which tool)))
;; XXX: for some reason the whitespace substitution does not
;; work, so we disable it.
(substitute* '("firmware/Makefile.patch"
"firmware_axoloti_legacy/Makefile.patch")
(("^BUILDDIR=.*") "BUILDDIR=${axoloti_libraries}/build\n"))
;; Hardcode full path to compiler tools
(substitute* '("firmware/Makefile"
"firmware/flasher/Makefile"
"firmware/mounter/Makefile"
"firmware_axoloti_legacy/Makefile"
"firmware_axoloti_legacy/flasher/Makefile"
"firmware_axoloti_legacy/mounter/Makefile")
(("TRGT =.*")
(string-append "TRGT = "
(assoc-ref inputs "cross-toolchain")
"/bin/arm-none-eabi-\n")))
;; XXX: Add missing entry for -size tool. This should be
;; upstreamed.
(substitute* '("firmware_axoloti_legacy/flasher/Makefile"
"firmware_axoloti_legacy/mounter/Makefile")
(("^OD.*= \\$\\(TRGT\\)objdump" m)
(string-append m "\nSZ = $(TRGT)size")))
;; Hardcode path to "make"
(substitute* '("firmware/compile_firmware_linux.sh"
"firmware/compile_patch_linux.sh"
"firmware_axoloti_legacy/compile_firmware_linux.sh"
"firmware_axoloti_legacy/compile_patch_linux.sh")
(("make") (which "make")))
;; Hardcode path to "dfu-util"
(substitute* "platform_linux/upload_fw_dfu.sh"
(("-f \"\\$\\{platformdir\\}/bin/dfu-util\"") "-z \"\"")
(("\\./dfu-util") (which "dfu-util")))))
(delete 'configure)
(replace 'build
;; Build Axoloti firmware with cross-compiler
(lambda _
(with-directory-excursion "platform_linux"
(substitute* "compile_firmware.sh"
(("^\"\\$\\{axoloti.*_firmware\\}/compile_firmware_linux.sh" m)
(string-append (which "bash") " " m)))
(invoke "sh" "compile_firmware.sh"))))
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(let* ((share (string-append #$output "/share/ksoloti/"))
(doc (string-append share "doc"))
(dir (getcwd))
(pats '("/doc/[^/]+$"
"/patches/[^/]+/[^/]+$"
"/objects/[^/]+/[^/]+$"
"/firmware/.+"
"/firmware_axoloti_legacy/.+"
"/chibios/[^/]+$"
"/chibios/boards/ST_STM32F4_DISCOVERY/[^/]+$"
"/chibios/(ext|os|docs)/.+"
"/CMSIS/[^/]+/[^/]+$"
"/patch/[^/]+/[^/]+$"
"/[^/]+\\.txt$"))
(pattern (string-append
"(" (string-join
(map (cut string-append dir <>)
pats)
"|") ")"))
(files (find-files dir
(lambda (file stat)
(and (eq? 'regular (stat:type stat))
(string-match pattern file))))))
(for-each (lambda (file)
(install-file file
(string-append
share
(regexp-substitute
#f
(string-match dir (dirname file))
'pre 'post))))
files)))))))
(inputs
`(("chibios"
,(origin
(method url-fetch)
(uri "mirror://sourceforge/chibios/ChibiOS%20GPL3/Version%202.6.9/ChibiOS_2.6.9.zip")
(sha256
(base32
"0lb5s8pkj80mqhsy47mmq0lqk34s2a2m3xagzihalvabwd0frhlj"))))
;; for compiling patches
("make" ,gnu-make)
;; for compiling firmware
("cross-toolchain" ,(make-arm-none-eabi-nano-toolchain-4.9))
;; for uploading compiled patches and firmware
("dfu-util" ,dfu-util-for-axoloti)))
(native-inputs (list unzip))
(home-page "https://ksoloti.github.io/")
(synopsis "Audio development environment for the Ksoloti board")
(description
"Ksoloti is an environment for generating and processing digital
audio. It can be a programmable virtual modular synthesizer, polysynth, drone
box, sequencer, chord generator, multi effect, sample player, looper, granular
sampler, MIDI generator/processor, CV or trigger generator, anything in
between, and more.
The Ksoloti Core is a rework of the discontinued Axoloti Core board. In
short, Ksoloti aims for maximum compatibility with the original Axoloti, but
with some layout changes and added features.
This package provides the runtime.")
(license license:gpl3+)))
(define-public ksoloti-patcher
(package
(inherit ksoloti-runtime)
(name "ksoloti-patcher")
(version (package-version ksoloti-runtime))
(arguments
(list
#:tests? #f ; no check target
#:modules '((guix build gnu-build-system)
((guix build ant-build-system) #:prefix ant:)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 match)
(ice-9 regex)
(sxml simple)
(sxml xpath)
(sxml transform))
#:imported-modules `((guix build ant-build-system)
,@%gnu-build-system-modules)
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(setenv "JAVA_HOME"
(dirname
(dirname (search-input-file inputs "/bin/javac"))))
;; We want to use our own jar files instead of the pre-built
;; stuff in lib. So we replace the zipfileset tags in the
;; build.xml with new ones that reference our jars.
(let* ((build.xml (with-input-from-file "build.xml"
(lambda _
(xml->sxml #:trim-whitespace? #t))))
(jars (append-map (match-lambda
(((? (cut string-prefix? "java-" <>)
label) . directory)
(find-files directory "\\.jar$"))
(_ '()))
inputs))
(all-jars (append jars (find-files "lib" "\\.jar$")))
(classpath (string-join all-jars ":"))
(fileset (map (lambda (jar)
`(zipfileset (@ (excludes "META-INF/*.SF")
(src ,jar))))
all-jars)))
(call-with-output-file "build.xml"
(lambda (port)
(sxml->xml
(pre-post-order
build.xml
`( ;; Remove all zipfileset tags from the "jar" tree and
;; inject our own tags.
(jar . ,(lambda (tag . kids)
`(jar ,@(append-map
(filter (lambda (e)
(not (eq? 'zipfileset (car e)))))
kids)
,@fileset)))
;; Skip the "bundle" target (and the "-post-jar" target
;; that depends on it), because we don't need it and it
;; confuses sxml->xml.
(target . ,(lambda (tag . kids)
(let ((name ((sxpath '(name *text*))
(car kids))))
(if (or (member "bundle" name)
(member "-post-jar" name))
'() ; skip
`(,tag ,@kids)))))
(*default* . ,(lambda (tag . kids) `(,tag ,@kids)))
(*text* . ,(lambda (_ txt)
(match txt
;; Remove timestamp.
("${TODAY}" "(unknown)")
(_ txt))))))
port)))
;; Build it!
(invoke "ant"
(string-append "-Djavac.classpath=" classpath)
"-Dbuild.runtime=true"
"-Dbuild.time=01/01/1970 00:00:00"
"-Djavac.source=1.8"
"-Djavac.target=1.8"
(string-append "-Dtag.short.version="
#$version)))))
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(let ((share (string-append #$output "/share/ksoloti/")))
(install-file "dist/Ksoloti.jar" share)
;; We do this to ensure that this package retains references to
;; other Java packages' jar files.
(install-file "build.xml" share)
;; Create a launcher script
(mkdir (string-append #$output "/bin"))
(let ((target (string-append #$output "/bin/Ksoloti")))
(with-output-to-file target
(lambda ()
(let* ((dir (string-append #$output "/share/ksoloti"))
(runtime (search-input-directory inputs
"share/ksoloti"))
(toolchain (assoc-ref inputs "cross-toolchain"))
(includes (string-append
toolchain
"/arm-none-eabi/include/:"
toolchain
"/arm-none-eabi/include/c++:"
toolchain
"/arm-none-eabi/include/c++/arm-none-eabi/armv7e-m"))
(marlin.jar
(search-input-file inputs "/share/java/marlin.jar")))
(display
(string-append "#!" (which "sh") "\n"
"export CROSS_CPATH=" includes "\n"
"export CROSS_CPLUS_INCLUDE_PATH=" includes "\n"
"export CROSS_LIBRARY_PATH="
toolchain "/arm-none-eabi/lib" "\n"
(which "java")
" -Xbootclasspath/a:" marlin.jar
" -Dsun.java2d.renderer=org.marlin.pisces.MarlinRenderingEngine"
" -Dsun.java2d.dpiaware=true"
" -Daxoloti_release=" runtime
" -Daxoloti_runtime=" runtime
" -jar " dir "/Ksoloti.jar")))))
(chmod target #o555)))))
(add-after 'install 'strip-jar-timestamps
(assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))
(inputs
`(("openjdk" ,openjdk11 "jdk")
("cross-toolchain" ,(make-arm-none-eabi-nano-toolchain-4.9))
("java-autocomplete" ,java-autocomplete)
("java-flatlaf" ,java-flatlaf)
("java-flatlaf-intellij-themes" ,java-flatlaf-intellij-themes)
("java-jgit" ,java-jgit-4.2)
("java-jsch" ,java-jsch)
("java-marlin-renderer" ,java-marlin-renderer)
("java-rsyntaxtextarea" ,java-rsyntaxtextarea)
("java-simple-xml" ,java-simple-xml)
("java-usb4java" ,java-usb4java)
("java-slf4j-api" ,java-slf4j-api)
("ksoloti-runtime" ,ksoloti-runtime)))
(native-inputs
(list ant zip ;for repacking the jar
unzip))
(description
"Ksoloti is an environment for generating and processing digital
audio. It can be a programmable virtual modular synthesizer, polysynth, drone
box, sequencer, chord generator, multi effect, sample player, looper, granular
sampler, MIDI generator/processor, CV or trigger generator, anything in
between, and more.
The Ksoloti Core is a rework of the discontinued Axoloti Core board. In
short, Ksoloti aims for maximum compatibility with the original Axoloti, but
with some layout changes and added features.
This package provides the patcher application.")))

View File

@ -41,31 +41,31 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages backup) (define-module (gnu packages backup)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system go) #:use-module (guix build-system go)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system qt) #:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages acl) #:use-module (gnu packages acl)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages datastructures) #:use-module (gnu packages datastructures)
#:use-module (gnu packages digest)
#:use-module (gnu packages dbm) #:use-module (gnu packages dbm)
#:use-module (gnu packages dejagnu) #:use-module (gnu packages dejagnu)
#:use-module (gnu packages digest)
#:use-module (gnu packages ftp) #:use-module (gnu packages ftp)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
@ -259,6 +259,7 @@ backups (called chunks) to allow easy burning to CD/DVD.")
(define-public libarchive (define-public libarchive
(package (package
(name "libarchive") (name "libarchive")
(replacement libarchive/fixed)
(version "3.6.1") (version "3.6.1")
(source (source
(origin (origin
@ -347,6 +348,25 @@ random access nor for in-place modification. This package provides the
@command{bsdcat}, @command{bsdcpio} and @command{bsdtar} commands.") @command{bsdcat}, @command{bsdcpio} and @command{bsdtar} commands.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public libarchive/fixed
(hidden-package
(package
(inherit libarchive)
(version "3.6.1")
(source
(origin
(method url-fetch)
(uri (list (string-append "https://libarchive.org/downloads/libarchive-"
version ".tar.xz")
(string-append "https://github.com/libarchive/libarchive"
"/releases/download/v" version "/libarchive-"
version ".tar.xz")))
(patches (search-patches "libarchive-remove-potential-backdoor.patch"))
(sha256
(base32
"1rj8q5v26lxxr8x4b4nqbrj7p06qvl91hb8cdxi3xx3qp771lhas")))))))
(define-public rdup (define-public rdup
(package (package
(name "rdup") (name "rdup")

View File

@ -10952,13 +10952,13 @@ single-cell RNA-seq.")
(define-public r-seqarray (define-public r-seqarray
(package (package
(name "r-seqarray") (name "r-seqarray")
(version "1.42.2") (version "1.42.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "SeqArray" version)) (uri (bioconductor-uri "SeqArray" version))
(sha256 (sha256
(base32 (base32
"1bwqyvvfwwscznwi1bm4wh2pqf0fmq68g7siwbbw5ypj087ibnnm")))) "1500vwsgdxdaafp2fb0252c0hhpz3lhrniv21nb7xnky7mbr7lk6"))))
(properties `((upstream-name . "SeqArray"))) (properties `((upstream-name . "SeqArray")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-biostrings (propagated-inputs (list r-biostrings
@ -15037,13 +15037,13 @@ standardization of the analyses and the development of best practices.")
(define-public r-microbiomestat (define-public r-microbiomestat
(package (package
(name "r-microbiomestat") (name "r-microbiomestat")
(version "1.1") (version "1.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "MicrobiomeStat" version)) (uri (cran-uri "MicrobiomeStat" version))
(sha256 (sha256
(base32 (base32
"1j5sar85a1gksc83pc4ypxwb0c7whxglx069zarphrgqfazcr1m4")))) "1kpc68sl63k104xy7r6f3gxan0yx0rs7ksn8ldbq8xla00ddflgq"))))
(properties `((upstream-name . "MicrobiomeStat"))) (properties `((upstream-name . "MicrobiomeStat")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-foreach (propagated-inputs (list r-foreach
@ -15054,7 +15054,6 @@ standardization of the analyses and the development of best practices.")
r-matrix r-matrix
r-matrixstats r-matrixstats
r-modeest r-modeest
r-phyloseq
r-statmod)) r-statmod))
(home-page "https://cran.r-project.org/package=MicrobiomeStat") (home-page "https://cran.r-project.org/package=MicrobiomeStat")
(synopsis "Statistical methods for microbiome compositional data") (synopsis "Statistical methods for microbiome compositional data")
@ -17583,14 +17582,14 @@ Infinium HumanMethylation 450k assay.")
(define-public r-biocfilecache (define-public r-biocfilecache
(package (package
(name "r-biocfilecache") (name "r-biocfilecache")
(version "2.10.1") (version "2.10.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BiocFileCache" version)) (uri (bioconductor-uri "BiocFileCache" version))
(sha256 (sha256
(base32 (base32
"044kh1rfgb608y2v4wzbzddirhw5crj3k6i28wr78qgnzqc89mdm")))) "00gnnc4yypvjnvh1xq4bzqi34j9i9ld1rnjnb2gsxbhaq5nzq31z"))))
(properties `((upstream-name . "BiocFileCache"))) (properties `((upstream-name . "BiocFileCache")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -22404,14 +22403,14 @@ relevant, and the minimum expression of the most abundant condition.")
(define-public r-catalyst (define-public r-catalyst
(package (package
(name "r-catalyst") (name "r-catalyst")
(version "1.26.0") (version "1.26.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "CATALYST" version)) (uri (bioconductor-uri "CATALYST" version))
(sha256 (sha256
(base32 (base32
"0dfg9ib0imk8bmhycqrspnn8yvfdlchwvx39wgqxi5fb9zrppfz4")))) "1zfb4b88j0ksvsxq8kgrjs0xqlr10yzvr772r8nhl797qzwdag08"))))
(properties `((upstream-name . "CATALYST"))) (properties `((upstream-name . "CATALYST")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -23975,14 +23974,14 @@ using aCGH or sequencing.")
(define-public r-bionero (define-public r-bionero
(package (package
(name "r-bionero") (name "r-bionero")
(version "1.10.2") (version "1.10.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "BioNERO" version)) (uri (bioconductor-uri "BioNERO" version))
(sha256 (sha256
(base32 (base32
"1fk48h2v0snsg8y9pi0pav69wa95s8a8gk1rxsvrm7z1bcgi2j51")))) "1vf3kq4lj4alvwzf0wl09lxb0ky6q0x94ajmrnihlj5saliqb73c"))))
(properties `((upstream-name . "BioNERO"))) (properties `((upstream-name . "BioNERO")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -24470,13 +24469,13 @@ estimates, etc.")
(define-public r-tcgabiolinks (define-public r-tcgabiolinks
(package (package
(name "r-tcgabiolinks") (name "r-tcgabiolinks")
(version "2.30.0") (version "2.30.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "TCGAbiolinks" version)) (uri (bioconductor-uri "TCGAbiolinks" version))
(sha256 (sha256
(base32 "1k8xiv4bmil420176ckfda2r6y0s46dk1cm8dbywav86q28bmzzx")))) (base32 "0br0bgcvxxfy1vclfc8i20b0bsb7rcchwfdx7lkw4f2aqxny8ja8"))))
(properties `((upstream-name . "TCGAbiolinks"))) (properties `((upstream-name . "TCGAbiolinks")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs

View File

@ -5834,7 +5834,7 @@ of nucleic acid binding proteins.")
(find-files "../bin" ".*")) (find-files "../bin" ".*"))
#t)))))) #t))))))
(inputs (inputs
(list gsl lapack openblas perl (list gsl openblas perl
`(,gfortran "lib"))) `(,gfortran "lib")))
(home-page "https://github.com/DReichLab/EIG") (home-page "https://github.com/DReichLab/EIG")
(synopsis "Tools for population genetics") (synopsis "Tools for population genetics")
@ -8673,7 +8673,9 @@ predicts the locations of structural units in the sequences.")
(substitute* "Makefile" (substitute* "Makefile"
(("INSTALLDIR=.*") (("INSTALLDIR=.*")
(string-append (string-append
"INSTALLDIR=" (assoc-ref outputs "out") "/bin\n"))) "INSTALLDIR=" (assoc-ref outputs "out") "/bin\n"))
(("-llapack -lblas")
"-lopenblas"))
#t)) #t))
(add-before 'install 'make-install-directory (add-before 'install 'make-install-directory
;; The install directory is not created during 'make install'. ;; The install directory is not created during 'make install'.
@ -8697,7 +8699,6 @@ predicts the locations of structural units in the sequences.")
("perl" ,perl) ("perl" ,perl)
("python" ,python-wrapper) ("python" ,python-wrapper)
("blast+" ,blast+) ("blast+" ,blast+)
("lapack" ,lapack)
("openblas" ,openblas))) ("openblas" ,openblas)))
(native-inputs (native-inputs
(list which)) (list which))
@ -9662,8 +9663,8 @@ accessed/downloaded on demand across HTTP.")
(arguments (arguments
`(#:tests? #f ;no "check" target `(#:tests? #f ;no "check" target
#:make-flags ,#~(list (string-append "LIB_LAPACK=" #:make-flags ,#~(list (string-append "LIB_LAPACK="
#$(this-package-input "lapack") #$(this-package-input "openblas")
"/lib/liblapack.so") "/lib/libopenblas.so")
"WITH_LAPACK=1" "WITH_LAPACK=1"
"FORCE_DYNAMIC=1" "FORCE_DYNAMIC=1"
;; disable phoning home ;; disable phoning home
@ -9678,7 +9679,7 @@ accessed/downloaded on demand across HTTP.")
"/bin/"))) "/bin/")))
(install-file "plink" bin))))))) (install-file "plink" bin)))))))
(inputs (inputs
(list zlib lapack)) (list zlib openblas))
(native-inputs (native-inputs
(list unzip gcc-8)) (list unzip gcc-8))
(home-page "http://pngu.mgh.harvard.edu/~purcell/plink/") (home-page "http://pngu.mgh.harvard.edu/~purcell/plink/")
@ -9713,7 +9714,7 @@ subsequent visualization, annotation and storage of results.")
(list (list
#:tests? #false ;TEST_EXTRACT_CHR doesn't produce expected files #:tests? #false ;TEST_EXTRACT_CHR doesn't produce expected files
#:make-flags #:make-flags
#~(list "BLASFLAGS=-llapack -lopenblas" #~(list "BLASFLAGS=-lopenblas"
"NO_SSE42=1" "NO_SSE42=1"
"NO_AVX2=1" "NO_AVX2=1"
"STATIC_ZSTD=" "STATIC_ZSTD="
@ -9740,7 +9741,7 @@ subsequent visualization, annotation and storage of results.")
(string-append (string-append
(assoc-ref outputs "out") "/bin"))))))) (assoc-ref outputs "out") "/bin")))))))
(inputs (inputs
(list lapack openblas zlib `(,zstd "lib"))) (list openblas zlib `(,zstd "lib")))
(native-inputs (native-inputs
(list diffutils plink python simde)) ; for tests (list diffutils plink python simde)) ; for tests
(home-page "https://www.cog-genomics.org/plink/") (home-page "https://www.cog-genomics.org/plink/")

View File

@ -81,6 +81,7 @@
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz) #:use-module (gnu packages guile-xyz)

View File

@ -30,7 +30,7 @@
(define-public clifm (define-public clifm
(package (package
(name "clifm") (name "clifm")
(version "1.17") (version "1.18")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -39,7 +39,7 @@
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "00f5x0352dsf8f9ixkcwma7wr5pg78maavmd950nni38m647clm6")))) (base32 "1r83wx6nxsdycnj56h9s32mraisjx1w0rsnmj9xw2nf249j8c05n"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:make-flags (list (string-append "CC=" `(#:make-flags (list (string-append "CC="

View File

@ -203,14 +203,14 @@ designs.")
(define-public clojure-tools (define-public clojure-tools
(package (package
(name "clojure-tools") (name "clojure-tools")
(version "1.11.1.1200") (version "1.11.1.1413")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.clojure.org/install/clojure-tools-" (uri (string-append "https://download.clojure.org/install/clojure-tools-"
version version
".tar.gz")) ".tar.gz"))
(sha256 (base32 "075naxfiddi6jqr6rqiywwy91r188n5m8yfqcxddmds2vm5rrpnv")) (sha256 (base32 "1q0z71ifdxwvyy9gvq8mx8jbygf8cszrlhb3h22walfamnisbhwk"))
;; Remove AOT compiled JAR. The other JAR only contains uncompiled ;; Remove AOT compiled JAR. The other JAR only contains uncompiled
;; Clojure source code. ;; Clojure source code.
(snippet (snippet
@ -249,7 +249,7 @@ designs.")
":")))))))) ":"))))))))
(inputs (list rlwrap (inputs (list rlwrap
clojure clojure
clojure-tools-deps-alpha clojure-tools-deps
java-commons-logging-minimal)) java-commons-logging-minimal))
(home-page "https://clojure.org/releases/tools") (home-page "https://clojure.org/releases/tools")
(synopsis "CLI tools for the Clojure programming language") (synopsis "CLI tools for the Clojure programming language")
@ -572,7 +572,72 @@ concise, powerful tests.")
work with command-line arguments.") work with command-line arguments.")
(license license:epl1.0))) (license license:epl1.0)))
(define-public clojure-tools-deps
(package
(name "clojure-tools-deps")
(version "0.18.1354")
(home-page "https://github.com/clojure/tools.deps")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ls5nixhsjjhf3qz8kbyhmks5lw7a25zxl46yrizbw7vba3mzrpl"))))
(build-system clojure-build-system)
(arguments
`(#:source-dirs '("src/main/clojure" "src/main/resources")
#:test-dirs '("src/test/clojure")
#:doc-dirs '()
;; FIXME: Could not initialize class org.eclipse.aether.transport.http.SslSocketFactory
#:tests? #f
#:phases
(modify-phases %standard-phases
;; FIXME: Currently, the S3 transporter depends on ClojureScript,
;; which is very difficult to package due to dependencies on Java
;; libraries with non-standard build systems. Instead of actually
;; packaging these libraries, we just remove the S3 transporter that
;; depends on them.
(add-after 'unpack 'remove-s3-transporter
(lambda _
(for-each delete-file
(list
(string-append
"src/main/clojure/clojure/"
"tools/deps/util/s3_aws_client.clj")
(string-append
"src/main/clojure/clojure/"
"tools/deps/util/s3_transporter.clj")
(string-append
"src/test/clojure/clojure/"
"tools/deps/util/test_s3_transporter.clj")))
(substitute*
"src/main/clojure/clojure/tools/deps/util/maven.clj"
(("clojure.tools.deps.util.s3-transporter")
"")))))))
(propagated-inputs (list maven-resolver-api
maven-resolver-spi
maven-resolver-impl
maven-resolver-util
maven-resolver-connector-basic
maven-resolver-provider
maven-core
maven-resolver-transport-http
maven-resolver-transport-file
clojure-tools-gitlibs
clojure-tools-cli
clojure-data-xml))
(synopsis "Clojure library supporting clojure-tools")
(description "This package provides a functional API for transitive
dependency graph expansion and the creation of classpaths.")
(license license:epl1.0)))
(define-public clojure-tools-deps-alpha (define-public clojure-tools-deps-alpha
;; this was superseded by clojure-tools-deps
;; https://github.com/clojure/tools.deps.alpha
;; Keeping it to give downstream packages a chance to upgrade
(package (package
(name "clojure-tools-deps-alpha") (name "clojure-tools-deps-alpha")
(version "0.14.1212") (version "0.14.1212")

View File

@ -8,7 +8,7 @@
;;; Copyright © 2017, 2018, 2020, 2021 Marius Bakke <marius@gnu.org> ;;; Copyright © 2017, 2018, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019, 2020, 2021, 2022, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com> ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
@ -43,8 +43,10 @@
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages backup) #:use-module (gnu packages backup)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages elf)
#:use-module (gnu packages file) #:use-module (gnu packages file)
#:use-module (gnu packages kde-frameworks) #:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages libevent) #:use-module (gnu packages libevent)
@ -434,3 +436,45 @@ and workspaces that can be used in the compiler environment of your choice.")
(description "@code{cmakeos-mode} provides an Emacs major mode for editing (description "@code{cmakeos-mode} provides an Emacs major mode for editing
Cmake files. It supports syntax highlighting, indenting and refilling of Cmake files. It supports syntax highlighting, indenting and refilling of
comments."))) comments.")))
(define-public qmsetup
(let ((commit "89fa57046241c26dfcfd97ceba174728b24bdd27")
(revision "0"))
(package
(name "qmsetup")
;; The base version string is retrieved from the CMakeLists.txt file.
(version (git-version "0.0.1.5" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stdware/qmsetup")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0nqpblv08yqv97vjv7cxkpf160s3877gnd7jjqxnfrrknm2396r1"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/corecmd/utils_unix.cpp"
(("\"patchelf\"")
(format #f "~s" (search-input-file
inputs "bin/patchelf")))))))))
(inputs (list patchelf syscmdline))
(home-page "https://github.com/stdware/qmsetup")
(synopsis "CMake modules and basic libraries for C/C++ projects")
(description "QMSetup is a set of CMake Modules and Basic Libraries for
C/C++ projects. It features:
@itemize
@item Helpful CMake utilities
@item Generate configuration header files
@item Reorganize header files
@item Deploy project dependencies and fix rpaths
@item Support calling Doxygen via CMake conveniently
@item Support calling Qt Linguist Tools via CMake conveniently
@end itemize")
(license license:expat))))

View File

@ -17,7 +17,9 @@
;;; Copyright © 2021 lu hui <luhuins@163.com> ;;; Copyright © 2021 lu hui <luhuins@163.com>
;;; Copyright © 2021, 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2021, 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2023 Fries <fries1234@protonmail.com>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -45,6 +47,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (guix build-system go)
#:use-module (gnu packages) #:use-module (gnu packages)
#:use-module (gnu packages autogen) #:use-module (gnu packages autogen)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
@ -59,7 +62,10 @@
#:use-module (gnu packages emacs) #:use-module (gnu packages emacs)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages golang) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages llvm) #:use-module (gnu packages llvm)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
@ -95,23 +101,24 @@
(sha256 (sha256
(base32 (base32
"1r0sbw82cf9dbcj3vgnbd4sc1lklzvijic2z5wgkvs21azcm0yzh")))) "1r0sbw82cf9dbcj3vgnbd4sc1lklzvijic2z5wgkvs21azcm0yzh"))))
(build-system gnu-build-system) (build-system go-build-system)
(arguments (arguments
(list #:tests? #false ;no tests (list
#:phases #:tests? #f ;no tests
#~(modify-phases %standard-phases #:install-source? #f
(delete 'configure) #:import-path "github.com/Autodesk/AutomaticComponentToolkit/cmd/act"
(replace 'build #:unpack-path "github.com/Autodesk/AutomaticComponentToolkit/"
(lambda _ #:phases
(setenv "HOME" "/tmp") #~(modify-phases %standard-phases
(invoke "bash" "Build/build.sh"))) ;; Golang produces the final binary based on the current directory
(replace 'install ;; name if -o options is not provided, utilize this assumption to
(lambda _ ;; completely relay on go-build-system.
(let ((bin (string-append #$output "/bin"))) (add-before 'build 'pretend-cmd-act
(mkdir-p bin) (lambda* (#:key unpack-path #:allow-other-keys)
(copy-file "act.linux" (let ((act (string-append "src/" unpack-path "/cmd/act"))
(string-append #$output "/bin/act")))))))) (source (string-append "src/" unpack-path "/Source")))
(native-inputs (list go)) (mkdir-p act)
(copy-recursively source act)))))))
(synopsis "Automatically generate software components") (synopsis "Automatically generate software components")
(description (description
"The Automatic Component Toolkit (@dfn{ACT}) is a code generator that "The Automatic Component Toolkit (@dfn{ACT}) is a code generator that
@ -379,6 +386,41 @@ cloc contains code from David Wheeler's SLOCCount. Compared to SLOCCount,
cloc can handle a greater variety of programming languages.") cloc can handle a greater variety of programming languages.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public scc
(package
(name "scc")
(version "3.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/boyter/scc")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rkkfg6jimlc2rkajk6ypd5v0m3zai25ga5idz2pmkmzakv82n21"))))
(build-system go-build-system)
(arguments
(list
#:install-source? #f
#:import-path "github.com/boyter/scc"))
(native-inputs
(list go-github-com-dbaggerman-cuba
go-github-com-json-iterator-go
go-github-com-mattn-go-runewidth
go-github-com-minio-blake2b-simd
go-github-com-spf13-cobra
go-golang-org-x-text
go-gopkg-in-yaml-v2))
(home-page "https://github.com/boyter/scc")
(synopsis "Fast code counter written in Go")
(description
"@command{scc} provides a lines-of-code counter similar to tools like
@command{cloc} and @command{sloccount}. It aims to be fast as possible while
supporting @acronym{COCOMO,Constructive Cost Model} calculation and code
complexity estimation.")
(license license:expat)))
(define-public the-silver-searcher (define-public the-silver-searcher
(package (package
(name "the-silver-searcher") (name "the-silver-searcher")
@ -495,60 +537,6 @@ support, its ability for the user to define new languages searched by regular
expressions, and its ability to generate emacs-style TAGS files.") expressions, and its ability to generate emacs-style TAGS files.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public withershins
(package
(name "withershins")
(version "0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cameronwhite/withershins")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1cviqvbbcwljm1zx12j6511hazr3kscwrvcyifrkfi4fpy5z985m"))))
(build-system cmake-build-system)
(arguments
`(#:out-of-source? #f
#:configure-flags
;; XXX A (justified!) misleading-indentation error breaks the build.
(list "-DENABLE_WERROR=OFF")
#:phases
(modify-phases %standard-phases
(add-after
'unpack 'find-libiberty
(lambda _
(let ((libiberty (assoc-ref %build-inputs "libiberty")))
(substitute* "cmake/FindIberty.cmake"
(("/usr/include") (string-append libiberty "/include"))
(("libiberty.a iberty")
(string-append "NAMES libiberty.a iberty\nPATHS \""
libiberty "/lib" "\"")))
#t)))
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(include (string-append out "/include"))
(lib (string-append out "/lib")))
(mkdir-p include)
(install-file "src/withershins.hpp" include)
(mkdir-p lib)
(install-file "src/libwithershins.a" lib))
#t)))))
(home-page "https://github.com/cameronwhite/withershins")
(inputs
(list libiberty binutils ;for libbfd
zlib))
(synopsis "C++11 library for generating stack traces")
(description
"Withershins is a simple cross-platform C++11 library for generating
stack traces.")
;; Sources are released under Expat license, but since BFD is licensed
;; under the GPLv3+ the combined work is GPLv3+ as well.
(license license:gpl3+)))
(define-public lcov (define-public lcov
(package (package
(name "lcov") (name "lcov")

View File

@ -38,6 +38,7 @@
;;; Copyright © 2022 Greg Hogan <code@greghogan.com> ;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com> ;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2024 Vinicius Monego <monego@posteo.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -769,6 +770,32 @@ This package is mostly for compatibility and historical interest.")
with the sfArk algorithm.") with the sfArk algorithm.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public minizip-ng
(package
(name "minizip-ng")
(version "4.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zlib-ng/minizip-ng")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0lgx4s4aykxn8x3b4m4c4isasd2608bbyfm4lxc2spcc4xqwhzkz"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
"-DMZ_BUILD_TESTS=ON"
"-DMZ_BUILD_UNIT_TESTS=ON")))
(native-inputs (list googletest pkg-config))
(inputs (list openssl zlib `(,zstd "lib")))
(home-page "https://github.com/zlib-ng/minizip-ng")
(synopsis "Zip manipulation library")
(description "@code{minizip-ng} is a zip manipulation library written in
C, forked from the zip manipulation library found in the zlib distribution.")
(license license:bsd-3)))
(define-public sfarkxtc (define-public sfarkxtc
(let ((commit "13cd6f93725a90d91ec5ea75babf1dbd694ac463") (let ((commit "13cd6f93725a90d91ec5ea75babf1dbd694ac463")
(revision "1")) (revision "1"))

View File

@ -10,7 +10,7 @@
;;; Copyright © 2020 Roel Janssen <roel@gnu.org> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2020, 2021, 2023, 2024 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020, 2021, 2023, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020, 2021, 2022 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020, 2021, 2022, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org> ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
@ -478,6 +478,44 @@ the name of the library itself, which is written in C++.")
(license (list license:expat ; cJSON (license (list license:expat ; cJSON
license:bsd-4))))) ; everything else (LICENSE.txt) license:bsd-4))))) ; everything else (LICENSE.txt)
(define-public pystring
(package
(name "pystring")
(version "1.1.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/imageworks/pystring")
(commit (string-append "v" version))))
(sha256
(base32 "0h12x24skrlx4fv0k5vl8wnar8gi6bq091yp93awkwsbnm8qwkzd"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
;; The install phase doesn't install the header
(add-after 'install 'install-header
(lambda _
(mkdir-p (string-append #$output "/include"))
(copy-file
(string-append #$(package-source this-package)
"/pystring.h")
(string-append #$output
"/include/pystring.h")))))))
(native-inputs (list pkg-config))
(home-page "https://github.com/imageworks/pystring")
(synopsis "C++ functions matching the Python string methods")
(description
"Pystring is a collection of C++ functions which match the interface and
behavior of Python's string class methods using std::string. Implemented in
C++, it does not require or make use of a python interpreter. It provides
convenience and familiarity for common string operations not included in the
standard C++ library. It's also useful in environments where both C++ and
Python are used.")
(license license:bsd-3)))
(define-public dashel (define-public dashel
(package (package
(name "dashel") (name "dashel")
@ -925,6 +963,49 @@ concurrent queue for C++11.")
lock-free fixed size queue written in C++11.") lock-free fixed size queue written in C++11.")
(license license:expat))) (license license:expat)))
(define-public syscmdline
(package
(name "syscmdline")
(version "0.0.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/SineStriker/syscmdline")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"00n9vkyymp1dzixxl93f6pkpd3ndsk1vib7shhlxv4zvy5hjqhqw"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~(list "-DSYSCMDLINE_BUILD_STATIC=OFF" ;build a shared library
"-DSYSCMDLINE_BUILD_TESTS=ON")
#:phases #~(modify-phases %standard-phases
(replace 'check
;; There isn't currently any exposed test target.
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "bin/tst_basic")))))))
(home-page "https://github.com/SineStriker/syscmdline")
(synopsis "C++ advanced command line parser")
(description "SysCmdLine is a C++ command line parser that is inspired by
@code{QCommandLineParser} from Qt and @code{System.CommandLine} from C#. It
has features such as:
@itemize
@item Support sub-commands
@item Support case-insensitive parsing
@item Support global options
@item Support mutually exclusive options
@item Support short options and group flags
@item Support help text customization
@item Support localization
@item Simple tips for typo correction
@item Highly configurable
@item Friendly interface
@end itemize")
(license license:expat)))
(define-public gperftools (define-public gperftools
(package (package
(name "gperftools") (name "gperftools")
@ -1119,7 +1200,7 @@ code and retrieving their output.")
(define-public sobjectizer (define-public sobjectizer
(package (package
(name "sobjectizer") (name "sobjectizer")
(version "5.7.2.6") (version "5.8.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1127,7 +1208,7 @@ code and retrieving their output.")
(url "https://github.com/Stiffstream/sobjectizer") (url "https://github.com/Stiffstream/sobjectizer")
(commit (string-append "v." version)))) (commit (string-append "v." version))))
(sha256 (sha256
(base32 "0n6smpjkkkw0xab8wcpy3p0dpw2v9sxgwl6azl3am6abmv4mff12")) (base32 "0ya5xlgm3arvzvcnsajw03kc3cibbdbap9p7kgpxn00byqbxixr7"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
@ -1136,8 +1217,7 @@ code and retrieving their output.")
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'change-directory (add-after 'unpack 'change-directory
(lambda _ (lambda _
(chdir "dev") (chdir "dev"))))))
#t)))))
(home-page "https://stiffstream.com/en/products/sobjectizer.html") (home-page "https://stiffstream.com/en/products/sobjectizer.html")
(synopsis "Cross-platform actor framework for C++") (synopsis "Cross-platform actor framework for C++")
(description (description
@ -1172,7 +1252,7 @@ programs.")
(define-public kokkos (define-public kokkos
(package (package
(name "kokkos") (name "kokkos")
(version "4.1.00") (version "4.2.01")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1181,7 +1261,7 @@ programs.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "15kjpa54ssrrbid9h2nr94nh85qna5c4vq2152i4iy7gaagigy3c")) (base32 "1bvxcy11as38ng9vdp93mrdvm7sgwqjrm67p53wr1aj7x3pq3hbp"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Remove bundled googletest. ;; Remove bundled googletest.

View File

@ -537,13 +537,13 @@ labels on the node can also be achieved.")
(define-public r-collapse (define-public r-collapse
(package (package
(name "r-collapse") (name "r-collapse")
(version "2.0.11") (version "2.0.12")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "collapse" version)) (uri (cran-uri "collapse" version))
(sha256 (sha256
(base32 "0aaqzipgnln6mcwgahlnvg0dhq82xnzrfn95mv4ywgpczaicwg3s")))) (base32 "0dplfsj4lqafw0zkrqhph9sk22qpkm5i753pgwf9w9cq5d17f537"))))
(properties `((upstream-name . "collapse"))) (properties `((upstream-name . "collapse")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (list r-rcpp)) (propagated-inputs (list r-rcpp))
@ -4453,13 +4453,13 @@ particularly easy to create complete web applications using httpuv alone.")
(define-public r-httr2 (define-public r-httr2
(package (package
(name "r-httr2") (name "r-httr2")
(version "1.0.0") (version "1.0.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "httr2" version)) (uri (cran-uri "httr2" version))
(sha256 (sha256
(base32 (base32
"0jaajfr1hr6bzb1vz2nw2csl2l09kbq619vsq5yrlchcarpjv1fb")))) "1cpi2yr66g0nwd5ybz6254ivggvxql0bas2hwpakrcw1161jvs9k"))))
(properties `((upstream-name . "httr2"))) (properties `((upstream-name . "httr2")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -5084,14 +5084,14 @@ expression estimates for all genes.")
(define-public r-bslib (define-public r-bslib
(package (package
(name "r-bslib") (name "r-bslib")
(version "0.6.2") (version "0.7.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "bslib" version)) (uri (cran-uri "bslib" version))
(sha256 (sha256
(base32 (base32
"0gjnb1ar6n3qg37ljy5yai0pd219zhm0n186jdzhsfwma5498ifh")) "181cfmdvi64j978q8x69bl7wxwpjpx54a52sh4xng0pk3a2djd91"))
(snippet (snippet
'(for-each delete-file '(for-each delete-file
'("inst/components/dist/components.min.js" '("inst/components/dist/components.min.js"
@ -5133,6 +5133,7 @@ expression estimates for all genes.")
(propagated-inputs (propagated-inputs
(list r-base64enc (list r-base64enc
r-cachem r-cachem
r-fastmap
r-htmltools r-htmltools
r-jquerylib r-jquerylib
r-jsonlite r-jsonlite
@ -7696,14 +7697,16 @@ provides an interactive R manager and worker environment.")
(define-public r-rmumps (define-public r-rmumps
(package (package
(name "r-rmumps") (name "r-rmumps")
(version "5.2.1-28") (version "5.2.1-29")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "rmumps" version)) (uri (cran-uri "rmumps" version))
(sha256 (sha256
(base32 "1cq7zrq730lj1z5xirzk5fvvlvdq101ppg47n0z7c0v17rvs80n6")))) (base32 "1sxx5kyp331dmiyqd4l5m3mdcmlpm1vbdm6cd3kgvnz8ympphlwr"))))
(properties `((upstream-name . "rmumps"))) (properties
`((upstream-name . "rmumps")
(updater-extra-inputs . ("zlib"))))
(build-system r-build-system) (build-system r-build-system)
(inputs (list zlib)) (inputs (list zlib))
(propagated-inputs (list r-rcpp)) (propagated-inputs (list r-rcpp))
@ -9706,18 +9709,18 @@ programming} (SQP) based solver).")
(define-public r-hardyweinberg (define-public r-hardyweinberg
(package (package
(name "r-hardyweinberg") (name "r-hardyweinberg")
(version "1.7.5") (version "1.7.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "HardyWeinberg" version)) (uri (cran-uri "HardyWeinberg" version))
(sha256 (sha256
(base32 (base32
"0b3szw090dsc3bkas2kvx787ww2i6zzg2qmdyivmqc8amx5arn6g")))) "058bfb43i2vjrc2iy3q3izlijw2hh61rl47c9gcf327xlp9x6wnh"))))
(properties `((upstream-name . "HardyWeinberg"))) (properties `((upstream-name . "HardyWeinberg")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-mice r-nnet r-rcpp r-rsolnp)) (list r-mice r-nnet r-rcpp r-rsolnp r-shape))
(home-page "https://cran.r-project.org/package=HardyWeinberg") (home-page "https://cran.r-project.org/package=HardyWeinberg")
(synopsis "Statistical tests and graphics for Hardy-Weinberg equilibrium") (synopsis "Statistical tests and graphics for Hardy-Weinberg equilibrium")
(description (description
@ -17506,14 +17509,14 @@ results using @code{ggplot2}.")
(define-public r-effectsize (define-public r-effectsize
(package (package
(name "r-effectsize") (name "r-effectsize")
(version "0.8.6") (version "0.8.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "effectsize" version)) (uri (cran-uri "effectsize" version))
(sha256 (sha256
(base32 (base32
"0gdk6f2713k2vhv7qa6dgxl6kgc6r6yb12hb27k4bbibj5njvvni")))) "07lfa0pvqhanjyyx9hs6gdqw1zyi1y21k539jgvgnrvixfilfkb2"))))
(properties `((upstream-name . "effectsize"))) (properties `((upstream-name . "effectsize")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -17678,17 +17681,24 @@ repositories.")
(define-public r-gh (define-public r-gh
(package (package
(name "r-gh") (name "r-gh")
(version "1.4.0") (version "1.4.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "gh" version)) (uri (cran-uri "gh" version))
(sha256 (sha256
(base32 (base32
"0wcbnnws472v1i6q012pbdxjpsd4clj6a2cscf73g6s2336rzik8")))) "1bwj8a2lfansyfx7fiwx2nv8yzhg1fi9ja1n6fk7dbzf64m3zgbn"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-cli r-gitcreds r-httr2 r-ini r-jsonlite r-rlang)) (list r-cli
r-gitcreds
r-glue
r-httr2
r-ini
r-jsonlite
r-lifecycle
r-rlang))
(native-inputs (native-inputs
(list r-knitr)) (list r-knitr))
(home-page "https://github.com/r-lib/gh#readme") (home-page "https://github.com/r-lib/gh#readme")
@ -18847,14 +18857,14 @@ features (e.g. local modes).")
(define-public r-arm (define-public r-arm
(package (package
(name "r-arm") (name "r-arm")
(version "1.13-1") (version "1.14-4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "arm" version)) (uri (cran-uri "arm" version))
(sha256 (sha256
(base32 (base32
"0dz9dnsky77da2mc198dr3600kz9vk75z1iihjarnsdrq68a4bf0")))) "1g8732naydqyv5pq1fkyb1i6qddv62jdmn2ys5lbdvx2zq5cnns2"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
(list r-abind (list r-abind
@ -21582,14 +21592,14 @@ model with finite state space using the Aalen-Johansen estimator.")
(define-public r-epi (define-public r-epi
(package (package
(name "r-epi") (name "r-epi")
(version "2.47.1") (version "2.48")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "Epi" version)) (uri (cran-uri "Epi" version))
(sha256 (sha256
(base32 (base32
"1a4h6hfpwcy3lb49y949h86vr4sdnjfbqqnr4jgc45mc64fhafp1")))) "06965d2x47hb1c7dbqyhhywgr7k9xdcms1v08m2cx52qg6cdkiyp"))))
(properties `((upstream-name . "Epi"))) (properties `((upstream-name . "Epi")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -21826,14 +21836,14 @@ the local machine to, say, distributed processing on a remote compute cluster.")
(define-public r-future-apply (define-public r-future-apply
(package (package
(name "r-future-apply") (name "r-future-apply")
(version "1.11.1") (version "1.11.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "future.apply" version)) (uri (cran-uri "future.apply" version))
(sha256 (sha256
(base32 (base32
"0zf22vip8w50pywc47xjghca9wkvcsvvfaa2yfaydwwzc3ss3bh2")))) "11qkv2r8ml1i95j5ra191ij5w1dvllgvr9ld5xnq43ayzaq3b9pl"))))
(properties `((upstream-name . "future.apply"))) (properties `((upstream-name . "future.apply")))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments
@ -24857,13 +24867,13 @@ that fills this gap.")
(define-public r-eulerr (define-public r-eulerr
(package (package
(name "r-eulerr") (name "r-eulerr")
(version "7.0.1") (version "7.0.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "eulerr" version)) (uri (cran-uri "eulerr" version))
(sha256 (sha256
(base32 (base32
"1c8yf94ga4h6rf89fyajxfsaq5z6dx1z2840371vxj7kwj9slg3c")))) "0aw4l338nymrmna7q01vxn2cc7wyzz3lhf1bwazy55qa4hmww3af"))))
(properties `((upstream-name . "eulerr"))) (properties `((upstream-name . "eulerr")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -34574,14 +34584,14 @@ simple interface for all functions.")
(define-public r-iml (define-public r-iml
(package (package
(name "r-iml") (name "r-iml")
(version "0.11.1") (version "0.11.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "iml" version)) (uri (cran-uri "iml" version))
(sha256 (sha256
(base32 (base32
"0fi37lv9czaxcc123f6r57607shqhs83ks96n2n0b93dl1qs0j52")))) "1sjv0cj50iivjlb2hri401z78rmidxxh6q5akscd42k98jyw2r30"))))
(properties `((upstream-name . "iml"))) (properties `((upstream-name . "iml")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -34592,7 +34602,6 @@ simple interface for all functions.")
r-future-apply r-future-apply
r-ggplot2 r-ggplot2
r-metrics r-metrics
r-prediction
r-r6)) r-r6))
(native-inputs (list r-knitr)) (native-inputs (list r-knitr))
(home-page "https://github.com/christophM/iml") (home-page "https://github.com/christophM/iml")
@ -36733,14 +36742,14 @@ package also provides functions to visualize the observed data and the MLE.")
(define-public r-metafor (define-public r-metafor
(package (package
(name "r-metafor") (name "r-metafor")
(version "4.4-0") (version "4.6-0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "metafor" version)) (uri (cran-uri "metafor" version))
(sha256 (sha256
(base32 (base32
"1m4762fn4zbjpnx9vxyy9gvzyzn3avxnqpzmbj45w8241g3s1b32")))) "0rl6w4j1fqvr7vn0dbzmir28xbi2wdn9m3lrxwjvvf47pp1lqd07"))))
(properties `((upstream-name . "metafor"))) (properties `((upstream-name . "metafor")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -38383,14 +38392,14 @@ in same length matches).")
(define-public r-textshape (define-public r-textshape
(package (package
(name "r-textshape") (name "r-textshape")
(version "1.7.3") (version "1.7.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "textshape" version)) (uri (cran-uri "textshape" version))
(sha256 (sha256
(base32 (base32
"0k9injxykgj2qprc7dygd7gafvcbh3r9x84qzaa1al21pk0dz7ds")))) "1g193dg4rhw8a1iwkyqsswlj95h9irm9xziclwc1mhd3jm5wyify"))))
(properties `((upstream-name . "textshape"))) (properties `((upstream-name . "textshape")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs

View File

@ -219,7 +219,7 @@ communication, encryption, decryption, signatures, etc.")
(define-public signify (define-public signify
(package (package
(name "signify") (name "signify")
(version "31") (version "32")
(home-page "https://github.com/aperezdc/signify") (home-page "https://github.com/aperezdc/signify")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -227,7 +227,7 @@ communication, encryption, decryption, signatures, etc.")
"/download/v" version "/signify-" version ".tar.xz")) "/download/v" version "/signify-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0x1bipfphnyvf2kl7n9q4gawaglma79368vb8whama6lxsggsm8i")) "1maq4wv7934gql95rr55pj419gnbj8jkrgn1f25jcg97v5zvklbd"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet '(delete-file-recursively "libbsd")))) (snippet '(delete-file-recursively "libbsd"))))
(build-system gnu-build-system) (build-system gnu-build-system)

View File

@ -148,6 +148,31 @@ contains the archive keys used for that.")
;; "The keys in the keyrings don't fall under any copyright." ;; "The keys in the keyrings don't fall under any copyright."
(license license:public-domain))) (license license:public-domain)))
(define-public pureos-archive-keyring
(package
(name "pureos-archive-keyring")
(version "2021.11.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://repo.puri.sm/pureos/pool/main/p/pureos-archive-keyring/"
"pureos-archive-keyring_" version ".tar.xz"))
(sha256
(base32
"1a0d084a98bycyhbw531646rbivvlfkdk6ldshl5dy6fvzmbci0d"))))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("keyrings/pureos-archive-keyring.gpg"
"share/keyrings/")
("keyrings/pureos-archive-removed-keys.gpg"
"share/keyrings/"))))
(home-page "https://source.puri.sm/pureos/core/pureos-archive-keyring")
(synopsis "GnuPG archive keys of the Pureos archive")
(description "The Pureos distribution signs its packages. This package
contains the archive keys used for that.")
(license (list license:public-domain ;; the keys
license:gpl2+)))) ;; see debian/copyright
(define-public trisquel-keyring (define-public trisquel-keyring
(package (package
(name "trisquel-keyring") (name "trisquel-keyring")
@ -233,6 +258,7 @@ contains the archive keys used for that.")
(add-after 'unpack 'patch-source (add-after 'unpack 'patch-source
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((debian #$(this-package-input "debian-archive-keyring")) (let ((debian #$(this-package-input "debian-archive-keyring"))
(pureos #$(this-package-input "pureos-archive-keyring"))
(trisquel #$(this-package-input "trisquel-keyring")) (trisquel #$(this-package-input "trisquel-keyring"))
(ubuntu #$(this-package-input "ubuntu-keyring"))) (ubuntu #$(this-package-input "ubuntu-keyring")))
(substitute* "Makefile" (substitute* "Makefile"
@ -246,6 +272,11 @@ contains the archive keys used for that.")
(("/usr") debian)) (("/usr") debian))
(substitute* "scripts/gutsy" (substitute* "scripts/gutsy"
(("/usr") ubuntu)) (("/usr") ubuntu))
(substitute* "scripts/amber"
(("/usr/share/keyrings/pureos-archive-keyring.gpg")
(string-append
pureos
"/share/keyrings/pureos-archive-keyring.gpg")))
(substitute* "scripts/robur" (substitute* "scripts/robur"
(("/usr/share/keyrings/trisquel-archive-keyring.gpg") (("/usr/share/keyrings/trisquel-archive-keyring.gpg")
(string-append (string-append
@ -258,6 +289,8 @@ contains the archive keys used for that.")
(substitute* (find-files "scripts") (substitute* (find-files "scripts")
(("keyring.*(debian-archive-keyring.gpg)"_ keyring) (("keyring.*(debian-archive-keyring.gpg)"_ keyring)
(string-append "keyring " debian "/share/keyrings/" keyring)) (string-append "keyring " debian "/share/keyrings/" keyring))
(("keyring.*(pureos-archive-keyring.gpg)" _ keyring)
(string-append "keyring " pureos "/share/keyrings/" keyring))
(("keyring.*(trisquel-archive-keyring.gpg)" _ keyring) (("keyring.*(trisquel-archive-keyring.gpg)" _ keyring)
(string-append "keyring " trisquel "/share/keyrings/" keyring)) (string-append "keyring " trisquel "/share/keyrings/" keyring))
(("keyring.*(ubuntu-archive-keyring.gpg)" _ keyring) (("keyring.*(ubuntu-archive-keyring.gpg)" _ keyring)
@ -284,6 +317,7 @@ contains the archive keys used for that.")
#:tests? #f)) ; no tests #:tests? #f)) ; no tests
(inputs (inputs
(list debian-archive-keyring (list debian-archive-keyring
pureos-archive-keyring
trisquel-keyring trisquel-keyring
ubuntu-keyring ubuntu-keyring
bash-minimal bash-minimal

View File

@ -28,6 +28,7 @@
;;; Copyright © 2023 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2023 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2023 Morgan Smith <Morgan.J.Smith@outlook.com> ;;; Copyright © 2023 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -70,6 +71,7 @@
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages graphics) #:use-module (gnu packages graphics)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -1294,29 +1296,35 @@ on your file system and offers to remove it. @command{rmlint} can find:
(define-public lf (define-public lf
(package (package
(name "lf") (name "lf")
;; When updating, remove go-github-com-gdamore-tcell-v2-2.3 from golang.scm. (version "31")
(version "27") (source
(source (origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/gokcehan/lf") (url "https://github.com/gokcehan/lf")
(commit (string-append "r" version)))) (commit (string-append "r" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "03icsf4c3j7295s1d8s6srz5gf09a3lghgw3zfcd86p03zhkzsaf"))))
"1piym8za0iw2s8yryh39y072f90mzisv89ffvn1jzb71f71mbfqa"))))
(build-system go-build-system) (build-system go-build-system)
(native-inputs
(list go-github-com-mattn-go-runewidth go-golang-org-x-term
go-gopkg-in-djherbis-times-v1 go-github-com-gdamore-tcell-v2-2.3))
(arguments (arguments
`(#:import-path "github.com/gokcehan/lf")) (list
#:go go-1.18
#:install-source? #f
#:import-path "github.com/gokcehan/lf"))
(native-inputs
(list go-github-com-djherbis-times
go-github-com-gdamore-tcell-v2
go-github-com-mattn-go-runewidth
go-golang-org-x-term
go-gopkg-in-djherbis-times-v1))
(home-page "https://github.com/gokcehan/lf") (home-page "https://github.com/gokcehan/lf")
(synopsis "Console file browser similar to Ranger") (synopsis "Console file browser similar to Ranger")
(description "lf (as in \"list files\") is a terminal file manager (description
written in Go. It is heavily inspired by ranger with some missing and "@code{lf} (as in \"list files\") is a terminal file manager written in
extra features. Some of the missing features are deliberately omitted Go. It is heavily inspired by @code{ranger} with some missing and extra
since they are better handled by external tools.") features. Some of the missing features are deliberately omitted since they
are better handled by external tools.")
(license license:expat))) (license license:expat)))
(define-public xfe (define-public xfe
@ -1656,7 +1664,7 @@ gone and to help you to clean it up.")
(define-public nwipe (define-public nwipe
(package (package
(name "nwipe") (name "nwipe")
(version "0.35") (version "0.36")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1665,7 +1673,7 @@ gone and to help you to clean it up.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1bj20y52qzz2ja56yf1pxqjg3lsda35c2k5hcj3lqm69jpsla2wq")))) (base32 "075zwakv3lva46v6wab00l5x7bs2k73mzzhwlbvm839r8a6gm0dh"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:phases (list #:phases

View File

@ -673,7 +673,7 @@ provisioning etc.")
(define-public cqfd (define-public cqfd
(package (package
(name "cqfd") (name "cqfd")
(version "5.4.0") (version "5.5.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -682,7 +682,7 @@ provisioning etc.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1kilrh4ahza19lka9218s2wkfcbk5r2cq9adczhlnlfggdrqnglg")))) "1wmrl1vv75af2pllm988xcw51j7bhb0p1xny91bcq9rkc3yxh5yz"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
;; The test suite requires a docker daemon and connectivity. ;; The test suite requires a docker daemon and connectivity.

View File

@ -192,7 +192,7 @@ of categories with some of the activities available in that category.
qtgraphicaleffects qtgraphicaleffects
qtmultimedia-5 qtmultimedia-5
qtquickcontrols2-5 qtquickcontrols2-5
qtsensors qtsensors-5
qtsvg-5)) qtsvg-5))
(home-page "https://gcompris.net/index-en.html") (home-page "https://gcompris.net/index-en.html")
(synopsis "Educational games for small children") (synopsis "Educational games for small children")
@ -566,7 +566,7 @@ a pen-tablet display and a beamer.")
(define-public fet (define-public fet
(package (package
(name "fet") (name "fet")
(version "6.18.1") (version "6.19.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -575,7 +575,7 @@ a pen-tablet display and a beamer.")
(list (string-append directory base) (list (string-append directory base)
(string-append directory "old/" base)))) (string-append directory "old/" base))))
(sha256 (sha256
(base32 "0yf94z4yybaw53jf0hzi1p53rwa91wl3g6pai7gsr4palssyfxw2")))) (base32 "1lrlwk9i2nc2d3ay5wajgv79nxkbl8hgv77aflgncikg4ma9yn55"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list

View File

@ -516,7 +516,7 @@ e.g. emacs-geiser-guile for Guile.")
(define-public emacs-gptel (define-public emacs-gptel
(package (package
(name "emacs-gptel") (name "emacs-gptel")
(version "0.8.0") (version "0.8.5")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -525,7 +525,7 @@ e.g. emacs-geiser-guile for Guile.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1n3kdylv50filla692j2vcjalw6yza80xlg90cw54m9jp9br8sch")))) "1w9sji73dixch1b5i420j44qb3jd0zknpypz46g33pbyhg9xwqln"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -1668,6 +1668,10 @@ libgit2 bindings for Emacs, intended to boost the performance of Magit.")
(lambda args (lambda args
(with-directory-excursion "lisp" (with-directory-excursion "lisp"
(apply (assoc-ref %standard-phases 'expand-load-path) args)))) (apply (assoc-ref %standard-phases 'expand-load-path) args))))
(replace 'make-autoloads
(lambda args
(with-directory-excursion "lisp"
(apply (assoc-ref %standard-phases 'make-autoloads) args))))
(replace 'install (replace 'install
(lambda args (lambda args
(with-directory-excursion "lisp" (with-directory-excursion "lisp"
@ -2711,15 +2715,25 @@ provides an optional IDE-like error list.")
(list (list
#:tests? #t #:tests? #t
#:test-command #:test-command
#~(list "emacs" "-Q" "--batch" "-L" "." #~(list "buttercup" "-L" ".")
"--eval" "(load-file \"tests/test-fb2-reader.el\")")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'qualify-paths (add-after 'unpack 'qualify-paths
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(let ((unzip (search-input-file inputs "/bin/unzip"))) (let ((unzip (search-input-file inputs "/bin/unzip")))
(substitute* "fb2-reader.el" (substitute* "fb2-reader.el"
(("unzip") unzip)))))))) (("unzip") unzip)))))
(add-after 'unpack 'fix-tests
(lambda _
;; Lexical binding is required for compatibility with recent
;; Buttercup.
(emacs-batch-edit-file "tests/test-fb2-reader.el"
'(progn
(insert ";;; -*-lexical-binding:t -*-\n")
(basic-save-buffer)))
;; Fix bogus function name.
(substitute* "tests/test-fb2-reader.el"
(("fb2-reader-render") "fb2-reader-render-xml")))))))
(inputs (list unzip)) (inputs (list unzip))
(native-inputs (native-inputs
(list emacs-async emacs-buttercup emacs-dash emacs-s)) (list emacs-async emacs-buttercup emacs-dash emacs-s))
@ -4727,7 +4741,7 @@ of bibliographic references.")
(define-public emacs-corfu (define-public emacs-corfu
(package (package
(name "emacs-corfu") (name "emacs-corfu")
(version "1.2") (version "1.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -4736,7 +4750,7 @@ of bibliographic references.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0l6hpsw2srmad0mhp6x46d5dsg678lvgz5l3glp1845hkg8a0pgi")))) (base32 "1nrwh00dy2ffzd3np8yk4n0vn0r5iqqhgcr40wbnv5qzgbdw9kas"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -6494,7 +6508,7 @@ files and directories.")
(define-public emacs-fountain-mode (define-public emacs-fountain-mode
(package (package
(name "emacs-fountain-mode") (name "emacs-fountain-mode")
(version "3.7.2") (version "3.7.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -6503,7 +6517,7 @@ files and directories.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0xy45inihqwaix49vxr5yiqyps4r2djkzdd4g7kkc0fv7kzrm1m4")))) (base32 "15r0pzdmimm72jx26zgdxf7fwwcppl45vvh33xx5wnhqzd140hwn"))))
(arguments (arguments
(list (list
#:phases #~(modify-phases %standard-phases #:phases #~(modify-phases %standard-phases
@ -7981,7 +7995,7 @@ mode-line.")
(define-public emacs-robe (define-public emacs-robe
(package (package
(name "emacs-robe") (name "emacs-robe")
(version "0.8.4") (version "0.8.6")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -7990,7 +8004,7 @@ mode-line.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0kvyfyr4b0z0l964a8z9shy8nlnxzxc2ljcc02gj2pn1rn1wz0gq")))) (base32 "14apmvbs89si3v5hsiz11dckp8fdfidm14lc090lswq7mgk7h79s"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
'(#:include (cons "^lib\\/" %default-include))) '(#:include (cons "^lib\\/" %default-include)))
@ -10900,7 +10914,7 @@ sgml/html integration, and indentation (working with sgml).")
(define-public emacs-jinx (define-public emacs-jinx
(package (package
(name "emacs-jinx") (name "emacs-jinx")
(version "1.4") (version "1.5")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -10910,7 +10924,7 @@ sgml/html integration, and indentation (working with sgml).")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "14zamk2s20f6dnv23v9snya0mi1bs2nq6xpp5bj06kiymzwhcqjw")))) (base32 "0g8sdfq6fqf6jnv7ig9cgkvmrdfzah6c94yr041anzkwappkziwx"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -10949,9 +10963,9 @@ sgml/html integration, and indentation (working with sgml).")
(propagated-inputs (list emacs-compat)) (propagated-inputs (list emacs-compat))
(native-inputs (list emacs-compat enchant pkg-config texinfo)) (native-inputs (list emacs-compat enchant pkg-config texinfo))
(home-page "https://github.com/minad/jinx") (home-page "https://github.com/minad/jinx")
(synopsis "Emacs Enchanted Spell Checker") (synopsis "Emacs spell checker based on Enchant library")
(description "Jinx is a just-in-time spell-checker for Emacs (description "Jinx is a just-in-time spell-checker for Emacs
based on the enchant library. It lazily highlights misspelled words in the based on the Enchant library. It lazily highlights misspelled words in the
text of the visible portion of the buffer by honouring window boundaries as text of the visible portion of the buffer by honouring window boundaries as
well as text folding, if any.") well as text folding, if any.")
(license license:gpl3+))) (license license:gpl3+)))
@ -12393,7 +12407,7 @@ expansion and overwriting the marked region with a new snippet completion.")
(define-public emacs-marginalia (define-public emacs-marginalia
(package (package
(name "emacs-marginalia") (name "emacs-marginalia")
(version "1.5") (version "1.6")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -12402,7 +12416,7 @@ expansion and overwriting the marked region with a new snippet completion.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "12ncif2lv6d7r2g87lyjr7idbqa283ijb3qgd5a61i3760czs7d6")))) (base32 "196gjpmzra9azhrnvlhx50dlc59390hq4wxn0f9m4n86ig4i5dr0"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -18384,6 +18398,25 @@ package.")
memoizing functions.") memoizing functions.")
(license license:unlicense))) (license license:unlicense)))
(define-public emacs-memory-usage
(package
(name "emacs-memory-usage")
(version "0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/memory-usage-"
version ".el"))
(sha256
(base32 "03qwb7sprdh1avxv3g7hhnhl41pwvnpxcpnqrikl7picy78h1gwj"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/memory-usage.html")
(synopsis "Analyze the memory usage of Emacs in various ways")
(description
"This package provides the command @code{memory-usage}, which lists all
buffers and how much memory they use.")
(license license:gpl3+)))
(define-public emacs-linum-relative (define-public emacs-linum-relative
(package (package
(name "emacs-linum-relative") (name "emacs-linum-relative")
@ -22455,7 +22488,7 @@ the pipeline, featuring the support for running @code{emacsclient}.")
(define-public emacs-jupyter (define-public emacs-jupyter
(package (package
(name "emacs-jupyter") (name "emacs-jupyter")
(version "0.8.3") (version "1.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -22464,7 +22497,7 @@ the pipeline, featuring the support for running @code{emacsclient}.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0acn964xlpn265vry35lrkkpf9z5y4ml96xg8ifadkxwxymm1sh2")))) (base32 "0rf8d83bzc05v0w7zpqwcd89cdvrxwzpyf55vmmzj5j755bgxvhs"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
(list emacs-company ;optional (list emacs-company ;optional
@ -22903,7 +22936,7 @@ match and total match information in the mode-line in various search modes.")
(define-public emacs-pg (define-public emacs-pg
(package (package
(name "emacs-pg") (name "emacs-pg")
(version "0.30") (version "0.31")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (url "https://github.com/emarsden/pg-el") (uri (git-reference (url "https://github.com/emarsden/pg-el")
@ -22911,7 +22944,7 @@ match and total match information in the mode-line in various search modes.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1g04izsnvxinbwvzx0sj643ix5jlwdd7dkl61nvaqkkkm3g35jp6")))) "0h9szmi1l76inr4706s2hpaldzvmnzw1dy7p2cm653pfr6gq8f6x"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/emarsden/pg-el") (home-page "https://github.com/emarsden/pg-el")
(synopsis "Emacs Lisp interface for PostgreSQL") (synopsis "Emacs Lisp interface for PostgreSQL")
@ -23621,7 +23654,7 @@ interactive commands and functions, such as @code{completing-read}.")
(define-public emacs-org-ql (define-public emacs-org-ql
(package (package
(name "emacs-org-ql") (name "emacs-org-ql")
(version "0.8.4") (version "0.8.6")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -23629,12 +23662,12 @@ interactive commands and functions, such as @code{completing-read}.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(sha256 (sha256
(base32 (base32
"07r9bx0bh7wyj5pbkhnrn8amzz3ynri94cxcxgcn1r3ypdhk6y85")) "0425r0qjl83d1zq2z9myish3iqa6pc9ml2jlwmffjnj5gm3vgfsj"))
(file-name (git-file-name name version)))) (file-name (git-file-name name version))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
#:tests? #t #:tests? #f ;FIXME: check phase freezes
#:test-command #~(list "buttercup" "-L" "."))) #:test-command #~(list "buttercup" "-L" ".")))
(native-inputs (native-inputs
(list emacs-buttercup emacs-with-simulated-input emacs-xr)) (list emacs-buttercup emacs-with-simulated-input emacs-xr))
@ -24261,7 +24294,7 @@ given function is invoked.")
(define-public emacs-datetime (define-public emacs-datetime
(package (package
(name "emacs-datetime") (name "emacs-datetime")
(version "0.9.1") (version "0.10")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -24270,7 +24303,7 @@ given function is invoked.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0d918312gpdiyx7zq8kdy19bdww6jqg94hs4j5l0n63bwrxsqdx2")))) (base32 "0prc29dhc0yvx1lv9ng9iif1x7c0k7x51x1d1z5pzz0vps0w1qsh"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
`(#:include (cons "^[^/]*\\.extmap$" %default-include))) `(#:include (cons "^[^/]*\\.extmap$" %default-include)))
@ -24278,8 +24311,9 @@ given function is invoked.")
(list emacs-extmap)) (list emacs-extmap))
(home-page "https://github.com/doublep/datetime/") (home-page "https://github.com/doublep/datetime/")
(synopsis "Library to work with dates in Emacs") (synopsis "Library to work with dates in Emacs")
(description "Parsing, formatting, matching and recoding (description
timestamps and date-time format strings library for Emacs.") "Datetime is an Emacs library for parsing, formatting, matching and
recoding timestamps and date-time format strings.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-org-mind-map (define-public emacs-org-mind-map
@ -25281,7 +25315,7 @@ powerful Org contents.")
(define-public emacs-org-re-reveal (define-public emacs-org-re-reveal
(package (package
(name "emacs-org-re-reveal") (name "emacs-org-re-reveal")
(version "3.26.0") (version "3.28.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -25290,7 +25324,7 @@ powerful Org contents.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "11if1c1a0i6i2wagjwqmvp2hfkv3slpq7r6dfbpkhlmils2hxr9p")))) (base32 "09rcjxqv8i7d87x8cnyblpnm3flpa7mdg609fvbzbs6dsc24zpjl"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
(list emacs-htmlize emacs-org)) (list emacs-htmlize emacs-org))
@ -27472,7 +27506,7 @@ image, rotate it, save modified images, and more.")
(define-public emacs-package-lint (define-public emacs-package-lint
(package (package
(name "emacs-package-lint") (name "emacs-package-lint")
(version "0.22") (version "0.23")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -27482,7 +27516,7 @@ image, rotate it, save modified images, and more.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1myhdhb3kwq03f3p7qgb9bk8srs1wlag4ch4kl26yb9213mzx8gv")))) "1xr7sq7pvvdw9prf2vds048s5s7fq1s0cxs21sxdc54sszy17nsg"))))
(arguments (arguments
(list #:include #~(cons "^data/" %default-include))) (list #:include #~(cons "^data/" %default-include)))
(build-system emacs-build-system) (build-system emacs-build-system)
@ -29397,7 +29431,7 @@ targets the Emacs based IDEs (CIDER, ESS, Geiser, Robe, SLIME etc.)")
(define-public emacs-buttercup (define-public emacs-buttercup
(package (package
(name "emacs-buttercup") (name "emacs-buttercup")
(version "1.34") (version "1.35")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -29407,7 +29441,7 @@ targets the Emacs based IDEs (CIDER, ESS, Geiser, Robe, SLIME etc.)")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"07bsbzqxsb6sbayriymy54bqcy7is7c61fpnm83mg9527w0w4g19")))) "0s5c7ia7b873dr6rqljkb1z4bf84zb3p3wjvcvpjhdcnf67m5x10"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -30654,53 +30688,52 @@ the standard @code{Dockerfile} file format.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public emacs-lsp-mode (define-public emacs-lsp-mode
(let ((commit "26c4d3e54ad2956623e64132312fe864274d346f") (package
(revision "1")) (name "emacs-lsp-mode")
(package (version "9.0.0")
(name "emacs-lsp-mode") (source
(version (git-version "8.0.1" revision commit)) (origin
(source (method git-fetch)
(origin (uri (git-reference
(method git-fetch) (url "https://github.com/emacs-lsp/lsp-mode")
(uri (git-reference (commit version)))
(url "https://github.com/emacs-lsp/lsp-mode") (file-name (git-file-name name version))
(commit commit))) (sha256
(file-name (git-file-name name version)) (base32 "1p4979qbmllmmszmnyml0msxkza4pm14rdacmqczbfs3cs9n6bd3"))))
(sha256 (build-system emacs-build-system)
(base32 "0klnik69b5y6s2q00vyshxymlg7k4x9x6m7wpsf7z9w12qn27alx")))) (arguments
(build-system emacs-build-system) (list
(arguments #:emacs emacs ;need libxml support
`(#:emacs ,emacs ;need libxml support #:phases
#:phases #~(modify-phases %standard-phases
(modify-phases %standard-phases (add-after 'unpack 'move-clients-libraries
(add-after 'unpack 'move-clients-libraries ;; Move all clients libraries at top-level, as is done, e.g., in
;; Move all clients libraries at top-level, as is done, e.g., in ;; MELPA.
;; MELPA. (lambda _
(lambda _ (for-each (lambda (f)
(for-each (lambda (f) (install-file f "."))
(install-file f ".")) (find-files "clients/" "\\.el$"))))
(find-files "clients/" "\\.el$")))) (add-before 'move-clients-libraries 'fix-patch-el-files
(add-before 'move-clients-libraries 'fix-patch-el-files ;; /bin/ksh is only used on macOS, which we don't support, so we
;; /bin/ksh is only used on macOS, which we don't support, so we ;; don't want to add it as input.
;; don't want to add it as input. (lambda _
(lambda _ (substitute* '("clients/lsp-csharp.el" "clients/lsp-fsharp.el")
(substitute* '("clients/lsp-csharp.el" "clients/lsp-fsharp.el") (("/bin/ksh") "ksh")))))))
(("/bin/ksh") "ksh"))))))) (propagated-inputs
(propagated-inputs (list emacs-dash
(list emacs-dash emacs-f
emacs-f emacs-ht
emacs-ht emacs-hydra
emacs-hydra emacs-markdown-mode
emacs-markdown-mode emacs-spinner))
emacs-spinner)) (home-page "https://emacs-lsp.github.io/lsp-mode/")
(home-page "https://emacs-lsp.github.io/lsp-mode/") (synopsis "Emacs client and library for the Language Server Protocol")
(synopsis "Emacs client and library for the Language Server Protocol") (description
(description "LSP mode is a client and library implementation for the Language
"LSP mode is a client and library implementation for the Language
Server Protocol. This mode creates an IDE-like experience by providing Server Protocol. This mode creates an IDE-like experience by providing
optional integration with other popular Emacs packages like Company, Flycheck, optional integration with other popular Emacs packages like Company, Flycheck,
and Projectile.") and Projectile.")
(license license:gpl3+)))) (license license:gpl3+)))
(define* (%emacs-lsp-treemacs-upstream-source #:key commit version hash) (define* (%emacs-lsp-treemacs-upstream-source #:key commit version hash)
(origin (origin
@ -32433,7 +32466,7 @@ through Dash docsets.")
(define-public emacs-devdocs (define-public emacs-devdocs
(package (package
(name "emacs-devdocs") (name "emacs-devdocs")
(version "0.6") (version "0.6.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -32441,7 +32474,7 @@ through Dash docsets.")
"https://elpa.gnu.org/packages/" "https://elpa.gnu.org/packages/"
"devdocs-" version ".tar")) "devdocs-" version ".tar"))
(sha256 (sha256
(base32 "17av2l61mr4y8la4cqiq1dnaznni4xirr5k3wdix1jzl3q1apypy")))) (base32 "04m3jd3wymrsdlb1i7z6dz9pf1q8q38ihkbn3jisdca6xkk9jd6p"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/astoff/devdocs.el") (home-page "https://github.com/astoff/devdocs.el")
(synopsis "Emacs viewer for DevDocs") (synopsis "Emacs viewer for DevDocs")
@ -32783,14 +32816,14 @@ well as an option for visually flashing evaluated s-expressions.")
(define-public emacs-tramp (define-public emacs-tramp
(package (package
(name "emacs-tramp") (name "emacs-tramp")
(version "2.6.2.2") (version "2.6.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/" (uri (string-append "https://elpa.gnu.org/packages/"
"tramp-" version ".tar")) "tramp-" version ".tar"))
(sha256 (sha256
(base32 "0bbsff2qr71f70nxhdi19b3jzpv6bgfb7x7qkrccsygvsvgyrb2h")))) (base32 "0z44mfpvn4qy2xc2fsiahw3xir140ljna8aq45dcb7qnmr044xjb"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -33820,7 +33853,7 @@ time.")
(define-public emacs-mastodon (define-public emacs-mastodon
(package (package
(name "emacs-mastodon") (name "emacs-mastodon")
(version "1.0.18") (version "1.0.19")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -33829,7 +33862,7 @@ time.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "1l4arid01m5475wq4sy8j598ww13847sbpg9grl71r72rs83071w")))) (base32 "096zsjlqx2cv4zq607f9n7mr60d5avhfczf3nxsa8wkjsj97qrlh"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -36269,20 +36302,20 @@ state to and restoring it from a file, with auto-saving and backups.")
(define-public emacs-company-emoji (define-public emacs-company-emoji
(package (package
(name "emacs-company-emoji") (name "emacs-company-emoji")
(version "2.8.0") (version "3.0.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/dunn/company-emoji/") (url "https://codeberg.org/egirl/company-emoji")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0j35z7hjcg3dkwgd7mdx1yaxcmxkn00h91y9kl8qdci7m4lja460")))) (base32 "1afy2f1ymzr518npbhy5296kaqshax5hs2ij7wgl28h0hsa2mnk1"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
(list emacs-company)) (list emacs-company))
(home-page "https://github.com/dunn/company-emoji/") (home-page "https://codeberg.org/egirl/company-emoji")
(synopsis "Company completion back-end for emoji") (synopsis "Company completion back-end for emoji")
(description (description
"This library is a Company back-end providing auto-completion for "This library is a Company back-end providing auto-completion for
@ -37988,7 +38021,11 @@ released, and track their progress in watching a series.")
;; Disable tests that need network access. ;; Disable tests that need network access.
(substitute* (list "tests/unit/test-webpaste-provider-creation.el" (substitute* (list "tests/unit/test-webpaste-provider-creation.el"
"tests/integration/test-webpaste-providers.el") "tests/integration/test-webpaste-providers.el")
(("describe") "xdescribe"))))))) (("describe") "xdescribe"))
(emacs-batch-edit-file "tests/integration/test-webpaste-providers.el"
'(progn
(insert ";;; -*-lexical-binding:t -*-\n")
(basic-save-buffer))))))))
(native-inputs (native-inputs
(list emacs-buttercup)) (list emacs-buttercup))
(propagated-inputs (propagated-inputs
@ -38824,8 +38861,8 @@ headlines, keywords, tables and source blocks.")
(license license:gpl3+)))) ; License is in pyimport.el (license license:gpl3+)))) ; License is in pyimport.el
(define-public emacs-straight-el (define-public emacs-straight-el
(let ((commit "039e5c9a9b5c00749602afb41341e9e77ba09429") (let ((commit "b3760f5829dba37e855add7323304561eb57a3d4")
(revision "2")) (revision "3"))
(package (package
(name "emacs-straight-el") (name "emacs-straight-el")
(version (git-version "0" revision commit)) (version (git-version "0" revision commit))
@ -38838,7 +38875,7 @@ headlines, keywords, tables and source blocks.")
(commit commit))) (commit commit)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "05avzakgkwzrj1pxa1pkcv96knqq4mnkv2cszn4cs4kmvr2mchxm")))) (base32 "10kvm2gzn7yf2wkfprq7cm6m2la83rdi394rcrsxql3yyhd0v599"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
(list (list
@ -38858,12 +38895,7 @@ headlines, keywords, tables and source blocks.")
(("\"git\"") (("\"git\"")
(string-append "\"" (string-append "\""
(search-input-file inputs "/bin/git") (search-input-file inputs "/bin/git")
"\""))))) "\""))))))))
(add-after 'check 'delete-tests
;; "tests" directory includes bogus ".el" files that can make
;; `patch-el-files' phase fail.
(lambda _
(delete-file-recursively "tests"))))))
(native-inputs (native-inputs
(list texinfo)) (list texinfo))
(inputs (inputs

View File

@ -737,9 +737,7 @@ multipole-accelerated algorithm.")
(list boost (list boost
libgit2 libgit2
qtbase-5 qtbase-5
;; TODO: Needs to be renamed to qtserialport-5. when version 6 is qtserialport-5
;; packed.
qtserialport
qtsvg-5 qtsvg-5
zlib)) zlib))
(home-page "https://fritzing.org") (home-page "https://fritzing.org")
@ -1588,7 +1586,7 @@ or an Ethernet connection.")
(native-inputs (native-inputs
`(("fortran" ,gfortran))) `(("fortran" ,gfortran)))
(inputs (inputs
(list lapack)) (list openblas))
(home-page "https://github.com/stevengj/harminv") (home-page "https://github.com/stevengj/harminv")
(synopsis "Harmonic inversion solver") (synopsis "Harmonic inversion solver")
(description (description
@ -1654,7 +1652,7 @@ for scientific simulations.")
("gsl" ,gsl) ("gsl" ,gsl)
("guile" ,guile-2.2) ("guile" ,guile-2.2)
("hdf5" ,hdf5) ("hdf5" ,hdf5)
("lapack" ,lapack) ("openblas" ,openblas)
("libctl" ,guile-libctl) ("libctl" ,guile-libctl)
("readline" ,readline) ("readline" ,readline)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -1696,7 +1694,7 @@ fully-vectorial and three-dimensional methods.")
("guile" ,guile-2.2) ("guile" ,guile-2.2)
("harminv" ,harminv) ("harminv" ,harminv)
("hdf5" ,hdf5) ("hdf5" ,hdf5)
("lapack" ,lapack) ("openblas" ,openblas)
("libctl" ,guile-libctl) ("libctl" ,guile-libctl)
("mpb" ,mpb) ("mpb" ,mpb)
("zlib" ,zlib))) ("zlib" ,zlib)))
@ -4229,7 +4227,7 @@ netlists from the drawn schematic, allowing the simulation of the circuit.")
"08rqhl6a5a8s67a8yl16944zgcsnnb08xfv4klzyqwlvaqgfp783")))) "08rqhl6a5a8s67a8yl16944zgcsnnb08xfv4klzyqwlvaqgfp783"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (list qttools-5)) (native-inputs (list qttools-5))
(inputs (list qtbase-5 qtserialport)) (inputs (list qtbase-5 qtserialport-5))
(arguments (arguments
(list #:tests? #f ; no tests. (list #:tests? #f ; no tests.
#:phases #~(modify-phases %standard-phases #:phases #~(modify-phases %standard-phases

View File

@ -76,6 +76,7 @@
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check) #:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto) #:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages jemalloc) #:use-module (gnu packages jemalloc)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)

View File

@ -147,7 +147,7 @@
;; <https://bitcoincore.org/en/lifecycle/#schedule>. ;; <https://bitcoincore.org/en/lifecycle/#schedule>.
(package (package
(name "bitcoin-core") (name "bitcoin-core")
(version "26.0") (version "26.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -155,7 +155,7 @@
version "/bitcoin-" version ".tar.gz")) version "/bitcoin-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"18f0rl7nzr64m54d6hmrphg7z39mmj2ix47kv78n5nr8dqkrj7db")))) "1vimkcm5bd6dyncy6kw16ibkcbykv526ajgh175j0jkvf5fywr4i"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
(list autoconf (list autoconf
@ -2322,7 +2322,7 @@ and manipulation.")
(define-public xmrig (define-public xmrig
(package (package
(name "xmrig") (name "xmrig")
(version "6.21.0") (version "6.21.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2330,7 +2330,7 @@ and manipulation.")
(url "https://github.com/xmrig/xmrig") (url "https://github.com/xmrig/xmrig")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (base32 "1nmzgwd2r7ra7g4p0s5b77bgh099hf1kisbv4d946c9yiwbdzqgc")) (sha256 (base32 "0rxnrn92v2w9f0zyv4zchilnrc3wa8nw4d4b4isaxx411zxgds6i"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; TODO: Try to use system libraries instead of bundled ones in ;; TODO: Try to use system libraries instead of bundled ones in

View File

@ -1503,14 +1503,16 @@ having to run @command{qmk} as root when flashing the firmware.")
(define* (make-qmk-firmware/implementation keyboard keymap (define* (make-qmk-firmware/implementation keyboard keymap
#:key (description "") #:key (description "")
keymap-json keymap-json
keymap-source-directory) keymap-source-directory
keyboard-source-directory)
"Return a package to build the QMK firmware for KEYBOARD with KEYMAP. "Return a package to build the QMK firmware for KEYBOARD with KEYMAP.
Keyboard should be the name of a sub-directory under the @file{keyboards} Keyboard should be the name of a sub-directory under the @file{keyboards} directory.
directory. For custom keymaps, KEYMAP-JSON, a file-like object of a JSON For custom keymaps, KEYMAP-JSON, a file-like object of a JSON representation of
representation of KEYMAP as generated by the @url{https://config.qmk.fm/, QMK KEYMAP as generated by the @url{https://config.qmk.fm/, QMK Configurator} tool or
Configurator} tool or KEYMAP-SOURCE-DIRECTORY, a file-like object directory KEYMAP-SOURCE-DIRECTORY, a file-like object directory containing the keymap source
containing the keymap source files files such as @file{keymap.c}, can be files files such as @file{keymap.c}, can be provided. For keyboards not available in
provided." upstream repository, provide a file-like object directory containing the whole
keyboard definition in KEYBOARD-SOURCE-DIRECTORY."
(package (package
(name (string-append "qmk-firmware-" (name (string-append "qmk-firmware-"
(string-replace-substring keyboard "_" "-") "-" (string-replace-substring keyboard "_" "-") "-"
@ -1570,6 +1572,15 @@ provided."
(base32 (base32
"1rmhm4rxvq8skxqn6vc4n4ly1ak6whj7c386zbsci4pxx548n9h4")))) "1rmhm4rxvq8skxqn6vc4n4ly1ak6whj7c386zbsci4pxx548n9h4"))))
"lib/lufa"))) "lib/lufa")))
#$@(if keyboard-source-directory
#~((add-after 'unpack 'copy-keyboard-source-directory
(lambda _
(let ((keyboard-dir #$(string-append "keyboards/" keyboard)))
(false-if-exception (delete-file-recursively
keyboard-dir))
(copy-recursively #$keyboard-source-directory
keyboard-dir)))))
#~())
#$@(if keymap-source-directory #$@(if keymap-source-directory
#~((add-after 'unpack 'copy-keymap-source-directory #~((add-after 'unpack 'copy-keymap-source-directory
(lambda _ (lambda _

View File

@ -17,7 +17,7 @@
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com> ;;; Copyright © 2019, 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019 Jethro Cao <jethrocao@gmail.com> ;;; Copyright © 2019 Jethro Cao <jethrocao@gmail.com>
;;; Copyright © 2020-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020-2024 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si> ;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
@ -2828,14 +2828,14 @@ a.k.a. XenoCollide) as described in Game Programming Gems 7.")
(define-public ode (define-public ode
(package (package
(name "ode") (name "ode")
(version "0.16.4") (version "0.16.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://bitbucket.org/odedevs/ode/downloads/" (uri (string-append "https://bitbucket.org/odedevs/ode/downloads/"
"ode-" version ".tar.gz")) "ode-" version ".tar.gz"))
(sha256 (sha256
(base32 "0rrl4pn4h3g0ay0i3n61pr6bwyk9vgar17vjal56pj66h617n0vi")) (base32 "0ya6slmy2iysx3fql7w7r56c7gsk93qp1apfjn3raw252vfmx1xs"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(begin '(begin
@ -2868,38 +2868,34 @@ computer games, 3D authoring tools and simulation tools.")
(license (list license:lgpl2.1+ license:expat)))) (license (list license:lgpl2.1+ license:expat))))
(define-public chipmunk (define-public chipmunk
(package (let ((commit "d0239ef4599b3688a5a336373f7d0a68426414ba")
(name "chipmunk") (revision "1"))
(version "7.0.3") (package
(source (name "chipmunk")
(origin (version (git-version "7.0.3" revision commit))
(method git-fetch) (source
(uri (git-reference (origin
(url "https://github.com/slembcke/Chipmunk2D") (method git-fetch)
(commit (string-append "Chipmunk-" version)))) (uri (git-reference
(file-name (git-file-name name version)) (url "https://github.com/slembcke/Chipmunk2D")
(sha256 (commit commit)))
(base32 "1qmkn01g06p3rnhmbyffmjns6wj5vhgf9cscigk3wzxcpwv1hyxb")) (file-name (git-file-name name version))
(modules '((guix build utils))) (sha256
(snippet (base32 "1910rfnanhna99bhfiyny3ki7aip2i9p4jzmwsfcg16m9gip5fd6"))
#~(begin (modules '((guix build utils)))))
;; This is fixed in the upstream repository but the fix (build-system cmake-build-system)
;; has not been released. (arguments
(substitute* "src/cpHastySpace.c" (list #:tests? #f ;no test
(("#include <sys/sysctl.h>") "")))))) #:configure-flags
(build-system cmake-build-system) #~(list "-DBUILD_STATIC=OFF"
(arguments "-DBUILD_DEMOS=OFF")))
(list #:tests? #f ;no test (inputs
#:configure-flags (list freeglut libxmu libxrandr))
#~(list "-DBUILD_STATIC=OFF" (home-page "https://chipmunk-physics.net/")
"-DBUILD_DEMOS=OFF"))) (synopsis "Fast and lightweight 2D game physics library")
(inputs (description "Chipmunk is a simple, lightweight, fast and portable 2D
(list freeglut libxmu libxrandr))
(home-page "https://chipmunk-physics.net/")
(synopsis "Fast and lightweight 2D game physics library")
(description "Chipmunk is a simple, lightweight, fast and portable 2D
rigid body physics library written in C.") rigid body physics library written in C.")
(license license:expat))) (license license:expat))))
(define-public box2d (define-public box2d
(package (package

View File

@ -10528,7 +10528,7 @@ and chess engines.")
(native-inputs (native-inputs
(list qttools-5)) (list qttools-5))
(inputs (inputs
(list qtbase-5 qtmultimedia-5 qtspeech qtsvg-5 zlib)) (list qtbase-5 qtmultimedia-5 qtspeech-5 qtsvg-5 zlib))
(arguments (arguments
`(#:tests? #f `(#:tests? #f
#:phases #:phases

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2012-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2023 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2023 Andreas Enge <andreas@enge.fr>
@ -969,10 +969,18 @@ using compilers other than GCC."
(if (and (target-ppc64le?) (if (and (target-ppc64le?)
(version>=? version "11") (version>=? version "11")
(not (version>=? version "12"))) (not (version>=? version "12")))
#~((add-after 'unpack 'patch-powerpc ;; TODO: Drop the 'else' branch below on next rebuild
(lambda* (#:key inputs #:allow-other-keys) ;; cycle.
(invoke "patch" "--force" "-p1" "-i" (if (%current-target-system)
(assoc-ref inputs "powerpc64le-patch"))))) #~((add-after 'unpack 'patch-powerpc ;correct
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(invoke "patch" "--force" "-p1" "-i"
(assoc-ref (or native-inputs inputs)
"powerpc64le-patch")))))
#~((add-after 'unpack 'patch-powerpc ;wrong
(lambda* (#:key inputs #:allow-other-keys)
(invoke "patch" "--force" "-p1" "-i"
(assoc-ref inputs "powerpc64le-patch"))))))
'())) '()))
;; Force rs6000 (i.e., powerpc) libdir to be /lib and not /lib64. ;; Force rs6000 (i.e., powerpc) libdir to be /lib and not /lib64.
(add-before 'chdir 'fix-rs6000-libdir (add-before 'chdir 'fix-rs6000-libdir

View File

@ -101,6 +101,7 @@
#:use-module (gnu packages imagemagick) #:use-module (gnu packages imagemagick)
#:use-module (gnu packages java) #:use-module (gnu packages java)
#:use-module (gnu packages kde) #:use-module (gnu packages kde)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
@ -1229,6 +1230,47 @@ development.")
(home-page "https://www.gaia-gis.it/fossil/spatialite_gui/index") (home-page "https://www.gaia-gis.it/fossil/spatialite_gui/index")
(license license:gpl3+))) (license license:gpl3+)))
(define-public pdal
(package
(name "pdal")
(version "2.7.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/PDAL/PDAL")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0gg5lcshlmn3wwak42xr0b8a8gdr4572d7hrcvxn2291kp2c3096"))))
(build-system cmake-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "ctest" "-E" ;; This test hangs.
"pdal_io_stac_reader_test")))))))
(native-inputs (list python))
(inputs (list gdal
h3
libgeotiff
libunwind
libxml2
nlohmann-json
openssl
proj
utfcpp
xz
`(,zstd "lib")))
(home-page "https://pdal.io/")
(synopsis "Point Data Abstraction Library")
(description "PDAL is a C++ library for translating and manipulating point
cloud data. It is very much like the GDAL library which handles raster and
vector data.")
(license license:bsd-3)))
(define-public gdal (define-public gdal
(package (package
(name "gdal") (name "gdal")
@ -1911,6 +1953,34 @@ persisted.
") ")
(license license:expat))) (license license:expat)))
(define-public libmseed
(package
(name "libmseed")
(version "3.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/EarthScope/libmseed")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"05sk2h19c7ja98s75b7hbn2cwnjc5l6dr59c23fgnaimmad2rfn7"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases #~(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://earthscope.github.io/libmseed/")
(synopsis "Library for the miniSEED data format")
(description "The miniSEED library provides a framework for manipulation
of SEED data records, a format for commonly used for seismological time
series and related data. The library includes the functionality to read
and write data records, in addition to reconstructing time series
from multiple records.")
(license license:asl2.0)))
(define-public python-rtree (define-public python-rtree
(package (package
(name "python-rtree") (name "python-rtree")
@ -2574,7 +2644,7 @@ track your position right from your laptop.")
qtbase-5 qtbase-5
qtimageformats-5 qtimageformats-5
qtlocation qtlocation
qtsensors qtsensors-5
zlib)) zlib))
(native-inputs (native-inputs
(list doxygen (list doxygen
@ -2609,7 +2679,6 @@ orienteering sport.")
("gdal" ,gdal) ("gdal" ,gdal)
("geos" ,geos) ("geos" ,geos)
("glu" ,glu) ("glu" ,glu)
("lapack" ,lapack)
("libpng" ,libpng) ("libpng" ,libpng)
("libtiff" ,libtiff) ("libtiff" ,libtiff)
("mesa" ,mesa) ("mesa" ,mesa)
@ -2643,6 +2712,11 @@ orienteering sport.")
(guix build python-build-system)) (guix build python-build-system))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'fix-lapack
(lambda _
(substitute* "./configure"
(("-lblas") "-lopenblas")
(("-llapack") "-lopenblas"))))
(replace 'configure (replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
(let ((shell (search-input-file inputs "/bin/bash"))) (let ((shell (search-input-file inputs "/bin/bash")))
@ -2977,7 +3051,7 @@ growing set of geoscientific methods.")
qtkeychain qtkeychain
qtlocation qtlocation
qtmultimedia-5 qtmultimedia-5
qtserialport qtserialport-5
qtsvg-5 qtsvg-5
qwt qwt
;; saga ;; saga

View File

@ -19,6 +19,7 @@
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be> ;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com> ;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi> ;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
;;; Copyright © 2024 Zheng Junjie <873216071@qq.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -202,12 +203,12 @@ shared NFS home directories.")
(arguments (arguments
(substitute-keyword-arguments (package-arguments dbus) (substitute-keyword-arguments (package-arguments dbus)
((#:phases phases) ((#:phases phases)
`(modify-phases ,phases #~(modify-phases #$phases
(add-after 'unpack 'customize-config (add-after 'unpack 'customize-config
(lambda _ (lambda _
(substitute* "bus/session.conf.in" (substitute* "bus/session.conf.in"
(("@SYSCONFDIR_FROM_PKGDATADIR@/dbus-1/session-local.conf") (("@SYSCONFDIR_FROM_PKGDATADIR@/dbus-1/session-local.conf")
"/var/run/jami/session-local.conf"))))))))))) "/var/run/jami/session-local.conf")))))))))))
(define-public dbus-1.15.0 (define-public dbus-1.15.0
;; Dbus 1.15.2 has a breaking change. ;; Dbus 1.15.2 has a breaking change.

View File

@ -1011,7 +1011,7 @@ dark, switch backgrounds and run custom commands at sunset and sunrise.")
(define-public gpaste (define-public gpaste
(package (package
(name "gpaste") (name "gpaste")
(version "42.2") (version "44.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1020,12 +1020,12 @@ dark, switch backgrounds and run custom commands at sunset and sunrise.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0qq2p19p3r3lz8yfynpnf36cipv54bzdbmq1x5zgwhyl4yl41g28")) "1amfr8hwf7401xa3fzaa8w17w3v3lxx0fkr7rqkkyfy57iavrykk"))
(patches (patches
(search-patches "gpaste-fix-paths.patch")))) (search-patches "gpaste-fix-paths.patch"))))
(build-system meson-build-system) (build-system meson-build-system)
(native-inputs (native-inputs
(list gcr-3 (list gcr
gettext-minimal gettext-minimal
gobject-introspection gobject-introspection
(list glib "bin") ; for glib-compile-resources (list glib "bin") ; for glib-compile-resources
@ -1033,11 +1033,11 @@ dark, switch backgrounds and run custom commands at sunset and sunrise.")
vala)) vala))
(inputs (inputs
(list appstream-glib (list appstream-glib
desktop-file-utils ; for update-desktop-database
gjs gjs
gtk gtk+
mutter mutter
libadwaita libadwaita))
libarchive))
(arguments (arguments
(list #:glib-or-gtk? #true (list #:glib-or-gtk? #true
#:configure-flags #:configure-flags

View File

@ -3278,7 +3278,7 @@ the GNOME desktop environment.")
(define-public blueprint-compiler (define-public blueprint-compiler
(package (package
(name "blueprint-compiler") (name "blueprint-compiler")
(version "0.4.0") (version "0.12.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -3288,7 +3288,7 @@ the GNOME desktop environment.")
(file-name (string-append name "-" version "-checkout")) (file-name (string-append name "-" version "-checkout"))
(sha256 (sha256
(base32 (base32
"0hj7f4xhwjc4x32r3lswwclbw37fw3spy806g4plkmym25hz4ydy")))) "15cm2bksmygf8sifryrawxxblvvw27p4w3m42gvp3jlq50a15xm6"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list (list
@ -3303,13 +3303,15 @@ the GNOME desktop environment.")
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'wrap 'wrap-python (add-after 'wrap 'wrap-python
(assoc-ref python:%standard-phases 'wrap)) (assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-gi (add-before 'check 'pre-check
(lambda* (#:key outputs #:allow-other-keys) (lambda _
(let ((out (assoc-ref outputs "out")) (system "Xvfb :1 &")
(gi-typelib-path (getenv "GI_TYPELIB_PATH"))) (setenv "DISPLAY" ":1"))))))
(wrap-program (string-append out "/bin/blueprint-compiler") (native-inputs (list gtk
`("GI_TYPELIB_PATH" ":" suffix (,gi-typelib-path))))))))) libadwaita
(native-inputs (list gtk python-pygobject python)) python
python-pygobject
xorg-server-for-tests))
(inputs (list python)) (inputs (list python))
(synopsis "Template markup language") (synopsis "Template markup language")
(description (description
@ -3318,6 +3320,22 @@ compiles to GTKBuilder XML.")
(home-page "https://gitlab.gnome.org/jwestman/blueprint-compiler") (home-page "https://gitlab.gnome.org/jwestman/blueprint-compiler")
(license license:lgpl3+))) (license license:lgpl3+)))
(define-public blueprint-compiler-0.4
(package
(inherit blueprint-compiler)
(name "blueprint-compiler")
(version "0.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://gitlab.gnome.org/jwestman/blueprint-compiler")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0hj7f4xhwjc4x32r3lswwclbw37fw3spy806g4plkmym25hz4ydy"))))))
(define-public cambalache (define-public cambalache
(package (package
(name "cambalache") (name "cambalache")
@ -7784,7 +7802,7 @@ javascript engine and the GObject introspection framework.")
(define-public gedit (define-public gedit
(package (package
(name "gedit") (name "gedit")
(version "44.1") (version "44.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/" (uri (string-append "mirror://gnome/sources/" name "/"
@ -7792,7 +7810,7 @@ javascript engine and the GObject introspection framework.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1nlgbnagahymb8l41kgz3nwc4p9cj3zx39428z6zik44fa6kfqh4")))) "0j8p7lnf05sbw194babasfhvpd3pp29f17kvzn16ffnh34psn3y9"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list (list
@ -10309,6 +10327,7 @@ playing media, scanning, and much more.")
pulseaudio pulseaudio
shared-mime-info shared-mime-info
system-config-printer system-config-printer
xdg-desktop-portal
xdg-user-dirs xdg-user-dirs
yelp yelp
zenity)) zenity))
@ -12632,7 +12651,7 @@ non-privileged user.")
(define-public geary (define-public geary
(package (package
(name "geary") (name "geary")
(version "43.0") (version "44.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -12641,7 +12660,7 @@ non-privileged user.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"05b8c5ljzx1ly7wq8jzpv8psxmsdlz395sr17xwj49nh495nflz5")))) "1cx1jfaxsbkxm8774wf8n7ss2n73bzgk4yi2f9i3ab698ygh0h68"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list #:glib-or-gtk? #t (list #:glib-or-gtk? #t
@ -13422,7 +13441,7 @@ profiler via Sysprof, debugging support, and more.")
(define-public komikku (define-public komikku
(package (package
(name "komikku") (name "komikku")
(version "1.17.0") (version "1.34.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -13432,7 +13451,7 @@ profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0snb6vdgb3l2mw0kr0yb4zjpq46w56rpi554vqn5ks6qwywvs58g")))) "044m3z7h1hi2avx4z6qgjzhgn1fkf1iclxhr4j7pb6flbqvwnxhs"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list (list
@ -13469,6 +13488,7 @@ profiler via Sysprof, debugging support, and more.")
python-beautifulsoup4 python-beautifulsoup4
python-brotli python-brotli
python-cloudscraper python-cloudscraper
python-colorthief
python-dateparser python-dateparser
python-emoji python-emoji
python-keyring python-keyring
@ -13485,7 +13505,8 @@ profiler via Sysprof, debugging support, and more.")
python-unidecode python-unidecode
webkitgtk)) webkitgtk))
(native-inputs (native-inputs
(list desktop-file-utils (list blueprint-compiler
desktop-file-utils
gettext-minimal gettext-minimal
`(,glib "bin") `(,glib "bin")
gobject-introspection gobject-introspection

View File

@ -79,6 +79,7 @@
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix deprecation)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system gnu)) #:use-module (guix build-system gnu))
@ -163,14 +164,14 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd (define-public libmicrohttpd
(package (package
(name "libmicrohttpd") (name "libmicrohttpd")
(version "0.9.77") (version "1.0.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-" (uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"185hfvdxs3njcja5rz5c9v73x4x97k0s8vkah396000ja6hj6w4y")))) "151bi13xx8dz5c9v33chp6ch5q8wmbxb9z7l37g4vqsdkgy0k7m8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:configure-flags (list #:configure-flags
@ -188,77 +189,12 @@ authentication and support for SSL3 and TLS.")
(license license:lgpl2.1+) (license license:lgpl2.1+)
(home-page "https://www.gnu.org/software/libmicrohttpd/"))) (home-page "https://www.gnu.org/software/libmicrohttpd/")))
(define-public gnurl (define-deprecated/public-alias gnurl curl)
(package
(name "gnurl")
(version "7.70.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gnunet/gnurl-" version ".tar.gz"))
(sha256
(base32
"0px9la8v4bj1dzxb95fx3yxk0rcjqjrxpj733ga27cza45wwzkqa"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 1.8 MiB of man3 pages
(inputs `(("gnutls" ,gnutls/dane)
("libidn2" ,libidn2)
("zlib" ,zlib)))
(native-inputs
(list libtool perl pkg-config python))
(arguments
`(#:configure-flags
;; All of these produce errors during configure.
(list "--disable-ftp"
"--disable-file"
"--disable-ldap"
"--disable-rtsp"
"--disable-dict"
"--disable-telnet"
"--disable-tftp"
"--disable-pop3"
"--disable-imap"
"--disable-smb"
"--disable-smtp"
"--disable-gopher"
"--without-ssl"
"--without-libpsl"
"--without-librtmp"
"--disable-ntlm-wb")
#:phases
(modify-phases %standard-phases
(add-after 'install 'move-man3-pages
(lambda* (#:key outputs #:allow-other-keys)
;; Move section 3 man pages to "doc".
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(mkdir-p (string-append doc "/share/man"))
(rename-file (string-append out "/share/man/man3")
(string-append doc "/share/man/man3"))
#t)))
;; We have to patch runtests.pl in tests/ directory
(replace 'check
(lambda _
(substitute* "tests/runtests.pl"
(("/bin/sh") (which "sh")))
;; Make test output more verbose.
(invoke "make" "-C" "tests" "test"))))))
(synopsis "Microfork of cURL with support for the HTTP/HTTPS/GnuTLS subset of cURL")
(description
"Gnurl is a microfork of cURL, a command line tool for transferring data
with URL syntax. While cURL supports many crypto backends, libgnurl only
supports HTTP, HTTPS and GnuTLS.")
(license (license:non-copyleft "file://COPYING"
"See COPYING in the distribution."))
(properties '((ftp-server . "ftp.gnu.org")
(ftp-directory . "/gnunet")))
(home-page "https://gnunet.org/en/gnurl.html")))
(define-public gnunet (define-public gnunet
(package (package
(name "gnunet") (name "gnunet")
(version "0.20.0") (version "0.21.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -266,7 +202,7 @@ supports HTTP, HTTPS and GnuTLS.")
".tar.gz")) ".tar.gz"))
(sha256 (sha256
(base32 (base32
"064mmhksznbsymanikwqkgmdhk2f0zjll2aq2cmxa14wm5w9w0jn")))) "0p3q9590bm0d6q6p17jcbq2yiciqmvk5ys6pwdrp4257mhz8prlk"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list bluez (list bluez
@ -306,15 +242,17 @@ supports HTTP, HTTPS and GnuTLS.")
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'disable-problematic-tests (add-after 'unpack 'disable-problematic-tests
(lambda _ (lambda _
(substitute* "src/cadet/Makefile.in" ;; The 'test_communicator_bidirect-tcp' fails
;; The speed_reliable tests appear to be unreliable (see: ;; non-deterministically (see:
;; https://bugs.gnunet.org/view.php?id=7787). ;; https://bugs.gnunet.org/view.php?id=8689).
(("test_cadet_[0-9]+_speed_reliable\\$\\(EXEEXT)") (substitute* "src/service/transport/Makefile.in"
(("test_communicator_bidirect-tcp\\$\\(EXEEXT) ")
"")) ""))
(substitute* "src/core/Makefile.in" ;; The 'test_fs_search_with_and' fails non-deterministically
;; The 'test_core_api' test fails non-deterministically (see: ;; (see: https://bugs.gnunet.org/view.php?id=8692).
;; https://bugs.gnunet.org/view.php?id=7784). (substitute* "src/service/fs/Makefile.in"
(("test_core_api\\$\\(EXEEXT) ") "")))) (("test_fs_search_with_and\\$\\(EXEEXT) ")
""))))
(add-before 'check 'set-env-var-for-tests (add-before 'check 'set-env-var-for-tests
(lambda _ (lambda _
(setenv "LANG" "en_US.UTF-8"))) (setenv "LANG" "en_US.UTF-8")))
@ -433,20 +371,17 @@ The following services are supported:
(license (list license:agpl3+ license:gpl3+ license:fdl1.3+ license:lgpl3+)) (license (list license:agpl3+ license:gpl3+ license:fdl1.3+ license:lgpl3+))
(home-page "https://git.gnunet.org/gnunet-scheme.git"))) (home-page "https://git.gnunet.org/gnunet-scheme.git")))
;; FIXME: "gnunet-setup" segfaults under certain conditions and "gnunet-gtk"
;; does not seem to be fully functional. This has been reported upstream:
;; http://lists.gnu.org/archive/html/gnunet-developers/2016-02/msg00004.html
(define-public gnunet-gtk (define-public gnunet-gtk
(package (inherit gnunet) (package (inherit gnunet)
(name "gnunet-gtk") (name "gnunet-gtk")
(version "0.20.0") (version "0.21.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/gnunet/gnunet-gtk-" (uri (string-append "mirror://gnu/gnunet/gnunet-gtk-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0bandj2f24v4wfq1v5j73zn5jp25dn8r7y0wd7znlkmbh86fb4g9")))) "1b7xfypa0s7zlijgvya8p3rvljnn65w5cjkaw6x83v9ra8l6s0dx"))))
(arguments (arguments
(list #:configure-flags (list #:configure-flags
#~(list "--with-libunique" #~(list "--with-libunique"

View File

@ -944,7 +944,7 @@ passphrase when @code{gpg} is run and needs it.")))
(define-public pinentry-rofi (define-public pinentry-rofi
(package (package
(name "pinentry-rofi") (name "pinentry-rofi")
(version "2.0.3") (version "2.1.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -952,7 +952,7 @@ passphrase when @code{gpg} is run and needs it.")))
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0kjzvgni9srl8h5c52pqrvgdxs6avv0nhgk19apd97sx10qdwdhk")))) (base32 "1v5rl2kkvkj1pw3bn20gwa2pa7caan3hbqnr6fshv5j7h56919i7"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules `(#:modules

View File

@ -16,6 +16,7 @@
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2023 Benjamin <benjamin@uvy.fr> ;;; Copyright © 2023 Benjamin <benjamin@uvy.fr>
;;; Copyright © 2023 Felix Lechner <felix.lechner@lease-up.com> ;;; Copyright © 2023 Felix Lechner <felix.lechner@lease-up.com>
;;; Copyright © 2023 Fries <fries1234@protonmail.com>
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space> ;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com> ;;; Copyright © 2024 Troy Figiel <troy@troyfigiel.com>
@ -122,6 +123,36 @@
@end itemize\n") @end itemize\n")
(license license:expat)))) (license license:expat))))
(define-public go-github-com-chzyer-test
(package
(name "go-github-com-chzyer-test")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/chzyer/test")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1axdlcnx2qjsn5wsr2pr1m0w0a8k4nk5kkrngh742fgh81vzzy8s"))))
(build-system go-build-system)
(arguments
(list
;; Tests relating to a in-memory disk fail due to a Segfault see
;; <https://github.com/chzyer/test/issues/4>.
#:tests? #f
#:import-path "github.com/chzyer/test"))
(propagated-inputs
(list go-github-com-chzyer-logex))
(home-page "https://github.com/chzyer/test")
(synopsis "Testing library for Go")
;; Description is not provided, see
;; <https://github.com/chzyer/test/issues/3>.
(description
"A testing library for Go programs.")
(license license:expat)))
(define-public go-github-com-davecgh-go-spew (define-public go-github-com-davecgh-go-spew
(package (package
(name "go-github-com-davecgh-go-spew") (name "go-github-com-davecgh-go-spew")
@ -160,6 +191,42 @@ style).
@end itemize") @end itemize")
(license license:isc))) (license license:isc)))
(define-public go-github-com-felixge-fgprof
(package
(name "go-github-com-felixge-fgprof")
(version "0.9.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/felixge/fgprof")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00h4kphvmbcdgad0wmqbaclc4a1pipdb55ay41mwh6cnkdjjvhp0"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/felixge/fgprof"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-google-pprof))
(home-page "https://github.com/felixge/fgprof")
(synopsis "Sampling profiler for Golang")
(description
"@code{fgprof} is a sampling Go profiler providing analyze On-CPU as well
as @url{http://www.brendangregg.com/offcpuanalysis.html, Off-CPU} (e.g. I/O)
time together.
Go's builtin sampling CPU profiler can only show On-CPU time, but it's better
than fgprof at that. Go also includes tracing profilers that can analyze I/O,
but they can't be combined with the CPU profiler.
fgprof is designed for analyzing applications with mixed I/O and CPU
workloads. This kind of profiling is also known as wall-clock profiling.")
(license license:expat)))
(define-public go-github-com-frankban-quicktest (define-public go-github-com-frankban-quicktest
(package (package
(name "go-github-com-frankban-quicktest") (name "go-github-com-frankban-quicktest")
@ -288,6 +355,57 @@ also update a file with new \"golden\" output that is deemed correct.")
values for the purpose of fuzz testing.") values for the purpose of fuzz testing.")
(license license:asl2.0)))) (license license:asl2.0))))
;; XXX: Placing to (gnu package profiling) creates some failing cycles.
(define-public go-github-com-google-pprof
(package
(name "go-github-com-google-pprof")
(version "0.0.0-20240402174815-29b9bb013b0f")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/pprof")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "09l37q5dql0q0zj8amlnrynajfvp1vrp846q5vgiwsbwz9b78f18"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/google/pprof"
#:phases
#~(modify-phases %standard-phases
;; To make this package smaller to use as a library where just
;; source is required.
(delete 'build))))
(propagated-inputs
(list go-github-com-chzyer-readline
go-github-com-ianlancetaylor-demangle
go-golang-org-x-sys))
(home-page "https://github.com/google/pprof")
(synopsis "Visualization and analysis of profiling data")
(description
"@code{pprof} is a tool for visualization and analysis of profiling data.
It reads a collection of profiling samples in profile.proto format and
generates reports to visualize and help analyze the data. It can generate
both text and graphical reports (through the use of the dot visualization
package).")
(license (list
;; For go code: LICENSE
license:asl2.0
;; For svgpan: third_party/svgpan/LICENSE
;; original source <https://code.google.com/archive/p/svgpan/>.
license:bsd-3
;; For d3flamegraph: third_party/d3flamegraph/D3_LICENSE
;;
;; Bundle of d3-flame-graph and d3-selection JavaScript library
;; (NPM) <https://www.npmjs.com/package/d3-flame-graph> and
;; <https://www.npmjs.com/package/d3-selection>.
license:asl2.0 ; for bundle and d3-flame-graph
license:isc ; for d3-selection
))))
(define-public go-github-com-hexops-gotextdiff (define-public go-github-com-hexops-gotextdiff
(package (package
(name "go-github-com-hexops-gotextdiff") (name "go-github-com-hexops-gotextdiff")
@ -441,17 +559,17 @@ differently.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32 "1hh6n7q92y0ai8k6rj2yzw6wwxikhyiyk4j92zgvf1zad0gmqqmz"))))
"1hh6n7q92y0ai8k6rj2yzw6wwxikhyiyk4j92zgvf1zad0gmqqmz"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
(list #:import-path "github.com/onsi/ginkgo")) (list
#:import-path "github.com/onsi/ginkgo"))
(propagated-inputs (propagated-inputs
(list go-golang-org-x-sys (list go-github-com-go-task-slim-sprig
go-golang-org-x-tools
go-github-com-go-task-slim-sprig
go-github-com-nxadm-tail go-github-com-nxadm-tail
go-github-com-onsi-gomega)) go-github-com-onsi-gomega
go-golang-org-x-sys
go-golang-org-x-tools))
(home-page "https://github.com/onsi/ginkgo") (home-page "https://github.com/onsi/ginkgo")
(synopsis "BDD-style testing framework for Go") (synopsis "BDD-style testing framework for Go")
(description (description
@ -460,6 +578,104 @@ builds on top of Go's builtin @code{testing} library and is complemented by the
Gomega matcher library.") Gomega matcher library.")
(license license:expat))) (license license:expat)))
(define-public go-github-com-onsi-ginkgo-v2
(package
(inherit go-github-com-onsi-ginkgo)
(name "go-github-com-onsi-ginkgo-v2")
(version "2.17.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/onsi/ginkgo")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "089x6pz5563ldbxiwaqvd2g4dqfzlr25dflmas3gfq51ibwzh4vz"))))
(arguments
(list
#:go go-1.20
#:import-path "github.com/onsi/ginkgo/v2"))
(propagated-inputs
(list go-github-com-go-logr-logr
;; go-github-com-google-pprof ; not packed yet in Guix, for profiling
go-github-com-onsi-gomega
go-github-com-go-task-slim-sprig
go-golang-org-x-net
go-golang-org-x-sys
go-golang-org-x-tools))))
(define-public go-github-com-onsi-gomega
(package
(name "go-github-com-onsi-gomega")
(version "1.19.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/onsi/gomega")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "092phwk97sk4sv0nbx5pfhqs6x3x1lnrjwyda1m6b6zwrfmq5c6i"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/onsi/gomega"
;; Unless we disable the tests, we have a circular dependency on
;; ginkgo/v2.
#:tests? #f))
(propagated-inputs
(list go-github-com-golang-protobuf-proto
go-golang-org-x-net
go-golang-org-x-sys
go-golang-org-x-text
go-google-golang-org-protobuf
go-gopkg-in-yaml-v2))
(home-page "https://github.com/onsi/gomega")
(synopsis "Matcher library for Ginkgo")
(description
"Gomega is the preferred matcher/assertion library for the Ginkgo test
framework.")
(license license:expat)))
(define-public go-github-com-pkg-profile
(package
(name "go-github-com-pkg-profile")
(version "1.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pkg/profile")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ifr9gnycjwh7dbvsb5vgs9kzlr548cb4m45zvl8i8lgd3qhppy1"))))
(build-system go-build-system)
(arguments
(list
;; XXX: Unit tests failing, see
;; <https://github.com/pkg/profile/issues/68>.
#:tests? #f
#:import-path "github.com/pkg/profile"
#:phases
#~(modify-phases %standard-phases
;; profile drops a cpu.pprof file inside its source directory
;; after tests which makes it unreproducible so we remove it.
(add-after 'check 'delete-test-file
(lambda* (#:key import-path tests? #:allow-other-keys)
(when tests?
(delete-file (string-append "src/" import-path
"/cpu.pprof"))))))))
(propagated-inputs
(list go-github-com-felixge-fgprof))
(home-page "https://github.com/pkg/profile")
(synopsis "Simple profiling for Go")
(description
"Profile provides a simple way to manage runtime/pprof profiling of your
Go application.")
(license license:bsd-2)))
(define-public go-github-com-prashantv-gostub (define-public go-github-com-prashantv-gostub
(package (package
(name "go-github-com-prashantv-gostub") (name "go-github-com-prashantv-gostub")
@ -860,6 +1076,20 @@ thoroughly
(description "This package turns unkeyed struct literals (@code{T{1, 2, (description "This package turns unkeyed struct literals (@code{T{1, 2,
3}}) into keyed ones (@code{T{A: 1, B: 2, C: 3}}) in Go."))) 3}}) into keyed ones (@code{T{A: 1, B: 2, C: 3}}) in Go.")))
(define-public go-pprof
(package
(inherit go-github-com-google-pprof)
(name "go-pprof")
(arguments
(list
#:install-source? #f
#:go go-1.19
#:import-path "github.com/google/pprof"))
(description
(string-append (package-description go-github-com-google-pprof)
" This package provides an command line interface (CLI)
tool."))))
(define-public go-staticcheck (define-public go-staticcheck
(package (package
(inherit go-honnef-co-go-tools) (inherit go-honnef-co-go-tools)

View File

@ -28,7 +28,8 @@
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (gnu packages)) #:use-module (gnu packages)
#:use-module (gnu packages golang-xyz))
;;; Commentary: ;;; Commentary:
;;; ;;;
@ -190,6 +191,52 @@ time, as otherwise the internal gzip library will likely be faster.")
"This package provides a library for reading RAR archives with Golang.") "This package provides a library for reading RAR archives with Golang.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public go-github-com-pierrec-lz4
(package
(name "go-github-com-pierrec-lz4")
(version "2.6.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pierrec/lz4")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0vfn01gd3hcpbj6gb4ig3pw6bv0g4j5780awr0fv4kf9id8gjvyy"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/pierrec/lz4"))
(home-page "https://github.com/pierrec/lz4")
(synopsis "LZ4 compression in pure Go")
(description
"@code{lz4} provides a streaming interface to
@url{http://fastcompression.blogspot.fr/2013/04/lz4-streaming-format-final.html,
LZ4 data streams} as well as low level compress and uncompress functions for
LZ4 data blocks. The implementation is based on the reference C
@url{https://github.com/lz4/lz4, one}.")
(license license:bsd-3)))
(define-public go-github-com-pierrec-lz4-v4
(package
(inherit go-github-com-pierrec-lz4)
(name "go-github-com-pierrec-lz4-v4")
(version "4.1.21")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pierrec/lz4")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0nc2aprbw4s6cx2mijaqdswkgnizx8fqb0mzha82wrznl3gz69ni"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/pierrec/lz4/v4"))))
(define-public go-github-com-ulikunitz-xz (define-public go-github-com-ulikunitz-xz
(package (package
(name "go-github-com-ulikunitz-xz") (name "go-github-com-ulikunitz-xz")
@ -216,6 +263,28 @@ decompressing data. The package is completely written in Go and doesn't have
any dependency on any C code.") any dependency on any C code.")
(license license:bsd-3))) (license license:bsd-3)))
;;;
;;; Executables:
;;;
(define-public go-lz4c
(package
(inherit go-github-com-pierrec-lz4-v4)
(name "go-lz4c")
(arguments
(list
#:install-source? #f
#:import-path "github.com/pierrec/lz4/cmd/lz4c"
#:unpack-path "github.com/pierrec/lz4"))
(native-inputs
(list go-code-cloudfoundry-org-bytefmt
go-github-com-pierrec-cmdflag
go-github-com-schollz-progressbar-v3))
(description
(string-append (package-description go-github-com-pierrec-lz4-v4)
" This package provides an additional command line
interface tool to compress and decompress LZ4 files."))))
;;; ;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar ;;; of a merge conflict, place them above by existing packages with similar

View File

@ -592,17 +592,11 @@ Stealing encryption and decryption methods.")
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/libp2p/go-libp2p-peer")) '(#:import-path "github.com/libp2p/go-libp2p-peer"))
(native-inputs (propagated-inputs
(list go-github-com-btcsuite-btcd-btcec (list go-github-com-btcsuite-btcd-btcec
go-github-com-gogo-protobuf go-github-com-gogo-protobuf
go-github-com-gxed-hashland-keccakpg
go-github-com-libp2p-go-libp2p-crypto go-github-com-libp2p-go-libp2p-crypto
go-github-com-minio-blake2b-simd go-github-com-multiformats-go-multihash))
go-github-com-minio-sha256-simd
go-github-com-mr-tron-base58
go-github-com-multiformats-go-multihash
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/libp2p/go-libp2p-peer") (home-page "https://github.com/libp2p/go-libp2p-peer")
(synopsis "PKI based identities for use in go-libp2p") (synopsis "PKI based identities for use in go-libp2p")
(description "PKI based identities for use in @command{go-libp2p}.") (description "PKI based identities for use in @command{go-libp2p}.")
@ -812,7 +806,7 @@ Architecture Processors\" by J. Guilford et al.")
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/multiformats/go-multihash")) '(#:import-path "github.com/multiformats/go-multihash"))
(native-inputs (propagated-inputs
(list go-github-com-mr-tron-base58 (list go-github-com-mr-tron-base58
go-github-com-gxed-hashland-keccakpg go-github-com-gxed-hashland-keccakpg
go-github-com-minio-blake2b-simd go-github-com-minio-blake2b-simd

View File

@ -19,6 +19,7 @@
;;; Copyright © 2022 jgart via Guix-patches via <guix-patches@gnu.org> ;;; Copyright © 2022 jgart via Guix-patches via <guix-patches@gnu.org>
;;; Copyright © 2022 muradm <mail@muradm.net> ;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022, 2023 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2022, 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Fries <fries1234@protonmail.com>
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space> ;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com> ;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr> ;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
@ -1188,6 +1189,40 @@ Microsoft AD PAC authorization data.")
transforms one JSON document into another through a JMESPath expression.") transforms one JSON document into another through a JMESPath expression.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public go-github-com-json-iterator-go
(package
(name "go-github-com-json-iterator-go")
(version "1.1.12")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/json-iterator/go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1c8f0hxm18wivx31bs615x3vxs2j3ba0v6vxchsjhldc8kl311bz"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/json-iterator/go"))
(native-inputs
(list go-github-com-davecgh-go-spew
go-github-com-google-gofuzz
go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-modern-go-concurrent
go-github-com-modern-go-reflect2))
(home-page "https://github.com/json-iterator/go")
(synopsis "High-performance replacement for Golang @code{encoding/json}")
(description
"This package implements encoding and decoding of JSON as defined in
@uref{https://rfc-editor.org/rfc/rfc4627.html,RFC 4627} and provides
interfaces with identical syntax of standard lib encoding/json. Converting
from encoding/json to jsoniter is no more than replacing the package with
jsoniter and variable type declarations (if any). jsoniter interfaces gives
100% compatibility with code using standard lib.")
(license license:expat)))
(define-public go-github-com-julienschmidt-httprouter (define-public go-github-com-julienschmidt-httprouter
(package (package
(name "go-github-com-julienschmidt-httprouter") (name "go-github-com-julienschmidt-httprouter")
@ -1257,14 +1292,8 @@ router.")
(arguments (arguments
(list (list
#:import-path "github.com/multiformats/go-multiaddr")) #:import-path "github.com/multiformats/go-multiaddr"))
(native-inputs (propagated-inputs
(list go-github-com-gxed-hashland-keccakpg (list go-github-com-multiformats-go-multihash))
go-github-com-minio-blake2b-simd
go-github-com-minio-sha256-simd
go-github-com-mr-tron-base58
go-github-com-multiformats-go-multihash
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/multiformats/go-multiaddr") (home-page "https://github.com/multiformats/go-multiaddr")
(synopsis "Composable and future-proof network addresses") (synopsis "Composable and future-proof network addresses")
(description (description
@ -1305,15 +1334,8 @@ following:
;; TODO: Tests fail because they try to access the network. ;; TODO: Tests fail because they try to access the network.
#:tests? #f #:tests? #f
#:import-path "github.com/multiformats/go-multiaddr-net")) #:import-path "github.com/multiformats/go-multiaddr-net"))
(native-inputs (propagated-inputs
(list go-github-com-gxed-hashland-keccakpg (list go-github-com-multiformats-go-multiaddr))
go-github-com-minio-blake2b-simd
go-github-com-minio-sha256-simd
go-github-com-mr-tron-base58
go-github-com-multiformats-go-multiaddr
go-github-com-multiformats-go-multihash
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/multiformats/go-multiaddr-net") (home-page "https://github.com/multiformats/go-multiaddr-net")
(synopsis "Multiaddress net tools") (synopsis "Multiaddress net tools")
(description (description

File diff suppressed because it is too large Load Diff

View File

@ -1881,7 +1881,7 @@ retry strategies, such as fixed delay, backoff delay, and random delay.")
(build-system go-build-system) (build-system go-build-system)
(arguments `(#:import-path "howett.net/plist")) (arguments `(#:import-path "howett.net/plist"))
(inputs (inputs
(list go-github.com-jessevdk-go-flags go-github-com-kr-pretty (list go-github-com-jessevdk-go-flags go-github-com-kr-pretty
go-gopkg-in-check-v1 go-gopkg-in-yaml-v2)) go-gopkg-in-check-v1 go-gopkg-in-yaml-v2))
(home-page "https://github.com/DHowett/go-plist") (home-page "https://github.com/DHowett/go-plist")
(synopsis "Apple property list transcoder") (synopsis "Apple property list transcoder")
@ -2839,9 +2839,9 @@ Under Windows, the console APIs are used. Otherwise, ANSI texts are output.")
specified by @uref{https://tools.ietf.org/html/rfc2141, IETF RFC 2141}.") specified by @uref{https://tools.ietf.org/html/rfc2141, IETF RFC 2141}.")
(license license:expat))) (license license:expat)))
(define-public go-github.com-jessevdk-go-flags (define-public go-github-com-jessevdk-go-flags
(package (package
(name "go-github.com-jessevdk-go-flags") (name "go-github-com-jessevdk-go-flags")
(version "1.5.0") (version "1.5.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
@ -3674,31 +3674,6 @@ containers.")
(description "Safe and easy casting from one type to another in Go") (description "Safe and easy casting from one type to another in Go")
(license license:expat))) (license license:expat)))
(define-public go-github-com-spf13-cobra
(package
(name "go-github-com-spf13-cobra")
(version "1.8.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spf13/cobra")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0mhnqfgcwwcknlhk7n07i02q3iqq6ihksj4dwz296zci8ry3w0d0"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/cobra"))
(propagated-inputs
(list go-github-com-spf13-pflag))
(home-page "https://github.com/spf13/cobra")
(synopsis "Go library for creating CLI applications")
(description "Cobra is both a library for creating powerful modern CLI
applications as well as a program to generate applications and command files.")
(license license:asl2.0)))
(define-public go-github-com-spf13-jwalterweatherman (define-public go-github-com-spf13-jwalterweatherman
(package (package
(name "go-github-com-spf13-jwalterweatherman") (name "go-github-com-spf13-jwalterweatherman")
@ -4265,43 +4240,6 @@ which satisfies the cron expression.")
(description "Go library for ini files") (description "Go library for ini files")
(license license:asl2.0))) (license license:asl2.0)))
(define-public go-gopkg-in-yaml-v2
(package
(name "go-gopkg-in-yaml-v2")
(version "2.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gopkg.in/yaml.v2.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1pbmrpj7gcws34g8vwna4i2nhm9p6235piww36436xhyaa10cldr"))
(modules '((guix build utils)))
(snippet
'(begin
;; https://github.com/go-yaml/yaml/issues/441 and
;; https://github.com/go-yaml/yaml/pull/442
;; Don't assume 64-bit wide integers
(substitute* "decode_test.go"
(("bin: (-0b1000000000000000000000000000000000000000000000000000000000000000)" all number)
(string-append "int64_min_base2: " number))
(("map\\[string\\]interface\\{\\}\\{\"bin\": -9223372036854775808\\}")
"map[string]int64{\"int64_min_base2\": math.MinInt64}"))))))
(build-system go-build-system)
(arguments
'(#:import-path "gopkg.in/yaml.v2"))
(native-inputs
(list go-gopkg-in-check-v1))
(home-page "https://gopkg.in/yaml.v2")
(synopsis "YAML reader and writer for the Go language")
(description
"This package provides a Go library for encode and decode YAML
values.")
(license license:asl2.0)))
(define-public go-gopkg-in-yaml-v3 (define-public go-gopkg-in-yaml-v3
(package (package
(name "go-gopkg-in-yaml-v3") (name "go-gopkg-in-yaml-v3")
@ -4351,82 +4289,6 @@ The yaml package supports most of YAML 1.2, but preserves some behavior from
(description "This package provides a Golang Matrix client.") (description "This package provides a Golang Matrix client.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public go-github-com-mattn-go-isatty
(package
(name "go-github-com-mattn-go-isatty")
(version "0.0.20")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mattn/go-isatty")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0g63n9wpb991qnq9mn2kvd8jk1glrp6gnd851kvwz2wmzdkggiga"))))
(build-system go-build-system)
(propagated-inputs
(list go-golang-org-x-sys))
(arguments
'(#:import-path "github.com/mattn/go-isatty"))
(home-page "https://github.com/mattn/go-isatty")
(synopsis "Provide @code{isatty} for Golang")
(description "This package provides @code{isatty}, a Go module that can
tell you whether a file descriptor points to a terminal and the type of the
terminal.")
(license license:expat)))
(define-public go-github-com-mattn-go-colorable
(package
(name "go-github-com-mattn-go-colorable")
(version "0.1.13")
(home-page "https://github.com/mattn/go-colorable")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"05hl2ddp67p5kj3ix4zzqqjh4fan4ban3vgw8f98simwigs3q41j"))))
(build-system go-build-system)
(propagated-inputs
(list go-github-com-mattn-go-isatty))
(arguments
'(#:import-path "github.com/mattn/go-colorable"))
(synopsis "Handle ANSI color escapes on Windows")
(description "This package provides @code{colorable}, a module that
makes it possible to handle ANSI color escapes on Windows.")
(license license:expat)))
(define-public go-github-com-mattn-go-pointer
(let ((commit "a0a44394634f41e4992b173b24f14fecd3318a67")
(revision "1"))
(package
(name "go-github-com-mattn-go-pointer")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mattn/go-pointer")
(commit commit)))
(sha256
(base32
"09w7hcyc0zz2g23vld6jbcmq4ar27xakp1ldjvh549i5izf2anhz"))
(file-name (git-file-name name version))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/mattn/go-pointer"))
(home-page "https://github.com/mattn/go-pointer")
(synopsis "Utility for cgo")
(description
"This package allows for a cgo argument to be passed a Go pointer.")
(license license:expat))))
(define-public go-github-com-mgutz-ansi (define-public go-github-com-mgutz-ansi
(let ((commit "9520e82c474b0a04dd04f8a40959027271bab992") (let ((commit "9520e82c474b0a04dd04f8a40959027271bab992")
(revision "0")) (revision "0"))
@ -5016,20 +4878,14 @@ required by Go's standard Hash interface.")
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
'(#:import-path "github.com/libp2p/go-libp2p-metrics")) '(#:import-path "github.com/libp2p/go-libp2p-metrics"))
(native-inputs (propagated-inputs
(list go-github-com-libp2p-go-flow-metrics (list go-github-com-libp2p-go-flow-metrics
go-github-com-libp2p-go-libp2p-peer go-github-com-libp2p-go-libp2p-peer
go-github-com-libp2p-go-libp2p-protocol go-github-com-libp2p-go-libp2p-protocol
go-github-com-libp2p-go-libp2p-crypto go-github-com-libp2p-go-libp2p-crypto
go-github-com-mr-tron-base58
go-github-com-multiformats-go-multihash go-github-com-multiformats-go-multihash
go-github-com-btcsuite-btcd-btcec go-github-com-btcsuite-btcd-btcec
go-github-com-gogo-protobuf go-github-com-gogo-protobuf))
go-github-com-gxed-hashland-keccakpg
go-github-com-minio-blake2b-simd
go-github-com-minio-sha256-simd
go-github-com-spaolacci-murmur3
go-golang-org-x-crypto))
(home-page "https://github.com/libp2p/go-libp2p-metrics") (home-page "https://github.com/libp2p/go-libp2p-metrics")
(synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics") (synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics")
(description "A connection wrapper for @command{go-libp2p} that provides bandwidth (description "A connection wrapper for @command{go-libp2p} that provides bandwidth
@ -5786,21 +5642,6 @@ systems.")
(modify-inputs (package-inputs go-github-com-gdamore-tcell) (modify-inputs (package-inputs go-github-com-gdamore-tcell)
(prepend go-golang-org-x-term go-golang-org-x-sys))))) (prepend go-golang-org-x-term go-golang-org-x-sys)))))
(define-public go-github-com-gdamore-tcell-v2-2.3
(package
(inherit go-github-com-gdamore-tcell-v2)
(name "go-github-com-gdamore-tcell")
(version "2.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gdamore/tcell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ypbl5080q9sd3irad8mv7zlg4242i8pmg5xyhbyq95kymwibaid"))))))
(define-public go-git-sr-ht-rockorager-tcell-term (define-public go-git-sr-ht-rockorager-tcell-term
(package (package
(name "go-git-sr-ht-rockorager-tcell-term") (name "go-git-sr-ht-rockorager-tcell-term")
@ -6677,50 +6518,6 @@ improved and cleaner API.")
Proxy functionality.") Proxy functionality.")
(license license:expat))) (license license:expat)))
(define-public go-github-com-mattn-go-zglob
(package
(name "go-github-com-mattn-go-zglob")
(version "0.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mattn/go-zglob")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1923lvakm66mzy62jmngdvcmbmiqclinsvnghs3907rgygnx1qc1"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/mattn/go-zglob"))
(home-page "https://github.com/mattn/go-zglob")
(synopsis "Glob library that descends into other directories")
(description "A glob library that implements descending into other
directories. It is optimized for filewalking.")
(license license:expat)))
(define-public go-github-com-mattn-go-sqlite3
(package
(name "go-github-com-mattn-go-sqlite3")
(version "1.14.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mattn/go-sqlite3")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"04anvqkc37mmc3z1dy4xfa6cas67zlxnnab0ywii7sylk864mhxz"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/mattn/go-sqlite3"))
(home-page "https://github.com/mattn/go-sqlite3")
(synopsis "Sqlite3 driver for Go")
(description "This package provides a Sqlite3 driver for Go using
@code{database/sql}.")
(license license:expat)))
(define-public go-github-com-bits-and-blooms-bitset (define-public go-github-com-bits-and-blooms-bitset
(package (package
(name "go-github-com-bits-and-blooms-bitset") (name "go-github-com-bits-and-blooms-bitset")
@ -9186,31 +8983,6 @@ parser.")
@url{https://unicode.org/reports/tr29/, Unicode Standard Annex #29}.") @url{https://unicode.org/reports/tr29/, Unicode Standard Annex #29}.")
(license license:expat))) (license license:expat)))
(define-public go-github-com-mattn-go-runewidth
(package
(name "go-github-com-mattn-go-runewidth")
(version "0.0.14")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mattn/go-runewidth")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1iaqw5pd7f4f2xz37540kp0828p2820g4vxx3hz089hwl331sx1v"))))
(build-system go-build-system)
(arguments '(#:import-path "github.com/mattn/go-runewidth"))
(propagated-inputs
(list go-github-com-rivo-uniseg))
(home-page "https://github.com/mattn/go-runewidth")
(synopsis "Rune width implementation for Go")
(description
"This package provides functions to get the fixed width of a character or
string.")
(license license:expat)))
(define-public go-github-com-charmbracelet-bubbletea (define-public go-github-com-charmbracelet-bubbletea
(package (package
(name "go-github-com-charmbracelet-bubbletea") (name "go-github-com-charmbracelet-bubbletea")
@ -9640,51 +9412,6 @@ kubernetes-sigs/yaml is a permanent fork of
"Colorstring provides functions for colorizing strings for terminal output.") "Colorstring provides functions for colorizing strings for terminal output.")
(license license:expat))) (license license:expat)))
(define-public go-github-com-schollz-progressbar-v3
(package
(name "go-github-com-schollz-progressbar-v3")
(version "3.13.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/schollz/progressbar")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1hjahr5r52i7w6iyvl3rpzr46iignhfdh4694fl7m2b4gkaw9gd6"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/schollz/progressbar/v3"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-examples
(lambda* (#:key import-path #:allow-other-keys)
(delete-file-recursively
(string-append "src/" import-path "/examples"))))
(replace 'check
(lambda* (#:key tests? import-path #:allow-other-keys)
(when tests?
;; The full test suite requires Internet access, so only
;; run the short tests.
(invoke "go" "test" "-test.short" import-path)))))))
(propagated-inputs
(list go-golang-org-x-term
go-github-com-stretchr-testify
go-github-com-mitchellh-colorstring
go-github-com-mattn-go-runewidth
go-github-com-mattn-go-isatty
go-github-com-davecgh-go-spew))
(home-page "https://github.com/schollz/progressbar")
(synopsis "Simple command-line interface (CLI) progress bar")
(description
"This package provides a very simple thread-safe progress bar. The
@code{progressbar} implements an @code{io.Writer} so it can automatically
detect the number of bytes written to a stream, so you can use it as a
@code{progressbar} for an @code{io.Reader}. When @code{progressbar}'s length
is undetermined, a customizable spinner is shown.")
(license license:expat)))
(define-public go-git-sr-ht-emersion-go-scfg (define-public go-git-sr-ht-emersion-go-scfg
(package (package
(name "go-git-sr-ht-emersion-go-scfg") (name "go-git-sr-ht-emersion-go-scfg")
@ -10316,37 +10043,6 @@ serialiser for Go.")
library bevacqua/fuzzysearch.") library bevacqua/fuzzysearch.")
(license license:expat))) (license license:expat)))
(define-public go-github-com-onsi-gomega
(package
(name "go-github-com-onsi-gomega")
(version "1.19.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/onsi/gomega")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"092phwk97sk4sv0nbx5pfhqs6x3x1lnrjwyda1m6b6zwrfmq5c6i"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/onsi/gomega"
;; Unless we disable the tests, we have a circular dependency on
;; ginkgo/v2.
#:tests? #f))
(propagated-inputs (list go-github-com-golang-protobuf-proto
go-golang-org-x-net
go-golang-org-x-sys
go-golang-org-x-text
go-google-golang-org-protobuf
go-gopkg-in-yaml-v2))
(home-page "https://github.com/onsi/gomega")
(synopsis "Matcher library for Ginkgo")
(description
"Gomega is the preferred matcher library for the Ginkgo test framework.")
(license license:expat)))
;;; ;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances ;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar ;;; of a merge conflict, place them above by existing packages with similar

View File

@ -195,7 +195,7 @@ distributions in empirical data. SIAM Review 51, 661-703 (2009)}).")
(list arpack-ng (list arpack-ng
bliss bliss
glpk glpk
lapack ;lapack
openblas openblas
plfit plfit
suitesparse-cxsparse)) suitesparse-cxsparse))

View File

@ -74,6 +74,7 @@
#:use-module (gnu packages fonts) #:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
@ -461,7 +462,7 @@ applications.")
(define-public openvdb (define-public openvdb
(package (package
(name "openvdb") (name "openvdb")
(version "8.2.0") (version "11.0.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -471,14 +472,14 @@ applications.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0856697hnwk8xsp29kx8y2p1kliy0bdwfsznxm38v4690vna15rk")))) "0r6q7bl8513ggrvx3n73j1s3f7n5x1rxy5xi471qyrya95gy6c60"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
(list (string-append "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath=" (list (string-append "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib")))) (assoc-ref %outputs "out") "/lib"))))
(inputs (inputs
(list boost c-blosc ilmbase tbb zlib)) (list boost c-blosc jemalloc tbb zlib))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(home-page "https://www.openvdb.org/") (home-page "https://www.openvdb.org/")
@ -493,14 +494,14 @@ typically encountered in feature film production.")
(define-public blender (define-public blender
(package (package
(name "blender") (name "blender")
(version "3.3.5") ;3.3.x is the current LTS version (version "3.6.10") ;3.6.x is the current LTS version
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.blender.org/source/" (uri (string-append "https://download.blender.org/source/"
"blender-" version ".tar.xz")) "blender-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1pwl4lbc00g0bj97rd8l9fnrv3w1gny9ci6mrma3pp2acgs56502")))) "1srwr365y40hhpjmfsg52rphdybvin0ay2r23pknm7b9pkpw0wqs"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list (list
@ -521,6 +522,11 @@ typically encountered in feature film production.")
"-DWITH_OPENVDB=ON" "-DWITH_OPENVDB=ON"
"-DWITH_OPENSUBDIV=ON" "-DWITH_OPENSUBDIV=ON"
"-DWITH_PYTHON_INSTALL=OFF" "-DWITH_PYTHON_INSTALL=OFF"
"-DWITH_SYSTEM_BULLET=ON"
"-DWITH_SYSTEM_EIGEN3=ON"
"-DWITH_SYSTEM_FREETYPE=ON"
"-DWITH_SYSTEM_GLOG=ON"
"-DWITH_SYSTEM_LZO=ON"
(string-append "-DPYTHON_LIBRARY=python" #$python-version) (string-append "-DPYTHON_LIBRARY=python" #$python-version)
(string-append "-DPYTHON_LIBPATH=" (string-append "-DPYTHON_LIBPATH="
(assoc-ref %build-inputs "python") (assoc-ref %build-inputs "python")
@ -536,32 +542,22 @@ typically encountered in feature film production.")
(string-append "-DPYTHON_NUMPY_PATH=" (string-append "-DPYTHON_NUMPY_PATH="
(assoc-ref %build-inputs "python-numpy") (assoc-ref %build-inputs "python-numpy")
"/lib/python" #$python-version "/lib/python" #$python-version
"/site-packages/") "/site-packages/")))))
;; OpenEXR propagates ilmbase, but its include files do not
;; appear in the C_INCLUDE_PATH, so we need to add
;; "$ilmbase/include/OpenEXR/" to the C_INCLUDE_PATH to
;; satisfy the dependency on "half.h" and "Iex.h".
(string-append "-DCMAKE_CXX_FLAGS=-I"
(search-input-directory %build-inputs
"include/OpenEXR"))))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-broken-import
(lambda _
(substitute* "release/scripts/addons/io_scene_fbx/json2fbx.py"
(("import encode_bin")
"from . import encode_bin")))))))
(inputs (inputs
(list boost (list boost
bullet
eigen
embree embree
ffmpeg-5 ffmpeg-5
fftw fftw
freetype freetype-with-brotli
glew glew
glog
gmp ;needed for boolean operations on meshes gmp ;needed for boolean operations on meshes
ilmbase imath
jack-1 jack-1
jemalloc jemalloc
libepoxy
libjpeg-turbo libjpeg-turbo
libpng libpng
libsndfile libsndfile
@ -569,9 +565,10 @@ typically encountered in feature film production.")
libx11 libx11
libxi libxi
libxrender libxrender
lzo
openal openal
opencolorio opencolorio
openexr-2 openexr
openimageio openimageio
openjpeg openjpeg
opensubdiv opensubdiv
@ -707,7 +704,7 @@ baking tools to produce normal maps.")
(define-public openshadinglanguage (define-public openshadinglanguage
(package (package
(name "openshadinglanguage") (name "openshadinglanguage")
(version "1.11.16.0") (version "1.13.8.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -716,52 +713,46 @@ baking tools to produce normal maps.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0x0lc163vl2b57l75bf5zxlr6vm2y1f1izlxdnrw3vsapv3r9k9g")))) (base32 "1ji4bw8z4ylsh0jvir3d40p6xyhr63g588gh3bag7bzsr3flsb02"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags (list "-DUSE_PARTIO=OFF") ; TODO: not packaged (list #:configure-flags
#:phases #~(list "-DUSE_PARTIO=OFF" ; TODO: not packaged
(modify-phases %standard-phases (string-append "-DLLVM_BC_GENERATOR="
(add-after 'set-paths 'add-ilmbase-include-path #$(this-package-native-input "clang")
(lambda* (#:key inputs #:allow-other-keys) "/bin/clang++"))
;; OpenEXR 2 propagates ilmbase, but its include files do not #:phases
;; appear in the C_INCLUDE_PATH. #~(modify-phases %standard-phases
(let ((headers (string-append (replace 'check
(assoc-ref inputs "ilmbase") (lambda* (#:key tests? #:allow-other-keys)
"/include/OpenEXR"))) (when tests?
(setenv "C_INCLUDE_PATH" (invoke
(string-append headers ":" "ctest" "--exclude-regex"
(or (getenv "C_INCLUDE_PATH") ""))) (string-join
(setenv "CPLUS_INCLUDE_PATH" (list
(string-append headers ":" "osl-imageio" ; file does not exist
(or (getenv "CPLUS_INCLUDE_PATH") "")))))) "osl-imageio.opt" ; file does not exist
(replace 'check "osl-imageio.opt.rs_bitcode" ; file does not exist
(lambda* (#:key tests? #:allow-other-keys) "texture-udim" ; file does not exist
(when tests? "texture-udim.opt" ; file does not exist
(invoke "ctest" "--exclude-regex" "texture-udim.opt.rs_bitcode" ; file does not exist
(string-join "example-deformer" ; could not find OSLConfig
(list "python-oslquery") ; no module oslquery
"osl-imageio" ; OIIO not compiled with freetype "|"))))))))
"osl-imageio.opt" ; OIIO not compiled with freetype
"texture-udim" ; file does not exist
"texture-udim.opt" ; file does not exist
"example-deformer" ; could not find OSLConfig
"python-oslquery") ; no module oslquery
"|"))))))))
(native-inputs (native-inputs
(list bison (list bison
clang-9 clang
flex flex
llvm-9 llvm
pybind11 pybind11
python-wrapper)) python-wrapper))
(inputs (inputs
(list boost (list boost
imath imath
openexr-2 openexr
openimageio openimageio
pugixml pugixml
qtbase-5 qtbase
zlib)) zlib))
(home-page "https://github.com/AcademySoftwareFoundation/OpenShadingLanguage") (home-page "https://github.com/AcademySoftwareFoundation/OpenShadingLanguage")
(synopsis "Shading language for production GI renderers") (synopsis "Shading language for production GI renderers")
@ -1311,40 +1302,38 @@ with strong support for multi-part, multi-channel use cases.")
(define-public openimageio (define-public openimageio
(package (package
(name "openimageio") (name "openimageio")
(version "2.2.21.0") (version "2.5.10.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/OpenImageIO/oiio") (url "https://github.com/OpenImageIO/oiio")
(commit (string-append "Release-" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0aicxbshzv1g9d8d08vsj1a9klaycxaifvvp565qjv70wyma2vkr")))) "06x3lqj9qjh5m0zbr5g2g9ii6jk340pgzrhr4fb353y1y2pkx5sw"))))
(build-system cmake-build-system) (build-system cmake-build-system)
;; FIXME: To run all tests successfully, test image sets from multiple
;; third party sources have to be present. For details see
;; <https://github.com/OpenImageIO/oiio/blob/master/INSTALL.md>
(arguments (arguments
`(#:tests? #f (list #:tests? #f ; half the tests require online data or use redirection
#:configure-flags (list "-DUSE_EXTERNAL_PUGIXML=1"))) #:configure-flags #~(list "-DUSE_EXTERNAL_PUGIXML=1"
"-DOIIO_BUILD_TESTS=false")))
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs
`(("boost" ,boost) (list boost
("fmt" ,fmt-8) fmt
("libheif" ,libheif) giflib
("libpng" ,libpng) imath
("libjpeg" ,libjpeg-turbo) libheif
("libtiff" ,libtiff) libjpeg-turbo
("giflib" ,giflib) libpng
("openexr" ,openexr-2) libtiff
("ilmbase" ,ilmbase) openexr
("pugixml" ,pugixml) pugixml
("python" ,python-wrapper) pybind11
("pybind11" ,pybind11) python-wrapper
("robin-map" ,robin-map) robin-map
("zlib" ,zlib))) zlib))
(synopsis "C++ library for reading and writing images") (synopsis "C++ library for reading and writing images")
(description (description
"OpenImageIO is a library for reading and writing images, and a bunch of "OpenImageIO is a library for reading and writing images, and a bunch of
@ -1881,7 +1870,7 @@ requirements.")
(define-public opensubdiv (define-public opensubdiv
(package (package
(name "opensubdiv") (name "opensubdiv")
(version "3.4.0") (version "3.6.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1891,20 +1880,19 @@ requirements.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0cippg6aqc5dlya1cmh3908pwssrg52fwgyylnvz5343yrxmgk12")))) "0h9scxiigijzlpv4r0s0nhxlndhv1cmarb2bqgmlwcln1jjvlb4n"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:phases (modify-phases %standard-phases (list #:phases
(add-before 'configure 'set-glew-location #~(modify-phases %standard-phases
(lambda* (#:key inputs #:allow-other-keys) (add-before 'configure 'set-glew-location
(setenv "GLEW_LOCATION" (assoc-ref inputs "glew")) (lambda _
#t)) (setenv "GLEW_LOCATION" #$(this-package-input "glew"))))
(add-before 'check 'start-xorg-server (add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; The test suite requires a running X server. ;; The test suite requires a running X server.
(system "Xvfb :1 &") (system "Xvfb :1 &")
(setenv "DISPLAY" ":1") (setenv "DISPLAY" ":1"))))))
#t)))))
(native-inputs (native-inputs
(list xorg-server-for-tests)) (list xorg-server-for-tests))
(inputs (inputs

View File

@ -1166,23 +1166,17 @@ application suites.")
"--no-suite=failing" "--no-suite=failing"
"--no-suite=flaky" "--no-suite=flaky"
"--no-suite=headless" ; requires mutter… "--no-suite=headless" ; requires mutter…
"--no-suite=gsk-compare-broadway") "--no-suite=gsk-compare-broadway"
;; These seem to fail on aarch64, and Debian has
;; also disabled these, see:
;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1050075
"--no-suite=wayland_failing"
"--no-suite=wayland_gles_failing")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file (add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases (assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file)) 'generate-gdk-pixbuf-loaders-cache-file))
#$@(if (target-aarch64?)
#~((add-after 'unpack 'skip-failing-test
(lambda _
;; MESA: error: ZINK: failed to load libvulkan.so.1
;; libEGL warning: egl: failed to create dri2 screen
;; MESA: error: ZINK: failed to load libvulkan.so.1
;; glx: failed to create drisw screen
;; failed to load driver: zink
(substitute* "testsuite/gsk/meson.build"
((".*big-checkerboard-scaled-down2',\n") "")))))
#~())
(add-after 'unpack 'patch-rst2man (add-after 'unpack 'patch-rst2man
(lambda _ (lambda _
(substitute* "docs/reference/gtk/meson.build" (substitute* "docs/reference/gtk/meson.build"

View File

@ -48,6 +48,7 @@
;;; Copyright © 2022 jgart <jgart@dismail.de> ;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023 Andrew Tropin <andrew@trop.in> ;;; Copyright © 2023 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2024 Ilya Chernyshov <ichernyshovvv@gmail.com> ;;; Copyright © 2024 Ilya Chernyshov <ichernyshovvv@gmail.com>
;;; Copyright © 2024 Artyom Bologov <mail@aartaka.me>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -2025,8 +2026,8 @@ for MySQL.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public guile-lmdb (define-public guile-lmdb
(let ((commit "438143ca9ba157faec6f4c2740092c31c733fbfe") (let ((commit "ea9aa1d4b13e03f9fd23ec73d8884f4fae79666b")
(revision "0")) (revision "1"))
(package (package
(name "guile-lmdb") (name "guile-lmdb")
(version (git-version "0.0.1" revision commit)) (version (git-version "0.0.1" revision commit))
@ -2038,7 +2039,7 @@ for MySQL.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0p43c8ppbhzpi944in0z2jqr7acl8pm7s1x0p5f0idqda6n6f828")))) "1li92ldyjvbqkhqnkndgw0jk1avkzq9jkbmk8dqiby4na72sxi8k"))))
(build-system guile-build-system) (build-system guile-build-system)
(arguments (arguments
(list (list
@ -2059,7 +2060,8 @@ for MySQL.")
Most names are the same as LMDB ones, except for prefix absence. Most names are the same as LMDB ones, except for prefix absence.
Several conveniences are added on top: Several conveniences are added on top:
@itemize @itemize
@item @code{call-with-env-and-txn} and @code{call-with-cursor} wrappers. @item @code{call-with-env-and-txn}, @code{call-with-cursor}, and
@code{call-with-wrapped-cursor} helpers and respective @code{with-} macros.
@item @code{for-cursor} procedure for cursor iteration. @item @code{for-cursor} procedure for cursor iteration.
@item @code{val} and @code{stat} types. @item @code{val} and @code{stat} types.
@item Error signaling instead of integer return values. @item Error signaling instead of integer return values.
@ -2725,14 +2727,14 @@ library.")
(define-public guile-lib (define-public guile-lib
(package (package
(name "guile-lib") (name "guile-lib")
(version "0.2.7") (version "0.2.8")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://savannah/guile-lib/guile-lib-" (uri (string-append "mirror://savannah/guile-lib/guile-lib-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1ph4z4a64m75in36pdb4dw63dzdq3hdgh16gq33q460jby23pvz4")))) "1nb7swbliw9vx1ivhgd2m0r0p7nlkszw6s41zcgfwb5v1kp05sb4"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0") ;placate guild warnings '(#:make-flags '("GUILE_AUTO_COMPILE=0") ;placate guild warnings
@ -3487,7 +3489,7 @@ from @code{tree-il}.")
(define-public guile-hoot (define-public guile-hoot
(package (package
(name "guile-hoot") (name "guile-hoot")
(version "0.3.0") (version "0.4.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://spritely.institute/files/releases" (uri (string-append "https://spritely.institute/files/releases"
@ -3495,7 +3497,7 @@ from @code{tree-il}.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1zgcp7xnx84gwdpxj0wga7xrcxcifp9fyp06b6d54gbxq4as8an1")))) "0mlj9b9dzhd8k8jg9fgwxyxdy8rsynfq81vm00rjgbh2ivpgr3x2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0" '(#:make-flags '("GUILE_AUTO_COMPILE=0"
@ -4255,7 +4257,7 @@ debugging code.")
(define-public guile-png (define-public guile-png
(package (package
(name "guile-png") (name "guile-png")
(version "0.7.2") (version "0.7.3")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -4264,7 +4266,7 @@ debugging code.")
(file-name (string-append name "-" version "-checkout")) (file-name (string-append name "-" version "-checkout"))
(sha256 (sha256
(base32 (base32
"1ad03r84j17rwfxbxqb0qmf70ggqs01kjyman3x1581lm5dk1757")))) "0hgdp8fgyg6rdy130fsn4nnb58c98lsrayjyy5491l53814ggy65"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -4518,6 +4520,45 @@ default dynamic library path. There are up to three bindings for each
function: raw, typed, and functional.") function: raw, typed, and functional.")
(license license:lgpl3+)))) (license license:lgpl3+))))
(define-public guile-gsl
(let ((commit "e6d1477b0d0456f500c32610a5cae6ebb1b8acfe")
(revision "0"))
(package
(name "guile-gsl")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aartaka/guile-gsl")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1b4brimmg3phahia9dm0wkcp1f29wnbvmi0q8di5sz7pf7qjzsy0"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "modules"
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'substitute-gsl-so
(lambda _
(let ((gsl (string-append #$(this-package-input "gsl")
"/lib/libgsl.so"))
(gslcblas (string-append #$(this-package-input "gsl")
"/lib/libgslcblas.so")))
(substitute* '("modules/gsl/core.scm")
(("libgsl.so") gsl)
(("libgslcblas.so") gslcblas))))))))
(native-inputs (list guile-3.0))
(inputs (list guile-3.0 gsl))
(home-page "https://github.com/aartaka/guile-gsl")
(synopsis "Bindings for GNU Scientific library in Guile")
(description
"This package provides a Guile Scheme wrapper for @code{libgsl.so}.
Implements vector, matrix,and BLAS operations.")
(license license:gpl3+))))
(define-public guile-ffi-fftw (define-public guile-ffi-fftw
(let ((commit "294ad9e7491dcb40026d2fec9be2af05263be1c0") (let ((commit "294ad9e7491dcb40026d2fec9be2af05263be1c0")
(revision "2")) (revision "2"))

View File

@ -457,7 +457,7 @@ without requiring the source code to be rewritten.")
(define-public guile-next (define-public guile-next
(let ((version "3.0.9") (let ((version "3.0.9")
(revision "0") (revision "0")
(commit "fb1f5e28b1a575247fd16184b1c83b8838b09716")) (commit "db7efa5d204b2e46ce9eb82f417d8c12d394858d"))
(package (package
(inherit guile-3.0) (inherit guile-3.0)
(name "guile-next") (name "guile-next")
@ -471,7 +471,7 @@ without requiring the source code to be rewritten.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1lcc6sz0f3x253pr4a0fggsfkaxmxxw63cspfm2mjis6h82g6jxm")))) "1mg7pd0ya7i9swgnb38ay99cjwiw61ni0ypyywjrpv6iyvmx8m8q"))))
(arguments (arguments
(substitute-keyword-arguments (package-arguments guile-3.0) (substitute-keyword-arguments (package-arguments guile-3.0)
((#:phases phases '%standard-phases) ((#:phases phases '%standard-phases)

View File

@ -5325,18 +5325,15 @@ Accounting.")
(build-system haskell-build-system) (build-system haskell-build-system)
(properties '((upstream-name . "hmatrix"))) (properties '((upstream-name . "hmatrix")))
(arguments (arguments
`(#:extra-directories ("lapack"))) `(#:configure-flags '("--flags=openblas")
#:extra-directories ("openblas")))
(inputs (inputs
(list ghc-random (list ghc-random
ghc-split ghc-split
ghc-storable-complex ghc-storable-complex
ghc-semigroups ghc-semigroups
ghc-vector ghc-vector
;;("openblas" ,openblas) openblas))
lapack))
;; Guix's OpenBLAS is built with the flag "NO_LAPACK=1" which
;; disables inclusion of the LAPACK functions.
;; (arguments `(#:configure-flags '("--flags=openblas")))
(home-page "https://github.com/albertoruiz/hmatrix") (home-page "https://github.com/albertoruiz/hmatrix")
(synopsis "Haskell numeric linear algebra library") (synopsis "Haskell numeric linear algebra library")
(description "The HMatrix package provices a Haskell library for (description "The HMatrix package provices a Haskell library for

View File

@ -260,57 +260,36 @@ of external libraries that provide additional functionality.")
(define-public opencolorio (define-public opencolorio
(package (package
(name "opencolorio") (name "opencolorio")
(version "1.1.1") (version "2.3.2")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
(url "https://github.com/AcademySoftwareFoundation/OpenColorIO") (url "https://github.com/AcademySoftwareFoundation/OpenColorIO")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(patches (search-patches "opencolorio-fix-build-with-gcc11.patch"))
(sha256 (sha256
(base32 "12srvxca51czpfjl0gabpidj9n84mw78ivxy5w75qhq2mmc798sb")) (base32 "1h33s2pfy28nj836kx6xx3iks7v38g3kx7c4f6zn1dpskl0zf809"))
(file-name (git-file-name name version)) (file-name (git-file-name name version))))
(modules '((guix build utils)))
(snippet
`(begin
;; Remove bundled tarballs, patches, and .jars(!). XXX: Upstream
;; claims to have fixed USE_EXTERNAL_YAML, but it still fails with:
;; https://github.com/AcademySoftwareFoundation/OpenColorIO/issues/517
;; When removing it, also remove it from the licence field comment.
(for-each delete-file-recursively
(filter
(lambda (full-name)
(let ((file (basename full-name)))
(not (or (string-prefix? "yaml-cpp-0.3" file)
(string=? "unittest.h" file)))))
(find-files "ext" ".*")))
#t))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags ;; XXX: GPU tests are failing.
(list (string-append "-DCMAKE_CXX_FLAGS=" (list #:configure-flags #~(list "-DOCIO_BUILD_GPU_TESTS=false")))
"-Wno-error=deprecated-declarations "
"-Wno-error=unused-function")
"-DOCIO_BUILD_STATIC=OFF"
;; "-DUSE_EXTERNAL_YAML=ON"
"-DUSE_EXTERNAL_TINYXML=ON"
"-DUSE_EXTERNAL_LCMS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-test-suite
(lambda _
(substitute* "src/core_tests/CMakeLists.txt"
(("/bin/sh") (which "bash")))
#t)))))
(native-inputs (native-inputs
(list git pkg-config)) ;; XXX: OCIO has unit tests for OpenShadingLanguage, but they fail.
;; They also require OIIO, but OCIO is an optional dependency to it.
(list pybind11-2.10 python-wrapper))
(inputs (inputs
;; XXX Adding freeglut, glew, ilmbase, mesa, and openimageio for (list expat
;; ocioconvert fails: error: conflicting declaration ?typedef void freeglut
;; (* PFNGLGETFRAGMENTMATERIALFVSGIXPROC)(GLenum, GLenum, GLfloat*) glew
(list lcms openexr-2 tinyxml)) imath
lcms
libglvnd
minizip-ng
openexr
pystring
yaml-cpp
zlib))
(home-page "https://opencolorio.org") (home-page "https://opencolorio.org")
(synopsis "Color management for visual effects and animation") (synopsis "Color management for visual effects and animation")
(description (description
@ -323,9 +302,7 @@ back-end configuration options suitable for high-end production usage.
OCIO is compatible with the @acronym{ACES, Academy Color Encoding OCIO is compatible with the @acronym{ACES, Academy Color Encoding
Specification} and is @acronym{LUT, look-up table}-format agnostic, supporting Specification} and is @acronym{LUT, look-up table}-format agnostic, supporting
many popular formats.") many popular formats.")
(license (list license:expat ; docs/ociotheme/static, ext/yaml-cpp-* (license license:bsd-3)))
license:zlib ; src/core/md5
license:bsd-3)))) ; the rest
(define-public vtk (define-public vtk
(package (package

View File

@ -28,7 +28,7 @@
;;; Copyright © 2020, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2020, 2021, 2022, 2023 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020, 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org> ;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
@ -2547,7 +2547,7 @@ by AOM, including with alpha.")
(define-public libheif (define-public libheif
(package (package
(name "libheif") (name "libheif")
(version "1.12.0") (version "1.17.6")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2556,16 +2556,14 @@ by AOM, including with alpha.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0cp2d216hp7gw3n56x3g5q5n8jb9ganyanrlibxw8fw16il8nca6")))) (base32 "00rc8ffc2s9dz9szhy0f0raas8wnn5cyni1imd5lqz79by6qz7x6"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;no test target although there is a tests folder
(native-inputs (native-inputs
(list autoconf automake libtool pkg-config)) (list autoconf automake libtool pkg-config))
(inputs (inputs
`(("gdk-pixbuf" ,gdk-pixbuf) ;optional (list gdk-pixbuf ; optional
("libjpeg" ,libjpeg-turbo) libjpeg-turbo
("libpng" ,libpng))) libpng))
;; Propagated to satisfy 'libheif.pc'. ;; Propagated to satisfy 'libheif.pc'.
(propagated-inputs (propagated-inputs
(list dav1d libaom libde265 x265)) (list dav1d libaom libde265 x265))
@ -2606,7 +2604,16 @@ Format) file format decoder and encoder.")
"-DJPEGXL_FORCE_SYSTEM_BROTLI=true" "-DJPEGXL_FORCE_SYSTEM_BROTLI=true"
"-DJPEGXL_FORCE_SYSTEM_LCMS2=true" "-DJPEGXL_FORCE_SYSTEM_LCMS2=true"
"-DJPEGXL_FORCE_SYSTEM_HWY=true" "-DJPEGXL_FORCE_SYSTEM_HWY=true"
"-DJPEGXL_BUNDLE_LIBPNG=false"))) "-DJPEGXL_BUNDLE_LIBPNG=false")
,@(if (target-riscv64?)
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-atomic
(lambda _
(substitute* "lib/jxl/enc_xyb.cc"
(("#include \"lib/jxl/enc_xyb.h\"" a)
(string-append a "\n#include <atomic>")))))))
'())))
(native-inputs (native-inputs
(list asciidoc doxygen googletest pkg-config python)) (list asciidoc doxygen googletest pkg-config python))
(inputs (inputs

View File

@ -69,6 +69,7 @@
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check) #:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz) #:use-module (gnu packages guile-xyz)

View File

@ -78,8 +78,8 @@
;;; When updating Jami, make sure that the patches used for ffmpeg-jami are up ;;; When updating Jami, make sure that the patches used for ffmpeg-jami are up
;;; to date with those listed in ;;; to date with those listed in
;;; <https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/rules.mak>. ;;; <https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/rules.mak>.
(define %jami-nightly-version "20240124.3") (define %jami-nightly-version "20240325.0")
(define %jami-daemon-commit "205904ed4dd736b8a0ea6c913ecb91d637b79867") (define %jami-daemon-commit "32f39e65483cb22729eb922d72434013b337f2c9")
(define-public libjami (define-public libjami
(package (package
@ -93,7 +93,7 @@
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0knq84c5f11bgan0076mhi0kpc7l6wwxj41jpssdy0y1lfzgqd8a")) "0kha2v46l5hmycklhyxrs2qybm640nbrk98z1xvicjxyq6bfszh4"))
(patches (search-patches (patches (search-patches
"libjami-ac-config-files.patch" "libjami-ac-config-files.patch"
"jami-disable-integration-tests.patch")))) "jami-disable-integration-tests.patch"))))
@ -106,25 +106,13 @@
;; user scripts too, until more general purpose Scheme bindings are made ;; user scripts too, until more general purpose Scheme bindings are made
;; available (see: test/agent/README.md). ;; available (see: test/agent/README.md).
#:configure-flags #~(list "--enable-agent" "--enable-debug") #:configure-flags #~(list "--enable-agent" "--enable-debug")
#:make-flags #:make-flags #~(list"V=1") ;build verbosely
#~(list
"V=1" ;build verbosely
;; The 'ut_media_player' is known to fail (see:
;; https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/935).
"XFAIL_TESTS=ut_media_player")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'change-directory/maybe (add-after 'unpack 'change-directory/maybe
(lambda _ (lambda _
;; Allow building from the tarball or a git checkout. ;; Allow building from the tarball or a git checkout.
(false-if-exception (chdir "daemon")))) (false-if-exception (chdir "daemon"))))
(add-after 'change-directory/maybe 'extend-scheduler-test-timeout
(lambda _
;; The ut_scheduler unit test may fail on slower machines (see:
;; https://git.jami.net/savoirfairelinux/jami-daemon/-/issues/939).
(substitute* "test/unitTest/scheduler.cpp"
(("std::chrono::seconds\\(3)")
"std::chrono::seconds(30)"))))
(add-after 'install 'delete-static-libraries (add-after 'install 'delete-static-libraries
;; Remove 100+ MiB of static libraries. "--disable-static" cannot ;; Remove 100+ MiB of static libraries. "--disable-static" cannot
;; be used as the test suite requires access to private symbols ;; be used as the test suite requires access to private symbols
@ -239,11 +227,12 @@ QSortFilterProxyModel conveniently exposed for QML.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"06q4cdizpix12yzjrnhdwqwybskhc58cissffdnf1zw5pbv0mqag")) "08lv8azjd47n56i25d9ax248xmidixpsnwh5kc4qjxib7985bdhs"))
(patches (search-patches (patches (search-patches
"jami-libjami-headers-search.patch" "jami-libjami-headers-search.patch"
"jami-qml-tests-discovery.patch" "jami-qwindowkit.patch"
"jami-skip-tests-requiring-internet.patch" "jami-skip-tests-requiring-internet.patch"
"jami-tests-qtwebengine-ifdef-to-if.patch"
"jami-unbundle-dependencies.patch")))) "jami-unbundle-dependencies.patch"))))
(build-system qt-build-system) (build-system qt-build-system)
(outputs '("out" "debug")) (outputs '("out" "debug"))
@ -252,13 +241,15 @@ QSortFilterProxyModel conveniently exposed for QML.")
#:qtbase qtbase #:qtbase qtbase
#:configure-flags #:configure-flags
#~(list "-DWITH_DAEMON_SUBMODULE=OFF" #~(list "-DWITH_DAEMON_SUBMODULE=OFF"
"-DENABLE_TESTS=ON" "-DBUILD_TESTING=ON"
;; Disable the webengine since it grows the closure size by ;; Disable the webengine since it grows the closure size by
;; about 450 MiB and requires more resources. ;; about 450 MiB and requires more resources.
"-DWITH_WEBENGINE=OFF" "-DWITH_WEBENGINE=OFF"
;; Use libwrap to link directly to libjami instead of ;; Use libwrap to link directly to libjami instead of
;; communicating via D-Bus to jamid, the Jami daemon. ;; communicating via D-Bus to jamid, the Jami daemon.
"-DENABLE_LIBWRAP=ON") "-DENABLE_LIBWRAP=ON"
;; Ensure FetchContent contribs are looked from the system.
"-DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-version-string (add-after 'unpack 'fix-version-string
@ -292,8 +283,9 @@ QSortFilterProxyModel conveniently exposed for QML.")
(display "Running unit tests...\n") (display "Running unit tests...\n")
(invoke "tests/unit_tests") (invoke "tests/unit_tests")
;; XXX: The QML test suite fails, exiting with status code 1 (see: ;; The qml_tests suite is not run, as it currently exits with
;; https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/883). ;; an unclear status of 1 (see:
;; https://git.jami.net/savoirfairelinux/jami-client-qt/-/issues/1605).
;; (display "Running functional tests...\n") ;; (display "Running functional tests...\n")
;; (invoke "tests/qml_tests") ;; (invoke "tests/qml_tests")
)))))) ))))))
@ -301,7 +293,9 @@ QSortFilterProxyModel conveniently exposed for QML.")
(list googletest (list googletest
pkg-config pkg-config
python python
qthttpserver
qttools qttools
qtwebsockets
vulkan-headers)) vulkan-headers))
(inputs (inputs
(list ffmpeg-jami (list ffmpeg-jami
@ -319,6 +313,7 @@ QSortFilterProxyModel conveniently exposed for QML.")
qtnetworkauth qtnetworkauth
qtpositioning qtpositioning
qtsvg qtsvg
qwindowkit
tidy-html ;used by src/app/htmlparser.h tidy-html ;used by src/app/htmlparser.h
vulkan-loader)) vulkan-loader))
(home-page "https://jami.net") (home-page "https://jami.net")

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2023 Frank Pursel <frank.pursel@gmail.com> ;;; Copyright © 2023 Frank Pursel <frank.pursel@gmail.com>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -21,6 +21,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix modules) #:use-module (guix modules)
#:use-module (guix utils) #:use-module (guix utils)
@ -149,6 +150,114 @@ ascii art drawings that contain characters that resemble lines like @samp{|}
@samp{/} @samp{-}), into proper bitmap graphics.") @samp{/} @samp{-}), into proper bitmap graphics.")
(license license:lgpl3))) (license license:lgpl3)))
(define-public java-flatlaf
(package
(name "java-flatlaf")
(version "3.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JFormDesigner/FlatLaf")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1qr7g8s5m89q5k31mnxk18lflz3l2hid4i055mim3b0m4vjs40pi"))
(modules '((guix build utils)))
(snippet
'(for-each
delete-file
(find-files "flatlaf-core/src/main/resources/com/formdev/flatlaf/natives/"
".*")))))
(build-system ant-build-system)
(arguments
(list
#:tests? #false ;XXX requires junit5
#:jar-name "flatlaf.jar"
#:source-dir '(list "flatlaf-core/src/main/java")
#:test-dir '(list "flatlaf-core/src/test")
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'build-native-code
(lambda* (#:key inputs #:allow-other-keys)
(let* ((jdk (assoc-ref inputs "jdk"))
(suffix #$(match (%current-system)
("i686-linux" "i686")
("armhf-linux" "armhf")
("aarch64-linux" "aarch64")
("x86_64-linux" "x86_64")
(_ "generic")))
(lib #$(match (%current-system)
("i686-linux"
"/lib/i386")
("x86_64-linux"
"/lib/amd64")
("armhf-linux"
"/lib/arm")
("aarch64-linux"
"/lib/aarch64")
("powerpc-linux"
"/lib/ppc")
;; We need a catch-all, dropping
;; '-linux' works in most cases.
(_
(string-append
"/lib/"
(string-drop-right
(%current-system) 6)))))
(filename
(string-append "libflatlaf-linux-" suffix ".so"))
(target-dir
(string-append (getcwd)
"/flatlaf-core/src/main/resources/com/formdev/flatlaf/natives")))
(with-directory-excursion "flatlaf-natives/flatlaf-natives-linux/"
(invoke "gcc" "-shared" "-O3" "-fPIC"
"src/main/cpp/ApiVersion.cpp"
"src/main/cpp/X11WmUtils.cpp"
"-Isrc/main/headers"
"-ljawt"
(string-append "-L" jdk lib)
(string-append "-I" jdk "/include")
(string-append "-I" jdk "/include/linux")
"-o" filename)
(install-file filename target-dir)))))
(add-before 'build 'copy-resources
(lambda _
(copy-recursively "flatlaf-core/src/main/resources"
"build/classes"))))))
(inputs (list libx11 libxt))
(home-page "https://www.formdev.com/flatlaf/")
(synopsis "Flat Look and Feel for Java Swing applications")
(description "FlatLaf is a cross-platform Look and Feel for Java Swing
desktop applications. It looks almost flat (no shadows or gradients), clean,
simple and elegant. FlatLaf comes with Light, Dark, IntelliJ and Darcula
themes, scales on HiDPI displays and runs on Java 8 or newer.
The look is heavily inspired by Darcula and IntelliJ themes from IntelliJ IDEA
2019.2+ and uses almost the same colors and icons.")
(license license:asl2.0)))
(define-public java-flatlaf-intellij-themes
(package
(inherit java-flatlaf)
(name "java-flatlaf-intellij-themes")
(arguments
(list
#:tests? #false ;there are none
#:jar-name "flatlaf-intellij-themes.jar"
#:source-dir '(list "flatlaf-intellij-themes/src/main/java")
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'copy-resources
(lambda _
(copy-recursively "flatlaf-intellij-themes/src/main/resources"
"build/classes"))))))
(inputs (list java-flatlaf))
(synopsis "FlatLaf addon with popular themes")
(description "This addon for FlatLaf bundles many popular third party
themes from JetBrains Plugins Repository into a JAR and provides Java classes
to use them.")))
(define-public java-piccolo2d-core (define-public java-piccolo2d-core
(package (package
(name "java-piccolo2d-core") (name "java-piccolo2d-core")
@ -212,7 +321,7 @@ features not found in the core libraries.")))
(define-public java-marlin-renderer (define-public java-marlin-renderer
(package (package
(name "java-marlin-renderer") (name "java-marlin-renderer")
(version "0.9.4.2") (version "0.9.4.8")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -224,11 +333,17 @@ features not found in the core libraries.")))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"12vb8fmxf1smnyv6w8i1khahy76v6r29j1qwabbykxff8i9ndxqv")))) "0gcqp9iq0j5n08gdssh8gp0daj3n5zrx0dll1l4ljhbj2b9jm9ym"))))
(build-system ant-build-system) (build-system ant-build-system)
(arguments (arguments
`(#:jar-name "marlin.jar" (list
#:test-include (list "src/test/java/RunJUnitTest.java"))) #:jar-name "marlin.jar"
#:test-include '(list "src/test/java/RunJUnitTest.java")
#:phases
'(modify-phases %standard-phases
(add-before 'build 'copy-resources
(lambda _
(copy-recursively "src/main/resources" "build/classes"))))))
(inputs (inputs
(list java-hamcrest-core java-junit)) (list java-hamcrest-core java-junit))
(home-page "https://github.com/bourgesl/marlin-renderer/") (home-page "https://github.com/bourgesl/marlin-renderer/")

View File

@ -2,7 +2,7 @@
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017, 2019, 2020, 2022, 2023 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2019, 2020, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017-2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017-2020, 2022-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2021 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@ -826,20 +826,29 @@ roots, or wrestle with obscure build systems.")
(define-public quickjs (define-public quickjs
(package (package
(name "quickjs") (name "quickjs")
(version "2021-03-27") (version "2024-01-13")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://bellard.org/quickjs/quickjs-" (uri (string-append "https://bellard.org/quickjs/quickjs-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"06pywwpmfwjz225h59wf90q96a2fd66qfcw5xa6m6y9k9k7glnx4")))) "00rf45l1bx0yhlv11gn3bbyfqw9724c153bc93mlp9dzjpwghjrw"))
(snippet
#~(begin (use-modules (guix build utils))
(for-each delete-file
'("doc/quickjs.pdf"
"doc/quickjs.html"
"doc/jsbignum.pdf"
"doc/jsbignum.html"))))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list #:make-flags (list #:make-flags
#~(list "prefix=" #~(list (string-append "PREFIX=" #$output)
(string-append "DESTDIR=" #$output) #$@(if (or (target-riscv64?)
#$@(if (target-riscv64?) '("LDFLAGS=-latomic") '())) (target-ppc32?))
'("LDFLAGS=-latomic")
'()))
#:phases #~(modify-phases %standard-phases #:phases #~(modify-phases %standard-phases
(delete 'configure) (delete 'configure)
(replace 'check (replace 'check
@ -848,11 +857,12 @@ roots, or wrestle with obscure build systems.")
(invoke "make" "microbench"))))))) (invoke "make" "microbench")))))))
(home-page "https://bellard.org/quickjs/") (home-page "https://bellard.org/quickjs/")
(synopsis "Small embeddable Javascript engine") (synopsis "Small embeddable Javascript engine")
(description "QuickJS supports the ES2020 specification including modules, (description "QuickJS supports the ES2023 specification including modules,
asynchronous generators, proxies, BigInt and BigDecimal. It can compile asynchronous generators, proxies, BigInt, BigDecimal, BigFloat and operator
Javascript sources to executables with no external dependency. It includes a overloading. It can compile Javascript sources to executables with no external
command line interpreter with contextual colorization implemented in dependency. It includes a command line interpreter with contextual colorization
Javascript and a small built-in standard library with C library wrappers.") implemented in Javascript and a small built-in standard library with C library
wrappers.")
(license license:expat))) (license license:expat)))
(define-public duktape (define-public duktape

View File

@ -103,7 +103,7 @@
(define-public extra-cmake-modules (define-public extra-cmake-modules
(package (package
(name "extra-cmake-modules") (name "extra-cmake-modules")
(version "5.114.0") (version "6.0.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -112,7 +112,7 @@
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0z4nqravsfzlsgvkg5rha2d0qxfr3pfncw7z2fxzzqvzj7mfk6im")))) "030dyw4krnq8hcp0dsqb15zxb7x7r8c33lbdgmmia5xpkpqjp693"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
;; Add test dependency, except on armhf where building it is too ;; Add test dependency, except on armhf where building it is too
@ -569,7 +569,7 @@ Internet).")
(define-public kcolorpicker (define-public kcolorpicker
(package (package
(name "kcolorpicker") (name "kcolorpicker")
(version "0.3.0") (version "0.3.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -579,7 +579,7 @@ Internet).")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1zg078mkdapsd6vq7qy2vxbfzn6i382ss1a1w0xzvpy148ifaj42")))) "1px40rasvz0r5db9av125q9mlyjz4xdnckg2767i3fndj3ic0vql"))))
(build-system qt-build-system) (build-system qt-build-system)
(propagated-inputs (list qtbase-5)) (propagated-inputs (list qtbase-5))
(arguments (arguments
@ -1160,9 +1160,17 @@ protocols used in KDE Plasma.")
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
(invoke "ctest" "-E" (invoke "ctest" "-E"
;; XXX: maybe is upstream bug (string-append
"(kwayland-testWaylandRegistry|\ "("
kwayland-testPlasmaShell|kwayland-testPlasmaWindowModel)"))))))) (string-join
;; XXX: maybe is upstream bug
'("kwayland-testWaylandRegistry"
"kwayland-testPlasmaShell"
"kwayland-testPlasmaWindowModel"
;; The 'kwayland-testXdgForeign' may fail on
;; powerpc64le with a 'Subprocess aborted' error.
"kwayland-testXdgForeign") "|")
")"))))))))
(home-page "https://community.kde.org/Frameworks") (home-page "https://community.kde.org/Frameworks")
(synopsis "Qt-style API to interact with the wayland client and server") (synopsis "Qt-style API to interact with the wayland client and server")
(description "As the names suggest they implement a Client respectively a (description "As the names suggest they implement a Client respectively a
@ -1853,7 +1861,7 @@ by applications to write metadata.")
(define-public kimageannotator (define-public kimageannotator
(package (package
(name "kimageannotator") (name "kimageannotator")
(version "0.7.0") (version "0.7.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1863,10 +1871,11 @@ by applications to write metadata.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1ac0cxbq88zzvkgs5d39xpzk0h7xhl57yswgd760x77py0rl5bqf")))) "1f1y4r5rb971v2g34fgjbr14g0mdms5h66yl5k0p1zf50kr2wnic"))))
(build-system qt-build-system) (build-system qt-build-system)
(arguments (arguments
(list #:configure-flags #~'("-DBUILD_TESTS=ON") (list #:configure-flags #~'("-DBUILD_SHARED_LIBS=ON"
"-DBUILD_TESTS=ON")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(replace 'check (replace 'check
@ -1880,8 +1889,6 @@ by applications to write metadata.")
(list qttools-5 xorg-server-for-tests)) (list qttools-5 xorg-server-for-tests))
(inputs (inputs
(list googletest qtsvg-5 kcolorpicker)) (list googletest qtsvg-5 kcolorpicker))
(propagated-inputs
(list qtbase-5))
(home-page "https://github.com/ksnip/kImageAnnotator") (home-page "https://github.com/ksnip/kImageAnnotator")
(synopsis "Image annotating library") (synopsis "Image annotating library")
(description "This library provides tools to annotate images.") (description "This library provides tools to annotate images.")
@ -1991,7 +1998,7 @@ asynchronous jobs.")
phonon phonon
qtdeclarative-5 qtdeclarative-5
qtbase-5 qtbase-5
qtspeech qtspeech-5
qtx11extras)) qtx11extras))
(arguments (arguments
(list #:phases #~(modify-phases %standard-phases (list #:phases #~(modify-phases %standard-phases
@ -2033,9 +2040,6 @@ covers feedback and persistent events.")
qtbase-5)) qtbase-5))
(arguments (arguments
(list (list
;; The `plasma-querytest' test is known to fail when tests are run in parallel:
;; <https://sources.debian.org/src/kpackage/5.107.0-1/debian/changelog/#L92>
#:parallel-tests? #f
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch (add-after 'unpack 'patch
@ -2062,6 +2066,13 @@ covers feedback and persistent events.")
"filePath(\"etc\", QStringLiteral(\"passwd\"))") "filePath(\"etc\", QStringLiteral(\"passwd\"))")
(("\"/bin/ls\"") (("\"/bin/ls\"")
"\"/etc/passwd\"")))) "\"/etc/passwd\""))))
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; The 'plasma-query' test fails non-deterministically, as
;; reported e.g. in <https://bugs.gentoo.org/919151>.
(substitute* "autotests/CMakeLists.txt"
((".*querytest.*")
""))))
(add-before 'check 'check-setup (add-before 'check 'check-setup
(lambda _ (lambda _
(setenv "HOME" (getcwd))))))) (setenv "HOME" (getcwd)))))))
@ -3255,7 +3266,7 @@ library.")
kwidgetsaddons kwidgetsaddons
kwindowsystem kwindowsystem
qtbase-5 qtbase-5
qtspeech)) qtspeech-5))
(home-page "https://community.kde.org/Frameworks") (home-page "https://community.kde.org/Frameworks")
(synopsis "Text editing widgets") (synopsis "Text editing widgets")
(description "KTextWidgets provides widgets for displaying and editing text. (description "KTextWidgets provides widgets for displaying and editing text.

View File

@ -849,7 +849,7 @@ functions for accessing calendar data using the kcalcore API.")
qtdeclarative-5 qtdeclarative-5
qtkeychain qtkeychain
qtnetworkauth-5 qtnetworkauth-5
qtspeech qtspeech-5
qtwebchannel-5 qtwebchannel-5
qtwebengine-5 qtwebengine-5
qtxmlpatterns)) qtxmlpatterns))
@ -1994,7 +1994,7 @@ unnecessary network operations.")
kwidgetsaddons kwidgetsaddons
kxmlgui kxmlgui
qtbase-5 qtbase-5
qtspeech qtspeech-5
sonnet)) sonnet))
(arguments (arguments
`(#:tests? #f)) ;; TODO - test suite hangs `(#:tests? #f)) ;; TODO - test suite hangs

View File

@ -793,7 +793,7 @@ PipeWire in Qt projects.")
libkscreen libkscreen
libxi libxi
plasma-wayland-protocols plasma-wayland-protocols
qtsensors qtsensors-5
qtbase-5 qtbase-5
qtx11extras qtx11extras
xcb-util)) xcb-util))

View File

@ -152,7 +152,7 @@ well as CD-ROM images.")
qtcharts qtcharts
qtdeclarative-5 qtdeclarative-5
qtmultimedia-5 qtmultimedia-5
qtserialport)) qtserialport-5))
(home-page "https://atelier.kde.org") (home-page "https://atelier.kde.org")
(synopsis "Desktop interface to control 3D printers powered by AtCore") (synopsis "Desktop interface to control 3D printers powered by AtCore")
(description "Atelier provides interface to control and manage your printer. (description "Atelier provides interface to control and manage your printer.
@ -729,7 +729,7 @@ combinations are distinct enough to be readable and accessible.")
"1830r6ylpn3l7y2frl8cih5cpjgbkfrib9jq7jklf8aszhlsihf2")))) "1830r6ylpn3l7y2frl8cih5cpjgbkfrib9jq7jklf8aszhlsihf2"))))
(build-system qt-build-system) (build-system qt-build-system)
(native-inputs (list extra-cmake-modules)) (native-inputs (list extra-cmake-modules))
(inputs (list qtcharts qtdeclarative-5 qtserialport)) (inputs (list qtcharts qtdeclarative-5 qtserialport-5))
(home-page "https://invent.kde.org/libraries/atcore") (home-page "https://invent.kde.org/libraries/atcore")
(synopsis "Library for connection and management of 3D printers") (synopsis "Library for connection and management of 3D printers")
(description (description
@ -875,7 +875,7 @@ whom pressing buttons hurts.")
kxmlgui kxmlgui
breeze-icons ;; default icon set breeze-icons ;; default icon set
qtbase-5 qtbase-5
qtspeech)) qtspeech-5))
(home-page "https://apps.kde.org/kmouth/") (home-page "https://apps.kde.org/kmouth/")
(synopsis "Type-and-say frontend for speech synthesizers") (synopsis "Type-and-say frontend for speech synthesizers")
(description "KMouth is a program which enables persons that cannot speak (description "KMouth is a program which enables persons that cannot speak

View File

@ -233,14 +233,15 @@ browser for easy news reading.")
(define-public gwenview (define-public gwenview
(package (package
(name "gwenview") (name "gwenview")
(version "23.04.3") (version "23.08.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version (uri (string-append "mirror://kde/stable/release-service/" version
"/src/gwenview-" version ".tar.xz")) "/src/gwenview-" version ".tar.xz"))
(sha256 (sha256
(base32 "0vijsq4174p4asdjq47bzdp2xkfn8hpg7b4dgp3yvapfxwjgp148")))) (base32 "0f4h2vf8nkz1jcrxw98n52divvdmxh434659m1pd4l5pag0d3z54"))
(patches (search-patches "gwenview-kimageannotator.patch"))))
(build-system qt-build-system) (build-system qt-build-system)
(arguments (arguments
(list #:phases (list #:phases
@ -249,9 +250,18 @@ browser for easy news reading.")
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(when tests? (when tests?
(invoke "ctest" "-E" (invoke "ctest" "-E"
"(placetreemodeltest|historymodeltest|contextmanagertest|urlutilstest)"))))))) (string-append
"("
(string-join '("placetreemodeltest"
"historymodeltest"
"contextmanagertest"
"urlutilstest")
"|")
")"))))))))
(native-inputs (native-inputs
(list extra-cmake-modules kdoctools pkg-config)) (list extra-cmake-modules
kdoctools
pkg-config))
(inputs (inputs
(list baloo (list baloo
cfitsio cfitsio
@ -272,7 +282,7 @@ browser for easy news reading.")
libtiff libtiff
phonon phonon
purpose purpose
qtimageformats qtimageformats-5
qtsvg-5 qtsvg-5
qtwayland-5 qtwayland-5
qtx11extras qtx11extras
@ -1603,7 +1613,7 @@ creating routes by drag and drop and more.")
kio kio
kparts kparts
kpty kpty
qtspeech qtspeech-5
kwallet kwallet
kwindowsystem kwindowsystem
libkexiv2 libkexiv2

View File

@ -2,7 +2,7 @@
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de> ;;; Copyright © 2017 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@ -137,11 +137,11 @@ version of libusb to run with newer libusb.")
(define-public libusb4java (define-public libusb4java
;; There is no public release so we take the latest version from git. ;; There is no public release so we take the latest version from git.
(let ((commit "396d642a57678a0d9663b062c980fe100cc0ea1e") (let ((commit "0842e8104d8772da873314e233aa625f5651fd34")
(revision "1")) (revision "1"))
(package (package
(name "libusb4java") (name "libusb4java")
(version (string-append "0-" revision "." (string-take commit 9))) (version (git-version "1.3.1" revision commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -150,23 +150,16 @@ version of libusb to run with newer libusb.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0wqgapalhfh9v38ycbl6i2f5lh1wpr6fzwn5dwd0rdacypkd1gml")))) "16hz0h8fvrr764gwj90yny1kxpf0y7p2czr7pdrw3qby21fqkzrq"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; there are no tests (list
#:phases #:tests? #f ;there are no tests
(modify-phases %standard-phases #:phases
;; FIXME: libusb 1.0.22 deprecated libusb_set_debug, so the build #~(modify-phases %standard-phases
;; fails because libusb4java uses a deprecated procedure. (add-before 'configure 'set-JAVA_HOME
(add-after 'unpack 'disable-Werror (lambda _
(lambda _ (setenv "JAVA_HOME" #$(this-package-native-input "jdk")))))))
(substitute* "CMakeLists.txt"
(("-Werror") ""))
#t))
(add-before 'configure 'set-JAVA_HOME
(lambda* (#:key inputs #:allow-other-keys)
(setenv "JAVA_HOME" (assoc-ref inputs "jdk"))
#t)))))
(inputs (inputs
(list libusb)) (list libusb))
(native-inputs (native-inputs
@ -213,7 +206,7 @@ Go-like binding.")
(define-public java-usb4java (define-public java-usb4java
(package (package
(name "java-usb4java") (name "java-usb4java")
(version "1.2.0") (version "1.3.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -222,43 +215,38 @@ Go-like binding.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0aip6k24czz5g58qwb963mpick0b6ks774drfpdd8gcdvj9iv87j")))) "0fwf8d2swgm8pmvssy53ixnc0pb5bfvc8iy42mf3dwgvr1zzvgmv"))))
(build-system ant-build-system) (build-system ant-build-system)
(arguments (arguments
`(#:jar-name "usb4java.jar" (list
#:phases #:jar-name "usb4java.jar"
(modify-phases %standard-phases #:phases
;; Usually, native libusb4java libraries for all supported systems #~(modify-phases %standard-phases
;; would be included in the jar and extracted at runtime. Since we ;; Usually, native libusb4java libraries for all supported systems
;; build everything from source we cannot just bundle pre-built ;; would be included in the jar and extracted at runtime. Since we
;; binaries for other systems. Instead, we patch the loader to ;; build everything from source we cannot just bundle pre-built
;; directly return the appropriate library for this system. The ;; binaries for other systems. Instead, we patch the loader to
;; downside is that the jar will only work on the same architecture ;; directly return the appropriate library for this system. The
;; that it was built on. ;; downside is that the jar will only work on the same architecture
(add-after 'unpack 'copy-libusb4java ;; that it was built on.
(lambda* (#:key inputs #:allow-other-keys) (add-after 'unpack 'copy-libusb4java
(substitute* "src/main/java/org/usb4java/Loader.java" (lambda* (#:key inputs #:allow-other-keys)
(("private static String extractLibrary" line) (substitute* "src/main/java/org/usb4java/Loader.java"
(string-append (("private static String extractLibrary" line)
line "(final String a, final String b) {" (string-append
"return \"" line "(final String a, final String b) {"
(assoc-ref inputs "libusb4java") "/lib/libusb4java.so" "return \""
"\"; }\n" (search-input-file inputs "/lib/libusb4java.so")
"private static String _extractLibrary"))) "\"; }\n"
#t)) "private static String _extractLibrary")))))
(add-after 'unpack 'disable-broken-tests (add-after 'unpack 'disable-broken-tests
(lambda _ (lambda _
(with-directory-excursion "src/test/java/org/usb4java" (with-directory-excursion "src/test/java/org/usb4java"
;; These tests should only be run when USB devices are present. ;; These tests should only be run when USB devices are present.
(substitute* '("LibUsbGlobalTest.java" (substitute* '("LibUsbGlobalTest.java"
"TransferTest.java") "TransferTest.java")
(("this.context = new Context\\(\\);") (("this.context = new Context\\(\\);")
"this.context = null;") "this.context = null;"))))))))
(("LibUsb.init") "//"))
(substitute* "DeviceListIteratorTest.java"
(("this.iterator.remove" line)
(string-append "assumeUsbTestsEnabled();" line))))
#t)))))
(inputs (inputs
(list libusb4java java-commons-lang3 java-junit java-hamcrest-core)) (list libusb4java java-commons-lang3 java-junit java-hamcrest-core))
(home-page "http://usb4java.org/") (home-page "http://usb4java.org/")

View File

@ -34,7 +34,7 @@
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com> ;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com>
;;; Copyright © 2019, 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019, 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com> ;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com>
;;; Copyright © 2019-2022 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2019-2022 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net>
@ -114,6 +114,7 @@
#:use-module (gnu packages calendar) #:use-module (gnu packages calendar)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages cpio) #:use-module (gnu packages cpio)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crypto) #:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup) #:use-module (gnu packages cryptsetup)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
@ -123,6 +124,7 @@
#:use-module (gnu packages disk) #:use-module (gnu packages disk)
#:use-module (gnu packages docbook) #:use-module (gnu packages docbook)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages dlang)
#:use-module (gnu packages elf) #:use-module (gnu packages elf)
#:use-module (gnu packages file) #:use-module (gnu packages file)
#:use-module (gnu packages flex) #:use-module (gnu packages flex)
@ -143,6 +145,7 @@
#:use-module (gnu packages haskell-apps) #:use-module (gnu packages haskell-apps)
#:use-module (gnu packages haskell-xyz) #:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages libunwind) #:use-module (gnu packages libunwind)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages llvm) #:use-module (gnu packages llvm)
@ -166,6 +169,7 @@
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline) #:use-module (gnu packages readline)
#:use-module (gnu packages rrdtool) #:use-module (gnu packages rrdtool)
#:use-module (gnu packages rsync) #:use-module (gnu packages rsync)
@ -197,6 +201,7 @@
#:use-module (guix build-system meson) #:use-module (guix build-system meson)
#:use-module (guix build-system pyproject) #:use-module (guix build-system pyproject)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (guix build-system linux-module) #:use-module (guix build-system linux-module)
#:use-module (guix download) #:use-module (guix download)
@ -497,17 +502,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "mainline" kernel. ;; The current "mainline" kernel.
(define-public linux-libre-6.8-version "6.8.1") (define-public linux-libre-6.8-version "6.8.4")
(define-public linux-libre-6.8-gnu-revision "gnu") (define-public linux-libre-6.8-gnu-revision "gnu")
(define deblob-scripts-6.8 (define deblob-scripts-6.8
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-6.8-version linux-libre-6.8-version
linux-libre-6.8-gnu-revision linux-libre-6.8-gnu-revision
(base32 "1kqwcm8baq3zx1z8jrgnvm9yps3y9jbf4pv1pbqqprpdscgl9089") (base32 "1kqwcm8baq3zx1z8jrgnvm9yps3y9jbf4pv1pbqqprpdscgl9089")
(base32 "04xk6myysrfrhfpq6zah8wk2ska7idmr968nh6pcd0ixbhas2k92"))) (base32 "0j9pj370zismhzw18iyx3lwcby3l3160xgpmh5xa8i8cr38r2z5h")))
(define-public linux-libre-6.8-pristine-source (define-public linux-libre-6.8-pristine-source
(let ((version linux-libre-6.8-version) (let ((version linux-libre-6.8-version)
(hash (base32 "0s7zgk9m545v8y7qjhv7cprrh58j46gpmb8iynyhy2hlwcv8j34d"))) (hash (base32 "0qwywy89an1w0yvs5957kqyv74mwgxady521w2lmyq00zjaw9pnm")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.8))) deblob-scripts-6.8)))
@ -517,17 +522,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major ;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream. ;; versions that are still supported upstream.
(define-public linux-libre-6.7-version "6.7.10") (define-public linux-libre-6.7-version "6.7.12")
(define-public linux-libre-6.7-gnu-revision "gnu") (define-public linux-libre-6.7-gnu-revision "gnu")
(define deblob-scripts-6.7 (define deblob-scripts-6.7
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-6.7-version linux-libre-6.7-version
linux-libre-6.7-gnu-revision linux-libre-6.7-gnu-revision
(base32 "1ddngihfmwffgvxxv8xsppi76r6grvdxr6zzfzvgl9qw07a6c9fd") (base32 "1ddngihfmwffgvxxv8xsppi76r6grvdxr6zzfzvgl9qw07a6c9fd")
(base32 "1lhsy2qnmz47r8m926k1kng912m64j7pnpcvd1ddgdqpq5byp88j"))) (base32 "16zh4cj1q7khl943ij4fzc815plbcdllns93chv6725gsm338hsl")))
(define-public linux-libre-6.7-pristine-source (define-public linux-libre-6.7-pristine-source
(let ((version linux-libre-6.7-version) (let ((version linux-libre-6.7-version)
(hash (base32 "00vw90mypcliq0d72jdh1ql2dfmm7gpswln2qycxdz7rfsrrzfd9"))) (hash (base32 "113rf3jqfpf3wcv637zbq5ww2hpaaf23y6dsmkds01l8jkipjabc")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.7))) deblob-scripts-6.7)))
@ -536,52 +541,52 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; Here are the support timelines: ;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html> ;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.6-version "6.6.22") (define-public linux-libre-6.6-version "6.6.25")
(define-public linux-libre-6.6-gnu-revision "gnu") (define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6 (define deblob-scripts-6.6
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-6.6-version linux-libre-6.6-version
linux-libre-6.6-gnu-revision linux-libre-6.6-gnu-revision
(base32 "1qm8f3fq4yx59f7b6yky5ryyf229ypxnry922sr8cy0s7mp62cmv") (base32 "1qm8f3fq4yx59f7b6yky5ryyf229ypxnry922sr8cy0s7mp62cmv")
(base32 "014w19b9igdy3rpwrqn21why151zlc9hdx2b1qvdkjsbz6smx3lp"))) (base32 "17hq5pirvxaq1yscb204950xlakrd4r4mknjqayh1rzj4rzngzyq")))
(define-public linux-libre-6.6-pristine-source (define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version) (let ((version linux-libre-6.6-version)
(hash (base32 "1x52c6ywmspp3naishzsknhy7i0b7mv9baxx25a0y987cjsygqr3"))) (hash (base32 "0i0zvqlj02rm6wpbidji0rn9559vrpfc1b8gbfjk70lhhyz11llr")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.6))) deblob-scripts-6.6)))
(define-public linux-libre-6.1-version "6.1.82") (define-public linux-libre-6.1-version "6.1.84")
(define-public linux-libre-6.1-gnu-revision "gnu") (define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1 (define deblob-scripts-6.1
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-6.1-version linux-libre-6.1-version
linux-libre-6.1-gnu-revision linux-libre-6.1-gnu-revision
(base32 "1sf80f2i4vf888xjcn84ymn4w5ynn30ib9033zwmv7f09yvfhapy") (base32 "1sf80f2i4vf888xjcn84ymn4w5ynn30ib9033zwmv7f09yvfhapy")
(base32 "08y5smwgbl2l74dlk850pbvn8d1y14cqvll2gbx80vmvfwlzp8c3"))) (base32 "1kp8zl97x1hsmvmdwaq8s8gndfmf8chvlhsw216f86ishi2prws3")))
(define-public linux-libre-6.1-pristine-source (define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version) (let ((version linux-libre-6.1-version)
(hash (base32 "01pcrcjp5mifjjmfz7j1jb8nhq8nkxspavxmv1l7d1qnskcx4l6i"))) (hash (base32 "0ykhl4i6yhryzgjkdbdz4pd3b1ghv84h6mpn7bdx0ra7w7mx55xg")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-6.1))) deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.152") (define-public linux-libre-5.15-version "5.15.153")
(define-public linux-libre-5.15-gnu-revision "gnu") (define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15 (define deblob-scripts-5.15
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
linux-libre-5.15-version linux-libre-5.15-version
linux-libre-5.15-gnu-revision linux-libre-5.15-gnu-revision
(base32 "18ac30kxg2mf2f6gk3p935hzhz2qs110jy4xwk21kblnnkskbxj8") (base32 "18ac30kxg2mf2f6gk3p935hzhz2qs110jy4xwk21kblnnkskbxj8")
(base32 "1a4la9nfdl5qiyfbzhgbqhl638wy1crkgpfnfaj0qf3hg4jsg0g4"))) (base32 "121shkzgixmywa19xx5f2yxg1primarpg4bxin3jyw0214xbfh2n")))
(define-public linux-libre-5.15-pristine-source (define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version) (let ((version linux-libre-5.15-version)
(hash (base32 "0zm4wkryj4mim4fr7pf5g9rlzh31yb1c40lkp85lvcm5yhjm507h"))) (hash (base32 "1g44gjcwcdq5552vwinljqwiy90bxax72jjvdasp71x88khv3pfp")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.15))) deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.213") (define-public linux-libre-5.10-version "5.10.214")
(define-public linux-libre-5.10-gnu-revision "gnu1") (define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10 (define deblob-scripts-5.10
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -591,12 +596,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "12csh2zyjrqzgqcv799gv8h4xaw1irxh2zqddn4jqp5p7psx4j5k"))) (base32 "12csh2zyjrqzgqcv799gv8h4xaw1irxh2zqddn4jqp5p7psx4j5k")))
(define-public linux-libre-5.10-pristine-source (define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version) (let ((version linux-libre-5.10-version)
(hash (base32 "105df7w6m5a3fngi6ajqs5qblaq4lbxsgcppllrk7v1r68i31kw4"))) (hash (base32 "0n7m82hw2rkw5mhdqw0vvmq7kq0s43jalr53sbv09wl17vai9w20")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.10))) deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.272") (define-public linux-libre-5.4-version "5.4.273")
(define-public linux-libre-5.4-gnu-revision "gnu1") (define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4 (define deblob-scripts-5.4
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -606,12 +611,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0x0xg0fcykpd117x3q0gim8jilhx922ashhckjvafxv2gk2zzjhj"))) (base32 "0x0xg0fcykpd117x3q0gim8jilhx922ashhckjvafxv2gk2zzjhj")))
(define-public linux-libre-5.4-pristine-source (define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version) (let ((version linux-libre-5.4-version)
(hash (base32 "0rp3waqrm489crcrms2ls7fxcw5jdkjhazvx82z68gj0kaaxb69m"))) (hash (base32 "0hs7af3mcnk5mmp3c5vjl187nva2kzsdx487nd12a8m7zb9wz84b")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-5.4))) deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.310") (define-public linux-libre-4.19-version "4.19.311")
(define-public linux-libre-4.19-gnu-revision "gnu1") (define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19 (define deblob-scripts-4.19
(linux-libre-deblob-scripts (linux-libre-deblob-scripts
@ -621,7 +626,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0fgkp3v7qgqpn7l1987xcwwlrmwsbscqnxfv06p8nkavrhymrv3c"))) (base32 "0fgkp3v7qgqpn7l1987xcwwlrmwsbscqnxfv06p8nkavrhymrv3c")))
(define-public linux-libre-4.19-pristine-source (define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version) (let ((version linux-libre-4.19-version)
(hash (base32 "0sfy2g9jzxd8ia0idll72l7npi2kssdkz29h8jjxhilgmg299v4m"))) (hash (base32 "10dww3cyazcf3wjzh8igpa0frb8gvl6amnksh42zfkji4mskh2r6")))
(make-linux-libre-source version (make-linux-libre-source version
(%upstream-linux-source version hash) (%upstream-linux-source version hash)
deblob-scripts-4.19))) deblob-scripts-4.19)))
@ -1136,12 +1141,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux") "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-6.7-version)
(define-public linux-libre-gnu-revision linux-libre-6.7-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-6.7-pristine-source)
(define-public linux-libre-source linux-libre-6.7-source)
(define-public linux-libre linux-libre-6.7)
(define-public linux-libre-6.8 (define-public linux-libre-6.8
(make-linux-libre* linux-libre-6.8-version (make-linux-libre* linux-libre-6.8-version
linux-libre-6.8-gnu-revision linux-libre-6.8-gnu-revision
@ -1150,6 +1149,12 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux") "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-6.8-version)
(define-public linux-libre-gnu-revision linux-libre-6.8-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-6.8-pristine-source)
(define-public linux-libre-source linux-libre-6.8-source)
(define-public linux-libre linux-libre-6.8)
(define-public linux-libre-6.6 (define-public linux-libre-6.6
(make-linux-libre* linux-libre-6.6-version (make-linux-libre* linux-libre-6.6-version
linux-libre-6.6-gnu-revision linux-libre-6.6-gnu-revision
@ -1202,11 +1207,11 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
;; Linux-Libre. ;; Linux-Libre.
;; Reference: <https://www.kernel.org/category/releases.html> ;; Reference: <https://www.kernel.org/category/releases.html>
(define-public linux-libre-lts-version linux-libre-6.1-version) (define-public linux-libre-lts-version linux-libre-6.6-version)
(define-public linux-libre-lts-gnu-revision linux-libre-6.1-gnu-revision) (define-public linux-libre-lts-gnu-revision linux-libre-6.6-gnu-revision)
(define-public linux-libre-lts-pristine-source linux-libre-6.1-pristine-source) (define-public linux-libre-lts-pristine-source linux-libre-6.6-pristine-source)
(define-public linux-libre-lts-source linux-libre-6.1-source) (define-public linux-libre-lts-source linux-libre-6.6-source)
(define-public linux-libre-lts linux-libre-6.1) (define-public linux-libre-lts linux-libre-6.6)
;;; ;;;
@ -1382,9 +1387,9 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-with-bpf (define-public linux-libre-with-bpf
(let ((base-linux-libre (let ((base-linux-libre
(make-linux-libre* (make-linux-libre*
linux-libre-6.6-version linux-libre-6.8-version
linux-libre-6.6-gnu-revision linux-libre-6.8-gnu-revision
linux-libre-6.6-source linux-libre-6.8-source
'("x86_64-linux" "i686-linux" "armhf-linux" '("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux") "aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:extra-version "bpf" #:extra-version "bpf"
@ -1811,7 +1816,7 @@ supported under @file{/sys/class/backlight/}.")
(define-public v4l2loopback-linux-module (define-public v4l2loopback-linux-module
(package (package
(name "v4l2loopback-linux-module") (name "v4l2loopback-linux-module")
(version "0.12.7") (version "0.13.1")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -1820,7 +1825,7 @@ supported under @file{/sys/class/backlight/}.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1yghxl7gjr1zxi3a1kiz6d7yh68z64xayzm925zan4jqhrwv1h68")))) "0580pzac0bfb98phmsm5rxmarx22wiprca13n8bk23sdgkzwb706"))))
(build-system linux-module-build-system) (build-system linux-module-build-system)
(arguments (arguments
(list #:tests? #f)) ; no test suite (list #:tests? #f)) ; no test suite
@ -7134,6 +7139,130 @@ not as a replacement for it.")
license:public-domain ; nist/dfft.c license:public-domain ; nist/dfft.c
license:gpl3+)))) ; everything else license:gpl3+)))) ; everything else
(define-public hotspot
(package
(name "hotspot")
(version "1.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/KDAB/hotspot")
(commit (string-append "v" version))
;; Include the bundled perfparser and PrefixTickLabels
;; libraries, which are to be used in source form.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
"0wz4qr3dwjji79x7kj44g7xp11qsscp3b95h6627k8p7xbpi2vhd"))))
(build-system qt-build-system)
(arguments
(list
;; As mentioned in the option help text, the KAuth helper cannot be
;; installed to a custom prefix and the build fails with "file cannot
;; create directory: /polkit-1/actions. Maybe need administrative"
;; (see: https://bugs.kde.org/show_bug.cgi?id=363678).
#:configure-flags #~(list "-DINSTALL_KAUTH_HELPER=OFF")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-perfparser
;; XXX: This phase is copied from qt-creator: keep them in sync!
(lambda* (#:key inputs #:allow-other-keys)
;; perfparser attempts to dynamically load the demangle
;; libraries; use their absolute file name to avoid having to
;; set LD_LIBRARY_PATH.
(let ((librustc_demangle.so
(with-exception-handler (lambda (ex)
(if (search-error? ex)
#f
(raise-exception ex)))
(lambda ()
(search-input-file inputs "lib/librustc_demangle.so"))
#:unwind? #t)))
(substitute* "3rdparty/perfparser/app/demangler.cpp"
(("loadDemangleLib\\(QStringLiteral\\(\"rustc_demangle\")"
all)
(if librustc_demangle.so
(format #f "loadDemangleLib(QStringLiteral(~s)"
librustc_demangle.so)
all)) ;no rustc_demangle; leave unchanged
(("loadDemangleLib\\(QStringLiteral\\(\"d_demangle\")")
(format #f "loadDemangleLib(QStringLiteral(~s)"
(search-input-file inputs
"lib/libd_demangle.so")))))))
(add-after 'unpack 'path-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/perfoutputwidgetkonsole.cpp"
(("\"tail\"")
(format #f "~s" (search-input-file inputs "bin/tail"))))
(substitute* "src/perfrecord.cpp"
(("\"perf( )?\"" _ space)
(string-append "\"" (search-input-file inputs "bin/perf")
(or space "") "\"")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; The 'tst_models' and 'tst_callgraphgenerator' fail, with
;; the later seemingly requiring sudo or access to the kernel
;; trace points.
(invoke "ctest" "-E"
(string-append
"("
(string-join
;; The 'tst_models' expected output doesn't exactly
;; match.
'("tst_models"
;; The 'tst_callgraphgenerator' perf invocation
;; fails when run in the build container.
"tst_callgraphgenerator"
;; The 'tst_perfparser' test requires sudo/access
;; to the kernel scheduler trace points.
"tst_perfparser")
"|")
")"))))))))
(native-inputs
(list extra-cmake-modules
vulkan-headers))
(inputs
(append
(list coreutils-minimal
d-demangler
elfutils
karchive
kconfig
kcoreaddons
kddockwidgets-1 ;see https://github.com/KDAB/hotspot/issues/610
kgraphviewer
kio
kiconthemes
kitemmodels
kitemviews
knotifications
kparts
ksyntaxhighlighting
kwindowsystem
libxkbcommon
perf
qcustomplot
qtbase-5
qtdeclarative-5
qtquickcontrols2-5
qtsvg-5
qtx11extras
solid
threadweaver
`(,zstd "lib"))
(if (supported-package? rust-rustc-demangle-capi-0.1)
(list rust-rustc-demangle-capi-0.1)
'())))
(home-page "https://github.com/KDAB/hotspot")
(synopsis "Performance analysis GUI for Linux perf")
(description "Hotspot is a standalone GUI for performance data analysis.
It aims to be similar to KCachegrind, but for data collected with the
@command{perf}, a profiler for use with the kernel Linux. Its main feature is
graphically visualizing a @file{perf.data} file.")
(license (list license:gpl2+ license:gpl3+)))) ;dual licensed
(define-public ecryptfs-utils (define-public ecryptfs-utils
(package (package
(name "ecryptfs-utils") (name "ecryptfs-utils")

View File

@ -25584,17 +25584,17 @@ Lisp, including:
(substitute* "src/configuration.lisp" (substitute* "src/configuration.lisp"
(("\"libblas.so.3gf\"") (("\"libblas.so.3gf\"")
(string-append "\"" (assoc-ref inputs "lapack") (string-append "\"" (assoc-ref inputs "lapack")
"/lib/libblas.so\"")) "/lib/libopenblas.so\""))
(("\"liblapack.so.3gf\"") (("\"liblapack.so.3gf\"")
(string-append "\"" (assoc-ref inputs "lapack") (string-append "\"" (assoc-ref inputs "lapack")
"/lib/liblapack.so\"")))))))) "/lib/libopenblas.so\""))))))))
(inputs (inputs
`(("anaphora" ,sbcl-anaphora) `(("anaphora" ,sbcl-anaphora)
("alexandria" ,sbcl-alexandria) ("alexandria" ,sbcl-alexandria)
("cffi" ,sbcl-cffi) ("cffi" ,sbcl-cffi)
("cl-num-utils" ,sbcl-cl-num-utils) ("cl-num-utils" ,sbcl-cl-num-utils)
("cl-slice" ,sbcl-cl-slice) ("cl-slice" ,sbcl-cl-slice)
("lapack" ,lapack) ("lapack" ,openblas)
("let-plus" ,sbcl-let-plus))) ("let-plus" ,sbcl-let-plus)))
(native-inputs (native-inputs
(list sbcl-clunit)) (list sbcl-clunit))

View File

@ -874,7 +874,6 @@ interface.")
("sdl-mixer" ,sdl-mixer) ("sdl-mixer" ,sdl-mixer)
("sdl-net" ,sdl-net) ("sdl-net" ,sdl-net)
("sdl-ttf" ,sdl-ttf) ("sdl-ttf" ,sdl-ttf)
("lapack" ,lapack)
("libxft" ,libxft) ("libxft" ,libxft)
("fontconfig" ,fontconfig) ("fontconfig" ,fontconfig)
("gsl" ,gsl) ("gsl" ,gsl)

View File

@ -541,6 +541,16 @@ Performance is achieved by using the LLVM JIT compiler.")
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list (list
#:configure-flags #~'("-DLLAMA_BLAS=ON"
"-DLLAMA_BLAS_VENDOR=OpenBLAS"
"-DLLAMA_NATIVE=OFF" ;no '-march=native'
"-DLLAMA_FMA=OFF" ;and no '-mfma', etc.
"-DLLAMA_AVX2=OFF"
"-DLLAMA_AVX512=OFF"
"-DLLAMA_AVX512_VBMI=OFF"
"-DLLAMA_AVX512_VNNI=OFF")
#:modules '((ice-9 textual-ports) #:modules '((ice-9 textual-ports)
(guix build utils) (guix build utils)
((guix build python-build-system) #:prefix python:) ((guix build python-build-system) #:prefix python:)
@ -575,8 +585,10 @@ Performance is achieved by using the LLVM JIT compiler.")
(lambda _ (lambda _
(copy-file "bin/main" (string-append #$output "/bin/llama"))))))) (copy-file "bin/main" (string-append #$output "/bin/llama")))))))
(inputs (list python)) (inputs (list python))
(native-inputs (list pkg-config))
(propagated-inputs (propagated-inputs
(list python-numpy python-pytorch python-sentencepiece)) (list python-numpy python-pytorch python-sentencepiece openblas))
(properties '((tunable? . #true))) ;use AVX512, FMA, etc. when available
(home-page "https://github.com/ggerganov/llama.cpp") (home-page "https://github.com/ggerganov/llama.cpp")
(synopsis "Port of Facebook's LLaMA model in C/C++") (synopsis "Port of Facebook's LLaMA model in C/C++")
(description "This package provides a port to Facebook's LLaMA collection (description "This package provides a port to Facebook's LLaMA collection
@ -1255,7 +1267,7 @@ model packaging, deployment and workflow management.")
("hdf5" ,hdf5) ("hdf5" ,hdf5)
("atlas" ,atlas) ("atlas" ,atlas)
("arpack" ,arpack-ng) ("arpack" ,arpack-ng)
("lapack" ,lapack) ("openblas" ,openblas)
("glpk" ,glpk) ("glpk" ,glpk)
("libxml2" ,libxml2) ("libxml2" ,libxml2)
("lzo" ,lzo) ("lzo" ,lzo)
@ -1650,7 +1662,6 @@ than 8 bits, and at the end only some significant 8 bits are kept.")
libnsl)) libnsl))
(inputs (inputs
`(("giflib" ,giflib) `(("giflib" ,giflib)
("lapack" ,lapack)
("libjpeg" ,libjpeg-turbo) ("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng) ("libpng" ,libpng)
("libx11" ,libx11) ("libx11" ,libx11)
@ -2518,7 +2529,6 @@ written in C++.")
(base32 "16w90za8narkfi590cxj4p7vc1f5sdxc927g5hk6kh4l3mf6iisl")))) (base32 "16w90za8narkfi590cxj4p7vc1f5sdxc927g5hk6kh4l3mf6iisl"))))
(inputs (inputs
(list alsa-lib (list alsa-lib
lapack ;compared to base kaldi, replacing `(,gfortran "lib")
glib glib
gstreamer gstreamer
jack-2 jack-2
@ -2537,7 +2547,6 @@ written in C++.")
(replace 'configure (replace 'configure
(lambda _ (lambda _
(let ((portaudio #$(this-package-input "portaudio")) (let ((portaudio #$(this-package-input "portaudio"))
(lapack #$(this-package-input "lapack"))
(openfst #$(this-package-input "openfst")) (openfst #$(this-package-input "openfst"))
(openblas #$(this-package-input "openblas"))) (openblas #$(this-package-input "openblas")))
#$@(if (target-x86?) #$@(if (target-x86?)
@ -2571,7 +2580,7 @@ written in C++.")
(string-append "OPENBLASROOT=\"" openblas "\"")) (string-append "OPENBLASROOT=\"" openblas "\""))
(("-L\\$OPENBLASLIBDIR -l:libopenblas.a -l:libblas.a -l:liblapack.a -l:libf2c.a") (("-L\\$OPENBLASLIBDIR -l:libopenblas.a -l:libblas.a -l:liblapack.a -l:libf2c.a")
(string-append "-L$OPENBLASLIBDIR -lopenblas " (string-append "-L$OPENBLASLIBDIR -lopenblas "
"-L" lapack "/lib -lblas -llapack"))) "-L" openblas "/lib -lopenblas")))
(mkdir-p #$output) ; must exist (mkdir-p #$output) ; must exist
(setenv "CONFIG_SHELL" (which "bash")) (setenv "CONFIG_SHELL" (which "bash"))
(setenv "OPENFST_VER" #$(package-version openfst)) (setenv "OPENFST_VER" #$(package-version openfst))
@ -3501,7 +3510,7 @@ learning libraries.")
(define-public xgboost (define-public xgboost
(package (package
(name "xgboost") (name "xgboost")
(version "1.5.2") (version "1.7.6")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -3511,7 +3520,7 @@ learning libraries.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(patches (search-patches "xgboost-use-system-dmlc-core.patch")) (patches (search-patches "xgboost-use-system-dmlc-core.patch"))
(sha256 (sha256
(base32 "0qx04y7cz8z7qv6bk9q7d7ba9b7xzj53l83l2x9ykdwhzacc3dn0")))) (base32 "16fbm5y3hn6ccflmbdlmn7krrdq7c0az3mxd8j1d23s9ky8niw05"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags (list "-DGOOGLE_TEST=ON"))) `(#:configure-flags (list "-DGOOGLE_TEST=ON")))
@ -3538,40 +3547,7 @@ in a fast and accurate way.")
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
#:test-flags #:tests? #f ; all tests require network access
'(list "tests/python"
;; FIXME: CLI tests fail with PermissionError.
"--ignore" "tests/python/test_cli.py"
"-k"
(string-append
"not test_cli_regression_demo"
;; These tests use the Boston dataset that has been
;; removed from scipy.
" and not test_sklearn_demo"
" and not test_sklearn_parallel_demo"
" and not test_predict_shape"
" and not test_num_parallel_tree"
" and not test_boston_housing_regression"
" and not test_boston_housing_rf_regression"
" and not test_parameter_tuning"
" and not test_regression_with_custom_objective"
" and not test_RFECV"
;; Pandas incompatibility? Says:
;; '_CalibratedClassifier' object has no attribute
;; 'base_estimator'
" and not test_pandas_input"
;; Accuracy problems?
" and not test_exact"
" and not test_approx"
" and not test_hist"
;; The tests below open a network connection.
" and not test_model_compatibility"
" and not test_get_group"
" and not test_cv_no_shuffle"
" and not test_cv"
" and not test_training"
;; "'['./runexp.sh']' returned non-zero exit status 1"
" and not test_cli_binary_classification"))
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'preparations (add-after 'unpack 'preparations
@ -5160,8 +5136,7 @@ linear algebra routines needed for structured matrices (or operators).")
(lambda _ (chdir "src"))) (lambda _ (chdir "src")))
(replace 'configure (replace 'configure
(lambda _ (lambda _
(let* ((lapack #$(this-package-input "lapack")) (let* ((openfst #$(this-package-input "openfst"))
(openfst #$(this-package-input "openfst"))
(openblas #$(this-package-input "openblas")) (openblas #$(this-package-input "openblas"))
(kaldi #$(this-package-input "kaldi"))) (kaldi #$(this-package-input "kaldi")))
(substitute* "./Makefile" (substitute* "./Makefile"
@ -5171,8 +5146,7 @@ linear algebra routines needed for structured matrices (or operators).")
"") "")
(("-lopenblas -llapack -lblas -lf2c") (("-lopenblas -llapack -lblas -lf2c")
(string-append (string-append
"-L" openblas "/lib " "-lopenblas " "-L" openblas "/lib " "-lopenblas "))
"-L" lapack "/lib " "-llapack -lblas "))
(("-lfst -lfstngram") (("-lfst -lfstngram")
(string-append (string-append
"-L" openfst "/lib " "-lfst -lfstngram ")) "-L" openfst "/lib " "-lfst -lfstngram "))
@ -5194,7 +5168,7 @@ linear algebra routines needed for structured matrices (or operators).")
(for-each (for-each
(lambda (x) (install-file x src)) (lambda (x) (install-file x src))
(find-files "." "\\.h$")))))))) (find-files "." "\\.h$"))))))))
(inputs (list kaldi openfst lapack openblas)) (inputs (list kaldi openfst openblas))
(home-page "https://alphacephei.com/vosk") (home-page "https://alphacephei.com/vosk")
(synopsis "Speech recognition toolkit based on @code{kaldi}") (synopsis "Speech recognition toolkit based on @code{kaldi}")
(description "\ (description "\

View File

@ -2,6 +2,7 @@
;;; Copyright © 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2024 normally_js <normally_js@posteo.net> ;;; Copyright © 2024 normally_js <normally_js@posteo.net>
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com> ;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2024 TakeV <takev@disroot.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -26,6 +27,7 @@
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-crypto) #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web) #:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)) #:use-module (gnu packages python-xyz))
@ -101,14 +103,14 @@ together, allowing them to pretend they have a direct connection.")
(define-public magic-wormhole (define-public magic-wormhole
(package (package
(name "magic-wormhole") (name "magic-wormhole")
(version "0.13.0") (version "0.14.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "magic-wormhole" version)) (uri (pypi-uri "magic-wormhole" version))
(sha256 (sha256
(base32 (base32
"05hm5pnrxli69a28h3pbgx6s6pwy8279l506kha7y3i7hs1dcfxc")))) "105hsv7ck83bs29929zpb29aygr69q00mxpgq9xw7xxzi2gj6v80"))))
(build-system pyproject-build-system) (build-system pyproject-build-system)
(arguments (arguments
(list (list
@ -130,12 +132,14 @@ together, allowing them to pretend they have a direct connection.")
python-click python-click
python-hkdf python-hkdf
python-humanize python-humanize
python-iterable-io
python-noiseprotocol python-noiseprotocol
python-pynacl python-pynacl
python-spake2 python-spake2
python-tqdm python-tqdm
python-twisted python-twisted
python-txtorcon)) python-txtorcon
python-zipstream-ng))
(home-page "https://github.com/magic-wormhole/magic-wormhole") (home-page "https://github.com/magic-wormhole/magic-wormhole")
(synopsis "Securely transfer data between computers") (synopsis "Securely transfer data between computers")
(description (description

View File

@ -402,6 +402,7 @@ triangulations.")
(add-after 'unpack 'find-libraries (add-after 'unpack 'find-libraries
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
(setenv "CVXOPT_BLAS_LIB" "openblas") (setenv "CVXOPT_BLAS_LIB" "openblas")
(setenv "CVXOPT_LAPACK_LIB" "openblas")
(setenv "CVXOPT_BUILD_FFTW" "1") (setenv "CVXOPT_BUILD_FFTW" "1")
(setenv "CVXOPT_BUILD_GLPK" "1") (setenv "CVXOPT_BUILD_GLPK" "1")
(setenv "CVXOPT_BUILD_GSL" "1") (setenv "CVXOPT_BUILD_GSL" "1")
@ -410,7 +411,6 @@ triangulations.")
(list fftw (list fftw
glpk glpk
gsl gsl
lapack
openblas openblas
suitesparse)) suitesparse))
(home-page "https://www.cvxopt.org") (home-page "https://www.cvxopt.org")
@ -1071,7 +1071,7 @@ halfspaces) or by their double description with both representations.")
(native-inputs (native-inputs
(list pkg-config)) (list pkg-config))
(inputs (inputs
(list eigen lapack gfortran)) (list eigen openblas gfortran))
(synopsis "Fortran subroutines for solving eigenvalue problems") (synopsis "Fortran subroutines for solving eigenvalue problems")
(description (description
"ARPACK-NG is a collection of Fortran77 subroutines designed to solve "ARPACK-NG is a collection of Fortran77 subroutines designed to solve
@ -1198,7 +1198,7 @@ provide LAPACK for someone who does not have access to a Fortran compiler.")
(inputs (inputs
`(("mpi" ,openmpi) `(("mpi" ,openmpi)
("fortran" ,gfortran) ("fortran" ,gfortran)
("lapack" ,lapack))) ;for testing only ("lapack" ,openblas))) ;for testing only
(arguments (arguments
`(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES") `(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES")
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
@ -1434,7 +1434,7 @@ Extern C linkage permits the package routines to be called from C++.")
"153kj4wx386609g21hw3cv5yxps62qqrc64zwb9ryd2xad1w1a4y")))) "153kj4wx386609g21hw3cv5yxps62qqrc64zwb9ryd2xad1w1a4y"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (list gfortran pkg-config)) (native-inputs (list gfortran pkg-config))
(inputs (list cbc ipopt lapack)) (inputs (list cbc ipopt openblas))
(home-page "https://coin-or.github.io/Bonmin/") (home-page "https://coin-or.github.io/Bonmin/")
(synopsis "Basic Open-source Nonlinear Mixed INteger programming") (synopsis "Basic Open-source Nonlinear Mixed INteger programming")
(description "Bonmin is a code for solving general MINLP (Mixed Integer (description "Bonmin is a code for solving general MINLP (Mixed Integer
@ -2152,7 +2152,7 @@ the resulting text.")
;; SOURCE_DATE_EPOCH ;; SOURCE_DATE_EPOCH
(lambda _ (lambda _
(setenv "FORCE_SOURCE_DATE" "1")))))) (setenv "FORCE_SOURCE_DATE" "1"))))))
(inputs (list lapack fftw)) (inputs (list openblas fftw))
;; FIXME: Even though the fonts are available dvips complains: ;; FIXME: Even though the fonts are available dvips complains:
;; "Font cmmi10 not found; characters will be left blank." ;; "Font cmmi10 not found; characters will be left blank."
(native-inputs (native-inputs
@ -2400,7 +2400,8 @@ online as well as original implementations of various other algorithms.")
"08gznhwhqv1x4baksz350ih8q16r5rd0k8vals6078m3h94khr4b")))) "08gznhwhqv1x4baksz350ih8q16r5rd0k8vals6078m3h94khr4b"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:phases (modify-phases %standard-phases '(#:configure-flags (list "--with-lapack=-lopenblas")
#:phases (modify-phases %standard-phases
(add-after 'install 'add--L-flags-in-ipopt.pc (add-after 'install 'add--L-flags-in-ipopt.pc
(lambda* (#:key inputs outputs #:allow-other-keys) (lambda* (#:key inputs outputs #:allow-other-keys)
;; The '.pc' file lists '-llapack -lblas' in "Libs"; ;; The '.pc' file lists '-llapack -lblas' in "Libs";
@ -2413,14 +2414,14 @@ online as well as original implementations of various other algorithms.")
(("Libs: (.*)-llapack -lblas(.*)$" _ before after) (("Libs: (.*)-llapack -lblas(.*)$" _ before after)
(string-append "Libs: " before " " after "\n" (string-append "Libs: " before " " after "\n"
"Libs.private: " before "Libs.private: " before
"-L" lapack "/lib -llapack -lblas " "-L" openblas "/lib -lopenblas"
after "\n"))) after "\n")))
#t)))))) #t))))))
(native-inputs (native-inputs
(list gfortran pkg-config)) (list gfortran pkg-config))
(inputs (inputs
;; TODO: Maybe add dependency on COIN-MUMPS, ASL, and HSL. ;; TODO: Maybe add dependency on COIN-MUMPS, ASL, and HSL.
(list lapack)) ;for both libblas and liblapack (list openblas)) ;for both libblas and liblapack
(home-page "https://www.coin-or.org") (home-page "https://www.coin-or.org")
(synopsis "Large-scale nonlinear optimizer") (synopsis "Large-scale nonlinear optimizer")
(description (description
@ -2763,9 +2764,9 @@ fixed point (16.16) format.")
(lambda* (#:key tests? #:allow-other-keys) (lambda* (#:key tests? #:allow-other-keys)
(substitute* "test/Makefile" (substitute* "test/Makefile"
(("LIBBLAS .*") (("LIBBLAS .*")
"LIBBLAS = -lblas\n") "LIBBLAS = -lopenblas\n")
(("LIBLAPACK .*") (("LIBLAPACK .*")
"LIBLAPACK = -llapack\n")) "LIBLAPACK = -lopenblas\n"))
(when tests? (when tests?
(with-directory-excursion "test" (with-directory-excursion "test"
(mkdir "obj") (mkdir "obj")
@ -2784,7 +2785,7 @@ fixed point (16.16) format.")
"/include/FLAME.h") "/include/FLAME.h")
(string-append static "/include")))))))) (string-append static "/include"))))))))
(inputs (list gfortran)) (inputs (list gfortran))
(native-inputs (list lapack perl python-wrapper)) (native-inputs (list openblas perl python-wrapper))
(synopsis "High-performance library for @acronym{DLA, dense linear algebra} computations") (synopsis "High-performance library for @acronym{DLA, dense linear algebra} computations")
(description "@code{libflame} is a portable library for dense matrix (description "@code{libflame} is a portable library for dense matrix
computations, providing much of the functionality present in LAPACK, developed computations, providing much of the functionality present in LAPACK, developed
@ -2858,7 +2859,7 @@ with constraints.")
(native-inputs (list pkg-config)) (native-inputs (list pkg-config))
;; These inputs need to be propagated to satisfy dependent packages. ;; These inputs need to be propagated to satisfy dependent packages.
(propagated-inputs (list eigen gflags glog)) (propagated-inputs (list eigen gflags glog))
(inputs (list openblas lapack suitesparse)) (inputs (list openblas suitesparse))
(synopsis "C++ library for solving large optimization problems") (synopsis "C++ library for solving large optimization problems")
(description (description
"Ceres Solver is a C++ library for modeling and solving large, "Ceres Solver is a C++ library for modeling and solving large,
@ -2925,7 +2926,7 @@ can solve two kinds of problems:
(define-public octave-cli (define-public octave-cli
(package (package
(name "octave-cli") (name "octave-cli")
(version "8.4.0") (version "9.1.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -2933,7 +2934,7 @@ can solve two kinds of problems:
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1a58zyrl1lx6b6wr2jbf6w806vjxr3jzbh6n85iinag47qxdg6kg")))) "0jqk3amfkqzn1c5rzb9gm3v7r2y5xcgx6cgi4r5w8mpa9814nrgd"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
(list alsa-lib (list alsa-lib
@ -2956,10 +2957,10 @@ can solve two kinds of problems:
libjpeg-turbo libjpeg-turbo
hdf5 hdf5
lapack
libsndfile libsndfile
libxft libxft
mesa mesa
openblas
pcre pcre
portaudio portaudio
qhull qhull
@ -3263,11 +3264,11 @@ compilers.")
glu glu
gmp gmp
hdf5 hdf5
lapack
libx11 libx11
libxext libxext
mesa mesa
metis metis
openblas
opencascade-occt)) opencascade-occt))
(inputs (inputs
(list fontconfig (list fontconfig
@ -4444,7 +4445,6 @@ void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g,
(inputs (inputs
`(("gfortran" ,gfortran) `(("gfortran" ,gfortran)
("blas" ,openblas) ("blas" ,openblas)
("lapack" ,lapack)
("combblas" ,combinatorial-blas))) ("combblas" ,combinatorial-blas)))
(propagated-inputs (propagated-inputs
`(("mpi" ,openmpi) ;headers include MPI heades `(("mpi" ,openmpi) ;headers include MPI heades
@ -4455,7 +4455,7 @@ void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g,
#:configure-flags (list "-DBUILD_SHARED_LIBS:BOOL=YES" #:configure-flags (list "-DBUILD_SHARED_LIBS:BOOL=YES"
"-DTPL_ENABLE_COMBBLASLIB=YES" "-DTPL_ENABLE_COMBBLASLIB=YES"
"-DTPL_BLAS_LIBRARIES=-lopenblas" "-DTPL_BLAS_LIBRARIES=-lopenblas"
"-DTPL_LAPACK_LIBRARIES=-llapack" "-DTPL_LAPACK_LIBRARIES=-lopenblas"
(string-append "-DTPL_PARMETIS_LIBRARIES=" (string-append "-DTPL_PARMETIS_LIBRARIES="
(string-join (string-join
'("ptscotchparmetis" "ptscotch" "ptscotcherr" '("ptscotchparmetis" "ptscotch" "ptscotcherr"
@ -4731,15 +4731,14 @@ schemes.")
(inputs (inputs
`(("fortran" ,gfortran) `(("fortran" ,gfortran)
("blas" ,openblas) ("blas" ,openblas)
("lapack" ,lapack)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
`(#:configure-flags `(,(string-append "BLAS_LIBS=-L" `(#:configure-flags `(,(string-append "BLAS_LIBS=-L"
(assoc-ref %build-inputs "blas") (assoc-ref %build-inputs "blas")
" -lopenblas") " -lopenblas")
,(string-append "LAPACK_LIBS=-L" ,(string-append "LAPACK_LIBS=-L"
(assoc-ref %build-inputs "lapack") (assoc-ref %build-inputs "blas")
" -llapack")) " -lopenblas"))
#:phases (modify-phases %standard-phases #:phases (modify-phases %standard-phases
(add-before 'check 'mpi-setup (add-before 'check 'mpi-setup
,%openmpi-setup)))) ,%openmpi-setup))))
@ -4989,7 +4988,7 @@ full text searching.")
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments `(#:tests? #f)) ; no test target (arguments `(#:tests? #f)) ; no test target
(inputs (inputs
(list openblas lapack arpack-ng)) (list openblas arpack-ng))
(home-page "https://arma.sourceforge.net/") (home-page "https://arma.sourceforge.net/")
(synopsis "C++ linear algebra library") (synopsis "C++ linear algebra library")
(description (description
@ -6791,7 +6790,6 @@ A unique design feature of Trilinos is its focus on packages.")
(list arpack-ng (list arpack-ng
openblas openblas
gfortran gfortran
lapack
muparser muparser
zlib)) zlib))
(propagated-inputs (propagated-inputs
@ -7108,7 +7106,7 @@ set.")
texlive-xcolor texlive-xcolor
texlive-xypic)))) texlive-xypic))))
(inputs (inputs
(list openblas lapack)) (list openblas))
(arguments (arguments
`(#:modules ((srfi srfi-1) `(#:modules ((srfi srfi-1)
,@%gnu-build-system-modules) ,@%gnu-build-system-modules)
@ -7809,7 +7807,6 @@ symmetric matrices.")
(inputs (inputs
(list `(,gfortran "lib") (list `(,gfortran "lib")
gmp gmp
lapack
metis metis
mpc mpc
mpfr mpfr
@ -8047,7 +8044,7 @@ easily be incorporated into existing simulation codes.")
"0nx4sqhmi126m14myzm7syv2053harav9snl0a247wnkcgs5rxrv")))) "0nx4sqhmi126m14myzm7syv2053harav9snl0a247wnkcgs5rxrv"))))
(inputs (inputs
(modify-inputs (package-inputs sundials) (modify-inputs (package-inputs sundials)
(prepend gfortran lapack))) (prepend gfortran openblas)))
(arguments (arguments
'(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon" '(#:configure-flags `("-DCMAKE_C_FLAGS=-O2 -g -fcommon"
"-DSUNDIALS_INDEX_SIZE=32" "-DSUNDIALS_INDEX_SIZE=32"
@ -9792,7 +9789,6 @@ computation is supported via MPI.")
fftw fftw
gettext-minimal gettext-minimal
hdf5-1.10 hdf5-1.10
lapack
libarchive libarchive
libx11 libx11
libxml2 libxml2

View File

@ -88,6 +88,7 @@
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer) #:use-module (gnu packages gstreamer)

View File

@ -410,6 +410,7 @@ interface for the Music Player Daemon.")
gsettings-desktop-schemas gsettings-desktop-schemas
gobject-introspection gobject-introspection
adwaita-icon-theme adwaita-icon-theme
gvfs
python-pygobject)) python-pygobject))
(synopsis "Elegant client for the Music Player Daemon") (synopsis "Elegant client for the Music Player Daemon")
(description "Sonata is an elegant graphical client for the Music Player (description "Sonata is an elegant graphical client for the Music Player

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014-2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org> ;;; Copyright © 2017 Dave Love <fx@gnu.org>
@ -78,7 +78,9 @@
"doc" ;400+ section 3 man pages "doc" ;400+ section 3 man pages
"debug")) "debug"))
(inputs (inputs
(append (list libx11 cairo ncurses expat) (append (if (%current-target-system)
'() ;fewer dependencies when cross-compiling
(list libx11 cairo ncurses expat))
(if (target-arm32?) '() (list numactl)))) (if (target-arm32?) '() (list numactl))))
(propagated-inputs (propagated-inputs
;; hwloc.pc lists it in 'Requires.private'. ;; hwloc.pc lists it in 'Requires.private'.

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015-2023 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2016 Al McElrath <hello@yrns.org> ;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016, 2017, 2019, 2021-2023 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2019, 2021-2023 Efraim Flashner <efraim@flashner.co.il>
@ -135,6 +135,7 @@
#:use-module (gnu packages gnunet) #:use-module (gnu packages gnunet)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gpodder) #:use-module (gnu packages gpodder)
#:use-module (gnu packages graphics) #:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
@ -208,7 +209,7 @@
(define-public alsa-scarlett-gui (define-public alsa-scarlett-gui
(package (package
(name "alsa-scarlett-gui") (name "alsa-scarlett-gui")
(version "0.3.3") (version "0.4.0")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -217,7 +218,7 @@
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1nd764vd7qfy2x8dqapiyh5yrxjimm8b4himhm1qkgpf5hvh734l")))) "1397z3c232n3zpqmpc77lbwv8z5szsbagawl3l7hiizn152hkgpv"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list
@ -243,7 +244,7 @@
"/share/glib-2.0/schemas")))))) "/share/glib-2.0/schemas"))))))
(delete 'configure)))) (delete 'configure))))
(inputs (inputs
(list alsa-lib glib gtk)) (list alsa-lib glib gtk openssl))
(native-inputs (native-inputs
(list `(,glib "bin") pkg-config)) (list `(,glib "bin") pkg-config))
(home-page "https://github.com/geoffreybennett/alsa-scarlett-gui") (home-page "https://github.com/geoffreybennett/alsa-scarlett-gui")
@ -2186,7 +2187,7 @@ your own lessons.")
(define-public powertabeditor (define-public powertabeditor
(package (package
(name "powertabeditor") (name "powertabeditor")
(version "2.0.0-alpha14") (version "2.0.0-alpha19")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -2195,30 +2196,29 @@ your own lessons.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1wsvni2aa9h2bpndlic7ckch4n600ahwm56n521y5vxivwjx3jmj")))) "1fbrfw1ky57nms47pcfdrrwpa2jmgc8vgc68sz96wkvs49zzm5d1"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:phases (list
(modify-phases %standard-phases #:phases
(replace 'check (lambda _ (invoke "bin/pte_tests"))) '(modify-phases %standard-phases
(add-after 'unpack 'fix-pugixml-detection (replace 'check
(lambda _ (lambda* (#:key tests? #:allow-other-keys)
(substitute* "cmake/third_party/pugixml.cmake" (when tests? (invoke "bin/pte_tests")))))))
(("add_library") "#add_library"))
#t)))))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) (list alsa-lib
("boost" ,boost) boost
("minizip" ,minizip) minizip
("pugixml" ,pugixml) nlohmann-json
("qtbase" ,qtbase-5) pugixml
("rapidjson" ,rapidjson) qtbase-5
("rtmidi" ,rtmidi) qttools-5 ;for Qt5LinguistTools
("timidity" ,timidity++) rtmidi
("zlib" ,zlib))) timidity++
zlib))
(native-inputs (native-inputs
(list doctest pkg-config)) (list doctest pkg-config))
(home-page "https://github.com/powertab/powertabedito") (home-page "https://github.com/powertab/powertabeditor")
(synopsis "Guitar tablature editor") (synopsis "Guitar tablature editor")
(description (description
"Power Tab Editor 2.0 is the successor to the famous original Power Tab "Power Tab Editor 2.0 is the successor to the famous original Power Tab
@ -3098,6 +3098,39 @@ using a system-independent interface.")
"This package provides Python bindings to the PortMidi library.") "This package provides Python bindings to the PortMidi library.")
(license license:expat)))) (license license:expat))))
(define-public python-pysmf
(let ((commit "8a98a557470301f5a471d07d37f334a5b8892602")
(revision "1"))
(package
(name "python-pysmf")
(version (git-version "0.1.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mididings/pysmf")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1ic24k8jr7iwcrj7xaw5b9i22al05rxfpjw39bbjsg7v09kvygcv"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'fix-build-system
(lambda _
(substitute* "setup.py"
(("from subprocess") "import sys; from subprocess")))))))
(inputs (list libsmf glib))
(native-inputs (list pkg-config python-cython python-pytest))
(home-page "https://github.com/mididings/pysmf")
(synopsis "Read and write Standard MIDI files")
(description
"pysmf is a Python extension module for reading and writing Standard
MIDI files, based on libsmf.")
(license license:bsd-2))))
(define-public frescobaldi (define-public frescobaldi
(package (package
(name "frescobaldi") (name "frescobaldi")
@ -4395,6 +4428,69 @@ standard MIDI file with the csvmidi program.")
(home-page "https://www.fourmilab.ch/webtools/midicsv/") (home-page "https://www.fourmilab.ch/webtools/midicsv/")
(license license:public-domain))) (license license:public-domain)))
(define-public mididings
(let ((commit "d98265be8afe7da20a5c7cfd0515f0d5fae5c53a")
(revision "1"))
(package
(name "mididings")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mididings/mididings")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1a8i4yac5jjkq0vh73nwkv0j7vnvfwbzzagam4xdl1gpnc26n5xi"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'build-manpages
(lambda _
(with-directory-excursion "doc/man"
(for-each (lambda (doc)
(system (format #false
"scdoc < ~a.scd > ~a.1" doc doc)))
'(livedings mididings send_midi))))))))
(inputs
(list alsa-lib
boost
jack-2
`(,python "tk")
python-dbus
python-decorator
python-pyinotify
python-pyliblo
python-pysmf))
(native-inputs (list python-pytest pkg-config scdoc))
(home-page "https://github.com/mididings/mididings")
(synopsis "MIDI router and processor")
(description
"mididings is a MIDI router/processor based on Python, supporting ALSA
and JACK MIDI. Features include:
@itemize
@item MIDI routing and filtering; filter events depending on their event type,
channel, note number, velocity, etc., and freely route them between an
arbitrary number of input and output ports.
@item Modifying and converting MIDI events; transpose notes, apply velocity
curves, change controller values and ranges, or convert events to any other
MIDI event type. mididings also includes more complex functions like a
diatonic harmonizer, floating split points, latched notes, and more.
@item Seamless switching between patches; set up different \"scenes\", each
with its own MIDI routing and processing, and switch between them at any time,
even while playing. Switching scenes does not affect notes already held, and
does not result in dropouts or stuck notes!
@item MIDI event monitoring, running external commands; print MIDI event data
to the console to help debugging your patches and configuring your MIDI
controllers. In addition to its MIDI output, mididings can also execute shell
commands and send OSC or DBUS messages.
@end itemize")
(license license:gpl2+))))
(define-public gx-guvnor-lv2 (define-public gx-guvnor-lv2
(package (package
(name "gx-guvnor-lv2") (name "gx-guvnor-lv2")
@ -5727,7 +5823,7 @@ at @code{musicbrainz.org}.")
(define-public clyrics (define-public clyrics
(package (package
(name "clyrics") (name "clyrics")
(version "0.13") (version "0.16")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -5736,7 +5832,7 @@ at @code{musicbrainz.org}.")
(commit version))) (commit version)))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0py31linlbphl18wxj5v00gggvxp9djg466mjncf5wpa147hs8r3")))) (base32 "1izlqnzr1a504djhzk1a5k8dwwrkd5iyjfsfm5x48sb3vjlr1fr3"))))
(build-system trivial-build-system) (build-system trivial-build-system)
(inputs (inputs
(list bash ; for the wrapped program (list bash ; for the wrapped program
@ -6723,7 +6819,7 @@ and as an LV2 plugin.")
;; distros to make necessary changes to integrate the software into the ;; distros to make necessary changes to integrate the software into the
;; distribution. ;; distribution.
(name "zrythm") (name "zrythm")
(version "1.0.0-beta.4.9.1") (version "1.0.0-beta.4.12.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -6731,49 +6827,46 @@ and as an LV2 plugin.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0skdb4bpw4v5175yw9wijrc6j36mxjq8i7p8nn9650lipxg6bshd")))) "1kixf8rlim5qvkhcm65rf35mxkxv3hij039jc9rvh710vl2xxm0g"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
(list #:glib-or-gtk? #t (list
#:configure-flags #:glib-or-gtk? #t
#~(list "-Dtests=true" #:configure-flags
"-Dmanpage=false" ;fish-completions breaks this '(list "-Dtests=true"
"-Ddseg_font=false" "-Dmanpage=false" ;fish-completions breaks this
"-Dextra_optimizations=false" ;machine-specific "-Ddseg_font=false"
"-Dgraphviz=enabled" ;for exporting routing graphs "-Dextra_optimizations=false" ;machine-specific
"-Dguile=enabled" ;for Guile scripting "-Dgraphviz=enabled" ;for exporting routing graphs
"-Djack=enabled" ;for JACK audio/MIDI backend "-Dguile=enabled" ;for Guile scripting
"-Drtaudio=enabled" ;for RtAudio backend (ALSA) "-Djack=enabled" ;for JACK audio/MIDI backend
"-Drtmidi=enabled" ;for RtMidi backend (ALSA sequencer) "-Drtaudio=enabled" ;for RtAudio backend (ALSA)
"-Dsdl=enabled") ;for SDL audio backend (which uses ALSA) "-Drtmidi=enabled" ;for RtMidi backend (ALSA sequencer)
#:phases "-Dsdl=enabled") ;for SDL audio backend (which uses ALSA)
#~(modify-phases %standard-phases #:phases
(add-after 'unpack 'patch-tests #~(modify-phases %standard-phases
(lambda _ (add-after 'unpack 'patch-tests
;; io_mkdir must be called with a GError value, not plain (lambda _
;; NULL, or else the assertion in io_mkdir segfaults. ;; zrythm: fails because curl wants to access the internet.
(substitute* "tests/helpers/zrythm.h" ;; project: unknown failure XXX
(("success = io_mkdir \\(tmp_log_dir, NULL\\);" m) ;; The other tests fail with this error:
(string-append "err = NULL; ;; error: attempt to map invalid URI `'
success = io_mkdir (tmp_log_dir, &err);"))) ;; This means that lilv is given an empty LV2 plugin URI.
;; This is probably because we don't provide all LV2
;; zrythm: fails because curl wants to access the internet. ;; plugins that are needed for running the tests.
;; project: unknown failure XXX (substitute* "tests/meson.build"
;; The other tests fail with this error: (("foreach name, info : tests")
;; error: attempt to map invalid URI `' "\
;; This means that lilv is given an empty LV2 plugin URI.
;; This is probably because we don't provide all LV2
;; plugins that are needed for running the tests.
(substitute* "tests/meson.build"
(("foreach name, info : tests")
"\
disabled_tests = { disabled_tests = {
'zrythm': 0,
'project': 0,
'audio/midi_track': 0,
'integration/recording': 0,
'actions/mixer_selections_action': 0, 'actions/mixer_selections_action': 0,
'actions/tracklist_selections': 0 'actions/tracklist_selections': 0,
'dsp/audio_region': 0,
'dsp/audio_track': 0,
'dsp/midi_track': 0,
'dsp/pool': 0,
'integration/recording': 0,
'project': 0,
'zrythm': 0
} }
enabled_tests = {} enabled_tests = {}
foreach name, info : tests foreach name, info : tests
@ -6781,17 +6874,21 @@ success = io_mkdir (tmp_log_dir, &err);")))
enabled_tests += {name: info} enabled_tests += {name: info}
endif endif
endforeach endforeach
foreach name, info : enabled_tests")))) foreach name, info : enabled_tests"))
(add-before 'build 'disable-guile-auto-compilation ;; Requires internet access
(lambda _ (substitute* "data/meson.build"
(setenv "GUILE_AUTO_COMPILE" "0"))) (("if appstream.*\\(\\)")
(add-after 'install 'wrap-program "if false"))))
(lambda _ (add-before 'build 'disable-guile-auto-compilation
(wrap-program (string-append #$output "/bin/zrythm") (lambda _
;; Wrapping GDK_PIXBUF_MODULE_FILE allows Zrythm to load (setenv "GUILE_AUTO_COMPILE" "0")))
;; its own SVG icons in pure environments. (add-after 'install 'wrap-program
`("GDK_PIXBUF_MODULE_FILE" = (lambda _
(,(getenv "GDK_PIXBUF_MODULE_FILE"))))))))) (wrap-program (string-append #$output "/bin/zrythm")
;; Wrapping GDK_PIXBUF_MODULE_FILE allows Zrythm to load
;; its own SVG icons in pure environments.
`("GDK_PIXBUF_MODULE_FILE" =
(,(getenv "GDK_PIXBUF_MODULE_FILE")))))))))
(inputs (inputs
(list alsa-lib (list alsa-lib
boost boost
@ -6810,7 +6907,6 @@ success = io_mkdir (tmp_log_dir, &err);")))
jack-2 jack-2
json-glib json-glib
libadwaita libadwaita
libaudec
(module-ref (module-ref
(resolve-interface '(gnu packages debug)) 'libbacktrace) (resolve-interface '(gnu packages debug)) 'libbacktrace)
libcyaml libcyaml
@ -6820,8 +6916,10 @@ success = io_mkdir (tmp_log_dir, &err);")))
libsndfile libsndfile
libyaml libyaml
lilv lilv
lsp-dsp-lib
lv2 lv2
pango pango
pcre
pipewire pipewire
pulseaudio pulseaudio
reproc reproc
@ -6829,6 +6927,7 @@ success = io_mkdir (tmp_log_dir, &err);")))
rtmidi rtmidi
rubberband rubberband
sdl2 sdl2
soxr
vamp vamp
xdg-utils xdg-utils
xxhash xxhash

View File

@ -3757,7 +3757,7 @@ communication over HTTP.")
(define-public restinio (define-public restinio
(package (package
(name "restinio") (name "restinio")
(version "0.7.1") (version "0.7.2")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -3766,7 +3766,7 @@ communication over HTTP.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"06p9gcnzgynsgfxxa1lk58pq5755px7sn00x2xh21qjnspwld1sy")))) "03ajv1d034z6sjf2xapy8zq1mq2xkz5dqvn51vz2p26ws5axbzrn"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
(list (list
@ -3776,24 +3776,13 @@ communication over HTTP.")
"-DRESTINIO_DEP_LLHTTP=system" "-DRESTINIO_DEP_LLHTTP=system"
"-DRESTINIO_DEP_FMT=system" "-DRESTINIO_DEP_FMT=system"
"-DRESTINIO_DEP_EXPECTED_LITE=system" "-DRESTINIO_DEP_EXPECTED_LITE=system"
"-DRESTINIO_DEP_CATCH2=system" "-DRESTINIO_DEP_CATCH2=find"
;; No support to use a system provided so_5 "-DRESTINIO_DEP_SOBJECTIZER=find")
;; (see:
;; https://github.com/Stiffstream/restinio/issues/207).
"-DRESTINIO_WITH_SOBJECTIZER=OFF")
#:phases #:phases
#~(modify-phases %standard-phases #~(modify-phases %standard-phases
(add-after 'unpack 'change-directory (add-after 'unpack 'change-directory
(lambda _ (lambda _
(chdir "dev"))) (chdir "dev"))))))
(add-after 'change-directory 'use-system-catch2
;; It's not currently possible to select a system-provided catch2,
;; so patch the build system (see:
;; https://github.com/Stiffstream/restinio/issues/208).
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(catch2\\)")
"find_package(Catch2 REQUIRED)")))))))
(native-inputs (native-inputs
(list catch2-3 (list catch2-3
expected-lite expected-lite
@ -3986,8 +3975,8 @@ A very simple IM client working over the DHT.
(define-public dhtnet (define-public dhtnet
;; There is no tag nor release; use the latest available commit. ;; There is no tag nor release; use the latest available commit.
(let ((revision "1") (let ((revision "2")
(commit "41848a2c770d7eb0940d731014b81643f85e0d07")) (commit "024c46fb1f14276d4adf15764ed97b733890826e"))
(package (package
(name "dhtnet") (name "dhtnet")
;; The base version is taken from the CMakeLists.txt file. ;; The base version is taken from the CMakeLists.txt file.
@ -4000,7 +3989,7 @@ A very simple IM client working over the DHT.
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"18v2pjrxfrd26p2z27s90marx7b593nz1xwi47lnp2ja7lm1pj4m")))) "191gmfdg22hkmxvzh5i19lr512q4bhgajhlg9mxxgb7jq0842mc6"))))
(outputs (list "out" "debug")) (outputs (list "out" "debug"))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
@ -4016,11 +4005,10 @@ A very simple IM client working over the DHT.
;; The connectionManager test currently segfaults (see: ;; The connectionManager test currently segfaults (see:
;; https://git.jami.net/savoirfairelinux/dhtnet/-/issues/18). ;; https://git.jami.net/savoirfairelinux/dhtnet/-/issues/18).
((".*tests_connectionManager.*") "") ((".*tests_connectionManager.*") "")
;; The fileutils test fail, asserting an unexpected returned ;; The ICE tests fail inside the containerized build
;; value for the removeAll call when the directory to be ;; environment, perhaps relying on a name resolver (see:
;; removed is missing (see: ;; https://git.jami.net/savoirfairelinux/dhtnet/-/issues/25).
;; https://git.jami.net/savoirfairelinux/dhtnet/-/issues/17). ((".*tests_ice.*") "")))))))
((".*tests_fileutils.*") "")))))))
(native-inputs (list cppunit pkg-config)) (native-inputs (list cppunit pkg-config))
;; This library depends on the Jami fork of pjproject that adds ICE ;; This library depends on the Jami fork of pjproject that adds ICE
;; support. ;; support.
@ -4551,7 +4539,7 @@ network.")
(define-public ngtcp2 (define-public ngtcp2
(package (package
(name "ngtcp2") (name "ngtcp2")
(version "1.3.0") (version "1.4.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -4559,7 +4547,7 @@ network.")
"releases/download/v" version "/" "releases/download/v" version "/"
"ngtcp2-" version ".tar.xz")) "ngtcp2-" version ".tar.xz"))
(sha256 (sha256
(base32 "16qkik9185ygkr351a7q59l1rv6dzw51j4f7vkzfvzh385kqdqy3")))) (base32 "0jnay7m4zkg6v2zcidswv9xbyjgsvjbhwf8ykqjcw1jwkwxl7ldm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
(list (list

View File

@ -8342,9 +8342,14 @@ library FFTW.")
(properties '((tunable? . #t))) (properties '((tunable? . #t)))
(build-system dune-build-system) (build-system dune-build-system)
(arguments (arguments
`(#:tests? #f)) ; No test target. (list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'find-openblas
(lambda* _
(setenv "LACAML_LIBS" "-lopenblas"))))
#:tests? #f)) ; No test target.
(native-inputs (native-inputs
(list openblas lapack ocaml-base ocaml-stdio)) (list openblas ocaml-base ocaml-stdio))
(home-page "https://mmottl.github.io/lacaml/") (home-page "https://mmottl.github.io/lacaml/")
(synopsis (synopsis
"OCaml-bindings to BLAS and LAPACK") "OCaml-bindings to BLAS and LAPACK")

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2023 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2017, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com> ;;; Copyright © 2017 Muriithi Frederick Muriuki <fredmanglis@gmail.com>
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
@ -649,6 +649,18 @@ the Nix package manager.")
(modify-inputs (package-propagated-inputs guix) (modify-inputs (package-propagated-inputs guix)
(delete "guile-ssh")))))) (delete "guile-ssh"))))))
(define-public (guix-for-channels channels)
"Return a package corresponding to CHANNELS."
(package
(inherit guix)
(source (find guix-channel? channels))
(build-system channel-build-system)
(arguments
`(#:channels ,(remove guix-channel? channels)))
(inputs '())
(native-inputs '())
(propagated-inputs '())))
(define-public current-guix-package (define-public current-guix-package
;; This parameter allows callers to override the package that 'current-guix' ;; This parameter allows callers to override the package that 'current-guix'
;; returns. This is useful when 'current-guix' cannot compute it by itself, ;; returns. This is useful when 'current-guix' cannot compute it by itself,
@ -1781,8 +1793,8 @@ in an isolated environment, in separate namespaces.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public nar-herder (define-public nar-herder
(let ((commit "50de312c3a818afd6a93adc17d16ae4ff97ba436") (let ((commit "6ceb0a3b3000ce85a9263833b2398cb44a2871eb")
(revision "25")) (revision "26"))
(package (package
(name "nar-herder") (name "nar-herder")
(version (git-version "0" revision commit)) (version (git-version "0" revision commit))
@ -1793,7 +1805,7 @@ in an isolated environment, in separate namespaces.")
(commit commit))) (commit commit)))
(sha256 (sha256
(base32 (base32
"0nrgh75509ys9cb0p9w5gbsakyz4pcbx6mbfhq47pcjf6h69phb2")) "15vxpm1i3pyv47yp0xgsm3pn4gq0kcqfd4a02q62vyjmbqf0hrpi"))
(file-name (string-append name "-" version "-checkout")))) (file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments

View File

@ -65,14 +65,14 @@
(define-public parallel (define-public parallel
(package (package
(name "parallel") (name "parallel")
(version "20240222") (version "20240322")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-" (uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 "0ml5xicx4lwg2irhl38pdysmq1rmgxcn3m7pjci653r3grm9p87b")) (base32 "15baksvj028im496wivr55mz9zqh74njrrd7djxggarx42d045qb"))
(snippet (snippet
'(begin '(begin
(use-modules (guix build utils)) (use-modules (guix build utils))

View File

@ -94,6 +94,7 @@
#:use-module (gnu packages golang) #:use-module (gnu packages golang)
#:use-module (gnu packages golang-build) #:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-crypto) #:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,29 @@
Submitted By: Douglas R. Reno <renodr at linuxfromscratch dot org>
Date: 2024-02-26
Initial Package Version: 23.08.5
Upstream Status: Rejected (Qt6 port is primary now)
Origin: Self
Description: Fixes building Gwenview with recent kImageAnnotator
and kColorPicker versions by adjusting their paths
and FOUND variables so that the correct libraries are
selected.
--- gwenview-23.08.5.orig/CMakeLists.txt 2024-02-26 15:02:29.702754535 -0600
+++ gwenview-23.08.5/CMakeLists.txt 2024-02-26 15:09:48.012866877 -0600
@@ -166,11 +166,11 @@ if(NOT WITHOUT_X11)
endif()
if (QT_MAJOR_VERSION STREQUAL "5")
- find_package(kImageAnnotator)
- set_package_properties(kImageAnnotator PROPERTIES URL "https://github.com/ksnip/kImageAnnotator" DESCRIPTION "The kImageAnnotator library provides tools to annotate" TYPE REQUIRED)
- if(kImageAnnotator_FOUND)
- set(KIMAGEANNOTATOR_FOUND 1)
- find_package(kColorPicker REQUIRED)
+ find_package(kImageAnnotator-Qt5)
+ set_package_properties(kImageAnnotator-Qt5 PROPERTIES URL "https://github.com/ksnip/kImageAnnotator" DESCRIPTION "The kImageAnnotator library provides tools to annotate" TYPE REQUIRED)
+ if(kImageAnnotator-Qt5_FOUND)
+ set(kImageAnnotator_FOUND 1)
+ find_package(kColorPicker-Qt5 REQUIRED)
if(NOT kImageAnnotator_VERSION VERSION_LESS 0.5.0)
set(KIMAGEANNOTATOR_CAN_LOAD_TRANSLATIONS 1)
endif()

View File

@ -1,15 +0,0 @@
Upstream status: https://review.jami.net/c/jami-client-qt/+/25640
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index d50908cf..587c9d15 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -73,6 +73,8 @@ endif()
string(TOUPPER ${CMAKE_BUILD_TYPE} BUILD_TYPE)
+set(QUICK_TEST_SOURCE_DIR "${CMAKE_SOURCE_DIR}tests/qml/src")
+
set(QML_TESTS_SOURCE_FILES
${CMAKE_SOURCE_DIR}/tests/qml/main.cpp
${TEST_QML_RESOURCES}

View File

@ -0,0 +1,37 @@
Upstream-status: https://lists.gnu.org/archive/html/jami/2024-03/msg00008.html
This makes it possible to use the system-provided qwindowkit library.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6d2dccfb..8dedff50 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -100,13 +100,13 @@ endif()
# qwindowkit (frameless window)
add_fetch_content(
- TARGET qwindowkit
+ TARGET QWindowKit
URL https://github.com/stdware/qwindowkit.git
BRANCH 79b1f3110754f9c21af2d7dacbd07b1a9dbaf6ef
PATCHES ${QWINDOWKIT_PATCHES}
OPTIONS ${QWINDOWKIT_OPTIONS}
)
-list(APPEND CLIENT_INCLUDE_DIRS ${QWindowKit_BINARY_DIR}/include)
+
list(APPEND CLIENT_LIBS QWindowKit::Quick)
set(CMAKE_AUTOMOC ON)
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index b2730b71..4960899e 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -48,7 +48,7 @@ target_include_directories(test_common_obj PRIVATE
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_SOURCE_DIR}/src)
target_link_directories(test_common_obj PRIVATE ${CLIENT_LINK_DIRS})
-target_link_libraries(test_common_obj ${QML_TEST_LIBS})
+target_link_libraries(test_common_obj ${QML_TEST_LIBS} ${CLIENT_LIBS})
target_compile_definitions(test_common_obj PRIVATE BUILD_TESTING="ON")
set(COMMON_TESTS_SOURCES

View File

@ -0,0 +1,26 @@
Upstream-status: https://lists.gnu.org/archive/html/jami/2024-03/msg00005.html
Fix macro value checking.
diff --git a/tests/qml/main.cpp b/tests/qml/main.cpp
index 2fbecebe..8cb3de69 100644
--- a/tests/qml/main.cpp
+++ b/tests/qml/main.cpp
@@ -35,7 +35,7 @@
#include <QtQuickTest/quicktest.h>
#include <QSignalSpy>
-#ifdef WITH_WEBENGINE
+#if WITH_WEBENGINE
#include <QtWebEngineCore>
#include <QtWebEngineQuick>
#endif
@@ -192,7 +192,7 @@ main(int argc, char** argv)
// Allow the user to enable fatal warnings for certain tests.
Utils::remove_argument(argv, argc, "--failonwarn", [&]() { qputenv("QT_FATAL_WARNINGS", "1"); });
-#ifdef WITH_WEBENGINE
+#if WITH_WEBENGINE
QtWebEngineQuick::initialize();
#endif
QTEST_SET_MAIN_SOURCE_PATH

View File

@ -16,13 +16,14 @@ Change-Id: I637959fefce6a21b0ee73a793acb6c3c42dcdce0
1 file changed, 25 insertions(+), 11 deletions(-) 1 file changed, 25 insertions(+), 11 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt
index 38e7a4e2..3f1bd599 100644 index e802357f..6d2dccfb 100644
--- a/CMakeLists.txt --- a/CMakeLists.txt
+++ b/CMakeLists.txt +++ b/CMakeLists.txt
@@ -545,19 +545,33 @@ add_subdirectory(3rdparty/SortFilterProxyModel) @@ -600,20 +600,34 @@ add_subdirectory(3rdparty/SortFilterProxyModel)
set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>) set(SFPM_OBJECTS $<TARGET_OBJECTS:SortFilterProxyModel>)
# md4c # md4c
-set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html executable" FORCE)
-set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE) -set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
-add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL) -add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
-list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src) -list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)
@ -34,6 +35,7 @@ index 38e7a4e2..3f1bd599 100644
+ list(APPEND CLIENT_LIBS md4c::md4c-html) + list(APPEND CLIENT_LIBS md4c::md4c-html)
+else() +else()
+ message("Using bundled md4c-html library") + message("Using bundled md4c-html library")
+ set(BUILD_MD2HTML_EXECUTABLE OFF CACHE BOOL "Don't build md2html executable" FORCE)
+ set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE) + set(BUILD_SHARED_LIBS OFF CACHE BOOL "Don't build shared md4c library" FORCE)
+ add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL) + add_subdirectory(3rdparty/md4c EXCLUDE_FROM_ALL)
+ list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src) + list(APPEND CLIENT_LINK_DIRS ${MD4C_BINARY_DIR}/src)

View File

@ -0,0 +1,47 @@
Remove code added by 'JiaT75', the malicious actor that backdoored `xz`:
https://github.com/libarchive/libarchive/pull/2101
At libarchive, they are reviewing all code contributed by this actor:
https://github.com/libarchive/libarchive/issues/2103
See the original disclosure and subsequent discussion for more
information about this incident:
https://seclists.org/oss-sec/2024/q1/268
Patch copied from upstream source repository:
https://github.com/libarchive/libarchive/pull/2101/commits/e200fd8abfb4cf895a1cab4d89b67e6eefe83942
From 6110e9c82d8ba830c3440f36b990483ceaaea52c Mon Sep 17 00:00:00 2001
From: Ed Maste <emaste@freebsd.org>
Date: Fri, 29 Mar 2024 18:02:06 -0400
Subject: [PATCH] tar: make error reporting more robust and use correct errno
(#2101)
As discussed in #1609.
---
tar/read.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/tar/read.c b/tar/read.c
index af3d3f42..a7f14a07 100644
--- a/tar/read.c
+++ b/tar/read.c
@@ -371,8 +371,9 @@ read_archive(struct bsdtar *bsdtar, char mode, struct archive *writer)
if (r != ARCHIVE_OK) {
if (!bsdtar->verbose)
safe_fprintf(stderr, "%s", archive_entry_pathname(entry));
- fprintf(stderr, ": %s: ", archive_error_string(a));
- fprintf(stderr, "%s", strerror(errno));
+ safe_fprintf(stderr, ": %s: %s",
+ archive_error_string(a),
+ strerror(archive_errno(a)));
if (!bsdtar->verbose)
fprintf(stderr, "\n");
bsdtar->return_value = 1;
--
2.41.0

View File

@ -1,37 +0,0 @@
Fix build failure with GCC 11:
------
[...]
/tmp/guix-build-opencolorio-1.1.1.drv-0/source/src/core/ImageDesc.cpp:60:51: error: this pointer is null [-Werror=nonnull]
60 | os << "width=" << packedImg->getWidth() << ", ";
| ^
/tmp/guix-build-opencolorio-1.1.1.drv-0/source/src/core/ImageDesc.cpp:274:10: note: in a call to non-static member function long int OpenColorIO::v1::PackedImageDesc::getWidth() const
274 | long PackedImageDesc::getWidth() const
| ^~~~~~~~~~~~~~~
/tmp/guix-build-opencolorio-1.1.1.drv-0/source/src/core/ImageDesc.cpp:61:53: error: this pointer is null [-Werror=nonnull]
61 | os << "height=" << packedImg->getHeight() << ", ";
| ^
/tmp/guix-build-opencolorio-1.1.1.drv-0/source/src/core/ImageDesc.cpp:279:10: note: in a call to non-static member function long int OpenColorIO::v1::PackedImageDesc::getHeight() const
279 | long PackedImageDesc::getHeight() const
| ^~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
[...]
------
Patch copied from Gentoo:
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7e726d850502018b6760da78dbd4a419603016b8
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 1eb691b6..cff9bd83 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -23,8 +23,6 @@ if(WIN32)
if("${CMAKE_BUILD_TYPE}" STREQUAL "Release")
set(EXTERNAL_COMPILE_FLAGS "${EXTERNAL_COMPILE_FLAGS} /WX")
endif()
-else()
- set(EXTERNAL_COMPILE_FLAGS "${EXTERNAL_COMPILE_FLAGS} -Werror")
endif()
# SHARED

View File

@ -1,61 +0,0 @@
From 1036d77b34a5fa15e56f516b81b9928006848cbd Mon Sep 17 00:00:00 2001
From: Damien Miller <djm@mindrot.org>
Date: Fri, 22 Dec 2023 17:56:26 +1100
Subject: [PATCH] better detection of broken -fzero-call-used-regs
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
gcc 13.2.0 on ppc64le refuses to compile some function, including
cipher.c:compression_alg_list() with an error:
> sorry, unimplemented: argument used is not supportedcw
> for -fzero-call-used-regs on this target
This extends the autoconf will-it-work test with a similarly-
structured function that seems to catch this.
Spotted/tested by Colin Watson; bz3645
---
Taken from upsteam, and for Guix by jackhill@jackhill.us
Thanks Marcel van der Boom for noticing: https://issues.guix.gnu.org/67948#2
m4/openssh.m4 | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/m4/openssh.m4 b/m4/openssh.m4
index 5d4c56280..033df501c 100644
--- a/m4/openssh.m4
+++ b/m4/openssh.m4
@@ -20,18 +20,24 @@ char *f2(char *s, ...) {
va_end(args);
return strdup(ret);
}
+const char *f3(int s) {
+ return s ? "good" : "gooder";
+}
int main(int argc, char **argv) {
- (void)argv;
char b[256], *cp;
+ const char *s;
/* Some math to catch -ftrapv problems in the toolchain */
int i = 123 * argc, j = 456 + argc, k = 789 - argc;
float l = i * 2.1;
double m = l / 0.5;
long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
+ (void)argv;
f(1);
- snprintf(b, sizeof b, "%d %d %d %f %f %lld %lld\n", i,j,k,l,m,n,o);
+ s = f3(f(2));
+ snprintf(b, sizeof b, "%d %d %d %f %f %lld %lld %s\n", i,j,k,l,m,n,o,s);
if (write(1, b, 0) == -1) exit(0);
- cp = f2("%d %d %d %f %f %lld %lld\n", i,j,k,l,m,n,o);
+ cp = f2("%d %d %d %f %f %lld %lld %s\n", i,j,k,l,m,n,o,s);
+ if (write(1, cp, 0) == -1) exit(0);
free(cp);
/*
* Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does
--
2.41.0

View File

@ -0,0 +1,49 @@
Patch retrieved from NixOS
https://github.com/NixOS/nixpkgs/blob/93ecdaa1f34354c9476062dc4fe323b442c087d5/pkgs/development/libraries/qt-6/patches/0006-qtbase-find-tools-in-PATH.patch
From a8b9fae710a2bd5e743f5e16364eaa8c38dbd784 Mon Sep 17 00:00:00 2001
From: rewine <luhongxu@deepin.org>
Date: Wed, 29 Mar 2023 11:51:33 +0800
Subject: [PATCH 06/11] qtbase-find-tools-in-PATH
1. find qt's tools in `QTTOOLSPATH` env
qt assumes that all components use the same install prefix
we can't get the real prefix for qttools when build qtbase
we will add /libexec to `QTTOOLSPATH` in qtToolsHook
find_path will also search in 'PATH' by default
see `CMAKE_FIND_USE_SYSTEM_ENVIRONMENT_PATH`
2. disable tool_dependencies_enabled
We can guarantee the build order of qt components in nixpkgs
tools in qttools always build before qtdoc
qdoc_bin is not a build target now, since we find it in `QTTOOLSPATH`
---
cmake/QtDocsHelpers.cmake | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/cmake/QtDocsHelpers.cmake b/cmake/QtDocsHelpers.cmake
index 48ed5a324bf..91d8d41fb1f 100644
--- a/cmake/QtDocsHelpers.cmake
+++ b/cmake/QtDocsHelpers.cmake
@@ -47,9 +47,14 @@ function(qt_internal_add_docs)
set(doc_tools_libexec "${QT_BUILD_INTERNALS_RELOCATABLE_INSTALL_PREFIX}/${INSTALL_LIBEXECDIR}")
endif()
- set(qdoc_bin "${doc_tools_bin}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
- set(qtattributionsscanner_bin "${doc_tools_libexec}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
- set(qhelpgenerator_bin "${doc_tools_libexec}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
+ set(tool_dependencies_enabled FALSE)
+
+ find_path(qdoc_path name qdoc PATHS ENV QTTOOLSPATH)
+ find_path(qtattributionsscanner_path name qtattributionsscanner PATHS ENV QTTOOLSPATH)
+ find_path(qhelpgenerator_path name qhelpgenerator PATHS ENV QTTOOLSPATH)
+ set(qdoc_bin "${qdoc_path}/qdoc${CMAKE_EXECUTABLE_SUFFIX}")
+ set(qtattributionsscanner_bin "${qtattributionsscanner_path}/qtattributionsscanner${CMAKE_EXECUTABLE_SUFFIX}")
+ set(qhelpgenerator_bin "${qhelpgenerator_path}/qhelpgenerator${CMAKE_EXECUTABLE_SUFFIX}")
get_target_property(target_type ${target} TYPE)
if (NOT target_type STREQUAL "INTERFACE_LIBRARY")
--
2.42.0

View File

@ -0,0 +1,29 @@
Patch retrieved from NixOS
https://github.com/NixOS/nixpkgs/blob/93ecdaa1f34354c9476062dc4fe323b442c087d5/pkgs/development/libraries/qt-6/patches/0003-qtbase-qmake-fix-includedir-in-generated-pkg-config.patch
From 6088085d3074316dd74639fc6c1233e5862aff11 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Fri, 14 Apr 2023 09:34:46 +0800
Subject: [PATCH 03/11] qtbase: qmake: fix includedir in generated pkg-config
---
qmake/generators/makefile.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
index 11d2f0ff7df..c78ed0d3485 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
@@ -3412,8 +3412,7 @@ MakefileGenerator::writePkgConfigFile()
<< varGlue("QMAKE_PKGCONFIG_CFLAGS", "", " ", " ")
// << varGlue("DEFINES","-D"," -D"," ")
;
- if (!project->values("QMAKE_DEFAULT_INCDIRS").contains(includeDir))
- t << "-I${includedir}";
+ t << "-I${includedir}";
if (target_mode == TARG_MAC_MODE && project->isActiveConfig("lib_bundle")
&& libDir != QLatin1String("/Library/Frameworks")) {
t << " -F${libdir}";
--
2.42.0

View File

@ -0,0 +1,33 @@
Retrieved from nixpkgs.
Modified to use QML_IMPORT_PATH instead of QML2_IMPORT_PATH.
From d7a9a3b0ecdbb1b5829f25954d763d767f1c8794 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 10:12:56 -0400
Subject: [PATCH 07/11] qtbase: pass to qmlimportscanner the QML2_IMPORT_PATH
---
src/tools/macdeployqt/shared/shared.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/tools/macdeployqt/shared/shared.cpp b/src/tools/macdeployqt/shared/shared.cpp
index 2ae4f998944..ba10ae02bcd 100644
--- a/src/tools/macdeployqt/shared/shared.cpp
+++ b/src/tools/macdeployqt/shared/shared.cpp
@@ -1297,6 +1297,13 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
argumentList.append( "-importPath");
argumentList.append(qmlImportsPath);
+ // In a modularized installation of qt as we have in Nix, instead, we will
+ // read the paths from the environment, as they are spread in multiple
+ // locations and normally set in the environment like this
+ auto envQmlImportPaths = ::qgetenv("QML_IMPORT_PATH").split(':');
+ for (const QString &importPath : envQmlImportPaths)
+ argumentList << "-importPath" << importPath;
+
// run qmlimportscanner
QProcess qmlImportScanner;
qmlImportScanner.start(qmlImportScannerPath, argumentList);
--
2.42.0

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