summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Kehayias <john.kehayias@protonmail.com>2024-01-07 21:27:27 -0500
committerJohn Kehayias <john.kehayias@protonmail.com>2024-01-07 21:27:27 -0500
commitd9dee5ea2f564fa6979ae552fd9bd5ac22f86ecc (patch)
tree8d1b2f89808f9e7ddbeddeab7563f3ab82e533cd
parentef4e4c9a2ccc1678182fa6e4409fff13c669fd14 (diff)
parent3de361d9c9d320aefbd43710124d7b07af891de1 (diff)
Merge branch 'master' into mesa-updatesorigin/mesa-updates
Change-Id: I0b92a95109688a1a4c50572bc25a4e5676e0921e
-rw-r--r--.mailmap1
-rwxr-xr-xbuild-aux/test-driver.scm3
-rw-r--r--doc/guix.texi80
-rwxr-xr-xetc/teams.scm20
-rw-r--r--etc/teams/rust/rust-manifest.scm34
-rw-r--r--gnu/local.mk3
-rw-r--r--gnu/packages/admin.scm4
-rw-r--r--gnu/packages/bioconductor.scm38
-rw-r--r--gnu/packages/bioinformatics.scm228
-rw-r--r--gnu/packages/bootloaders.scm58
-rw-r--r--gnu/packages/bootstrap.scm5
-rw-r--r--gnu/packages/display-managers.scm80
-rw-r--r--gnu/packages/education.scm6
-rw-r--r--gnu/packages/emacs-xyz.scm285
-rw-r--r--gnu/packages/engineering.scm14
-rw-r--r--gnu/packages/finance.scm4
-rw-r--r--gnu/packages/firmware.scm4
-rw-r--r--gnu/packages/fonts.scm29
-rw-r--r--gnu/packages/game-development.scm131
-rw-r--r--gnu/packages/games.scm157
-rw-r--r--gnu/packages/gcc.scm5
-rw-r--r--gnu/packages/geo.scm28
-rw-r--r--gnu/packages/gnuzilla.scm33
-rw-r--r--gnu/packages/golang-web.scm5
-rw-r--r--gnu/packages/golang.scm52
-rw-r--r--gnu/packages/graph.scm50
-rw-r--r--gnu/packages/graphviz.scm12
-rw-r--r--gnu/packages/guile-xyz.scm151
-rw-r--r--gnu/packages/libsigsegv.scm27
-rw-r--r--gnu/packages/linux.scm14
-rw-r--r--gnu/packages/lisp-check.scm6
-rw-r--r--gnu/packages/lisp-xyz.scm348
-rw-r--r--gnu/packages/lisp.scm8
-rw-r--r--gnu/packages/machine-learning.scm22
-rw-r--r--gnu/packages/minetest.scm6
-rw-r--r--gnu/packages/mpd.scm5
-rw-r--r--gnu/packages/multiprecision.scm4
-rw-r--r--gnu/packages/networking.scm56
-rw-r--r--gnu/packages/parallel.scm4
-rw-r--r--gnu/packages/patches/dtc-meson-cell-overflow.patch32
-rw-r--r--gnu/packages/patches/emacs-ess-fix-obsolete-function-alias.patch23
-rw-r--r--gnu/packages/patches/python-uqbar-python3.10.patch23
-rw-r--r--gnu/packages/plan9.scm136
-rw-r--r--gnu/packages/python-xyz.scm138
-rw-r--r--gnu/packages/shellutils.scm4
-rw-r--r--gnu/packages/statistics.scm132
-rw-r--r--gnu/packages/swig.scm4
-rw-r--r--gnu/packages/tbb.scm46
-rw-r--r--gnu/packages/textutils.scm4
-rw-r--r--gnu/packages/tls.scm29
-rw-r--r--gnu/packages/valgrind.scm4
-rw-r--r--gnu/packages/version-control.scm219
-rw-r--r--gnu/packages/video.scm175
-rw-r--r--gnu/packages/wm.scm4
-rw-r--r--gnu/packages/xfce.scm8
-rw-r--r--gnu/services/base.scm4
-rw-r--r--gnu/services/shepherd.scm21
-rw-r--r--gnu/services/xorg.scm15
-rw-r--r--guix/build-system/zig.scm118
-rw-r--r--guix/build/zig-build-system.scm7
-rw-r--r--guix/platforms/x86.scm10
-rw-r--r--guix/ui.scm4
-rw-r--r--guix/utils.scm12
-rw-r--r--nix/libstore/globals.cc4
64 files changed, 2178 insertions, 1018 deletions
diff --git a/.mailmap b/.mailmap
index ee6dd3f4f2..39b01335ee 100644
--- a/.mailmap
+++ b/.mailmap
@@ -90,6 +90,7 @@ Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
Theodoros Foradis <theodoros.for@openmailbox.org> <theodoros@foradis.org>
Thomas Danckaert <thomas.danckaert@gmail.com> <post@thomasdanckaert.be>
Tobias Geerinckx-Rice <me@tobias.gr> <tobias.geerinckx.rice@gmail.com>
+Tomas Volf <~@wolfsden.cz> <wolf@wolfsden.cz>
Tomáš Čech <sleep_walker@gnu.org> <sleep_walker@suse.cz>
Vincent Legoll <vincent.legoll@gmail.com> <vincent.legoll@idgrilles.fr>
Zheng Junjie <873216071@qq.com> Z572 <873216071@qq.com>
diff --git a/build-aux/test-driver.scm b/build-aux/test-driver.scm
index 1cdd4ff8f7..901f6ab9ec 100755
--- a/build-aux/test-driver.scm
+++ b/build-aux/test-driver.scm
@@ -3,7 +3,7 @@ exec guile --no-auto-compile -e main -s "$0" "$@"
!#
;;;; test-driver.scm - Guile test driver for Automake testsuite harness
-(define script-version "2021-02-02.05") ;UTC
+(define script-version "2023-12-08.14") ;UTC
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@@ -274,6 +274,7 @@ cases based on their names."
(exit 0)))
;;; Local Variables:
+;;; mode: scheme
;;; eval: (add-hook 'write-file-functions 'time-stamp)
;;; time-stamp-start: "(define script-version \""
;;; time-stamp-format: "%:y-%02m-%02d.%02H"
diff --git a/doc/guix.texi b/doc/guix.texi
index 924dbf23ba..fc18deb85b 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1799,7 +1799,7 @@ Setup}), or simply fail.
When the build or substitution process remains silent for more than
@var{seconds}, terminate it and report a build failure.
-The default value is @code{0}, which disables the timeout.
+The default value is @code{3600} (one hour).
The value specified here can be overridden by clients (@pxref{Common
Build Options, @option{--max-silent-time}}).
@@ -1808,7 +1808,7 @@ Build Options, @option{--max-silent-time}}).
Likewise, when the build or substitution process lasts for more than
@var{seconds}, terminate it and report a build failure.
-The default value is @code{0}, which disables the timeout.
+The default value is 24 hours.
The value specified here can be overridden by clients (@pxref{Common
Build Options, @option{--timeout}}).
@@ -19455,8 +19455,8 @@ few seconds when enough entropy is available and is only done once; you
might want to turn it off for instance in a virtual machine that does
not need it and where the extra boot time is a problem.
-@item @code{max-silent-time} (default: @code{0})
-@itemx @code{timeout} (default: @code{0})
+@item @code{max-silent-time} (default: @code{3600})
+@itemx @code{timeout} (default: @code{(* 3600 24)})
The number of seconds of silence and the number of seconds of activity,
respectively, after which a build process times out. A value of zero
disables the timeout.
@@ -45243,25 +45243,25 @@ PulseAudio clients to use PipeWire transparently.
@node Mail Home Services
@subsection Mail Home Services
-
+
The @code{(gnu home services mail)} module provides services that help
you set up the tools to work with emails in your home environment.
-
+
@cindex msmtp
@uref{https://marlam.de/msmtp, MSMTP} is a @acronym{SMTP, Simple Mail
Transfer Protocol} client. It sends mail to a predefined SMTP server
that takes care of proper delivery.
-
+
The service reference is given below.
-
+
@defvar home-msmtp-service-type
This is the service type for @command{msmtp}. Its value must be a
@code{home-msmtp-configuration}, as shown below. It provides the
@file{~/.config/msmtp/config} file.
-
+
As an example, here is how you would configure @code{msmtp} for a single
account:
-
+
@lisp
(service home-msmtp-service-type
(home-msmtp-configuration
@@ -45279,101 +45279,101 @@ account:
@end defvar
@c %start of fragment
-
+
@deftp {Data Type} home-msmtp-configuration
Available @code{home-msmtp-configuration} fields are:
-
+
@table @asis
@item @code{defaults} (type: msmtp-configuration)
The configuration that will be set as default for all accounts.
-
+
@item @code{accounts} (default: @code{'()}) (type: list-of-msmtp-accounts)
A list of @code{msmtp-account} records which contain information about
all your accounts.
-
+
@item @code{default-account} (type: maybe-string)
Set the default account.
-
+
@item @code{extra-content} (default: @code{""}) (type: string)
Extra content appended as-is to the configuration file. Run
@command{man msmtp} for more information about the configuration file
format.
-
+
@end table
-
+
@end deftp
-
+
@c %end of fragment
-
+
@c %start of fragment
-
+
@deftp {Data Type} msmtp-account
Available @code{msmtp-account} fields are:
-
+
@table @asis
@item @code{name} (type: string)
The unique name of the account.
-
+
@item @code{configuration} (type: msmtp-configuration)
The configuration for this given account.
-
+
@end table
-
+
@end deftp
-
+
@c %end of fragment
@c %start of fragment
-
+
@deftp {Data Type} msmtp-configuration
Available @code{msmtp-configuration} fields are:
-
+
@table @asis
@item @code{auth?} (type: maybe-boolean)
Enable or disable authentication.
-
+
@item @code{tls?} (type: maybe-boolean)
Enable or disable TLS (also known as SSL) for secured connections.
-
+
@item @code{tls-starttls?} (type: maybe-boolean)
Choose the TLS variant: start TLS from within the session (‘on’,
default), or tunnel the session through TLS (‘off’).
-
+
@item @code{tls-trust-file} (type: maybe-string)
Activate server certificate verification using a list of trusted
Certification Authorities (CAs).
-
+
@item @code{log-file} (type: maybe-string)
Enable logging to the specified file. An empty argument disables
logging. The file name ‘-’ directs the log information to standard
output.
-
+
@item @code{host} (type: maybe-string)
The SMTP server to send the mail to.
-
+
@item @code{port} (type: maybe-integer)
The port that the SMTP server listens on. The default is 25 ("smtp"),
unless TLS without STARTTLS is used, in which case it is 465 ("smtps").
-
+
@item @code{user} (type: maybe-string)
Set the user name for authentication.
-
+
@item @code{from} (type: maybe-string)
Set the envelope-from address.
-
+
@item @code{password-eval} (type: maybe-string)
Set the password for authentication to the output (stdout) of the
command cmd.
-
+
@item @code{extra-content} (default: @code{""}) (type: string)
Extra content appended as-is to the configuration block. Run
@command{man msmtp} for more information about the configuration file
format.
-
+
@end table
-
+
@end deftp
-
+
@c %end of fragment
@node Messaging Home Services
diff --git a/etc/teams.scm b/etc/teams.scm
index fba9010130..98f51c13e1 100755
--- a/etc/teams.scm
+++ b/etc/teams.scm
@@ -310,7 +310,8 @@ asdf-build-system."
(define-team bootstrap
(team 'bootstrap
#:name "Bootstrap"
- #:scope (list "gnu/packages/mes.scm")))
+ #:scope (list "gnu/packages/commencement.scm"
+ "gnu/packages/mes.scm")))
(define-team embedded
(team 'embedded
@@ -424,6 +425,21 @@ asdf-build-system."
(make-regexp* "^guix/scripts/")
(make-regexp* "^guix/store/"))))
+(define-team core-packages
+ (team 'core-packages
+ #:name "Core packages"
+ #:description "Core packages: the GNU tool chain, Guile, Coreutils, etc."
+ #:scope (list "gnu/packages/base.scm"
+ "gnu/packages/bootstrap.scm"
+ "gnu/packages/commencement.scm"
+ "gnu/packages/cross-base.scm"
+ "gnu/packages/gcc.scm"
+ "gnu/packages/guile.scm"
+ "gnu/packages/make-bootstrap.scm"
+ "guix/build/gnu-build-system.scm"
+ "guix/build/utils.scm"
+ "guix/build-system/gnu.scm")))
+
(define-team games
(team 'games
#:name "Games and Toys"
@@ -556,7 +572,7 @@ GLib/GIO, GTK, GStreamer and Webkit."
(define-member (person "Ludovic Courtès"
"ludo@gnu.org")
- core home bootstrap installer mentors)
+ core home bootstrap core-packages installer mentors)
(define-member (person "Andreas Enge"
"andreas@enge.fr")
diff --git a/etc/teams/rust/rust-manifest.scm b/etc/teams/rust/rust-manifest.scm
new file mode 100644
index 0000000000..f34b7489ec
--- /dev/null
+++ b/etc/teams/rust/rust-manifest.scm
@@ -0,0 +1,34 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2024 Efraim Flashner <efraim@flashner.co.il>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+;;; This file returns a manifest of packages built using the cargo-build-system.
+;;; It is used to assist continuous integration of the rust-team branch.
+
+(use-modules (guix packages)
+ (guix profiles)
+ (guix build-system))
+
+(manifest
+ (map package->manifest-entry
+ (fold-packages
+ (lambda (package lst)
+ (if (eq? (build-system-name (package-build-system package))
+ (quote cargo))
+ (cons package lst)
+ lst))
+ (list))))
diff --git a/gnu/local.mk b/gnu/local.mk
index ee25e1535e..46da9a8adc 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1092,6 +1092,7 @@ dist_patch_DATA = \
%D%/packages/patches/doxygen-hurd.patch \
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
%D%/packages/patches/dstat-skip-devices-without-io.patch \
+ %D%/packages/patches/dtc-meson-cell-overflow.patch \
%D%/packages/patches/dune-common-skip-failing-tests.patch \
%D%/packages/patches/dune-grid-add-missing-include-cassert.patch \
%D%/packages/patches/dune-istl-fix-solver-playground.patch \
@@ -1111,7 +1112,6 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
%D%/packages/patches/emacs-exec-path.patch \
- %D%/packages/patches/emacs-ess-fix-obsolete-function-alias.patch \
%D%/packages/patches/emacs-git-email-missing-parens.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
@@ -1783,6 +1783,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-sphinx-prompt-docutils-0.19.patch \
%D%/packages/patches/python-telingo-fix-comparison.patch \
%D%/packages/patches/python-typeguard-python3.10.patch \
+ %D%/packages/patches/python-uqbar-python3.10.patch \
%D%/packages/patches/python-wxwidgets-type-errors.patch \
%D%/packages/patches/qtdeclarative-5-disable-qmlcache.patch \
%D%/packages/patches/qtdeclarative-disable-qmlcache.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 5442714665..3f1de1e6b6 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -373,14 +373,14 @@ interface and is based on GNU Guile.")
(define-public shepherd-0.10
(package
(inherit shepherd-0.9)
- (version "0.10.2")
+ (version "0.10.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/shepherd/shepherd-"
version ".tar.gz"))
(sha256
(base32
- "0v9ld9gbqdp5ya380fbkdsxa0iqr90gi6yk004ccz3n792nq6wlj"))))
+ "1vxghlxnxajx2iciqmjia49c5hkir8li0gv29kl55frhn2zgxilf"))))
(native-inputs (modify-inputs (package-native-inputs shepherd-0.9)
(replace "guile-fibers"
;; Work around
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index 1ea5e47321..a7af5c42ce 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015-2023 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
@@ -7324,13 +7324,13 @@ global-scaling and full-quantile normalization.")
(define-public r-edger
(package
(name "r-edger")
- (version "4.0.3")
+ (version "4.0.5")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "edgeR" version))
(sha256
(base32
- "0sz46pwa1bsqrff2igswfhhj1fcwzn34zrlawy4fnb58z48kccb0"))))
+ "16cghh83v14jdq5n6xkm3jxj87n6l6zrxjgqdwb2ffgc26vkpb7w"))))
(properties `((upstream-name . "edgeR")))
(build-system r-build-system)
(propagated-inputs
@@ -10510,6 +10510,38 @@ expression information. The package functions as a wrapper for Startrac and
powerTCR R packages.")
(license license:gpl2)))
+(define-public r-scrnaseq
+ (package
+ (name "r-scrnaseq")
+ (version "2.16.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (bioconductor-uri "scRNAseq" version
+ 'experiment))
+ (sha256
+ (base32 "0dbh3sqq7lkkdf7vls5qg7fbn6y74c7hsigb4d69pvk934ll88aw"))))
+ (properties `((upstream-name . "scRNAseq")))
+ (build-system r-build-system)
+ (propagated-inputs (list r-annotationdbi
+ r-annotationhub
+ r-biocgenerics
+ r-ensembldb
+ r-experimenthub
+ r-genomicfeatures
+ r-genomicranges
+ r-s4vectors
+ r-singlecellexperiment
+ r-summarizedexperiment))
+ (native-inputs (list r-knitr))
+ (home-page "https://bioconductor.org/packages/scRNAseq")
+ (synopsis "Collection of public single-cell RNA-seq datasets")
+ (description
+ "This package contains gene-level counts for a collection of public
+@code{scRNA-seq} datasets, provided as @code{SingleCellExperiment} objects
+with cell- and gene-level metadata.")
+ (license license:cc0)))
+
(define-public r-scry
(package
(name "r-scry")
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 41cac296fe..7dbebcf3da 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -130,6 +130,7 @@
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
+ #:use-module (gnu packages perl-web)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages protobuf)
@@ -574,6 +575,30 @@ BED, GFF/GTF, VCF.")
whole-genome bisulfite sequencing (WGBS) reads from directional protocol.")
(license license:asl2.0)))
+(define-public bustools
+ (package
+ (name "bustools")
+ (version "0.43.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/BUStools/bustools")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "068kjlc4d528269nl5mc3j8h2c95r1v545d3fi1iw1ckg8rba0hg"))))
+ (build-system cmake-build-system)
+ (arguments (list #:tests? #f)) ;no test target
+ (inputs (list zlib))
+ (home-page "https://bustools.github.io")
+ (synopsis "Tools for working with BUS files")
+ (description "bustools is a program for manipulating BUS files for single
+cell RNA-Seq datasets. It can be used to error correct barcodes, collapse
+UMIs, produce gene count or transcript compatibility count matrices, and is useful
+for many other tasks.")
+ (license license:bsd-2)))
+
(define-public cellsnp-lite
;; Last release is from November 2021 and does not contain fixes.
(let ((commit "0885d746b0b1ea65c8ef92f8943ca7669ca9734a")
@@ -2365,6 +2390,40 @@ sequencing data and the end result are tables of UMI-unique DamID and CEL-Seq
counts.")
(license license:expat)))
+(define-public python-snaptools
+ (package
+ (name "python-snaptools")
+ (version "1.4.8")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "snaptools" version))
+ (sha256
+ (base32
+ "1s5373g5jjbshh3q39zy7dlxr7nda6ksxq9d1gw46h82c4fsmfbn"))))
+ (build-system pyproject-build-system)
+ (propagated-inputs
+ (list python-future
+ python-h5py
+ python-louvain
+ python-numpy
+ python-pybedtools
+ python-pysam))
+ (home-page "https://github.com/r3fang/SnapTools")
+ (synopsis "Tools for processing snap files" )
+ (description
+ "@code{SnapTools} can operate on snap files the following types of
+operations:
+
+@itemize
+@item index the reference genome before alignment;
+@item align reads to the corresponding reference genome;
+@item pre-process by convert pair-end reads into fragments, checking the
+ mapping quality score, alingment and filtration;
+@item create the cell-by-bin matrix.
+@end itemize")
+ (license license:asl2.0)))
+
(define-public python-bioframe
(package
(name "python-bioframe")
@@ -4999,6 +5058,126 @@ be of arbitrary length. Repeats with pattern size in the range from 1 to 2000
bases are detected.")
(license license:agpl3+)))
+(define-public trinityrnaseq
+ (package
+ (name "trinityrnaseq")
+ (version "2.13.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/trinityrnaseq/trinityrnaseq.git")
+ (commit (string-append "Trinity-v" version))
+ (recursive? #true)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1qszrxqbx4q5pavpgm4rkrh1z1v1mf7qx83vv3fnlqdmncnsf1gv"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:test-target "test"
+ #:modules
+ '((guix build gnu-build-system)
+ (guix build utils)
+ (ice-9 match)
+ (srfi srfi-1))
+ #:make-flags
+ #~(list (string-append "CC=" #$(cc-for-target)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (setenv "SHELL" (which "sh"))
+ (setenv "CONFIG_SHELL" (which "sh"))
+ ;; Do not require version.h, which triggers a local build of a
+ ;; vendored htslib.
+ (substitute* "trinity-plugins/bamsifter/Makefile"
+ (("sift_bam_max_cov.cpp htslib/version.h")
+ "sift_bam_max_cov.cpp"))))
+ (add-after 'build 'build-plugins
+ (lambda _
+ ;; Run this in the subdirectory to avoid running the
+ ;; tests right here.
+ (with-directory-excursion "trinity-plugins"
+ (invoke "make" "plugins"))))
+ ;; The install script uses rsync, provides no overrides for the
+ ;; default location at /usr/local/bin, and patching it would change
+ ;; all lines that do something.
+ (replace 'install
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((share (string-append #$output "/share/trinity/"))
+ (bin (string-append #$output "/bin/")))
+ (mkdir-p bin)
+ (copy-recursively "." share)
+ (delete-file (string-append share "/Chrysalis/build/CMakeFiles/CMakeOutput.log"))
+ (delete-file (string-append share "/Inchworm/build/CMakeFiles/CMakeOutput.log"))
+
+ (wrap-program (string-append share "Trinity")
+ `("R_LIBS_SITE" ":" = (,(getenv "R_LIBS_SITE")))
+ `("PERL5LIB" ":" = (,(getenv "PERL5LIB")))
+ `("PYTHONPATH" ":" = (,(getenv "GUIX_PYTHONPATH")))
+ `("PATH" ":" =
+ ,(cons (string-append share "/trinity-plugins/BIN")
+ (filter-map (match-lambda
+ ((name . dir)
+ (string-append dir "/bin")))
+ inputs))))
+ (symlink (string-append share "Trinity")
+ (string-append bin "Trinity"))))))))
+ (inputs
+ (list blast+
+ bowtie
+ fastqc
+ hisat
+ htslib
+ icedtea-8
+ jellyfish
+ kallisto
+ multiqc
+ perl
+ perl-uri-escape
+ python-numpy
+ python-wrapper
+ r-ape
+ r-argparse
+ r-biobase
+ r-ctc
+ r-deseq2
+ r-edger
+ r-fastcluster
+ r-glimma
+ r-goplot
+ r-goseq
+ r-gplots
+ r-minimal
+ r-qvalue
+ r-rots
+ r-sm
+ r-tidyverse
+ rsem
+ salmon
+ samtools
+ sra-tools
+ star
+ zlib))
+ (propagated-inputs
+ (list coreutils
+ gzip
+ which))
+ (native-inputs (list cmake))
+ (home-page "https://github.com/trinityrnaseq/trinityrnaseq/wiki")
+ (synopsis "Trinity RNA-Seq de novo transcriptome assembly")
+ (description "Trinity assembles transcript sequences from Illumina RNA-Seq
+data. Trinity represents a novel method for the efficient and robust de novo
+reconstruction of transcriptomes from RNA-seq data. Trinity combines three
+independent software modules: Inchworm, Chrysalis, and Butterfly, applied
+sequentially to process large volumes of RNA-seq reads. Trinity partitions
+the sequence data into many individual de Bruijn graphs, each representing the
+transcriptional complexity at a given gene or locus, and then processes each
+graph independently to extract full-length splicing isoforms and to tease
+apart transcripts derived from paralogous genes.")
+ (license license:bsd-3)))
+
(define-public repeat-masker
(package
(name "repeat-masker")
@@ -16790,7 +16969,16 @@ the HiCExplorer and pyGenomeTracks packages.")
(file-name (git-file-name name version))
(sha256
(base32
- "1yavgxry38g326z10bclvdf8glmma05fxj5m73h15m1r2l9xmw3v"))))
+ "1yavgxry38g326z10bclvdf8glmma05fxj5m73h15m1r2l9xmw3v"))
+ (modules '((guix build utils)))
+ ;; setup.py is malformed. The requirements are defined using a catchall
+ ;; pattern for the patch version number. This has been fixed in version
+ ;; 3.7.3, but we cannot upgrade to this version yet, since some Guix
+ ;; packages are not new enough. (See upstream commit
+ ;; 4845c715ec7b105e938d0c2426e27d0181690bfe for the fix).
+ (snippet '(substitute* "setup.py"
+ (("\\.\\*")
+ "")))))
(build-system pyproject-build-system)
(arguments
(list
@@ -20512,24 +20700,28 @@ aligner.")
(uri (pypi-uri "scvelo" version))
(sha256
(base32 "0h5ha1459ljs0qgpnlfsw592i8dxqn6p9bl08l1ikpwk36baxb7z"))))
- (build-system python-build-system)
+ (build-system pyproject-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; Numba needs a writable dir to cache functions.
- (add-before 'check 'set-numba-cache-dir
- (lambda _
- (setenv "NUMBA_CACHE_DIR" "/tmp")))
- (replace 'check
- (lambda* (#:key outputs tests? #:allow-other-keys)
- (when tests?
- ;; The discovered test file names must match the names of the
- ;; compiled files, so we cannot run the tests from
- ;; /tmp/guix-build-*.
- (with-directory-excursion
- (string-append (assoc-ref outputs "out")
- "/lib/python3.10/site-packages/scvelo/core/tests/")
- (invoke "pytest" "-v"))))))))
+ (list
+ #:test-flags
+ ;; XXX: these two tests fail for unknown reasons
+ '(list "-k" "not test_perfect_fit and not test_perfect_fit_2d")
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; Numba needs a writable dir to cache functions.
+ (add-before 'check 'set-numba-cache-dir
+ (lambda _
+ (setenv "NUMBA_CACHE_DIR" "/tmp")))
+ (replace 'check
+ (lambda* (#:key tests? test-flags #:allow-other-keys)
+ (when tests?
+ ;; The discovered test file names must match the names of the
+ ;; compiled files, so we cannot run the tests from
+ ;; /tmp/guix-build-*.
+ (with-directory-excursion
+ (string-append #$output
+ "/lib/python3.10/site-packages/scvelo/core/tests/")
+ (apply invoke "pytest" "-v" test-flags))))))))
(propagated-inputs
(list python-anndata
python-hnswlib
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index bd8b621e35..c73a0e665d 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -55,9 +55,12 @@
#:use-module (gnu packages man)
#:use-module (gnu packages mtools)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages ninja)
+ #:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
@@ -71,6 +74,7 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module (guix download)
@@ -631,7 +635,7 @@ The SUBDIR argument defaults to \"efi/Guix\", as it is also the case for
(define-public dtc
(package
(name "dtc")
- (version "1.6.1")
+ (version "1.7.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -639,42 +643,56 @@ The SUBDIR argument defaults to \"efi/Guix\", as it is also the case for
"dtc-" version ".tar.gz"))
(sha256
(base32
- "0xm38h31jb29xfh2sfyk48d8wdfq4b8lmb412zx9vjr35izjb9iq"))))
- (build-system gnu-build-system)
+ "0cij9399snpn672pdbda8qbxljdkfg068kvv3g5811rz6yslx124"))
+ (patches
+ (search-patches "dtc-meson-cell-overflow.patch"))))
+ (build-system meson-build-system)
(arguments
(list
- #:modules `(,@%gnu-build-system-modules (srfi srfi-26))
- #:make-flags
- #~(list (string-append "CC=" #$(cc-for-target))
- ;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
- (string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")
- (string-append "PREFIX=" #$output)
- (string-append "SETUP_PREFIX=" #$output)
- "INSTALL=install")
+ #:modules '((guix build meson-build-system)
+ (guix build utils)
+ (srfi srfi-26))
#:phases
#~(modify-phases %standard-phases
- (add-after 'unpack 'patch-pkg-config
+ (add-after 'unpack 'preparations
(lambda _
- (substitute* '("Makefile"
- "tests/run_tests.sh")
- (("pkg-config")
- #$(pkg-config-for-target)))))
- (delete 'configure) ;no configure script
- (add-before 'build 'install-doc
+ ;; The version string is usually derived via setuptools-scm, but
+ ;; without the git metadata available this fails.
+ (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)
+
+ ;; Needed by setup.py.
+ (setenv "DESTDIR" "/")
+
+ ;; Native gcc needed by run_test.sh.
+ (setenv "CC" "gcc")
+
+ ;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
+ (setenv "LDFLAGS"
+ (string-append "-Wl,-rpath=" #$output "/lib"))))
+ (add-after 'unpack 'install-doc
(lambda _
(with-directory-excursion "Documentation"
(for-each (cut install-file <> (string-append
#$output "/share/doc/dtc/"))
'("dts-format.txt"
"dt-object-internal.txt"
- "manual.txt"))))))))
+ "manual.txt")))))
+ (add-after 'unpack 'patch-pkg-config
+ (lambda _
+ (substitute* '("tests/run_tests.sh")
+ (("pkg-config")
+ #$(pkg-config-for-target))))))))
(native-inputs
(append
(list bison
flex
libyaml
+ ninja
pkg-config
- swig)
+ python
+ python-setuptools-scm
+ swig
+ which)
(if (member (%current-system) (package-supported-systems valgrind))
(list valgrind)
'())))
diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm
index 602d8f26c5..a36bb289cd 100644
--- a/gnu/packages/bootstrap.scm
+++ b/gnu/packages/bootstrap.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018, 2019 Mark H Weaver <mhw@netris.org>
-;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2020, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020, 2022 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019 Carl Dong <contact@carldong.me>
;;; Copyright © 2019 Léo Le Bouter <lle-bout@zaclys.net>
@@ -323,6 +323,9 @@ or false to signal an error."
((string=? system "powerpc64-linux") "/lib/ld64.so.1")
((string=? system "alpha-linux") "/lib/ld-linux.so.2")
+ ;; TODO: Differentiate between x86_64-linux-gnu and x86_64-linux-gnux32.
+ ((string=? system "x86_64-linux-gnux32") "/lib/ld-linux-x32.so.2")
+
;; XXX: This one is used bare-bones, without a libc, so add a case
;; here just so we can keep going.
((string=? system "arm-eabi") "no-ld.so")
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 7120c2ad75..2df4e6311b 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -69,25 +69,16 @@
(define-public sddm
(package
(name "sddm")
- (version "0.19.0")
+ (version "0.20.0")
(source (origin
- (method url-fetch)
- (uri (string-append
- "https://github.com/sddm/sddm"
- "/releases/download/v" version "/"
- "sddm-" version ".tar.xz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sddm/sddm")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
(sha256
(base32
- "0hcdysw8ibr66vk8i7v56l0v5ijvhlq67v4460mc2xf2910g2m72"))
- (snippet
- #~(begin
- ;; https://github.com/sddm/sddm/issues/1536
- ;; https://github.com/sddm/sddm/commit/e93bf95c54ad8c2a1604f8d7be05339164b19308
- ;; Commit comes shortly after the 0.19.0 release.
- (use-modules ((guix build utils)))
- (substitute* "src/daemon/XorgDisplayServer.cpp"
- (("m_cookie\\[i\\] = digits\\[dis\\(gen\\)\\]")
- "m_cookie[i] = QLatin1Char(digits[dis(gen)])"))))))
+ "1450zv03d3mbid27986p4mdshw9qf3ar8crl4idybf7khxgan22y"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config qttools-5))
@@ -109,36 +100,39 @@
shadow
wayland))
(arguments
- `(#:configure-flags
- ,#~(list
- ;; This option currently does nothing, but will presumably be enabled
- ;; if/when <https://github.com/sddm/sddm/pull/616> is merged.
- "-DENABLE_WAYLAND=ON"
- "-DENABLE_PAM=ON"
- ;; Both flags are required for elogind support.
- "-DNO_SYSTEMD=ON" "-DUSE_ELOGIND=ON"
- "-DCONFIG_FILE=/etc/sddm.conf"
- ;; Set path to /etc/login.defs.
- ;; An alternative would be to use -DUID_MIN and -DUID_MAX.
- (string-append "-DLOGIN_DEFS_PATH="
- #$(this-package-input "shadow")
- "/etc/login.defs")
- (string-append "-DQT_IMPORTS_DIR="
- #$output "/lib/qt5/qml")
- (string-append "-DCMAKE_INSTALL_SYSCONFDIR="
- #$output "/etc"))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'embed-loginctl-reference
- (lambda _
- (substitute* "CMakeLists.txt"
- (("/usr/bin/loginctl") (which "loginctl")))
- #t)))))
+ (list
+ #:configure-flags
+ #~(list
+ "-DENABLE_WAYLAND=ON"
+ "-DENABLE_PAM=ON"
+ ;; Both flags are required for elogind support.
+ "-DNO_SYSTEMD=ON"
+ "-DUSE_ELOGIND=ON"
+ "-DCONFIG_FILE=/etc/sddm.conf"
+ ;; Set path to /etc/login.defs.
+ ;; An alternative would be to use -DUID_MIN and -DUID_MAX.
+ (string-append "-DLOGIN_DEFS_PATH="
+ #$(this-package-input "shadow")
+ "/etc/login.defs")
+ (string-append "-DCMAKE_CXX_FLAGS=-I"
+ #$(this-package-input
+ "qtdeclarative") "/include/qt5")
+ (string-append "-DQT_IMPORTS_DIR="
+ #$output "/lib/qt5/qml")
+ (string-append "-DCMAKE_INSTALL_SYSCONFDIR="
+ #$output "/etc"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'embed-loginctl-reference
+ (lambda _
+ (substitute* "CMakeLists.txt"
+ (("/usr/bin/loginctl")
+ (which "loginctl"))))))))
(synopsis "QML based X11 and Wayland display manager")
(description "SDDM is a display manager for X11 and Wayland aiming to be
fast, simple and beautiful. SDDM is themeable and puts no restrictions on the
-user interface design. It uses QtQuick which gives the designer the ability to
-create smooth, animated user interfaces.")
+user interface design. It uses QtQuick which gives the designer the ability
+to create smooth, animated user interfaces.")
(home-page "https://github.com/sddm/sddm")
;; QML files are MIT licensed and images are CC BY 3.0.
(license (list license:gpl2+ license:expat license:cc-by3.0))))
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index 2fd1d4a632..7b72ed0349 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
-;;; Copyright © 2018-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2018-2024 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
@@ -564,7 +564,7 @@ a pen-tablet display and a beamer.")
(define-public fet
(package
(name "fet")
- (version "6.9.0")
+ (version "6.15.0")
(source
(origin
(method url-fetch)
@@ -573,7 +573,7 @@ a pen-tablet display and a beamer.")
(list (string-append directory base)
(string-append directory "old/" base))))
(sha256
- (base32 "1lnw58ga1ldhqfznclmk9l21698pg152w3slq2cwmr69ywqr5wys"))))
+ (base32 "0mmk9f0b23lmmk40mv25wf9vgb7wdgfn5zsa1qrkvkh7dh1hjpax"))))
(build-system gnu-build-system)
(arguments
(list
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index bb3c905252..99c16f382d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -2017,6 +2017,27 @@ Apprentice and Sourcerer.")
theme but now takes more inspiration from the Nano theme.")
(license license:gpl3+)))
+(define-public emacs-adwaita-dark-theme
+ ;; Version 1.1.1 isn't tagged upstream.
+ (package
+ (name "emacs-adwaita-dark-theme")
+ (version "1.1.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/jessieh/adwaita-dark-theme")
+ (commit "057c39313341907b35c68d2179226886a0c276fd")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1g7hyg2hfvn24gaw4lca4g8lw10q2wg9nfrgl7pfdggz202m027c"))))
+ (build-system emacs-build-system)
+ (home-page "https://gitlab.com/jessieh/adwaita-dark-theme")
+ (synopsis "Adwaita-inspired dark color scheme for Emacs")
+ (description
+ "This package provides an Adwaita-inspired dark color scheme for Emacs.")
+ (license license:gpl2+)))
+
(define-public emacs-treepy
(package
(name "emacs-treepy")
@@ -2950,26 +2971,27 @@ in certain cases. It also enables recursion for anonymous functions.")
(license license:public-domain)))
(define-public emacs-xah-fly-keys
- (package
- (name "emacs-xah-fly-keys")
- (version "17.13.20220526011611")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/xahlee/xah-fly-keys")
- (commit "b1b1ea62c3f1a329376d9125592175cf2027ebc7")))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1gv8d9zgmhzjg6zk2a7y76dz30a3l91xb1p15vldka95faz197wn"))))
- (build-system emacs-build-system)
- (home-page "http://xahlee.info/emacs/misc/ergoemacs_vi_mode.html")
- (synopsis "Modal keybinding system for Emacs, based on command frequency and
+ (let ((commit "e81f8143e9f7b8e55fa549ec6113048e4959b96e"))
+ (package
+ (name "emacs-xah-fly-keys")
+ (version "24.19.20231204080156")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/xahlee/xah-fly-keys")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1pnq4p5y0h7d3nj3vcsdfccc0aahdvcgskik337z6k7hmb32xz48"))))
+ (build-system emacs-build-system)
+ (home-page "http://xahlee.info/emacs/misc/ergoemacs_vi_mode.html")
+ (synopsis "Modal keybinding system for Emacs, based on command frequency and
ergonomics")
- (description "xah-fly-keys.el is a modal editing mode for Emacs, like Vi,
+ (description "xah-fly-keys.el is a modal editing mode for Emacs, like Vi,
but the design of key/command choice is based on command frequency statistics
and ease-of-key score. Most frequently used commands have most easy keys.")
- (license license:gpl3)))
+ (license license:gpl3))))
(define-public emacs-xr
(package
@@ -3329,7 +3351,7 @@ incrementally confined in Isearch manner.")
(file-name (git-file-name name version))
(sha256
(base32 "1bls9j1ibw0npjapslbrh6nmlbn3d4ajhjygsqlf6h9qg12sxm3r"))))
- (inputs (list emacs-s))
+ (propagated-inputs (list emacs-s))
(build-system emacs-build-system)
(home-page "https://codeberg.org/emacs-weirdware/dnt")
(synopsis "Strip trackers from URLs")
@@ -4547,7 +4569,7 @@ Its features are:
(define-public emacs-citeproc-el
(package
(name "emacs-citeproc-el")
- (version "0.9.3")
+ (version "0.9.4")
(source
(origin
(method git-fetch)
@@ -4556,12 +4578,13 @@ Its features are:
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "0md8pfmd0v9ipnxj1q13vv81hl90wf4rm46czbk1fdzkyf9js08m"))))
+ (base32 "1l74c2f2xjzsp3i331sw3db4fhbvdbwyd856j1ygldwrh4rli9ml"))))
(build-system emacs-build-system)
(arguments
`(#:emacs ,emacs)) ;need libxml support
(propagated-inputs
- (list emacs-dash
+ (list emacs-compat
+ emacs-dash
emacs-f
emacs-parsebib
emacs-queue
@@ -4771,20 +4794,18 @@ that the binary uses instead of the actual binary contents.")
(license license:gpl3+)))
(define-public emacs-org-fc
- (let ((commit "f64b5336485a42be91cfe77850c02a41575f5984")
- (revision "0"))
- (package
+ (package
(name "emacs-org-fc")
- (version (git-version "0.1.0" revision commit))
+ (version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~l3kn/org-fc")
- (commit commit)))
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1d0a3vr09zkplclypcgpfbfd6r0h0i3g3zsqb4pcz6x239d59gd5"))))
+ (base32 "17cdn4sdyb9fs9w725l155lb74inzdn86m8y62m6hn4dgb5l4spm"))))
(build-system emacs-build-system)
(arguments
(list
@@ -4819,7 +4840,7 @@ It allows you to mark headlines in a file as flashcards, turning pieces of
knowledge you want to learn into a question-answer test. These cards are
reviewed at regular interval. After each review, the next review interval is
calculated based on how well you remembered the contents of the card.")
- (license license:gpl3+))))
+ (license license:gpl3+)))
(define-public emacs-font-lock+
(let ((commit "aa1c82d05c9222b09099a0ccd7468e955497940c")
@@ -6101,32 +6122,42 @@ english words between singular and plural.")
(license license:gpl3+)))
(define-public emacs-blight
- (let ((commit "6bf9c6192d2bf979eebbfae1963401ef3ff4ef5d")
- (revision "0"))
- (package
- (name "emacs-blight")
- (version (git-version "0" revision commit))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://codeberg.org/emacs-weirdware/blight")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32 "1x7s1fcva5kkl9iyb5grd6crf38rrz3zb0c6wb85khi9far10vgq"))))
- (build-system emacs-build-system)
- (home-page "https://codeberg.org/emacs-weirdware/blight")
- (synopsis "Control display brightness")
- (description
- "Blight allows you to control display brightness from Emacs. It
-features object-oriented code using EIEIO, a base class implementing
-a reasonable API which focuses on the @emph{set the back light to this
-percentage} functionality, it includes a concrete implementation that uses
-SysFS to control brightness. Other systems (D-Bus, xbacklight, XELB using
-XRandR) are easily supportable, giving the same experience across
-environments.")
- (license license:gpl3+))))
+ (package
+ (name "emacs-blight")
+ (version "1.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://codeberg.org/emacs-weirdware/blight")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1k1w1jr56pp8dgcpdxrymiam1hxsdy7nh6gi5l17pimwba3r4wbm"))))
+ (build-system emacs-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-udev-rules-absolute-path-bins
+ (lambda _
+ (substitute* "20-backlight.rules"
+ (("/bin/chgrp") (which "chgrp"))
+ (("/bin/chmod") (which "chmod")))))
+ (add-after 'install 'install-udev-rules
+ (lambda _
+ (install-file "20-backlight.rules"
+ (string-append #$output "/lib/udev/rules.d")))))))
+ (home-page "https://codeberg.org/emacs-weirdware/blight")
+ (synopsis "Control display brightness")
+ (description
+ "Blight allows you to control display brightness from Emacs. It features
+object-oriented code using EIEIO, a base class implementing a reasonable API
+which focuses on the @emph{set the back light to this percentage}
+functionality, it includes a concrete implementation that uses SysFS to
+control brightness. Other systems (D-Bus, xbacklight, XELB using XRandR) are
+easily supportable, giving the same experience across environments.")
+ (license license:gpl3+)))
(define-public emacs-symon
(package
@@ -7841,16 +7872,16 @@ method and constant name completion.")
(define-public emacs-robot-mode
(package
(name "emacs-robot-mode")
- (version "0.7.0")
+ (version "0.8.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kopoli/robot-mode")
- (commit version)))
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "10i4lwjf60ms3dj8s7k9c0vb24rhszskhciz9lijphcdh8k622hz"))))
+ (base32 "1a377lws4f0az2y1r3z2i3mghvg7a4094wkchvjvsl1nd6yxdxwa"))))
(build-system emacs-build-system)
(home-page "https://github.com/kopoli/robot-mode")
(synopsis "Emacs mode for Robot Framework")
@@ -8102,7 +8133,7 @@ It is not intended as a user interface.")
(define-public emacs-sqlite3-api
(package
(name "emacs-sqlite3-api")
- (version "0.17")
+ (version "0.18")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -8111,7 +8142,7 @@ It is not intended as a user interface.")
(file-name (git-file-name name version))
(sha256
(base32
- "1y36818nd47mzfi3xcp31nr8n0izzmdyiqfx9hgp7ag98rbm7wlx"))))
+ "1d1r65ybcf5idbs8sv0l3dna4l1wy3jba9dvv1kkz7zj6qhr48fs"))))
(build-system emacs-build-system)
(arguments
(list
@@ -10095,13 +10126,20 @@ constants and units into an Emacs buffer.")
(sha256
(base32 "0kq40g46s8kgiafrhdq99h79rz9h5fvgz59k7ralmf86bl4sdmdb"))))
(build-system emacs-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'remove-spurious-require
+ (lambda _
+ (substitute* "tagedit.el"
+ (("\\(require 'assoc\\)") "")))))))
(propagated-inputs
- (list emacs-s emacs-dash))
+ (list emacs-dash emacs-s))
(home-page "https://github.com/magnars/tagedit")
- (synopsis "Some paredit-like features for html-mode")
+ (synopsis "Some Paredit-like features for HTML mode")
(description
- "This package provides a collection of paredit-like functions for editing
-in @code{html-mode}.")
+ "This package provides a collection of Paredit-like functions for editing
+in HTML mode.")
(license license:gpl3+)))
(define-public emacs-slime
@@ -11131,7 +11169,7 @@ started with 20 minutes. All values are customizable.")
(define-public emacs-org-sidebar
(package
(name "emacs-org-sidebar")
- (version "0.3.2")
+ (version "0.4")
(source
(origin
(method git-fetch)
@@ -11140,10 +11178,13 @@ started with 20 minutes. All values are customizable.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1r8kp954ciin4j7j7j8ihdkryf5x09s3ryl7bi9h2j6xqc1ij4wq"))))
+ (base32 "1gccih9wgi31m59flljw4cphfyhlfcqbjih91gkcnldq5z7n83nj"))))
(build-system emacs-build-system)
(propagated-inputs
- (list emacs-dash emacs-org-super-agenda emacs-org emacs-org-ql
+ (list emacs-dash
+ emacs-org
+ emacs-org-ql
+ emacs-org-super-agenda
emacs-s))
(home-page "https://github.com/alphapapa/org-sidebar")
(synopsis "Helpful sidebar for Org buffers")
@@ -11321,7 +11362,7 @@ variants.")
(define-public emacs-solarized-theme
(package
(name "emacs-solarized-theme")
- (version "2.0.3")
+ (version "2.0.4")
(source
(origin
(method git-fetch)
@@ -11330,7 +11371,7 @@ variants.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0mip5da7glzylmagxkmi2f68i19phbbzn72vh3jd3w76labcvbzm"))))
+ (base32 "18z36nzyh4dsd8igys37x0r3lnav77fvjrkxv48v3yjsrwli19gl"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash))
@@ -11375,6 +11416,30 @@ package provides a light and a dark variant.")
Solarized color scheme.")
(license license:expat))))
+(define-public emacs-color-identifiers-mode
+ (let ((commit "a26d00d898e0a3295cb7da9323046397223ea1fe")
+ (revision "0"))
+ (package
+ (name "emacs-color-identifiers-mode")
+ (version (git-version "1.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ankurdave/color-identifiers-mode")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1kky827f922ziiwasrfnv97vqdf62fp9yml36x1fjsm2h6qw0c8v"))))
+ (build-system emacs-build-system)
+ (propagated-inputs (list emacs-dash))
+ (home-page "https://github.com/ankurdave/color-identifiers-mode")
+ (synopsis "Minor mode for coloring identifiers based on their names")
+ (description
+ "This package provides an Emacs minor mode to highlight each source
+code identifier uniquely based on its name.")
+ (license license:gpl3+))))
+
(define-public emacs-poet-theme
(let ((commit "16eb694f0755c04c4db98614d0eca1199fddad70")
(revision "1"))
@@ -19496,7 +19561,7 @@ Emacs.")
(define-public emacs-eglot
(package
(name "emacs-eglot")
- (version "1.15")
+ (version "1.16")
(source
(origin
(method url-fetch)
@@ -19504,7 +19569,7 @@ Emacs.")
".tar"))
(sha256
(base32
- "05brq76xbdkbhbn572n0hyz80lwc3ly5waaqsaan5l1apxgl6ww7"))))
+ "0zi2r8fp7acqlx8s4k2m9dc8w29bwsxyvfa6cnd1366nm3rlfybn"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-external-completion
@@ -20398,7 +20463,7 @@ multiplexer.")
(define-public emacs-plz
(package
(name "emacs-plz")
- (version "0.7")
+ (version "0.7.1")
(source
(origin
(method git-fetch)
@@ -20407,7 +20472,7 @@ multiplexer.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "18lq7v2gglfnax5r1svh9p0fcd5hs745js57nl8bk58ba047a9q8"))))
+ (base32 "0x2yhkdagwdqzjkaq54l095m3zvn49dg8y47wg27qdb5m2cjnswr"))))
(build-system emacs-build-system)
(inputs (list curl))
(arguments
@@ -22584,6 +22649,26 @@ objects. All objects have to share a common superclass and subclasses cannot
add any additional instance slots.")
(license license:gpl3)))
+(define-public emacs-sql-indent
+ (package
+ (name "emacs-sql-indent")
+ (version "1.7")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://elpa.gnu.org/packages/sql-indent-" version
+ ".tar"))
+ (sha256
+ (base32 "043qcy97a5hx68w0ac7xsk380l2i7bphgrdz6aby2zfpp90vrjpn"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/alex-hhh/emacs-sql-indent")
+ (synopsis "Support for indenting code in SQL files")
+ (description
+ "This package provides a minor mode that enables syntax-based indentation
+for SQL mode buffers. Indentation rules are flexible and can be customized to
+match your personal coding style.")
+ (license license:gpl3+)))
+
(define-public emacs-epkg
(package
(name "emacs-epkg")
@@ -24780,7 +24865,7 @@ powerful Org contents.")
(define-public emacs-org-re-reveal
(package
(name "emacs-org-re-reveal")
- (version "3.24.2")
+ (version "3.25.0")
(source
(origin
(method git-fetch)
@@ -24789,7 +24874,7 @@ powerful Org contents.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "10x1cinn97wlm3dmv35dxrs78gfzgw59qf4j57m3vgss5q93mqq5"))))
+ (base32 "13q45c2a4y6pkaiixf931j4rq6sfpklxx854xwadik4a3mm06ipi"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-htmlize emacs-org))
@@ -26706,7 +26791,7 @@ tracking.")
(define-public emacs-helm-company
(package
(name "emacs-helm-company")
- (version "0.2.7")
+ (version "0.2.8")
(source
(origin
(method git-fetch)
@@ -26716,7 +26801,7 @@ tracking.")
(file-name (git-file-name name version))
(sha256
(base32
- "0zg878i48kmgw9lj772c3kx5v13k9k2afz98j65jx2bjbcm9f338"))))
+ "0lschnr15c39bnfvm2zdp7f3qvyzrdk8gzzwcb1g2d9jy3mkcq05"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-helm emacs-company))
@@ -29525,7 +29610,7 @@ tabulated-lists).")
(define-public emacs-eat
(package
(name "emacs-eat")
- (version "0.9.2")
+ (version "0.9.4")
(source
(origin
(method git-fetch)
@@ -29535,7 +29620,7 @@ tabulated-lists).")
(file-name (git-file-name name version))
(sha256
(base32
- "1mw3iwid2iky0kwpn90bbswx8m4kkni5zdjc75clzhzzygh340sd"))
+ "0h4j40amdd92h1bhwcyw0kn6j2ihs671xfmz028qklx5cw8a31yg"))
(modules '((guix build utils)))
(snippet
#~(begin
@@ -29579,10 +29664,11 @@ shell integration.")
(license license:gpl3+)))
(define-public emacs-vterm
- (let ((commit "e19dc2bb9859a75616bf068c341a540d0d329e4d"))
+ (let ((commit "c3a3a23a5eace137947524c93644204bf6b56cff")
+ (revision "1"))
(package
(name "emacs-vterm")
- (version "0.0.2")
+ (version (git-version "0.0.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -29591,7 +29677,7 @@ shell integration.")
(file-name (git-file-name name version))
(sha256
(base32
- "0iqlzpy83ra6xz406fmddfj72bmkdb5b1j59m1dbxf3wxn55320d"))))
+ "0a3akvqmwh3frgbk1rgmi4b2gwdnpa3fymg7prin3k3jgqih1piv"))))
(build-system emacs-build-system)
(arguments
`(#:modules ((guix build emacs-build-system)
@@ -31362,11 +31448,10 @@ keypresses mapped in firefox to the action described in the function name.")
(license (list license:gpl3+)))))
(define-public emacs-exwm-firefox
- (let ((commit "7390c3bc425894aeda3c12c23f61a234bb71a2d9")
- (revision "1"))
+ (let ((commit "ba4044cf57f99656bbe1974278336b6abcb15497")) ;version bump
(package
(name "emacs-exwm-firefox")
- (version (git-version "0.4" revision commit))
+ (version "1.2")
(source
(origin
(method git-fetch)
@@ -31375,9 +31460,20 @@ keypresses mapped in firefox to the action described in the function name.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "0xmgij04h4cbcgqafyyf9qajf0wp6mxpfpwjm6gi1jgisrql882d"))))
+ (base32 "1x9hc94a5wygyw714q98jbk4kjvys2ra94qdc2cbgkm6iq982rvq"))))
(build-system emacs-build-system)
- (inputs (list emacs-exwm-firefox-core emacs-s emacs-exwm))
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "lisp"))))
+ #:tests? #true
+ #:test-command #~(list "emacs" "-Q" "--batch"
+ "-l" "../test/exwm-firefox--tests.el"
+ "-l" "exwm-firefox.el"
+ "-f" "ert-run-tests-batch-and-exit")))
+ (inputs (list emacs-exwm emacs-exwm-firefox-core emacs-s))
(home-page "https://codeberg.org/emacs-weirdware/exwm-firefox")
(synopsis "Enhanced support for Firefox under EXWM")
(description
@@ -33595,7 +33691,7 @@ passphrase until the first time you push to a remote.")
(define-public emacs-super-save
(package
(name "emacs-super-save")
- (version "0.3.0")
+ (version "0.4.0")
(source
(origin
(method git-fetch)
@@ -33605,7 +33701,7 @@ passphrase until the first time you push to a remote.")
(file-name (git-file-name name version))
(sha256
(base32
- "066fyg4r4pksyandpd7s53hagpvm2rw90q5ks4jlpgy7x00hw09l"))))
+ "1nypbklgfxyrp55f0dazg9hm7gkqibijd6k4nlb0b0f1rhcm989b"))))
(build-system emacs-build-system)
(home-page "https://github.com/bbatsov/super-save")
(synopsis "Auto-save buffers, based on your activity")
@@ -34902,7 +34998,6 @@ on removable volumes in Linux.")
(sha256
(base32 "112vk1svnc6516vhs47sx5jw6bg8lwrc15l99dxj0sc313lxjy3k"))))
(build-system emacs-build-system)
- (inputs (list))
(home-page "https://codeberg.org/emacs-weirdware/debase")
(synopsis "D-Bus convenience layer for Emacs")
(description
@@ -34926,7 +35021,7 @@ services inside Emacs.")
(sha256
(base32 "01p4bfiasqxfmp9x1bxdc7763bh712d3vlp2014y8pzrwb1jqdaq"))))
(build-system emacs-build-system)
- (inputs (list emacs-debase))
+ (propagated-inputs (list emacs-debase))
(home-page "https://codeberg.org/emacs-weirdware/discomfort")
(synopsis "User interface to mount & unmount disks in Emacs.")
(description "Discomfort is an interface to mount and unmount disks in Emacs, using UDisks2.")
@@ -36501,7 +36596,7 @@ project root.")
(sha256
(base32 "19h3d12a99i7a92k3iw4zmjmw3dazsgnkc6j4965h033r1s40amx"))))
(build-system emacs-build-system)
- (inputs (list emacs-s))
+ (propagated-inputs (list emacs-s))
(home-page "https://codeberg.org/emacs-weirdware/hyperspace")
(synopsis "Get there from here")
(description
@@ -38450,14 +38545,14 @@ projects.")
(define-public emacs-vundo
(package
(name "emacs-vundo")
- (version "2.1.0")
+ (version "2.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/vundo-"
version ".tar"))
(sha256
(base32
- "1inm6kvh5j47nsrmq6wpf30dqmx0arzdpa6vdcn834g50i4fh8kc"))))
+ "1vb5mq51krpcaw741dai3b9s12yicn73l1bqql41gylpanca83py"))))
(build-system emacs-build-system)
(home-page "https://github.com/casouri/vundo")
(synopsis "Visualize the undo tree")
@@ -38904,7 +38999,7 @@ in Emacs.")
(define-public emacs-vertico-posframe
(package
(name "emacs-vertico-posframe")
- (version "0.7.5")
+ (version "0.7.6")
(source (origin
(method url-fetch)
(uri (string-append
@@ -38912,7 +39007,7 @@ in Emacs.")
".tar"))
(sha256
(base32
- "1fa8kg5lqpa1xk2vf1mp420iqki866gd83vzsj166b8mnd34fdlr"))))
+ "15d7j37rmmg021mciwibcfmdwjn2694ljlh4sj03m1j4gj7igfqd"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-posframe emacs-vertico))
(home-page "https://github.com/tumashu/vertico-posframe")
diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm
index 28f5032982..4a52290e1b 100644
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@ -1098,7 +1098,7 @@ Emacs).")
(define-public kicad
(package
(name "kicad")
- (version "7.0.9")
+ (version "7.0.10")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1106,7 +1106,7 @@ Emacs).")
(commit version)))
(sha256
(base32
- "1hq9rba1gcks14zwbr8nbicpsil4imslgfch6ll33fhizbks3fq4"))
+ "0rmlkgzgvpd70jzspyrrb2f618fimw52qrhpsp777flmpyh91wly"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@@ -1206,7 +1206,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
- "14dg99fvl6av9sn6gig6d6k1sdcf2svxy4fipqcz994z2khhz1sj"))))
+ "0lc7d6hn8ya8m51kjnf59v41pbp03l5ncxir75s21pb92l26xgnv"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html")
@@ -1240,7 +1240,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
- "0ynsnjq3z126cjkgm1fjbjvdvpc0walnr42ya9dv46l27kxy2j77"))))
+ "0nlgmxf9z1vf4g350dfkxql1dawgmw275wqxkgszsfxmhdfpmi9v"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no tests exist
@@ -1269,7 +1269,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
- "16a4c2xs4i8wbm01a901yxabxk0qdsjkzlccfawddv82bkh4b87h"))))
+ "1az6fzh1lma71mj12bc4bblnmzjayrxhkb8w9rjvlhvvgv33cdmy"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@@ -1286,7 +1286,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
- "1cly28vc07i54v487zbb8d1h70nrd3naxvq146b0xnbrjwnd2q28"))))
+ "0xzyi4mgyifwc6dppdzh6jq294mkj0a71cwkqw2ymz1kfbksw626"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
@@ -1303,7 +1303,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
- "11582ldnv7hkljmhaym83962kixq1hjbfmdrn5laq7l4jk3l19vh"))))
+ "0mykfwwik7472i4r0isc5szj3dnmvd0538p0vlmzh4rcgj3pj3vm"))))
(synopsis "Official KiCad project and worksheet templates")
(description "This package contains the official KiCad project and
worksheet templates.")))
diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm
index 749f741710..eadaa46102 100644
--- a/gnu/packages/finance.scm
+++ b/gnu/packages/finance.scm
@@ -2300,7 +2300,7 @@ mining.")
(define-public p2pool
(package
(name "p2pool")
- (version "3.7")
+ (version "3.10")
(source
(origin
(method git-fetch)
@@ -2309,7 +2309,7 @@ mining.")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
- (sha256 (base32 "1sghdk8yq8si0bq0z83fji48q8yrq0ymvsxbbh5mscw6223syrjq"))
+ (sha256 (base32 "0lp9slfwaq3wp4x6xpsiazam5lv6dz57m20adzlzzk0anb1ascr0"))
(modules '((guix build utils)))
(snippet
#~(for-each delete-file-recursively
diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm
index 5cebf515bf..e691bf33da 100644
--- a/gnu/packages/firmware.scm
+++ b/gnu/packages/firmware.scm
@@ -875,7 +875,7 @@ Executables included are:
(let ((toolchain-ver "GCC5"))
(package
(name "ovmf")
- (version "202308")
+ (version "202311")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -886,7 +886,7 @@ Executables included are:
(file-name (git-file-name name version))
(sha256
(base32
- "04rnfnaqr2c7ayplj7ib730zp1snw157zx5rmykz5hz1zz2vb20j"))))
+ "136dl5cxpjpg37whzlqq7jrrjsgybmwrgkbbmks8xaixqmzwhbw0"))))
(build-system gnu-build-system)
(arguments
(list
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 7516e1642b..e050f4fde9 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -123,6 +123,29 @@
titling.")
(license license:silofl1.1)))
+(define-public font-cardo
+ (package
+ (name "font-cardo")
+ (version "1.04")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://scholarsfonts.net/cardo"
+ (string-delete #\. version) ".zip"))
+ (sha256
+ (base32
+ "0ps55zjva4fzmg47w2i8srrh8sqxz1wkcclihwgzlwfbaxixn0cl"))))
+ (build-system font-build-system)
+ (home-page "https://scholarsfonts.net/cardofnt.html")
+ (synopsis "Unicode font for classical scholarship")
+ (description
+ "Cardo is a large unicode font specifically designed for the needs of
+classicists, biblical scholars, medievalists, and linguists. Since it may be
+used to prepare materials for publication, it also contains features that are
+required for high-quality typography, such as ligatures, text figures (also
+known as old style numerals), true small capitals and a variety of punctuation
+and space characters.")
+ (license license:silofl1.1)))
+
(define-public font-chivo
(let ((commit "dc61c468d79781eb5183426e88e844af16cdc3e5")
(revision "0"))
@@ -1952,15 +1975,15 @@ weights and five widths in both Roman and Italic, plus variable fonts.")
(define-public font-sarasa-gothic
(package
(name "font-sarasa-gothic")
- (version "0.42.6")
+ (version "1.0.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/be5invis/Sarasa-Gothic"
"/releases/download/v" version
- "/sarasa-gothic-ttc-" version ".7z"))
+ "/Sarasa-TTC-" version ".7z"))
(sha256
- (base32 "0czx10yph2lxg2k4w6qjnil73zb2pgg3g400apm9gay41m04990v"))))
+ (base32 "1cgqf15fhg567s2bwjpal3xfcdnbgyy0iav5181zkn6b4k56dgl4"))))
(build-system font-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 73f93a9992..ea1adf0ecf 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -196,69 +196,71 @@ is used in some video games and movies.")
(license license:zlib)))
(define-public dds
- (package
- (name "dds")
- (version "2.9.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/dds-bridge/dds")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1iv09qic43nvla02lm8zgnkqpjgnc95p8zh3wyifmnmlh1rz02yj"))))
- (build-system gnu-build-system)
- (arguments
- (list #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'chdir
- (lambda _
- (chdir "src")))
- (replace 'configure
- ;; Configuration is done by copying the appropriate
- ;; make file in the working directory. There is no
- ;; configure script.
- (lambda _
- (copy-file "Makefiles/Makefile_linux_shared"
- "Makefile")))
- (replace 'check
- ;; There is no "check" traget. We must compile
- ;; a "dtest" program and apply it on a data set.
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (install-file "libdds.so" "../test")
- (with-directory-excursion "../test"
- (copy-file "Makefiles/Makefile_linux"
- "Makefile")
- (substitute* "Makefile"
- (("-Werror") ""))
- (invoke "make")
- (invoke "./dtest" "-f" "../hands/list100.txt")))))
- (replace 'install
- ;; "install" target merely moves ".so" file around
- ;; the source directory. We install it in the store,
- ;; along with all shipped documentation (which cannot
- ;; be built from source unfortunately).
- (lambda _
- (install-file "libdds.so"
- (string-append #$output "/lib"))
- (let ((doc (string-append #$output
- "/share/doc/"
- #$name "-" #$version)))
- (install-file "../LICENSE" doc)
- (copy-recursively "../doc" doc)))))))
- (native-inputs
- (list gawk procps))
- (inputs
- (list boost))
- (home-page "https://privat.bahnhof.se/wb758135/")
- (synopsis "Double dummy solver for the bridge card game")
- (description "DDS is a double-dummy solver of bridge hands. It supports
+ (let ((commit "d2bc4c2c703941664fc1d73e69caa5233cdeac18")
+ (revision "1"))
+ (package
+ (name "dds")
+ (version (git-version "2.9.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/dds-bridge/dds")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1ishbb69cvyv96xdxshnly0m5ydwljgdf8fwa1cr9rj2qj40q4rm"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "src")))
+ (replace 'configure
+ ;; Configuration is done by copying the appropriate
+ ;; make file in the working directory. There is no
+ ;; configure script.
+ (lambda _
+ (copy-file "Makefiles/Makefile_linux_shared"
+ "Makefile")))
+ (replace 'check
+ ;; There is no "check" traget. We must compile
+ ;; a "dtest" program and apply it on a data set.
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (install-file "libdds.so" "../test")
+ (with-directory-excursion "../test"
+ (copy-file "Makefiles/Makefile_linux"
+ "Makefile")
+ (substitute* "Makefile"
+ (("-Werror") ""))
+ (invoke "make")
+ (invoke "./dtest" "-f" "../hands/list100.txt")))))
+ (replace 'install
+ ;; "install" target merely moves ".so" file around
+ ;; the source directory. We install it in the store,
+ ;; along with all shipped documentation (which cannot
+ ;; be built from source unfortunately).
+ (lambda _
+ (install-file "libdds.so"
+ (string-append #$output "/lib"))
+ (let ((doc (string-append #$output
+ "/share/doc/"
+ #$name "-" #$version)))
+ (install-file "../LICENSE" doc)
+ (copy-recursively "../doc" doc)))))))
+ (native-inputs
+ (list gawk procps))
+ (inputs
+ (list boost))
+ (home-page "https://privat.bahnhof.se/wb758135/")
+ (synopsis "Double dummy solver for the bridge card game")
+ (description "DDS is a double-dummy solver of bridge hands. It supports
single-threading and multi-threading for improved performance. DDS
offers a wide range of functions, including par-score calculations.")
- (license license:asl2.0)))
+ (license license:asl2.0))))
(define-public deutex
(package
@@ -3269,16 +3271,16 @@ progresses the level, or you may regenerate tiles as the world changes.")
(define-public bbcsdl
(package
(name "bbcsdl")
- (version "1.35a")
+ (version "1.39a")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rtrussell/BBCSDL/")
- (commit "b9b2a3eb438cb799edb2766055b3c38e9518e3e3")))
+ (commit "93b0ffae960f4c4f45fdc2202bc6e83ee5ca277c")))
(file-name (git-file-name name version))
(sha256
(base32
- "1d03xmhrl6ba6w0vwfk46mpyc9d0w3bixxj2d4irx7wl7bh3bfic"))))
+ "03ga14k2hbhflnaynbyx9lwlbxlzx3rv6zqq21yhl183s6d4c0wa"))))
(build-system gnu-build-system)
(arguments
(list
@@ -3318,6 +3320,7 @@ progresses the level, or you may regenerate tiles as the world changes.")
inputs (string-append "share/fonts/truetype/" font))
(string-append opt "/lib/" font)))
'("DejaVuSans.ttf" "DejaVuSansMono.ttf"
+ "DejaVuSans-Oblique.ttf"
"FreeSans.ttf" "FreeMono.ttf" "FreeSerif.ttf"))
(mkdir bin)
(symlink (string-append opt "/bbcsdl")
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index c7813790a1..cf2e38f49c 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -78,7 +78,8 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
-;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2023, 2024 gemmaro <gemmaro.dev@gmail.com>
+;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -193,6 +194,7 @@
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-compression)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@@ -230,6 +232,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
+ #:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (guix build-system scons)
#:use-module (guix build-system trivial)
@@ -2367,6 +2370,55 @@ Every puzzle has a complete solution, although there may be more than one.")
"PrBoom+ is a Doom source port developed from the original PrBoom project.")
(license license:gpl2+)))
+(define-public redeal
+ (let ((commit "e2e81a477fd31ae548a340b5f0f380594d3d0ad6")
+ (revision "1"))
+ (package
+ (name "redeal")
+ (version (git-version "0.2.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/anntzer/redeal")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1vac36bg4ah9gs4hgmp745xq6nnmd7s71vsq99d72ng3sxap0wa3"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unbundle-dds
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "setup.py"
+ (("cmdclass=.*") ""))
+ (let ((libdds (search-input-file inputs "lib/libdds.so")))
+ (substitute* "redeal/dds.py"
+ ((" and os.path.exists\\(dll_path\\)") "")
+ (("dll = DLL\\(dll_path\\)")
+ (format #f "dll = DLL(~s)" libdds))))))
+ (add-after 'install 'install-examples
+ (lambda _
+ (let* ((doc (string-append #$output "/share/doc/"))
+ (examples
+ (string-append doc #$name "-" #$version "/examples")))
+ (mkdir-p examples)
+ (copy-recursively "examples" examples)))))))
+ (inputs (list dds `(,python "tk")))
+ (propagated-inputs (list python-colorama))
+ (home-page "https://github.com/anntzer/redeal")
+ (synopsis
+ "Deal generator for bridge card game, written in Python")
+ (description
+ "Redeal is a deal generator written in Python. It outputs deals
+satisfying whatever conditions you specify --- deals with a double void, deals
+with a strong 2♣ opener opposite a yarborough, etc. Using Bo Haglund's double
+dummy solver, it can even solve the hands it has generated for you.")
+ (license license:gpl3))))
+
(define-public retux
(let ((release "1.6.1")
(revision 0))
@@ -3385,25 +3437,29 @@ a C library, so they can easily be integrated into other programs.")
(define-public taisei
(package
(name "taisei")
- (version "1.3.2")
+ (version "1.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/taisei-project/"
"taisei/releases/download/v" version
- "/taisei-v" version ".tar.xz"))
+ "/taisei-" version ".tar.xz"))
(sha256
- (base32 "1g53fcyrlzmvlsb40pw90gaglysv6n1w42hk263iv61ibhdmzh6v"))))
+ (base32 "1glrr99xiyz674d1izgvmk9w1zxanc94d34pacd0wya66bbml0nc"))))
(build-system meson-build-system)
(arguments
- `(#:build-type "release" ;comment out for bug-reporting (and cheats)
- #:configure-flags
- (list "-Dr_default=gles30"
- "-Dr_gles20=true"
- "-Dr_gles30=true"
- "-Dshader_transpiler=true")))
+ (list
+ #:build-type "release" ;comment out for bug-reporting (and cheats)
+ #:configure-flags #~(list "-Dr_default=gles30"
+ "-Dr_gles20=true"
+ "-Dr_gles30=true"
+ "-Dshader_transpiler=true")))
(native-inputs
- (list pkg-config python python-docutils python-pygments))
+ (list pkg-config
+ python
+ python-docutils
+ python-pygments
+ python-zstandard))
(inputs
(list cglm
freetype
@@ -3417,21 +3473,23 @@ a C library, so they can easily be integrated into other programs.")
sdl2-mixer
shaderc
spirv-cross
- zlib))
+ zlib
+ (list zstd "lib")))
(home-page "https://taisei-project.org/")
(synopsis "Shoot'em up fangame and libre clone of Touhou Project")
(description
"The player controls a character (one of three: Good, Bad, and Dead),
dodges the missiles (lots of it cover the screen, but the character's hitbox
is very small), and shoot at the adversaries that keep appear on the screen.")
- (license (list ;;game
- license:expat
- ;;resources/00-taisei.pkgdir/bgm/
- ;;atlas/portraits/
- license:cc-by4.0
- ;;miscellaneous
- license:cc0
- license:public-domain))))
+ (license (list
+ ;; game
+ license:expat
+ ;; resources/00-taisei.pkgdir/bgm/
+ ;; atlas/portraits/
+ license:cc-by4.0
+ ;; miscellaneous
+ license:cc0
+ license:public-domain))))
(define-public cmatrix
(package
@@ -3833,7 +3891,7 @@ for common mesh file formats, and collision detection.")
(package
(inherit irrlicht)
(name "irrlicht-for-minetest")
- (version "1.9.0mt10")
+ (version "1.9.0mt13")
(source
(origin
(method git-fetch)
@@ -3843,7 +3901,7 @@ for common mesh file formats, and collision detection.")
(file-name (git-file-name name version))
(sha256
(base32
- "0y5vchz91khs8dmrkpgc7sqmvzx2yjj6svivvm80r4yppv7s03rw"))))
+ "11pxg0yh50ym1hvh8va5jbbcjz5dsshj3xxvm3qhkgg96vpism06"))))
(build-system cmake-build-system)
(arguments
;; No check target.
@@ -10115,6 +10173,36 @@ can be downloaded from @url{https://zero.sjeng.org/best-network}.")
(home-page "https://github.com/bernds/q5Go")
(license license:gpl2+)))
+(define-public qcheckers
+ (package
+ (name "qcheckers")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/portnov/qcheckers")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "05wzql6abzdf6l0vdzki4rfy2zn31mcplh1wkw3ddk8w81pvaymw"))))
+ (build-system qt-build-system)
+ (arguments
+ (list
+ #:tests? #f
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'configure
+ (lambda _
+ (invoke "qmake"
+ (string-append "PREFIX=" #$output)))))))
+ (inputs (list qtbase-5 qtsvg-5))
+ (home-page "https://portnov.github.io/qcheckers/")
+ (synopsis "Qt-based checkers boardgame")
+ (description "QCheckers, formely known as KCheckers, is a is a Qt version
+of the classic boardgame checkers (also known as draughts).")
+ (license license:gpl2+)))
+
(define-public xmoto
(package
(name "xmoto")
@@ -10415,6 +10503,31 @@ sunfish, but is written in C rather than Python. It also has TUI tools for
using any UCI engine and also to connect UCI engines to Lichess.")
(license license:agpl3+))))
+(define-public morris
+ (package
+ (name "morris")
+ (version "0.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/farindk/morris")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1kkcnpkzgybm7rqg7nafd7sqd5m4alns6l4j5zcf3p41jdc9s3iv"))))
+ (build-system glib-or-gtk-build-system)
+ (inputs (list automake autoconf pkg-config intltool
+ gnu-gettext libtool glib gtk+-2 boost))
+ (arguments `(#:tests? #f))
+ (home-page "http://nine-mens-morris.net/downloads.html")
+ (synopsis "Morris is an implementation of the board game Nine Men's Morris")
+ (description "Morris is an implementation of the board game Nine Men's Morris.
+It supports not only the standard game, but also several rule-variants and different
+board layouts. You can play against the computer, or simply use the program to
+present the board, but play against another human opponent.")
+ (license license:gpl3)))
+
(define-public barrage
(package
(name "barrage")
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index a8b74a3632..5590cd3d7e 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2023 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2015-2018, 2020-2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015-2018, 2020-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Carlos Sánchez de La Lama <csanchezdll@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2022 Marius Bakke <marius@gnu.org>
@@ -75,6 +75,9 @@ where the OS part is overloaded to denote a specific ABI---into GCC
"--with-mode=thumb"
"--with-fpu=neon"))
+ ((string-match "x86_64-linux-gnux32" target)
+ '("--with-abi=mx32"))
+
((and (string-suffix? "-gnu" target)
(not (string-contains target "-linux")))
;; Cross-compilation of libcilkrts in GCC 5.5.0 to GNU/Hurd fails
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 31abb2cc36..73b7aa3d11 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -3228,3 +3228,31 @@ For maps, it can uses its own \"binfile\" map format, or Garmin map
file format, and data from OpenStreetMap, Garmin maps, Marco Polo
Grosser Reiseplaner, Routeplaner Europa 2007, Map + Route.")
(license license:gpl2)))
+
+(define-public laszip
+ (package
+ (name "laszip")
+ (version "3.4.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/LASzip/LASzip")
+ (commit "3.4.3")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "09lcsgxwv0jq50fhsgfhx0npbf1zcwn3hbnq6q78fshqksbxmz7m"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DLASZIP_BUILD_STATIC=NO")
+ #:build-type "Release"
+ ;; No tests.
+ #:tests? #f))
+ (home-page "https://laszip.org/")
+ (synopsis "Compression library for LAS files")
+ (description
+ "LASzip is a library for compressing @code{LAS} files and uncompressing
+@code{LAZ} files. The @code{LAS} format is a file format designed for the
+interchange and archiving of lidar point cloud data.")
+ (license license:asl2.0)))
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 54643c314e..188aa02293 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -1034,6 +1034,9 @@ variable defined below. It requires guile-json to be installed."
(setenv "MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE" "system")
(setenv "MOZ_BUILD_DATE" #$%icecat-build-id) ; avoid timestamp
+ ;; WM_CLASS (default is "$MOZ_APP_NAME-$MOZ_UPDATE_CHANNEL").
+ (setenv "MOZ_APP_REMOTINGNAME" "Icecat")
+
;; XXX TODO: Fix this to work on systems other than x86_64-linux.
(setenv "GUIX_PYTHONPATH"
(string-append (getcwd)
@@ -1091,18 +1094,22 @@ variable defined below. It requires guile-json to be installed."
(let* ((lib (string-append #$output "/lib"))
(gtk #$(this-package-input "gtk+"))
(gtk-share (string-append gtk "/share"))
- (ld-libs '#$(map (lambda (label)
- (file-append (this-package-input label) "/lib"))
- '("libpng-apng"
- "libxscrnsaver"
- "mesa"
- "pciutils"
- "mit-krb5"
- "eudev"
- "pulseaudio"
- ;; For the integration of native notifications
- ;; (same reason as icedove)
- "libnotify"))))
+ (ld-libs '#$(cons
+ (file-append
+ (this-package-input "libcanberra")
+ "/lib/gtk-3.0/modules")
+ (map (lambda (label)
+ (file-append (this-package-input label) "/lib"))
+ '("libpng-apng"
+ "libxscrnsaver"
+ "mesa"
+ "pciutils"
+ "mit-krb5"
+ "eudev"
+ "pulseaudio"
+ ;; For the integration of native notifications
+ ;; (same reason as icedove)
+ "libnotify")))))
(wrap-program (car (find-files lib "^icecat$"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
;; The following line is commented out because the icecat
@@ -1122,7 +1129,7 @@ variable defined below. It requires guile-json to be installed."
(("NewWindow") "new-window")
(("NewPrivateWindow") "new-private-window")
(("StartupNotify=true")
- "StartupNotify=true\nStartupWMClass=Navigator"))
+ "StartupNotify=true\nStartupWMClass=Icecat"))
(install-file desktop-file applications))))
(add-after 'install-desktop-entry 'install-icons
(lambda _
diff --git a/gnu/packages/golang-web.scm b/gnu/packages/golang-web.scm
index 7759916c35..3e60bfaf33 100644
--- a/gnu/packages/golang-web.scm
+++ b/gnu/packages/golang-web.scm
@@ -21,6 +21,7 @@
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
+;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -870,7 +871,7 @@ protocol.")
(define-public go-github-com-hjson-hjson-go
(package
(name "go-github-com-hjson-hjson-go")
- (version "3.1.0")
+ (version "4.3.1")
(source
(origin
(method git-fetch)
@@ -879,7 +880,7 @@ protocol.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1dfdiahimg6z9idg8jiqxwnlwjnmasbjccx8gnag49cz4yfqskaz"))))
+ (base32 "138vmbnrwzxf64cia27k407clrydvs2jx927dlv6ziydiqyvy7m3"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/hjson/hjson-go"))
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 36e2c4b23e..58681af958 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -3959,11 +3959,11 @@ packages.")
(license license:bsd-3))))
(define-public go-golang-org-x-sys
- (let ((commit "b60007cc4e6f966b1c542e343d026d06723e5653")
+ (let ((commit "ca59edaa5a761e1d0ea91d6c07b063f85ef24f78")
(revision "0"))
(package
(name "go-golang-org-x-sys")
- (version (git-version "0.4.0" revision commit))
+ (version (git-version "0.8.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3972,7 +3972,7 @@ packages.")
(file-name (git-file-name name version))
(sha256
(base32
- "0fr2d6fnpbqx6n89sg9lsinqkdaw49y068kqj2g0cxlhbh69hzii"))))
+ "1p81niiin8dwyrjl2xsc95136w3vdw4kmj0w3mlh0vh5v134s4xq"))))
(build-system go-build-system)
(arguments
(list
@@ -3989,24 +3989,6 @@ support for low-level interaction with the operating system.")
(home-page "https://go.googlesource.com/sys")
(license license:bsd-3))))
-;; XXX: This version is required for "go-github-com-quic-go-qtls-go1-20".
-(define-public go-golang-org-x-sys-0.8
- (let ((commit "ca59edaa5a761e1d0ea91d6c07b063f85ef24f78")
- (revision "0"))
- (package
- (inherit go-golang-org-x-sys)
- (name "go-golang-org-x-sys")
- (version (git-version "0.8.0" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://go.googlesource.com/sys")
- (commit commit)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1p81niiin8dwyrjl2xsc95136w3vdw4kmj0w3mlh0vh5v134s4xq")))))))
-
(define-public go-golang-org-x-text
(package
(name "go-golang-org-x-text")
@@ -7269,7 +7251,7 @@ implementation of generics.")
#:import-path "github.com/quic-go/qtls-go1-20"
#:go go-1.20))
(propagated-inputs (list go-golang-org-x-crypto
- go-golang-org-x-sys-0.8))
+ go-golang-org-x-sys))
(synopsis "TLS 1.3 for QUIC")
(description
"Go standard library TLS 1.3 implementation, modified for QUIC. For
@@ -7330,21 +7312,17 @@ the Go standard library}.")
#:tests? #f
#:go go-1.20))
(propagated-inputs
- (let ((p (package-input-rewriting
- `((,go-golang-org-x-sys . ,go-golang-org-x-sys-0.8))
- #:deep? #true)))
- (cons go-golang-org-x-sys-0.8
- (map p
- (list go-github-com-quic-go-qtls-go1-20
- go-github-com-quic-go-qpack
- go-golang-org-x-crypto
- go-github-com-cheekybits-genny
- go-github-com-marten-seemann-chacha20
- go-github-com-golang-protobuf-proto
- go-golang-org-x-crypto
- go-golang-org-x-exp
- go-golang-org-x-net
- go-golang-org-x-sync)))))
+ (list go-github-com-quic-go-qtls-go1-20
+ go-github-com-quic-go-qpack
+ go-golang-org-x-crypto
+ go-github-com-cheekybits-genny
+ go-github-com-marten-seemann-chacha20
+ go-github-com-golang-protobuf-proto
+ go-golang-org-x-crypto
+ go-golang-org-x-exp
+ go-golang-org-x-net
+ go-golang-org-x-sys
+ go-golang-org-x-sync))
(synopsis "QUIC in Go")
(description "This package provides a Go language implementation of the QUIC
network protocol.")
diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm
index a40b580417..26b9d03a73 100644
--- a/gnu/packages/graph.scm
+++ b/gnu/packages/graph.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2017, 2018, 2019, 2020, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2017-2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018, 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
@@ -426,6 +426,48 @@ algorithm for community detection in large networks.")
large networks.")
(license license:gpl3+)))
+(define-public python-louvain-igraph
+ (package
+ (name "python-louvain-igraph")
+ (version "0.8.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/vtraag/louvain-igraph")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1j2ybihvvzggwjb9zvm829aqb5b94q10h8bw6v0h42xd9w75z9sv"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'find-igraph
+ (lambda _
+ (setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version)
+ (substitute* "setup.py"
+ (("/usr/include/igraph")
+ (string-append #$(this-package-input "igraph")
+ "/include/igraph"))))))))
+ (propagated-inputs (list python-igraph))
+ (inputs (list igraph))
+ (native-inputs
+ (list python-ddt
+ python-setuptools-scm
+ pkg-config))
+ (home-page "https://github.com/vtraag/louvain-igraph")
+ (synopsis "Implementation of the Louvain algorithm")
+ (description "This package implements the Louvain algorithm for community
+detection in C++ and exposes it to Python. Besides the relative flexibility
+of the implementation, it also scales well, and can be run on graphs of
+millions of nodes (as long as they can fit in memory). The core function is
+@code{find_partition} which finds the optimal partition using the louvain
+algorithm for a number of different methods.")
+ (license license:gpl3+)))
+
(define-public faiss
(package
(name "faiss")
@@ -449,8 +491,8 @@ large networks.")
(build-system cmake-build-system)
(arguments
`(#:configure-flags
- (list "-DBUILD_WITH_GPU=OFF" ; thanks, but no thanks, CUDA.
- "-DBUILD_TUTORIAL=OFF") ; we don't need those
+ (list "-DBUILD_WITH_GPU=OFF" ; thanks, but no thanks, CUDA.
+ "-DBUILD_TUTORIAL=OFF") ; we don't need those
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'prepare-build
@@ -466,7 +508,7 @@ large networks.")
'()))))))
(substitute* "CMakeLists.txt"
(("-m64") "")
- (("-mpopcnt") "") ; only some architectures
+ (("-mpopcnt") "") ; only some architectures
(("-msse4")
(string-append
(string-join features)
diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm
index b91c365e3c..c5507e036c 100644
--- a/gnu/packages/graphviz.scm
+++ b/gnu/packages/graphviz.scm
@@ -195,7 +195,7 @@ structure and layout algorithms.")
(define-public python-uqbar
(package
(name "python-uqbar")
- (version "0.5.6")
+ (version "0.5.9")
(source
(origin
(method git-fetch)
@@ -205,18 +205,12 @@ structure and layout algorithms.")
(file-name (git-file-name name version))
(sha256
(base32
- "1ml3x2mf7nlnvrh9lari5yk0sz2mmg39jwsbjxnpzhnw4kcwpdrs"))))
+ "0c573nzpm51qgz2g296f8pw8ys0i3r6daynxk06zagk5l5fgw9ar"))
+ (patches (search-patches "python-uqbar-python3.10.patch"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch
- (lambda _
- (substitute* "setup.py"
- ;; Latest versions of sphink-rtd-theme require npm to build.
- (("sphinx-rtd-theme >= 0.5.0") "sphinx-rtd-theme >= 0.2.4")
- (("black") "black >= 19.10b0"))
- #t))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm
index afd8900848..9dc1176797 100644
--- a/gnu/packages/guile-xyz.scm
+++ b/gnu/packages/guile-xyz.scm
@@ -1839,6 +1839,33 @@ written in pure Scheme by using Guile's foreign function interface.")
library}.")
(license license:gpl3+)))
+(define-public guile-yamlpp
+ (package
+ (name "guile-yamlpp")
+ (version "0.2")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.com/yorgath/guile-yamlpp")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "14mlqi7hw7pi9scwk1g432issnqcn185pd8na2plijxq55cy0iq7"))))
+ (build-system gnu-build-system)
+ (native-inputs (list autoconf automake libtool pkg-config))
+ (inputs (list guile-3.0 yaml-cpp))
+ (native-search-paths
+ (list (search-path-specification
+ (variable "GUILE_EXTENSIONS_PATH")
+ (files (list "lib/guile/3.0")))))
+ (home-page "https://gitlab.com/yorgath/guile-yamlpp")
+ (synopsis "Guile YAML reader/writer based on @code{yaml-cpp}")
+ (description
+ "A module for GNU Guile to read and write YAML files. It works using
+bindings to the @code{yaml-cpp} C++ library.")
+ (license license:gpl3+)))
+
(define-public guile-dbi
(package
(name "guile-dbi")
@@ -3565,6 +3592,80 @@ structures. This package re-uses the SRFI sample implementation.")
;; contains ISC code from the SRFI sample implementation
license:isc))))
+(define-public guile-srfi-133
+ (package
+ (name "guile-srfi-133")
+ (version "0.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scheme-requests-for-implementation/srfi-133")
+ (commit "db81a114cd3e23375f024baec15482614ec90453")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0a7srl72291yah0aj6rwddhj041v2spximhknjj7hczlparsrm7f"))))
+ (build-system guile-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'move-create-and-delete-files
+ (lambda _
+ (rename-file "vectors" "srfi")
+ (rename-file "srfi/vectors-test.scm" "srfi/srfi-test.scm")
+ (rename-file "srfi/vectors-impl.scm" "srfi/srfi-impl.scm")
+ (with-output-to-file "srfi/srfi-133.scm"
+ (lambda ()
+ (display "(define-module (srfi srfi-133)
+ #:replace (;; Constructors
+ vector-copy
+
+ ;; Mutators
+ vector-fill! vector-copy!
+
+ ;; Conversion
+ vector->list list->vector)
+ #:export (;; Constructors
+ vector-unfold vector-unfold-right vector-reverse-copy
+ vector-append vector-concatenate vector-append-subvectors
+
+ ;; Predicates
+ vector-empty? vector=
+
+ ;; Iteration
+ vector-fold vector-fold-right vector-map vector-map!
+ vector-for-each vector-count vector-cumulate
+
+ ;; Searching
+ vector-index vector-index-right vector-skip vector-skip-right
+ vector-binary-search vector-any vector-every vector-partition
+
+ ;; Mutators
+ vector-swap! vector-reverse!
+ vector-reverse-copy! vector-unfold! vector-unfold-right!
+
+ ;; Conversion
+ reverse-vector->list reverse-list->vector
+ vector->string string->vector))
+
+(include \"srfi-impl.scm\")")))
+ (for-each (lambda (filename)
+ (delete-file filename))
+ '("tests/run.scm"
+ "srfi/vectors.sld"
+ "srfi/vectors.scm")))))))
+ (native-inputs
+ (list guile-3.0))
+ (home-page "https://github.com/scheme-requests-for-implementation/srfi-133")
+ (synopsis "R7RS-compatible vector library for Guile")
+ (description
+ "This package provides a Guile implementation of
+@uref{https://srfi.schemers.org/srfi-133/srfi-133.html, SRFI-133}, a
+comprehensive library of vector operations.")
+ (license license:expat)))
+
(define-public guile-srfi-145
(package
(name "guile-srfi-145")
@@ -3766,6 +3867,56 @@ Either represents the concept of values which are either correct (Right)
or errors (Left).")
(license license:expat))))
+(define-public guile-srfi-232
+ (package
+ (name "guile-srfi-232")
+ (version "0.0.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/scheme-requests-for-implementation/srfi-232")
+ (commit "c3f580d220778cd71492aba4fdd0c7040968e705")))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0lp4zcqjjj6hwfh3ix71wak1nffgg4npzsg7cdxfn9hf6iwf9xby"))))
+ (build-system guile-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'move-and-delete-things
+ (lambda _
+ (let* ((srfi-directory (string-append #$output "/srfi")))
+ (mkdir-p "srfi")
+ (with-output-to-file "srfi/srfi-232.scm"
+ (lambda ()
+ (display "(define-library (srfi srfi-232)
+ (export curried define-curried)
+ (import (only (guile) import)
+ (scheme base))
+ (include \"../srfi-232.scm\"))")))
+ (for-each (lambda (filename)
+ (delete-file filename))
+ '("test-body.scm"
+ "test-chibi.scm"
+ "test-srfi-64.scm"))))))))
+ (native-inputs
+ (list guile-3.0))
+ (home-page "https://github.com/scheme-requests-for-implementation/srfi-232")
+ (synopsis "Flexible curried procedures")
+ (description
+ " This package provides an implementation of
+@uref{https://srfi.schemers.org/srfi-232/srfi-232.html, SRFI-232}, which
+describes @code{curried}, a variant of @code{lambda} that creates true curried
+procedures which also behave just like ordinary Scheme procedures. They can
+be applied to their arguments one by one, all at once, or anywhere in between,
+without any novel syntax. @code{curried} also supports nullary and variadic
+procedures, and procedures created with it have predictable behavior when
+applied to surplus arguments.")
+ (license license:expat)))
+
(define-public emacsy
(package
(name "emacsy")
diff --git a/gnu/packages/libsigsegv.scm b/gnu/packages/libsigsegv.scm
index ebbdd2ad90..71afb35be0 100644
--- a/gnu/packages/libsigsegv.scm
+++ b/gnu/packages/libsigsegv.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2018 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2024 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,6 +21,7 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
+ #:use-module (guix utils)
#:use-module (guix build-system gnu))
(define-public libsigsegv
@@ -40,21 +41,15 @@
(arguments
`(;; The shared library isn't built by default but some packages need it.
#:configure-flags '("--enable-shared")
-
- ;; On MIPS, work around this error:
- ;;
- ;; In file included from fault-linux-mips-old.h:18:0,
- ;; [...]
- ;; linux-libre-headers-cross-mips64el-linux-gnu-3.3.8/include/asm/sigcontext.h:57:8: error: redefinition of 'struct sigcontext'
- ,@(if (string-contains (or (%current-target-system) (%current-system))
- "mips64el")
- `(#:phases (modify-phases %standard-phases
- (add-before 'configure 'patch-mips-old-h
- (lambda _
- (substitute* "src/fault-linux-mips-old.h"
- (("#include <asm/sigcontext\\.h>") ""))
- #t))))
- '())))
+ ;; On some architectures 'struct sigcontext' gets redefined from
+ ;; %linux-libre-headers/include/asm/sigcontext.h
+ ,@(cond ((%current-target-system)
+ `(#:phases (modify-phases %standard-phases
+ (add-before 'configure 'patch-asm-sigcontext-h
+ (lambda _
+ (substitute* (find-files "src" "^fault-.*-old\\.h$")
+ (("#include <asm/sigcontext\\.h>") "")))))))
+ (else '()))))
(description
"GNU libsigsegv is a library to handle page faults, which occur when a
program tries to access an unavailable region of memory, in user mode. By
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 1c359cb300..0fe64bacf3 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -76,7 +76,7 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 dan <i@dan.games>
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
-;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
+;;; Copyright © 2023, 2024 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;;
;;; This file is part of GNU Guix.
@@ -494,17 +494,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
-(define-public linux-libre-6.6-version "6.6.8")
+(define-public linux-libre-6.6-version "6.6.9")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
linux-libre-6.6-version
linux-libre-6.6-gnu-revision
(base32 "0g8m0rb15b0231dv8ji456s75a67szsaim71may3yprplycz6pav")
- (base32 "1hg3ck1j8288fhlhcvhgs1zzwh3i62nfvphw7x3vsaqr75kiwbjp")))
+ (base32 "0kavbby960k7wg355p3hjb9v1c4gnk8dv3lkfhpz44ayhv7kihg5")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
- (hash (base32 "05i4ayj9wyjkd1s8ixx7bxwcyagqyx8rhj1zvbc3cjqyw4sc8djh")))
+ (hash (base32 "1cs8ym3yq9czjx6sbxpmn16l6a577mc4c1ff7nk1p2gw1jpnbg4f")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
@@ -512,17 +512,17 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
-(define-public linux-libre-6.1-version "6.1.69")
+(define-public linux-libre-6.1-version "6.1.70")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
linux-libre-6.1-version
linux-libre-6.1-gnu-revision
(base32 "1sf80f2i4vf888xjcn84ymn4w5ynn30ib9033zwmv7f09yvfhapy")
- (base32 "1hdibv43xbn1lv83i6qjgfmf1bvqxvq17fryfsq4r4sjgs9212js")))
+ (base32 "1jg2v1nxd6i5x536vmd1l14xhpzrcimpmjfipb1zkrwil102y25f")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
- (hash (base32 "0hdm28k49kmy9r96hckps0bvvaq9m06l72n8ih305rccs6a2cgby")))
+ (hash (base32 "1vxgardfm2fi4c7zkxpljqicllfqqnp835a9lyb7dh2nchk6a4zd")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
diff --git a/gnu/packages/lisp-check.scm b/gnu/packages/lisp-check.scm
index 5f5e39c193..cbaef71b87 100644
--- a/gnu/packages/lisp-check.scm
+++ b/gnu/packages/lisp-check.scm
@@ -1038,8 +1038,8 @@ interactive development.")
(sbcl-package->ecl-package sbcl-stefil))
(define-public sbcl-try
- (let ((commit "a1fffad2ca328b3855f629b633ab1daaeec929c2")
- (revision "1"))
+ (let ((commit "cf2a8887d091bf297b72ef69e15012e7e849ba3b")
+ (revision "2"))
(package
(name "sbcl-try")
(version (git-version "0.0.1" revision commit))
@@ -1051,7 +1051,7 @@ interactive development.")
(commit commit)))
(file-name (git-file-name "cl-try" version))
(sha256
- (base32 "03dm2i2y4wiyzz9d25zdxm6gdglnvwali0ylp0rfwpk6wf29sj09"))))
+ (base32 "166i3fqwxfv9skz6yf95c95nx0jjqy1ak1131bd0sqmd582gi9mg"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-cl-ppcre))
diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm
index 1625197550..aa3ea7c9ce 100644
--- a/gnu/packages/lisp-xyz.scm
+++ b/gnu/packages/lisp-xyz.scm
@@ -32,7 +32,7 @@
;;; Copyright © 2021 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2021 Jacob MacDonald <jaccarmac@gmail.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
-;;; Copyright © 2022, 2023 Paul A. Patience <paul@apatience.com>
+;;; Copyright © 2022, 2023, 2024 Paul A. Patience <paul@apatience.com>
;;; Copyright © 2022 Thomas Albers Raviola <thomas@thomaslabs.org>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Trevor Richards <trev@trevdev.ca>
@@ -1005,11 +1005,11 @@ Common Lisp, heavily influenced by Python's @code{optparse} and
(sbcl-package->cl-source-package sbcl-adopt))
(define-public sbcl-clingon
- (let ((commit "ff4fda1768551fecdf1c527a3097ae99ba5f40b5")
- (revision "1"))
+ (let ((commit "379fc41e7b3977661f1454cf35acdbfae046d40d")
+ (revision "0"))
(package
(name "sbcl-clingon")
- (version (git-version "0.4.0" revision commit))
+ (version (git-version "0.5.0" revision commit))
(source
(origin
(method git-fetch)
@@ -1018,7 +1018,7 @@ Common Lisp, heavily influenced by Python's @code{optparse} and
(commit commit)))
(file-name (git-file-name "cl-clingon" version))
(sha256
- (base32 "1b5ybq2x8bwsr541cznwv43lf9j5gz1ij52xj181kg32wb3x0y3n"))))
+ (base32 "11p9lplx0fc5ghx601i150vrd46zdbvw0hfrbrrrdqplxaqpywq5"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-rove))
@@ -1510,8 +1510,8 @@ compatible with ANSI-compliant Common Lisp implementations.")
(sbcl-package->ecl-package sbcl-cl-ppcre))
(define-public sbcl-one-more-re-nightmare
- (let ((commit "09c33feed35797512bf123ccca053cf8ba42bfbd")
- (revision "0"))
+ (let ((commit "5b0b02e59f90964baf5737abd13300fa82f27667")
+ (revision "1"))
(package
(name "sbcl-one-more-re-nightmare")
(version (git-version "0.0.0" revision commit))
@@ -1523,7 +1523,7 @@ compatible with ANSI-compliant Common Lisp implementations.")
(commit commit)))
(file-name (git-file-name "cl-one-more-re-nightmare" version))
(sha256
- (base32 "0vc0lxvn3anjb63hr26r1l18aw5nbj80w9ja3a32fip6nbwfsrfv"))))
+ (base32 "0mwgjgnp8dsf2zn0290px5q89z93zs0v4dhvs3rcir4mpiw8rbsn"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:asd-test-systems '("one-more-re-nightmare-tests")
@@ -3152,8 +3152,8 @@ Lisp.")
(sbcl-package->ecl-package sbcl-calm))
(define-public sbcl-esrap
- (let ((commit "4c82a863871e117f0041b9ef37e61c0b62318aa7")
- (revision "3"))
+ (let ((commit "d806138342a6b27327649fd5f36e0fe2e0966867")
+ (revision "4"))
(package
(name "sbcl-esrap")
(version (git-version "0.18" revision commit))
@@ -3163,9 +3163,9 @@ Lisp.")
(uri (git-reference
(url "https://github.com/scymtym/esrap")
(commit commit)))
+ (file-name (git-file-name "cl-esrap" version))
(sha256
- (base32 "16nc3rhxd61xabja1h9akqqva0cmz2gxk0bkaqy10h492wx93d81"))
- (file-name (git-file-name "cl-esrap" version))))
+ (base32 "0gs0mfamldhaihnlk0qxg2q4bl8bamq68dif9js9fkl8apg3iykl"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-fiveam))
@@ -3407,8 +3407,8 @@ than the body of the lambda.")
(define-public sbcl-nibbles
;; No tagged release since 2018.
- (let ((commit "dad25240928d5cf8f7df69c4398244e03570bb35")
- (revision "2"))
+ (let ((commit "a46a67736e07b548cdd7485cb36834f7942313f1")
+ (revision "3"))
(package
(name "sbcl-nibbles")
(version (git-version "0.14" revision commit))
@@ -3418,9 +3418,9 @@ than the body of the lambda.")
(uri (git-reference
(url "https://github.com/sharplispers/nibbles/")
(commit commit)))
+ (file-name (git-file-name "cl-nibbles" version))
(sha256
- (base32 "0r6ljlpgjmkf87pmvdwzva8qj15bhznc3ylgcjjqyy4frbx9lygz"))
- (file-name (git-file-name "nibbles" version))))
+ (base32 "12qjich11hp31dhbvbsixyjbddmr6faaajigrivgbxy9kw6d279j"))))
(build-system asdf-build-system/sbcl)
(native-inputs
;; Tests only.
@@ -7497,8 +7497,8 @@ port within a range.")
(sbcl-package->ecl-package sbcl-find-port))
(define-public sbcl-numpy-file-format
- (let ((commit "e97aef6c592a412fdd1afa9a5f09d0b1ce134510")
- (revision "1"))
+ (let ((commit "e440c7bbc0d86b9abf73acb0fa665b77b82a6c98")
+ (revision "2"))
(package
(name "sbcl-numpy-file-format")
(version (git-version "0.0.0" revision commit))
@@ -7510,7 +7510,7 @@ port within a range.")
(commit commit)))
(file-name (git-file-name "cl-numpy-file-format" version))
(sha256
- (base32 "0j7jjcf6k3anvgpm4nf81g6gbhff44v0v9rai7kwm2bm3abzsjfd"))))
+ (base32 "1n0nixc44z1cymm20wif0l2100ydv0h69l6i6xz5bmwcb2zc4gqr"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-ieee-floats sbcl-trivial-features))
@@ -8316,8 +8316,8 @@ cookie headers, cookie creation, cookie jar creation and more.")
(sbcl-package->ecl-package sbcl-cl-cookie))
(define-public sbcl-dexador
- (let ((commit "74a233edb0ebf2b8c696fb8db984ac568fbcc4e5")
- (revision "1"))
+ (let ((commit "051cbb784ea3015cef9731eb5a624f3122de84b5")
+ (revision "2"))
(package
(name "sbcl-dexador")
(build-system asdf-build-system/sbcl)
@@ -8331,7 +8331,7 @@ cookie headers, cookie creation, cookie jar creation and more.")
(commit commit)))
(file-name (git-file-name "cl-dexador" version))
(sha256
- (base32 "14cbykd9j8klm8sz3siq5zk78a0ljd6rdwfq12fi4h1ih50apyfi"))))
+ (base32 "1sggpi43la8dai102fmkzysh7760hvk6q68f0pkbb9187vz8nd3y"))))
(inputs
(list sbcl-alexandria
sbcl-babel
@@ -8342,22 +8342,19 @@ cookie headers, cookie creation, cookie jar creation and more.")
sbcl-cl-base64
sbcl-cl-cookie
sbcl-cl-ppcre
- sbcl-cl-reexport
sbcl-fast-http
sbcl-fast-io
sbcl-quri
+ sbcl-trivial-garbage
sbcl-trivial-gray-streams
sbcl-trivial-mimes
sbcl-usocket))
;; These native-inputs are for tests only, which are disabled.
;; Leave them commented since they add a lot to the closure size.
;; (native-inputs
- ;; (list sbcl-cl-ppcre
- ;; sbcl-clack
+ ;; (list sbcl-clack
;; sbcl-lack
- ;; sbcl-local-time
- ;; sbcl-prove
- ;; sbcl-trivial-features))
+ ;; sbcl-rove))
(arguments
;; TODO: Circular dependency: tests depend on clack-test which depends on dexador.
`(#:tests? #f
@@ -13990,8 +13987,8 @@ MOP easier to use.")
'(#:tests? #f)))))
(define-public sbcl-osicat
- (let ((commit "a45eb3b5826e9175f7c94ba97a00d6b4932f3163")
- (revision "3"))
+ (let ((commit "982327905b8980ff3173344ca87282e046565732")
+ (revision "4"))
(package
(name "sbcl-osicat")
(version (git-version "0.7.0" revision commit))
@@ -14004,7 +14001,7 @@ MOP easier to use.")
(commit commit)))
(file-name (git-file-name "cl-osicat" version))
(sha256
- (base32 "1ilag0b0xn97acc0m1q93vwp2y3md9a586858zfx04d8wpbvk8sz"))
+ (base32 "10q1dfkhrvp5ia860q10y4wdm11fmxf7xv8zl4viz2np9xzf5v22"))
(snippet
'(begin
;; The useless release.sh drags `bash' into the closure.
@@ -17455,19 +17452,20 @@ the @command{flamegraph.pl} script, which is available in the Guix package
(sbcl-package->cl-source-package sbcl-flamegraph))
(define-public sbcl-trivial-benchmark
- (let ((commit "42d76733dd2e873471c6f1e27d39113293f7dd5c"))
+ (let ((commit "1fbc8d15f09ed8aa426bc73956b8b7c9b2668802")
+ (revision "2"))
(package
(name "sbcl-trivial-benchmark")
- (version (git-version "2.0.0" "1" commit))
+ (version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/trivial-benchmark/")
(commit commit)))
- (file-name (git-file-name name version))
+ (file-name (git-file-name "cl-trivial-benchmark" version))
(sha256
- (base32 "0fbzqbpm2ixz85555krl36kbbbjyn699vdj6k383khi3g9y629fa"))))
+ (base32 "1p48wgpady0n8frdcgp7sbg93b0fbvpx1qk5valmanhwr9j3xh88"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria))
@@ -17952,47 +17950,50 @@ standard library.")
(sbcl-package->cl-source-package sbcl-shlex))
(define-public sbcl-cmd
- (let ((commit "dda16c251992d2711dd98a073c436e73355cdb15"))
+ (let ((commit "0164d574ba236e2001ee1d9dba3f4774c7512a8c")
+ (revision "8"))
(package
(name "sbcl-cmd")
- (version (git-version "0.0.1" "7" commit))
+ (version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ruricolist/cmd/")
(commit commit)))
- (file-name (git-file-name name version))
+ (file-name (git-file-name "cl-cmd" version))
(sha256
- (base32 "1m72vir64h21y3z1dmdywr0r3dl9lwawgd5p9g0cl3bgmz2wjgqr"))))
+ (base32 "03wbckzmz6pqdlz7pyar6nfg4vs4bl0b2np7n3kk3qhjbrdakc4m"))))
(build-system asdf-build-system/sbcl)
- (inputs
- `(("alexandria" ,sbcl-alexandria)
- ("coreutils" ,coreutils)
- ("procps" ,procps)
- ("serapeum" ,sbcl-serapeum)
- ("shlex" ,sbcl-shlex)
- ("trivia" ,sbcl-trivia)))
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (let ((bin (string-append (assoc-ref inputs "coreutils") "/bin"))
- (ps-bin (string-append (assoc-ref inputs "procps") "/bin")))
- (substitute* "cmd.lisp"
- (("\\(def \\+env\\+ \"env\"\\)")
- (format #f "(def +env+ \"~a/env\")" bin))
- (("\\(def \\+kill\\+ \"kill\"\\)")
- (format #f "(def +kill+ \"~a/kill\")" bin))
- (("\\(def \\+ps\\+ \"ps\"\\)")
- (format #f "(def +ps+ \"~a/ps\")" ps-bin))
- (("\\(def \\+pwd\\+ \"pwd\"\\)")
- (format #f "(def +pwd+ \"~a/pwd\")" bin))
- (("\\(def \\+sh\\+ \"/bin/sh\"\\)")
- (format #f "(def +sh+ \"~a\")" (which "sh")))
- (("\\(def \\+tr\\+ \"tr\"\\)")
- (format #f "(def +tr+ \"~a/tr\")" bin)))))))))
+ (list #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((bin (string-append (assoc-ref inputs "coreutils")
+ "/bin"))
+ (ps-bin (string-append (assoc-ref inputs "procps")
+ "/bin")))
+ (substitute* "cmd.lisp"
+ (("\\(def \\+env\\+ \"env\"\\)")
+ (format #f "(def +env+ \"~a/env\")" bin))
+ (("\\(def \\+kill\\+ \"kill\"\\)")
+ (format #f "(def +kill+ \"~a/kill\")" bin))
+ (("\\(def \\+ps\\+ \"ps\"\\)")
+ (format #f "(def +ps+ \"~a/ps\")" ps-bin))
+ (("\\(def \\+pwd\\+ \"pwd\"\\)")
+ (format #f "(def +pwd+ \"~a/pwd\")" bin))
+ (("\\(def \\+sh\\+ \"/bin/sh\"\\)")
+ (format #f "(def +sh+ \"~a\")" (which "sh")))
+ (("\\(def \\+tr\\+ \"tr\"\\)")
+ (format #f "(def +tr+ \"~a/tr\")" bin)))))))))
+ (inputs
+ (list coreutils
+ procps
+ sbcl-alexandria
+ sbcl-serapeum
+ sbcl-shlex
+ sbcl-trivia))
(home-page "https://github.com/ruricolist/cmd")
(synopsis "Conveniently run external programs from Common Lisp")
(description
@@ -18195,33 +18196,35 @@ the origin.")
(sbcl-package->cl-source-package sbcl-concrete-syntax-tree))
(define-public sbcl-eclector
- (package
- (name "sbcl-eclector")
- (version "0.9.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/s-expressionists/Eclector")
- (commit version)))
- (file-name (git-file-name "cl-eclector" version))
- (sha256
- (base32 "10whwpz08fkdcz59sz1b6rn5r1pdns5wnsb1g26gppiv3rrg3cvh"))))
- (build-system asdf-build-system/sbcl)
- (native-inputs
- (list sbcl-fiveam))
- (inputs
- (list sbcl-acclimation
- sbcl-alexandria
- sbcl-closer-mop
- sbcl-concrete-syntax-tree))
- (arguments
- '(#:asd-systems '("eclector"
- "eclector-concrete-syntax-tree")))
- (home-page "https://s-expressionists.github.io/Eclector/")
- (synopsis "Highly customizable, portable Common Lisp reader")
- (description
- "Eclector is a portable Common Lisp reader that is highly customizable,
+ (let ((commit "d499b09142c7e39b4ef52e821fa767d5a8d606a0")
+ (revision "0"))
+ (package
+ (name "sbcl-eclector")
+ (version (git-version "0.9.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/s-expressionists/Eclector")
+ (commit commit)))
+ (file-name (git-file-name "cl-eclector" version))
+ (sha256
+ (base32 "1sg8wmdpm8pcjwk394way5vs2ya3r995lddmi51q9zfn9hmzb7gn"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-fiveam))
+ (inputs
+ (list sbcl-acclimation
+ sbcl-alexandria
+ sbcl-closer-mop
+ sbcl-concrete-syntax-tree))
+ (arguments
+ '(#:asd-systems '("eclector"
+ "eclector-concrete-syntax-tree")))
+ (home-page "https://s-expressionists.github.io/Eclector/")
+ (synopsis "Highly customizable, portable Common Lisp reader")
+ (description
+ "Eclector is a portable Common Lisp reader that is highly customizable,
can recover from errors and can return concrete syntax trees.
In contrast to many other reader implementations, eclector can recover from
@@ -18230,7 +18233,7 @@ is realized as a restart.
It can also produce instances of the concrete syntax tree classes provided by
the concrete syntax tree library.")
- (license license:bsd-2)))
+ (license license:bsd-2))))
(define-public ecl-eclector
(sbcl-package->ecl-package sbcl-eclector))
@@ -19193,8 +19196,8 @@ Lisp.")
(sbcl-package->cl-source-package sbcl-percent-encoding))
(define-public sbcl-machine-state
- (let ((commit "afa7392bc5dcb689cd170bcca765fb6ce6e4efc5")
- (revision "1"))
+ (let ((commit "3d258eea63942e7d2fd7212f1ad8bbcf505634a2")
+ (revision "2"))
(package
(name "sbcl-machine-state")
(version (git-version "1.0.0" revision commit))
@@ -19204,9 +19207,9 @@ Lisp.")
(uri (git-reference
(url "https://github.com/Shinmera/machine-state")
(commit commit)))
- (file-name (git-file-name "machine-state" version))
+ (file-name (git-file-name "cl-machine-state" version))
(sha256
- (base32 "1b897wj06cnalzf5nl6rif1skpa79rzc9a562x1bdhvanhsp7hwa"))))
+ (base32 "1fjf2v8agx75qnna1n8fn54lvb01w1rk1vddi3p45a2xw1kwhzml"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-bordeaux-threads
@@ -19216,7 +19219,7 @@ Lisp.")
(arguments
'(#:tests? #f ; No tests.
#:asd-systems '("machine-state" "machine-state/opengl")))
- (home-page "https://notabug.org/cage/cl-mount-info.git")
+ (home-page "https://shinmera.github.io/machine-state/")
(synopsis "Retrieve machine state information about CPU time, memory usage and more")
(description
"This library implements various functions to access status information
@@ -19868,8 +19871,8 @@ abstract, final and singleton classes.")
(sbcl-package->cl-source-package sbcl-abstract-classes))
(define-public sbcl-coalton
- (let ((commit "ba758062bdc7c316438198601f43900c51df25d8")
- (revision "3"))
+ (let ((commit "939342495f55991812c2c2767322c5e51e755216")
+ (revision "4"))
(package
(name "sbcl-coalton")
(version (git-version "0.0.1" revision commit))
@@ -19881,16 +19884,17 @@ abstract, final and singleton classes.")
(commit commit)))
(file-name (git-file-name "cl-coalton" version))
(sha256
- (base32 "08sxfla1gyf9pczylaq1cn2j1nr2gzc9w0pk6aarsa4q2770zhf7"))))
+ (base32 "08qzj3v4fvn9h87whyqg650rpap8lva7jr94d1akv6m2z62l5q68"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-fiasco))
(inputs
(list sbcl-alexandria
+ sbcl-concrete-syntax-tree
+ sbcl-eclector
sbcl-float-features
sbcl-fset
- sbcl-json-streams
- sbcl-split-sequence
+ sbcl-named-readtables
sbcl-trivial-garbage))
(home-page "https://coalton-lang.github.io")
(synopsis "Dialect of ML in Common Lisp")
@@ -20561,6 +20565,118 @@ alternative 4x4 matrix representation.")
(define-public cl-3d-transforms
(sbcl-package->cl-source-package sbcl-3d-transforms))
+(define-public sbcl-type-templates
+ (let ((commit "5b389ebcff61b81585a64d0b899b69fa12aa5f96")
+ (revision "0"))
+ (package
+ (name "sbcl-type-templates")
+ (version (git-version "4.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/type-templates")
+ (commit commit)))
+ (file-name (git-file-name "cl-type-templates" version))
+ (sha256
+ (base32 "1zmz3bmwg8ncqbnjwimn8n7q9ik9arnhd5ijd22ap1nwhbnmk1rj"))))
+ (build-system asdf-build-system/sbcl)
+ (arguments
+ ;; No tests
+ (list #:tests? #f))
+ (inputs
+ (list sbcl-alexandria
+ sbcl-documentation-utils
+ sbcl-form-fiddle))
+ (home-page "https://shinmera.github.io/type-templates/")
+ (synopsis "Library for defining and expanding templated functions")
+ (description
+ "The Type-Templates library allows you to define types and “template
+functions” that can be expanded into various type-specialized versions to
+eliminate runtime dispatch overhead. It was specifically designed to
+implement low-level numerical data types and functionality.")
+ (license license:zlib))))
+
+(define-public cl-type-templates
+ (sbcl-package->cl-source-package sbcl-type-templates))
+
+(define-public ecl-type-templates
+ (sbcl-package->ecl-package sbcl-type-templates))
+
+(define-public sbcl-3d-math
+ (let ((commit "3831b1706d225def95a7301ef48b393b563f0114")
+ (revision "0"))
+ (package
+ (name "sbcl-3d-math")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shinmera/3d-math")
+ (commit commit)))
+ (file-name (git-file-name "cl-3d-math" version))
+ (sha256
+ (base32 "052vzx5j7bag9dxvl0j0wrm244js1djldyn31rwxgkq7965rmi5r"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute))
+ (inputs
+ (list sbcl-documentation-utils
+ sbcl-type-templates))
+ (home-page "https://shinmera.github.io/3d-math/")
+ (synopsis "Linear algebra for 2D and 3D computations")
+ (description
+ "The @code{3d-math} library implements types, operators, and algorithms
+commonly used in math for 2D and 3D graphics. It supersedes and combines the
+prior libraries @code{3d-vectors}, @code{3d-matrices}, @code{3d-quaternions},
+and @code{3d-transforms}. The new API is largely but not entirely backwards
+compatible, and adds new functionality.")
+ (license license:zlib))))
+
+(define-public cl-3d-math
+ (sbcl-package->cl-source-package sbcl-3d-math))
+
+(define-public ecl-3d-math
+ (sbcl-package->ecl-package sbcl-3d-math))
+
+(define-public sbcl-3d-spaces
+ (let ((commit "a93f4915affcf65617366297ad8bd2ec77bae702")
+ (revision "0"))
+ (package
+ (name "sbcl-3d-spaces")
+ (version (git-version "1.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Shirakumo/3d-spaces")
+ (commit commit)))
+ (file-name (git-file-name "cl-3d-spaces" version))
+ (sha256
+ (base32 "1m5cg5zy1731dcgkm1p4m53z1zsp387xligxh32pdrnrhc2lzhmf"))))
+ (build-system asdf-build-system/sbcl)
+ (native-inputs
+ (list sbcl-parachute))
+ (inputs
+ (list sbcl-3d-math
+ sbcl-documentation-utils
+ sbcl-for
+ sbcl-trivial-extensible-sequences))
+ (home-page "https://shirakumo.github.io/3d-spaces/")
+ (synopsis "Implementations of various spatial query structures")
+ (description
+ "The 3D-Spaces library implements a number of spatial query data
+structures; structures that can answer spatial range queries for optimized
+lookup, particularly suited for games.")
+ (license license:zlib))))
+
+(define-public cl-3d-spaces
+ (sbcl-package->cl-source-package sbcl-3d-spaces))
+
+(define-public ecl-3d-spaces
+ (sbcl-package->ecl-package sbcl-3d-spaces))
+
(define-public sbcl-glsl-toolkit
(let ((commit "4c4889e75c635772c4df70b11d6f14e7a596da43")
(revision "2"))
@@ -20785,25 +20901,25 @@ all kind of typesetting applications.")
(sbcl-package->cl-source-package sbcl-cl-typesetting))
(define-public sbcl-shasht
- (let ((commit "4055327ef8e2aaa8627892ab256350ff3cb15e3c")
- (revision "1"))
+ (let ((commit "27ba0a8842e103f2d575b3c8bbcfc19bd172d9ea")
+ (revision "2"))
(package
(name "sbcl-shasht")
- (version (git-version "0.1.0" revision commit))
+ (version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/yitzchak/shasht")
(commit commit)))
- (file-name (git-file-name "shasht" version))
+ (file-name (git-file-name "cl-shasht" version))
(sha256
- (base32 "01mh20s5gj0lajq45anxji77ykq1wcg72mn1y9a1k8i7q1ainjlr"))))
+ (base32 "1y7qh8kdhk06243vkmxzdk0y9rax4g8pv28bd01j48ix777mpcdc"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-alexandria sbcl-parachute))
(inputs
- (list sbcl-trivial-do))
+ (list sbcl-closer-mop sbcl-trivial-do))
(home-page "https://yitzchak.github.io/shasht/")
(synopsis "Common Lisp JSON reading and writing library")
(description
@@ -21493,11 +21609,11 @@ application development library.")
(sbcl-package->cl-source-package sbcl-cl-glfw3))
(define-public sbcl-cl-gltf
- (let ((commit "7f9193acec80cad775b61b1c7a125c14a7b35a0c")
+ (let ((commit "dab186ebf9169926ccfcdec121a157162ad6ed83")
(revision "0"))
(package
(name "sbcl-cl-gltf")
- (version (git-version "1.0.0" revision commit))
+ (version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
@@ -21506,7 +21622,7 @@ application development library.")
(commit commit)))
(file-name (git-file-name "cl-gltf" version))
(sha256
- (base32 "0ni42242a4x052dqlycwrg5j6piwm87s4wgbn2q0a9s3l9f811vk"))))
+ (base32 "0ijy0paph7w037a2k14pv8j44mnj4gwhddhxzyqsz3qwl6fpb7yb"))))
(build-system asdf-build-system/sbcl)
(arguments
;; No tests provided.
@@ -21733,8 +21849,8 @@ impossible to merge back upstream.")
(define-public sbcl-atomics
;; No release in years.
- (let ((commit "9ee0bdebcd2bb9b242671a75460db13fbf45454c")
- (revision "1"))
+ (let ((commit "b7477024894e322bff9c85e6d81e5e8d1d4eae59")
+ (revision "2"))
(package
(name "sbcl-atomics")
(version (git-version "1.0.0" revision commit))
@@ -21744,9 +21860,9 @@ impossible to merge back upstream.")
(uri (git-reference
(url "https://github.com/Shinmera/atomics")
(commit commit)))
- (file-name (git-file-name "atomics" version))
+ (file-name (git-file-name "cl-atomics" version))
(sha256
- (base32 "0mp5jdqq0aamdhgnvw149cqqi3zg7dkkibp25qi4rafw1fnpd40z"))))
+ (base32 "1ah6fgvfva0axnhj4sp1qy6gjyw41fkhpnv998di0wbp6hls8j39"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils))
diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index afd50bf46a..e89e02e1e4 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -999,7 +999,7 @@ the HTML documentation of TXR.")
(define-public txr
(package
(name "txr")
- (version "292")
+ (version "293")
(source
(origin
(method git-fetch)
@@ -1008,7 +1008,7 @@ the HTML documentation of TXR.")
(commit (string-append "txr-" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "0lly446pinfrr5d4rgsas8c7kqal2g03bbsbmn0yvhvazb39c15g"))))
+ (base32 "1b3vhlnw4ymznnlh9d71qhkcdc1p69a53hilckc3rql9y4jsik57"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@@ -1485,7 +1485,7 @@ includes a compiler as well as an interpreter.")
(define-public s7-bootstrap
;; Need s7-bootstrap to build libc_s7.so (for the REPL) and run tests
- (let ((commit "a5b4bb49f8bcd7c33ae2366065fc8c254b734460") ;no releases
+ (let ((commit "618de30e0f9851515724245e3ebbfa1be4de6906") ;no releases
(revision "0"))
(hidden-package
(package
@@ -1499,7 +1499,7 @@ includes a compiler as well as an interpreter.")
(file-name (git-file-name name version))
(sha256
(base32
- "03n1axdlypzmbgzrhlwfqwa1xiw36hi25j2hwc7vw77mz90cd9f8"))))
+ "0kh1f49g24ppjpr16v1nc9lr7pvr5nzb82bpw8c6q8ll7pqalqaf"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests in bootstrap
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 14fc2a0a72..b4651c80e5 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015-2023 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2020-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
@@ -1151,6 +1151,11 @@ in terms of new algorithms.")
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
+ (add-after 'unpack 'relax-requirements
+ (lambda _
+ ;; Does this difference really matter?
+ (substitute* "requirements.txt"
+ (("3.20.1") "3.20.2"))))
(add-before 'build 'pass-cmake-arguments
(lambda* (#:key outputs #:allow-other-keys)
;; Pass options to the CMake-based build process.
@@ -1235,7 +1240,13 @@ operators and standard data types.")
'(begin
(delete-file-recursively "third_party")
(substitute* "onnx/backend/test/runner/__init__.py"
- (("urlretrieve\\(.*") "raise unittest.SkipTest('Skipping download')\n"))))))))
+ (("urlretrieve\\(.*") "raise unittest.SkipTest('Skipping download')\n"))))))
+ (arguments
+ ;; reuse build system tweaks
+ (substitute-keyword-arguments (package-arguments onnx)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (delete 'relax-requirements)))))))
(define-public python-onnx
;; This used to be called "python-onnx" because it provided nothing but
@@ -1262,7 +1273,12 @@ operators and standard data types.")
(modules '((guix build utils)))
(snippet '(delete-file-recursively "third_party"))))
(build-system python-build-system)
- (arguments (package-arguments onnx)) ;reuse build system tweaks
+ (arguments
+ ;; reuse build system tweaks
+ (substitute-keyword-arguments (package-arguments onnx)
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (delete 'relax-requirements)))))
(native-inputs
(list cmake python-pytest python-pytest-runner python-nbval
python-coverage))
diff --git a/gnu/packages/minetest.scm b/gnu/packages/minetest.scm
index bf0df314a7..14c47430e3 100644
--- a/gnu/packages/minetest.scm
+++ b/gnu/packages/minetest.scm
@@ -52,7 +52,7 @@
(define-public minetest
(package
(name "minetest")
- (version "5.7.0")
+ (version "5.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -61,7 +61,7 @@
(file-name (git-file-name name version))
(sha256
(base32
- "008l44zwwsarwk4hn7wx2nj2m21b1iqsphl7g69rrlxj760zl0pl"))
+ "1sww17h8z77w38jk19nsqxn8xcj27msq0glbil7pyj4i0ffprjrr"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -166,7 +166,7 @@ in different ways.")
(file-name (git-file-name name version))
(sha256
(base32
- "02kbj1h6jsq6k8x4v2ir0njczdz7nyx6dbym85ixxp3mrqxiws61"))))
+ "1pq4rm15lzwcqv6npgyz6v89hi3zj8zybw25n9i0d27qj786xc4z"))))
(build-system copy-build-system)
(arguments
(list #:install-plan
diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm
index e462f0f01d..e16c6bb964 100644
--- a/gnu/packages/mpd.scm
+++ b/gnu/packages/mpd.scm
@@ -117,7 +117,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd
(package
(name "mpd")
- (version "0.23.14")
+ (version "0.23.15")
(source (origin
(method url-fetch)
(uri
@@ -126,7 +126,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz"))
(sha256
(base32
- "1lh9nn4a7ng6i08df7rbs8c4nbgmz883pss9p2gswa6m4rsadfc5"))))
+ "06k60ych9crifyx6zfc98hdcihixq5nba1c9rwngib6ik8ik40am"))))
(build-system meson-build-system)
(arguments
(list
@@ -162,6 +162,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
boost
chromaprint
curl
+ dbus
elogind
expat
ffmpeg
diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm
index 0c6255c129..591170b508 100644
--- a/gnu/packages/multiprecision.scm
+++ b/gnu/packages/multiprecision.scm
@@ -6,7 +6,7 @@
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
-;;; Copyright © 2018, 2019, 2021, 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2018, 2019, 2021, 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
@@ -71,6 +71,8 @@
;; they produce different headers. We need shared.
`("--disable-static"
"--enable-shared"))
+ ((target-x32?)
+ `("ABI=x32"))
(else '())))
;; Remove after core-updates merge.
;; Workaround for gcc-7 transition breakage, -system and cross-build,
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index c3796f7328..cc6f1a1e04 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -4445,36 +4445,32 @@ QUIC protocol.")
"github.com/yggdrasil-network/yggdrasil-go/cmd/yggdrasilctl"
"github.com/yggdrasil-network/yggdrasil-go/cmd/genkeys"))))))))
(propagated-inputs
- (let ((p (package-input-rewriting
- `((,go-golang-org-x-sys . ,go-golang-org-x-sys-0.8))
- #:deep? #true)))
- (cons go-golang-org-x-sys-0.8
- (map p
- (list go-golang-zx2c4-com-wireguard
- go-golang-org-x-text
- go-golang-org-x-net
- go-golang-org-x-crypto
- go-golang-org-x-tools
- go-netns
- go-netlink
- go-github-com-bits-and-blooms-bitset
- go-github-com-bits-and-blooms-bloom
- go-github-com-quic-go-quic-go
- go-github-com-hjson-hjson-go
- go-github-com-olekukonko-tablewriter
- go-github-com-mitchellh-mapstructure
- go-github-com-mattn-go-runewidth
- go-github-com-mattn-go-isatty
- go-github-com-mattn-go-colorable
- go-github-com-kardianos-minwinsvc
- go-github-com-hjson-hjson-go
- go-github-com-hashicorp-go-syslog
- go-github-com-gologme-log
- go-github-com-fatih-color
- go-github-com-cheggaaa-pb-v3
- go-github-com-vividcortex-ewma
- go-github-com-arceliar-phony
- go-github-com-arceliar-ironwood)))))
+ (list go-golang-zx2c4-com-wireguard
+ go-golang-org-x-text
+ go-golang-org-x-net
+ go-golang-org-x-crypto
+ go-golang-org-x-tools
+ go-golang-org-x-sys
+ go-netns
+ go-netlink
+ go-github-com-bits-and-blooms-bitset
+ go-github-com-bits-and-blooms-bloom
+ go-github-com-quic-go-quic-go
+ go-github-com-hjson-hjson-go
+ go-github-com-olekukonko-tablewriter
+ go-github-com-mitchellh-mapstructure
+ go-github-com-mattn-go-runewidth
+ go-github-com-mattn-go-isatty
+ go-github-com-mattn-go-colorable
+ go-github-com-kardianos-minwinsvc
+ go-github-com-hjson-hjson-go
+ go-github-com-hashicorp-go-syslog
+ go-github-com-gologme-log
+ go-github-com-fatih-color
+ go-github-com-cheggaaa-pb-v3
+ go-github-com-vividcortex-ewma
+ go-github-com-arceliar-phony
+ go-github-com-arceliar-ironwood))
(home-page "https://yggdrasil-network.github.io/blog.html")
(synopsis
"Experiment in scalable routing as an encrypted IPv6 overlay network")
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index e12035e47d..8f59331a02 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -64,14 +64,14 @@
(define-public parallel
(package
(name "parallel")
- (version "20231122")
+ (version "20231222")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
- (base32 "1qpa3dhmdddw7l5906y8ck8rnri66kqkxcbxhsnj058pmbw9qb42"))
+ (base32 "1alvva2dlnlq5rbbklzc2a7l84mg550l1xc632zdgfx9dzf6sihr"))
(snippet
'(begin
(use-modules (guix build utils))
diff --git a/gnu/packages/patches/dtc-meson-cell-overflow.patch b/gnu/packages/patches/dtc-meson-cell-overflow.patch
new file mode 100644
index 0000000000..1c319312f7
--- /dev/null
+++ b/gnu/packages/patches/dtc-meson-cell-overflow.patch
@@ -0,0 +1,32 @@
+Taken from upstream:
+https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=32174a66efa4ad19fc6a2a6422e4af2ae4f055cb
+
+From 32174a66efa4ad19fc6a2a6422e4af2ae4f055cb Mon Sep 17 00:00:00 2001
+From: David Gibson <david@gibson.dropbear.id.au>
+Date: Tue, 28 Feb 2023 10:33:58 +1100
+Subject: [PATCH] meson: Fix cell overflow tests when running from meson
+
+Because meson always builds out-of-tree we need to reference things in the
+original source tree via $SRCDIR from run_tests.sh. We forgot a couple of
+cases for the cell overflow tests. Fix them.
+
+Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
+---
+ tests/run_tests.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/tests/run_tests.sh b/tests/run_tests.sh
+index 91350ad3..f899d8cb 100755
+--- a/tests/run_tests.sh
++++ b/tests/run_tests.sh
+@@ -519,8 +519,8 @@ libfdt_tests () {
+ check_tests "$SRCDIR/phandle-args-overflow.dts" clocks_property
+
+ ## https://github.com/dgibson/dtc/issues/74
+- run_dtc_test -I dts -O dtb -o cell-overflow-results.test.dtb cell-overflow-results.dts
+- run_dtc_test -I dts -O dtb -o cell-overflow.test.dtb cell-overflow.dts
++ run_dtc_test -I dts -O dtb -o cell-overflow-results.test.dtb "$SRCDIR/cell-overflow-results.dts"
++ run_dtc_test -I dts -O dtb -o cell-overflow.test.dtb "$SRCDIR/cell-overflow.dts"
+ run_test dtbs_equal_ordered cell-overflow.test.dtb cell-overflow-results.test.dtb
+
+ # check full tests
diff --git a/gnu/packages/patches/emacs-ess-fix-obsolete-function-alias.patch b/gnu/packages/patches/emacs-ess-fix-obsolete-function-alias.patch
deleted file mode 100644
index f7b61391c3..0000000000
--- a/gnu/packages/patches/emacs-ess-fix-obsolete-function-alias.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-From 9cc5520e1998d03f5dec0fbb1fe71b7cdec38b65 Mon Sep 17 00:00:00 2001
-From: Alex Branham <alex.branham@gmail.com>
-Date: Wed, 6 Jan 2021 06:41:20 -0500
-Subject: [PATCH] Add required when to obsolete function alias
-
-Closes #1085
----
- lisp/ess-r-package.el | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/lisp/ess-r-package.el b/lisp/ess-r-package.el
-index 260959955..397ce14e6 100644
---- a/lisp/ess-r-package.el
-+++ b/lisp/ess-r-package.el
-@@ -577,7 +577,7 @@ package mode. Use this function if state of the buffer such as
- (error "As of ESS 16.04, `ess-developer' is deprecated. Use `ess-r-set-evaluation-env' instead"))
-
- (defalias 'ess-toggle-developer 'ess-developer)
--(define-obsolete-function-alias 'ess-r-devtools-check-package-buildwin 'ess-r-devtools-check-with-winbuilder)
-+(define-obsolete-function-alias 'ess-r-devtools-check-package-buildwin 'ess-r-devtools-check-with-winbuilder "18.04")
- (define-obsolete-function-alias 'ess-r-devtools-ask 'ess-r-devtools-execute-command "18.04")
-
- (make-obsolete-variable 'ess-developer "Please use `ess-developer-select-package' and `ess-r-set-evaluation-env' instead." "16.04")
diff --git a/gnu/packages/patches/python-uqbar-python3.10.patch b/gnu/packages/patches/python-uqbar-python3.10.patch
new file mode 100644
index 0000000000..164f0c0c64
--- /dev/null
+++ b/gnu/packages/patches/python-uqbar-python3.10.patch
@@ -0,0 +1,23 @@
+Since Python 3.10 the output of a CLI program created with argparse
+uses "options" instead of "optional arguments". This behaviour breaks
+the tests in python-uqbar.
+
+--- a/tests/test_cli.py
++++ b/tests/test_cli.py
+@@ -84,7 +84,7 @@ def test_call_help():
+
+ speak like a cat
+
+- optional arguments:
++ options:
+ -h, --help show this help message and exit
+ --version show program's version number and exit
+ --loud be adamant
+@@ -101,6 +101,6 @@ def test_help():
+ """
+ usage: vox-aggregator [-h] [--version] {help,list,birds,mammals} ...
+
+- optional arguments:
++ options:
+ -h, --help show this help message and exit
+ --version show program's version number and exit
diff --git a/gnu/packages/plan9.scm b/gnu/packages/plan9.scm
index f78c26e215..b2d8d75471 100644
--- a/gnu/packages/plan9.scm
+++ b/gnu/packages/plan9.scm
@@ -73,8 +73,8 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(define-public plan9port
;; no releases
- (let ((commit "cc4571fec67407652b03d6603ada6580de2194dc")
- (revision "0"))
+ (let ((commit "f8681acb374fa0d5ed1568dbedb00a4abe1ca6f1")
+ (revision "1"))
(package
(name "plan9port")
(version (git-version "0.1.0" revision commit))
@@ -86,7 +86,7 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(file-name (git-file-name name version))
(sha256
(base32
- "1g2kzlghcghs560na6xalfsjq5zwp015wv9wk8wxn26981zs759x"))
+ "01343jvn8kr63i78h8xlgscn6wihdsr44xzh1cylvhigjbqw8n2x"))
(modules '((guix build utils)))
(snippet #~(for-each delete-file-recursively
'("font/luc" ;nonfree
@@ -94,73 +94,69 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests
- #:phases #~(modify-phases %standard-phases
- (add-after 'unpack 'setup
- (lambda _
- (delete-file "src/cmd/mk/mk.pdf")
- (substitute* "src/cmd/acme/acme.c"
- (("/lib/font/bit/lucsans/euro.8.font")
- (string-append #$output
- "/font/fixed/unicode.5x8.font"))
- (("/lib/font/bit/lucm/unicode.9.font")
- (string-append #$output
- "/font/fixed/unicode.6x9.font")))
- (substitute* (find-files "src")
- (("/lib/font/bit")
- (string-append #$output "/font")))
- (substitute* "bin/9c"
- (("which")
- (which "which")))
- (substitute* "src/cmd/fontsrv/freetyperules.sh"
- (("'\\$i'/freetype2")
- (string-append "-I"
- #$freetype
- "/include/freetype2")))
- (with-output-to-file "LOCAL.config"
- (lambda _
- (format #t "CC9=~a~%" #$(cc-for-target))
- (format #t "FONTSRV=fontsrv~%")))
- (setenv "X11"
- #$libx11)
- (setenv "PLAN9"
- (getcwd))
- (setenv "PLAN9_TARGET"
- #$output)))
- (delete 'configure) ;no configure
- (replace 'build
- (lambda _
- (invoke "./INSTALL" "-b")))
- (replace 'install
- (lambda _
- (for-each (lambda (x)
- (let ((out (string-append #$output
- "/" x)))
- (mkdir-p out)
- (copy-recursively x out)))
- ;; TODO: use external sky and dict packages
- '("bin" "face"
- "font"
- "include"
- "lib"
- "lp"
- "mail"
- "man"
- "ndb"
- "plumb"
- "tmac"
- "troff"
- "postscript"))
- (install-file "rcmain" #$output)))
- (add-after 'install 'wrap-executables
- (lambda _
- (for-each (lambda (exe)
- (wrap-program exe
- `("PLAN9" ":" prefix
- (,#$output))))
- (find-files
- (string-append #$output "/bin")))))
- ;; Plan9 doesn't compress man pages
- (delete 'compress-documentation))))
+ #:strip-directories #~'("plan9/bin")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'setup
+ (lambda _
+ (let ((dest (string-append #$output "/plan9")))
+ (delete-file "src/cmd/mk/mk.pdf")
+ (substitute* "src/cmd/acme/acme.c"
+ (("/lib/font/bit/lucsans/euro.8.font")
+ (string-append dest
+ "/font/fixed/unicode.5x8.font"))
+ (("/lib/font/bit/lucm/unicode.9.font")
+ (string-append dest
+ "/font/fixed/unicode.6x9.font")))
+ (substitute* (find-files "src")
+ (("/lib/font/bit")
+ (string-append dest "/font")))
+ (substitute* "bin/9c"
+ (("which")
+ (which "which")))
+ (substitute* "src/cmd/fontsrv/freetyperules.sh"
+ (("'\\$i'/freetype2")
+ (string-append "-I"
+ #$freetype
+ "/include/freetype2")))
+ (with-output-to-file "LOCAL.config"
+ (lambda _
+ (format #t "CC9=~a~%" #$(cc-for-target))
+ (format #t "FONTSRV=fontsrv~%")))
+ (setenv "X11" #$libx11)
+ (setenv "PLAN9" (getcwd))
+ (setenv "PLAN9_TARGET" dest))))
+ (delete 'configure) ;no configure
+ (replace 'build
+ (lambda _
+ (invoke "./INSTALL" "-b")))
+ (replace 'install
+ (lambda _
+ (invoke "./INSTALL" "-c")
+ (let ((dest (getenv "PLAN9_TARGET")))
+ (for-each (lambda (x)
+ (let ((out (string-append dest "/" x)))
+ (mkdir-p out)
+ (copy-recursively x out)))
+ ;; TODO: use external sky and dict packages
+ '("bin" "face"
+ "font"
+ "include"
+ "lib"
+ "lp"
+ "mail"
+ "man"
+ "ndb"
+ "plumb"
+ "tmac"
+ "troff"
+ "postscript"))
+ (install-file "rcmain" dest)
+ (mkdir-p (string-append #$output "/bin"))
+ (symlink (string-append dest "/bin/9")
+ (string-append #$output "/bin/9")))))
+ ;; Plan9 doesn't compress man pages
+ (delete 'compress-documentation))))
(native-inputs (list perl which))
(inputs (list bash-minimal ;for 'wrap-program'
fontconfig libx11 libxext libxt))
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 2afce6c667..f8bb943122 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -9236,6 +9236,105 @@ converting, and viewing many of the proprietary file formats used to store
experimental data and metadata at the Laboratory for Fluorescence Dynamics.")
(license license:bsd-3)))
+(define-public python-av
+ (package
+ (name "python-av")
+ (version "10.0.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "av" version))
+ (sha256
+ (base32 "01byqsjclkg65mhr6b4i2r2n4y7af9kdd2c35lxny27121b3vzca"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list
+ ;; Tests require outbound access to download data samples from
+ ;; http://fate.ffmpeg.org/fate-suite:
+ ;;
+ ;; E urllib.error.URLError: <urlopen error [Errno -3]
+ ;; Temporary failure in name resolution>
+ ;;
+ "--ignore=tests/test_doctests.py"
+ "--ignore=tests/test_timeout.py"
+ "-k"
+ (string-append
+ "not test_data"
+ " and not test_container_probing"
+ " and not test_stream_probing"
+ " and not test_transcode"
+ " and not test_codec_tag"
+ " and not test_parse"
+ " and not test_decode_audio_sample_count"
+ " and not test_decoded_motion_vectors"
+ " and not test_decoded_motion_vectors_no_flag"
+ " and not test_decoded_time_base"
+ " and not test_decoded_video_frame_count"
+ " and not test_encoding_aac"
+ " and not test_encoding_dnxhd"
+ " and not test_encoding_dvvideo"
+ " and not test_encoding_h264"
+ " and not test_encoding_mjpeg"
+ " and not test_encoding_mp2"
+ " and not test_encoding_mpeg1video"
+ " and not test_encoding_mpeg4"
+ " and not test_encoding_pcm_s24le"
+ " and not test_encoding_png"
+ " and not test_encoding_tiff"
+ " and not test_encoding_xvid"
+ " and not test_reading_from_buffer"
+ " and not test_reading_from_buffer_no_seek"
+ " and not test_reading_from_file"
+ " and not test_reading_from_pipe_readonly"
+ " and not test_reading_from_write_readonly"
+ " and not test_writing_to_custom_io_dash"
+ " and not test_writing_to_custom_io_image2"
+ " and not test_decode_half"
+ " and not test_seek_end"
+ " and not test_seek_float"
+ " and not test_seek_int64"
+ " and not test_seek_middle"
+ " and not test_seek_start"
+ " and not test_stream_seek"
+ " and not test_selection"
+ " and not test_stream_tuples"
+ " and not test_movtext"
+ " and not test_vobsub"
+ " and not test_roundtrip"
+ " and not test_stream_probing"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'build-extensions
+ (lambda _
+ (invoke "python" "setup.py" "build_ext" "--inplace"))))))
+ (native-inputs
+ (list pkg-config
+ python-cython
+ python-editorconfig
+ python-numpy
+ python-pillow
+ python-pytest))
+ (inputs
+ ;; XXX: Build is failing with FFmpeg 6.0, unresolved upstream.
+ ;; See https://github.com/PyAV-Org/PyAV/issues/1106
+ (list ffmpeg-5))
+ (home-page "https://github.com/PyAV-Org/PyAV")
+ (synopsis "Pythonic bindings for FFmpeg's libraries")
+ (description
+ "PyAV is a Python library that allows for direct and precise manipulation
+of media through containers, streams, packets, codecs, and frames. It provides
+access to the powerful FFmpeg libraries while managing the complex details as
+much as possible.
+PyAV also facilitates data transformation and integration with
+other packages such as Numpy and Pillow. However, working with media is a
+challenging task and PyAV cannot abstract it away or make all the best decisions
+for you. If you can accomplish your tasks with the ffmpeg command, PyAV may not
+be necessary. Nonetheless, PyAV is an essential tool when working with media
+that requires its specific capabilities.")
+ (license license:bsd-3)))
+
(define-public python-ffmpeg-python
;; The latest release (0.2.0) is old and its test suite crashs on Python 3.10.
(let ((commit "df129c7ba30aaa9ffffb81a48f53aa7253b0b4e6") (revision "0"))
@@ -30176,6 +30275,45 @@ heterogeneous and multi-platform clusters (including clusters running other
applications with variable CPU loads).")
(license license:bsd-3)))
+(define-public python-djitellopy
+ (package
+ (name "python-djitellopy")
+ (version "2.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "djitellopy" version))
+ (sha256
+ (base32 "1kc0syb4hpn7fay0rxpazmczag6jw3pncrrc6v762jj0afiwkrps"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:tests? #f ;no test suite
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; OpenCV does not ship metadata files for its Python library, which
+ ;; makes it invisible to the sanity_check script (see:
+ ;; https://github.com/opencv/opencv/issues/24810).
+ (delete 'sanity-check))))
+ (propagated-inputs
+ (list opencv ;for opencv-python
+ python-av
+ python-numpy
+ python-pillow))
+ (home-page "https://github.com/damiafuentes/DJITelloPy")
+ (synopsis
+ "DJI Tello drone video streaming, swarms and state packets library")
+ (description
+ "DJI Tello drone Python interface using the official Tello SDK and Tello
+EDU SDK. This library has the following features:
+@itemize
+@item Implementation of all tello commands
+@item Retrieve a video stream easily
+@item Receive and parse state packets
+@item Control a swarm of drones.
+@end itemize")
+ (license license:expat)))
+
(define-public python-djvulibre
(package
(name "python-djvulibre")
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 9993c0b807..00352dc327 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -331,7 +331,7 @@ particularly in catching syntax errors.")
(define-public grml-zsh-config
(package
(name "grml-zsh-config")
- (version "0.19.5")
+ (version "0.19.6")
(source (origin
(method url-fetch)
(uri (string-append
@@ -339,7 +339,7 @@ particularly in catching syntax errors.")
version ".tar.gz"))
(sha256
(base32
- "0ifw490z3v9ljccbmm04adz39fj2dmx8mjgayxqj0a9ln90yfdc4"))))
+ "1k1m2fbmvw73qy9mc6k2ygjg6zz8h7nn3d9pvj6jbjadnx4pz770"))))
(build-system copy-build-system)
(arguments
(list
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index c2cf68fca8..712b1a9c37 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -6757,11 +6757,9 @@ Java package that provides routines for various statistical distributions.")
(license license:gpl2+)))
(define-public emacs-ess
- ;; Latest release is old. This is not the latest commit either due to bug
- ;; reported here: <https://github.com/emacs-ess/ESS/issues/987>.
- (let ((commit "24da603184ce39246611dd5b8602e769d7ebd5bf")
+ (let ((commit "3691ecc642eab5d016887e42699648e0eeeef566")
(version "18.10.2")
- (revision "0"))
+ (revision "1"))
(package
(name "emacs-ess")
(version (git-version version revision commit))
@@ -6772,60 +6770,96 @@ Java package that provides routines for various statistical distributions.")
(url "https://github.com/emacs-ess/ESS")
(commit commit)))
(sha256
- (base32 "0j98lv07nzwzd54d4dgcfz01wy5gj48m0mnirxzh5r45ik2myh1r"))
+ (base32 "19p8djsbgvahpsx1w8i6h3qvpbdr4isjwm3wi82yk2648ri0qsq1"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
- '(begin
- ;; Stop ESS from trying to bundle an external julia-mode.el.
- (substitute* "lisp/Makefile"
- ((" \\$\\(JULIAS)") "")
- (("\ttest.*julia-mode.*\\.el") ""))
- ;; Only build docs in info format.
- (substitute* "doc/Makefile"
- (("all : info text")
- "all : info")
- (("install: install-info install-other-docs")
- "install: install-info"))
- ;; Stop install-info from trying to update the info directory.
- (substitute* "doc/Makefile"
- ((".*/dir.*") ""))
- ;; Fix r-help-mode test.
- (substitute* "test/ess-test-r.el"
- (("\\(equal ess-help-object \"plot.default\")") "t"))
- ;; Avoid generating ess-autoloads.el twice.
- (substitute* "Makefile"
- (("all: lisp doc etc autoloads")
- "all: lisp doc etc"))
- ;; Install to correct directories.
- (substitute* "Makefile"
- (("mkdir -p \\$\\(ESSDESTDIR)")
- "$(MAKE) -C lisp install; $(MAKE) -C doc install")
- (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")
- "$(MAKE) -C etc install"))
- #t))
- (patches
- (search-patches "emacs-ess-fix-obsolete-function-alias.patch"))))
+ #~(begin
+ ;; Stop ESS from trying to bundle an external julia-mode.el.
+ (substitute* "lisp/Makefile"
+ ((" \\$\\(JULIAS)") "")
+ (("\ttest.*julia-mode.*\\.el") ""))
+ ;; Only build docs in info format.
+ (substitute* "doc/Makefile"
+ (("all : info text")
+ "all : info")
+ (("install: install-info install-other-docs")
+ "install: install-info"))
+ ;; Stop install-info from trying to update the info directory.
+ (substitute* "doc/Makefile"
+ ((".*/dir.*") ""))
+ ;; Fix r-help-mode test.
+ (substitute* "test/ess-test-r.el"
+ (("\\(equal ess-help-object \"plot.default\")") "t"))
+ ;; Avoid generating ess-autoloads.el twice.
+ (substitute* "Makefile"
+ (("all: lisp doc etc autoloads")
+ "all: lisp doc etc"))
+ ;; Install to correct directories.
+ (substitute* "Makefile"
+ (("mkdir -p \\$\\(ESSDESTDIR)")
+ "$(MAKE) -C lisp install; $(MAKE) -C doc install")
+ (("\\$\\(INSTALL) -R \\./\\* \\$\\(ESSDESTDIR)/")
+ "$(MAKE) -C etc install"))))))
(build-system gnu-build-system)
(arguments
(let ((base-directory "/share/emacs/site-lisp"))
- `(#:make-flags (list (string-append "PREFIX=" %output)
- (string-append "ETCDIR=" %output
- ,base-directory "/etc")
- (string-append "LISPDIR=" %output
- ,base-directory)
- (string-append "INFODIR=" %output
- "/share/info"))
- #:phases
- (modify-phases %standard-phases
- (delete 'configure)
- (replace 'check
- (lambda _ (invoke "make" "test")))))))
+ (list
+ #:modules '((guix build gnu-build-system)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules `(,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:make-flags
+ #~(list (string-append "PREFIX=" #$output)
+ (string-append "ETCDIR=" #$output #$base-directory "/etc")
+ (string-append "LISPDIR=" #$output #$base-directory)
+ (string-append "INFODIR=" #$output "/share/info"))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'check 'skip-failing-tests
+ ;; XXX: Skip 10 failing tests (out of 187).
+ (lambda _
+ (let-syntax
+ ((disable-tests
+ (syntax-rules ()
+ ((_ file ())
+ (syntax-error "test names list must not be empty"))
+ ((_ file (test-name ...))
+ (substitute* file
+ (((string-append "^\\(ert-deftest " test-name ".*")
+ all)
+ (string-append all "(skip-unless nil)\n"))
+ ...)))))
+ (disable-tests (list "test/ess-test-inf.el"
+ "test/ess-test-r.el")
+ ("ess--derive-connection-path"
+ "ess-eval-line-test"
+ "ess-eval-region-test"
+ "ess-mock-remote-process"
+ "ess-r-load-ESSR-github-fetch-no"
+ "ess-r-load-ESSR-github-fetch-yes"
+ "ess-set-working-directory-test"
+ "ess-test-r-startup-directory")))
+ ;; The two tests below use a different syntax.
+ (emacs-batch-edit-file "test/ess-test-r-eval.el"
+ '(progn
+ (mapc (lambda (test)
+ (goto-char (point-min))
+ (search-forward (format "etest-deftest %s " test))
+ (beginning-of-line)
+ (kill-sexp))
+ '("ess-r-eval-ns-env-roxy-tracebug-test"
+ "ess-r-eval-sink-freeze-test"))
+ (basic-save-buffer)))))
+ (replace 'check
+ (lambda _ (invoke "make" "test")))))))
(native-inputs
(list perl r-roxygen2 texinfo))
(inputs
- `(("emacs" ,emacs-minimal)
- ("r-minimal" ,r-minimal)))
+ (list emacs-minimal r-minimal))
(propagated-inputs
(list emacs-julia-mode))
(home-page "https://ess.r-project.org/")
diff --git a/gnu/packages/swig.scm b/gnu/packages/swig.scm
index 3f38cd9f9f..7025d05038 100644
--- a/gnu/packages/swig.scm
+++ b/gnu/packages/swig.scm
@@ -79,7 +79,7 @@ you tailor the wrapping process to suit your application.")
(package
(inherit swig)
(name "swig")
- (version "4.1.1")
+ (version "4.2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/" name "/" name "/"
@@ -87,5 +87,5 @@ you tailor the wrapping process to suit your application.")
name "-" version ".tar.gz"))
(sha256
(base32
- "16xc767gf5ip40jh698wbdrxrghli5v2c966bkdmrmpwv378mw1a"))))
+ "15wwh9215rdkflpr85r7zxr2nmrib03jr4bvh5i0f9lyb3bs4716"))))
(inputs (list pcre2))))
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index ec630a029f..da3ea74fb6 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2015, 2016, 2022 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2015, 2016, 2022, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
@@ -51,31 +51,31 @@
`(#:configure-flags
'(,@(if (or (target-riscv64?)
(target-ppc32?))
- '("-DTBB_TEST_LINK_FLAGS=-latomic")
- `())
+ '("-DTBB_TEST_LINK_FLAGS=-latomic")
+ `())
,@(if (or (target-arm32?)
(target-ppc32?))
- '("-DTBB_TEST_COMPILE_FLAGS=-DTBB_TEST_LOW_WORKLOAD")
- `())
- "-DTBB_STRICT=OFF") ;; Don't fail on warnings
+ '("-DTBB_TEST_COMPILE_FLAGS=-DTBB_TEST_LOW_WORKLOAD")
+ `())
+ "-DTBB_STRICT=OFF") ;; Don't fail on warnings
#:phases
(modify-phases %standard-phases
,@(cond
- ((target-arm32?)
- `((add-after 'unpack 'adjust-test-suite
- (lambda _
- (substitute* "test/CMakeLists.txt"
- ;; Bus error, skipped on mips.
- ((".*test_malloc_pools.*") ""))))))
- ((target-ppc32?)
- `((add-after 'unpack 'adjust-test-suite
- (lambda _
- (substitute* "test/CMakeLists.txt"
- ;; These tests hang forever.
- ((".*test_function_node.*") "")
- ((".*test_multifunction_node.*") "")
- ((".*test_async_node.*") ""))))))
- (else '())))))
+ ((target-arm32?)
+ `((add-after 'unpack 'adjust-test-suite
+ (lambda _
+ (substitute* "test/CMakeLists.txt"
+ ;; Bus error, skipped on mips.
+ ((".*test_malloc_pools.*") ""))))))
+ ((target-ppc32?)
+ `((add-after 'unpack 'adjust-test-suite
+ (lambda _
+ (substitute* "test/CMakeLists.txt"
+ ;; These tests hang forever.
+ ((".*test_function_node.*") "")
+ ((".*test_multifunction_node.*") "")
+ ((".*test_async_node.*") ""))))))
+ (else '())))))
(home-page "https://www.threadingbuildingblocks.org")
(synopsis "C++ library for parallel programming")
(description
@@ -101,7 +101,9 @@ tasks, synchronization primitives, atomic operations, and more.")
(lambda _
(substitute* "python/CMakeLists.txt"
(("\\$\\{PYTHON_BUILD_WORK_DIR\\}/build")
- #$output))
+ #$output)
+ (("install --prefix.*-f" m)
+ (string-append m " --root=/")))
(substitute* "python/setup.py"
(("extra_link_args=tbb_flag,")
(string-append "extra_link_args=['-Wl,-rpath="
diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm
index ea182b1925..494e6b5ef5 100644
--- a/gnu/packages/textutils.scm
+++ b/gnu/packages/textutils.scm
@@ -996,13 +996,13 @@ and Cython.")
(define-public txt2tags
(package
(name "txt2tags")
- (version "3.7")
+ (version "3.9")
(source (origin
(method url-fetch)
(uri (pypi-uri "txt2tags" version))
(sha256
(base32
- "12hpnvdy7dgarq6ini9jp7dp2zcmvpax04zbl3jb84kd423r75i7"))))
+ "0ik7gpr3gymgxnj0p86k8768kyxncbncv93zq67sbak3dbdl8hky"))))
(build-system python-build-system)
(native-inputs (list python-tox))
(home-page "https://txt2tags.org")
diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
index 75e6370c72..806a761d9b 100644
--- a/gnu/packages/tls.scm
+++ b/gnu/packages/tls.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017, 2019, 2021-2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2019, 2021-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is>
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
@@ -15,7 +15,7 @@
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
-;;; Copyright © 2020, 2021, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020, 2021, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
@@ -200,7 +200,7 @@ living in the same process.")
(package
(name "gnutls")
(version "3.7.7")
- (replacement gnutls-3.8.1)
+ (replacement gnutls-3.8.2)
(source (origin
(method url-fetch)
;; Note: Releases are no longer on ftp.gnu.org since the
@@ -305,11 +305,11 @@ required structures.")
(define-deprecated/public-alias gnutls-latest gnutls)
;; Replacement for gnutls@3.7.7 to address GNUTLS-SA-2020-07-14 /
-;; CVE-2023-0361
-(define-public gnutls-3.8.1
+;; CVE-2023-0361 and GNUTLS-SA-2023-10-23 / CVE-2023-5981.
+(define gnutls-3.8.2
(package
(inherit gnutls)
- (version "3.8.1")
+ (version "3.8.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnupg/gnutls/v"
@@ -318,20 +318,7 @@ required structures.")
(patches (search-patches "gnutls-skip-trust-store-test.patch"))
(sha256
(base32
- "1742jiigwsfhx7nj5rz7dwqr8d46npsph6b68j7siar0mqarx2xs"))))
- (arguments
- (if (target-hurd?)
- ;; Fix reference to undefined 'PATH_MAX'. This is fixed in GnuTLS
- ;; commit 3b6ec1e01de4e96d36276dfe34ee9e183f285264.
- (substitute-keyword-arguments (package-arguments gnutls)
- ((#:phases phases #~%standard-phases)
- #~(modify-phases #$phases
- (add-after 'unpack 'set-path-max
- (lambda _
- (substitute* "lib/pathbuf.h"
- (("^#define GNUTLS_PATH_MAX PATH_MAX")
- "#define GNUTLS_PATH_MAX 8192\n")))))))
- (package-arguments gnutls)))))
+ "0xzgmp1ck5ifvdki4jg29r278w2p1m3a0qz38g99v6zsdw0yarg7"))))))
(define-public gnutls/dane
;; GnuTLS with build libgnutls-dane, implementing DNS-based
@@ -429,6 +416,8 @@ OpenSSL for TARGET."
(cond
((target-x86-32? target)
"x86")
+ ((target-x32? target)
+ "x32")
((target-x86-64? target)
"x86_64")
((target-mips64el? target)
diff --git a/gnu/packages/valgrind.scm b/gnu/packages/valgrind.scm
index 06622548a5..b50dabf9ca 100644
--- a/gnu/packages/valgrind.scm
+++ b/gnu/packages/valgrind.scm
@@ -39,7 +39,7 @@
(define-public valgrind
(package
(name "valgrind")
- (version "3.20.0")
+ (version "3.22.0")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/pub/valgrind"
@@ -48,7 +48,7 @@
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
- "1ipkp6yi202pml2r0qwflysmq86dkqd8iyi1y51d6y70vcqw0dl5"))))
+ "0k1ddnzxfpbng2sp5r31jjxsmp35g977rx6a8jcp4prcvmddn4f8"))))
(build-system gnu-build-system)
(outputs '("doc" ;16 MB
"out"))
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 40d7a00dae..4d5d1a9720 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -1072,115 +1072,118 @@ collaboration using typical untrusted file hosts or services.")
(license license:gpl3+)))
(define-public cgit
- (package
- (name "cgit")
- ;; Update the ‘git-source’ input as well.
- (version "1.2.3")
- (source (origin
- (method url-fetch)
- (uri (string-append
- "https://git.zx2c4.com/cgit/snapshot/cgit-"
- version ".tar.xz"))
- (sha256
- (base32
- "193d990ym10qlslk0p8mjwp2j6rhqa7fq0y1iff65lvbyv914pss"))))
- (build-system gnu-build-system)
- (arguments
- (list
- #:tests? #f ; XXX: fail to build the in-source git.
- #:test-target "test"
- #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
- "SHELL_PATH=sh")
- #:phases
- #~(modify-phases %standard-phases
- (add-after 'unpack 'unpack-git
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Unpack the source of git into the 'git' directory.
- (invoke "tar" "--strip-components=1" "-C" "git" "-xf"
- (assoc-ref inputs "git-source"))))
- (add-after 'unpack 'patch-absolute-file-names
- (lambda* (#:key inputs #:allow-other-keys)
- (define (quoted-file-name input path)
- (string-append "\"" input path "\""))
- (substitute* "ui-snapshot.c"
- (("\"gzip\"")
- (quoted-file-name (assoc-ref inputs "gzip") "/bin/gzip"))
- (("\"bzip2\"")
- (quoted-file-name (assoc-ref inputs "bzip2") "/bin/bzip2"))
- (("\"xz\"")
- (quoted-file-name (assoc-ref inputs "xz") "/bin/xz")))
-
- (substitute* "filters/about-formatting.sh"
- (("$\\(dirname $0\\)") (string-append (assoc-ref outputs "out")
- "/lib/cgit/filters"))
- (("\\| tr") (string-append "| " (which "tr"))))
-
- (substitute* "filters/html-converters/txt2html"
- (("sed") (which "sed")))
-
- (substitute* "filters/html-converters/man2html"
- (("groff") (which "groff")))
-
- (substitute* "filters/html-converters/rst2html"
- (("rst2html\\.py") (which "rst2html.py")))))
- (delete 'configure) ; no configure script
- (add-after 'build 'build-man
- (lambda* (#:key make-flags #:allow-other-keys)
- (apply invoke "make" "doc-man" make-flags)))
- (replace 'install
- (lambda* (#:key make-flags outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (apply invoke
- "make" "install" "install-man"
- (string-append "prefix=" out)
- (string-append "CGIT_SCRIPT_PATH=" out "/share/cgit")
- make-flags)
- ;; Move the platform-dependent 'cgit.cgi' into lib to get it
- ;; stripped.
- (rename-file (string-append out "/share/cgit/cgit.cgi")
- (string-append out "/lib/cgit/cgit.cgi")))))
- (add-after 'install 'wrap-python-scripts
- (lambda* (#:key outputs #:allow-other-keys)
- (for-each
- (lambda (file)
- (wrap-program (string-append (assoc-ref outputs "out")
- "/lib/cgit/filters/" file)
- `("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))))
- '("syntax-highlighting.py"
- "html-converters/md2html")))))))
- (native-inputs
- ;; For building manpage.
- (list asciidoc))
- (inputs
- `(;; Building cgit requires a Git source tree.
- ("git-source"
- ,(origin
- (method url-fetch)
- ;; cgit is tightly bound to git. Use GIT_VER from the Makefile,
- ;; which may not match the current (package-version git).
- (uri "mirror://kernel.org/software/scm/git/git-2.25.4.tar.xz")
- (sha256
- (base32 "11am6s46wmn1yll5614smjhzlghbqq6gysgcs64igjr9y5wzpdxq"))))
- ("bash-minimal" ,bash-minimal)
- ("openssl" ,openssl)
- ("python" ,python)
- ("python-docutils" ,python-docutils)
- ("python-markdown" ,python-markdown)
- ("python-pygments" ,python-pygments)
- ("zlib" ,zlib)
- ;; bzip2, groff, gzip and xz are inputs (not native inputs)
- ;; since they are actually substituted into cgit source and
- ;; referenced by the built package output.
- ("bzip2" ,bzip2)
- ("groff" ,groff)
- ("gzip" ,gzip)
- ("xz" ,xz)))
- (home-page "https://git.zx2c4.com/cgit/")
- (synopsis "Web frontend for git repositories")
- (description
- "CGit is an attempt to create a fast web interface for the Git SCM, using
+ (let ((commit "793c420897e18eb3474c751d54cf4e0983f85433")
+ (rev "1"))
+ (package
+ (name "cgit")
+ ;; Update the ‘git-source’ input as well.
+ (version (git-version "1.2.3" rev commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.zx2c4.com/cgit")
+ (commit commit)))
+ (sha256
+ (base32
+ "1mhrm14wpqvralf9j33ih5ai6naiq3g2jg2z91gnw9dhh8f9ilwz"))
+ (file-name (git-file-name name version))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:tests? #f ; XXX: fail to build the in-source git.
+ #:test-target "test"
+ #:make-flags #~(list (string-append "CC=" #$(cc-for-target))
+ "SHELL_PATH=sh")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-git
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; Unpack the source of git into the 'git' directory.
+ (invoke "tar" "--strip-components=1" "-C" "git" "-xf"
+ (assoc-ref inputs "git-source"))))
+ (add-after 'unpack 'patch-absolute-file-names
+ (lambda* (#:key inputs #:allow-other-keys)
+ (define (quoted-file-name input path)
+ (string-append "\"" input path "\""))
+ (substitute* "ui-snapshot.c"
+ (("\"gzip\"")
+ (quoted-file-name (assoc-ref inputs "gzip") "/bin/gzip"))
+ (("\"bzip2\"")
+ (quoted-file-name (assoc-ref inputs "bzip2") "/bin/bzip2"))
+ (("\"xz\"")
+ (quoted-file-name (assoc-ref inputs "xz") "/bin/xz")))
+
+ (substitute* "filters/about-formatting.sh"
+ (("$\\(dirname $0\\)") (string-append (assoc-ref outputs "out")
+ "/lib/cgit/filters"))
+ (("\\| tr") (string-append "| " (which "tr"))))
+
+ (substitute* "filters/html-converters/txt2html"
+ (("sed") (which "sed")))
+
+ (substitute* "filters/html-converters/man2html"
+ (("groff") (which "groff")))
+
+ (substitute* "filters/html-converters/rst2html"
+ (("rst2html\\.py") (which "rst2html.py")))))
+ (delete 'configure) ; no configure script
+ (add-after 'build 'build-man
+ (lambda* (#:key make-flags #:allow-other-keys)
+ (apply invoke "make" "doc-man" make-flags)))
+ (replace 'install
+ (lambda* (#:key make-flags outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (apply invoke
+ "make" "install" "install-man"
+ (string-append "prefix=" out)
+ (string-append "CGIT_SCRIPT_PATH=" out "/share/cgit")
+ make-flags)
+ ;; Move the platform-dependent 'cgit.cgi' into lib to get it
+ ;; stripped.
+ (rename-file (string-append out "/share/cgit/cgit.cgi")
+ (string-append out "/lib/cgit/cgit.cgi")))))
+ (add-after 'install 'wrap-python-scripts
+ (lambda* (#:key outputs #:allow-other-keys)
+ (for-each
+ (lambda (file)
+ (wrap-program (string-append (assoc-ref outputs "out")
+ "/lib/cgit/filters/" file)
+ `("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))))
+ '("syntax-highlighting.py"
+ "html-converters/md2html")))))))
+ (native-inputs
+ ;; For building manpage.
+ (list asciidoc))
+ (inputs
+ `( ;; Building cgit requires a Git source tree.
+ ("git-source"
+ ,(origin
+ (method url-fetch)
+ ;; cgit is tightly bound to git. Use GIT_VER from the Makefile,
+ ;; which may not match the current (package-version git).
+ (uri "mirror://kernel.org/software/scm/git/git-2.43.0.tar.xz")
+ (sha256
+ (base32 "1v3nkfm3gw8wr7595qy86qla8xyjvi85fmly4lfph4frfcz60ijl"))))
+ ("bash-minimal" ,bash-minimal)
+ ("openssl" ,openssl)
+ ("python" ,python)
+ ("python-docutils" ,python-docutils)
+ ("python-markdown" ,python-markdown)
+ ("python-pygments" ,python-pygments)
+ ("zlib" ,zlib)
+ ;; bzip2, groff, gzip and xz are inputs (not native inputs)
+ ;; since they are actually substituted into cgit source and
+ ;; referenced by the built package output.
+ ("bzip2" ,bzip2)
+ ("groff" ,groff)
+ ("gzip" ,gzip)
+ ("xz" ,xz)))
+ (home-page "https://git.zx2c4.com/cgit/")
+ (synopsis "Web frontend for git repositories")
+ (description
+ "CGit is an attempt to create a fast web interface for the Git SCM, using
a built-in cache to decrease server I/O pressure.")
- (license license:gpl2)))
+ (license license:gpl2))))
(define-public cgit-pink
(package
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 6da4897a57..4181013b0d 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1047,14 +1047,14 @@ H.264 (MPEG-4 AVC) video streams.")
(define-public mkvtoolnix
(package
(name "mkvtoolnix")
- (version "52.0.0")
+ (version "80.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://mkvtoolnix.download/sources/"
"mkvtoolnix-" version ".tar.xz"))
(sha256
- (base32 "15y7ahlifsclnkl70wn5w34dil8nwcwcjnw3k2ydqc6dz4vb0j5s"))
+ (base32 "1x9k9pmw7mzm2amvm251a45dlj9p9iqfank5p4w2fizxkapws25v"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled libraries.
@@ -1070,6 +1070,7 @@ H.264 (MPEG-4 AVC) video streams.")
(outputs '("out" "gui")) ; "mkvtoolnix-gui" brings the closure size from ~300 MB to 1.5+ GB.
(inputs
(list boost
+ gmp
bzip2
cmark
libebml
@@ -1083,86 +1084,96 @@ H.264 (MPEG-4 AVC) video streams.")
lzo
pcre2
pugixml
- qtbase-5
- qtmultimedia-5
+ qtbase
+ qtmultimedia
+ qtsvg
utfcpp
zlib))
(native-inputs
- `(("docbook-xsl" ,docbook-xsl)
- ("gettext" ,gettext-minimal)
- ("googletest" ,googletest)
- ("libxslt" ,libxslt)
- ("nlohmann-json" ,nlohmann-json)
- ("perl" ,perl)
- ("pkg-config" ,pkg-config)
- ("po4a" ,po4a)
- ("qttools-5" ,qttools-5)
- ("ruby" ,ruby-2.7)))
+ (list docbook-xsl
+ gettext-minimal
+ googletest
+ libxslt
+ nlohmann-json
+ perl
+ pkg-config
+ po4a
+ qttools
+ ruby-3.2))
(arguments
- `(#:configure-flags
- (list (string-append "--with-boost="
- (assoc-ref %build-inputs "boost"))
- (string-append "--with-docbook-xsl-root="
- (assoc-ref %build-inputs "docbook-xsl")
- "/xml/xsl/docbook-xsl-"
- ,(package-version docbook-xsl))
- "--enable-update-check=no"
- "--enable-precompiled-headers=no")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'fix-utfcpp-include
- (lambda _
- (substitute* "src/common/strings/utf8.cpp"
- (("<utf8.h>")
- "<utf8cpp/utf8.h>"))))
- (add-after 'unpack 'patch-relative-file-names
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (substitute* "src/mkvtoolnix-gui/util/settings.cpp"
- (("mkvmerge" match)
- (string-append out "/bin/" match)))
- #t)))
- (add-before 'configure 'add-googletest
- (lambda* (#:key inputs #:allow-other-keys)
- (symlink (search-input-directory inputs "/include/gtest")
- "lib/gtest")))
- (replace 'build
- (lambda _
- (let ((-j (list "-j" (number->string (parallel-job-count)))))
- (apply invoke "rake" -j))))
- (replace 'check
- (lambda _
- (invoke "rake" "tests/unit")))
- (replace 'install
- (lambda _
- (invoke "rake" "install")))
- (add-after 'install 'post-install
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Move the Qt interface to "gui".
- (let* ((out (assoc-ref outputs "out"))
- (gui (assoc-ref outputs "gui"))
- (strip-store-dir (lambda (path)
- (substring path (string-prefix-length out path)))))
- (for-each
- (lambda (file)
- (mkdir-p (string-append gui (dirname file)))
- (rename-file (string-append out file)
- (string-append gui file)))
- (append '("/bin/mkvtoolnix-gui"
- "/share/applications/org.bunkus.mkvtoolnix-gui.desktop"
- "/share/metainfo/org.bunkus.mkvtoolnix-gui.appdata.xml"
- "/share/mime/packages/org.bunkus.mkvtoolnix-gui.xml")
- (map strip-store-dir (find-files out "\\.ogg$"))
- (map strip-store-dir (find-files out "mkvtoolnix-gui\\.png$"))
- (map strip-store-dir (find-files out "mkvtoolnix-gui\\.1"))))
- (for-each
- (lambda (file)
- (delete-file-recursively (string-append out file)))
- '("/share/applications"
- "/share/metainfo"
- "/share/mime"
- "/share/mkvtoolnix")))
- #t)))))
+ (list
+ #:configure-flags
+ #~(list (string-append "--with-boost="
+ #$(this-package-input "boost"))
+ (string-append "--with-docbook-xsl-root="
+ #$(this-package-native-input "docbook-xsl")
+ "/xml/xsl/docbook-xsl-"
+ #$(package-version
+ (this-package-native-input "docbook-xsl")))
+ "--enable-update-check=no"
+ "--enable-precompiled-headers=no")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-utfcpp-include
+ (lambda _
+ (substitute* "src/common/strings/utf8.cpp"
+ (("<utf8.h>")
+ "<utf8cpp/utf8.h>"))))
+ (add-after 'unpack 'patch-relative-file-names
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "src/mkvtoolnix-gui/util/settings.cpp"
+ (("mkvmerge" match)
+ (string-append out "/bin/" match))) #t)))
+ (add-before 'configure 'add-googletest
+ (lambda* (#:key inputs #:allow-other-keys)
+ (symlink (search-input-directory inputs
+ "/include/gtest")
+ "lib/gtest")))
+ (replace 'build
+ (lambda _
+ (let ((-j (list "-j"
+ (number->string (parallel-job-count)))))
+ (apply invoke "rake" -j))))
+ (replace 'check
+ (lambda _
+ (invoke "rake" "tests/unit")))
+ (replace 'install
+ (lambda _
+ (invoke "rake" "install")))
+ (add-after 'install 'post-install
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move the Qt interface to "gui".
+ (let* ((out (assoc-ref outputs "out"))
+ (gui (assoc-ref outputs "gui"))
+ (strip-store-dir (lambda (path)
+ (substring path
+ (string-prefix-length
+ out path)))))
+ (for-each (lambda (file)
+ (mkdir-p (string-append gui
+ (dirname
+ file)))
+ (rename-file (string-append out file)
+ (string-append gui file)))
+ (append '("/bin/mkvtoolnix-gui"
+ "/share/applications/org.bunkus.mkvtoolnix-gui.desktop"
+ "/share/metainfo/org.bunkus.mkvtoolnix-gui.appdata.xml"
+ "/share/mime/packages/org.bunkus.mkvtoolnix-gui.xml")
+ (map strip-store-dir
+ (find-files out "\\.ogg$"))
+ (map strip-store-dir
+ (find-files out
+ "mkvtoolnix-gui\\.png$"))
+ (map strip-store-dir
+ (find-files out
+ "mkvtoolnix-gui\\.1"))))
+ (for-each (lambda (file)
+ (delete-file-recursively
+ (string-append out file)))
+ '("/share/applications"
+ "/share/metainfo" "/share/mime"
+ "/share/mkvtoolnix"))))))))
(home-page "https://mkvtoolnix.download")
(synopsis "Tools to create, alter and inspect Matroska files")
(description
@@ -1505,14 +1516,14 @@ SMPTE 314M.")
(define-public libmatroska
(package
(name "libmatroska")
- (version "1.6.3")
+ (version "1.7.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://dl.matroska.org/downloads/"
"libmatroska/libmatroska-" version ".tar.xz"))
(sha256
- (base32 "06h81sxyz2riic0gpzik6ffcnq32wrqphi8c6k55glcdymiimyfs"))))
+ (base32 "1cqq61qgv6x3xjzjrw71dya7lbsbrsmi9raqm2k4hgfrp0rk0ajp"))))
(build-system cmake-build-system)
(inputs
(list libebml))
@@ -1657,14 +1668,14 @@ operate properly.")
(define-public ffmpeg
(package
(name "ffmpeg")
- (version "6.0")
+ (version "6.1.1")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
- "10kh2f4y4isfqj4xpcqqnzk611jh89ywcjyjnq9c2jcv5p18ggjp"))))
+ "0s7r2qv8gh2a3w568n9xxgcz0q8j5ww1jdsci1hm9f4l1yqg9146"))))
(outputs '("out" "debug"))
(build-system gnu-build-system)
(inputs
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index a87eb20428..bd7589b2a6 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -787,7 +787,7 @@ desktop environment.")
(define-public icewm
(package
(name "icewm")
- (version "3.4.4")
+ (version "3.4.5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -795,7 +795,7 @@ desktop environment.")
version "/icewm-" version ".tar.lz"))
(sha256
(base32
- "0cdsb2d45dwcr2dm4jfh0z5g6pkb0ghd4jaybxqiz74mbw5rmjhv"))))
+ "1wd5k0whh2b43a72223cy19pwc29fhrhd2dnc61fha2y5ndgw6ld"))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
(inputs (list fontconfig
diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index 73889c945e..a44a871ba2 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -216,7 +216,7 @@ to share commonly used Xfce widgets among the Xfce applications.")
(define-public catfish
(package
(name "catfish")
- (version "4.16.4")
+ (version "4.18.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.xfce.org/src/apps/"
@@ -224,7 +224,7 @@ to share commonly used Xfce widgets among the Xfce applications.")
"/catfish-" version ".tar.bz2"))
(sha256
(base32
- "1z5m9f4cj473n68rrhhbkq3x5df5k394qp4n27lqqyny6k2h2p3f"))))
+ "16cbsnki7qragwhbfs3h0ja7xg8xlf59ajxhddqm0jkmrirrpbpx"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -270,7 +270,7 @@ it to your needs by using several command line options.")
(define-public elementary-xfce-icon-theme
(package
(name "elementary-xfce-icon-theme")
- (version "0.17")
+ (version "0.18")
(source (origin
(method git-fetch)
(uri
@@ -280,7 +280,7 @@ it to your needs by using several command line options.")
(file-name (git-file-name name version))
(sha256
(base32
- "0jlawp6rg55w5cm4d7836r660i2pnc5gkzpdjsq7w5875i85arzm"))))
+ "124bdgghkjkpcsfn9a2ad6zqy233pi9jqmv8w8a3ha6q3al2s11s"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check target
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index 6539bfd6ce..60388a22dd 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -1798,9 +1798,9 @@ archive' public keys, with GUIX."
(chroot-directories guix-configuration-chroot-directories ;list of file-like/strings
(default '()))
(max-silent-time guix-configuration-max-silent-time ;integer
- (default 0))
+ (default 3600))
(timeout guix-configuration-timeout ;integer
- (default 0))
+ (default (* 3600 24)))
(log-compression guix-configuration-log-compression
(default 'gzip))
(discover? guix-configuration-discover?
diff --git a/gnu/services/shepherd.scm b/gnu/services/shepherd.scm
index e9d3a631c2..8e122f1aab 100644
--- a/gnu/services/shepherd.scm
+++ b/gnu/services/shepherd.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013-2016, 2018-2023 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013-2016, 2018-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@@ -371,17 +371,6 @@ as shepherd package."
(use-modules (srfi srfi-34)
(system repl error-handling))
- (define (call-with-file file flags proc)
- (let ((port #f))
- (dynamic-wind
- (lambda ()
- (set! port (open file flags)))
- (lambda ()
- (proc port))
- (lambda ()
- (close-port port)
- (set! port #f)))))
-
;; There's code run from shepherd that uses 'call-with-input-file' &
;; co.--e.g., the 'urandom-seed' service. Starting from Shepherd
;; 0.9.2, users need to make sure not to leak non-close-on-exec file
@@ -389,12 +378,12 @@ as shepherd package."
;; standard bindings with O_CLOEXEC variants.
(set! call-with-input-file
(lambda (file proc)
- (call-with-file file (logior O_RDONLY O_CLOEXEC)
- proc)))
+ (call-with-port (open file (logior O_RDONLY O_CLOEXEC))
+ proc)))
(set! call-with-output-file
(lambda (file proc)
- (call-with-file file (logior O_WRONLY O_CREAT O_CLOEXEC)
- proc)))
+ (call-with-port (open file (logior O_WRONLY O_CREAT O_CLOEXEC))
+ proc)))
;; Specify the default environment visible to all the services.
;; Without this statement, all the environment variables of PID 1
diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm
index f8cf9f25b6..1ee15ea90c 100644
--- a/gnu/services/xorg.scm
+++ b/gnu/services/xorg.scm
@@ -981,6 +981,11 @@ argument.")))
(lambda (pw)
(string-append (passwd:dir pw) "/.guix-profile"))))
+ (define home-profile
+ (and=> (getpw (getuid))
+ (lambda (pw)
+ (string-append (passwd:dir pw) "/.guix-home/profile"))))
+
;; If we are able to find the user's profile, we can add it to
;; the search paths set below. We need to do this so that D-Bus
;; can start services installed by the user. This allows
@@ -988,9 +993,13 @@ argument.")))
;; 'evolution') to work even if those services are only available
;; in the user's profile. See <https://bugs.gnu.org/35267>.
(define profiles
- (if user-profile
- (list user-profile system-profile)
- (list system-profile)))
+ (append (if home-profile
+ (list home-profile)
+ '())
+ (if user-profile
+ (list user-profile)
+ '())
+ (list system-profile)))
(setenv "XDG_CONFIG_DIRS"
(string-join (map (cut string-append <> "/etc/xdg") profiles)
diff --git a/guix/build-system/zig.scm b/guix/build-system/zig.scm
index 215178ceb4..1fa4782a2e 100644
--- a/guix/build-system/zig.scm
+++ b/guix/build-system/zig.scm
@@ -83,6 +83,79 @@
#:system system
#:guile-for-build guile)))
+(define* (zig-cross-build name
+ #:key
+ source target
+ build-inputs target-inputs host-inputs
+ (phases '%standard-phases)
+ (outputs '("out"))
+ (search-paths '())
+ (native-search-paths '())
+ (tests? #t)
+ (test-target #f)
+ (zig-build-flags ''())
+ (zig-test-flags ''())
+ (zig-destdir "out")
+ (zig-test-destdir "test-out")
+ (zig-release-type #f)
+ (system (%current-system))
+ (guile #f)
+ (imported-modules %zig-build-system-modules)
+ (modules '((guix build zig-build-system)
+ (guix build utils))))
+ "Build SOURCE using Zig, and with INPUTS."
+ (define builder
+ (with-imported-modules imported-modules
+ #~(begin
+ (use-modules #$@(sexp->gexp modules))
+
+ (define %build-host-inputs
+ #+(input-tuples->gexp build-inputs))
+
+ (define %build-target-inputs
+ (append #$(input-tuples->gexp host-inputs)
+ #+(input-tuples->gexp target-inputs)))
+
+ (define %build-inputs
+ (append %build-host-inputs %build-target-inputs))
+
+ (define %outputs
+ #$(outputs->gexp outputs))
+
+ (zig-build #:name #$name
+ #:source #+source
+ #:system #$system
+ #:phases #$phases
+ #:outputs %outputs
+ #:target #$target
+ #:test-target #$test-target
+ #:inputs %build-target-inputs
+ #:native-inputs %build-host-inputs
+ #:search-paths '#$(map search-path-specification->sexp
+ search-paths)
+ #:native-search-paths '#$(map
+ search-path-specification->sexp
+ native-search-paths)
+ #:zig-build-flags #$zig-build-flags
+ #:zig-test-flags #$zig-test-flags
+ #:zig-release-type #$zig-release-type
+ #:zig-destdir #$zig-destdir
+ #:zig-test-destdir #$zig-test-destdir
+ #:tests? #$tests?
+ #:search-paths '#$(sexp->gexp
+ (map search-path-specification->sexp
+ search-paths))))))
+
+ (mlet %store-monad ((guile (package->derivation (or guile (default-guile))
+ system #:graft? #f)))
+ (gexp->derivation name builder
+ #:system system
+ #:target target
+ #:graft? #f
+ #:substitutable? substitutable?
+ #:guile-for-build guile)))
+
+
(define* (lower name
#:key source inputs native-inputs outputs system target
(zig (default-zig))
@@ -93,27 +166,30 @@
(define private-keywords
'(#:target #:zig #:inputs #:native-inputs #:outputs))
- ;; TODO: support cross-compilation
- ;; It's as simple as adding some build flags to `zig-build-flags`
- ;; -Dtarget=aarch64-linux-musl, for example.
- (and (not target)
- (bag
- (name name)
- (system system)
- (target target)
- (host-inputs `(,@(if source
- `(("source" ,source))
- '())
- ,@inputs
-
- ;; Keep the standard inputs of 'gnu-build-system'
- ;; TODO: do we need this?
- ,@(standard-packages)))
- (build-inputs `(("zig" ,zig)
- ,@native-inputs))
- (outputs outputs)
- (build zig-build)
- (arguments (strip-keyword-arguments private-keywords arguments)))))
+ (bag
+ (name name)
+ (system system)
+ (target target)
+ (build-inputs `(,@(if source
+ `(("source" ,source))
+ '())
+ ,@`(("zig" ,zig))
+ ,@native-inputs
+ ,@(if target '() inputs)
+ ,@(if target
+ ;; Use the standard cross inputs of
+ ;; 'gnu-build-system'.
+ (standard-cross-packages target 'host)
+ '())
+ ;; Keep the standard inputs of 'gnu-build-system'.
+ ,@(standard-packages)))
+ (host-inputs (if target inputs '()))
+ (target-inputs (if target
+ (standard-cross-packages target 'target)
+ '()))
+ (outputs outputs)
+ (build (if target zig-cross-build zig-build))
+ (arguments (strip-keyword-arguments private-keywords arguments))))
(define zig-build-system
(build-system
diff --git a/guix/build/zig-build-system.scm b/guix/build/zig-build-system.scm
index d414ebfb17..8352a73324 100644
--- a/guix/build/zig-build-system.scm
+++ b/guix/build/zig-build-system.scm
@@ -47,6 +47,7 @@
zig-build-flags
zig-release-type ;; "safe", "fast" or "small" empty for a
;; debug build"
+ target
#:allow-other-keys)
"Build a given Zig package."
@@ -56,6 +57,9 @@
"--prefix-lib-dir" "lib"
"--prefix-exe-dir" "bin"
"--prefix-include-dir" "include"
+ ,@(if target
+ (list (string-append "-Dtarget=" target))
+ '())
,@(if zig-release-type
(list (string-append "-Drelease-" zig-release-type))
'())
@@ -65,9 +69,10 @@
(define* (check #:key tests?
zig-test-flags
+ target
#:allow-other-keys)
"Run all the tests"
- (when tests?
+ (when (and tests? (not target))
(let ((old-destdir (getenv "DESTDIR")))
(setenv "DESTDIR" "test-out") ;; Avoid colisions with the build output
(let ((call `("zig" "build" "test"
diff --git a/guix/platforms/x86.scm b/guix/platforms/x86.scm
index 4ed5638c14..0c8fc7296c 100644
--- a/guix/platforms/x86.scm
+++ b/guix/platforms/x86.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Mathieu Othacehe <othacehe@gnu.org>
+;;; Copyright © 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,6 +22,7 @@
#:use-module (guix records)
#:export (i686-linux
x86_64-linux
+ x86_64-linux-x32
i686-mingw
x86_64-mingw
i586-gnu))
@@ -41,6 +43,14 @@
(rust-target "x86_64-unknown-linux-gnu")
(glibc-dynamic-linker "/lib/ld-linux-x86-64.so.2")))
+(define x86_64-linux-x32
+ (platform
+ (target "x86_64-linux-gnux32")
+ (system #f)
+ (linux-architecture "x86_64")
+ (rust-target "x86_64-unknown-linux-gnux32")
+ (glibc-dynamic-linker "/lib/ld-linux-x32.so.2")))
+
(define i686-mingw
(platform
(target "i686-w64-mingw32")
diff --git a/guix/ui.scm b/guix/ui.scm
index e3bf07212f..962d291d2e 100644
--- a/guix/ui.scm
+++ b/guix/ui.scm
@@ -1,5 +1,5 @@
;;; 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 © 2013, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014 Cyril Roelandt <tipecaml@gmail.com>
@@ -555,7 +555,7 @@ See the \"Application Setup\" section in the manual, for more info.\n"))
(leave-on-EPIPE
(simple-format #t "~a (~a) ~a~%"
command %guix-package-name %guix-version)
- (format #t "Copyright ~a 2023 ~a"
+ (format #t "Copyright ~a 2024 ~a"
;; TRANSLATORS: Translate "(C)" to the copyright symbol
;; (C-in-a-circle), if this symbol is available in the user's
;; locale. Otherwise, do not translate "(C)"; leave it as-is. */
diff --git a/guix/utils.scm b/guix/utils.scm
index 8e71f97e1c..e4e9d922e7 100644
--- a/guix/utils.scm
+++ b/guix/utils.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018, 2020 Marius Bakke <marius@gnu.org>
-;;; Copyright © 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2020, 2021, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
@@ -97,6 +97,7 @@
target-x86-32?
target-x86-64?
target-x86?
+ target-x32?
target-arm32?
target-aarch64?
target-arm?
@@ -634,6 +635,8 @@ returned by `config.guess'."
(else triplet))))
(cond ((string-match "^arm[^-]*-([^-]+-)?linux-gnueabihf" triplet)
"armhf-linux")
+ ;; Otherwise it will show up as x86_64-linux... which isn't wrong.
+ ((string-match "x86_64-linux-gnux32" triplet) "x86_64-linux-gnux32")
((string-match "^([^-]+)-([^-]+-)?linux-gnu.*" triplet)
=>
(lambda (m)
@@ -710,6 +713,13 @@ a character other than '@'."
architecture (x86_64)?"
(string-prefix? "x86_64-" target))
+(define* (target-x32? #:optional (target (or (%current-target-system)
+ (%current-system))))
+ "Is the architecture of TARGET a variant of Intel/AMD's 64-bit
+architecture (x86_64) using 32-bit data types?"
+ (and (target-x86-64? target)
+ (string-suffix? "gnux32" target)))
+
(define* (target-x86? #:optional (target (or (%current-target-system)
(%current-system))))
(or (target-x86-32? target) (target-x86-64? target)))
diff --git a/nix/libstore/globals.cc b/nix/libstore/globals.cc
index d4f9a46a74..89add1f107 100644
--- a/nix/libstore/globals.cc
+++ b/nix/libstore/globals.cc
@@ -32,8 +32,8 @@ Settings::Settings()
buildCores = 1;
readOnlyMode = false;
thisSystem = SYSTEM;
- maxSilentTime = 0;
- buildTimeout = 0;
+ maxSilentTime = 3600;
+ buildTimeout = 3600 * 24;
useBuildHook = true;
printBuildTrace = false;
multiplexedBuildOutput = false;