mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-07-07 07:04:07 +02:00
Compare commits
77 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 1e00840ab4 | |||
| f9a5195bf4 | |||
| 500ceb4352 | |||
| d6cfaecd11 | |||
| 7c0268900e | |||
| db51427479 | |||
| 952d84dc7d | |||
| e97d8ee352 | |||
| eb60784b22 | |||
| bd775220cb | |||
| ae142f80df | |||
| a1d66a202c | |||
| 63df36aebf | |||
| d7e76c1907 | |||
| b8a5292a9e | |||
| e01b095fe6 | |||
| 610c17e72c | |||
| 1ea42353fc | |||
| 5eccc921d8 | |||
| 4ff550c126 | |||
| e1e8dcec2d | |||
| dd2ffbae41 | |||
| 832aa7fe08 | |||
| 3af43f1496 | |||
| 7a997cedcf | |||
| 7c91facc51 | |||
| f688d7f551 | |||
| 86e99fd53d | |||
| 33036b2908 | |||
| 01b64d3428 | |||
| 1c7e2df756 | |||
| 062cd42d46 | |||
| 5764620de1 | |||
| 7c271adcee | |||
| e8f0ac36a0 | |||
| 728e54fbae | |||
| 2cc6aacbd7 | |||
| 20dcd44484 | |||
| 75a84eaea6 | |||
| f15277c19a | |||
| ba4943661a | |||
| cf21d51433 | |||
| c74733f035 | |||
| b25c0b62fe | |||
| 1fcf978657 | |||
| 7af7accf2f | |||
| f7c1f2cafe | |||
| eec2d7a1c8 | |||
| d6d8b1bb4f | |||
| e1b33e1dd2 | |||
| 613e069b3f | |||
| f5302d3491 | |||
| b3479e0f53 | |||
| 1ec29241ef | |||
| 921621c78d | |||
| 21e90a96c7 | |||
| e59a793af1 | |||
| 6028a2f7ed | |||
| 380d705b4e | |||
| 1b4fd88b07 | |||
| 950bae548a | |||
| 39baeaa58f | |||
| f9a8158580 | |||
| 2c79f4d932 | |||
| ffe6057e2a | |||
| f6ed91ec35 | |||
| 3a72fa155f | |||
| 4572918625 | |||
| 61a36beb4a | |||
| a7cc0cf504 | |||
| 13d24ec965 | |||
| ab1cccf8d9 | |||
| c266426f15 | |||
| dc64ec527c | |||
| 9873d2c433 | |||
| a6c665b575 | |||
| 338915e54b |
+5
-6
@@ -42,12 +42,11 @@
|
||||
;; For use with 'bug-reference-prog-mode'. Extra bug-reference
|
||||
;; configuration should be done in your Emacs user configuration file;
|
||||
;; refer to (info (guix) The Perfect Setup).
|
||||
(eval . (setq-local
|
||||
;; #8545, guix/guix#8545, guix/guix!8545, but not !8545
|
||||
bug-reference-bug-regexp
|
||||
(rx (group (or (seq (zero-or-more "guix/guix") "#")
|
||||
(seq (one-or-more "guix/guix") "!"))
|
||||
(group (one-or-more digit))))))
|
||||
(eval . (setq-local bug-reference-bug-regexp
|
||||
;; #8545 (issues), !8545 (PRs), guix/guix#8545 and
|
||||
;; guix/guix!8545
|
||||
(rx (group (seq (? "guix/guix") (or "#" "!"))
|
||||
(group (one-or-more digit))))))
|
||||
(bug-reference-url-format . "https://codeberg.org/guix/guix/issues/%s")
|
||||
|
||||
(eval . (add-to-list 'completion-ignored-extensions ".go"))
|
||||
|
||||
@@ -1281,6 +1281,14 @@ $(GIT_HOOKS_DIR):
|
||||
$(GIT_HOOKS_DIR)/%: etc/git/% | $(GIT_HOOKS_DIR)/
|
||||
if [ -n "$(GIT_HOOKS_DIR)" ]; then cp "$<" "$@"; fi
|
||||
|
||||
# Special-case the pre-push hook installation, to ensure it is always
|
||||
# up-to-date with its source.
|
||||
.PHONY: $(GIT_HOOKS_DIR)/pre-push
|
||||
$(GIT_HOOKS_DIR)/pre-push: etc/git/pre-push | $(GIT_HOOKS_DIR)
|
||||
@if [ -n "$(GIT_HOOKS_DIR)" ]; then \
|
||||
cmp "--silent" "$<" "$@" || cp "$<" "$@"; \
|
||||
fi
|
||||
|
||||
$(GIT_CONFIG_FILE): etc/git/gitconfig
|
||||
if [ -n "$(GIT_CONFIG_FILE)" ]; then \
|
||||
git config --fixed-value --replace-all include.path \
|
||||
|
||||
+6
-5
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
# From Gerrit Code Review 3.11.1.
|
||||
#
|
||||
# Part of Gerrit Code Review (https://www.gerritcodereview.com/)
|
||||
#
|
||||
@@ -70,9 +69,9 @@ dest="$1.tmp.${random}"
|
||||
|
||||
trap 'rm -f "$dest" "$dest-2"' EXIT
|
||||
|
||||
if ! cat "$1" | sed -e '/>8/q' | git stripspace --strip-comments > "${dest}" ; then
|
||||
echo "cannot strip comments from $1"
|
||||
exit 1
|
||||
if ! sed -e '/>8/q' "$1" | git stripspace --strip-comments > "${dest}" ; then
|
||||
echo "cannot strip comments from $1"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test ! -s "${dest}" ; then
|
||||
@@ -91,7 +90,7 @@ else
|
||||
pattern=".*"
|
||||
fi
|
||||
|
||||
if git interpret-trailers --parse < "$1" | grep -q "^$token: $pattern$" ; then
|
||||
if git interpret-trailers --no-divider --parse < "$1" | grep -q "^$token: $pattern$" ; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -99,6 +98,7 @@ fi
|
||||
# sentinel at the end to make sure there is one.
|
||||
# Avoid the --in-place option which only appeared in Git 2.8
|
||||
if ! git interpret-trailers \
|
||||
--no-divider \
|
||||
--trailer "Signed-off-by: SENTINEL" < "$1" > "$dest-2" ; then
|
||||
echo "cannot insert Signed-off-by sentinel line in $1"
|
||||
exit 1
|
||||
@@ -110,6 +110,7 @@ fi
|
||||
# Avoid the --in-place option which only appeared in Git 2.8
|
||||
# Avoid the --where option which only appeared in Git 2.15
|
||||
if ! git -c trailer.where=before interpret-trailers \
|
||||
--no-divider \
|
||||
--trailer "Signed-off-by: $token: $value" < "$dest-2" |
|
||||
sed -e "s/^Signed-off-by: \($token: \)/\1/" \
|
||||
-e "/^Signed-off-by: SENTINEL/d" > "$dest" ; then
|
||||
|
||||
+1
-3
@@ -1527,7 +1527,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/gnumach-version.patch \
|
||||
%D%/packages/patches/gnupg-default-pinentry.patch \
|
||||
%D%/packages/patches/gnupg-1-build-with-gcc10.patch \
|
||||
%D%/packages/patches/gnutls-no-which.patch \
|
||||
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
|
||||
%D%/packages/patches/gobject-introspection-cc.patch \
|
||||
%D%/packages/patches/gobject-introspection-girepository.patch \
|
||||
@@ -1967,7 +1966,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/mswebrtc-cmake.patch \
|
||||
%D%/packages/patches/mtools-mformat-uninitialized.patch \
|
||||
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
|
||||
%D%/packages/patches/musl-cross-locale.patch \
|
||||
%D%/packages/patches/musl-CVE-2026-40200.patch \
|
||||
%D%/packages/patches/mutt-store-references.patch \
|
||||
%D%/packages/patches/m17n-lib-1.8.0-use-pkg-config-for-freetype.patch \
|
||||
%D%/packages/patches/nanosvg-prusa-slicer.patch \
|
||||
@@ -2117,7 +2116,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-clarabel-blas.patch \
|
||||
%D%/packages/patches/python-daemon-relax-lockfile.patch \
|
||||
%D%/packages/patches/python-docrepr-fix-tests.patch \
|
||||
%D%/packages/patches/python-gpg-setup-72.patch \
|
||||
%D%/packages/patches/python-hdmedians-replace-nose.patch \
|
||||
%D%/packages/patches/python-jinja2-fragments-modify-conftest-py.patch \
|
||||
%D%/packages/patches/python-louvain-fix-test.patch \
|
||||
|
||||
+40
-7
@@ -144,7 +144,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
@@ -2979,7 +2979,7 @@ system is under heavy load.")
|
||||
(define-public stress-ng
|
||||
(package
|
||||
(name "stress-ng")
|
||||
(version "0.20.01")
|
||||
(version "0.21.01")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -2988,7 +2988,7 @@ system is under heavy load.")
|
||||
(commit (string-append "V" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1jkinrxh9ppv7xfii9xlisnd2679wnj4ljq12h8y0nvwrm8fkm0b"))))
|
||||
(base32 "11w8xjm53lgnxfvg286lavqjh0il3bfr1fsgyk915167r4vlabqq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
;; XXX The test suite seems to cause instability on the VisionFive 2
|
||||
@@ -4434,7 +4434,7 @@ buffers.")
|
||||
(define-public igt-gpu-tools
|
||||
(package
|
||||
(name "igt-gpu-tools")
|
||||
(version "2.3")
|
||||
(version "2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4443,7 +4443,7 @@ buffers.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vyqrsvxraib98r4i6cjmxq7nis480s2ns95v78dscygcci42i8a"))))
|
||||
(base32 "0ijvfa5wamihzbl8l29sc27ml0kmgzlld83jm5mln6bb4bvny4gs"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; many of the tests try to load kernel modules
|
||||
@@ -4461,6 +4461,7 @@ buffers.")
|
||||
libdrm
|
||||
libpciaccess
|
||||
libunwind
|
||||
pciutils
|
||||
procps
|
||||
python))
|
||||
(native-inputs
|
||||
@@ -7071,7 +7072,7 @@ network, which causes enabled computers to power on.")
|
||||
(define-public witr
|
||||
(package
|
||||
(name "witr")
|
||||
(version "0.3.1")
|
||||
(version "0.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -7080,7 +7081,7 @@ network, which causes enabled computers to power on.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03v9n4mdvqm0knqjl4s64321i5clqpmlrlkkdb87glzb9p28sg00"))))
|
||||
(base32 "06vxrgd0j2v6s4snmyviwpp66hm5zai7xca9318inhyg4jw3ngg5"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -7227,6 +7228,38 @@ has a focus on performance. It can be used as a greeter by starting
|
||||
it from @file{~/.bashrc} for example.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public zeptofetch
|
||||
(package
|
||||
(name "zeptofetch")
|
||||
(version "1.21")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.archlinux.org/gurov/zeptofetch")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1f1dm9nrp0z0prqy90csrkbk98ixp0jx76ax473qb0qsbb7ys4g7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests available.
|
||||
#:make-flags
|
||||
#~(list (string-append "PREFIX="
|
||||
#$output))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)))) ; No configure script.
|
||||
(home-page "https://gitlab.archlinux.org/gurov/zeptofetch")
|
||||
(synopsis
|
||||
"Fast, minimal system information tool for Linux.")
|
||||
(description
|
||||
"This package provides a system fetch tool, similar to
|
||||
@command{neofetch}, @command{fastfetch}, etc. It is lightweight and
|
||||
has a focus on performance.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public zzz
|
||||
(package
|
||||
(name "zzz")
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages dejagnu)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages linux)
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages linux)
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages fortran-xyz)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages dlang)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gd)
|
||||
@@ -6710,20 +6710,20 @@ meso, or continuum scale.")
|
||||
"09693dmf1scdac5pyq6qyn8b4mcipvnmc370k9a5z41z81m3dcsj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
(list
|
||||
#:test-target "test"
|
||||
#:tests? #f ; tests require access to the web
|
||||
#:make-flags
|
||||
,#~(list "CC=gcc"
|
||||
(string-append "prefix=" #$output))
|
||||
#~(list "CC=gcc"
|
||||
(string-append "prefix=" #$output))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure))))
|
||||
(inputs
|
||||
(list zlib curl))
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
;; Need for tests
|
||||
("python" ,python-2)))
|
||||
(list doxygen
|
||||
python)) ;for tests
|
||||
(home-page "https://github.com/dpryan79/libBigWig")
|
||||
(synopsis "C library for handling bigWig files")
|
||||
(description
|
||||
@@ -17839,94 +17839,99 @@ once. This package provides tools to perform Drop-seq analyses.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public pigx-rnaseq
|
||||
(package
|
||||
(name "pigx-rnaseq")
|
||||
(version "0.1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/"
|
||||
"releases/download/v" version
|
||||
"/pigx_rnaseq-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mlas0srl04mvgsyydm67gg5syijf1k2f6dy7bdqqxc70fywfd08"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:parallel-tests? #f ; not supported
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; "test.sh" runs the whole pipeline, which takes a long time and
|
||||
;; might fail due to OOM. The MultiQC is also resource intensive.
|
||||
(add-after 'unpack 'disable-resource-intensive-test
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("^ tests/test_multiqc/test.sh") "")
|
||||
(("^ test.sh") ""))))
|
||||
(add-before 'bootstrap 'autoreconf
|
||||
(lambda _
|
||||
(invoke "autoreconf" "-vif")))
|
||||
(add-before 'configure 'set-PYTHONPATH
|
||||
(lambda _
|
||||
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))
|
||||
(add-before 'check 'set-timezone
|
||||
;; The readr package is picky about timezones.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "TZ" "UTC+1")
|
||||
(setenv "TZDIR"
|
||||
(search-input-directory inputs
|
||||
"share/zoneinfo"))))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
;; Needed for tests
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(inputs
|
||||
(list coreutils
|
||||
sed
|
||||
gzip
|
||||
snakemake-7
|
||||
megadepth
|
||||
multiqc
|
||||
star-for-pigx
|
||||
hisat2
|
||||
fastp
|
||||
htseq
|
||||
samtools
|
||||
r-minimal
|
||||
r-rmarkdown
|
||||
r-genomeinfodb
|
||||
r-ggplot2
|
||||
r-ggpubr
|
||||
r-ggrepel
|
||||
r-gprofiler2
|
||||
r-deseq2
|
||||
r-dt
|
||||
r-knitr
|
||||
r-pheatmap
|
||||
r-corrplot
|
||||
r-reshape2
|
||||
r-plotly
|
||||
r-scales
|
||||
r-summarizedexperiment
|
||||
r-crosstalk
|
||||
r-tximport
|
||||
r-rtracklayer
|
||||
r-rjson
|
||||
salmon
|
||||
pandoc
|
||||
python-wrapper
|
||||
python-deeptools
|
||||
python-pyyaml))
|
||||
(native-inputs
|
||||
(list tzdata automake autoconf))
|
||||
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
|
||||
(synopsis "Analysis pipeline for RNA sequencing experiments")
|
||||
(description "PiGX RNAseq is an analysis pipeline for preprocessing and
|
||||
(let ((commit "1605b541da090e13d58dae6fed38ae8dda09f002"))
|
||||
(package
|
||||
(name "pigx-rnaseq")
|
||||
(version (git-version "0.1.1" "0" commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/BIMSBbioinfo/pigx_rnaseq/")
|
||||
(commit commit)
|
||||
(recursive? #true)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1j5c0wlasmxvz9z64yga56m2hhbybl149kknsrpvmq0v2gl31rn5"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:parallel-tests? #f ; not supported
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
;; "test.sh" runs the whole pipeline, which takes a long time and
|
||||
;; might fail due to OOM. The MultiQC is also resource intensive.
|
||||
(add-after 'unpack 'disable-resource-intensive-test
|
||||
(lambda _
|
||||
(substitute* "Makefile.am"
|
||||
(("^ tests/test_multiqc/test.sh.*") "")
|
||||
(("^ tests/test_hisat2/test.sh.*") " tests/test_hisat2/test.sh\n")
|
||||
(("^ test.sh") ""))))
|
||||
(add-before 'bootstrap 'autoreconf
|
||||
(lambda _
|
||||
(invoke "autoreconf" "-vif")))
|
||||
(add-before 'configure 'set-PYTHONPATH
|
||||
(lambda _
|
||||
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))))
|
||||
(add-before 'check 'set-timezone
|
||||
;; The readr package is picky about timezones.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "TZ" "UTC+1")
|
||||
(setenv "TZDIR"
|
||||
(search-input-directory inputs
|
||||
"share/zoneinfo"))))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
;; Needed for tests
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(inputs
|
||||
(list coreutils
|
||||
sed
|
||||
gzip
|
||||
snakemake
|
||||
megadepth
|
||||
multiqc
|
||||
star-for-pigx
|
||||
hisat2
|
||||
fastp
|
||||
htseq
|
||||
samtools
|
||||
r-minimal
|
||||
r-rmarkdown
|
||||
r-genomeinfodb
|
||||
r-ggplot2
|
||||
r-ggpubr
|
||||
r-ggrepel
|
||||
r-gprofiler2
|
||||
r-deseq2
|
||||
r-dt
|
||||
r-knitr
|
||||
r-pheatmap
|
||||
r-corrplot
|
||||
r-reshape2
|
||||
r-plotly
|
||||
r-scales
|
||||
r-summarizedexperiment
|
||||
r-crosstalk
|
||||
r-tximport
|
||||
r-rtracklayer
|
||||
r-rjson
|
||||
salmon
|
||||
pandoc
|
||||
python-wrapper
|
||||
python-deeptools
|
||||
python-pyyaml))
|
||||
(native-inputs
|
||||
(list tzdata automake autoconf))
|
||||
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
|
||||
(synopsis "Analysis pipeline for RNA sequencing experiments")
|
||||
(description "PiGX RNAseq is an analysis pipeline for preprocessing and
|
||||
reporting for RNA sequencing experiments. It is easy to use and produces high
|
||||
quality reports. The inputs are reads files from the sequencing experiment,
|
||||
and a configuration file which describes the experiment. In addition to
|
||||
quality control of the experiment, the pipeline produces a differential
|
||||
expression report comparing samples in an easily configurable manner.")
|
||||
(license license:gpl3+)))
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public pigx-chipseq
|
||||
(package
|
||||
@@ -18132,7 +18137,7 @@ methylation and segmentation.")
|
||||
python-loompy
|
||||
pandoc
|
||||
samtools
|
||||
snakemake-5
|
||||
snakemake-6
|
||||
star-for-pigx
|
||||
r-minimal
|
||||
r-argparser
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public bison
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
#:use-module (gnu packages cross-base)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages firmware)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -76,7 +76,7 @@
|
||||
#:use-module (gnu packages python-crypto)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages re2c)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages regex)
|
||||
#:use-module (gnu packages rpc)
|
||||
#:use-module (gnu packages serialization)
|
||||
|
||||
@@ -63,7 +63,6 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages perl)
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages docbook)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages fortran-xyz)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages linux)
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages perl)
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages golang-build)
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
|
||||
@@ -1,8 +1,11 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012-2014, 2019, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2024-2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017, 2020, 2021 Sergei Trofimovich <slyfox@inbox.ru>
|
||||
;;; Copyright © 2018, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
|
||||
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2022 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2024-2025 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Alexey Abramov <levenson@mmer.org>
|
||||
;;; Copyright © 2025 Anderson Torres <anderson.torres.8519@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -22,14 +25,21 @@
|
||||
|
||||
(define-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages))
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (srfi srfi-1))
|
||||
|
||||
(define-public byacc
|
||||
(package
|
||||
@@ -65,6 +75,59 @@ consist of a set of LALR(1) parsing tables and a driver routine written in the
|
||||
C programming language.")
|
||||
(license license:public-domain)))
|
||||
|
||||
(define-public flex
|
||||
(package
|
||||
(name "flex")
|
||||
(version "2.6.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/westes/flex"
|
||||
"/releases/download/v" version "/"
|
||||
"flex-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15g9bv236nzi665p9ggqjlfn4dwck5835vf0bbw2cz7h5c1swyp8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(if (%current-target-system)
|
||||
(list #:configure-flags
|
||||
#~'("ac_cv_func_malloc_0_nonnull=yes"
|
||||
"ac_cv_func_realloc_0_nonnull=yes"))
|
||||
'()))
|
||||
(native-inputs
|
||||
(list help2man
|
||||
;; m4 is not present in PATH when cross-building
|
||||
m4))
|
||||
(inputs
|
||||
(list
|
||||
(package
|
||||
(inherit bison)
|
||||
(arguments
|
||||
;; Disable tests, since they require flex.
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:tests? _ #f) #f)))
|
||||
(inputs (modify-inputs inputs
|
||||
(delete "flex"))))))
|
||||
(propagated-inputs (list m4))
|
||||
(home-page "https://github.com/westes/flex")
|
||||
(synopsis "Fast lexical analyser generator")
|
||||
(description
|
||||
"Flex is a tool for generating scanners. A scanner, sometimes
|
||||
called a tokenizer, is a program which recognizes lexical patterns in
|
||||
text. The flex program reads user-specified input files, or its standard
|
||||
input if no file names are given, for a description of a scanner to
|
||||
generate. The description is in the form of pairs of regular expressions
|
||||
and C code, called rules. Flex generates a C source file named,
|
||||
\"lex.yy.c\", which defines the function yylex(). The file \"lex.yy.c\"
|
||||
can be compiled and linked to produce an executable. When the executable
|
||||
is run, it analyzes its input for occurrences of text matching the
|
||||
regular expressions for each rule. Whenever it finds a match, it
|
||||
executes the corresponding C code.")
|
||||
(license (license:non-copyleft "file://COPYING"
|
||||
"See COPYING in the distribution."))))
|
||||
|
||||
(define-public oyacc
|
||||
(package
|
||||
(name "oyacc")
|
||||
@@ -112,3 +175,42 @@ besides libc.")
|
||||
(description
|
||||
"This package provides the @command{yacc} command, implemented as a
|
||||
symbolic link to the @command{oyacc} command from the same-named package.")))
|
||||
|
||||
(define-public re2c
|
||||
(package
|
||||
(name "re2c")
|
||||
(version "4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/skvadrik/" name
|
||||
"/releases/download/" version "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07ysqgdm0h566a8lwnpdgycp93vz7zskzihsgah3bla0ycj2pp69"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests?
|
||||
(not (or (%current-target-system)
|
||||
;; TODO: run_tests.py hangs
|
||||
(system-hurd?)))
|
||||
#:phases
|
||||
(if (target-arm32?)
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-sources
|
||||
(lambda _
|
||||
(invoke "patch" "-p1" "--force" "--input"
|
||||
#$(local-file (search-patch
|
||||
"re2c-Use-maximum-alignment.patch"))))))
|
||||
#~%standard-phases)))
|
||||
(native-inputs
|
||||
(list python)) ; for the test driver
|
||||
(home-page "https://re2c.org/")
|
||||
(synopsis "Lexer generator")
|
||||
(description
|
||||
"@code{re2c, Regular Expressions to Code} is a flexible lexical analyser.
|
||||
Instead of using traditional table-driven approaches, it encodes a finite
|
||||
state machine directly in the code in the form of jumps and comparisons.")
|
||||
(license license:public-domain)))
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
|
||||
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
|
||||
;;; Copyright © 2021, 2024-2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2021 Ahmad Jarara <git@ajarara.io>
|
||||
;;; Copyright © 2021, 2026 Ahmad Jarara <ajarara@fastmail.com>
|
||||
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
|
||||
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
|
||||
@@ -3005,17 +3005,13 @@ can append files to the end of such compressed archives.")
|
||||
"00ibddiy62kbs9wl52c35j0hbqanx6pi7lvzkpzmbsizkj8mhp1p"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
#:configure-flags
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(lib (string-append out "/lib")))
|
||||
(list
|
||||
"-DCMAKE_BUILD_TYPE=Release"
|
||||
"-DBUILD_SHARED_LIBS=ON"
|
||||
"-DCBOR_CUSTOM_ALLOC=ON"
|
||||
(string-append "-DCMAKE_INSTALL_LIBDIR=" lib)
|
||||
(string-append "-DCMAKE_INSTALL_RPATH=" lib)))))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~'("-DWITH_TESTS=ON"
|
||||
"-DBUILD_SHARED_LIBS=ON")))
|
||||
(synopsis "The C library for parsing and generating CBOR")
|
||||
(native-inputs
|
||||
(list cmocka))
|
||||
(description
|
||||
"@acronym{CBOR, The Concise Binary Object Representation} is a data format
|
||||
whose design goals include the possibility of extremely small code size, fairly
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ocaml)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
(define-module (gnu packages coreboot)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages pciutils)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system cargo)
|
||||
|
||||
@@ -1009,7 +1009,7 @@ SHA-1, SHA-2, and SHA-3, yet is at least as secure as SHA-3.")
|
||||
(define-public rhash
|
||||
(package
|
||||
(name "rhash")
|
||||
(version "1.4.3")
|
||||
(version "1.4.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1018,7 +1018,7 @@ SHA-1, SHA-2, and SHA-3, yet is at least as secure as SHA-3.")
|
||||
(file-name (string-append "rhash-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0glaghjvwh9ziiqf599v0fdr6jrgc7lcnriq0h7r41k3jrkglh0y"))))
|
||||
"0ylkxhkj4nzmb0iampn2lv7v4yw59x7dl8mdcxqcx2mfxv7ijq4z"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
|
||||
+100
-80
@@ -32,7 +32,7 @@
|
||||
;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com>
|
||||
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||
;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2018, 2021-2023, 2026 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2019 Jack Hill <jackhill@jackhill.us>
|
||||
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
|
||||
@@ -109,7 +109,7 @@
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
@@ -131,6 +131,7 @@
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages language)
|
||||
#:use-module (gnu packages libedit)
|
||||
#:use-module (gnu packages libevent)
|
||||
@@ -147,6 +148,7 @@
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages node)
|
||||
#:use-module (gnu packages onc-rpc)
|
||||
#:use-module (gnu packages openldap)
|
||||
#:use-module (gnu packages openstack)
|
||||
#:use-module (gnu packages pantheon)
|
||||
#:use-module (gnu packages parallel)
|
||||
@@ -175,6 +177,7 @@
|
||||
#:use-module (gnu packages ruby)
|
||||
#:use-module (gnu packages ruby-check)
|
||||
#:use-module (gnu packages ruby-xyz)
|
||||
#:use-module (gnu packages security-token)
|
||||
#:use-module (gnu packages serialization)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages ssh)
|
||||
@@ -1183,50 +1186,81 @@ autocompletion and syntax highlighting.")
|
||||
auto-completion and syntax highlighting.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
;; XXX When updating, check whether boost-for-mysql is still needed.
|
||||
;; It might suffice to patch ‘cmake/boost.cmake’ as done in the past.
|
||||
(define-public mysql
|
||||
(package
|
||||
(name "mysql")
|
||||
(version "5.7.33")
|
||||
(version "9.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append
|
||||
"https://dev.mysql.com/get/Downloads/MySQL-"
|
||||
"https://cdn.mysql.com/Downloads/MySQL-"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.gz")
|
||||
(string-append
|
||||
"https://downloads.mysql.com/archives/get/file/"
|
||||
name "-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1bb343mf7n0qg2qz497gxjsqprygrjz1q1pbz76hgqxnsy08sfxd"))))
|
||||
"0v9hc8yzp0f5pwl4kr1a8k7lwyf62g95klxb6avfrc2npjx79dbl"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-26)))
|
||||
(snippet
|
||||
#~(begin
|
||||
(define (delete-all-but directory . preserve)
|
||||
(with-directory-excursion directory
|
||||
(let* ((pred (negate (cut member <>
|
||||
(cons* "." ".." preserve))))
|
||||
(items (scandir "." pred)))
|
||||
(for-each (cut delete-file-recursively <>) items))))
|
||||
|
||||
;; Delete bundled source libraries.
|
||||
(delete-all-but "extra"
|
||||
;; XXX: The build system doesn't currently
|
||||
;; support unbundling these.
|
||||
"json" ;used by bundled opentelemetry
|
||||
"libbacktrace"
|
||||
"libcno"
|
||||
"opentelemetry-cpp"
|
||||
"opentelemetry-proto"
|
||||
"rapidjson"
|
||||
"unordered_dense"
|
||||
"xxhash")))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;FIXME: teach build system to use system googletest
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_CONFIG=mysql_release"
|
||||
"-DWITH_SSL=system"
|
||||
"-DWITH_ZLIB=system"
|
||||
"-DDEFAULT_CHARSET=utf8"
|
||||
"-DDEFAULT_COLLATION=utf8_general_ci"
|
||||
"-DWITH_AUTHENTICATION_LDAP=ON"
|
||||
"-DWITH_AUTHENTICATION_WEBAUTHN=ON"
|
||||
"-DWITH_BENCHMARK=OFF"
|
||||
;; XXX: BUILD_ID is disabled so that the INFO_BIN target is not
|
||||
;; run; this target relies on running mysqld before it is
|
||||
;; installed, which fails in our case.
|
||||
"-DWITH_BUILD_ID=OFF"
|
||||
"-DWITH_FIDO=system"
|
||||
"-DWITH_SYSTEM_LIBS=ON"
|
||||
"-DWITH_UNIT_TESTS=OFF" ;avoid bundled googletest
|
||||
"-DREPRODUCIBLE_BUILD=ON"
|
||||
"-DMYSQL_DATADIR=/var/lib/mysql"
|
||||
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
|
||||
"-DINSTALL_INFODIR=share/mysql/docs"
|
||||
"-DINSTALL_INFODIR=share/info"
|
||||
"-DINSTALL_MANDIR=share/man"
|
||||
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
|
||||
"-DINSTALL_SCRIPTDIR=bin"
|
||||
"-DINSTALL_INCLUDEDIR=include/mysql"
|
||||
"-DINSTALL_DOCREADMEDIR=share/mysql/docs"
|
||||
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
|
||||
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
|
||||
"-DINSTALL_MYSQLTESTDIR=OFF"
|
||||
"-DINSTALL_DOCDIR=share/mysql/docs"
|
||||
"-DINSTALL_SHAREDIR=share/mysql"
|
||||
;; Get rid of test data.
|
||||
"-DINSTALL_MYSQLTESTDIR="
|
||||
"-DINSTALL_SQLBENCHDIR=")
|
||||
"-DINSTALL_SHAREDIR=share/mysql")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'configure 'disable-broken-abi-check
|
||||
(lambda _
|
||||
;; The ABI check started failing with MySQL 9.7.0 for unknown
|
||||
;; reasons.
|
||||
(substitute* "cmake/abi_check.cmake"
|
||||
(("RUN_ABI_CHECK 1")
|
||||
"RUN_ABI_CHECK 0"))))
|
||||
(add-after 'install 'remove-extra-binaries
|
||||
(lambda _
|
||||
;; Remove the 3 *_embedded files, which weigh in at
|
||||
@@ -1253,35 +1287,51 @@ auto-completion and syntax highlighting.")
|
||||
(dirname coreutils)
|
||||
(dirname grep)
|
||||
(dirname ps)
|
||||
(dirname sed))))))))))
|
||||
(dirname sed)))))))
|
||||
(add-after 'install 'fix-permissions
|
||||
;; XXX: Otherwise, the guix daemon reports: "suspicious ownership
|
||||
;; or permission on `/gnu/store/...-mysql-9.7.0'; rejecting this
|
||||
;; build output".
|
||||
(lambda _
|
||||
(chmod #$output #o755))))))
|
||||
(native-inputs
|
||||
(list bison perl pkg-config))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
boost-for-mysql
|
||||
boost
|
||||
coreutils
|
||||
curl
|
||||
cyrus-sasl
|
||||
gawk
|
||||
grep
|
||||
icu4c
|
||||
libaio
|
||||
libedit
|
||||
libfido2
|
||||
libtirpc
|
||||
lz4
|
||||
mit-krb5
|
||||
ncurses
|
||||
openssl-1.1
|
||||
openldap
|
||||
openssl
|
||||
protobuf
|
||||
procps
|
||||
rpcsvc-proto ; rpcgen
|
||||
sed
|
||||
zlib))
|
||||
zlib
|
||||
`(,zstd "lib")))
|
||||
(home-page "https://www.mysql.com/")
|
||||
(synopsis "Fast, easy to use, and popular database")
|
||||
(description
|
||||
"MySQL is a fast, reliable, and easy to use relational database
|
||||
management system that supports the standardized Structured Query
|
||||
Language.")
|
||||
(license license:gpl2)))
|
||||
(license license:gpl2))) ;v2 only -- see 'Election of GPLv2' in LICENSE
|
||||
|
||||
(define-public mysql-connector-python
|
||||
(package
|
||||
(name "mysql-connector-python")
|
||||
(version "8.3.0")
|
||||
(version "9.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1290,66 +1340,23 @@ Language.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "18jvpnnwmfrn961rvqmsygp7dw3spf3swhxhal4hhj5hqddckj5f"))))
|
||||
(base32 "0zdm35apj1cfraxwlqfmr04pm87qpw73ilb8p88cn08zsa8q11hg"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; tests: 1371 passed
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'compatibility
|
||||
(lambda _
|
||||
(substitute* "src/mysql_capi.c"
|
||||
(("res = mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
|
||||
"res = 0;")
|
||||
(("mysql_options\\(&self->session, MYSQL_OPT_LOAD_DATA_LOCAL_DIR.*")
|
||||
"")
|
||||
(("mysql_options\\(&self->session, MYSQL_OPT_TLS_CIPHERSUITES.*")
|
||||
"")
|
||||
;; The C API does not have mysql_bind_param, so we produce an
|
||||
;; error here.
|
||||
(("status = mysql_bind_param.*") "status = 1;")
|
||||
(("#include \"mysql_capi_conversion\\.h\"" all)
|
||||
(string-append all "\n" "#include <stdbool.h>")))))
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
;; Our protobuf is too old for the mysqlx dev API, so use the
|
||||
;; classic one without the C modules.
|
||||
(chdir "mysql-connector-python")))
|
||||
(add-before 'build 'prepare-build
|
||||
(lambda _
|
||||
(setenv "MYSQL_CAPI" #$(this-package-input "mysql"))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
;; Some of these tests might be failing due to the build
|
||||
;; container's restrictions, others are due to the version
|
||||
;; mismatch.
|
||||
(substitute* "tests/cext/test_cext_api.py"
|
||||
(("def test_change_user") "def _do_not_test_change_user")
|
||||
(("def test_get_character_set_info")
|
||||
"def _do_not_test_get_character_set_info"))
|
||||
(substitute* "tests/test_bugs.py"
|
||||
(("def test_change_user") "def _do_not_test_change_user")
|
||||
(("def test_lost_connection") "def _do_not_test_lost_connection")
|
||||
(("def test_kill_query") "def _do_not_test_kill_query")
|
||||
;; These all fail because of expired certificates.
|
||||
(("def test_cext_verify_server_certificate")
|
||||
"def _do_not_test_cext_verify_server_certificate")
|
||||
(("def test_pure_verify_server_certificate")
|
||||
"def _do_not_test_pure_verify_server_certificate")
|
||||
(("def test_verify_server_name_cext_cnx")
|
||||
"def _do_not_test_verify_server_name_cext_cnx")
|
||||
(("def test_verify_server_name_pure_cnx")
|
||||
"def _do_not_test_verify_server_name_pure_cnx"))
|
||||
(substitute* '("tests/test_connection.py"
|
||||
"tests/test_aio_connection.py")
|
||||
(("def test_allow_local_infile_in_path")
|
||||
"def _do_not_test_allow_local_infile_in_path")
|
||||
;; This fails because of expired certificates.
|
||||
(("def test_connect_with_unix_socket")
|
||||
"def _do_not_test_connect_with_unix_socket"))
|
||||
(substitute* "tests/test_constants.py"
|
||||
(("def test_deprecated")
|
||||
"def _do_not_test_deprecated"))
|
||||
(mkdir-p "/tmp/datadir")
|
||||
(invoke "python3" "unittests.py"
|
||||
"--verbosity=3"
|
||||
@@ -1357,9 +1364,8 @@ Language.")
|
||||
"--keep"
|
||||
"--mysql-topdir=/tmp/datadir"
|
||||
"--unix-socket=/tmp/datadir")))))))
|
||||
(propagated-inputs (list python-protobuf))
|
||||
(inputs (list mysql protobuf-3.20 openssl-1.1 zlib))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list mysql openssl zlib `(,zstd "lib")))
|
||||
(home-page "https://dev.mysql.com/doc/connector-python/en/index.html")
|
||||
(synopsis "MySQL driver written in Python")
|
||||
(description "MySQL Connector/Python enables Python programs to access
|
||||
@@ -1666,14 +1672,14 @@ and high-availability (HA).")
|
||||
(define-public postgresql-17
|
||||
(package
|
||||
(name "postgresql")
|
||||
(version "17.7")
|
||||
(version "17.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
version "/postgresql-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1dg9labqgph2idaypb8khdvbag29pr3h4bqv5w8k7kgc08rk97pg"))
|
||||
"144cb40gn1lasvz0jvz4i72mda8k7pm1bx6azq2vggfddm8h72h7"))
|
||||
(patches (search-patches
|
||||
"postgresql-disable-normalize_exec_path.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
@@ -1736,14 +1742,14 @@ pictures, sounds, or video.")
|
||||
(package
|
||||
(inherit postgresql-17)
|
||||
(name "postgresql")
|
||||
(version "16.10")
|
||||
(version "16.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
version "/postgresql-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hib575m9x3z8c71gkcv9jsyq77d3qk7q2zgzvfy6clwrvs8b16y"))
|
||||
"0w9lgsn03m4k0v3m622v7fk3gqbfbjvwv34mrrc0i4ip4wa7gl7n"))
|
||||
(patches (search-patches
|
||||
"postgresql-disable-normalize_exec_path.patch"))))
|
||||
(arguments
|
||||
@@ -1767,14 +1773,14 @@ pictures, sounds, or video.")
|
||||
(package
|
||||
(inherit postgresql-16)
|
||||
(name "postgresql")
|
||||
(version "15.15")
|
||||
(version "15.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
version "/postgresql-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ais46b2ij38y75i1w336as03pybyndsd2pp2q8gdjq9igmsllsp"))
|
||||
"1d13qckpslfqamdmp23q3rbzxlp1rqwszylilyllpsp3gzwhvpqi"))
|
||||
(patches (search-patches
|
||||
"postgresql-disable-resolve_symlinks.patch"))))
|
||||
(native-inputs (modify-inputs native-inputs
|
||||
@@ -1787,6 +1793,7 @@ pictures, sounds, or video.")
|
||||
(inherit postgresql-15)
|
||||
(name "postgresql")
|
||||
(version "14.20")
|
||||
(replacement postgresql-14.23)
|
||||
(source (origin
|
||||
(inherit (package-source postgresql-15))
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
@@ -1795,6 +1802,19 @@ pictures, sounds, or video.")
|
||||
(base32
|
||||
"0sv45dsmyplfys6dfdjdwmrczl46s82x35xdh311nxj02q7z29vm"))))))
|
||||
|
||||
(define-public postgresql-14.23
|
||||
(package
|
||||
(inherit postgresql-14)
|
||||
(name "postgresql")
|
||||
(version "14.23")
|
||||
(source (origin
|
||||
(inherit (package-source postgresql-14))
|
||||
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
|
||||
version "/postgresql-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"19clihp73ak2p5di90jhg50lqjkkr0iy349gkki30qsl5f11cwnc"))))))
|
||||
|
||||
(define-deprecated/public postgresql-13 #f
|
||||
(package
|
||||
(inherit postgresql-14)
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cpp)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages libffi)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages python)
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
#:use-module (gnu packages code)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages digest)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gdb)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages education)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fribidi)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages kde-frameworks)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages base)
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages django)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
@@ -90,7 +90,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages embedded)
|
||||
#:use-module (gnu packages engineering)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
|
||||
+80
-39
@@ -4547,43 +4547,6 @@ boilerplate code from defining new Flymake backend functions.")
|
||||
(description "This package adds Clojure syntax checker clj-kondo.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-flymake-shellcheck
|
||||
;; No tag, version grabbed from source .el file.
|
||||
(let ((commit "ac534e9ef15c82ac86ae65fe5004d29dbc8c92c7")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-flymake-shellcheck")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/federicotdn/flymake-shellcheck")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04yfb4sy41spjzk9mhm4gy0h8vnjx09p2g6nm1yzgd9a5ph9sqgl"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'substitute-shellcheck-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(make-file-writable "flymake-shellcheck.el")
|
||||
(emacs-substitute-sexps "flymake-shellcheck.el"
|
||||
("defcustom flymake-shellcheck-path"
|
||||
`(or (executable-find "shellcheck")
|
||||
,(search-input-file inputs "bin/shellcheck")))))))))
|
||||
(inputs
|
||||
(list shellcheck))
|
||||
(home-page "https://github.com/federicotdn/flymake-shellcheck")
|
||||
(synopsis "Flymake backend for Bash/Sh powered by ShellCheck")
|
||||
(description
|
||||
"This package provides a backend for Flymake to use the
|
||||
tool ShellCheck for static analyzing @command{bash} and @command{sh}
|
||||
scripts.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-a
|
||||
(package
|
||||
(name "emacs-a")
|
||||
@@ -5303,6 +5266,39 @@ to prevent advertisers from tracking you when you open URLs (or listen to
|
||||
podcasts) in Emacs.")
|
||||
(license (list license:gpl3+)))))
|
||||
|
||||
(define-public emacs-emcp
|
||||
(let ((commit "a91016452ef73813ea4a7e84cde233176d87a97f")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-emcp")
|
||||
(version (git-version "0.1.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/martenlienen/emcp")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08wbpj95l38fsdihxhgryb74psl11agw5n9swnpf1j3qyhwa13cn"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command
|
||||
#~(list "emacs" "-Q" "-batch"
|
||||
"-l" "emcp-tests.el"
|
||||
"-f"
|
||||
"ert-run-tests-batch-and-exit")))
|
||||
(propagated-inputs
|
||||
(list emacs-elisp-refs emacs-magit emacs-http-server))
|
||||
(home-page "https://codeberg.org/martenlienen/emcp")
|
||||
(synopsis "Emacs MCP client")
|
||||
(description
|
||||
"@code{emacs-emcp} is an Emacs client for the @acronym{Model Context
|
||||
Protocol, MCP}, designed to connect LLM agents directly to Emacs.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define emacs-emms-print-metadata
|
||||
(package
|
||||
(name "emacs-emms-print-metadata")
|
||||
@@ -16794,6 +16790,51 @@ line program.")
|
||||
requests library that uses the url library.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public emacs-http-server
|
||||
(let ((commit "00e746baf4a622a7545b4af5c5237a55d51f801b")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "emacs-http-server")
|
||||
(version (git-version "0.1.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://codeberg.org/martenlienen/http-server.el")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0j7ls15ljk22qxy6hs2qzcjnbdfvrq4qwly8s6kfbczi74mw5iji"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-command
|
||||
#~(list "emacs" "-Q" "-batch"
|
||||
"-l" "http-server.el"
|
||||
"-l" "http-server-ws.el"
|
||||
"-l" "http-server-tests.el"
|
||||
"-l" "http-server-ws-tests.el"
|
||||
"--eval"
|
||||
(string-append
|
||||
"(ert-run-tests-batch-and-exit "
|
||||
"'(and (not http-server-accepts-extra-methods)
|
||||
(not http-server-rejects-unsupported-methods)))"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'build-info-manual
|
||||
(lambda _
|
||||
(invoke "makeinfo" "--no-split"
|
||||
"-o" "http-server.info" "docs/http-server.texi"))))))
|
||||
(native-inputs
|
||||
(list emacs-package-lint emacs-plz emacs-websocket texinfo))
|
||||
(home-page "https://codeberg.org/martenlienen/http-server.el")
|
||||
(synopsis "Emacs HTTP server")
|
||||
(description
|
||||
"This library implements an HTTP server inside of Emacs to communicate
|
||||
with the user or other external programs.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-rtfm-mode
|
||||
(package
|
||||
(name "emacs-rtfm-mode")
|
||||
@@ -42079,7 +42120,7 @@ add popup descriptions to existing keymaps
|
||||
(define-public emacs-forgejo
|
||||
(package
|
||||
(name "emacs-forgejo")
|
||||
(version "0.2.2")
|
||||
(version "0.2.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -42088,7 +42129,7 @@ add popup descriptions to existing keymaps
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hf4sckxdygxa84g3pi3m2qy16ngx76jsrf192q5l4fppsyirnws"))))
|
||||
"1c8s8a0hwb44jddxsrd74bh8rwaz8z5mn9ga8jmwxy7w045xfln1"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:lisp-directory "lisp"
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cross-base)
|
||||
#:use-module (gnu packages dejagnu)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gdb)
|
||||
#:use-module (gnu packages guile)
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
#:use-module (gnu packages engineering)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
|
||||
@@ -113,7 +113,7 @@
|
||||
#:use-module (gnu packages emacs-build)
|
||||
#:use-module (gnu packages emacs-xyz)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
(define-module (gnu packages esolangs)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages linux)
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages emacs-xyz)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages embedded)
|
||||
#:use-module (gnu packages flashing-tools)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
#:use-module (gnu packages electronics)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages embedded)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages golang-xyz)
|
||||
|
||||
+6
-64
@@ -1,7 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2026 Anderson Torres <anderson.torres.8519@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -19,65 +17,9 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages flex)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (srfi srfi-1))
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (guix deprecation))
|
||||
|
||||
(define-public flex
|
||||
(package
|
||||
(name "flex")
|
||||
(version "2.6.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/westes/flex"
|
||||
"/releases/download/v" version "/"
|
||||
"flex-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15g9bv236nzi665p9ggqjlfn4dwck5835vf0bbw2cz7h5c1swyp8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(let ((bison-for-tests
|
||||
(package
|
||||
(inherit bison)
|
||||
(arguments
|
||||
;; Disable tests, since they require flex.
|
||||
(substitute-keyword-arguments arguments
|
||||
((#:tests? _ #f) #f)))
|
||||
(inputs (alist-delete "flex" (package-inputs bison))))))
|
||||
`(("bison" ,bison-for-tests))))
|
||||
(arguments
|
||||
(if (%current-target-system)
|
||||
(list #:configure-flags
|
||||
#~'("ac_cv_func_malloc_0_nonnull=yes"
|
||||
"ac_cv_func_realloc_0_nonnull=yes"))
|
||||
'()))
|
||||
;; m4 is not present in PATH when cross-building
|
||||
(native-inputs
|
||||
(list help2man m4))
|
||||
(propagated-inputs (list m4))
|
||||
(home-page "https://github.com/westes/flex")
|
||||
(synopsis "Fast lexical analyser generator")
|
||||
(description
|
||||
"Flex is a tool for generating scanners. A scanner, sometimes
|
||||
called a tokenizer, is a program which recognizes lexical patterns in
|
||||
text. The flex program reads user-specified input files, or its standard
|
||||
input if no file names are given, for a description of a scanner to
|
||||
generate. The description is in the form of pairs of regular expressions
|
||||
and C code, called rules. Flex generates a C source file named,
|
||||
\"lex.yy.c\", which defines the function yylex(). The file \"lex.yy.c\"
|
||||
can be compiled and linked to produce an executable. When the executable
|
||||
is run, it analyzes its input for occurrences of text matching the
|
||||
regular expressions for each rule. Whenever it finds a match, it
|
||||
executes the corresponding C code.")
|
||||
(license (non-copyleft "file://COPYING"
|
||||
"See COPYING in the distribution."))))
|
||||
;; XXX: Deprecated on 2026-05-28.
|
||||
(define-deprecated/public-alias flex
|
||||
(@ (gnu packages compiler-tools) flex))
|
||||
|
||||
+30
-6
@@ -335,14 +335,14 @@ mediums.")
|
||||
(version "4.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rsms/inter")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/rsms/inter/releases/download/"
|
||||
"v" version "/Inter-" version ".zip"))
|
||||
(sha256
|
||||
(base32 "1g54vl3jkpan0s1mzrb1s8zjqzy9787ffjg9sfy6yjy4k3qg8xhx"))))
|
||||
(base32 "07miarbl5ain7pg7sxlrb2j4m9prbriacyqpv1mvckwxlkagv0wq"))))
|
||||
(build-system font-build-system)
|
||||
(outputs '("out" "ttf" "woff"))
|
||||
(home-page "https://rsms.me/inter")
|
||||
(synopsis "Variable font family optimized for screen readability")
|
||||
(description
|
||||
@@ -400,6 +400,30 @@ Lisnoti is available in regular, italic, bold and bold-italic
|
||||
variants.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
(define-public font-literata
|
||||
(package
|
||||
(name "font-literata")
|
||||
(version "3.103")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/googlefonts/literata")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nnr5y6fz7da06ihinmna2a1g79q8l41bgr62l6jpl43p1dw93dn"))))
|
||||
(build-system font-build-system)
|
||||
(outputs (list "out" "woff"))
|
||||
(home-page "https://github.com/googlefonts/literata")
|
||||
(synopsis "Contemporary serif typeface for long-form reading")
|
||||
(description
|
||||
"Literata is a serif screen font family. It was conceived for intensive
|
||||
editorial use, especially on screens of all sorts. Its main potential is in
|
||||
digital publishing, whether on the web, electronic press, or mobile
|
||||
applications.")
|
||||
(license license:silofl1.1)))
|
||||
|
||||
(define-public font-inconsolata
|
||||
(package
|
||||
(name "font-inconsolata")
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages fribidi)
|
||||
|
||||
@@ -144,7 +144,7 @@
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages emulators)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
@@ -6959,7 +6959,7 @@ tactics.")
|
||||
(define-public widelands
|
||||
(package
|
||||
(name "widelands")
|
||||
(version "1.3")
|
||||
(version "1.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -6968,7 +6968,7 @@ tactics.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1j288rkflqmzxbacrrx35y8qm4mvbvd30c03cmkvh8b29jkgz3gp"))
|
||||
(base32 "0ab9s1imqdq1krfwlba1ipx3pwnvy91aqqzr15ssfzixy4wj5mww"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(delete-file-recursively "src/third_party/minizip"))))
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages cross-base)
|
||||
#:use-module (gnu packages dejagnu)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages hurd)
|
||||
#:use-module (gnu packages llvm)
|
||||
|
||||
@@ -91,7 +91,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages enlightenment)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gnome)
|
||||
|
||||
@@ -136,7 +136,7 @@
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages enchant)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages file-systems)
|
||||
#:use-module (gnu packages firmware)
|
||||
|
||||
@@ -324,7 +324,7 @@ applications and libraries. It is used by AqBanking.")
|
||||
(define-public aqbanking
|
||||
(package
|
||||
(name "aqbanking")
|
||||
(version "6.8.5")
|
||||
(version "6.9.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -333,7 +333,7 @@ applications and libraries. It is used by AqBanking.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1xqhhxhr1azqvdn47389h469d3srl5l3n1nx82jx2djbx9sdzdq9"))
|
||||
"1n1867vdml71p9dbcx70rmf10b12l7l0vq847bbizrkq7b0ha8w0"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
+172
-114
@@ -27,6 +27,7 @@
|
||||
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
|
||||
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
|
||||
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
|
||||
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -82,6 +83,7 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system copy)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
@@ -237,7 +239,7 @@ generation.")
|
||||
(define-public libassuan
|
||||
(package
|
||||
(name "libassuan")
|
||||
(version "3.0.1")
|
||||
(version "3.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -245,7 +247,7 @@ generation.")
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ccly6aqyxv3hgshhls6qw177salcrawp0x4lsqs9ph3c4pg9w68"))))
|
||||
"1xin9h3vhx94j5w9p7xi3csmw1a6yfif2w4r1x8k7rk6sbd1r4yj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments (if (%current-target-system)
|
||||
(list #:configure-flags
|
||||
@@ -267,7 +269,7 @@ provided.")
|
||||
(define-public libksba
|
||||
(package
|
||||
(name "libksba")
|
||||
(version "1.6.7")
|
||||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -276,7 +278,7 @@ provided.")
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qxpmadxggx5808326i9g4ya0xrnv14mfxpg7rlvckmviq5m2wng"))))
|
||||
"14lj3ld4nxf916kq01z0203x36nhgymxf0j222mg4jap16wrssr9"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
(list libgpg-error))
|
||||
@@ -434,16 +436,16 @@ libskba (working with X.509 certificates and CMS data).")
|
||||
(substitute* "checks/Makefile.in"
|
||||
(("/bin/sh") (which "sh"))))))))))
|
||||
|
||||
(define-public gpgme
|
||||
(define-public gpgme-2
|
||||
(package
|
||||
(name "gpgme")
|
||||
(version "1.24.1")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/gpgme/gpgme-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0px87fbp90xp8vf1wms02flk14zmrqsfr135f5his1kiiqjx01ga"))))
|
||||
(base32 "0azrddb51c423il7xdqcrahvi8fyhblvvs7hzgs5jqn27yjmw744"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -455,7 +457,7 @@ libskba (working with X.509 certificates and CMS data).")
|
||||
(propagated-inputs
|
||||
;; As required by the pkg-config's Requires.private.
|
||||
(list libgpg-error libassuan))
|
||||
(home-page "https://www.gnupg.org/related_software/gpgme/")
|
||||
(home-page "https://gnupg.org/software/gpgme/index.html")
|
||||
(synopsis "Library providing simplified access to GnuPG functionality")
|
||||
(description
|
||||
"GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG
|
||||
@@ -469,57 +471,107 @@ instead. This way bug fixes or improvements can be done at a central place
|
||||
and every application benefits from this.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public gpgme-1
|
||||
(package
|
||||
(inherit gpgme-2)
|
||||
(version "1.24.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/gpgme/gpgme-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0px87fbp90xp8vf1wms02flk14zmrqsfr135f5his1kiiqjx01ga"))))))
|
||||
|
||||
(define-public gpgme gpgme-1)
|
||||
|
||||
(define-public gpgmepp
|
||||
(package
|
||||
(name "gpgmepp")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/gpgmepp/gpgmepp-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1qhn583cbi67694m3bg77ckb892in2f16src2x5m0102ix309y2p"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; FIXME: BUILD_TESTING variable is enabled by deault, but still no tests
|
||||
;; are found.
|
||||
#:tests? #f))
|
||||
(propagated-inputs
|
||||
;; As required by the pkg-config's Requires.private.
|
||||
(list gpgme-2 libgpg-error))
|
||||
(home-page "https://gnupg.org/software/gpgme/index.html")
|
||||
(synopsis "C++ bindings/wrapper for GPGME")
|
||||
(description
|
||||
"GPGME++ is a C++ wrapper (or C++ bindings) for the GnuPG project's
|
||||
@acronym{GPGME, GnuPG Made Easy} library.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public qgpgme-qt5
|
||||
(package
|
||||
(inherit gpgme)
|
||||
(name "qgpgme-qt5")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/qgpgme/qgpgme-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1bb198dk49bd7yx4cf4w07acjhllilx1nczdna7139ncflj5nr0m"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'chdir-and-symlink
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((gpgme (assoc-ref inputs "gpgme")))
|
||||
(symlink (string-append gpgme "/lib/libgpgmepp.la")
|
||||
"lang/cpp/src/libgpgmepp.la")
|
||||
(symlink (string-append gpgme "/lib/libgpgme.la")
|
||||
"src/libgpgme.la"))
|
||||
(chdir "lang/qt"))))))
|
||||
(propagated-inputs (list gpgme)) ;required by QGpgmeConfig.cmake
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'check-setup
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
(invoke "gpg-agent" "--daemon"))))))
|
||||
(propagated-inputs
|
||||
(list gpgme-2 ;for FindGpgme.cmake and QGpgmeQt6Config.cmake
|
||||
gpgmepp ;for QGpgmeQt6Config.cmake
|
||||
libgpg-error)) ;for FindLibGpgError.cmake and QGpgmeQt6Config.cmake
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(prepend pkg-config)))
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(prepend qtbase-5)))
|
||||
(list gnupg ;for tests
|
||||
pkg-config))
|
||||
(home-page "https://gnupg.org/software/gpgme/index.html")
|
||||
(synopsis "Qt API bindings for gpgme")
|
||||
(description "QGpgme provides a very high level Qt API around GpgMEpp.
|
||||
|
||||
QGpgME was originally developed as part of libkleo and incorporated into
|
||||
gpgpme starting with version 1.7.")
|
||||
(license license:gpl2+))) ;; Note: this differs from gpgme
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public qgpgme
|
||||
(package
|
||||
(inherit gpgme)
|
||||
(name "qgpgme")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/qgpgme/qgpgme-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "024gdw8i5ibmq0bjjf6znhxw93chh1j21dr25m0gk9z4xsrzwcjv"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'chdir-and-symlink
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((gpgme (assoc-ref inputs "gpgme")))
|
||||
(symlink (string-append gpgme "/lib/libgpgmepp.la")
|
||||
"lang/cpp/src/libgpgmepp.la")
|
||||
(symlink (string-append gpgme "/lib/libgpgme.la")
|
||||
"src/libgpgme.la"))
|
||||
(chdir "lang/qt"))))))
|
||||
(propagated-inputs (list gpgme)) ;required by QGpgmeConfig.cmake
|
||||
(list
|
||||
#:qtbase qtbase
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'check-setup
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
(invoke "gpg-agent" "--daemon"))))))
|
||||
(propagated-inputs
|
||||
(list gpgme-2 ;for FindGpgme.cmake and QGpgmeQt6Config.cmake
|
||||
gpgmepp ;for QGpgmeQt6Config.cmake
|
||||
libgpg-error)) ;for FindLibGpgError.cmake and QGpgmeQt6Config.cmake
|
||||
(native-inputs
|
||||
(modify-inputs native-inputs
|
||||
(prepend pkg-config)))
|
||||
(inputs
|
||||
(modify-inputs inputs
|
||||
(prepend qtbase)))
|
||||
(list gnupg ;for tests
|
||||
pkg-config))
|
||||
(home-page "https://gnupg.org/software/gpgme/index.html")
|
||||
(synopsis "Qt API bindings for gpgme")
|
||||
(description "QGpgme provides a very high level Qt API around GpgMEpp.")
|
||||
(license license:gpl2+)))
|
||||
@@ -583,21 +635,20 @@ interface (FFI) of Guile.")
|
||||
(define-public python-gpg
|
||||
(package
|
||||
(name "python-gpg")
|
||||
(version "1.10.0")
|
||||
(version "2.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "gpg" version))
|
||||
(patches (search-patches "python-gpg-setup-72.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ji3ynhp36m1ccx7bmaq75dhij9frpn19v9mpi4aajn8csl194il"))))
|
||||
"0f2l0iyc8gp49i604c5wpliaa1dsyj0i0p9xc9zfj4z7fwaavdsf"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No test suite.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'set-environment
|
||||
(add-before 'build 'patch-setup.py
|
||||
(lambda _
|
||||
;; GPGME is built with large file support, so we need to set
|
||||
;; _FILE_OFFSET_BITS to 64 in all users of the GPGME library.
|
||||
@@ -607,9 +658,16 @@ interface (FFI) of Guile.")
|
||||
"extra_macros = { \"_FILE_OFFSET_BITS\": 64 }")))
|
||||
#~())
|
||||
(substitute* "setup.py"
|
||||
(("cc") (which "gcc"))))))))
|
||||
(("cc") (which "gcc"))
|
||||
(("\\/usr\\/lib\\/x86_64-linux-gnu( -lgpg-error)" _ keep)
|
||||
(string-append #$(this-package-input "libgpg-error") "/lib"
|
||||
keep))
|
||||
(("\\/usr\\/lib\\/x86_64-linux-gnu( -lgpgme)" _ keep)
|
||||
(string-append #$(this-package-input "gpgme") "/lib" keep))
|
||||
(("\\/usr\\/local(', 'include', 'gpgme\\.h')" _ keep)
|
||||
(string-append #$(this-package-input "gpgme") keep))))))))
|
||||
(inputs
|
||||
(list gpgme))
|
||||
(list gpgme-2 libgpg-error))
|
||||
(native-inputs
|
||||
(list swig-4.0 python-setuptools))
|
||||
(home-page (package-home-page gpgme))
|
||||
@@ -693,14 +751,14 @@ and signature functionality from Python programs.")
|
||||
(define-public perl-gnupg-interface
|
||||
(package
|
||||
(name "perl-gnupg-interface")
|
||||
(version "1.05")
|
||||
(version "1.06")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/B/BP/BPS/"
|
||||
"GnuPG-Interface-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ig0ra2s1v2rw2ikm1hd0iwf2phhcr8kbc90jhr8kdpvlkymshsl"))))
|
||||
"07946rsmz0ibasd53l4qiwg0dl1h65p8byja4d7fiflxsklxccs4"))))
|
||||
(build-system perl-build-system)
|
||||
(inputs
|
||||
(list gnupg))
|
||||
@@ -764,7 +822,7 @@ parties.")
|
||||
(define-public signing-party
|
||||
(package
|
||||
(name "signing-party")
|
||||
(version "2.11")
|
||||
(version "2.12")
|
||||
(home-page "https://salsa.debian.org/signing-party-team/signing-party")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@@ -774,7 +832,7 @@ parties.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1aig5ssabzbk4mih7xd04vgr931bw0flbi8dz902wlr610gyv5s5"))))
|
||||
"1a4x02rcs5ryvfnhb6naiwc5jsil5k1fh8b01fkijkbzbh54qjc5"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
;; autoconf-wrapper is required due to the non-standard
|
||||
@@ -788,56 +846,57 @@ parties.")
|
||||
perl-net-idn-encode
|
||||
libmd))
|
||||
(arguments
|
||||
`(#:tests? #f ; no test suite
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "keyanalyze/Makefile"
|
||||
(("LDLIBS") (string-append "CC=" (which "gcc") "\nLDLIBS")))
|
||||
(substitute* "keyanalyze/Makefile"
|
||||
(("\\./configure") (string-append "./configure --prefix=" out)))
|
||||
(substitute* "gpgwrap/Makefile"
|
||||
(("\\} clean")
|
||||
(string-append "} clean\ninstall:\n\tinstall -D bin/gpgwrap "
|
||||
out "/bin/gpgwrap\n")))
|
||||
(substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile"
|
||||
"keylookup/Makefile" "sig2dot/Makefile"
|
||||
"springgraph/Makefile")
|
||||
(("/usr") out))
|
||||
(setenv "CONFIG_SHELL" (which "sh")))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys #:rest args)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(install (assoc-ref %standard-phases 'install)))
|
||||
(apply install args)
|
||||
(for-each
|
||||
(lambda (dir file)
|
||||
(copy-file (string-append dir "/" file)
|
||||
(string-append out "/bin/" file)))
|
||||
'("caff" "caff" "caff" "gpgdir" "gpg-key2ps"
|
||||
"gpglist" "gpg-mailkeys" "gpgparticipants")
|
||||
'("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps"
|
||||
"gpglist" "gpg-mailkeys" "gpgparticipants"))
|
||||
(for-each
|
||||
(lambda (dir file)
|
||||
(copy-file (string-append dir "/" file)
|
||||
(string-append out "/share/man/man1/" file)))
|
||||
'("caff" "caff" "caff" "gpgdir"
|
||||
"gpg-key2ps" "gpglist" "gpg-mailkeys"
|
||||
"gpgparticipants" "gpgsigs" "gpgwrap/doc"
|
||||
"keyanalyze" "keyanalyze/pgpring" "keyanalyze")
|
||||
'("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1"
|
||||
"gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1"
|
||||
"gpgparticipants.1" "gpgsigs.1" "gpgwrap.1"
|
||||
"process_keys.1" "pgpring.1" "keyanalyze.1")))))
|
||||
(add-after 'install 'wrap-programs
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out")))
|
||||
(wrap-program
|
||||
(string-append out "/bin/caff")
|
||||
`("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))))))))))
|
||||
(list #:tests? #f ; no test suite
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
(substitute* "keyanalyze/Makefile"
|
||||
(("LDLIBS")
|
||||
(string-append "CC=" (which "gcc") "\nLDLIBS")))
|
||||
(substitute* "keyanalyze/Makefile"
|
||||
(("\\./configure")
|
||||
(string-append "./configure --prefix=" #$output)))
|
||||
(substitute* "gpgwrap/Makefile"
|
||||
(("\\} clean")
|
||||
(string-append
|
||||
"} clean\ninstall:\n\tinstall -D bin/gpgwrap "
|
||||
#$output "/bin/gpgwrap\n")))
|
||||
(substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile"
|
||||
"keylookup/Makefile" "sig2dot/Makefile"
|
||||
"springgraph/Makefile")
|
||||
(("/usr") #$output))
|
||||
(setenv "CONFIG_SHELL" (which "sh"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key #:allow-other-keys #:rest args)
|
||||
(let ((install (assoc-ref %standard-phases 'install)))
|
||||
(apply install args)
|
||||
(for-each
|
||||
(lambda (dir file)
|
||||
(copy-file (string-append dir "/" file)
|
||||
(string-append #$output "/bin/" file)))
|
||||
'("caff" "caff" "caff" "gpgdir" "gpg-key2ps"
|
||||
"gpglist" "gpg-mailkeys" "gpgparticipants")
|
||||
'("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps"
|
||||
"gpglist" "gpg-mailkeys" "gpgparticipants"))
|
||||
(for-each
|
||||
(lambda (dir file)
|
||||
(copy-file
|
||||
(string-append dir "/" file)
|
||||
(string-append #$output "/share/man/man1/" file)))
|
||||
'("caff" "caff" "caff" "gpgdir"
|
||||
"gpg-key2ps" "gpglist" "gpg-mailkeys"
|
||||
"gpgparticipants" "gpgsigs" "gpgwrap/doc"
|
||||
"keyanalyze" "keyanalyze/pgpring" "keyanalyze")
|
||||
'("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1"
|
||||
"gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1"
|
||||
"gpgparticipants.1" "gpgsigs.1" "gpgwrap.1"
|
||||
"process_keys.1" "pgpring.1" "keyanalyze.1")))))
|
||||
(add-after 'install 'wrap-programs
|
||||
(lambda _
|
||||
(wrap-program
|
||||
(string-append #$output "/bin/caff")
|
||||
`("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))))))
|
||||
(synopsis "Collection of scripts for simplifying gnupg key signing")
|
||||
(description
|
||||
"Signing-party is a collection for all kinds of PGP/GnuPG related things,
|
||||
@@ -1149,25 +1208,24 @@ however, pgpdump produces more detailed and easier to understand output.")
|
||||
(define-public gpa
|
||||
(package
|
||||
(name "gpa")
|
||||
(version "0.11.0")
|
||||
(version "0.11.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/gpa/"
|
||||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1k1kvxffyb4nm83yp3mnx9bfmcciwb7vfw8c3xscnh85yxdzma16"))))
|
||||
"02sx9my3s4yjxzxzs8pfif8wvpjrjsh75wwa5mxd0h867v6v5i8b"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("CFLAGS=-Wno-implicit-function-declaration")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gnupg (assoc-ref inputs "gnupg")))
|
||||
(wrap-program (string-append out "/bin/gpa")
|
||||
`("PATH" ":" prefix (,(string-append gnupg "/bin"))))))))))
|
||||
(list #:make-flags #~(list "CFLAGS=-Wno-implicit-function-declaration")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((gnupg (assoc-ref inputs "gnupg")))
|
||||
(wrap-program (string-append #$output "/bin/gpa")
|
||||
`("PATH" ":" prefix (,(string-append gnupg "/bin"))))))))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs
|
||||
(list bash-minimal
|
||||
|
||||
@@ -55,7 +55,7 @@
|
||||
#:use-module (gnu packages cran)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gd)
|
||||
#:use-module (gnu packages graphics)
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages ruby-xyz)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages netpbm)
|
||||
#:use-module (gnu packages perl)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gperf)
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
#:use-module (gnu packages debian)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages m4)
|
||||
|
||||
@@ -38,7 +38,7 @@
|
||||
#:use-module (gnu packages cross-base)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages bison)
|
||||
|
||||
@@ -72,7 +72,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages engineering)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages game-development)
|
||||
#:use-module (gnu packages gcc)
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages engineering)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -58,7 +58,7 @@
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages ebook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gl)
|
||||
@@ -4540,7 +4540,7 @@ to separate the structure of documents from the data they contain.")
|
||||
(native-inputs
|
||||
(list extra-cmake-modules kdoctools pkg-config))
|
||||
(inputs
|
||||
(list gpgme
|
||||
(list gpgme-2
|
||||
kauth
|
||||
kcodecs
|
||||
kconfig
|
||||
@@ -4585,7 +4585,7 @@ the passwords on KDE work spaces.")
|
||||
(native-inputs
|
||||
(list extra-cmake-modules kdoctools-5))
|
||||
(inputs
|
||||
(list gpgme
|
||||
(list gpgme-2
|
||||
kauth-5
|
||||
kcodecs-5
|
||||
kconfig-5
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
#:use-module (gnu packages djvu)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages ebook)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages fribidi)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#:use-module (gnu packages cyrus-sasl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages geo)
|
||||
#:use-module (gnu packages glib)
|
||||
@@ -581,7 +581,7 @@ PIM data into Akonadi for use in KDE PIM applications.")
|
||||
akonadi-mime
|
||||
boost
|
||||
breeze-icons
|
||||
gpgme
|
||||
gpgme-2
|
||||
grantleetheme
|
||||
kcmutils
|
||||
kcontacts
|
||||
@@ -785,7 +785,7 @@ information.")
|
||||
akonadi-mime
|
||||
akonadi-search
|
||||
boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
grantleetheme
|
||||
kcalendarcore
|
||||
kcmutils
|
||||
@@ -1552,7 +1552,7 @@ protocol for querying and modifying directory services running over TCP/IP.")
|
||||
kdoctools))
|
||||
(inputs
|
||||
(list boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
kcmutils
|
||||
kcodecs
|
||||
kconfig
|
||||
@@ -1614,7 +1614,7 @@ and retrieving certificates from LDAP servers.")
|
||||
akonadi-mime
|
||||
akonadi-search
|
||||
boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
grantleetheme
|
||||
kaddressbook
|
||||
kbookmarks
|
||||
@@ -1788,7 +1788,7 @@ KMail.")
|
||||
(inputs
|
||||
(list akonadi-contacts
|
||||
boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
grantleetheme
|
||||
karchive
|
||||
kcodecs
|
||||
@@ -1972,7 +1972,7 @@ using a Qt/KMime C++ API.")
|
||||
(list akonadi-contacts
|
||||
akonadi-search
|
||||
boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
grantleetheme
|
||||
karchive
|
||||
kcalendarcore
|
||||
@@ -2634,7 +2634,7 @@ various Google services.")
|
||||
(list extra-cmake-modules kdoctools qttools))
|
||||
(inputs
|
||||
(list boost
|
||||
gpgme
|
||||
gpgme-2
|
||||
kcodecs
|
||||
kcompletion
|
||||
kconfig
|
||||
@@ -2648,7 +2648,7 @@ various Google services.")
|
||||
kpimtextedit
|
||||
qgpgme))
|
||||
(propagated-inputs
|
||||
(list gpgme qgpgme))
|
||||
(list gpgme-2 qgpgme))
|
||||
(arguments
|
||||
(list
|
||||
#:qtbase qtbase
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages apr)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages code)
|
||||
|
||||
@@ -344,7 +344,7 @@ your computer.")
|
||||
"02g9k51srrqslapjxzcymnmy9v1frv9pkgg8wmf6d0607hwkaff5"))))
|
||||
(build-system qt-build-system)
|
||||
(native-inputs (list extra-cmake-modules))
|
||||
(inputs (list gpgme
|
||||
(inputs (list gpgme-2
|
||||
kauth
|
||||
karchive
|
||||
kcoreaddons
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages qt))
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages c)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
|
||||
@@ -60,14 +60,14 @@ Java libraries.")
|
||||
(define-public libidn2
|
||||
(package
|
||||
(name "libidn2")
|
||||
(version "2.3.7")
|
||||
(version "2.3.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libidn/" name "-" version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r3xzmmrx4hsc53jdncd5yqmkwzjgc4vh4hfkndm3f8hns8sf8ac"))))
|
||||
"0ykqq39yacg9vvf2alyl5sskbfr531dmzwrgyzhj25hpyqdr2mzm"))))
|
||||
(inputs
|
||||
(list libunistring))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
@@ -59,7 +59,7 @@
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages game-development)
|
||||
|
||||
@@ -125,14 +125,14 @@
|
||||
;; ex:
|
||||
;; tar xf /gnu/store/...-firefox-123.4.source.tar.xz -O \
|
||||
;; firefox-123.4/browser/locales/l10n-changesets.json | grep revision
|
||||
(let ((commit "a8799feda04a221a2c552576501975662c5350bb"))
|
||||
(let ((commit "a867076ab29cc0777b14d0448707629cdb825d81"))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mozilla-l10n/firefox-l10n.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "firefox-l10n" commit))
|
||||
(sha256 (base32 "1625rh1w5fdq6nl7fpwgiln29hkqcj0zksmnwcfj34y5cvhwrq2z")))))
|
||||
(sha256 (base32 "1j6gzzq1y5nx7iv3p173fmc4b87d5lwb0hnaiq1lmc6ryjnzk3wm")))))
|
||||
|
||||
(define* (make-librewolf-source #:key version firefox-hash librewolf-hash l10n)
|
||||
(let* ((ff-src (firefox-source-origin
|
||||
@@ -244,17 +244,17 @@
|
||||
;; It's used for cache validation and therefore can lead to strange bugs.
|
||||
;; ex: date '+%Y%m%d%H%M%S'
|
||||
;; or: (format-time-string "%Y%m%d%H%M%S")
|
||||
(define %librewolf-build-id "20260524201108")
|
||||
(define %librewolf-build-id "20260527211539")
|
||||
|
||||
(define-public librewolf
|
||||
(package
|
||||
(name "librewolf")
|
||||
(version "151.0.1-2")
|
||||
(version "151.0.2-1")
|
||||
(source
|
||||
(make-librewolf-source
|
||||
#:version version
|
||||
#:firefox-hash "1h440pkdqkx3085ij9nz9n9h1b6c2p92bg3lf983my6b711f62m8"
|
||||
#:librewolf-hash "1hy4p1336igy8p73hrgvmv7krbr15ap9ain79n340d3sapqkhbg8"
|
||||
#:firefox-hash "1j7q00fwdijvg5b01jmadhqabwmwdcqd15srmkbqsqgjk5vjdi33"
|
||||
#:librewolf-hash "0fm11phcpp2xggwdhdl044f4a015adg8bplw4cj0in5hq1zqkbi2"
|
||||
#:l10n firefox-l10n))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gnunet)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages libftdi)
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages linux)
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages cyrus-sasl)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages geo)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages kerberos)
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages pretty-print)
|
||||
#:use-module (gnu packages rdf)
|
||||
#:use-module (gnu packages re2c)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages rsync)
|
||||
#:use-module (gnu packages ssh)
|
||||
|
||||
@@ -210,7 +210,7 @@ representations and sentence classification.")
|
||||
(define-public ggml
|
||||
(package
|
||||
(name "ggml")
|
||||
(version "0.12.0") ;sync with llama.cpp
|
||||
(version "0.13.0") ;sync with llama.cpp
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -219,12 +219,12 @@ representations and sentence classification.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "19y1id0j2slbfrjb4ycjvqisa3sfvpngpc1r3z1bmv3z9kbkj6n6"))))
|
||||
(base32 "089lxkq086s520700hs962i89nvh4j1gr5fdj1md7fixx7v7yiy9"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list #$(string-append "-DGGML_BUILD_NUMBER=" version)
|
||||
#~(list #$(string-append "-DGGML_BUILD_COMMIT=" version)
|
||||
"-DBUILD_SHARED_LIBS_DEFAULT=ON"
|
||||
"-DGGML_BACKEND_DL=ON"
|
||||
(string-append "-DGGML_BACKEND_DIR="
|
||||
@@ -872,7 +872,7 @@ NumPy @code{dtype} extensions used in machine learning libraries, including:
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public llama-cpp
|
||||
(let ((tag "9276")) ;sync with ggml and python-gguf
|
||||
(let ((tag "9353")) ;sync with ggml and python-gguf
|
||||
(package
|
||||
(name "llama-cpp")
|
||||
(version (string-append "0.0.0-" tag))
|
||||
@@ -884,7 +884,7 @@ NumPy @code{dtype} extensions used in machine learning libraries, including:
|
||||
(commit (string-append "b" tag))))
|
||||
(file-name (git-file-name name tag))
|
||||
(sha256
|
||||
(base32 "07f23yiy2q0xrpfbkcvn9gs2adb3zmqyllih0kqklxa7vvmsmw1r"))))
|
||||
(base32 "0f942ngvkbk36763kmf3pvfy4hkqy4k806dnhs0mvs2l3gkxw6a1"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -897,16 +897,27 @@ NumPy @code{dtype} extensions used in machine learning libraries, including:
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON"
|
||||
"-DLLAMA_USE_SYSTEM_GGML=ON"
|
||||
#$(string-append "-DLLAMA_BUILD_NUMBER=" tag)
|
||||
;; See https://github.com/ggml-org/llama.cpp/issues/23105
|
||||
"-DLLAMA_BUILD_UI=OFF")
|
||||
#$(string-append "-DLLAMA_BUILD_NUMBER=" tag))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; See :
|
||||
;; llama.cpp/issues/23105#issuecomment-4531264818
|
||||
(add-before 'build 'get-ui
|
||||
(lambda _
|
||||
(with-directory-excursion "tools/ui"
|
||||
(copy-file #$(this-package-input "ui.tar.gz") "ui.tar.gz")
|
||||
(invoke "tar" "xvf" "ui.tar.gz")
|
||||
(rename-file "llama-b9353" "dist"))))
|
||||
(add-after 'unpack 'fix-tests
|
||||
(lambda _
|
||||
;; test-thread-safety downloads ML model from network,
|
||||
;; cannot run in Guix build environment
|
||||
(substitute* '("tests/CMakeLists.txt")
|
||||
(("llama_build_and_test\\(test-save-load-state.cpp.*")
|
||||
"")
|
||||
(("set_tests_properties\\(test-save-load-state.*")
|
||||
"")
|
||||
|
||||
(("llama_build_and_test\\(test-thread-safety.cpp.*")
|
||||
"")
|
||||
(("set_tests_properties\\(test-thread-safety.*")
|
||||
@@ -946,7 +957,16 @@ NumPy @code{dtype} extensions used in machine learning libraries, including:
|
||||
(for-each delete-file
|
||||
(find-files (string-append #$output "/bin")
|
||||
"^test-")))))))
|
||||
(inputs (list ggml openssl))
|
||||
(inputs
|
||||
(list ggml openssl
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(format #f "~a/releases/download/b~a/llama-b~a-ui.tar.gz"
|
||||
"https://github.com/ggml-org/llama.cpp" tag tag))
|
||||
(file-name "ui.tar.gz")
|
||||
(sha256
|
||||
(base32 "1rqgq5nfw0wbym3gz2ivhrpl69b4fpl6my6nnnr1cbdd6x1mvz44")))))
|
||||
(native-inputs
|
||||
;; These are only used in the check phase for test-jinja-py
|
||||
(list python-minimal-wrapper python-jinja2))
|
||||
|
||||
@@ -117,7 +117,7 @@
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages enchant)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gettext)
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages fabric-management)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages libevent)
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages texinfo)
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages fltk)
|
||||
#:use-module (gnu packages fonts)
|
||||
#:use-module (gnu packages fontutils)
|
||||
|
||||
@@ -31,14 +31,16 @@
|
||||
(define-public musl
|
||||
(package
|
||||
(name "musl")
|
||||
(version "1.2.5")
|
||||
(version "1.2.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.musl-libc.org/releases/"
|
||||
"musl-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1r3mgky9d19b2285s274qxzlgs7sncx8plm01vd691sdx2xii8d9"))))
|
||||
"0ajic0jgiyfk2sk3brn1wsshq0kp9za8x7i4qcgiariwc4xzv1fm"))
|
||||
(patches
|
||||
(search-patches "musl-CVE-2026-40200.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ; musl has no tests
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
(define-module (gnu packages netpbm)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages perl)
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages elf)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gcc)
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages ruby-xyz)
|
||||
|
||||
@@ -60,7 +60,7 @@
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages emacs-xyz)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
#:use-module (gnu packages docbook)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages compiler-tools)
|
||||
#:use-module (gnu packages freeipmi)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages glib)
|
||||
|
||||
@@ -1,92 +0,0 @@
|
||||
Upstream-status:
|
||||
|
||||
diff --git a/tests/pkcs11-tool.sh b/tests/pkcs11-tool.sh
|
||||
index 2d650b52f..e64803fc3 100755
|
||||
--- a/tests/pkcs11-tool.sh
|
||||
+++ b/tests/pkcs11-tool.sh
|
||||
@@ -64,7 +64,7 @@ if ! test -f "${SOFTHSM_MODULE}"; then
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which pkcs11-tool 2>/dev/null)" ]; then
|
||||
+if ! command -v pkcs11-tool >/dev/null; then
|
||||
echo "Need pkcs11-tool from opensc package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
diff --git a/tests/tpm2.sh b/tests/tpm2.sh
|
||||
index d48364c6c..a03945da8 100755
|
||||
--- a/tests/tpm2.sh
|
||||
+++ b/tests/tpm2.sh
|
||||
@@ -29,22 +29,22 @@ if ! test -x "${CERTTOOL}"; then
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which swtpm 2>/dev/null)" ]; then
|
||||
+if ! command -v swtpm >/dev/null; then
|
||||
echo "Need swtpm package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which ncat 2>/dev/null)" ]; then
|
||||
+if ! command -v ncat >/dev/null; then
|
||||
echo "Need ncat from nmap-ncat package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which tpm2_startup 2>/dev/null)" ]; then
|
||||
+if ! command -v tpm2_startup >/dev/null; then
|
||||
echo "Need tpm2_startup from tpm2-tools package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which base64 2>/dev/null)" ]; then
|
||||
+if ! command -v base64 >/dev/null; then
|
||||
echo "Need the base64 tool to run this test."
|
||||
exit 77
|
||||
fi
|
||||
@@ -58,7 +58,7 @@ case `"$OPENSSL" version` in
|
||||
;;
|
||||
esac
|
||||
|
||||
-if [ -z "$(which tpm2tss-genkey 2>/dev/null)" ]; then
|
||||
+if ! command -v tpm2tss-genkey >/dev/null; then
|
||||
echo "Need tpm2tss-genkey from tpm2-tss-engine package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
diff --git a/tests/tpmtool_test.sh b/tests/tpmtool_test.sh
|
||||
index a14242808..962d571f6 100755
|
||||
--- a/tests/tpmtool_test.sh
|
||||
+++ b/tests/tpmtool_test.sh
|
||||
@@ -28,27 +28,27 @@ if [ "$(id -u)" -ne 0 ]; then
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which swtpm 2>/dev/null)" ]; then
|
||||
+if ! command -v swtpm >/dev/null; then
|
||||
echo "Need swtpm package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which tcsd 2>/dev/null)" ]; then
|
||||
+if ! command -v tcsd >/dev/null; then
|
||||
echo "Need tcsd (TrouSerS) package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which tpm_createek 2>/dev/null)" ]; then
|
||||
+if ! command -v tpm_createek >/dev/null; then
|
||||
echo "Need tpm_createek from tpm-tools package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which ncat 2>/dev/null)" ]; then
|
||||
+if ! command -v ncat >/dev/null; then
|
||||
echo "Need ncat from nmap-ncat package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
|
||||
-if [ -z "$(which expect 2>/dev/null)" ]; then
|
||||
+if ! command -v expect >/dev/null; then
|
||||
echo "Need expect from expect package to run this test."
|
||||
exit 77
|
||||
fi
|
||||
@@ -0,0 +1,179 @@
|
||||
>From 228da39e38c1cae13cbe637e771412c1984dba5d Mon Sep 17 00:00:00 2001
|
||||
From: Rich Felker <dalias@aerifal.cx>
|
||||
Date: Thu, 9 Apr 2026 22:51:30 -0400
|
||||
Subject: [PATCH 1/3] qsort: fix leonardo heap corruption from bug in
|
||||
doubleword ctz primitive
|
||||
|
||||
the pntz function, implementing a "count trailing zeros" variant for a
|
||||
bit vector consisting of two size_t words, erroneously returned zero
|
||||
rather than the number of bits in the low word when the first bit set
|
||||
was the low bit of the high word.
|
||||
|
||||
as a result, a loop in the trinkle function which should have a
|
||||
guaranteed small bound on the number of iterations, could run
|
||||
unboundedly, thereby overflowing a stack-based working-space array
|
||||
which was sized for the bound.
|
||||
|
||||
CVE-2026-40200 has been assigned for this issue.
|
||||
---
|
||||
src/stdlib/qsort.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/src/stdlib/qsort.c b/src/stdlib/qsort.c
|
||||
index ab79dc6f..13219ab3 100644
|
||||
--- a/src/stdlib/qsort.c
|
||||
+++ b/src/stdlib/qsort.c
|
||||
@@ -34,11 +34,11 @@
|
||||
|
||||
typedef int (*cmpfun)(const void *, const void *, void *);
|
||||
|
||||
+/* returns index of first bit set, excluding the low bit assumed to always
|
||||
+ * be set, starting from low bit of p[0] up through high bit of p[1] */
|
||||
static inline int pntz(size_t p[2]) {
|
||||
- int r = ntz(p[0] - 1);
|
||||
- if(r != 0 || (r = 8*sizeof(size_t) + ntz(p[1])) != 8*sizeof(size_t)) {
|
||||
- return r;
|
||||
- }
|
||||
+ if (p[0] != 1) return ntz(p[0] - 1);
|
||||
+ if (p[1]) return 8*sizeof(size_t) + ntz(p[1]);
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
||||
|
||||
>From b3291b9a9f77f1f993d2b4f8c68a26cf09221ae7 Mon Sep 17 00:00:00 2001
|
||||
From: Rich Felker <dalias@aerifal.cx>
|
||||
Date: Thu, 9 Apr 2026 23:40:53 -0400
|
||||
Subject: [PATCH 2/3] qsort: hard-preclude oob array writes independent of any
|
||||
invariants
|
||||
|
||||
while the root cause of CVE-2026-40200 was a faulty ctz primitive, the
|
||||
fallout of the bug would have been limited to erroneous sorting or
|
||||
infinite loop if not for the stores to a stack-based array that
|
||||
depended on trusting invariants in order not to go out of bounds.
|
||||
|
||||
increase the size of the array to a power of two so that we can mask
|
||||
indices into it to force them into range. in the absence of any
|
||||
further bug, the masking is a no-op, but it does not have any
|
||||
measurable performance cost, and it makes spatial memory safety
|
||||
trivial to prove (and for readers not familiar with the algorithms to
|
||||
trust).
|
||||
---
|
||||
src/stdlib/qsort.c | 20 +++++++++++++-------
|
||||
1 file changed, 13 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/src/stdlib/qsort.c b/src/stdlib/qsort.c
|
||||
index 13219ab3..e4bce9f7 100644
|
||||
--- a/src/stdlib/qsort.c
|
||||
+++ b/src/stdlib/qsort.c
|
||||
@@ -89,10 +89,16 @@ static inline void shr(size_t p[2], int n)
|
||||
p[1] >>= n;
|
||||
}
|
||||
|
||||
+/* power-of-two length for working array so that we can mask indices and
|
||||
+ * not depend on any invariant of the algorithm for spatial memory safety.
|
||||
+ * the original size was just 14*sizeof(size_t)+1 */
|
||||
+#define AR_LEN (16 * sizeof(size_t))
|
||||
+#define AR_MASK (AR_LEN - 1)
|
||||
+
|
||||
static void sift(unsigned char *head, size_t width, cmpfun cmp, void *arg, int pshift, size_t lp[])
|
||||
{
|
||||
unsigned char *rt, *lf;
|
||||
- unsigned char *ar[14 * sizeof(size_t) + 1];
|
||||
+ unsigned char *ar[AR_LEN];
|
||||
int i = 1;
|
||||
|
||||
ar[0] = head;
|
||||
@@ -104,16 +110,16 @@ static void sift(unsigned char *head, size_t width, cmpfun cmp, void *arg, int p
|
||||
break;
|
||||
}
|
||||
if(cmp(lf, rt, arg) >= 0) {
|
||||
- ar[i++] = lf;
|
||||
+ ar[i++ & AR_MASK] = lf;
|
||||
head = lf;
|
||||
pshift -= 1;
|
||||
} else {
|
||||
- ar[i++] = rt;
|
||||
+ ar[i++ & AR_MASK] = rt;
|
||||
head = rt;
|
||||
pshift -= 2;
|
||||
}
|
||||
}
|
||||
- cycle(width, ar, i);
|
||||
+ cycle(width, ar, i & AR_MASK);
|
||||
}
|
||||
|
||||
static void trinkle(unsigned char *head, size_t width, cmpfun cmp, void *arg, size_t pp[2], int pshift, int trusty, size_t lp[])
|
||||
@@ -121,7 +127,7 @@ static void trinkle(unsigned char *head, size_t width, cmpfun cmp, void *arg, si
|
||||
unsigned char *stepson,
|
||||
*rt, *lf;
|
||||
size_t p[2];
|
||||
- unsigned char *ar[14 * sizeof(size_t) + 1];
|
||||
+ unsigned char *ar[AR_LEN];
|
||||
int i = 1;
|
||||
int trail;
|
||||
|
||||
@@ -142,7 +148,7 @@ static void trinkle(unsigned char *head, size_t width, cmpfun cmp, void *arg, si
|
||||
}
|
||||
}
|
||||
|
||||
- ar[i++] = stepson;
|
||||
+ ar[i++ & AR_MASK] = stepson;
|
||||
head = stepson;
|
||||
trail = pntz(p);
|
||||
shr(p, trail);
|
||||
@@ -150,7 +156,7 @@ static void trinkle(unsigned char *head, size_t width, cmpfun cmp, void *arg, si
|
||||
trusty = 0;
|
||||
}
|
||||
if(!trusty) {
|
||||
- cycle(width, ar, i);
|
||||
+ cycle(width, ar, i & AR_MASK);
|
||||
sift(head, width, cmp, arg, pshift, lp);
|
||||
}
|
||||
}
|
||||
--
|
||||
2.21.0
|
||||
|
||||
|
||||
>From 5122f9f3c99fee366167c5de98b31546312921ab Mon Sep 17 00:00:00 2001
|
||||
From: Luca Kellermann <mailto.luca.kellermann@gmail.com>
|
||||
Date: Fri, 10 Apr 2026 03:03:22 +0200
|
||||
Subject: [PATCH 3/3] qsort: fix shift UB in shl and shr
|
||||
|
||||
if shl() or shr() are called with n==8*sizeof(size_t), n is adjusted
|
||||
to 0. the shift by (sizeof(size_t) * 8 - n) that then follows will
|
||||
consequently shift by the width of size_t, which is UB and in practice
|
||||
produces an incorrect result.
|
||||
|
||||
return early in this case. the bitvector p was already shifted by the
|
||||
required amount.
|
||||
---
|
||||
src/stdlib/qsort.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/src/stdlib/qsort.c b/src/stdlib/qsort.c
|
||||
index e4bce9f7..28607450 100644
|
||||
--- a/src/stdlib/qsort.c
|
||||
+++ b/src/stdlib/qsort.c
|
||||
@@ -71,6 +71,7 @@ static inline void shl(size_t p[2], int n)
|
||||
n -= 8 * sizeof(size_t);
|
||||
p[1] = p[0];
|
||||
p[0] = 0;
|
||||
+ if (!n) return;
|
||||
}
|
||||
p[1] <<= n;
|
||||
p[1] |= p[0] >> (sizeof(size_t) * 8 - n);
|
||||
@@ -83,6 +84,7 @@ static inline void shr(size_t p[2], int n)
|
||||
n -= 8 * sizeof(size_t);
|
||||
p[0] = p[1];
|
||||
p[1] = 0;
|
||||
+ if (!n) return;
|
||||
}
|
||||
p[0] >>= n;
|
||||
p[0] |= p[1] << (sizeof(size_t) * 8 - n);
|
||||
--
|
||||
2.21.0
|
||||
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
Disable locales other than C and POSIX because of a compilation error.
|
||||
By Danny Milosavljevic <dannym@scratchpost.org>
|
||||
This patch is distributed under BSD-3 license.
|
||||
See https://github.com/osresearch/heads/pull/610
|
||||
diff -ruN b/source/patches/gcc-5.3.0-locale.diff guix-build-musl-cross-0.1-3.a8a6649.drv-12/source/patches/gcc-5.3.0-locale.diff
|
||||
--- a/patches/gcc-5.3.0-locale.diff 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ b/patches/gcc-5.3.0-locale.diff 2020-05-02 14:20:47.213564509 +0200
|
||||
@@ -0,0 +1,12 @@
|
||||
+--- gcc-5.3.0/libstdc++-v3/config/locale/gnu/ctype_members.cc.orig 2020-05-02 14:16:31.376147000 +0200
|
||||
++++ gcc-5.3.0/libstdc++-v3/config/locale/gnu/ctype_members.cc 2020-05-02 14:16:56.716279576 +0200
|
||||
+@@ -47,7 +47,8 @@
|
||||
+ this->_S_create_c_locale(this->_M_c_locale_ctype, __s);
|
||||
+ this->_M_toupper = this->_M_c_locale_ctype->__ctype_toupper;
|
||||
+ this->_M_tolower = this->_M_c_locale_ctype->__ctype_tolower;
|
||||
+- this->_M_table = this->_M_c_locale_ctype->__ctype_b;
|
||||
++ //this->_M_table = this->_M_c_locale_ctype->__ctype_b;
|
||||
++ throw 3;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user