mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
Compare commits
148 commits
288f1ce82a
...
b77f28a0d7
Author | SHA1 | Date | |
---|---|---|---|
|
b77f28a0d7 | ||
|
944b2d4ad8 | ||
|
b30296428b | ||
|
c1989dd411 | ||
|
ef17314475 | ||
|
96c443c12d | ||
|
13c9c9e2cd | ||
|
5695fdf20b | ||
|
0dd0ecac76 | ||
|
f802bf2331 | ||
|
ad5afca1a2 | ||
|
187dddba80 | ||
|
ab089c8e3a | ||
|
9986b7cd64 | ||
|
9a17b7ca60 | ||
|
464023ad9a | ||
|
3dcf4d1d8e | ||
|
fed32ecdf8 | ||
|
7edbb2937c | ||
|
e8b19037a8 | ||
|
8391d893fb | ||
|
1b41809cbf | ||
|
94abeb33d0 | ||
|
11445763b4 | ||
|
9bb44fd30d | ||
|
d1ea32886d | ||
|
c381ecf8f8 | ||
|
2d5a5a6f7e | ||
|
8c892aaaf8 | ||
|
656f4d512a | ||
|
283f5e972b | ||
|
b83ba77e7b | ||
|
5f225ac614 | ||
|
bee25d710f | ||
|
4c983af432 | ||
|
10a30b2879 | ||
|
c4fa062000 | ||
|
57b2442944 | ||
|
b66a09c539 | ||
|
571c10c85b | ||
|
ea1606543e | ||
|
d98a0890aa | ||
|
dd9626dece | ||
|
e6e3f69338 | ||
|
6285c37dad | ||
|
4e3f8c0ed9 | ||
|
2d51b77ab8 | ||
|
b173178b45 | ||
|
28c058b165 | ||
|
e3eb2af7a8 | ||
|
2944b896b4 | ||
|
1b9c7e32ef | ||
|
2c8dfc38fc | ||
|
7ff28b97bd | ||
|
2a421099d4 | ||
|
3bf0001fa8 | ||
|
3aa19045e2 | ||
|
333115f9bb | ||
|
06203f7413 | ||
|
05f9440f46 | ||
|
67cf1cc311 | ||
|
113ac9ca84 | ||
|
73ca10dbc6 | ||
|
ea0515ddaa | ||
|
970c2aeae5 | ||
|
e4861d4218 | ||
|
2d3cef3ee9 | ||
|
e4a61d98ba | ||
|
9b4411cc8f | ||
|
d23fd90115 | ||
|
fdabc99137 | ||
|
14279c9987 | ||
|
82f661c08c | ||
|
bffa5fe56f | ||
|
9ed9adb3fc | ||
|
bd3a4bebc8 | ||
|
b143868b81 | ||
|
5558627ca6 | ||
|
1c2f5c7fef | ||
|
6d29c0442e | ||
|
c90aff0961 | ||
|
4e424143a2 | ||
|
d8e098fb50 | ||
|
dcf870b788 | ||
|
9b29b236ab | ||
|
896111cf23 | ||
|
045079199a | ||
|
dc2ba91533 | ||
|
6892f49689 | ||
|
8bbf7324f3 | ||
|
5b24f580a0 | ||
|
32f6942001 | ||
|
f2a5829a48 | ||
|
2078aeebe0 | ||
|
98ff2fbb5b | ||
|
bb0eb543f7 | ||
|
aaa761991e | ||
|
c6a4b84e15 | ||
|
e098877692 | ||
|
63de030696 | ||
|
c8f792e089 | ||
|
00dc86225b | ||
|
9ca78db0fe | ||
|
58406f8bd0 | ||
|
2051a06d5c | ||
|
91e92a195d | ||
|
aaf1f020eb | ||
|
bd5b15b61c | ||
|
c14e797273 | ||
|
e090629e6d | ||
|
4beefc0da7 | ||
|
891a9bd967 | ||
|
b2aafa488e | ||
|
8fa52bb06b | ||
|
c9a466428a | ||
|
413e1baeeb | ||
|
9c86a5c9dd | ||
|
ba549e727b | ||
|
777bb5ad05 | ||
|
21c0edc37c | ||
|
82539653d7 | ||
|
e5e7af6c49 | ||
|
bf50016eae | ||
|
46773999d9 | ||
|
67b0aaaa74 | ||
|
a03293ac50 | ||
|
a54fa374f9 | ||
|
f0f35ff8a3 | ||
|
5ce1e4c0fa | ||
|
ebbcd92f00 | ||
|
9b2381a5ce | ||
|
db05dfb1d5 | ||
|
d6464a8c60 | ||
|
838531e366 | ||
|
4a01e89f9e | ||
|
e4f8c118bc | ||
|
564f406c58 | ||
|
a8d58a7056 | ||
|
b462f091d1 | ||
|
b5dc339bbe | ||
|
1a2e469de5 | ||
|
b7232cf8c0 | ||
|
87eb0c24a7 | ||
|
bd1ba5a740 | ||
|
409264cf1d | ||
|
37ebdbe3dd | ||
|
4514403f55 | ||
|
ea8a6e7bb2 |
73 changed files with 2112 additions and 2120 deletions
11
gnu/local.mk
11
gnu/local.mk
|
@ -1137,7 +1137,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
|
||||
%D%/packages/patches/ctranslate2-local-build.patch \
|
||||
%D%/packages/patches/cube-nocheck.patch \
|
||||
%D%/packages/patches/cups-minimal-Address-PPD-injection-issues.patch \
|
||||
%D%/packages/patches/cups-relax-root-ownership-check.patch \
|
||||
%D%/packages/patches/cura-engine-gcc-14.patch \
|
||||
%D%/packages/patches/curl-CVE-2024-8096.patch \
|
||||
%D%/packages/patches/curl-use-ssl-cert-env.patch \
|
||||
|
@ -1201,6 +1201,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||
%D%/packages/patches/elixir-path-length.patch \
|
||||
%D%/packages/patches/elm-ghc9.2.patch \
|
||||
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
|
||||
%D%/packages/patches/elm-offline-package-registry.patch \
|
||||
%D%/packages/patches/elm-reactor-static-files.patch \
|
||||
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
|
||||
|
@ -1228,6 +1229,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/emacs-telega-path-placeholder.patch \
|
||||
%D%/packages/patches/emacs-telega-test-env.patch \
|
||||
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
|
||||
%D%/packages/patches/emacs-zoom-image-test-fix.patch \
|
||||
%D%/packages/patches/enblend-enfuse-reproducible.patch \
|
||||
%D%/packages/patches/enjarify-setup-py.patch \
|
||||
%D%/packages/patches/enlightenment-fix-setuid-path.patch \
|
||||
|
@ -1551,6 +1553,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
|
||||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
|
||||
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
|
||||
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
|
||||
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
|
||||
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
|
||||
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
|
||||
|
@ -1601,6 +1604,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/idris-test-ffi008.patch \
|
||||
%D%/packages/patches/ilmbase-fix-tests.patch \
|
||||
%D%/packages/patches/inferno-fix-crash.patch \
|
||||
%D%/packages/patches/inkscape-libxml2.patch \
|
||||
%D%/packages/patches/instead-use-games-path.patch \
|
||||
%D%/packages/patches/intltool-perl-compatibility.patch \
|
||||
%D%/packages/patches/inetutils-hurd64.patch \
|
||||
|
@ -1672,6 +1676,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/librewolf-use-system-wide-dir.patch \
|
||||
%D%/packages/patches/libvirt-add-install-prefix.patch \
|
||||
%D%/packages/patches/libvirt-respect-modules-path.patch \
|
||||
%D%/packages/patches/libzmf-doxygen-1.14.patch \
|
||||
%D%/packages/patches/libziparchive-add-includes.patch \
|
||||
%D%/packages/patches/lightdm-arguments-ordering.patch \
|
||||
%D%/packages/patches/lightdm-vnc-ipv6.patch \
|
||||
|
@ -1745,6 +1750,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/libofa-ftbfs-1.diff \
|
||||
%D%/packages/patches/libofa-curl.diff \
|
||||
%D%/packages/patches/libofa-ftbfs-2.diff \
|
||||
%D%/packages/patches/libosinfo-libxml2-fix.patch \
|
||||
%D%/packages/patches/libotr-test-auth-fix.patch \
|
||||
%D%/packages/patches/libksieve-Fix-missing-link-libraries.patch \
|
||||
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
|
||||
|
@ -1785,7 +1791,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/libxcb-path-max.patch \
|
||||
%D%/packages/patches/libxml2-xpath0-Add-option-xpath0.patch \
|
||||
%D%/packages/patches/libwpd-gcc-compat.patch \
|
||||
%D%/packages/patches/libxslt-generated-ids.patch \
|
||||
%D%/packages/patches/libxt-guix-search-paths.patch \
|
||||
%D%/packages/patches/lierolibre-check-unaligned-access.patch \
|
||||
%D%/packages/patches/lierolibre-is-free-software.patch \
|
||||
|
@ -2221,6 +2226,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/rtosc-0.3.1-fix-invalid-comparison-operator.patch \
|
||||
%D%/packages/patches/racket-chez-scheme-bin-sh.patch \
|
||||
%D%/packages/patches/racket-launcher-config-dir.patch \
|
||||
%D%/packages/patches/raptor2-libxml2.patch \
|
||||
%D%/packages/patches/racket-rktio-bin-sh.patch \
|
||||
%D%/packages/patches/re2c-Use-maximum-alignment.patch \
|
||||
%D%/packages/patches/reduce-unbundle-libffi.patch \
|
||||
|
@ -2426,6 +2432,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/vtk-7-gcc-11-compat.patch \
|
||||
%D%/packages/patches/vtk-7-hdf5-compat.patch \
|
||||
%D%/packages/patches/vtk-7-python-compat.patch \
|
||||
%D%/packages/patches/vulkan-tools-wayland-1.24.patch \
|
||||
%D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \
|
||||
%D%/packages/patches/wcstools-extend-makefiles.patch \
|
||||
%D%/packages/patches/wdl-link-libs-and-fix-jnetlib.patch \
|
||||
|
|
|
@ -4233,21 +4233,11 @@ CFITSIO library. Among other things, it can
|
|||
(sha256
|
||||
(base32 "1gw2z6x8nikvnw2gkdl70gr81cwczd1pd7v8ry2kjn6k4kssrfav"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; These tests require internet access
|
||||
#~(list "-k" "not test_download_data.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; Tests need this
|
||||
(add-before 'check 'set-HOME
|
||||
(lambda _ (setenv "HOME" "/tmp"))))))
|
||||
;;TODO: Tests depends on Nose, report upstream.
|
||||
(arguments (list #:tests? #f))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools
|
||||
python-setuptools-scm
|
||||
python-wheel))
|
||||
(list python-setuptools
|
||||
python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-astroml
|
||||
python-numpy
|
||||
|
@ -9044,14 +9034,19 @@ analyze spectrogram data.")
|
|||
(version "1.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "suntime" version))
|
||||
(method git-fetch) ; no tests data in the PyPI tarball
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SatAgro/suntime")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1kyd1r6zcs0jmh5gq74adrnb1h7dfr1mzjq4k4vbngfiga8gfd28"))))
|
||||
(base32 "145jqwnl8frg49981xcli1l13h73m40gkbnpwa88lhva03j7y1k2"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:test-flags #~(list "tests.py")))
|
||||
(native-inputs
|
||||
(list python-setuptools
|
||||
python-wheel))
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-dateutil))
|
||||
(home-page "https://github.com/SatAgro/suntime")
|
||||
|
@ -9228,6 +9223,9 @@ using (multivariate) polynomials.")
|
|||
#:build-backend "setuptools.build_meta"
|
||||
#:test-flags
|
||||
#~(list "--numprocesses" (number->string (parallel-job-count))
|
||||
;; Failed: 'yield' keyword is allowed in fixtures, but not in
|
||||
;; tests (test_recipe)
|
||||
"--ignore=doc/source/cookbook/tests/test_cookbook.py"
|
||||
"-k" (string-join
|
||||
;; Tests requiring networking.
|
||||
(list "not test_load_sample_timeout"
|
||||
|
@ -9237,7 +9235,10 @@ using (multivariate) polynomials.")
|
|||
"test_registry_byte_size_dtype"
|
||||
"test_registry_byte_size_sign"
|
||||
;; AssertionError: Arrays are not equal
|
||||
"test_field_cut_off_axis_octree")
|
||||
"test_field_cut_off_axis_octree"
|
||||
;; UserWarning: pkg_resources is deprecated as an
|
||||
;; API
|
||||
"test_glue_data_object")
|
||||
" and not "))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
|
@ -9313,13 +9314,13 @@ using (multivariate) polynomials.")
|
|||
(define-public python-yt-astro-analysis
|
||||
(package
|
||||
(name "python-yt-astro-analysis")
|
||||
(version "1.1.3")
|
||||
(version "1.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "yt_astro_analysis" version))
|
||||
(sha256
|
||||
(base32 "1fb3sdp6hq2c4c28pd33v9yj14x9l7qizf3y3qpl594qdq1ffmpi"))))
|
||||
(base32 "0dy96084wvb7ccnnp22b6wacyjzn1n62i4mwq0q7nkp90bzx44a2"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -9334,9 +9335,7 @@ using (multivariate) polynomials.")
|
|||
(native-inputs
|
||||
(list python-cython
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-tomli
|
||||
python-wheel))
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-h5py
|
||||
python-numpy
|
||||
|
|
|
@ -57,7 +57,7 @@
|
|||
"1zzdp5bwnszza5q6cjw66hkicay8b49n5pda7cbcgfg4hbbzv2rn"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
(list libxml2-next))
|
||||
(list libxml2))
|
||||
(native-inputs
|
||||
(list readline pkg-config))
|
||||
(home-page "https://augeas.net")
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
;;; Copyright © 2020, 2023, 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2021 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
|
||||
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -460,7 +461,13 @@ Makefile, simplifying the entire process for the developer.")
|
|||
'("t/tags-lisp-space.sh"
|
||||
;; This test fails, probably a timestamp thing:
|
||||
;; make: Nothing to be done for 'all'.
|
||||
"t/remake-aclocal-version-mismatch.sh")
|
||||
"t/remake-aclocal-version-mismatch.sh"
|
||||
;; Non-deterministic test failures:
|
||||
"t/aclocal-autoconf-version-check.sh"
|
||||
"t/backcompat2.sh"
|
||||
"t/backcompat3.sh"
|
||||
"t/nodef.sh"
|
||||
"t/nodef2.sh")
|
||||
(("^#!.*" all)
|
||||
(string-append all "exit 77;\n")))))
|
||||
#$@(if (%current-target-system)
|
||||
|
|
|
@ -526,8 +526,6 @@ used to apply commands with arbitrarily long arguments.")
|
|||
"tests/split/fail.sh"
|
||||
;; These tests error
|
||||
"tests/dd/nocache.sh"
|
||||
;; These tests can intermitently fail on btrfs
|
||||
"tests/cp/reflink-auto.sh"
|
||||
;; These tests fail
|
||||
"tests/cp/sparse.sh"
|
||||
"tests/cp/special-f.sh"
|
||||
|
@ -573,6 +571,10 @@ used to apply commands with arbitrarily long arguments.")
|
|||
(("(^| )main *\\(.*" all)
|
||||
(string-append all "{\n exit (77);//"))))
|
||||
'())
|
||||
;; These tests can fail on btrfs.
|
||||
(substitute* "tests/cp/reflink-auto.sh"
|
||||
(("^#!.*" all)
|
||||
(string-append all "exit 77;\n")))
|
||||
(substitute* "Makefile.in"
|
||||
;; fails on filesystems where inotify cannot be used,
|
||||
;; more info in #47935
|
||||
|
|
|
@ -4991,11 +4991,11 @@ long-read sequencing data.")
|
|||
(list lapack openblas))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
python-setuptools
|
||||
python-pybiomart
|
||||
python-wheel))
|
||||
python-setuptools))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;XXX: tests hangs during collection
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
;; Numba needs a writable dir to cache functions.
|
||||
|
@ -12167,20 +12167,23 @@ interpretation.")
|
|||
(snippet
|
||||
'(for-each delete-file
|
||||
(find-files "taggd" "\\.c$")))))
|
||||
(build-system python-build-system)
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; AssertionError: 0 is not true : Running Normal BAM test failed.
|
||||
#~(list "-k" "not test_normal_bam_run")
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-broken-tests
|
||||
(lambda _
|
||||
(substitute* "tests/taggd_demultiplex_test.py"
|
||||
(("def test_normal_bam_run")
|
||||
"def _disabled_test_normal_bam_run")))))))
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'remove-local-taggd
|
||||
(lambda _
|
||||
;; This would otherwise interfere with finding the installed
|
||||
;; taggd when running tests.
|
||||
(delete-file-recursively "taggd"))))))
|
||||
(propagated-inputs
|
||||
(list python-numpy python-pysam python-setuptools))
|
||||
(list python-numpy python-pysam))
|
||||
(native-inputs
|
||||
(list python-cython))
|
||||
(list python-cython python-pytest python-setuptools))
|
||||
(home-page "https://github.com/SpatialTranscriptomicsResearch/taggd")
|
||||
(synopsis "Genetic barcode demultiplexing")
|
||||
(description "This package provides TagGD barcode demultiplexing utilities
|
||||
|
@ -23602,7 +23605,7 @@ The output is in SAM format.")
|
|||
#$(this-package-input "libxml2")
|
||||
"/include/libxml2"))))
|
||||
(propagated-inputs
|
||||
(list libxml2-next))
|
||||
(list libxml2))
|
||||
(native-inputs
|
||||
(list check swig))
|
||||
(home-page "https://sbml.org/Software/libSBML")
|
||||
|
@ -24216,11 +24219,11 @@ sequence motif analysis.")
|
|||
(sha256
|
||||
(base32
|
||||
"1023hadgcsgi53kz53ql45207hfizf9sw57z0qij3ay1bx68zbpm"))))
|
||||
(build-system python-build-system)
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
'(#:tests? #false)) ;no tests
|
||||
(native-inputs
|
||||
(list python-cython python-nose2))
|
||||
(list python-cython-0 python-setuptools))
|
||||
;; The package mainly consists of a command-line tool, but also has a
|
||||
;; Python-API. Thus these must be propagated.
|
||||
(propagated-inputs
|
||||
|
@ -24323,34 +24326,47 @@ data from @file{.hic} files. This package provides Python bindings.")
|
|||
(define-public python-pybbi
|
||||
(package
|
||||
(name "python-pybbi")
|
||||
(version "0.3.0")
|
||||
(version "0.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pybbi" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hvy2f28i2b41l1pq15vciqbj538n0lichp8yr6413jmgg06xdsk"))))
|
||||
(build-system python-build-system)
|
||||
(base32 "0p1s6y9f33wzmvxdhfg9b37sas2kghnmvkfnb317aiad1p6ks6ba"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
`(#:tests? #false ; tests require network access
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-cc
|
||||
(lambda _ (setenv "CC" "gcc")))
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(copy-recursively "tests" "/tmp/tests")
|
||||
(with-directory-excursion "/tmp/tests"
|
||||
(invoke "python" "-m" "pytest" "-v"))))))))
|
||||
(list
|
||||
#:test-flags
|
||||
#~(list "-k" (string-join
|
||||
;; Network is required to run these tests.
|
||||
(list "not test_aws_403_redirect"
|
||||
"test_chromsizes"
|
||||
"test_fetch_remote"
|
||||
"test_fetch_remote_https"
|
||||
"test_sigs")
|
||||
" and not "))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-cc
|
||||
(lambda _ (setenv "CC" #$(cc-for-target))))
|
||||
(add-before 'check 'remove-local-bbi
|
||||
(lambda _
|
||||
;; This would otherwise interfere with finding the installed bbi
|
||||
;; when running tests.
|
||||
(delete-file-recursively "bbi"))))))
|
||||
(native-inputs
|
||||
(list pkg-config python-pkgconfig python-pytest))
|
||||
(list pkg-config
|
||||
python-cython
|
||||
python-pandas
|
||||
python-pkgconfig
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list libpng openssl zlib))
|
||||
(list libpng
|
||||
openssl
|
||||
zlib))
|
||||
(propagated-inputs
|
||||
(list python-cython python-numpy python-pandas python-six))
|
||||
(list python-numpy))
|
||||
(home-page "https://github.com/nvictus/pybbi")
|
||||
(synopsis "Python bindings to UCSC Big Binary file library")
|
||||
(description
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
|
||||
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
|
||||
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -308,7 +309,7 @@ files and generates build instructions for the Ninja build system.")
|
|||
(define-public meson
|
||||
(package
|
||||
(name "meson")
|
||||
(version "1.5.2")
|
||||
(version "1.9.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mesonbuild/meson/"
|
||||
|
@ -316,8 +317,8 @@ files and generates build instructions for the Ninja build system.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02wi62k9w7716xxdgrrx68q89vaq3ncnbpw5ms0g27npn2df0mgr"))))
|
||||
(build-system python-build-system)
|
||||
"13a9pj7d2mxgv5gbd78di4pb4w722vjis0vmk38m1vdm95v2f9yd"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f ;disabled to avoid extra dependencies
|
||||
#:phases
|
||||
|
@ -327,12 +328,14 @@ files and generates build instructions for the Ninja build system.")
|
|||
(replace 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* (search-input-file outputs "bin/meson")
|
||||
(("# EASY-INSTALL-ENTRY-SCRIPT")
|
||||
(format #f "\
|
||||
import sys
|
||||
sys.path.insert(0, '~a')
|
||||
# EASY-INSTALL-ENTRY-SCRIPT" (site-packages inputs outputs)))))))))
|
||||
(inputs (list python ninja/pinned))
|
||||
(("import sys" all)
|
||||
(string-append
|
||||
all "\n"
|
||||
"sys.path.insert(0, '"
|
||||
(site-packages inputs outputs)
|
||||
"')"))))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list python ninja))
|
||||
(home-page "https://mesonbuild.com/")
|
||||
(synopsis "Build system designed to be fast and user-friendly")
|
||||
(description
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
;;; Copyright © 2025 Lukas Gradl <lgradl@posteo.net>
|
||||
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
|
||||
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -321,7 +322,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
|
|||
(define-public cups-minimal
|
||||
(package
|
||||
(name "cups-minimal")
|
||||
(version "2.4.9")
|
||||
(version "2.4.14")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -331,8 +332,8 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
|
|||
;; Avoid NAME confusion: these are the complete CUPS sources.
|
||||
(file-name (git-file-name "cups" version))
|
||||
(sha256
|
||||
(base32 "08wjd1flyaslhnwvxl39403qi3g675rk532ysiyk6cda4r8ks1g1"))
|
||||
(patches (search-patches "cups-minimal-Address-PPD-injection-issues.patch"))))
|
||||
(base32 "1dk5salizxy1qm19gw93ffdd34hsn1cd4s57nwl7nfhwwirkiri2"))
|
||||
(patches (search-patches "cups-relax-root-ownership-check.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
|
|
|
@ -1173,7 +1173,7 @@ Language.")
|
|||
(define-public mariadb
|
||||
(package
|
||||
(name "mariadb")
|
||||
(version "10.11.10")
|
||||
(version "10.11.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://downloads.mariadb.com/MariaDB"
|
||||
|
@ -1181,7 +1181,7 @@ Language.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08phlqcwcwl753zi2jv702q7b3h25d489289mflnm8c31djp8smh"))
|
||||
"0bq5gn5yl3c6jnsamam4nb42y10c43ag764f7mkf7m5i9yqiqmwa"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
|
|
@ -186,7 +186,7 @@ markup) can be customized and extended by the user.")
|
|||
(define-public doxygen
|
||||
(package
|
||||
(name "doxygen")
|
||||
(version "1.9.8")
|
||||
(version "1.14.0")
|
||||
(home-page "https://www.doxygen.nl/")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
@ -197,7 +197,7 @@ markup) can be customized and extended by the user.")
|
|||
".src.tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0qjgw7bnx668hpi4r8m366vsq118s9365zf8z4x5yjrqx0ld5qq5"))))
|
||||
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list bison
|
||||
|
@ -218,12 +218,15 @@ markup) can be customized and extended by the user.")
|
|||
#~'())
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-bibtex-test
|
||||
(add-after 'unpack 'disable-some-tests
|
||||
(lambda _
|
||||
;; Disable test that requires bibtex to avoid a
|
||||
;; circular dependency.
|
||||
(for-each delete-file-recursively
|
||||
'("testing/012" "testing/012_cite.dox"))))
|
||||
;; Disable test that requires bibtex to avoid a
|
||||
;; circular dependency.
|
||||
'("testing/012" "testing/012_cite.dox"
|
||||
;; Reported upstream, see
|
||||
;; <https://github.com/doxygen/doxygen/issues/11772>.
|
||||
"testing/009" "testing/009_bug.cpp"))))
|
||||
(add-before 'configure 'patch-sh
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((/bin/sh (search-input-file inputs "/bin/sh")))
|
||||
|
|
|
@ -243,7 +243,7 @@ object or archive file), @command{eu-strip} (for discarding symbols),
|
|||
(list pkg-config texinfo python-sphinx python))
|
||||
(propagated-inputs
|
||||
(list elfutils ;libabigail.la says -lelf
|
||||
libxml2-next)) ;in Requires.private of libabigail.pc
|
||||
libxml2)) ;in Requires.private of libabigail.pc
|
||||
(synopsis "Analyze application binary interfaces (ABIs)")
|
||||
(description
|
||||
"@dfn{ABIGAIL} stands for the Application Binary Interface Generic
|
||||
|
|
|
@ -158,7 +158,8 @@
|
|||
"emacs-native-comp-driver-options.patch"
|
||||
"emacs-native-comp-fix-filenames.patch"
|
||||
"emacs-native-comp-pin-packages.patch"
|
||||
"emacs-pgtk-super-key-fix.patch"))
|
||||
"emacs-pgtk-super-key-fix.patch"
|
||||
"emacs-zoom-image-test-fix.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(with-directory-excursion "lisp"
|
||||
|
|
|
@ -1645,8 +1645,7 @@ use on a given system.")
|
|||
parallel
|
||||
perl
|
||||
pkg-config
|
||||
python-wrapper
|
||||
python-libxml2))
|
||||
python-wrapper))
|
||||
(inputs
|
||||
(list pcre2))
|
||||
(home-page "https://www.gnu.org/software/libredwg/")
|
||||
|
|
|
@ -433,7 +433,7 @@ embedded systems.")
|
|||
(delete-file "tests/ecore/test_09_file_download.py")
|
||||
(delete-file "tests/ecore/test_11_con.py"))))))
|
||||
(native-inputs
|
||||
(list pkg-config python-cython))
|
||||
(list pkg-config python-cython-0))
|
||||
(inputs
|
||||
(list efl python-dbus python-packaging))
|
||||
(home-page "https://www.enlightenment.org/")
|
||||
|
|
|
@ -676,7 +676,7 @@ freedesktop.org project.")
|
|||
;; Updating this will rebuild over 700 packages through libinput-minimal.
|
||||
(package
|
||||
(name "libinput")
|
||||
(version "1.26.2")
|
||||
(version "1.29.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -685,7 +685,7 @@ freedesktop.org project.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zwwq7a0a6yznc6jxhp6gb50yw5vpfkvgbrabrpc5pwldpckfbrg"))))
|
||||
"1kgr18p7n9bvim9bx24jbr5nwp6icla3bgzfskr04f68mirmx561"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-Ddocumentation=false")
|
||||
|
@ -732,21 +732,6 @@ other applications that need to directly deal with input devices.")
|
|||
"-Ddebug-gui=false" ;requires gtk+@3
|
||||
,flags))))))
|
||||
|
||||
;; TODO: Remove this package when libinput-minimal >= 1.28
|
||||
(define-public libinput-minimal-next
|
||||
(package/inherit libinput-minimal
|
||||
(name "libinput-minimal")
|
||||
(version "1.28.903")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.freedesktop.org/libinput/libinput.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0i5yljdff4fjchpa8ifscbcssnmiim58ai1zy3v41vim2illprv5"))))))
|
||||
|
||||
(define-public libei
|
||||
(package
|
||||
(name "libei")
|
||||
|
@ -1453,7 +1438,7 @@ in and for C++.")
|
|||
(define-public wayland
|
||||
(package
|
||||
(name "wayland")
|
||||
(version "1.23.1")
|
||||
(version "1.24.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gitlab.freedesktop.org/" name
|
||||
|
@ -1461,12 +1446,11 @@ in and for C++.")
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vg5h6d94hglh7724q6wx9dpg4y0afvxksankp1hwbcy76lb4kw6"))))
|
||||
"0dh5bldg24ajxz7xmylwm01nmj572x1vb0ya9qrppmhsl23j92c2"))))
|
||||
(build-system meson-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(arguments
|
||||
(list #:parallel-tests? #f
|
||||
#:phases
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'move-doc
|
||||
(lambda _
|
||||
|
@ -1504,7 +1488,7 @@ fullscreen) or other display servers.")
|
|||
(define-public wayland-protocols
|
||||
(package
|
||||
(name "wayland-protocols")
|
||||
(version "1.44")
|
||||
(version "1.45")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1513,7 +1497,7 @@ fullscreen) or other display servers.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gjhfiah8hkhqlfan2pr8jvf9h8rjkyz79kkxddi8js2q7dy4bbq"))))
|
||||
"1d2fv41vq75pvgkd3ykjypnp8zv0afv71p36cd91h19lbmwaia8h"))))
|
||||
(build-system meson-build-system)
|
||||
(inputs
|
||||
(list wayland))
|
||||
|
@ -2340,7 +2324,7 @@ between protocols to provide a unified interface for applications.")
|
|||
(inputs (list sqlite))
|
||||
(propagated-inputs
|
||||
;; telepathy-logger-0.2.pc refers to all these.
|
||||
(list libxml2-next telepathy-glib))
|
||||
(list libxml2 telepathy-glib))
|
||||
(synopsis "Telepathy logger library")
|
||||
(home-page "https://telepathy.freedesktop.org/")
|
||||
(description
|
||||
|
|
|
@ -1620,7 +1620,7 @@ color switches, and many more, with multiple options to customize.")
|
|||
(inputs
|
||||
(list (sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))
|
||||
(native-inputs
|
||||
(list python-cython))
|
||||
(list python-cython-0))
|
||||
(home-page "https://www.renpy.org/")
|
||||
(synopsis "Reimplementation of the Pygame API using SDL2")
|
||||
(description "Pygame_SDL2 reimplements the Pygame API using SDL2,
|
||||
|
|
|
@ -244,7 +244,10 @@ provided, as well as a framework to add new color models and data types.")
|
|||
(base32 "0v2wa2a3vnz1g4z5h9s8ili5h5kzk95hxlcp0zlxkwgbf5img1sq"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:configure-flags
|
||||
;; TODO: properly unbundle.
|
||||
'("--wrap-mode=nodownload")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'extend-test-time-outs
|
||||
(lambda _
|
||||
|
|
|
@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
(define-public mesa
|
||||
(package
|
||||
(name "mesa")
|
||||
(version "25.1.3")
|
||||
(version "25.2.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
"mesa-" version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0zxsvly6xjinaicgcf81ycljjjzy3mj0hqwf01b6sdgxnnnnrjzz"))))
|
||||
"1y5lj9zy2hfvx9ji1rvsjapmzap7mpp5i3pf2yfcpmpica2v5mpj"))))
|
||||
(build-system meson-build-system)
|
||||
(propagated-inputs
|
||||
;; The following are in the Requires.private field of gl.pc.
|
||||
|
@ -357,7 +357,6 @@ also known as DXTn or DXTC) for Mesa.")
|
|||
glslang
|
||||
libclc
|
||||
pkg-config
|
||||
python-libxml2 ;for OpenGL ES 1.1 and 2.0 support
|
||||
python-mako
|
||||
python-ply
|
||||
python-pyyaml
|
||||
|
@ -406,13 +405,12 @@ panfrost,r300,r600,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl,zink"))
|
|||
"-Dglx=dri" ;Thread Local Storage, improves performance
|
||||
;; "-Dopencl=true"
|
||||
;; "-Domx=true"
|
||||
"-Dosmesa=true"
|
||||
"-Dgallium-xa=enabled"
|
||||
|
||||
;; features required by wayland
|
||||
"-Dgles2=enabled"
|
||||
"-Dgbm=enabled"
|
||||
"-Dshared-glapi=enabled"
|
||||
"--wrap-mode=nodownload" ; XXX: disable
|
||||
|
||||
#$@(cond
|
||||
((target-x86-32?)
|
||||
|
@ -439,6 +437,9 @@ panfrost,r300,r600,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl,zink"))
|
|||
;; Also enable the tests.
|
||||
"-Dbuild-tests=true"
|
||||
|
||||
;; Re-enable X11 protocol support for the DRI2 extension.
|
||||
"-Dlegacy-x11=dri2"
|
||||
|
||||
"-Dllvm=enabled") ; default is x86/x86_64 only
|
||||
|
||||
;; XXX: 'debugoptimized' causes LTO link failures on some drivers. The
|
||||
|
|
|
@ -770,7 +770,7 @@ The intltool collection can be used to do these things:
|
|||
"1jl7gsr7aclb9nvqazr039m86y7f7ivfhl2pixcrbfqjkb97r6kb"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list bash-minimal libxml2 python-libxml2 python))
|
||||
(list bash-minimal libxml2 python))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
|
@ -858,7 +858,7 @@ by GDBus included in Glib.")
|
|||
pkg-config
|
||||
vala))
|
||||
(inputs (list check python python-pygobject))
|
||||
(propagated-inputs (list glib libxml2-next sqlite))
|
||||
(propagated-inputs (list glib libxml2 sqlite))
|
||||
(arguments
|
||||
(list #:tests? #f ;one test fails.
|
||||
#:imported-modules `((guix build python-build-system)
|
||||
|
|
|
@ -443,7 +443,7 @@ services.")
|
|||
"/share/gtk-doc/html"))))
|
||||
(native-inputs (list docbook-xml-4.1.2 gobject-introspection gtk-doc/stable
|
||||
pkg-config))
|
||||
(propagated-inputs (list glib libsoup-minimal-2 libxml2-next-for-grafting))
|
||||
(propagated-inputs (list glib libsoup-minimal-2 libxml2))
|
||||
(synopsis "Glib library for feeds")
|
||||
(description "LibGRSS is a Glib abstraction to handle feeds in RSS, Atom,
|
||||
and other formats.")
|
||||
|
@ -1223,7 +1223,7 @@ Library reference documentation.")
|
|||
;; These inputs are required by the pkg-config file.
|
||||
(list glib
|
||||
libsoup
|
||||
libxml2-next-for-grafting))
|
||||
libxml2))
|
||||
(synopsis "WebDav server implementation using libsoup")
|
||||
(description "PhoDav was initially developed as a file-sharing mechanism for Spice,
|
||||
but it is generic enough to be reused in other projects,
|
||||
|
@ -1433,7 +1433,7 @@ a debugging tool, @command{gssdp-device-sniffer}.")
|
|||
gsettings-desktop-schemas ;for ‘org.gnome.system.proxy’.
|
||||
gssdp
|
||||
libsoup
|
||||
libxml2-next-for-grafting))
|
||||
libxml2))
|
||||
(synopsis "PnP API for GNOME")
|
||||
(description "This package provides GUPnP, an object-oriented framework
|
||||
for creating UPnP devices and control points, written in C using
|
||||
|
@ -2018,7 +2018,7 @@ and system administrators.")
|
|||
(inputs
|
||||
(list graphene
|
||||
gtk+
|
||||
libxml2-next-for-grafting
|
||||
libxml2
|
||||
libxslt
|
||||
poppler
|
||||
python-minimal
|
||||
|
@ -2068,7 +2068,7 @@ formats like PNG, SVG, PDF and EPS.")
|
|||
("json-glib" ,json-glib)
|
||||
("liboauth" ,liboauth)
|
||||
("libsoup" ,libsoup-minimal-2)
|
||||
("libxml2" ,libxml2-next-for-grafting)))
|
||||
("libxml2" ,libxml2)))
|
||||
(home-page "https://wiki.gnome.org/Projects/libgdata")
|
||||
(synopsis "Library for accessing online service APIs")
|
||||
(description
|
||||
|
@ -3600,7 +3600,7 @@ XML/CSS rendering engine.")
|
|||
zlib))
|
||||
(propagated-inputs
|
||||
(list glib
|
||||
libxml2-next-for-grafting))
|
||||
libxml2))
|
||||
(synopsis "G Structured File Library")
|
||||
(description "Libgsf aims to provide an efficient extensible I/O abstraction
|
||||
for dealing with different structured file formats.")
|
||||
|
@ -3802,7 +3802,7 @@ diagrams.")
|
|||
`(,glib "bin") ; glib-mkenums, etc.
|
||||
gobject-introspection)) ; g-ir-compiler, etc.
|
||||
(inputs
|
||||
(list pango libcroco libxml2))
|
||||
(list pango libcroco libxml2-2.11))
|
||||
(propagated-inputs
|
||||
;; librsvg-2.0.pc refers to all of that.
|
||||
(list cairo gdk-pixbuf glib))
|
||||
|
@ -4215,7 +4215,7 @@ ported to GTK+.")
|
|||
(inputs
|
||||
(list python)) ;; needed for the optional libglade-convert program
|
||||
(propagated-inputs
|
||||
(list gtk+-2 libxml2-next-for-grafting)) ; required by libglade-2.0.pc
|
||||
(list gtk+-2 libxml2)) ; required by libglade-2.0.pc
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(home-page "https://developer.gnome.org/libglade")
|
||||
|
@ -4252,7 +4252,7 @@ widgets built in the loading process.")
|
|||
;; Therefore we must do it.
|
||||
(zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp)))))))))
|
||||
;; Mentioned as Required by the .pc file
|
||||
(propagated-inputs (list libxml2-next-for-grafting))
|
||||
(propagated-inputs (list libxml2))
|
||||
(inputs
|
||||
(list popt pangox-compat libgnome libgnomecanvas libglade))
|
||||
(native-inputs
|
||||
|
@ -4909,7 +4909,7 @@ GLib and GObject, and integrates JSON with GLib data types.")
|
|||
("libtool" ,libtool)))
|
||||
(propagated-inputs
|
||||
;; Required by libxklavier.pc.
|
||||
(list glib libxml2-next-for-grafting))
|
||||
(list glib libxml2))
|
||||
(inputs
|
||||
(list iso-codes/pinned libxi libxkbfile xkbcomp xkeyboard-config))
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/LibXklavier/")
|
||||
|
@ -5019,7 +5019,6 @@ files.")
|
|||
|
||||
(define-public rest
|
||||
(package
|
||||
(replacement rest/fixed)
|
||||
(name "rest")
|
||||
(version "0.8.1")
|
||||
(source (origin
|
||||
|
@ -5048,13 +5047,6 @@ claim to be \"RESTful\". It includes convenience wrappers for libsoup and
|
|||
libxml to ease remote use of the RESTful API.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public rest/fixed
|
||||
(package
|
||||
(inherit rest)
|
||||
(propagated-inputs
|
||||
(modify-inputs (package-propagated-inputs rest)
|
||||
(replace "libxml2" libxml2-next-for-grafting)))))
|
||||
|
||||
(define-public rest-next
|
||||
(package
|
||||
(inherit rest)
|
||||
|
@ -5208,7 +5200,7 @@ as OpenStreetMap, OpenCycleMap, OpenAerialMap and Maps.")
|
|||
libpsl
|
||||
nghttp2 ;for pkg-config
|
||||
`(,nghttp2 "lib")
|
||||
libxml2-next-for-grafting
|
||||
libxml2
|
||||
sqlite
|
||||
zlib))
|
||||
(inputs
|
||||
|
@ -6016,7 +6008,7 @@ service via the system message bus.")
|
|||
(list gtk+
|
||||
gdk-pixbuf
|
||||
json-glib
|
||||
libxml2-next-for-grafting
|
||||
libxml2
|
||||
libsoup
|
||||
geocode-glib))
|
||||
(inputs
|
||||
|
@ -6135,7 +6127,7 @@ settings, themes, mouse settings, and startup of other daemons.")
|
|||
(list intltool
|
||||
`(,glib "bin") gobject-introspection pkg-config))
|
||||
(propagated-inputs
|
||||
(list glib gmime libarchive libgcrypt libxml2-next-for-grafting))
|
||||
(list glib gmime libarchive libgcrypt libxml2))
|
||||
(inputs
|
||||
(list libsoup))
|
||||
(home-page "https://projects.gnome.org/totem")
|
||||
|
@ -8120,7 +8112,7 @@ to display dialog boxes from the commandline and shell scripts.")
|
|||
libxext
|
||||
libxfixes
|
||||
libxkbcommon
|
||||
libxml2-next-for-grafting
|
||||
libxml2
|
||||
libxrandr
|
||||
mesa
|
||||
pango
|
||||
|
@ -8946,7 +8938,7 @@ the available networks and allows users to easily switch between them.")
|
|||
(base32 "0gp8irc5ny9i6bw9fp21p8djgksi1s8l5flbn5blisgfpcb2w820"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
(list libxml2-next-for-grafting)) ;required by .pc file
|
||||
(list libxml2)) ;required by .pc file
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
|
@ -9724,7 +9716,8 @@ easy, safe, and automatic.")
|
|||
#$output "/lib:"
|
||||
#$output "/lib/tracker-3.0")
|
||||
"-Ddocs=false"
|
||||
"-Dsystemd_user_services=false")
|
||||
"-Dsystemd_user_services=false"
|
||||
"--wrap-mode=nodownload") ; XXX: to be disabled
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-paths
|
||||
|
@ -13883,7 +13876,7 @@ developed with the aim of being used with the Librem 5 phone.")
|
|||
sqlite
|
||||
vala))
|
||||
(propagated-inputs
|
||||
(list libxml2-next-for-grafting)) ; required by libgda-5.0.pc
|
||||
(list libxml2)) ; required by libgda-5.0.pc
|
||||
(home-page "https://gitlab.gnome.org/GNOME/libgda")
|
||||
(synopsis "Uniform data access")
|
||||
(description
|
||||
|
|
|
@ -373,7 +373,7 @@ arrays of data.")
|
|||
(define-public gstreamer-docs
|
||||
(package
|
||||
(name "gstreamer-docs")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -381,7 +381,7 @@ arrays of data.")
|
|||
"/gstreamer-docs-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vb4d35rglvjlj2y9r0nlgankflqw0ql6gwsf4612505sa01mz7s"))))
|
||||
"11q0yydchisd4c0jnqa6kmnf66kf25fim3l456krlwcy1qpsvd4j"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
@ -433,7 +433,7 @@ the GStreamer multimedia framework.")
|
|||
(define-public gstreamer
|
||||
(package
|
||||
(name "gstreamer")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -442,7 +442,7 @@ the GStreamer multimedia framework.")
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"03r6rwmih3nqxrfw9nkhpbwpwp1yf7qw3m2phl6a027mxrmppx7b"))))
|
||||
"1016z0znl2j43n08rl19zdhfvfsgnmg44qh8fk6dr4qj481icrnw"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:disallowed-references (list python)
|
||||
|
@ -514,7 +514,7 @@ This package provides the core library and elements.")
|
|||
(define-public gst-plugins-base
|
||||
(package
|
||||
(name "gst-plugins-base")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -522,7 +522,7 @@ This package provides the core library and elements.")
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jspg24zlpmg4bxa298v6l8hcaqw27411dj2v16y0g3xj13bkcsv"))))
|
||||
"0cvrq9767w0aqzinifbirbc95jg4i4md4b8f4b70hlq217pzkyaf"))))
|
||||
(build-system meson-build-system)
|
||||
(propagated-inputs
|
||||
(list glib ;required by gstreamer-sdp-1.0.pc
|
||||
|
@ -622,7 +622,7 @@ for the GStreamer multimedia library.")
|
|||
(define-public gst-plugins-good
|
||||
(package
|
||||
(name "gst-plugins-good")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -631,7 +631,7 @@ for the GStreamer multimedia library.")
|
|||
"https://gstreamer.freedesktop.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "17vr55pgh2paqi82l5jn841873c2w0lal7kgz2i3qzikzw5yazc9"))))
|
||||
(base32 "0lrwscda9yy8a61bv65c3392vb5m8phrl5i7bwgbprnz1rkwjkpy"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -742,14 +742,14 @@ model to base your own plug-in on, here it is.")
|
|||
(define-public gst-plugins-bad
|
||||
(package
|
||||
(name "gst-plugins-bad")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gstreamer.freedesktop.org/src/"
|
||||
name "/" name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1aswb97v1ird3rmfcsa32bvp4kgp8r987f83pd1knx8amylzgz1n"))
|
||||
"0qbmblksgl2nmbi6brw54b1bzziw9flvqk2zb576y9qlmyn8vi4m"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -813,7 +813,13 @@ model to base your own plug-in on, here it is.")
|
|||
((".*elements/dtls\\.c.*") "")
|
||||
|
||||
;; https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3921
|
||||
((".*elements/mxfdemux\\.c.*") ""))
|
||||
((".*elements/mxfdemux\\.c.*") "")
|
||||
|
||||
;; Unable to create pipeline 'bin.
|
||||
;; ( vulkanupload ! vulkancolorconvert ! vulkandownload )':
|
||||
;; no element "vulkanupload"
|
||||
((".*elements/vkcolorconvert\\.c.*") "")
|
||||
((".*elements/vkupload\\.c.*") ""))
|
||||
(substitute* "tests/check/elements/zxing.c"
|
||||
;; zxing 1.2.0 seemingly changed the type representation of
|
||||
;; the EAN_13 structure; disable it.
|
||||
|
@ -952,7 +958,7 @@ par compared to the rest.")
|
|||
(define-public gst-plugins-ugly
|
||||
(package
|
||||
(name "gst-plugins-ugly")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -960,7 +966,7 @@ par compared to the rest.")
|
|||
(string-append "https://gstreamer.freedesktop.org/src/"
|
||||
name "/" name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1dn33ivfc0rnn545y40303h5z9bm5ca9f8j2czmhbk9q1w8k0ssb"))))
|
||||
(base32 "19fvv6rvrcvhw4lnx078xb4b85pzbwbrqwdk841sqd7pjpl5wzs1"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
|
||||
|
@ -1009,7 +1015,7 @@ think twice about shipping them.")
|
|||
(define-public gst-libav
|
||||
(package
|
||||
(name "gst-libav")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1018,7 +1024,7 @@ think twice about shipping them.")
|
|||
"https://gstreamer.freedesktop.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0v253lbic7abc9vpb690f80arql10193ljqkzgs03vh8wnd2ws1j"))))
|
||||
(base32 "0kbjs8z545maj3j2qzgpg41v3yr53q1c852v80zbmf5rld87xnis"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list perl pkg-config python-wrapper ruby))
|
||||
(inputs (list ffmpeg))
|
||||
|
@ -1032,7 +1038,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
|
|||
(define-public gst-editing-services
|
||||
(package
|
||||
(name "gst-editing-services")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1040,7 +1046,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
|
|||
"gst-editing-services-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04khlbw3wy5zr2s246252zrd4hnzv2x36l5avz0lxif6pr9nwl07"))))
|
||||
"1lkgs5h76qzqfpqvi31vs5xr68bbi0kwkw2g0ahvcs1l5hysj86x"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -1099,10 +1105,45 @@ given, also pass them to the build system instead of the ones used by PKG."
|
|||
\"bad\" plugin set, essentially containing libraries and the gst-transcoder
|
||||
binary, but none of the actual plugins.")))
|
||||
|
||||
(define-public gst-rtsp-server
|
||||
(package
|
||||
(name "gst-rtsp-server")
|
||||
(version "1.26.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gstreamer.freedesktop.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1ibg83sa0nswqan5fg378bg36jis5sn1dwfl1mvqjiw4m59qlpj1"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-failing-tests
|
||||
(lambda _
|
||||
(define failing
|
||||
(list "client" "media" "mediafactory" "rtspserver"
|
||||
"sessionmedia" "stream" "onvif" "rtspclientsink"))
|
||||
(substitute* "tests/check/meson.build"
|
||||
(("'gst/(.*)',?" all test)
|
||||
(if (member test failing) "" all))))))))
|
||||
(propagated-inputs
|
||||
(list gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad))
|
||||
(native-inputs (list gobject-introspection
|
||||
`(,glib "bin")
|
||||
pkg-config
|
||||
python-wrapper))
|
||||
(home-page "https://gstreamer.freedesktop.org/")
|
||||
(synopsis "Library for building RTSP servers with GStreamer")
|
||||
(description "This package provides a GStreamer extension to handle
|
||||
RTSP connections and messages.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public python-gst
|
||||
(package
|
||||
(name "python-gst")
|
||||
(version "1.24.9")
|
||||
(version "1.26.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1110,7 +1151,7 @@ binary, but none of the actual plugins.")))
|
|||
"gst-python-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0bplhfnvsi3l9fmfb346n2dvzi1jrxqpp4kcwiwsrjrlgic1vrl0"))))
|
||||
"04hv5pj8br56knvw1nsx74j1lpxskbm6znsdqac28iszqjkvjhwk"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -1126,7 +1167,10 @@ binary, but none of the actual plugins.")))
|
|||
(native-inputs
|
||||
(list pkg-config python))
|
||||
(propagated-inputs
|
||||
(list gst-plugins-base python-pygobject))
|
||||
(list gst-plugins-base
|
||||
gst-plugins-bad ; for gst-analytics
|
||||
gst-rtsp-server
|
||||
python-pygobject))
|
||||
(home-page "https://gstreamer.freedesktop.org/")
|
||||
(synopsis "GStreamer GObject Introspection overrides for Python")
|
||||
(description
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr>
|
||||
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2023, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2024, 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
|
||||
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
|
||||
;;;
|
||||
|
@ -613,7 +613,7 @@ diagrams.")
|
|||
fribidi
|
||||
glib
|
||||
gtk
|
||||
libxml2-next
|
||||
libxml2
|
||||
pango
|
||||
pcre2))
|
||||
(home-page "https://wiki.gnome.org/Projects/GtkSourceView")
|
||||
|
@ -1009,19 +1009,19 @@ application suites.")
|
|||
(package
|
||||
(inherit gtk+-2)
|
||||
(name "gtk+")
|
||||
(version "3.24.43")
|
||||
(replacement gtk+/fixed)
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1izky8dxaxp4bg5nii4n58dgpkw79mvmvbkldf04n0qmhmjg013y"))
|
||||
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
|
||||
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
|
||||
(version "3.24.49")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/gtk")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0flsnh3f0l9v3y2hmnxz1h15nw1l12ixmiwcpiy1ywplrlgq4j00"))
|
||||
(patches (search-patches
|
||||
"gtk3-respect-GUIX_GTK3_PATH.patch"
|
||||
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
|
||||
;; There is no "doc" output, because adding gtk-doc here would introduce a
|
||||
;; dependency cycle with itself.
|
||||
(outputs '("out" "bin"))
|
||||
|
@ -1097,11 +1097,22 @@ application suites.")
|
|||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-failing-tests
|
||||
(lambda _
|
||||
;; These tests fail only in the containerized environment, for
|
||||
;; unknown reasons.
|
||||
(substitute* "testsuite/gtk/meson.build"
|
||||
((".*\\['defaultvalue'],.*") "")
|
||||
((".*\\['objects-finalize',.*") ""))))
|
||||
;; These tests fail only in the containerized environment, for
|
||||
;; unknown reasons.
|
||||
(substitute* "testsuite/gtk/meson.build"
|
||||
((".*\\['defaultvalue'],.*") "")
|
||||
((".*\\['objects-finalize',.*") ""))
|
||||
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
|
||||
;; fail for unknown reasons (see:
|
||||
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
|
||||
(substitute* "testsuite/reftests/meson.build"
|
||||
((" 'flipping-icons.ui',.*") "")
|
||||
((" 'gtk-icontheme-sizing.ui',.*") ""))
|
||||
;; This test fails just on i686-linux, for unknown reasons.
|
||||
#$@(if (target-x86-32?)
|
||||
#~((substitute* "testsuite/reftests/meson.build"
|
||||
((" 'linear-gradient.ui',.*") "")))
|
||||
#~())))
|
||||
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
|
||||
(assoc-ref glib-or-gtk:%standard-phases
|
||||
'generate-gdk-pixbuf-loaders-cache-file))
|
||||
|
@ -1128,41 +1139,6 @@ application suites.")
|
|||
(variable "GUIX_GTK3_PATH")
|
||||
(files '("lib/gtk-3.0")))))))
|
||||
|
||||
(define-public gtk+/fixed
|
||||
(package
|
||||
(inherit gtk+)
|
||||
(name "gtk+")
|
||||
(version "3.24.49")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/gtk")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0flsnh3f0l9v3y2hmnxz1h15nw1l12ixmiwcpiy1ywplrlgq4j00"))
|
||||
(patches (search-patches
|
||||
"gtk3-respect-GUIX_GTK3_PATH.patch"
|
||||
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments gtk+)
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
(replace 'disable-failing-tests
|
||||
(lambda _
|
||||
;; These tests fail only in the containerized environment, for
|
||||
;; unknown reasons.
|
||||
(substitute* "testsuite/gtk/meson.build"
|
||||
((".*\\['defaultvalue'],.*") "")
|
||||
((".*\\['objects-finalize',.*") ""))
|
||||
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
|
||||
;; fail for unknown reasons (see:
|
||||
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
|
||||
(substitute* "testsuite/reftests/meson.build"
|
||||
((" 'flipping-icons.ui',.*") "")
|
||||
((" 'gtk-icontheme-sizing.ui',.*") ""))))))))))
|
||||
|
||||
(define-public gtk
|
||||
(package
|
||||
(name "gtk")
|
||||
|
@ -2370,7 +2346,8 @@ information.")
|
|||
(base32
|
||||
"0746lwxgybc5ss3hzdd0crjjghk0ck0x9jbmz73iig405arp42xj"))
|
||||
(patches
|
||||
(search-patches "gtk-doc-respect-xml-catalog.patch"))))
|
||||
(search-patches "gtk-doc-respect-xml-catalog.patch"
|
||||
"gtk-doc-mkhtml-test-fix.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
|
|
@ -815,7 +815,7 @@ the OpenCV-Python library.")
|
|||
libpng
|
||||
(librsvg-for-system)
|
||||
libtiff
|
||||
libxml2-next
|
||||
libxml2
|
||||
libwebp
|
||||
matio
|
||||
openexr
|
||||
|
|
|
@ -783,7 +783,7 @@ For PDF support, install the @emph{mupdf} package.")
|
|||
(define-public qpageview
|
||||
(package
|
||||
(name "qpageview")
|
||||
(version "0.6.2")
|
||||
(version "1.0.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -792,15 +792,16 @@ For PDF support, install the @emph{mupdf} package.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xdhiglzqxyp05blp66l52nbzbpn10hmdm2idhncz6pf7qw16lsw"))))
|
||||
(build-system python-build-system)
|
||||
"0h3b7qhmjk1bz7ws7jwa9012wh2yvmk45j21ciyzj28mcjx9ygz4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(home-page "https://qpageview.org/")
|
||||
(synopsis "Page based document viewer widget for Qt5/PyQt5")
|
||||
(synopsis "Page based document viewer widget for Qt/PyQt")
|
||||
(inputs
|
||||
(list python-pyqt qtbase-5))
|
||||
(list python-pyqt-6 qtbase))
|
||||
(native-inputs (list python-hatchling))
|
||||
(description
|
||||
"@code{qpageview} provides a page based document viewer widget for Qt5
|
||||
and PyQt5. It has a flexible architecture potentionally supporting many
|
||||
"@code{qpageview} provides a page based document viewer widget for Qt
|
||||
and PyQt. It has a flexible architecture potentionally supporting many
|
||||
formats. Currently, it supports SVG documents, images, and, using the
|
||||
Poppler-Qt5 binding, PDF documents.")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com>
|
||||
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
|
||||
;;; Copyright © 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -78,6 +79,7 @@
|
|||
(base32 "0sq81smxwypgnp7r3wgza8w25dsz9qa8ga79sc85xzj3qi6q9lfv"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 format)))
|
||||
(patches (search-patches "inkscape-libxml2.patch"))
|
||||
(snippet
|
||||
'(begin
|
||||
(let-syntax
|
||||
|
|
|
@ -286,7 +286,7 @@ into other word processors.")
|
|||
(native-inputs
|
||||
(list cppunit gperf pkg-config))
|
||||
(propagated-inputs ; in Requires or Requires.private field of .pkg
|
||||
(list icu4c liblangtag librevenge libxml2-next))
|
||||
(list icu4c liblangtag librevenge libxml2))
|
||||
(inputs
|
||||
(list boost))
|
||||
(arguments
|
||||
|
@ -372,7 +372,7 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
|
|||
(native-inputs
|
||||
(list autoconf automake libtool cppunit pkg-config))
|
||||
(propagated-inputs ;in Requires field of .pkg
|
||||
(list curl libxml2-next))
|
||||
(list curl libxml2))
|
||||
(inputs
|
||||
(list boost cyrus-sasl openssl))
|
||||
(arguments
|
||||
|
@ -413,7 +413,7 @@ as Alfresco or Nuxeo.")
|
|||
(native-inputs
|
||||
(list doxygen gperf perl pkg-config))
|
||||
(propagated-inputs ; in Requires or Requires.private field of .pkg
|
||||
(list librevenge libxml2-next))
|
||||
(list librevenge libxml2))
|
||||
(inputs
|
||||
(list boost))
|
||||
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libabw")
|
||||
|
@ -467,7 +467,7 @@ CorelDRAW documents of all versions.")
|
|||
(native-inputs
|
||||
(list cppunit doxygen gperf pkg-config))
|
||||
(propagated-inputs ; in Requires or Requires.private field of .pkg
|
||||
(list liblangtag librevenge libxml2-next zlib))
|
||||
(list liblangtag librevenge libxml2 zlib))
|
||||
(inputs
|
||||
(list boost glm mdds))
|
||||
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libetonyek")
|
||||
|
@ -479,14 +479,14 @@ Apple Keynote documents. It currently supports Keynote versions 2 to 5.")
|
|||
(define-public liblangtag
|
||||
(package
|
||||
(name "liblangtag")
|
||||
(version "0.6.4")
|
||||
(version "0.6.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/tagoh/liblangtag/downloads/"
|
||||
"liblangtag-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0r55r30ih8dgq1hwbpl834igilj7bpxcnmlrlkd3vryk2wn0c0ap"))))
|
||||
(base32 "03h33sjqsrmmkyj2kxs7c6226hd4s5n22bz62b4hag1zmvabrmjy"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list libtool pkg-config))
|
||||
|
@ -772,15 +772,28 @@ Works word processor file format.")
|
|||
(uri (string-append "http://dev-www.libreoffice.org/src/libzmf/libzmf-"
|
||||
version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"08mg5kmkjrmqrd8j5rkzw9vdqlvibhb1ynp6bmfxnzq5rcq1l197"))))
|
||||
"08mg5kmkjrmqrd8j5rkzw9vdqlvibhb1ynp6bmfxnzq5rcq1l197"))
|
||||
(patches (search-patches "libzmf-doxygen-1.14.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
;; A harmless 'sign-compare' error pops up on i686 so disable '-Werror'.
|
||||
'(#:configure-flags '("--disable-werror")))
|
||||
(list
|
||||
;; A harmless 'sign-compare' error pops up on i686 so disable '-Werror'.
|
||||
#:configure-flags #~'("--disable-werror")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
;; Override the bootstrap phase as a makefile has been patched.
|
||||
(invoke "autoreconf" "-vif"))))))
|
||||
(inputs
|
||||
(list boost icu4c libpng librevenge zlib))
|
||||
(native-inputs
|
||||
(list cppunit doxygen pkg-config))
|
||||
(list autoconf
|
||||
automake
|
||||
libtool
|
||||
cppunit
|
||||
doxygen
|
||||
pkg-config))
|
||||
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libzmf")
|
||||
(synopsis "Parses file format of Zoner Callisto/Draw documents")
|
||||
(description "Libzmf is a library that parses the file format of Zoner
|
||||
|
|
|
@ -402,6 +402,15 @@ classification.")
|
|||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; TODO: Review tests.
|
||||
#~(list
|
||||
;; Failed: 'yield' keyword is allowed in fixtures, but not in tests
|
||||
;; (test_scale2_models)
|
||||
"--ignore=GPy/testing/test_likelihood.py"
|
||||
;; Failed: 'yield' keyword is allowed in fixtures, but not in
|
||||
;; tests (test_figure)
|
||||
"--ignore=GPy/testing/test_plotting.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'compatibility
|
||||
|
@ -2204,32 +2213,39 @@ for scientific computing and data science (e.g. BLAS and OpenMP).")
|
|||
(define-public python-hdbscan
|
||||
(package
|
||||
(name "python-hdbscan")
|
||||
(version "0.8.33")
|
||||
(version "0.8.40")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "hdbscan" version))
|
||||
(sha256
|
||||
(base32 "03gr70ys1zrnp15pxzhichvrdj5bj88p6p5k0wj8vx251rgvryjp"))))
|
||||
(base32 "05wask431fm78n1227dhvwsmlnys9d95vxjz0y8hbvmy2zzq7qy9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; XXX: Test files which fail during test collection.
|
||||
#~(list "--ignore=hdbscan/tests/test_branches.py"
|
||||
"--ignore=hdbscan/tests/test_hdbscan.py"
|
||||
"--ignore=hdbscan/tests/test_rsl.py")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(delete-file "hdbscan/tests/__init__.py")))
|
||||
(add-before 'check 'build-extensions
|
||||
(lambda _
|
||||
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
|
||||
(propagated-inputs (list python-joblib
|
||||
python-numpy
|
||||
python-scikit-learn
|
||||
python-scipy))
|
||||
(native-inputs (list python-cython
|
||||
python-nose
|
||||
python-pytest
|
||||
python-pandas
|
||||
python-networkx
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
python-numpy
|
||||
python-pytest
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-joblib
|
||||
python-numpy
|
||||
python-scikit-learn
|
||||
python-scipy))
|
||||
(home-page "https://github.com/scikit-learn-contrib/hdbscan")
|
||||
(synopsis "High performance implementation of HDBSCAN clustering")
|
||||
(description "HDBSCAN - Hierarchical Density-Based Spatial Clustering of
|
||||
|
@ -4875,10 +4891,11 @@ AI services.")
|
|||
(base32
|
||||
"1xg9cngdz9dsxwcpcmzf28q306i15hw58h54allhb41q4wzziqip"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;XXX: broken tests
|
||||
(native-inputs
|
||||
(list python-coverage
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-importlib-metadata
|
||||
python-packaging
|
||||
|
|
|
@ -1415,54 +1415,43 @@ attachments, create new maildirs, and so on.")
|
|||
(define-public alot
|
||||
(package
|
||||
(name "alot")
|
||||
(version "0.10")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
;; package author intends on distributing via github rather
|
||||
;; than pypi:
|
||||
;; https://github.com/pazz/alot/issues/877#issuecomment-230173331
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pazz/alot")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0awf1phdy1wqm01cy9zmvqlw6c8pvkxm2f9ncjd0cmzxqnmq1dyn"))))
|
||||
(build-system python-build-system)
|
||||
(version "0.11")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pazz/alot")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "19rn587n81gwx1f49bvm34m60708h5z47hcgiaqlpsznbv792xlr"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((gnupg (assoc-ref inputs "gnupg")))
|
||||
(substitute* "tests/test_crypto.py"
|
||||
(("gpg2") (string-append gnupg "/bin/gpg")))
|
||||
#t)))
|
||||
(add-before 'check 'disable-failing-tests
|
||||
;; FIXME: Investigate why these tests are failing.
|
||||
(lambda _
|
||||
(substitute* "tests/test_helper.py"
|
||||
(("def test_env_set") "def _test_env_set"))
|
||||
(substitute* "tests/commands/test_global.py"
|
||||
(("def test_no_spawn_no_stdin_attached")
|
||||
"def _test_no_spawn_no_stdin_attached"))
|
||||
;; FIXME: Investigate why this test hangs.
|
||||
(substitute* "tests/db/test_manager.py"
|
||||
(("def test_save_named_query")
|
||||
"def _test_save_named_query"))
|
||||
#t)))))
|
||||
(list
|
||||
;; TODO: Tests fail with error: alot.settings.errors.ConfigError:
|
||||
;; failed to read notmuch config with command
|
||||
;;
|
||||
;; CI is complex, see: <.github/workflows/test.yml>.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "pyproject.toml"
|
||||
;; python-gpg is added and it's on the latest version.
|
||||
(("gpg>1.10.0") "gpg")))))))
|
||||
(native-inputs
|
||||
(list procps python-mock))
|
||||
(list procps
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list gnupg
|
||||
python-magic
|
||||
python-configobj
|
||||
python-twisted
|
||||
python-service-identity
|
||||
python-urwid
|
||||
python-urwidtrees
|
||||
python-gpg
|
||||
python-notmuch2))
|
||||
python-notmuch2
|
||||
python-magic
|
||||
python-twisted
|
||||
python-urwid
|
||||
python-urwidtrees))
|
||||
(home-page "https://github.com/pazz/alot")
|
||||
(synopsis "Command-line MUA using Notmuch")
|
||||
(description
|
||||
|
@ -1685,11 +1674,8 @@ useful for email address completion.")
|
|||
(("libnotmuch\\.so\\.")
|
||||
(format #f "~a/lib/libnotmuch.so."
|
||||
#$(this-package-input "notmuch")))))))))
|
||||
(native-inputs
|
||||
(list python-setuptools
|
||||
python-wheel))
|
||||
(inputs
|
||||
(list notmuch))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list notmuch))
|
||||
(home-page (package-home-page notmuch))
|
||||
(synopsis "Python bindings of the Notmuch mail indexing library")
|
||||
(description
|
||||
|
@ -1702,7 +1688,6 @@ and search library.")
|
|||
(inherit python-notmuch)
|
||||
(name "python-notmuch2")
|
||||
(version (package-version notmuch))
|
||||
(propagated-inputs (list python-cffi))
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
|
@ -1731,6 +1716,8 @@ and search library.")
|
|||
"'/dev/null'")
|
||||
(("version=VERSION,")
|
||||
(string-append "version='" #$version "',"))))))))
|
||||
(propagated-inputs (list python-cffi))
|
||||
(native-inputs (list python-pytest python-pytest-cov python-setuptools))
|
||||
(synopsis "Pythonic bindings for the notmuch mail database using CFFI")
|
||||
(license license:gpl3+)))
|
||||
|
||||
|
|
|
@ -303,7 +303,7 @@ desktop and the mate-about program.")
|
|||
(propagated-inputs
|
||||
;; both of these are requires.private in mateweather.pc
|
||||
(list libsoup-minimal-2
|
||||
libxml2-next))
|
||||
libxml2))
|
||||
(home-page "https://mate-desktop.org/")
|
||||
(synopsis "MATE library for weather information from the Internet")
|
||||
(description
|
||||
|
|
|
@ -300,7 +300,7 @@ XMPP-based sessions.")
|
|||
gtk-doc/stable
|
||||
pkg-config))
|
||||
(inputs (list libxcrypt ncurses))
|
||||
(propagated-inputs (list glib libxml2-next))
|
||||
(propagated-inputs (list glib libxml2))
|
||||
(synopsis "GLib Ncurses Toolkit")
|
||||
(description "GNT is an ncurses toolkit for creating text-mode graphical
|
||||
user interfaces in a fast and easy way. It is based on GLib and ncurses.")
|
||||
|
|
|
@ -51,6 +51,7 @@
|
|||
#:use-module ((guix build-system python) #:select (pypi-uri))
|
||||
#:use-module (guix build-system pyproject)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (srfi srfi-1))
|
||||
|
@ -259,43 +260,49 @@ is for some reason not possible and local caching of the fetched data.")
|
|||
(list python-pbr-next python-setuptools python-wheel)))))
|
||||
|
||||
(define-public python-os-testr
|
||||
(package
|
||||
(name "python-os-testr")
|
||||
(version "3.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "os-testr" version))
|
||||
(sha256
|
||||
(base32 "0vik5sjl0qhz6xqqg6gnaf5jva31m7xykyc0azb53jfq7y57ladv"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "test-requirements.txt"
|
||||
(("(coverage|hacking).*")
|
||||
"")))))))
|
||||
(propagated-inputs
|
||||
(list python-stestr))
|
||||
(native-inputs
|
||||
(list python-babel
|
||||
python-ddt
|
||||
python-oslotest
|
||||
python-pbr
|
||||
python-setuptools
|
||||
python-testrepository
|
||||
python-testscenarios
|
||||
python-testtools
|
||||
python-wheel))
|
||||
(home-page "https://www.openstack.org/")
|
||||
(synopsis "Testr wrapper to provide functionality for OpenStack projects")
|
||||
(description
|
||||
"Os-testr provides developers with a testr wrapper and an output filter
|
||||
(let ((commit "0ba674d8c5d34890698e4e8ff9f71b24c389e109")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "python-os-testr")
|
||||
(version (git-version "3.0.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/openstack/os-testr")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1fd8n5fsq35ikak8by4z45sya2m1pmxpc4440579rfk3jjsq4vgc"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "test-requirements.txt"
|
||||
(("(coverage|hacking).*")
|
||||
""))))
|
||||
(add-after 'unpack 'set-version
|
||||
(lambda _
|
||||
(setenv "PBR_VERSION" "3.0.0"))))))
|
||||
(propagated-inputs (list python-stestr))
|
||||
(native-inputs
|
||||
(list python-babel
|
||||
python-ddt
|
||||
python-oslotest
|
||||
python-pbr
|
||||
python-setuptools
|
||||
python-testrepository
|
||||
python-testscenarios
|
||||
python-testtools))
|
||||
(home-page "https://github.com/openstack/os-testr")
|
||||
(synopsis "Testr wrapper to provide functionality for OpenStack projects")
|
||||
(description
|
||||
"Os-testr provides developers with a testr wrapper and an output filter
|
||||
for subunit.")
|
||||
(license license:asl2.0)))
|
||||
(license license:asl2.0))))
|
||||
|
||||
(define-public python-stevedore
|
||||
(package
|
||||
|
@ -553,13 +560,13 @@ for running external processes.")
|
|||
(define-public python-oslo-config
|
||||
(package
|
||||
(name "python-oslo-config")
|
||||
(version "8.7.1")
|
||||
(version "9.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "oslo.config" version))
|
||||
(uri (pypi-uri "oslo_config" version))
|
||||
(sha256
|
||||
(base32 "0q3v4yicqls9zsfxkmh5mrgz9dailaz3ir25p458gj6dg3bldhx0"))))
|
||||
(base32 "1ah8knzcxkg28v9av19wp6bg91d1mfyxm2y56whngvmb0jah1a7f"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -586,7 +593,6 @@ for running external processes.")
|
|||
(list python-coverage
|
||||
python-docutils
|
||||
python-fixtures
|
||||
python-mypy
|
||||
python-oslo-log-bootstrap
|
||||
python-oslotest-bootstrap
|
||||
python-pbr
|
||||
|
@ -595,8 +601,7 @@ for running external processes.")
|
|||
python-sphinx
|
||||
python-stestr
|
||||
python-testscenarios
|
||||
python-testtools
|
||||
python-wheel))
|
||||
python-testtools))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Oslo Configuration API")
|
||||
(description
|
||||
|
@ -1146,29 +1151,39 @@ Gerrit for review, or fetching existing ones.")
|
|||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "requestsexceptions" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/openstack/requestsexceptions")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0r9hp9yzgj8r81q5gc6r8sgxldqc09xi6ax0b7a6dw0qfv3wp5dh"))))
|
||||
(base32 "12c4bi2vm337sgbbl08i01v794glnk1fzgxdc11545dqdl57rslz"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: There are some tests in tox.ini, but it leads nowhere.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "test-requirements.txt"
|
||||
(("hacking.*")
|
||||
"")))))))
|
||||
(native-inputs (list python-pbr python-setuptools python-wheel))
|
||||
(home-page "https://www.openstack.org/")
|
||||
(synopsis "Import exceptions from potentially bundled packages in requests")
|
||||
(description "The Python requests library bundles the urllib3 library,
|
||||
however, some software distributions modify requests to remove the bundled
|
||||
library. This makes some operations difficult, such as suppressing the
|
||||
“insecure platform warning” messages that urllib emits. This package is a
|
||||
simple library to find the correct path to exceptions in the requests library
|
||||
regardless of whether they are bundled or not.")
|
||||
""))))
|
||||
(add-after 'unpack 'set-version
|
||||
(lambda _
|
||||
(setenv "PBR_VERSION" #$version))))))
|
||||
(native-inputs (list python-os-testr python-pbr python-setuptools))
|
||||
(home-page "https://github.com/openstack/requestsexceptions")
|
||||
(synopsis
|
||||
"Import exceptions from potentially bundled packages in requests")
|
||||
(description
|
||||
"The Python requests library bundles the urllib3 library, however, some
|
||||
software distributions modify requests to remove the bundled library. This
|
||||
makes some operations difficult, such as suppressing the “insecure platform
|
||||
warning” messages that urllib emits. This package is a simple library to find
|
||||
the correct path to exceptions in the requests library regardless of whether
|
||||
they are bundled or not.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-openstacksdk
|
||||
|
|
|
@ -1,529 +0,0 @@
|
|||
From 373924d728b61cf6dec9c8a1a1edeb4b9f342529 Mon Sep 17 00:00:00 2001
|
||||
From: Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
Date: Fri, 27 Sep 2024 17:03:10 +0200
|
||||
Subject: [PATCH] gnu: cups-minimal: Address PPD injection issues.
|
||||
|
||||
This patch combines 5 upstream commits:
|
||||
9939a70b750edd9d05270060cc5cf62ca98cfbe5
|
||||
04bb2af4521b56c1699a2c2431c56c05a7102e69
|
||||
e0630cd18f76340d302000f2bf6516e99602b844
|
||||
1e6ca5913eceee906038bc04cc7ccfbe2923bdfd
|
||||
2abe1ba8a66864aa82cd9836b37e57103b8e1a3b
|
||||
---
|
||||
cups/ppd-cache.c | 235 +++++++++++++++++++++++++++++++++--------------
|
||||
scheduler/ipp.c | 9 +-
|
||||
2 files changed, 174 insertions(+), 70 deletions(-)
|
||||
|
||||
diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
|
||||
index e750fccd4..d2533b731 100644
|
||||
--- a/cups/ppd-cache.c
|
||||
+++ b/cups/ppd-cache.c
|
||||
@@ -32,6 +32,7 @@
|
||||
static int cups_connect(http_t **http, const char *url, char *resource, size_t ressize);
|
||||
static int cups_get_url(http_t **http, const char *url, char *name, size_t namesize);
|
||||
static const char *ppd_inputslot_for_keyword(_ppd_cache_t *pc, const char *keyword);
|
||||
+static void ppd_put_string(cups_file_t *fp, cups_lang_t *lang, cups_array_t *strings, const char *ppd_option, const char *ppd_choice, const char *pwg_msgid);
|
||||
static void pwg_add_finishing(cups_array_t *finishings, ipp_finishings_t template, const char *name, const char *value);
|
||||
static void pwg_add_message(cups_array_t *a, const char *msg, const char *str);
|
||||
static int pwg_compare_finishings(_pwg_finishings_t *a, _pwg_finishings_t *b);
|
||||
@@ -3197,9 +3198,10 @@ _ppdCreateFromIPP2(
|
||||
ipp_t *media_col, /* Media collection */
|
||||
*media_size; /* Media size collection */
|
||||
char make[256], /* Make and model */
|
||||
- *model, /* Model name */
|
||||
+ *mptr, /* Pointer into make and model */
|
||||
ppdname[PPD_MAX_NAME];
|
||||
/* PPD keyword */
|
||||
+ const char *model; /* Model name */
|
||||
int i, j, /* Looping vars */
|
||||
count, /* Number of values */
|
||||
bottom, /* Largest bottom margin */
|
||||
@@ -3221,8 +3223,7 @@ _ppdCreateFromIPP2(
|
||||
int have_qdraft = 0,/* Have draft quality? */
|
||||
have_qhigh = 0; /* Have high quality? */
|
||||
char msgid[256]; /* Message identifier (attr.value) */
|
||||
- const char *keyword, /* Keyword value */
|
||||
- *msgstr; /* Localized string */
|
||||
+ const char *keyword; /* Keyword value */
|
||||
cups_array_t *strings = NULL;/* Printer strings file */
|
||||
struct lconv *loc = localeconv();
|
||||
/* Locale data */
|
||||
@@ -3260,34 +3261,104 @@ _ppdCreateFromIPP2(
|
||||
}
|
||||
|
||||
/*
|
||||
- * Standard stuff for PPD file...
|
||||
+ * Get a sanitized make and model...
|
||||
*/
|
||||
|
||||
- cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
|
||||
- cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
|
||||
- cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
|
||||
- cupsFilePuts(fp, "*LanguageVersion: English\n");
|
||||
- cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
|
||||
- cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
|
||||
- cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
|
||||
- cupsFilePuts(fp, "*FileSystem: False\n");
|
||||
- cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL && ippValidateAttribute(attr))
|
||||
+ {
|
||||
+ /*
|
||||
+ * Sanitize the model name to only contain PPD-safe characters.
|
||||
+ */
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL)
|
||||
strlcpy(make, ippGetString(attr, 0, NULL), sizeof(make));
|
||||
+
|
||||
+ for (mptr = make; *mptr; mptr ++)
|
||||
+ {
|
||||
+ if (*mptr < ' ' || *mptr >= 127 || *mptr == '\"')
|
||||
+ {
|
||||
+ /*
|
||||
+ * Truncate the make and model on the first bad character...
|
||||
+ */
|
||||
+
|
||||
+ *mptr = '\0';
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ while (mptr > make)
|
||||
+ {
|
||||
+ /*
|
||||
+ * Strip trailing whitespace...
|
||||
+ */
|
||||
+
|
||||
+ mptr --;
|
||||
+ if (*mptr == ' ')
|
||||
+ *mptr = '\0';
|
||||
+ }
|
||||
+
|
||||
+ if (!make[0])
|
||||
+ {
|
||||
+ /*
|
||||
+ * Use a default make and model if nothing remains...
|
||||
+ */
|
||||
+
|
||||
+ strlcpy(make, "Unknown", sizeof(make));
|
||||
+ }
|
||||
+ }
|
||||
else
|
||||
- strlcpy(make, "Unknown Printer", sizeof(make));
|
||||
+ {
|
||||
+ /*
|
||||
+ * Use a default make and model...
|
||||
+ */
|
||||
+
|
||||
+ strlcpy(make, "Unknown", sizeof(make));
|
||||
+ }
|
||||
|
||||
if (!_cups_strncasecmp(make, "Hewlett Packard ", 16) || !_cups_strncasecmp(make, "Hewlett-Packard ", 16))
|
||||
{
|
||||
+ /*
|
||||
+ * Normalize HP printer make and model...
|
||||
+ */
|
||||
+
|
||||
model = make + 16;
|
||||
strlcpy(make, "HP", sizeof(make));
|
||||
+
|
||||
+ if (!_cups_strncasecmp(model, "HP ", 3))
|
||||
+ model += 3;
|
||||
+ }
|
||||
+ else if ((mptr = strchr(make, ' ')) != NULL)
|
||||
+ {
|
||||
+ /*
|
||||
+ * Separate "MAKE MODEL"...
|
||||
+ */
|
||||
+
|
||||
+ while (*mptr && *mptr == ' ')
|
||||
+ *mptr++ = '\0';
|
||||
+
|
||||
+ model = mptr;
|
||||
}
|
||||
- else if ((model = strchr(make, ' ')) != NULL)
|
||||
- *model++ = '\0';
|
||||
else
|
||||
- model = make;
|
||||
+ {
|
||||
+ /*
|
||||
+ * No separate model name...
|
||||
+ */
|
||||
|
||||
+ model = "Printer";
|
||||
+ }
|
||||
+
|
||||
+ /*
|
||||
+ * Standard stuff for PPD file...
|
||||
+ */
|
||||
+
|
||||
+ cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
|
||||
+ cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
|
||||
+ cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
|
||||
+ cupsFilePuts(fp, "*LanguageVersion: English\n");
|
||||
+ cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
|
||||
+ cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
|
||||
+ cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
|
||||
+ cupsFilePuts(fp, "*FileSystem: False\n");
|
||||
+ cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
|
||||
cupsFilePrintf(fp, "*Manufacturer: \"%s\"\n", make);
|
||||
cupsFilePrintf(fp, "*ModelName: \"%s\"\n", model);
|
||||
cupsFilePrintf(fp, "*Product: \"(%s)\"\n", model);
|
||||
@@ -3317,13 +3388,13 @@ _ppdCreateFromIPP2(
|
||||
}
|
||||
cupsFilePuts(fp, "\"\n");
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
|
||||
cupsFilePrintf(fp, "*APSupplies: \"%s\"\n", ippGetString(attr, 0, NULL));
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
|
||||
cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0, NULL));
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
|
||||
{
|
||||
http_t *http = NULL; /* Connection to printer */
|
||||
char stringsfile[1024]; /* Temporary strings file */
|
||||
@@ -3367,7 +3438,7 @@ _ppdCreateFromIPP2(
|
||||
|
||||
response = cupsDoRequest(http, request, resource);
|
||||
|
||||
- if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
|
||||
cupsFilePrintf(fp, "*cupsStringsURI %s: \"%s\"\n", keyword, ippGetString(attr, 0, NULL));
|
||||
|
||||
ippDelete(response);
|
||||
@@ -3389,10 +3460,10 @@ _ppdCreateFromIPP2(
|
||||
if (ippGetBoolean(ippFindAttribute(supported, "job-accounting-user-id-supported", IPP_TAG_BOOLEAN), 0))
|
||||
cupsFilePuts(fp, "*cupsJobAccountingUserId: True\n");
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
|
||||
cupsFilePrintf(fp, "*cupsPrivacyURI: \"%s\"\n", ippGetString(attr, 0, NULL));
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
|
||||
{
|
||||
char prefix = '\"'; // Prefix for string
|
||||
|
||||
@@ -3410,7 +3481,7 @@ _ppdCreateFromIPP2(
|
||||
cupsFilePuts(fp, "\"\n");
|
||||
}
|
||||
|
||||
- if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL)
|
||||
+ if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
|
||||
{
|
||||
char prefix = '\"'; // Prefix for string
|
||||
|
||||
@@ -3973,18 +4044,16 @@ _ppdCreateFromIPP2(
|
||||
cupsFilePrintf(fp, "*DefaultInputSlot: %s\n", ppdname);
|
||||
|
||||
for (j = 0; j < (int)(sizeof(sources) / sizeof(sources[0])); j ++)
|
||||
+ {
|
||||
if (!strcmp(sources[j], keyword))
|
||||
{
|
||||
snprintf(msgid, sizeof(msgid), "media-source.%s", keyword);
|
||||
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
-
|
||||
cupsFilePrintf(fp, "*InputSlot %s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, j);
|
||||
- cupsFilePrintf(fp, "*%s.InputSlot %s/%s: \"\"\n", lang->language, ppdname, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "InputSlot", ppdname, msgid);
|
||||
break;
|
||||
}
|
||||
+ }
|
||||
}
|
||||
cupsFilePuts(fp, "*CloseUI: *InputSlot\n");
|
||||
}
|
||||
@@ -4010,12 +4079,9 @@ _ppdCreateFromIPP2(
|
||||
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "media-type.%s", keyword);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
cupsFilePrintf(fp, "*MediaType %s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, ppdname);
|
||||
- cupsFilePrintf(fp, "*%s.MediaType %s/%s: \"\"\n", lang->language, ppdname, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "MediaType", ppdname, msgid);
|
||||
}
|
||||
cupsFilePuts(fp, "*CloseUI: *MediaType\n");
|
||||
}
|
||||
@@ -4476,12 +4542,9 @@ _ppdCreateFromIPP2(
|
||||
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "output-bin.%s", keyword);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
cupsFilePrintf(fp, "*OutputBin %s: \"\"\n", ppdname);
|
||||
- cupsFilePrintf(fp, "*%s.OutputBin %s/%s: \"\"\n", lang->language, ppdname, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "OutputBin", ppdname, msgid);
|
||||
|
||||
if ((tray_ptr = ippGetOctetString(trays, i, &tray_len)) != NULL)
|
||||
{
|
||||
@@ -4600,9 +4663,6 @@ _ppdCreateFromIPP2(
|
||||
cupsArrayAdd(names, (char *)keyword);
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
|
||||
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
|
||||
@@ -4617,7 +4677,7 @@ _ppdCreateFromIPP2(
|
||||
continue;
|
||||
|
||||
cupsFilePrintf(fp, "*StapleLocation %s: \"\"\n", ppd_keyword);
|
||||
- cupsFilePrintf(fp, "*%s.StapleLocation %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "StapleLocation", ppd_keyword, msgid);
|
||||
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n", value, keyword, ppd_keyword);
|
||||
}
|
||||
|
||||
@@ -4680,9 +4740,6 @@ _ppdCreateFromIPP2(
|
||||
cupsArrayAdd(names, (char *)keyword);
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
|
||||
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
|
||||
@@ -4697,7 +4754,7 @@ _ppdCreateFromIPP2(
|
||||
continue;
|
||||
|
||||
cupsFilePrintf(fp, "*FoldType %s: \"\"\n", ppd_keyword);
|
||||
- cupsFilePrintf(fp, "*%s.FoldType %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "FoldType", ppd_keyword, msgid);
|
||||
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n", value, keyword, ppd_keyword);
|
||||
}
|
||||
|
||||
@@ -4768,9 +4825,6 @@ _ppdCreateFromIPP2(
|
||||
cupsArrayAdd(names, (char *)keyword);
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
|
||||
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
|
||||
@@ -4785,7 +4839,7 @@ _ppdCreateFromIPP2(
|
||||
continue;
|
||||
|
||||
cupsFilePrintf(fp, "*PunchMedia %s: \"\"\n", ppd_keyword);
|
||||
- cupsFilePrintf(fp, "*%s.PunchMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "PunchMedia", ppd_keyword, msgid);
|
||||
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n", value, keyword, ppd_keyword);
|
||||
}
|
||||
|
||||
@@ -4856,9 +4910,6 @@ _ppdCreateFromIPP2(
|
||||
cupsArrayAdd(names, (char *)keyword);
|
||||
|
||||
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
if (value == IPP_FINISHINGS_TRIM)
|
||||
ppd_keyword = "Auto";
|
||||
@@ -4866,7 +4917,7 @@ _ppdCreateFromIPP2(
|
||||
ppd_keyword = trim_keywords[value - IPP_FINISHINGS_TRIM_AFTER_PAGES];
|
||||
|
||||
cupsFilePrintf(fp, "*CutMedia %s: \"\"\n", ppd_keyword);
|
||||
- cupsFilePrintf(fp, "*%s.CutMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "CutMedia", ppd_keyword, msgid);
|
||||
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*CutMedia %s\"\n", value, keyword, ppd_keyword);
|
||||
}
|
||||
|
||||
@@ -4905,12 +4956,11 @@ _ppdCreateFromIPP2(
|
||||
|
||||
cupsArrayAdd(templates, (void *)keyword);
|
||||
|
||||
+ pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
+
|
||||
snprintf(msgid, sizeof(msgid), "finishing-template.%s", keyword);
|
||||
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
|
||||
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
|
||||
- msgstr = keyword;
|
||||
|
||||
- cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", keyword);
|
||||
+ cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", ppdname);
|
||||
for (finishing_attr = ippFirstAttribute(finishing_col); finishing_attr; finishing_attr = ippNextAttribute(finishing_col))
|
||||
{
|
||||
if (ippGetValueTag(finishing_attr) == IPP_TAG_BEGIN_COLLECTION)
|
||||
@@ -4923,7 +4973,7 @@ _ppdCreateFromIPP2(
|
||||
}
|
||||
}
|
||||
cupsFilePuts(fp, "\"\n");
|
||||
- cupsFilePrintf(fp, "*%s.cupsFinishingTemplate %s/%s: \"\"\n", lang->language, keyword, msgstr);
|
||||
+ ppd_put_string(fp, lang, strings, "cupsFinishingTemplate", ppdname, msgid);
|
||||
cupsFilePuts(fp, "*End\n");
|
||||
}
|
||||
|
||||
@@ -4959,9 +5009,8 @@ _ppdCreateFromIPP2(
|
||||
{
|
||||
ipp_t *preset = ippGetCollection(attr, i);
|
||||
/* Preset collection */
|
||||
- const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL),
|
||||
+ const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL);
|
||||
/* Preset name */
|
||||
- *localized_name; /* Localized preset name */
|
||||
ipp_attribute_t *member; /* Member attribute in preset */
|
||||
const char *member_name; /* Member attribute name */
|
||||
char member_value[256]; /* Member attribute value */
|
||||
@@ -4969,7 +5018,8 @@ _ppdCreateFromIPP2(
|
||||
if (!preset || !preset_name)
|
||||
continue;
|
||||
|
||||
- cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", preset_name);
|
||||
+ pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
|
||||
+ cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", ppdname);
|
||||
for (member = ippFirstAttribute(preset); member; member = ippNextAttribute(preset))
|
||||
{
|
||||
member_name = ippGetName(member);
|
||||
@@ -5010,7 +5060,10 @@ _ppdCreateFromIPP2(
|
||||
fin_col = ippGetCollection(member, i);
|
||||
|
||||
if ((keyword = ippGetString(ippFindAttribute(fin_col, "finishing-template", IPP_TAG_ZERO), 0, NULL)) != NULL)
|
||||
- cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", keyword);
|
||||
+ {
|
||||
+ pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
+ cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", ppdname);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
else if (!strcmp(member_name, "media"))
|
||||
@@ -5037,13 +5090,13 @@ _ppdCreateFromIPP2(
|
||||
if ((keyword = ippGetString(ippFindAttribute(media_col, "media-source", IPP_TAG_ZERO), 0, NULL)) != NULL)
|
||||
{
|
||||
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
- cupsFilePrintf(fp, "*InputSlot %s\n", keyword);
|
||||
+ cupsFilePrintf(fp, "*InputSlot %s\n", ppdname);
|
||||
}
|
||||
|
||||
if ((keyword = ippGetString(ippFindAttribute(media_col, "media-type", IPP_TAG_ZERO), 0, NULL)) != NULL)
|
||||
{
|
||||
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
|
||||
- cupsFilePrintf(fp, "*MediaType %s\n", keyword);
|
||||
+ cupsFilePrintf(fp, "*MediaType %s\n", ppdname);
|
||||
}
|
||||
}
|
||||
else if (!strcmp(member_name, "print-quality"))
|
||||
@@ -5088,8 +5141,9 @@ _ppdCreateFromIPP2(
|
||||
|
||||
cupsFilePuts(fp, "\"\n*End\n");
|
||||
|
||||
- if ((localized_name = _cupsMessageLookup(strings, preset_name)) != preset_name)
|
||||
- cupsFilePrintf(fp, "*%s.APPrinterPreset %s/%s: \"\"\n", lang->language, preset_name, localized_name);
|
||||
+ snprintf(msgid, sizeof(msgid), "preset-name.%s", preset_name);
|
||||
+ pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
|
||||
+ ppd_put_string(fp, lang, strings, "APPrinterPreset", ppdname, msgid);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5360,6 +5414,43 @@ cups_get_url(http_t **http, /* IO - Current HTTP connection */
|
||||
}
|
||||
|
||||
|
||||
+/*
|
||||
+ * 'ppd_put_strings()' - Write localization attributes to a PPD file.
|
||||
+ */
|
||||
+
|
||||
+static void
|
||||
+ppd_put_string(cups_file_t *fp, /* I - PPD file */
|
||||
+ cups_lang_t *lang, /* I - Language */
|
||||
+ cups_array_t *strings, /* I - Strings */
|
||||
+ const char *ppd_option,/* I - PPD option */
|
||||
+ const char *ppd_choice,/* I - PPD choice */
|
||||
+ const char *pwg_msgid) /* I - PWG message ID */
|
||||
+{
|
||||
+ const char *text; /* Localized text */
|
||||
+
|
||||
+
|
||||
+ if ((text = _cupsLangString(lang, pwg_msgid)) == pwg_msgid || !strcmp(pwg_msgid, text))
|
||||
+ {
|
||||
+ if ((text = _cupsMessageLookup(strings, pwg_msgid)) == pwg_msgid)
|
||||
+ return;
|
||||
+ }
|
||||
+
|
||||
+ // Add the first line of localized text...
|
||||
+ cupsFilePrintf(fp, "*%s.%s %s/", lang->language, ppd_option, ppd_choice);
|
||||
+ while (*text && *text != '\n')
|
||||
+ {
|
||||
+ // Escape ":" and "<"...
|
||||
+ if (*text == ':' || *text == '<')
|
||||
+ cupsFilePrintf(fp, "<%02X>", *text);
|
||||
+ else
|
||||
+ cupsFilePutChar(fp, *text);
|
||||
+
|
||||
+ text ++;
|
||||
+ }
|
||||
+ cupsFilePuts(fp, ": \"\"\n");
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*
|
||||
* 'pwg_add_finishing()' - Add a finishings value.
|
||||
*/
|
||||
@@ -5473,7 +5564,7 @@ pwg_ppdize_name(const char *ipp, /* I - IPP keyword */
|
||||
*end; /* End of name buffer */
|
||||
|
||||
|
||||
- if (!ipp)
|
||||
+ if (!ipp || !_cups_isalnum(*ipp))
|
||||
{
|
||||
*name = '\0';
|
||||
return;
|
||||
@@ -5488,8 +5579,14 @@ pwg_ppdize_name(const char *ipp, /* I - IPP keyword */
|
||||
ipp ++;
|
||||
*ptr++ = (char)toupper(*ipp++ & 255);
|
||||
}
|
||||
- else
|
||||
+ else if (*ipp == '_' || *ipp == '.' || *ipp == '-' || _cups_isalnum(*ipp))
|
||||
+ {
|
||||
*ptr++ = *ipp++;
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ ipp ++;
|
||||
+ }
|
||||
}
|
||||
|
||||
*ptr = '\0';
|
||||
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
|
||||
index 37623c54e..14b1fe1e0 100644
|
||||
--- a/scheduler/ipp.c
|
||||
+++ b/scheduler/ipp.c
|
||||
@@ -1,7 +1,7 @@
|
||||
/*
|
||||
* IPP routines for the CUPS scheduler.
|
||||
*
|
||||
- * Copyright © 2020-2023 by OpenPrinting
|
||||
+ * Copyright © 2020-2024 by OpenPrinting
|
||||
* Copyright © 2007-2021 by Apple Inc.
|
||||
* Copyright © 1997-2007 by Easy Software Products, all rights reserved.
|
||||
*
|
||||
@@ -5417,6 +5417,13 @@ create_local_bg_thread(
|
||||
}
|
||||
}
|
||||
|
||||
+ // Validate response from printer...
|
||||
+ if (!ippValidateAttributes(response))
|
||||
+ {
|
||||
+ send_ipp_status(con, IPP_STATUS_ERROR_DEVICE, _("Printer returned invalid data: %s"), cupsLastErrorString());
|
||||
+ goto finish_response;
|
||||
+ }
|
||||
+
|
||||
// TODO: Grab printer icon file...
|
||||
httpClose(http);
|
||||
|
||||
--
|
||||
2.46.0
|
||||
|
34
gnu/packages/patches/cups-relax-root-ownership-check.patch
Normal file
34
gnu/packages/patches/cups-relax-root-ownership-check.patch
Normal file
|
@ -0,0 +1,34 @@
|
|||
From 943e44dafa192b54fadcbb24f5f87d62a22c9f84 Mon Sep 17 00:00:00 2001
|
||||
From: Sergey Trofimov <sarg@sarg.org.ru>
|
||||
Date: Wed, 17 Sep 2025 12:09:34 +0200
|
||||
Subject: [PATCH] Exempt files in /gnu/store from root ownership check.
|
||||
|
||||
---
|
||||
cups/file.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/cups/file.c b/cups/file.c
|
||||
index 95054f3c8..9822619d4 100644
|
||||
--- a/cups/file.c
|
||||
+++ b/cups/file.c
|
||||
@@ -159,7 +159,8 @@ _cupsFileCheck(
|
||||
* 4. Must not be writable by others
|
||||
*/
|
||||
|
||||
- if (fileinfo.st_uid || /* 1. Must be owned by root */
|
||||
+ int in_gnu_store = !strncmp(filename, "/gnu/store/", 11);
|
||||
+ if ((fileinfo.st_uid && !in_gnu_store) || /* 1. Must be owned by root or be in /gnu/store */
|
||||
(fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
|
||||
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
|
||||
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
|
||||
@@ -198,7 +199,7 @@ _cupsFileCheck(
|
||||
goto finishup;
|
||||
}
|
||||
|
||||
- if (fileinfo.st_uid || /* 1. Must be owned by root */
|
||||
+ if ((fileinfo.st_uid && !in_gnu_store) || /* 1. Must be owned by root or be in /gnu/store */
|
||||
(fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
|
||||
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
|
||||
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
|
||||
--
|
||||
2.51.0
|
25
gnu/packages/patches/emacs-zoom-image-test-fix.patch
Normal file
25
gnu/packages/patches/emacs-zoom-image-test-fix.patch
Normal file
|
@ -0,0 +1,25 @@
|
|||
From 462a541db904405ede8446c48ba0c71ad41c544d Mon Sep 17 00:00:00 2001
|
||||
From: Eli Zaretskii <eliz@gnu.org>
|
||||
Date: Thu, 17 Jul 2025 19:34:50 +0300
|
||||
Subject: [PATCH] ; * test/lisp/net/shr-tests.el (shr-test/zoom-image): Fix
|
||||
<img> (bug#79041).
|
||||
|
||||
---
|
||||
test/lisp/net/shr-tests.el | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/lisp/net/shr-tests.el b/test/lisp/net/shr-tests.el
|
||||
index 363cd144e8f3..a931d07a1631 100644
|
||||
--- a/test/lisp/net/shr-tests.el
|
||||
+++ b/test/lisp/net/shr-tests.el
|
||||
@@ -145,8 +145,8 @@ settings, then once more for each (OPTION . VALUE) pair.")
|
||||
(dolist (alt '(nil "" "nothing to see here"))
|
||||
(with-temp-buffer
|
||||
(ert-info ((format "image with alt=%S" alt))
|
||||
- (let ((attrs (if alt (format " alt=\"%s\"" alt) "")))
|
||||
- (insert (format "<img src=\"%s\" %s" image-url attrs)))
|
||||
+ (let ((attrs (if alt (format " alt=\"%s\">" alt) ">")))
|
||||
+ (insert (format "<img src=\"%s\"%s" image-url attrs)))
|
||||
(cl-letf* (;; Pretend we're a graphical display.
|
||||
((symbol-function 'display-graphic-p) #'always)
|
||||
((symbol-function 'url-queue-retrieve)
|
33
gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch
Normal file
33
gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
From 951743698610eaaa0cc9030f7d7d02437419ac24 Mon Sep 17 00:00:00 2001
|
||||
From: Neil Hanlon <neil@shrug.pw>
|
||||
Date: Fri, 9 Feb 2024 15:32:38 -0500
|
||||
Subject: [PATCH] Add gobject example source code to path for mkhtml test
|
||||
|
||||
Fixes #150
|
||||
|
||||
I'm not really sure why this is required, but I suspect it has to do
|
||||
with changes in how GCC handles path traversal due to recent (ish)
|
||||
security issues, as the code here is evaluated to
|
||||
`../xml/../../examples/gobject.c` which probably looks unhealthy to
|
||||
automatically include.
|
||||
|
||||
Signed-off-by: Neil Hanlon <neil@shrug.pw>
|
||||
---
|
||||
tests/gobject/docs/meson.build | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/tests/gobject/docs/meson.build b/tests/gobject/docs/meson.build
|
||||
index a1dd66ca..236a1cc0 100644
|
||||
--- a/tests/gobject/docs/meson.build
|
||||
+++ b/tests/gobject/docs/meson.build
|
||||
@@ -119,6 +119,7 @@ test(
|
||||
'--path=@0@'.format(':'.join([
|
||||
gobject_test_docs_dir,
|
||||
srcdir,
|
||||
+ join_paths(srcdir, 'tests/gobject/examples'),
|
||||
])
|
||||
),
|
||||
],
|
||||
--
|
||||
GitLab
|
||||
|
33
gnu/packages/patches/inkscape-libxml2.patch
Normal file
33
gnu/packages/patches/inkscape-libxml2.patch
Normal file
|
@ -0,0 +1,33 @@
|
|||
From 694d8ae43d06efff21adebf377ce614d660b24cd Mon Sep 17 00:00:00 2001
|
||||
From: Christian Hesse <mail@eworm.de>
|
||||
Date: Fri, 17 Nov 2023 22:30:42 +0100
|
||||
Subject: [PATCH] include missing header file
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This fixes build error:
|
||||
```
|
||||
/build/inkscape/src/inkscape/src/object/uri.cpp: In constructor ‘Inkscape::URI::URI(const gchar*, const char*)’:
|
||||
/build/inkscape/src/inkscape/src/object/uri.cpp:86:9: error: ‘xmlFree’ was not declared in this scope; did you mean ‘xmlFreeURI’?
|
||||
86 | xmlFree(full);
|
||||
```
|
||||
---
|
||||
src/object/uri.h | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/object/uri.h b/src/object/uri.h
|
||||
index 381adec58cf..d5b211fe2b2 100644
|
||||
--- a/src/object/uri.h
|
||||
+++ b/src/object/uri.h
|
||||
@@ -13,6 +13,7 @@
|
||||
#define INKSCAPE_URI_H
|
||||
|
||||
#include <libxml/uri.h>
|
||||
+#include <libxml/xmlmemory.h>
|
||||
#include <memory>
|
||||
#include <string>
|
||||
|
||||
--
|
||||
GitLab
|
||||
|
83
gnu/packages/patches/libosinfo-libxml2-fix.patch
Normal file
83
gnu/packages/patches/libosinfo-libxml2-fix.patch
Normal file
|
@ -0,0 +1,83 @@
|
|||
From 0adf38535637ec668e658d43f04f60f11f51574f Mon Sep 17 00:00:00 2001
|
||||
From: Roman Bogorodskiy <bogorodskiy@gmail.com>
|
||||
Date: Thu, 10 Apr 2025 13:54:02 +0200
|
||||
Subject: [PATCH] loader: don't use libxml2 deprecated APIs
|
||||
|
||||
Address the following items:
|
||||
|
||||
- Deprecated direct access to buf's content
|
||||
- Mismatching error function signature
|
||||
- Deprecated direct access to ctxt's lastError
|
||||
|
||||
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
|
||||
---
|
||||
osinfo/osinfo_loader.c | 42 +++++++++++++++++++++++-------------------
|
||||
1 file changed, 23 insertions(+), 19 deletions(-)
|
||||
|
||||
diff --git a/osinfo/osinfo_loader.c b/osinfo/osinfo_loader.c
|
||||
index 0a9004af..b3fd4535 100644
|
||||
--- a/osinfo/osinfo_loader.c
|
||||
+++ b/osinfo/osinfo_loader.c
|
||||
@@ -354,7 +354,7 @@ osinfo_loader_doc(const char *xpath,
|
||||
xmlXPathFreeObject(obj);
|
||||
OSINFO_LOADER_SET_ERROR(err, "Cannot format stylesheet");
|
||||
}
|
||||
- ret = g_strdup((char *)buf->content);
|
||||
+ ret = g_strdup((char *)xmlBufferContent(buf));
|
||||
|
||||
xmlBufferFree(buf);
|
||||
xmlXPathFreeObject(obj);
|
||||
@@ -1902,28 +1902,32 @@ static void osinfo_loader_root(OsinfoLoader *loader,
|
||||
}
|
||||
|
||||
static void
|
||||
-catchXMLError(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
|
||||
+catchXMLError(void *ctx, const char *msg, ...)
|
||||
{
|
||||
xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) ctx;
|
||||
+ const xmlError *xmlErr = NULL;
|
||||
+ g_autofree gchar *xmlmsg = NULL;
|
||||
|
||||
- if (ctxt && ctxt->_private) {
|
||||
- GError **err = ctxt->_private;
|
||||
- if (!error_is_set(err)) {
|
||||
- gchar *xmlmsg;
|
||||
- if (ctxt->lastError.file) {
|
||||
- xmlmsg = g_strdup_printf("%s:%d: %s",
|
||||
- ctxt->lastError.file,
|
||||
- ctxt->lastError.line,
|
||||
- ctxt->lastError.message);
|
||||
- } else {
|
||||
- xmlmsg = g_strdup_printf("at line %d: %s",
|
||||
- ctxt->lastError.line,
|
||||
- ctxt->lastError.message);
|
||||
- }
|
||||
- OSINFO_LOADER_SET_ERROR(ctxt->_private, xmlmsg);
|
||||
- g_free(xmlmsg);
|
||||
- }
|
||||
+ if (!ctxt || !ctxt->_private)
|
||||
+ return;
|
||||
+
|
||||
+ if (error_is_set(ctxt->_private))
|
||||
+ return;
|
||||
+
|
||||
+ if (!(xmlErr = xmlCtxtGetLastError(ctx)))
|
||||
+ return;
|
||||
+
|
||||
+ if (xmlErr->file) {
|
||||
+ xmlmsg = g_strdup_printf("%s:%d: %s",
|
||||
+ xmlErr->file,
|
||||
+ xmlErr->line,
|
||||
+ xmlErr->message);
|
||||
+ } else {
|
||||
+ xmlmsg = g_strdup_printf("at line %d: %s",
|
||||
+ xmlErr->line,
|
||||
+ xmlErr->message);
|
||||
}
|
||||
+ OSINFO_LOADER_SET_ERROR(ctxt->_private, xmlmsg);
|
||||
}
|
||||
|
||||
static void osinfo_loader_process_xml(OsinfoLoader *loader,
|
||||
--
|
||||
GitLab
|
||||
|
|
@ -1,173 +0,0 @@
|
|||
This makes generated IDs deterministic.
|
||||
|
||||
Written by Daniel Veillard.
|
||||
|
||||
This should be fixed in next release (2.29).
|
||||
See https://bugzilla.gnome.org/show_bug.cgi?id=751621.
|
||||
|
||||
diff --git a/libxslt/functions.c b/libxslt/functions.c
|
||||
index 6448bde..5b00a6d 100644
|
||||
--- a/libxslt/functions.c
|
||||
+++ b/libxslt/functions.c
|
||||
@@ -651,6 +651,63 @@ xsltFormatNumberFunction(xmlXPathParserContextPtr ctxt, int nargs)
|
||||
}
|
||||
|
||||
/**
|
||||
+ * xsltCleanupIds:
|
||||
+ * @ctxt: the transformation context
|
||||
+ * @root: the root of the resulting document
|
||||
+ *
|
||||
+ * This clean up ids which may have been saved in Element contents
|
||||
+ * by xsltGenerateIdFunction() to provide stable IDs on elements.
|
||||
+ *
|
||||
+ * Returns the number of items cleaned or -1 in case of error
|
||||
+ */
|
||||
+int
|
||||
+xsltCleanupIds(xsltTransformContextPtr ctxt, xmlNodePtr root) {
|
||||
+ xmlNodePtr cur;
|
||||
+ int count = 0;
|
||||
+
|
||||
+ if ((ctxt == NULL) || (root == NULL))
|
||||
+ return(-1);
|
||||
+ if (root->type != XML_ELEMENT_NODE)
|
||||
+ return(-1);
|
||||
+
|
||||
+ cur = root;
|
||||
+ while (cur != NULL) {
|
||||
+ if (cur->type == XML_ELEMENT_NODE) {
|
||||
+ if (cur->content != NULL) {
|
||||
+ cur->content = NULL;
|
||||
+ count++;
|
||||
+ }
|
||||
+ if (cur->children != NULL) {
|
||||
+ cur = cur->children;
|
||||
+ continue;
|
||||
+ }
|
||||
+ }
|
||||
+ if (cur->next != NULL) {
|
||||
+ cur = cur->next;
|
||||
+ continue;
|
||||
+ }
|
||||
+ do {
|
||||
+ cur = cur->parent;
|
||||
+ if (cur == NULL)
|
||||
+ break;
|
||||
+ if (cur == (xmlNodePtr) root) {
|
||||
+ cur = NULL;
|
||||
+ break;
|
||||
+ }
|
||||
+ if (cur->next != NULL) {
|
||||
+ cur = cur->next;
|
||||
+ break;
|
||||
+ }
|
||||
+ } while (cur != NULL);
|
||||
+ }
|
||||
+
|
||||
+fprintf(stderr, "Attributed %d IDs for element, cleaned up %d\n",
|
||||
+ ctxt->nextid, count);
|
||||
+
|
||||
+ return(count);
|
||||
+}
|
||||
+
|
||||
+/**
|
||||
* xsltGenerateIdFunction:
|
||||
* @ctxt: the XPath Parser context
|
||||
* @nargs: the number of arguments
|
||||
@@ -701,7 +758,39 @@ xsltGenerateIdFunction(xmlXPathParserContextPtr ctxt, int nargs){
|
||||
if (obj)
|
||||
xmlXPathFreeObject(obj);
|
||||
|
||||
- val = (long)((char *)cur - (char *)&base_address);
|
||||
+ /*
|
||||
+ * Try to provide stable ID for generated document:
|
||||
+ * - usually ID are computed to be placed on elements via attributes
|
||||
+ * so using the element as the node for the ID
|
||||
+ * - the cur->content should be a correct placeholder for this, we use
|
||||
+ * it to hold element node numbers in xmlXPathOrderDocElems to
|
||||
+ * speed up XPath too
|
||||
+ * - xsltCleanupIds() clean them up before handing the XSLT output
|
||||
+ * to the API client.
|
||||
+ * - other nodes types use the node address method but that should
|
||||
+ * not end up in resulting document ID
|
||||
+ * - we can enable this by default without risk of performance issues
|
||||
+ * only the one pass xsltCleanupIds() is added
|
||||
+ */
|
||||
+ if (cur->type == XML_ELEMENT_NODE) {
|
||||
+ if (cur->content == NULL) {
|
||||
+ xsltTransformContextPtr tctxt;
|
||||
+
|
||||
+ tctxt = xsltXPathGetTransformContext(ctxt);
|
||||
+ if (tctxt == NULL) {
|
||||
+ val = (long)((char *)cur - (char *)&base_address);
|
||||
+ } else {
|
||||
+ tctxt->nextid++;
|
||||
+ val = tctxt->nextid;
|
||||
+ cur->content = (void *) (val);
|
||||
+ }
|
||||
+ } else {
|
||||
+ val = (long) cur->content;
|
||||
+ }
|
||||
+ } else {
|
||||
+ val = (long)((char *)cur - (char *)&base_address);
|
||||
+ }
|
||||
+
|
||||
if (val >= 0) {
|
||||
sprintf((char *)str, "idp%ld", val);
|
||||
} else {
|
||||
diff --git a/libxslt/functions.h b/libxslt/functions.h
|
||||
index e0e0bf9..4a1e163 100644
|
||||
--- a/libxslt/functions.h
|
||||
+++ b/libxslt/functions.h
|
||||
@@ -64,6 +64,13 @@ XSLTPUBFUN void XSLTCALL
|
||||
int nargs);
|
||||
|
||||
/*
|
||||
+ * Cleanup for ID generation
|
||||
+ */
|
||||
+XSLTPUBFUN int XSLTCALL
|
||||
+ xsltCleanupIds (xsltTransformContextPtr ctxt,
|
||||
+ xmlNodePtr root);
|
||||
+
|
||||
+/*
|
||||
* And the registration
|
||||
*/
|
||||
|
||||
diff --git a/libxslt/transform.c b/libxslt/transform.c
|
||||
index 24f9eb2..2bdf6bf 100644
|
||||
--- a/libxslt/transform.c
|
||||
+++ b/libxslt/transform.c
|
||||
@@ -700,6 +700,7 @@ xsltNewTransformContext(xsltStylesheetPtr style, xmlDocPtr doc) {
|
||||
cur->traceCode = (unsigned long*) &xsltDefaultTrace;
|
||||
cur->xinclude = xsltGetXIncludeDefault();
|
||||
cur->keyInitLevel = 0;
|
||||
+ cur->nextid = 0;
|
||||
|
||||
return(cur);
|
||||
|
||||
@@ -6092,6 +6093,13 @@ xsltApplyStylesheetInternal(xsltStylesheetPtr style, xmlDocPtr doc,
|
||||
if (root != NULL) {
|
||||
const xmlChar *doctype = NULL;
|
||||
|
||||
+ /*
|
||||
+ * cleanup ids which may have been saved in Elements content ptrs
|
||||
+ */
|
||||
+ if (ctxt->nextid != 0) {
|
||||
+ xsltCleanupIds(ctxt, root);
|
||||
+ }
|
||||
+
|
||||
if ((root->ns != NULL) && (root->ns->prefix != NULL))
|
||||
doctype = xmlDictQLookup(ctxt->dict, root->ns->prefix, root->name);
|
||||
if (doctype == NULL)
|
||||
diff --git a/libxslt/xsltInternals.h b/libxslt/xsltInternals.h
|
||||
index 95e8fe6..8eedae4 100644
|
||||
--- a/libxslt/xsltInternals.h
|
||||
+++ b/libxslt/xsltInternals.h
|
||||
@@ -1782,6 +1782,8 @@ struct _xsltTransformContext {
|
||||
int maxTemplateVars;
|
||||
unsigned long opLimit;
|
||||
unsigned long opCount;
|
||||
+
|
||||
+ unsigned long nextid;/* for generating stable ids */
|
||||
};
|
||||
|
||||
/**
|
30
gnu/packages/patches/libzmf-doxygen-1.14.patch
Normal file
30
gnu/packages/patches/libzmf-doxygen-1.14.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
From 48f94abff2fcc4943626a62c6180c60862288b08 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||
Date: Tue, 3 Jun 2025 11:57:29 +0200
|
||||
Subject: [PATCH 245/248] Install all files generated by doxygen
|
||||
|
||||
Install the whole directory and do not pick only some file-types
|
||||
|
||||
Change-Id: I743253696f3e57dfe70c6509b7d620dc2bf39e76
|
||||
---
|
||||
docs/doxygen/Makefile.am | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/docs/doxygen/Makefile.am b/docs/doxygen/Makefile.am
|
||||
index 4351042..40a02e8 100644
|
||||
--- a/docs/doxygen/Makefile.am
|
||||
+++ b/docs/doxygen/Makefile.am
|
||||
@@ -6,9 +6,7 @@ if WITH_LIBZMF_DOCS
|
||||
|
||||
install-data-am:
|
||||
mkdir -p $(DESTDIR)$(docdir)/html
|
||||
- $(INSTALL_DATA) html/*.html $(DESTDIR)$(docdir)/html/
|
||||
- $(INSTALL_DATA) html/*.png $(DESTDIR)$(docdir)/html/
|
||||
- $(INSTALL_DATA) html/*.css $(DESTDIR)$(docdir)/html/
|
||||
+ $(INSTALL_DATA) html/* $(DESTDIR)$(docdir)/html/
|
||||
|
||||
uninstall-am:
|
||||
-rm -rf $(DESTDIR)$(docdir)/html
|
||||
--
|
||||
2.51.0
|
||||
|
|
@ -6,18 +6,18 @@ that 'itstool' stumbles upon when processing UTF-8 data:
|
|||
Patch by Jan Matejek
|
||||
from <https://bugzilla.opensuse.org/show_bug.cgi?id=1065270>.
|
||||
|
||||
--- libxml2-2.9.5.orig/python/libxml.c
|
||||
+++ libxml2-2.9.5/python/libxml.c
|
||||
@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
|
||||
--- a/python/libxml.c
|
||||
+++ b/python/libxml.c
|
||||
@@ -1499,6 +1499,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg,
|
||||
PyObject *message;
|
||||
PyObject *result;
|
||||
char str[1000];
|
||||
+ unsigned char *ptr = (unsigned char *)str;
|
||||
|
||||
#ifdef DEBUG_ERROR
|
||||
printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg);
|
||||
@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
|
||||
str[999] = 0;
|
||||
if (libxml_xmlPythonErrorFuncHandler == NULL) {
|
||||
va_start(ap, msg);
|
||||
@@ -1510,12 +1511,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg,
|
||||
str[999] = 0;
|
||||
va_end(ap);
|
||||
|
||||
+#if PY_MAJOR_VERSION >= 3
|
||||
|
@ -32,7 +32,7 @@ from <https://bugzilla.opensuse.org/show_bug.cgi?id=1065270>.
|
|||
- message = libxml_charPtrConstWrap(str);
|
||||
+ message = libxml_charPtrConstWrap(ptr);
|
||||
PyTuple_SetItem(list, 1, message);
|
||||
result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list);
|
||||
result = PyObject_CallObject(libxml_xmlPythonErrorFuncHandler, list);
|
||||
+ /* Forget any errors caused in the error handler. */
|
||||
+ PyErr_Clear();
|
||||
Py_XDECREF(list);
|
||||
|
|
129
gnu/packages/patches/python-treelib-remove-python2-compat.patch
Normal file
129
gnu/packages/patches/python-treelib-remove-python2-compat.patch
Normal file
|
@ -0,0 +1,129 @@
|
|||
From: Alexandre Detiste <alexandre.detiste@gmail.com>, ngraves@ngraves.fr
|
||||
|
||||
diff --git a/pyproject.toml b/pyproject.toml
|
||||
index 98b5603..7b192a8 100644
|
||||
--- a/pyproject.toml
|
||||
+++ b/pyproject.toml
|
||||
@@ -35,7 +35,6 @@ include = [
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = "^3.7"
|
||||
-six = ">=1.13.0"
|
||||
|
||||
[tool.poetry.group.dev.dependencies]
|
||||
# Testing dependencies - pytest for all Python versions
|
||||
diff --git a/treelib/__init__.py b/treelib/__init__.py
|
||||
index bed89cc..f164208 100644
|
||||
--- a/treelib/__init__.py
|
||||
+++ b/treelib/__init__.py
|
||||
@@ -57,15 +57,6 @@ Common Use Cases:
|
||||
- Abstract syntax trees
|
||||
- Family trees and genealogy
|
||||
|
||||
-Compatibility Note:
|
||||
- To ensure string compatibility between Python 2.x and 3.x, treelib follows
|
||||
- Python 3.x string handling conventions. All strings are handled as unicode.
|
||||
-
|
||||
- For Python 2.x users with non-ASCII characters, enable unicode literals:
|
||||
-
|
||||
- .. code-block:: python
|
||||
-
|
||||
- from __future__ import unicode_literals
|
||||
"""
|
||||
|
||||
from .node import Node # noqa: F401
|
||||
diff --git a/treelib/node.py b/treelib/node.py
|
||||
index cb79a01..64547f7 100644
|
||||
--- a/treelib/node.py
|
||||
+++ b/treelib/node.py
|
||||
@@ -22,8 +22,6 @@ Note:
|
||||
directly instantiated, as the Tree class manages the parent-child
|
||||
relationships automatically.
|
||||
"""
|
||||
-from __future__ import unicode_literals
|
||||
-
|
||||
import copy
|
||||
import sys
|
||||
import uuid
|
||||
@@ -40,7 +38,7 @@ else:
|
||||
StrList = List[str] # Python 3.8 and earlier
|
||||
|
||||
|
||||
-class Node(object):
|
||||
+class Node:
|
||||
"""
|
||||
Elementary node object stored in Tree structures.
|
||||
|
||||
diff --git a/treelib/tree.py b/treelib/tree.py
|
||||
index 39bbdb5..8042175 100644
|
||||
--- a/treelib/tree.py
|
||||
+++ b/treelib/tree.py
|
||||
@@ -26,26 +26,13 @@ Key Features:
|
||||
- Subtree operations and filtering
|
||||
- Tree metrics and analysis tools
|
||||
"""
|
||||
-from __future__ import print_function, unicode_literals
|
||||
-
|
||||
-try:
|
||||
- from builtins import str as text
|
||||
-except ImportError:
|
||||
- from __builtin__ import str as text # type: ignore
|
||||
-
|
||||
import codecs
|
||||
import json
|
||||
import sys
|
||||
import uuid
|
||||
from copy import deepcopy
|
||||
from typing import Any, Callable, List, Optional, Union, cast
|
||||
-
|
||||
-from six import iteritems, python_2_unicode_compatible
|
||||
-
|
||||
-try:
|
||||
- from StringIO import StringIO # type: ignore
|
||||
-except ImportError:
|
||||
- from io import StringIO
|
||||
+from io import StringIO
|
||||
|
||||
from .exceptions import (
|
||||
DuplicatedNodeIdError,
|
||||
@@ -70,8 +57,7 @@ else:
|
||||
__author__ = "chenxm"
|
||||
|
||||
|
||||
-@python_2_unicode_compatible
|
||||
-class Tree(object):
|
||||
+class Tree():
|
||||
"""
|
||||
Hierarchical tree data structure.
|
||||
|
||||
@@ -220,7 +206,7 @@ class Tree(object):
|
||||
|
||||
if tree is not None:
|
||||
self.root = tree.root
|
||||
- for nid, node in iteritems(tree.nodes):
|
||||
+ for nid, node in tree.nodes.items():
|
||||
new_node = deepcopy(node) if deep else node
|
||||
self._nodes[nid] = new_node
|
||||
if tree.identifier != self._identifier:
|
||||
@@ -1540,9 +1526,9 @@ class Tree(object):
|
||||
|
||||
set_joint = set(new_tree._nodes) & set(self._nodes) # joint keys
|
||||
if set_joint:
|
||||
- raise ValueError("Duplicated nodes %s exists." % list(map(text, set_joint)))
|
||||
+ raise ValueError("Duplicated nodes %s exists." % list(map(str, set_joint)))
|
||||
|
||||
- for cid, node in iteritems(new_tree.nodes):
|
||||
+ for cid, node in new_tree.nodes.items():
|
||||
if deep:
|
||||
node = deepcopy(new_tree[node])
|
||||
self._nodes.update({cid: node})
|
||||
@@ -1909,7 +1895,7 @@ class Tree(object):
|
||||
:return: None
|
||||
"""
|
||||
cn = self[nid]
|
||||
- for attr, val in iteritems(attrs):
|
||||
+ for attr, val in attrs.items():
|
||||
if attr == "identifier":
|
||||
# Updating node id meets following contraints:
|
||||
# * Update node identifier property
|
||||
|
30
gnu/packages/patches/raptor2-libxml2.patch
Normal file
30
gnu/packages/patches/raptor2-libxml2.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
https://bugs.gentoo.org/906227
|
||||
https://github.com/dajobe/raptor/issues/59
|
||||
https://github.com/dajobe/raptor/pull/58
|
||||
|
||||
From 4dbc4c1da2a033c497d84a1291c46f416a9cac51 Mon Sep 17 00:00:00 2001
|
||||
From: David Anes <david.anes@suse.com>
|
||||
Date: Thu, 4 May 2023 11:54:02 +0200
|
||||
Subject: [PATCH] Remove the access to entities 'checked' private symbol for
|
||||
libxml2 2.11.0
|
||||
|
||||
Since version 2.11.0, some private symbols that were never intended
|
||||
as public API/ABI have been removed from libxml2, therefore the field
|
||||
'checked' is no longer present and raptor fails to build in this
|
||||
scenario.
|
||||
--- a/src/raptor_libxml.c
|
||||
+++ b/src/raptor_libxml.c
|
||||
@@ -246,10 +246,11 @@ raptor_libxml_getEntity(void* user_data, const xmlChar *name)
|
||||
|
||||
ret->owner = 1;
|
||||
|
||||
-#if LIBXML_VERSION >= 20627
|
||||
+#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100
|
||||
/* Checked field was released in 2.6.27 on 2006-10-25
|
||||
* http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6
|
||||
*
|
||||
+ * and was later removed in version 2.11.0
|
||||
*/
|
||||
|
||||
/* Mark this entity as having been checked - never do this again */
|
||||
|
100
gnu/packages/patches/vulkan-tools-wayland-1.24.patch
Normal file
100
gnu/packages/patches/vulkan-tools-wayland-1.24.patch
Normal file
|
@ -0,0 +1,100 @@
|
|||
From f546743016f5301c063f2c50af0ea43dd2485ef4 Mon Sep 17 00:00:00 2001
|
||||
From: Charles Giessen <charles@lunarg.com>
|
||||
Date: Thu, 17 Jul 2025 09:56:40 -0500
|
||||
Subject: [PATCH] build: Remove pkg-config provided library names
|
||||
|
||||
The library names of Xcb, Xlib, and Wayland do not need to be queried from pkg-config,
|
||||
instead they can be hardcoded to use the fallback names.
|
||||
|
||||
The intent of querying the library names was to prevent issues where the hardcoded name
|
||||
was not the platform-appropriate name. But because <library>_LINK_LIBRARIES can have
|
||||
more than one library name, the logic to assign <library>_LINK_LIBRARIES into a compile
|
||||
definition breaks horribly. While it is possible to handle this in CMake, the dlopen code would
|
||||
also have to handle it which is much more error prone.
|
||||
---
|
||||
cube/CMakeLists.txt | 20 --------------------
|
||||
cube/wayland_loader.h | 3 ---
|
||||
cube/xcb_loader.h | 3 ---
|
||||
cube/xlib_loader.h | 3 ---
|
||||
4 files changed, 29 deletions(-)
|
||||
|
||||
diff --git a/cube/CMakeLists.txt b/cube/CMakeLists.txt
|
||||
index 7e135e79b..dac6bfed9 100644
|
||||
--- a/cube/CMakeLists.txt
|
||||
+++ b/cube/CMakeLists.txt
|
||||
@@ -307,16 +307,6 @@ if (ANDROID)
|
||||
return()
|
||||
endif()
|
||||
|
||||
-if (XCB_LINK_LIBRARIES)
|
||||
- target_compile_definitions(vkcube PRIVATE "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-if (X11_LINK_LIBRARIES)
|
||||
- target_compile_definitions(vkcube PRIVATE "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
|
||||
- target_compile_definitions(vkcube PRIVATE "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-
|
||||
# ----------------------------------------------------------------------------
|
||||
# vkcubepp
|
||||
|
||||
@@ -360,16 +350,6 @@ target_include_directories(vkcubepp PRIVATE .)
|
||||
target_compile_definitions(vkcubepp PRIVATE ${ENABLED_CUBE_PLATFORMS})
|
||||
target_link_libraries(vkcubepp ${CMAKE_DL_LIBS} Vulkan::Headers)
|
||||
|
||||
-if (XCB_LINK_LIBRARIES )
|
||||
- target_compile_definitions(vkcubepp PUBLIC "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-if (X11_LINK_LIBRARIES)
|
||||
- target_compile_definitions(vkcubepp PUBLIC "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
|
||||
- target_compile_definitions(vkcubepp PUBLIC "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
|
||||
-endif()
|
||||
-
|
||||
if(APPLE)
|
||||
install(
|
||||
TARGETS vkcubepp
|
||||
diff --git a/cube/wayland_loader.h b/cube/wayland_loader.h
|
||||
index 2afab6e97..7d7d91412 100644
|
||||
--- a/cube/wayland_loader.h
|
||||
+++ b/cube/wayland_loader.h
|
||||
@@ -80,9 +80,6 @@ static PFN_wl_display_disconnect cube_wl_display_disconnect = NULL;
|
||||
|
||||
static inline void *initialize_wayland() {
|
||||
void *wayland_library = NULL;
|
||||
-#if defined(WAYLAND_LIBRARY)
|
||||
- wayland_library = dlopen(WAYLAND_LIBRARY, RTLD_NOW | RTLD_LOCAL);
|
||||
-#endif
|
||||
if (NULL == wayland_library) {
|
||||
wayland_library = dlopen("libwayland-client.so.0", RTLD_NOW | RTLD_LOCAL);
|
||||
}
|
||||
diff --git a/cube/xcb_loader.h b/cube/xcb_loader.h
|
||||
index a94d5ab56..cecd25402 100644
|
||||
--- a/cube/xcb_loader.h
|
||||
+++ b/cube/xcb_loader.h
|
||||
@@ -88,9 +88,6 @@ static PFN_xcb_screen_next cube_xcb_screen_next = NULL;
|
||||
|
||||
void *initialize_xcb() {
|
||||
void *xcb_library = NULL;
|
||||
-#if defined(XCB_LIBRARY)
|
||||
- xcb_library = dlopen(XCB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
|
||||
-#endif
|
||||
if (NULL == xcb_library) {
|
||||
xcb_library = dlopen("libxcb.so.1", RTLD_NOW | RTLD_LOCAL);
|
||||
}
|
||||
diff --git a/cube/xlib_loader.h b/cube/xlib_loader.h
|
||||
index c7874d0e7..881789f18 100644
|
||||
--- a/cube/xlib_loader.h
|
||||
+++ b/cube/xlib_loader.h
|
||||
@@ -72,9 +72,6 @@ static PFN_XFlush cube_XFlush = NULL;
|
||||
|
||||
void* initialize_xlib() {
|
||||
void* xlib_library = NULL;
|
||||
-#if defined(XLIB_LIBRARY)
|
||||
- xlib_library = dlopen(XLIB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
|
||||
-#endif
|
||||
if (NULL == xlib_library) {
|
||||
xlib_library = dlopen("libX11.so.6", RTLD_NOW | RTLD_LOCAL);
|
||||
}
|
|
@ -185,12 +185,15 @@ most situations.")
|
|||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "assertpy" version))
|
||||
(method git-fetch) ;no tests in PyPI distribution
|
||||
(uri (git-reference
|
||||
(url "https://github.com/assertpy/assertpy")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0cs8xya465wvb9dw0kdl7cvkxwrslhbma66y44r1mmsajcll7imc"))))
|
||||
(base32 "0hnfh45cmqyp7zasrllwf8gbq3mazqlhhk0sq1iqlh6fig0yfq2f"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(home-page "https://github.com/assertpy/assertpy")
|
||||
(synopsis "Simple assertion library for unit testing")
|
||||
(description
|
||||
|
@ -829,18 +832,19 @@ Python.")
|
|||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags #~(list "-vr" "green")
|
||||
#:test-flags
|
||||
#~(list "-tvvv"
|
||||
"green.test.test_version"
|
||||
"green.test.test_cmdline")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||
(lambda* (#:key tests? test-flags #:allow-other-keys)
|
||||
(when tests?
|
||||
(apply invoke "python" "-m" "green" test-flags)))))))
|
||||
(setenv "PATH" (string-append #$output "/bin:" (getenv "PATH")))
|
||||
(apply invoke "green" test-flags)))))))
|
||||
(native-inputs
|
||||
(list python-mypy
|
||||
python-setuptools
|
||||
python-testtools
|
||||
python-wheel))
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-colorama
|
||||
python-coverage
|
||||
|
@ -876,18 +880,23 @@ Built-in integration with @url{http://nedbatchelder.com/code/coverage/, coverage
|
|||
(version "1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "hiro" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alisaifee/hiro")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0s2xz72i7kbm0l75vr04cqq2war74p3p376wm76999f93npkjcys"))))
|
||||
(base32 "0j7z54nd72qfc065jgljqx53dhfkfz0922fk8qqczg7swmqf6cqv"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(home-page "https://hiro.readthedocs.io/")
|
||||
(native-inputs
|
||||
(list python-pytest python-pytest-cov python-setuptools))
|
||||
(home-page "https://hiro.readthedocs.io")
|
||||
(synopsis "Time manipulation utilities for testing in Python")
|
||||
(description "Hiro provides context managers and utilities to either
|
||||
freeze, accelerate or decelerate and jump between different points in time.
|
||||
Functions exposed by the standard library’s @code{time}, @code{datetime} and
|
||||
@code{date} modules are patched within the contexts exposed.")
|
||||
(description
|
||||
"Hiro provides context managers and utilities to either freeze,
|
||||
accelerate or decelerate and jump between different points in time. Functions
|
||||
exposed by the standard library’s @code{time}, @code{datetime} and @code{date}
|
||||
modules are patched within the contexts exposed.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-httmock
|
||||
|
|
|
@ -734,7 +734,9 @@ environments.")
|
|||
(sha256
|
||||
(base32 "13vdaff15k0jyfcss4b4xvfgm8xyv0nrbyw5n1qc7lrqbi0b3h82"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no tests in PyPI
|
||||
(native-inputs (list python-setuptools))
|
||||
(home-page "https://github.com/ricmoo/pyaes")
|
||||
(synopsis "Implementation of AES in Python")
|
||||
(description "This package contains a pure-Python implementation of the
|
||||
|
|
|
@ -252,7 +252,7 @@ GLFW} OpenGL application development library.")
|
|||
(setenv "HOME" (getcwd)))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
python-cython
|
||||
python-cython-0
|
||||
;; Not packaged yet, for tests.
|
||||
;; python-kivy-deps-glew
|
||||
;; python-kivy-deps-glew-dev
|
||||
|
@ -597,14 +597,14 @@ library.")
|
|||
(package
|
||||
(inherit python-pyopengl)
|
||||
(name "python-pyopengl-accelerate")
|
||||
(version "3.1.9")
|
||||
(version "3.1.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyopengl_accelerate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ww6kbyj1hshxfi3gskkygv1w2f7klzj9jcyfpzihn4pfry7r5c5"))))
|
||||
"0waskwvw9mp830bnnxcqd8bkh7a4qbnr0fcjnnw35xx6y21iqxc2"))))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
|
|
|
@ -389,16 +389,22 @@ supersedes the RTED algorithm for computing the tree edit distance.")
|
|||
(define-public python-asap3
|
||||
(package
|
||||
(name "python-asap3")
|
||||
(version "3.13.7")
|
||||
(version "3.13.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "asap3" version))
|
||||
(sha256
|
||||
(base32 "0z6m9ybiy4fdnzlkfkvyxich18iwlwlgj1jd99fylyfwf8l160am"))))
|
||||
(base32 "0r4sx93v2ck4m9ykzj9zaar2l9wk4nrb3d3rlik1nqimk6pnnbm2"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-ase))
|
||||
(native-inputs (list python-setuptools python-wheel which))
|
||||
(arguments
|
||||
(list #:tests? #f)) ;TODO: collecting ... ERROR: Wrong command line.
|
||||
(native-inputs
|
||||
(list python-setuptools
|
||||
which)) ;for build
|
||||
(propagated-inputs
|
||||
(list python-ase
|
||||
python-numpy))
|
||||
(home-page "https://wiki.fysik.dtu.dk/asap")
|
||||
(synopsis "ASAP - classical potentials for Molecular Dynamics with ASE.")
|
||||
(description "This package provides accelerated simulations and potentials
|
||||
|
@ -3019,25 +3025,25 @@ the following purposes in mind:
|
|||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-scikit-survival
|
||||
(let ((revision "1")
|
||||
(let ((revision "0")
|
||||
;; We need a later commit for support of a more recent sklearn and
|
||||
;; numpy 2.
|
||||
(commit "bceb53ebb8306f959c70fae2be9d552f33dd3f21"))
|
||||
;; NumPy 2.
|
||||
(commit "bc4a8914e8337c3be1b98371a3c26382696215a9"))
|
||||
(package
|
||||
(name "python-scikit-survival")
|
||||
(version (git-version "0.22.2" revision commit))
|
||||
(version (git-version "0.25.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/sebp/scikit-survival")
|
||||
(commit commit)
|
||||
;; This package contains a copy of Eigen. It would be good to
|
||||
;; figure out how to use our own Eigen package.
|
||||
(recursive? #true)))
|
||||
(url "https://github.com/sebp/scikit-survival")
|
||||
(commit commit)
|
||||
;; This package contains a copy of Eigen. It would be good to
|
||||
;; figure out how to use our own Eigen package.
|
||||
(recursive? #true)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1m3z64nv4sgay0mdrrw4q4z5ylx63a9w2x43w1r4g8kpg7z9rdfc"))))
|
||||
(base32 "001w73sz55vszp18h25dha74r34bbfzl02yh4d6zbli9zvr36hy4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -3049,7 +3055,6 @@ the following purposes in mind:
|
|||
#$(version-major+minor version)))))))
|
||||
(propagated-inputs
|
||||
(list python-ecos
|
||||
python-importlib-resources
|
||||
python-joblib
|
||||
python-numexpr
|
||||
python-numpy
|
||||
|
@ -3058,16 +3063,11 @@ the following purposes in mind:
|
|||
python-scikit-learn
|
||||
python-scipy))
|
||||
(native-inputs
|
||||
(list python-black
|
||||
python-pypa-build
|
||||
python-coverage
|
||||
python-cython-3
|
||||
(list python-cython
|
||||
python-packaging
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-setuptools-scm
|
||||
python-tomli
|
||||
python-tox))
|
||||
python-setuptools-scm))
|
||||
(home-page "https://github.com/sebp/scikit-survival")
|
||||
(synopsis "Survival analysis built on top of scikit-learn")
|
||||
(description "Scikit-survival is a Python module for survival analysis
|
||||
|
|
|
@ -7058,26 +7058,30 @@ this it tries to be opinion-free and very extendable.")
|
|||
(define-public python-engineio
|
||||
(package
|
||||
(name "python-engineio")
|
||||
(version "4.11.2")
|
||||
(version "4.12.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python_engineio" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0abijzn4srf89jlj0kqcd9xbhyxvglzxkciy5nxv815rrvdb0nql"))))
|
||||
"1ynyf3n29biwkm6nwzzwzhr4m19lsir1x5azxq2nl7xyw7zi5rz7"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; File not found.
|
||||
#:test-flags '(list "-k" "not test_static_files")))
|
||||
#:test-flags
|
||||
#~(list "-k"
|
||||
"not test_static_file_routing and not test_static_files")))
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-pytest-asyncio
|
||||
python-setuptools
|
||||
python-tornado))
|
||||
(propagated-inputs
|
||||
(list python-aiohttp
|
||||
python-requests
|
||||
python-simple-websocket
|
||||
python-tornado
|
||||
python-websocket-client))
|
||||
(native-inputs (list python-pytest python-setuptools python-wheel))
|
||||
(home-page "https://github.com/miguelgrinberg/python-engineio/")
|
||||
(synopsis "Engine.IO server")
|
||||
(description "This package provides a Python implementation of the
|
||||
|
@ -7631,17 +7635,21 @@ engine. Its module is called @code{googlesearch}.")
|
|||
(define-public python-google-auth-httplib2
|
||||
(package
|
||||
(name "python-google-auth-httplib2")
|
||||
(version "0.1.1")
|
||||
(version "0.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "google-auth-httplib2" version))
|
||||
(sha256
|
||||
(base32 "0agwwgw04nks7lzpm224fbvpnjfgzz67pkrfls77ipf6zmawajy6"))))
|
||||
(build-system python-build-system)
|
||||
(base32 "018fckshilc6z2qpj1pclh8haanbq3lr85w6p4g4z5wgyjnppaiq"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs
|
||||
(list python-google-auth python-httplib2 python-six))
|
||||
(list python-google-auth python-httplib2))
|
||||
(native-inputs
|
||||
(list python-flask python-mock python-pytest python-pytest-localserver))
|
||||
(list python-pytest
|
||||
python-pyparsing
|
||||
python-pytest-localserver
|
||||
python-flask
|
||||
python-setuptools))
|
||||
(home-page
|
||||
"https://github.com/GoogleCloudPlatform/google-auth-library-python-httplib2")
|
||||
(synopsis "Google Authentication Library: httplib2 transport")
|
||||
|
@ -9567,12 +9575,10 @@ using a pure Python implementation.")
|
|||
(arguments
|
||||
(list #:tests? #f)) ; tests require Node
|
||||
(native-inputs
|
||||
(list python-pytest
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-numpy
|
||||
python-pyjsparser
|
||||
(list python-pyjsparser
|
||||
python-six
|
||||
python-tzlocal))
|
||||
(home-page "https://github.com/PiotrDabkowski/Js2Py")
|
||||
(synopsis "JavaScript to Python translator")
|
||||
|
@ -10015,27 +10021,28 @@ realtime client and server.")
|
|||
(define-public python-socks
|
||||
(package
|
||||
(name "python-socks")
|
||||
(version "2.6.1")
|
||||
(version "2.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python_socks" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/romis2012/python-socks")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"17pcyd1gg2a7k2i4lvnqi9095brhf7pbpkqfcjmhpzkgmfd94hwp"))))
|
||||
(base32 "1alrfjkir69006qmr2ax3inrffk2bllpljwmprwczb44r0mya77m"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs
|
||||
(list python-trio))
|
||||
(propagated-inputs (list python-trio))
|
||||
(native-inputs
|
||||
(list python-anyio
|
||||
python-async-timeout
|
||||
python-flask
|
||||
python-pytest
|
||||
python-pytest-asyncio
|
||||
python-pytest-trio
|
||||
python-setuptools
|
||||
python-tiny-proxy
|
||||
python-trustme
|
||||
python-wheel
|
||||
python-yarl))
|
||||
(home-page "https://github.com/romis2012/python-socks")
|
||||
(synopsis
|
||||
|
@ -10304,13 +10311,13 @@ Client Library for Python.")
|
|||
(define-public python-google-auth
|
||||
(package
|
||||
(name "python-google-auth")
|
||||
(version "2.37.0")
|
||||
(version "2.40.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "google_auth" version))
|
||||
(sha256
|
||||
(base32 "002xvp1139lrw2c2s2yllg5499ghfxzg9lv35i4q770zpwx64m00"))))
|
||||
(base32 "0xrvsqrqx89zkf13gjp328j2y5cfhl88sjzjkkm3dszdmllkl32h"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -10318,7 +10325,7 @@ Client Library for Python.")
|
|||
;; This one test uses crypto.sign with an outdated calling convention.
|
||||
'(list "--ignore=tests/transport/test__mtls_helper.py")))
|
||||
(propagated-inputs
|
||||
(list python-cachetools
|
||||
(list python-cachetools-5
|
||||
python-pyasn1-modules
|
||||
python-pyjwt
|
||||
python-rsa))
|
||||
|
@ -11061,33 +11068,26 @@ characters in a smarter, more visually pleasing style.")
|
|||
(define-public python-mf2py
|
||||
(package
|
||||
(name "python-mf2py")
|
||||
(version "1.1.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/microformats/mf2py")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"00pzfc5sl6ywlcr6f2k37n3f2bb7w488p2k95ixzjwx6w3yh747n"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "pytest" "-vv" "test")))))))
|
||||
(native-inputs (list python-mock python-pytest))
|
||||
(version "2.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/microformats/mf2py")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0ajnf0zrh1l48fvix9fbs1qvgbqhiljqnrm51rx44p7dbarpw4ls"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-mock python-poetry-core python-pytest))
|
||||
(propagated-inputs
|
||||
(list python-beautifulsoup4 python-html5lib python-requests))
|
||||
(home-page "https://github.com/microformats/mf2py")
|
||||
(synopsis "Python Microformats2 parser")
|
||||
(description "This Python library provides a Microformats2 parser
|
||||
implementing the full Microformats2 (mf2) specification, including backward
|
||||
compatibility with Microformats1 (mf1).")
|
||||
(description
|
||||
"This Python library provides a Microformats2 parser implementing the
|
||||
full Microformats2 (mf2) specification, including backward compatibility with
|
||||
Microformats1 (mf1).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-extruct
|
||||
|
|
|
@ -275,6 +275,7 @@
|
|||
#:use-module (gnu packages rdf)
|
||||
#:use-module (gnu packages readline)
|
||||
#:use-module (gnu packages regex)
|
||||
#:use-module (gnu packages rpc)
|
||||
#:use-module (gnu packages rust)
|
||||
#:use-module (gnu packages rust-apps)
|
||||
#:use-module (gnu packages scanner)
|
||||
|
@ -2460,6 +2461,17 @@ decorators, including variants of the Python standard library's
|
|||
@code{lru_cache} function decorator.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-cachetools-5
|
||||
(package
|
||||
(inherit python-cachetools)
|
||||
(version "5.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cachetools" version))
|
||||
(sha256
|
||||
(base32 "1m20wqipm50zvcgs3z2xksb96qwx1xc1jbhvaxcnglkmj6m1qrhs"))))))
|
||||
|
||||
(define-public python-colorcet
|
||||
(package
|
||||
(name "python-colorcet")
|
||||
|
@ -4969,21 +4981,49 @@ conventions and aliases in the same expression.")
|
|||
(define-public python-limits
|
||||
(package
|
||||
(name "python-limits")
|
||||
(version "4.0.1")
|
||||
(version "5.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "limits" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alisaifee/limits")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0nkdwkvn2rs5swnd4ihv6yg6b5124apqzrrymqcm75pwil2mqkx5"))))
|
||||
(base32 "1ykld43q1pbvds4wsb18wagh852byzjpcjqg1xwa5cldigmkc2x0"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-deprecated python-packaging
|
||||
python-typing-extensions))
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: Despite running only unit tests, pytest exits with an error code.
|
||||
#:tests? #f
|
||||
#:test-flags #~(list "-m" "unit")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'ignore-K-pytest-option
|
||||
(lambda _
|
||||
(substitute* "pytest.ini"
|
||||
(("-K") "")))))))
|
||||
(propagated-inputs (list python-deprecated python-packaging))
|
||||
(native-inputs
|
||||
(list ; python-etcd3
|
||||
python-flaky
|
||||
python-pytest
|
||||
python-pytest-asyncio
|
||||
python-pytest-benchmark
|
||||
python-pytest-cov
|
||||
python-pytest-lazy-fixtures
|
||||
python-pytest-xdist
|
||||
;; python-pymemcache
|
||||
;; python-pymongo
|
||||
;; python-redis
|
||||
python-setuptools
|
||||
;; python-valkey
|
||||
))
|
||||
(home-page "https://limits.readthedocs.io/")
|
||||
(synopsis "Rate limiting utilities")
|
||||
(description "This package provides a Python library to perform rate
|
||||
limiting with commonly used storage backends.")
|
||||
(description
|
||||
"This package provides a Python library to perform rate limiting with
|
||||
commonly used storage backends.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-wand
|
||||
|
@ -5178,23 +5218,21 @@ other machines, such as over the network.")
|
|||
(define-public python-setuptools-declarative-requirements
|
||||
(package
|
||||
(name "python-setuptools-declarative-requirements")
|
||||
(version "1.2.0")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri
|
||||
"setuptools-declarative-requirements"
|
||||
version))
|
||||
(uri (pypi-uri "setuptools-declarative-requirements" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l8zmcnp9h8sp8hsw7b81djaa1a9yig0y7i4phh5pihqz1gdn7yi"))))
|
||||
(build-system python-build-system)
|
||||
(base32 "1xwqp37ii9kql49agmkipawjbndwxg6y8sxax1wc4l6kkaxvk9ap"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;requir dated inputs
|
||||
(native-inputs
|
||||
(list python-pytest python-setuptools-scm))
|
||||
(list python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-toml python-wheel))
|
||||
(home-page
|
||||
"https://github.com/s0undt3ch/setuptools-declarative-requirements")
|
||||
(list python-setuptools))
|
||||
(home-page "https://github.com/s0undt3ch/setuptools-declarative-requirements")
|
||||
(synopsis "File support for setuptools declarative setup.cfg")
|
||||
(description
|
||||
"This package provides file support for setuptools declarative
|
||||
|
@ -5357,14 +5395,16 @@ your Python package version as a calendar version.")
|
|||
(define-public python-can
|
||||
(package
|
||||
(name "python-can")
|
||||
(version "4.2.0")
|
||||
(version "4.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python-can" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hardbyte/python-can")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1w5sdzxivpd3pw4pypwnjlksvfimdb93qnlddbrh5f13flhsgg8g"))))
|
||||
(base32 "0i89hzc9n1h8i63wa333ahh5j1xqxq9v4ymcx7mcsg6ygji5wllr"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -5375,16 +5415,17 @@ your Python package version as a calendar version.")
|
|||
;;
|
||||
;; Disable tests which require specific CAN drivers we have no
|
||||
;; package for in Guix.
|
||||
"--ignore" "test/test_interface_canalystii.py"
|
||||
"--ignore=test/test_interface_canalystii.py"
|
||||
;; These tests fail with "OSError: [Errno 19] No such device".
|
||||
"-k" "not BasicTestUdpMulticastBusIPv")))
|
||||
(propagated-inputs
|
||||
(list python-msgpack python-typing-extensions python-wrapt
|
||||
python-setuptools))
|
||||
"-k" "not BasicTestUdpMulticastBusIPv")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-version
|
||||
(lambda _
|
||||
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
|
||||
(propagated-inputs (list python-packaging python-wrapt))
|
||||
(native-inputs
|
||||
(list ;; python-canalystii ; Not packed yet
|
||||
python-codecov
|
||||
python-coverage
|
||||
python-future
|
||||
python-hypothesis
|
||||
python-mock
|
||||
|
@ -5392,13 +5433,14 @@ your Python package version as a calendar version.")
|
|||
python-pyserial
|
||||
python-pytest
|
||||
python-pytest-cov
|
||||
python-pytest-runner
|
||||
python-pytest-timeout
|
||||
python-wheel))
|
||||
python-setuptools
|
||||
python-setuptools-scm))
|
||||
(home-page "https://github.com/hardbyte/python-can")
|
||||
(synopsis "Controller Area Network (CAN) interface module for Python")
|
||||
(description "This package defines the @code{can} module, which provides
|
||||
controller area network (CAN) support for Python developers; providing common
|
||||
(description
|
||||
"This package defines the @code{can} module, which provides controller
|
||||
area network (CAN) support for Python developers; providing common
|
||||
abstractions to different hardware devices, and a suite of utilities for
|
||||
sending and receiving messages on a CAN bus.")
|
||||
(license license:lgpl3+)))
|
||||
|
@ -5446,15 +5488,18 @@ converting and comparing CAN databases.")
|
|||
(define-public python-canopen
|
||||
(package
|
||||
(name "python-canopen")
|
||||
(version "2.3.0")
|
||||
(version "2.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "canopen" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/canopen-python/canopen")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "09xqqrb8vfyj3bw61nlgpl1qy86fnm72vpbd80m5p38k7jlq883r"))))
|
||||
(base32 "0vw6si83m4329p0k0q4b54gn1pindfzkmx6wxqy03bixd94bxw5y"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pytest python-wheel))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(propagated-inputs (list python-can))
|
||||
(home-page "https://github.com/canopen-python/canopen")
|
||||
(synopsis "CANopen stack implementation")
|
||||
|
@ -5621,18 +5666,16 @@ of primitive data types like @code{char}, @code{int}, etc.")
|
|||
(define-public python-cantools
|
||||
(package
|
||||
(name "python-cantools")
|
||||
(version "40.2.3")
|
||||
(version "40.5.0")
|
||||
(source
|
||||
(origin
|
||||
;; We take the sources from the Git repository as the documentation is
|
||||
;; not included with the PyPI archive.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/eerimoq/cantools")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "09cpsma0qgra7yjvcppripsrhr70ivc2bgcg1vqi64125dpi8a3x"))))
|
||||
(base32 "0ldqdsvkvy7vmplyiqcfqqwbh8v88ha98hgdrnlm09g4qbylh5d4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -5646,11 +5689,11 @@ of primitive data types like @code{char}, @code{int}, etc.")
|
|||
(lambda _
|
||||
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
|
||||
(native-inputs
|
||||
(list python-parameterized
|
||||
(list python-freezegun
|
||||
python-parameterized
|
||||
python-pytest
|
||||
python-setuptools
|
||||
python-setuptools-scm
|
||||
python-wheel))
|
||||
python-setuptools-scm))
|
||||
(propagated-inputs
|
||||
(list python-argparse-addons
|
||||
python-bitstruct
|
||||
|
@ -5661,8 +5704,9 @@ of primitive data types like @code{char}, @code{int}, etc.")
|
|||
python-textparser))
|
||||
(home-page "https://github.com/eerimoq/cantools")
|
||||
(synopsis "Tools for the Controller Area Network (CAN) bus protocol")
|
||||
(description "This package includes Controller Area Network (CAN) related
|
||||
tools that can be used to:
|
||||
(description
|
||||
"This package includes Controller Area Network (CAN) related tools that
|
||||
can be used to:
|
||||
@itemize
|
||||
@item parse DBC, KCD, SYM, ARXML 4 and CDD files
|
||||
@item encode and decode CAN messages
|
||||
|
@ -5848,6 +5892,35 @@ command-line script you can get the latest strip of a webcomic, catch-up to the
|
|||
downloaded, or download a strip for a particular date or index, if possible.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-etcd3
|
||||
(package
|
||||
(name "python-etcd3")
|
||||
(version "0.12.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/kragniz/python-etcd3")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "06hw0kcl77v8px5w2hfnf2l9gjnjrspjb49kx3jqa382z7wzdkk0"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: Tests require the etcd package.
|
||||
#:tests? #f
|
||||
#:test-backend #~'custom
|
||||
#:test-flags ; Taken from tox.ini.
|
||||
#~(list "pifpaf" "-e" "python" "run" "etcd" "--cluster" "--" "pytest")))
|
||||
(propagated-inputs (list python-grpcio python-protobuf python-tenacity))
|
||||
(native-inputs (list python-mock python-pifpaf python-pytest python-setuptools))
|
||||
(home-page "https://github.com/kragniz/python-etcd3")
|
||||
(synopsis "Python client for the etcd3 API")
|
||||
(description
|
||||
"This package provide a Python client for the @code{etcd3} API.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-et-xmlfile
|
||||
(package
|
||||
(name "python-et-xmlfile")
|
||||
|
@ -8898,12 +8971,16 @@ Microsoft Word (.docx) documents.")
|
|||
(version "0.11.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "reretry" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/leshchenko1979/reretry")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1qrjsjzah8gw1bciqn8bhrj80fjjg13qg8jks7qs4bjipv71yygj"))))
|
||||
(base32 "15c6275mcrkrq3zs0gyx06gr3xsg9ldrpyknfy4mbypgwjy6fp38"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(native-inputs
|
||||
(list python-pytest python-pytest-asyncio python-setuptools))
|
||||
(home-page "https://github.com/leshchenko1979/reretry")
|
||||
(synopsis "Functional decorator for retrying on exceptions")
|
||||
(description
|
||||
|
@ -10342,9 +10419,11 @@ provides additional functionality on the produced Mallard documents.")
|
|||
(sha256
|
||||
(base32 "1xwpxff4whfvkwvcyhzhdcj5zzq89vvdjmnqy664s4a9yp4lnydl"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-cython
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no tests in PyPI, 2.0.1 is not tagged in git
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
python-setuptools))
|
||||
(home-page "https://github.com/realead/cykhash")
|
||||
(synopsis "Khash-sets and maps")
|
||||
(description
|
||||
|
@ -10984,13 +11063,16 @@ objects.")
|
|||
(version "3.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "colormath2" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bkmgit/python-colormath2")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1yigkhvjgbl9nrlijn4iwcs6k7i5y58drix1331cd1hb9wzn35z7"))))
|
||||
(base32 "0xxhmmx1mzjggapjmpz8v166lj86xrkq7kak83akcirnq0pz9ihv"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-networkx python-numpy))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(native-inputs (list python-nose2 python-setuptools))
|
||||
(home-page "https://github.com/bkmgit/python-colormath2")
|
||||
(synopsis "Color math and conversion library")
|
||||
(description
|
||||
|
@ -12606,39 +12688,59 @@ and a plugin for Pillow.")
|
|||
|
||||
(define-public python-pillow-simd
|
||||
(package
|
||||
(inherit python-pillow)
|
||||
(name "python-pillow-simd")
|
||||
(version "10.0.1.post0")
|
||||
;; The PyPI tarball does not include test files.
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(method git-fetch) ;no tests in PyPI tarball
|
||||
(uri (git-reference
|
||||
(url "https://github.com/uploadcare/pillow-simd")
|
||||
(commit (string-append "v" version))))
|
||||
(url "https://github.com/uploadcare/pillow-simd")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "16pr4qifb661spf58b7g2lyraask9wf944v4kwk3llg32djvb09b"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
;; Got different content.
|
||||
'(list "-k" (string-append "not test_open"
|
||||
" and not test_consistency_3x3"
|
||||
" and not test_consistency_5x5"))
|
||||
" and not test_consistency_5x5"
|
||||
" and not test_close"))
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-ldconfig
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("\\['/sbin/ldconfig', '-p'\\]") "['true']")))))))
|
||||
(add-after 'unpack 'patch-ldconfig
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("\\['/sbin/ldconfig', '-p'\\]") "['true']")))))))
|
||||
(native-inputs
|
||||
(list python-check-manifest
|
||||
python-defusedxml
|
||||
python-markdown2
|
||||
python-olefile
|
||||
python-packaging
|
||||
python-pytest
|
||||
python-pytest-timeout
|
||||
python-setuptools
|
||||
python-trove-classifiers))
|
||||
(inputs
|
||||
(modify-inputs (package-inputs python-pillow)
|
||||
(prepend libraqm libimagequant)))
|
||||
(list freetype
|
||||
lcms
|
||||
libimagequant
|
||||
libjpeg-turbo
|
||||
libraqm
|
||||
libtiff
|
||||
libwebp
|
||||
openjpeg
|
||||
zlib))
|
||||
(home-page "https://github.com/uploadcare/pillow-simd")
|
||||
(synopsis "Fork of the Python Imaging Library (Pillow)")
|
||||
(description "This package is a fork of Pillow which adds support for SIMD
|
||||
parallelism.")))
|
||||
parallelism.")
|
||||
(license (license:x11-style
|
||||
"http://www.pythonware.com/products/pil/license.htm"
|
||||
"The PIL Software License"))))
|
||||
|
||||
(define-public python-pixelmatch
|
||||
(package
|
||||
|
@ -13055,8 +13157,7 @@ experimental data and metadata at the Laboratory for Fluorescence Dynamics.")
|
|||
python-pytest
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(inputs
|
||||
(list ffmpeg-7))
|
||||
(inputs (list ffmpeg))
|
||||
(home-page "https://github.com/PyAV-Org/PyAV")
|
||||
(synopsis "Pythonic bindings for FFmpeg's libraries")
|
||||
(description
|
||||
|
@ -14596,13 +14697,15 @@ without using the configuration machinery.")
|
|||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch) ; no tests in PyPI
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/caesar0301/treelib")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0jd3rdaq8v7ykb626cm1gxa03higqnn2pmnv46fc0lc55xbrkxlf"))))
|
||||
(base32 "0jd3rdaq8v7ykb626cm1gxa03higqnn2pmnv46fc0lc55xbrkxlf"))
|
||||
(patches
|
||||
(search-patches "python-treelib-remove-python2-compat.patch"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-poetry-core python-pytest))
|
||||
(home-page "https://github.com/caesar0301/treelib")
|
||||
|
@ -16159,38 +16262,30 @@ falling into the Python interpreter.")
|
|||
(define-public python-qnorm
|
||||
(package
|
||||
(name "python-qnorm")
|
||||
(version "0.8.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "qnorm" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1iykxrvlg32h78d3cr0137x93w8krcwc8gdqyfj55id917pz7ck1"))))
|
||||
(version "0.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Maarten-vd-Sande/qnorm")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0bgqxmqq8d3il0gnbvlb5sik50f6z8myx7p652lpv4llj9hrl2w8"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #false ;there are none
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-pyproject-format
|
||||
(lambda _
|
||||
(substitute* "pyproject.toml"
|
||||
(("url = .*") (string-append "version = \"" #$version "\""))
|
||||
(("python_requires.*") "")
|
||||
(("packages =.*") "")
|
||||
(("install_requires") "dependencies")
|
||||
(("\"Maarten van der Sande <maartenvandersande@hotmail.com>\"")
|
||||
"{ name = \"Maarten van der Sande\", email = \"maartenvandersande@hotmail.com\"}")
|
||||
(("license = \"MIT\"") "license = { file = \"LICENSE\"}")))))))
|
||||
(propagated-inputs (list python-numba python-numpy python-pandas))
|
||||
(native-inputs (list python-setuptools python-wheel python-toml))
|
||||
(propagated-inputs
|
||||
(list python-numba python-numpy python-pandas
|
||||
;; XXX: pandas optional dependencies.
|
||||
python-tables python-pyarrow python-fastparquet))
|
||||
(native-inputs (list python-setuptools))
|
||||
(home-page "https://github.com/Maarten-vd-Sande/qnorm")
|
||||
(synopsis "Quantile normalization")
|
||||
(description "This tool implements quantile normalization. It properly
|
||||
resolves rank ties, which is important when ties happen frequently, such as
|
||||
when working with discrete numbers (integers) in count tables. This
|
||||
implementation should be relatively fast, and can use multiple cores to sort
|
||||
the columns and tie-resolvement is accelerated by numba.")
|
||||
(description
|
||||
"This tool implements quantile normalization. It properly resolves rank
|
||||
ties, which is important when ties happen frequently, such as when working
|
||||
with discrete numbers (integers) in count tables. This implementation should
|
||||
be relatively fast, and can use multiple cores to sort the columns and
|
||||
tie-resolvement is accelerated by numba.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-xlib
|
||||
|
@ -17634,7 +17729,7 @@ should be stored on various operating systems.")
|
|||
(base32 "0vm1r1jlaiagj0l9yf7j6zn9w3733dr2169911c0svgrr3gwiwn9"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-six))
|
||||
(native-inputs (list python-setuptools python-wheel))
|
||||
(native-inputs (list python-pytest python-setuptools))
|
||||
(home-page "https://github.com/google/pasta")
|
||||
(synopsis "AST-based Python refactoring library")
|
||||
(description "This package provides \"pasta\", an AST-based Python
|
||||
|
@ -26425,31 +26520,21 @@ command line utility, a python library and plugins for various editors.")
|
|||
(define-public python-mando
|
||||
(package
|
||||
(name "python-mando")
|
||||
(version "0.7.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mando" version))
|
||||
(sha256
|
||||
(base32
|
||||
"001mikga36i811pbc95rb45m2kzivkx4xb0fn3pzl4xnnjcskfhq"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "pytest" "-vv")))))))
|
||||
(propagated-inputs
|
||||
(list python-rst2ansi python-six))
|
||||
(version "0.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mando" version))
|
||||
(sha256
|
||||
(base32 "1ddn4h1fvc9f8z2p8l88jyazxnp0h7rmh711i2hwkipxlbcmk5jk"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs
|
||||
(list python-pytest))
|
||||
(list python-pytest python-setuptools))
|
||||
(home-page "https://mando.readthedocs.org/")
|
||||
(synopsis
|
||||
"Wrapper around argparse, allowing creation of complete CLI applications")
|
||||
(synopsis "Wrapper around argparse, allowing creation of complete CLI applications")
|
||||
(description
|
||||
"This package is a wrapper around argparse, allowing you to write complete CLI
|
||||
applications in seconds while maintaining all the flexibility.")
|
||||
applications in seconds while maintaining all the flexibility.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-mwclient
|
||||
|
@ -27311,6 +27396,37 @@ input.")
|
|||
address is valid and really exists.")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public python-valkey
|
||||
(package
|
||||
(name "python-valkey")
|
||||
(version "6.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/valkey-io/valkey-py")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05zmnb8lmygv75zx0hb40s2rgr53sy4g0sizcb9mq8fd09z5i0n2"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
;; XXX: A lot of tests fail with ConnectionError
|
||||
;; Maybe we need to spawn a valkey server?
|
||||
(list #:tests? #f))
|
||||
(native-inputs
|
||||
(list python-cachetools
|
||||
python-pytest
|
||||
python-pytest-asyncio
|
||||
python-pytest-timeout
|
||||
python-setuptools))
|
||||
(home-page "https://github.com/valkey-io/valkey-py")
|
||||
(synopsis "Python client for Valkey")
|
||||
(description
|
||||
"This package provides a python client for the @code{Valkey} key-value
|
||||
store, forked from redis-py.")
|
||||
(license license:expat)))
|
||||
|
||||
;; XXX: Project has no updates since 2019, consider to remove when nothing
|
||||
;; depends on it in the next refresh cycle.
|
||||
;; See: <https://github.com/pipermerriam/flex/issues/237>.
|
||||
|
@ -32917,24 +33033,32 @@ messages.")
|
|||
(define-public python-daiquiri
|
||||
(package
|
||||
(name "python-daiquiri")
|
||||
(version "2.1.1")
|
||||
(version "3.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "daiquiri" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jd/daiquiri")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qmank3c217ddiig3xr8ps0mqaydcp0q5a62in9a9g4zf72zjnqd"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-json-logger))
|
||||
(native-inputs
|
||||
(list python-mock python-pytest python-setuptools-scm python-six))
|
||||
(base32 "0vfakncq87s6g67mqihjf32xarphd75c03ammvgavladz0pqhlg4"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'set-version
|
||||
(lambda _
|
||||
(setenv "SETUPTOOLS_SCM_PRETEND_VERSION" #$version))))))
|
||||
(propagated-inputs (list python-json-logger))
|
||||
(native-inputs (list python-mock python-pytest python-setuptools
|
||||
python-setuptools-scm))
|
||||
(home-page "https://github.com/jd/daiquiri")
|
||||
(synopsis
|
||||
"Library to configure Python logging easily")
|
||||
(description "The daiquiri library provides an easy way to configure
|
||||
logging in Python. It also provides some custom formatters and handlers.")
|
||||
(synopsis "Library to configure Python logging easily")
|
||||
(description
|
||||
"The daiquiri library provides an easy way to configure logging in
|
||||
Python. It also provides some custom formatters and handlers.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-pifpaf
|
||||
|
@ -33417,44 +33541,50 @@ with the Twisted web framework.")
|
|||
(license license:expat))))
|
||||
|
||||
(define-public python-txacme
|
||||
(package
|
||||
(name "python-txacme")
|
||||
(version "0.9.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "txacme" version))
|
||||
(sha256
|
||||
(base32 "1cplx4llq7i508w6fgwjdv9di7rsz9k9irfmzdfbiz6q6a0ykf1d"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-acme
|
||||
python-attrs
|
||||
python-eliot
|
||||
python-josepy
|
||||
python-pem
|
||||
python-treq
|
||||
python-twisted
|
||||
python-txsni))
|
||||
(native-inputs
|
||||
(list python-fixtures
|
||||
python-hypothesis
|
||||
python-mock
|
||||
python-service-identity
|
||||
python-testrepository
|
||||
python-testscenarios
|
||||
python-testtools))
|
||||
(home-page "https://github.com/twisted/txacme")
|
||||
(synopsis "Twisted implexmentation of the ACME protocol")
|
||||
(description
|
||||
"ACME is Automatic Certificate Management Environment, a protocol that
|
||||
;; 0.9.3 tag was placed in 2020 and there a lot of changes providing
|
||||
;; compatibility wit twisted, use the latest commit from trunk branch.
|
||||
;;
|
||||
;;See: <https://github.com/twisted/txacme/issues/165>.
|
||||
(let ((commit "ac18f92f6dde971a6b38f2ecfae44665815db583")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "python-txacme")
|
||||
(version (git-version "0.9.3" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch) ;no fresh release in PyPI
|
||||
(uri (git-reference
|
||||
(url "https://github.com/twisted/txacme")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mgdfxldv8qflbn75ywslbarnd4i3l7c4krs4aibl2dpryclsjzs"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:test-backend #~'custom
|
||||
#:test-flags #~(list "-m" "twisted.trial" "txacme")))
|
||||
(native-inputs
|
||||
(list python-setuptools))
|
||||
(propagated-inputs
|
||||
(list python-acme
|
||||
python-attrs
|
||||
python-eliot
|
||||
python-josepy
|
||||
python-pem
|
||||
python-treq
|
||||
python-twisted
|
||||
python-txsni))
|
||||
(home-page "https://github.com/twisted/txacme")
|
||||
(synopsis "Twisted implexmentation of the ACME protocol")
|
||||
(description
|
||||
"ACME is Automatic Certificate Management Environment, a protocol that
|
||||
allows clients and certificate authorities to automate verification and
|
||||
certificate issuance. The ACME protocol is used by the free Let's Encrypt
|
||||
Certificate Authority.
|
||||
|
||||
txacme is an implementation of the protocol for Twisted, the event-driven
|
||||
networking engine for Python.")
|
||||
(license license:expat)))
|
||||
(license license:expat))))
|
||||
|
||||
(define-public python-pysaml2
|
||||
(package
|
||||
|
@ -39163,16 +39293,34 @@ Currently, Linux is the only platform supported by this library.")
|
|||
(define-public python-dbus-fast
|
||||
(package
|
||||
(name "python-dbus-fast")
|
||||
(version "2.30.2")
|
||||
(version "2.44.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "dbus_fast" version))
|
||||
(method git-fetch) ;No tests in PyPI package.
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Bluetooth-Devices/dbus-fast")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1cx71lbw716smpr4vsc9d421v45s36hcqj2z95nl3wm2yhan6ac7"))))
|
||||
(base32 "12f1f25ny7fd59s55gw3vr6ymdqgd51zzpbc1nkqfbmb166d1536"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-cython python-poetry-core python-setuptools
|
||||
python-wheel))
|
||||
(arguments
|
||||
(list
|
||||
#:test-flags
|
||||
'(list
|
||||
;; These tests need pytest_codspeed.
|
||||
"--ignore-glob=tests/benchmarks/test_*marshall.py"
|
||||
;; These tests all fail with:
|
||||
;; dbus_fast.errors.InvalidAddressError: DBUS_SESSION_BUS_ADDRESS not
|
||||
;; set and could not get DISPLAY environment variable to get bus address
|
||||
"-m" "not asyncio")))
|
||||
(native-inputs (list python-cython
|
||||
python-poetry-core
|
||||
python-setuptools
|
||||
python-pytest
|
||||
python-pytest-cov
|
||||
python-pytest-asyncio
|
||||
python-covdefaults))
|
||||
(home-page "https://github.com/bluetooth-devices/dbus-fast")
|
||||
(synopsis "Faster version of dbus-next")
|
||||
(description "This package provides a faster version of dbus-next.")
|
||||
|
|
|
@ -2117,7 +2117,7 @@ Vulkan, OpenGL and other main graphic APIs.")
|
|||
vulkan-headers))
|
||||
(inputs
|
||||
(list alsa-lib
|
||||
ffmpeg
|
||||
ffmpeg-6
|
||||
glib
|
||||
libxkbcommon
|
||||
libxrandr
|
||||
|
|
|
@ -3368,9 +3368,9 @@ of devices than RTL-SDR.")
|
|||
(setenv "DISPLAY" ":0")
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(native-inputs
|
||||
(list python-cython
|
||||
(list python-cython-0
|
||||
python-pytest
|
||||
python-wheel
|
||||
python-setuptools
|
||||
xorg-server-for-tests))
|
||||
(inputs
|
||||
(list airspy
|
||||
|
|
|
@ -252,8 +252,7 @@ of parts of the Windows API.")
|
|||
linux-pam
|
||||
openssl
|
||||
pixman
|
||||
python
|
||||
python-libxml2))
|
||||
python))
|
||||
(native-inputs
|
||||
(append
|
||||
(list bison
|
||||
|
|
|
@ -77,7 +77,8 @@
|
|||
"-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1026whyxpajwijlr4k5c0iliwn09mwxrg7gkvd5kb0n9ga6vg788"))))
|
||||
"1026whyxpajwijlr4k5c0iliwn09mwxrg7gkvd5kb0n9ga6vg788"))
|
||||
(patches (search-patches "raptor2-libxml2.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list curl libxml2 libxslt zlib))
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
|
||||
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2022, 2024 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -169,7 +170,7 @@ type information of gRPC.")
|
|||
(uri (pypi-uri "grpcio" version))
|
||||
(sha256
|
||||
(base32 "1nsgm8q4yahzdab4m3irffdw9zklq4kb7f8hki1ayfgw54ysim55"))
|
||||
(modules '((guix build utils) (ice-9 ftw)))
|
||||
(modules '((guix build utils) (ice-9 ftw) (srfi srfi-26)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Delete this generated file.
|
||||
|
@ -178,16 +179,14 @@ type information of gRPC.")
|
|||
;; Delete the bundled source code of libraries that are possible
|
||||
;; to provide as inputs.
|
||||
(for-each delete-file-recursively
|
||||
(scandir "."
|
||||
(lambda (file)
|
||||
(not (member file
|
||||
'("." ".."
|
||||
"address_sorting"
|
||||
"upb"
|
||||
"xxhash")))))))))))
|
||||
(scandir "." (negate (cut member <> '("." ".."
|
||||
"address_sorting"
|
||||
"upb"
|
||||
"xxhash"))))))))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; There seems to be no tests.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'use-system-libraries
|
||||
|
@ -212,16 +211,13 @@ type information of gRPC.")
|
|||
(lambda _
|
||||
(substitute* '("setup.py" "src/python/grpcio/commands.py")
|
||||
(("'cc'") "'gcc'")))))))
|
||||
(inputs
|
||||
(list abseil-cpp-cxxstd11 c-ares grpc openssl re2 zlib))
|
||||
(native-inputs
|
||||
(list python-cython python-setuptools python-wheel))
|
||||
(propagated-inputs
|
||||
(list python-six))
|
||||
(inputs (list abseil-cpp-cxxstd11 c-ares grpc openssl re2 zlib))
|
||||
(native-inputs (list python-cython-0 python-setuptools))
|
||||
(home-page "https://grpc.io")
|
||||
(synopsis "HTTP/2-based RPC framework")
|
||||
(description "This package provides a Python library for communicating
|
||||
with the HTTP/2-based RPC framework gRPC.")
|
||||
(description
|
||||
"This package provides a Python library for communicating with the
|
||||
HTTP/2-based RPC framework gRPC.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-grpcio-tools
|
||||
|
@ -241,12 +237,13 @@ with the HTTP/2-based RPC framework gRPC.")
|
|||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;XXX: no tests in PyPI, try to bulid from Git
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'configure
|
||||
(lambda _
|
||||
(setenv "GRPC_PYTHON_BUILD_WITH_CYTHON" "1"))))))
|
||||
(native-inputs (list python-cython python-setuptools python-wheel))
|
||||
(native-inputs (list python-cython python-setuptools))
|
||||
(propagated-inputs (list python-grpcio python-protobuf-4))
|
||||
(home-page "https://grpc.io")
|
||||
(synopsis "Protobuf code generator for gRPC")
|
||||
|
|
|
@ -19700,6 +19700,7 @@
|
|||
`(("paste" ,rust-paste-1.0.15)
|
||||
("proc-macro2" ,rust-proc-macro2-1.0.94)
|
||||
("quote" ,rust-quote-1.0.40)
|
||||
("rustc-hash" ,rust-rustc-hash-2.1.1)
|
||||
("syn" ,rust-syn-2.0.100)
|
||||
("unicode-ident" ,rust-unicode-ident-1.0.18)))
|
||||
|
||||
|
|
|
@ -247,8 +247,10 @@ libraries GMO, MPFR and MPC.")
|
|||
(sha256
|
||||
(base32 "1r7g175ddbpn5kjgs6f09s7mfachzw94p02snki6f6830dmj22fn"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no tests in PyPI or Git
|
||||
(native-inputs
|
||||
(list python-cython python-setuptools python-wheel))
|
||||
(list python-cython python-setuptools))
|
||||
(home-page "https://github.com/sagemath/memory_allocator")
|
||||
(synopsis "Extension class to allocate memory easily with Cython")
|
||||
(description "This package provides a single extension class
|
||||
|
|
|
@ -305,42 +305,46 @@ based on required access.")
|
|||
(package
|
||||
(name "python-setools")
|
||||
(version "4.4.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SELinuxProject/setools")
|
||||
(commit version)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qvd5j6zwq4fmlahg45swjplhif2z89x7s6pnp07gvcp2fbqdsh5"))))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SELinuxProject/setools")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1qvd5j6zwq4fmlahg45swjplhif2z89x7s6pnp07gvcp2fbqdsh5"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; the test target causes a rebuild
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'portability)
|
||||
(add-after 'unpack 'set-SEPOL-variable
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "SEPOL"
|
||||
(search-input-file inputs "/lib/libsepol.a"))))
|
||||
(add-after 'unpack 'remove-Werror
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'-Werror',") ""))
|
||||
#t))
|
||||
(add-after 'unpack 'fix-target-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "setup.py"
|
||||
(("join\\(sys.prefix")
|
||||
(string-append "join(\"" (assoc-ref outputs "out") "/\"")))
|
||||
#t)))))
|
||||
(list
|
||||
#:tests? #f ; the test target causes a rebuild
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'portability)
|
||||
(add-after 'unpack 'set-SEPOL-variable
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "SEPOL"
|
||||
(search-input-file inputs "/lib/libsepol.a"))))
|
||||
(add-after 'unpack 'remove-Werror
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'-Werror',") ""))))
|
||||
(add-after 'unpack 'fix-target-paths
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("join\\(sys.prefix")
|
||||
(string-append "join(\"" #$output "/\""))))))))
|
||||
(native-inputs
|
||||
(list bison
|
||||
flex
|
||||
python-cython-0
|
||||
swig))
|
||||
(inputs
|
||||
(list libsepol
|
||||
libselinux
|
||||
python-pyqt))
|
||||
(propagated-inputs
|
||||
(list python-networkx))
|
||||
(inputs
|
||||
(list libsepol libselinux python-pyqt))
|
||||
(native-inputs
|
||||
(list bison flex python-cython swig))
|
||||
(home-page "https://github.com/SELinuxProject/setools")
|
||||
(synopsis "Tools for SELinux policy analysis")
|
||||
(description "SETools is a collection of graphical tools, command-line
|
||||
|
|
|
@ -3010,9 +3010,16 @@ completion.")
|
|||
(base32
|
||||
"10nmydlbmi0vyim7sx71isx3z2mnnfjmhf3248cicy9x1z1hizyv"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; XXX: ...trying to load module _rinterface_cffi_api: ERROR:
|
||||
;;
|
||||
;; See: <https://github.com/rpy2/rpy2/issues/1034>.
|
||||
(delete 'sanity-check))))
|
||||
(propagated-inputs
|
||||
(list python-cffi
|
||||
python-six
|
||||
python-jinja2
|
||||
python-numpy
|
||||
python-pandas
|
||||
|
@ -3033,14 +3040,8 @@ completion.")
|
|||
r-dbplyr
|
||||
zlib))
|
||||
(native-inputs
|
||||
(list python-coverage
|
||||
python-ipython
|
||||
python-numpy
|
||||
python-pandas
|
||||
python-pytest
|
||||
python-pytest-cov
|
||||
python-setuptools
|
||||
python-wheel))
|
||||
(list python-pytest
|
||||
python-setuptools))
|
||||
(home-page "https://rpy2.github.io")
|
||||
(synopsis "Python interface to the R language")
|
||||
(description "rpy2 is a redesign and rewrite of rpy. It is providing a
|
||||
|
|
|
@ -887,7 +887,7 @@ eye-candy, customizable, and reasonably lightweight.")
|
|||
(list (search-path-specification
|
||||
(variable "TERMINFO_DIRS")
|
||||
(files '("share/terminfo")))))
|
||||
(inputs (list fcft libxkbcommon-1.8 wayland wayland-protocols))
|
||||
(inputs (list fcft libxkbcommon wayland wayland-protocols))
|
||||
(synopsis "Wayland-native terminal emulator")
|
||||
(description
|
||||
"@command{foot} is a terminal emulator for systems using the Wayland
|
||||
|
|
|
@ -240,7 +240,7 @@ Browser.")
|
|||
libxcomposite
|
||||
libxt
|
||||
libffi
|
||||
ffmpeg-7
|
||||
ffmpeg
|
||||
libvpx
|
||||
icu4c
|
||||
pixman
|
||||
|
|
|
@ -281,7 +281,7 @@ networks.")
|
|||
(list python-cython-3
|
||||
python-poetry-core
|
||||
python-pytest
|
||||
python-wheel))
|
||||
python-setuptools))
|
||||
(inputs
|
||||
(list python-click
|
||||
python-cffi
|
||||
|
@ -323,7 +323,7 @@ networks.")
|
|||
(("70.0.0") "67.6.1") ; setuptools = ">=70.0.0"
|
||||
(("1.8.1") "^1.8.1") ; stem = "1.8.1"
|
||||
(("3.0.6") "^3.0.6") ; werkzeug = "3.0.6"
|
||||
(("0.41.2") "0.40.0")))) ; wheel = "^0.41.2"
|
||||
((".*0.41.2.*") "")))) ; wheel = "^0.41.2"
|
||||
(add-after 'unpack 'bake-tor
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* (list "cli/onionshare_cli/common.py"
|
||||
|
|
|
@ -228,6 +228,10 @@
|
|||
(find-files "breezy/tests"))
|
||||
(("#!/bin/sh")
|
||||
(format #f "#!~a" (which "sh"))))))
|
||||
(add-after 'unpack 'relax-gcc-14-strictness
|
||||
(lambda _
|
||||
(setenv "CFLAGS"
|
||||
(string-append "-g -O2 -Wno-error=implicit-function-declaration"))))
|
||||
(add-before 'build 'adjust-for-python-3.10
|
||||
(lambda _
|
||||
(substitute* '("breezy/doc_generate/__init__.py"
|
||||
|
@ -253,11 +257,13 @@
|
|||
;; Unknown Failure
|
||||
"-x" "breezy.tests.test_plugins.TestLoadPluginAt.test_compiled_loaded"
|
||||
"-x" "breezy.tests.test_plugins.TestPlugins.test_plugin_get_path_pyc_only"
|
||||
"-x" "breezy.tests.test_selftest.TestActuallyStartBzrSubprocess.test_start_and_stop_bzr_subprocess_send_signal")))))))
|
||||
"-x" "breezy.tests.test_selftest.TestActuallyStartBzrSubprocess.test_start_and_stop_bzr_subprocess_send_signal"
|
||||
;; AttributeError: module 'paramiko' has no attribute 'DSSKey'
|
||||
"-x" "breezy.tests.test_transport.TestSSHConnections.test_bzr_connect_to_bzr_ssh")))))))
|
||||
(native-inputs
|
||||
(append
|
||||
(list gettext-minimal
|
||||
python-cython
|
||||
python-cython-0
|
||||
python-setuptools
|
||||
python-setuptools-gettext
|
||||
python-setuptools-rust
|
||||
|
|
|
@ -1527,7 +1527,7 @@ libebml is a C++ library to read and write EBML files.")
|
|||
(define-public libplacebo
|
||||
(package
|
||||
(name "libplacebo")
|
||||
(version "7.349.0")
|
||||
(version "7.351.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1536,7 +1536,7 @@ libebml is a C++ library to read and write EBML files.")
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1q12yf04z570a2l3vkig2iqm7bgqr90hdxmn78sk2injrsyx124q"))))
|
||||
(base32 "094mzr4cvvryxr7rpxqhvrs018r89m116cpkmmfy3d3sk8b09jki"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags
|
||||
|
@ -1644,17 +1644,17 @@ These tools require a supported graphics chip, driver, and VA-API back end to
|
|||
operate properly.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ffmpeg-7
|
||||
(define-public ffmpeg
|
||||
(package
|
||||
(name "ffmpeg")
|
||||
(version "7.0.2")
|
||||
(version "8.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12dkv17mrsdqrm70c30azjw7qi1lfxca7xisw81x6flacddm2il6"))))
|
||||
"13kvs9rh5mp21gx64hdj0jlnz6q5c6spik8kh5q7fk6cnv61yxdj"))))
|
||||
(outputs '("out" "debug"))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
|
@ -1674,6 +1674,8 @@ operate properly.")
|
|||
libcaca
|
||||
libcdio-paranoia
|
||||
libdrm
|
||||
libgme
|
||||
libplacebo
|
||||
libtheora
|
||||
libva
|
||||
libvdpau
|
||||
|
@ -1685,13 +1687,16 @@ operate properly.")
|
|||
mesa
|
||||
openal
|
||||
pulseaudio
|
||||
shaderc
|
||||
sdl2
|
||||
soxr
|
||||
speex
|
||||
spirv-tools
|
||||
srt
|
||||
svt-av1
|
||||
twolame
|
||||
vidstab
|
||||
vulkan-loader
|
||||
x265
|
||||
xvid
|
||||
zlib)))
|
||||
|
@ -1701,7 +1706,8 @@ operate properly.")
|
|||
pkg-config
|
||||
texinfo
|
||||
speex
|
||||
yasm))
|
||||
vulkan-headers
|
||||
nasm))
|
||||
(arguments
|
||||
(list
|
||||
#:test-target "fate"
|
||||
|
@ -1716,7 +1722,6 @@ operate properly.")
|
|||
;; --enable-libfdk-aac enable AAC de/encoding via libfdk-aac [no]
|
||||
;; --enable-libflite enable flite (voice synthesis) support via
|
||||
;; libflite [no]
|
||||
;; --enable-libgme enable Game Music Emu via libgme [no]
|
||||
;; --enable-libgsm enable GSM de/encoding via libgsm [no]
|
||||
;; --enable-libiec61883 enable iec61883 via libiec61883 [no]
|
||||
;; --enable-libilbc enable iLBC de/encoding via libilbc [no]
|
||||
|
@ -1769,12 +1774,15 @@ operate properly.")
|
|||
"--enable-libcdio"
|
||||
"--enable-libdav1d"
|
||||
"--enable-libfreetype"
|
||||
"--enable-libgme"
|
||||
"--enable-libmp3lame"
|
||||
"--enable-libopus"
|
||||
"--enable-libplacebo"
|
||||
"--enable-libpulse"
|
||||
#$@(if (this-package-input "rav1e")
|
||||
'("--enable-librav1e")
|
||||
'())
|
||||
"--enable-libshaderc"
|
||||
"--enable-libsoxr"
|
||||
"--enable-libspeex"
|
||||
"--enable-libsrt"
|
||||
|
@ -1792,6 +1800,7 @@ operate properly.")
|
|||
"--enable-opengl"
|
||||
"--enable-libdrm"
|
||||
"--enable-vaapi"
|
||||
"--enable-vulkan"
|
||||
|
||||
"--enable-runtime-cpudetect"
|
||||
|
||||
|
@ -1836,7 +1845,7 @@ operate properly.")
|
|||
(lambda* (#:key outputs configure-flags #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "configure"
|
||||
(("#! /bin/sh") (string-append "#!" (which "sh"))))
|
||||
(("#! */bin/sh") (string-append "#!" (which "sh"))))
|
||||
(setenv "SHELL" (which "bash"))
|
||||
(setenv "CONFIG_SHELL" (which "bash"))
|
||||
(apply invoke
|
||||
|
@ -1861,23 +1870,23 @@ convert and stream audio and video. It includes the libavcodec
|
|||
audio/video codec library.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public ffmpeg
|
||||
(define-public ffmpeg-6
|
||||
(package
|
||||
(inherit ffmpeg-7)
|
||||
(version "6.1.1")
|
||||
(inherit ffmpeg)
|
||||
(version "6.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s7r2qv8gh2a3w568n9xxgcz0q8j5ww1jdsci1hm9f4l1yqg9146"))
|
||||
"0f2fr8ywchhlkdff88lr4d4vscqzsi1ndjh3r5jwbkayf94lcqiv"))
|
||||
(patches
|
||||
(search-patches
|
||||
"ffmpeg-add-av_stream_get_first_dts-for-chromium.patch"))))
|
||||
(arguments
|
||||
(if (target-x86-32?)
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg-7)
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg)
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
(add-before 'configure 'relax-gcc-14-strictness
|
||||
|
@ -1885,8 +1894,9 @@ audio/video codec library.")
|
|||
(setenv
|
||||
"CFLAGS"
|
||||
(string-append "-g -O2"
|
||||
" -Wno-error=incompatible-pointer-types")))))))
|
||||
(package-arguments ffmpeg-7)))))
|
||||
" -Wno-error=incompatible-pointer-types"
|
||||
" -Wno-error=int-conversion")))))))
|
||||
(package-arguments ffmpeg)))))
|
||||
|
||||
(define-public ffmpeg-5
|
||||
(package
|
||||
|
@ -1926,8 +1936,12 @@ audio/video codec library.")
|
|||
(replace "sdl2" sdl2-2.0)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg-5)
|
||||
((#:modules modules %default-gnu-modules)
|
||||
`((srfi srfi-1) ,@modules))
|
||||
((#:configure-flags flags ''())
|
||||
#~(cons "--enable-avresample" #$flags))))))
|
||||
#~(cons "--enable-avresample"
|
||||
(fold delete #$flags '("--enable-libplacebo"
|
||||
"--enable-libshaderc"))))))))
|
||||
|
||||
(define-public ffmpeg-for-stepmania
|
||||
(hidden-package
|
||||
|
@ -1995,270 +2009,271 @@ audio/video codec library.")
|
|||
|
||||
;;; Custom ffmpeg package used by Jami, which incorporates custom patches.
|
||||
(define-public ffmpeg-jami
|
||||
(package
|
||||
(inherit ffmpeg)
|
||||
(name "ffmpeg-jami")
|
||||
(source (let ((ffmpeg-origin (package-source ffmpeg)))
|
||||
(origin
|
||||
(inherit ffmpeg-origin)
|
||||
;; These patches originate come from
|
||||
;; <https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/>.
|
||||
;; Make sure to keep them update and/or register any new ones
|
||||
;; here.
|
||||
(patches
|
||||
(append
|
||||
(origin-patches ffmpeg-origin)
|
||||
(search-patches
|
||||
"ffmpeg-jami-remove-mjpeg-log.patch"
|
||||
"ffmpeg-jami-change-RTCP-ratio.patch"
|
||||
"ffmpeg-jami-rtp_ext_abs_send_time.patch"
|
||||
"ffmpeg-jami-libopusdec-enable-FEC.patch"
|
||||
"ffmpeg-jami-libopusenc-reload-packet-loss-at-encode.patch"
|
||||
"ffmpeg-jami-screen-sharing-x11-fix.patch"
|
||||
"ffmpeg-jami-pipewiregrab-source-filter.patch"))))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg)
|
||||
((#:configure-flags _ '())
|
||||
;; The base configure flags preserved from ffmpeg appear first.
|
||||
#~(list "--disable-static"
|
||||
"--enable-shared"
|
||||
"--disable-stripping"
|
||||
(let ((ffmpeg ffmpeg-6))
|
||||
(package
|
||||
(inherit ffmpeg)
|
||||
(name "ffmpeg-jami")
|
||||
(source (let ((ffmpeg-origin (package-source ffmpeg)))
|
||||
(origin
|
||||
(inherit ffmpeg-origin)
|
||||
;; These patches originate come from
|
||||
;; <https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/>.
|
||||
;; Make sure to keep them update and/or register any new ones
|
||||
;; here.
|
||||
(patches
|
||||
(append
|
||||
(origin-patches ffmpeg-origin)
|
||||
(search-patches
|
||||
"ffmpeg-jami-remove-mjpeg-log.patch"
|
||||
"ffmpeg-jami-change-RTCP-ratio.patch"
|
||||
"ffmpeg-jami-rtp_ext_abs_send_time.patch"
|
||||
"ffmpeg-jami-libopusdec-enable-FEC.patch"
|
||||
"ffmpeg-jami-libopusenc-reload-packet-loss-at-encode.patch"
|
||||
"ffmpeg-jami-screen-sharing-x11-fix.patch"
|
||||
"ffmpeg-jami-pipewiregrab-source-filter.patch"))))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg)
|
||||
((#:configure-flags _ '())
|
||||
;; The base configure flags preserved from ffmpeg appear first.
|
||||
#~(list "--disable-static"
|
||||
"--enable-shared"
|
||||
"--disable-stripping"
|
||||
|
||||
;; Extra Guix-added flags that make sense for this custom
|
||||
;; package; these could be contributed upstream.
|
||||
"--disable-doc"
|
||||
;; Extra Guix-added flags that make sense for this custom
|
||||
;; package; these could be contributed upstream.
|
||||
"--disable-doc"
|
||||
|
||||
;; The following flags are those specified by Jami.
|
||||
;; They're from the jami/daemon/contrib/src/ffmpeg/rules.mak
|
||||
;; file. We try to keep it as close to the official Jami
|
||||
;; package as possible, to provide all the codecs and extra
|
||||
;; features that are expected (see:
|
||||
;; https://review.jami.net/plugins/gitiles/jami-daemon/+/
|
||||
;; refs/heads/master/contrib/src/ffmpeg/rules.mak).
|
||||
"--disable-everything"
|
||||
"--enable-zlib"
|
||||
"--enable-gpl"
|
||||
"--enable-swscale"
|
||||
"--enable-bsfs"
|
||||
"--disable-filters"
|
||||
"--disable-programs"
|
||||
"--disable-postproc"
|
||||
;; The following flags are those specified by Jami.
|
||||
;; They're from the jami/daemon/contrib/src/ffmpeg/rules.mak
|
||||
;; file. We try to keep it as close to the official Jami
|
||||
;; package as possible, to provide all the codecs and extra
|
||||
;; features that are expected (see:
|
||||
;; https://review.jami.net/plugins/gitiles/jami-daemon/+/
|
||||
;; refs/heads/master/contrib/src/ffmpeg/rules.mak).
|
||||
"--disable-everything"
|
||||
"--enable-zlib"
|
||||
"--enable-gpl"
|
||||
"--enable-swscale"
|
||||
"--enable-bsfs"
|
||||
"--disable-filters"
|
||||
"--disable-programs"
|
||||
"--disable-postproc"
|
||||
|
||||
"--enable-libpipewire"
|
||||
"--enable-filter=pipewiregrab"
|
||||
"--enable-indev=lavfi"
|
||||
"--enable-decoder=wrapped_avframe"
|
||||
"--enable-libpipewire"
|
||||
"--enable-filter=pipewiregrab"
|
||||
"--enable-indev=lavfi"
|
||||
"--enable-decoder=wrapped_avframe"
|
||||
|
||||
"--disable-protocols"
|
||||
"--enable-protocol=crypto"
|
||||
"--enable-protocol=file"
|
||||
"--enable-protocol=rtp"
|
||||
"--enable-protocol=srtp"
|
||||
"--enable-protocol=tcp"
|
||||
"--enable-protocol=udp"
|
||||
"--enable-protocol=unix"
|
||||
"--enable-protocol=pipe"
|
||||
"--disable-protocols"
|
||||
"--enable-protocol=crypto"
|
||||
"--enable-protocol=file"
|
||||
"--enable-protocol=rtp"
|
||||
"--enable-protocol=srtp"
|
||||
"--enable-protocol=tcp"
|
||||
"--enable-protocol=udp"
|
||||
"--enable-protocol=unix"
|
||||
"--enable-protocol=pipe"
|
||||
|
||||
;; Enable muxers/demuxers.
|
||||
"--disable-demuxers"
|
||||
"--disable-muxers"
|
||||
"--enable-muxer=rtp"
|
||||
"--enable-muxer=g722"
|
||||
"--enable-muxer=g723_1"
|
||||
"--enable-muxer=g726"
|
||||
"--enable-muxer=g726le"
|
||||
"--enable-muxer=h263"
|
||||
"--enable-muxer=h264"
|
||||
"--enable-muxer=hevc"
|
||||
"--enable-muxer=matroska"
|
||||
"--enable-muxer=webm"
|
||||
"--enable-muxer=ogg"
|
||||
"--enable-muxer=pcm_s16be"
|
||||
"--enable-muxer=pcm_s16le"
|
||||
"--enable-muxer=wav"
|
||||
"--enable-demuxer=rtp"
|
||||
"--enable-demuxer=mjpeg"
|
||||
"--enable-demuxer=mjpeg_2000"
|
||||
"--enable-demuxer=mpegvideo"
|
||||
"--enable-demuxer=gif"
|
||||
"--enable-demuxer=image_jpeg_pipe"
|
||||
"--enable-demuxer=image_png_pipe"
|
||||
"--enable-demuxer=image_webp_pipe"
|
||||
"--enable-demuxer=matroska"
|
||||
"--enable-demuxer=m4v"
|
||||
"--enable-demuxer=mp3"
|
||||
"--enable-demuxer=ogg"
|
||||
"--enable-demuxer=flac"
|
||||
"--enable-demuxer=wav"
|
||||
"--enable-demuxer=ac3"
|
||||
"--enable-demuxer=g722"
|
||||
"--enable-demuxer=g723_1"
|
||||
"--enable-demuxer=g726"
|
||||
"--enable-demuxer=g726le"
|
||||
"--enable-demuxer=pcm_mulaw"
|
||||
"--enable-demuxer=pcm_alaw"
|
||||
"--enable-demuxer=pcm_s16be"
|
||||
"--enable-demuxer=pcm_s16le"
|
||||
"--enable-demuxer=h263"
|
||||
"--enable-demuxer=h264"
|
||||
"--enable-demuxer=hevc"
|
||||
;; Enable muxers/demuxers.
|
||||
"--disable-demuxers"
|
||||
"--disable-muxers"
|
||||
"--enable-muxer=rtp"
|
||||
"--enable-muxer=g722"
|
||||
"--enable-muxer=g723_1"
|
||||
"--enable-muxer=g726"
|
||||
"--enable-muxer=g726le"
|
||||
"--enable-muxer=h263"
|
||||
"--enable-muxer=h264"
|
||||
"--enable-muxer=hevc"
|
||||
"--enable-muxer=matroska"
|
||||
"--enable-muxer=webm"
|
||||
"--enable-muxer=ogg"
|
||||
"--enable-muxer=pcm_s16be"
|
||||
"--enable-muxer=pcm_s16le"
|
||||
"--enable-muxer=wav"
|
||||
"--enable-demuxer=rtp"
|
||||
"--enable-demuxer=mjpeg"
|
||||
"--enable-demuxer=mjpeg_2000"
|
||||
"--enable-demuxer=mpegvideo"
|
||||
"--enable-demuxer=gif"
|
||||
"--enable-demuxer=image_jpeg_pipe"
|
||||
"--enable-demuxer=image_png_pipe"
|
||||
"--enable-demuxer=image_webp_pipe"
|
||||
"--enable-demuxer=matroska"
|
||||
"--enable-demuxer=m4v"
|
||||
"--enable-demuxer=mp3"
|
||||
"--enable-demuxer=ogg"
|
||||
"--enable-demuxer=flac"
|
||||
"--enable-demuxer=wav"
|
||||
"--enable-demuxer=ac3"
|
||||
"--enable-demuxer=g722"
|
||||
"--enable-demuxer=g723_1"
|
||||
"--enable-demuxer=g726"
|
||||
"--enable-demuxer=g726le"
|
||||
"--enable-demuxer=pcm_mulaw"
|
||||
"--enable-demuxer=pcm_alaw"
|
||||
"--enable-demuxer=pcm_s16be"
|
||||
"--enable-demuxer=pcm_s16le"
|
||||
"--enable-demuxer=h263"
|
||||
"--enable-demuxer=h264"
|
||||
"--enable-demuxer=hevc"
|
||||
|
||||
;; Enable parsers.
|
||||
"--enable-parser=h263"
|
||||
"--enable-parser=h264"
|
||||
"--enable-parser=hevc"
|
||||
"--enable-parser=mpeg4video"
|
||||
"--enable-parser=vp8"
|
||||
"--enable-parser=vp9"
|
||||
"--enable-parser=opus"
|
||||
;; Enable parsers.
|
||||
"--enable-parser=h263"
|
||||
"--enable-parser=h264"
|
||||
"--enable-parser=hevc"
|
||||
"--enable-parser=mpeg4video"
|
||||
"--enable-parser=vp8"
|
||||
"--enable-parser=vp9"
|
||||
"--enable-parser=opus"
|
||||
|
||||
;; Encoders/decoders.
|
||||
"--enable-encoder=adpcm_g722"
|
||||
"--enable-decoder=adpcm_g722"
|
||||
"--enable-encoder=adpcm_g726"
|
||||
"--enable-decoder=adpcm_g726"
|
||||
"--enable-encoder=adpcm_g726le"
|
||||
"--enable-decoder=adpcm_g726le"
|
||||
"--enable-decoder=g729"
|
||||
"--enable-encoder=g723_1"
|
||||
"--enable-decoder=g723_1"
|
||||
"--enable-encoder=rawvideo"
|
||||
"--enable-decoder=rawvideo"
|
||||
"--enable-encoder=libx264"
|
||||
"--enable-decoder=h264"
|
||||
"--enable-encoder=pcm_alaw"
|
||||
"--enable-decoder=pcm_alaw"
|
||||
"--enable-encoder=pcm_mulaw"
|
||||
"--enable-decoder=pcm_mulaw"
|
||||
"--enable-encoder=mpeg4"
|
||||
"--enable-decoder=mpeg4"
|
||||
"--enable-encoder=libvpx_vp8"
|
||||
"--enable-decoder=vp8"
|
||||
"--enable-decoder=vp9"
|
||||
"--enable-encoder=h263"
|
||||
"--enable-encoder=h263p"
|
||||
"--enable-decoder=h263"
|
||||
"--enable-encoder=mjpeg"
|
||||
"--enable-decoder=mjpeg"
|
||||
"--enable-decoder=mjpegb"
|
||||
"--enable-libspeex"
|
||||
"--enable-libopus"
|
||||
"--enable-libvpx"
|
||||
"--enable-libx264"
|
||||
"--enable-encoder=libspeex"
|
||||
"--enable-decoder=libspeex"
|
||||
"--enable-encoder=libopus"
|
||||
"--enable-decoder=libopus"
|
||||
;; Encoders/decoders.
|
||||
"--enable-encoder=adpcm_g722"
|
||||
"--enable-decoder=adpcm_g722"
|
||||
"--enable-encoder=adpcm_g726"
|
||||
"--enable-decoder=adpcm_g726"
|
||||
"--enable-encoder=adpcm_g726le"
|
||||
"--enable-decoder=adpcm_g726le"
|
||||
"--enable-decoder=g729"
|
||||
"--enable-encoder=g723_1"
|
||||
"--enable-decoder=g723_1"
|
||||
"--enable-encoder=rawvideo"
|
||||
"--enable-decoder=rawvideo"
|
||||
"--enable-encoder=libx264"
|
||||
"--enable-decoder=h264"
|
||||
"--enable-encoder=pcm_alaw"
|
||||
"--enable-decoder=pcm_alaw"
|
||||
"--enable-encoder=pcm_mulaw"
|
||||
"--enable-decoder=pcm_mulaw"
|
||||
"--enable-encoder=mpeg4"
|
||||
"--enable-decoder=mpeg4"
|
||||
"--enable-encoder=libvpx_vp8"
|
||||
"--enable-decoder=vp8"
|
||||
"--enable-decoder=vp9"
|
||||
"--enable-encoder=h263"
|
||||
"--enable-encoder=h263p"
|
||||
"--enable-decoder=h263"
|
||||
"--enable-encoder=mjpeg"
|
||||
"--enable-decoder=mjpeg"
|
||||
"--enable-decoder=mjpegb"
|
||||
"--enable-libspeex"
|
||||
"--enable-libopus"
|
||||
"--enable-libvpx"
|
||||
"--enable-libx264"
|
||||
"--enable-encoder=libspeex"
|
||||
"--enable-decoder=libspeex"
|
||||
"--enable-encoder=libopus"
|
||||
"--enable-decoder=libopus"
|
||||
|
||||
;; Encoders/decoders for ringtones and audio streaming.
|
||||
"--enable-decoder=flac"
|
||||
"--enable-decoder=vorbis"
|
||||
"--enable-decoder=aac"
|
||||
"--enable-decoder=ac3"
|
||||
"--enable-decoder=eac3"
|
||||
"--enable-decoder=mp3"
|
||||
"--enable-decoder=pcm_u24le"
|
||||
"--enable-decoder=pcm_u32le"
|
||||
"--enable-decoder=pcm_u8"
|
||||
"--enable-decoder=pcm_f16le"
|
||||
"--enable-decoder=pcm_f32le"
|
||||
"--enable-decoder=pcm_f64le"
|
||||
"--enable-decoder=pcm_s16le"
|
||||
"--enable-decoder=pcm_s24le"
|
||||
"--enable-decoder=pcm_s32le"
|
||||
"--enable-decoder=pcm_s64le"
|
||||
"--enable-decoder=pcm_u16le"
|
||||
"--enable-encoder=pcm_u8"
|
||||
"--enable-encoder=pcm_f32le"
|
||||
"--enable-encoder=pcm_f64le"
|
||||
"--enable-encoder=pcm_s16le"
|
||||
"--enable-encoder=pcm_s32le"
|
||||
"--enable-encoder=pcm_s64le"
|
||||
;; Encoders/decoders for ringtones and audio streaming.
|
||||
"--enable-decoder=flac"
|
||||
"--enable-decoder=vorbis"
|
||||
"--enable-decoder=aac"
|
||||
"--enable-decoder=ac3"
|
||||
"--enable-decoder=eac3"
|
||||
"--enable-decoder=mp3"
|
||||
"--enable-decoder=pcm_u24le"
|
||||
"--enable-decoder=pcm_u32le"
|
||||
"--enable-decoder=pcm_u8"
|
||||
"--enable-decoder=pcm_f16le"
|
||||
"--enable-decoder=pcm_f32le"
|
||||
"--enable-decoder=pcm_f64le"
|
||||
"--enable-decoder=pcm_s16le"
|
||||
"--enable-decoder=pcm_s24le"
|
||||
"--enable-decoder=pcm_s32le"
|
||||
"--enable-decoder=pcm_s64le"
|
||||
"--enable-decoder=pcm_u16le"
|
||||
"--enable-encoder=pcm_u8"
|
||||
"--enable-encoder=pcm_f32le"
|
||||
"--enable-encoder=pcm_f64le"
|
||||
"--enable-encoder=pcm_s16le"
|
||||
"--enable-encoder=pcm_s32le"
|
||||
"--enable-encoder=pcm_s64le"
|
||||
|
||||
;; Encoders/decoders for images.
|
||||
"--enable-encoder=gif"
|
||||
"--enable-decoder=gif"
|
||||
"--enable-encoder=jpegls"
|
||||
"--enable-decoder=jpegls"
|
||||
"--enable-encoder=ljpeg"
|
||||
"--enable-decoder=jpeg2000"
|
||||
"--enable-encoder=png"
|
||||
"--enable-decoder=png"
|
||||
"--enable-encoder=bmp"
|
||||
"--enable-decoder=bmp"
|
||||
"--enable-encoder=tiff"
|
||||
"--enable-decoder=tiff"
|
||||
;; Encoders/decoders for images.
|
||||
"--enable-encoder=gif"
|
||||
"--enable-decoder=gif"
|
||||
"--enable-encoder=jpegls"
|
||||
"--enable-decoder=jpegls"
|
||||
"--enable-encoder=ljpeg"
|
||||
"--enable-decoder=jpeg2000"
|
||||
"--enable-encoder=png"
|
||||
"--enable-decoder=png"
|
||||
"--enable-encoder=bmp"
|
||||
"--enable-decoder=bmp"
|
||||
"--enable-encoder=tiff"
|
||||
"--enable-decoder=tiff"
|
||||
|
||||
;; Filters.
|
||||
"--enable-filter=scale"
|
||||
"--enable-filter=overlay"
|
||||
"--enable-filter=amix"
|
||||
"--enable-filter=amerge"
|
||||
"--enable-filter=aresample"
|
||||
"--enable-filter=format"
|
||||
"--enable-filter=aformat"
|
||||
"--enable-filter=fps"
|
||||
"--enable-filter=transpose"
|
||||
"--enable-filter=pad"
|
||||
;; Filters.
|
||||
"--enable-filter=scale"
|
||||
"--enable-filter=overlay"
|
||||
"--enable-filter=amix"
|
||||
"--enable-filter=amerge"
|
||||
"--enable-filter=aresample"
|
||||
"--enable-filter=format"
|
||||
"--enable-filter=aformat"
|
||||
"--enable-filter=fps"
|
||||
"--enable-filter=transpose"
|
||||
"--enable-filter=pad"
|
||||
|
||||
;; Decoders for ringtones and audio streaming.
|
||||
"--enable-decoder=pcm_s16be"
|
||||
"--enable-decoder=pcm_s16be_planar"
|
||||
"--enable-decoder=pcm_s16le_planar"
|
||||
"--enable-decoder=pcm_s24be"
|
||||
"--enable-decoder=pcm_s24le_planar"
|
||||
"--enable-decoder=pcm_s32be"
|
||||
"--enable-decoder=pcm_s32le_planar"
|
||||
"--enable-decoder=pcm_s64be"
|
||||
"--enable-decoder=pcm_s8"
|
||||
"--enable-decoder=pcm_s8_planar"
|
||||
"--enable-decoder=pcm_u16be"
|
||||
;; Decoders for ringtones and audio streaming.
|
||||
"--enable-decoder=pcm_s16be"
|
||||
"--enable-decoder=pcm_s16be_planar"
|
||||
"--enable-decoder=pcm_s16le_planar"
|
||||
"--enable-decoder=pcm_s24be"
|
||||
"--enable-decoder=pcm_s24le_planar"
|
||||
"--enable-decoder=pcm_s32be"
|
||||
"--enable-decoder=pcm_s32le_planar"
|
||||
"--enable-decoder=pcm_s64be"
|
||||
"--enable-decoder=pcm_s8"
|
||||
"--enable-decoder=pcm_s8_planar"
|
||||
"--enable-decoder=pcm_u16be"
|
||||
|
||||
;; More filters.
|
||||
"--enable-filter=afir"
|
||||
"--enable-filter=split"
|
||||
"--enable-filter=drawbox"
|
||||
"--enable-filter=drawtext"
|
||||
"--enable-filter=rotate"
|
||||
"--enable-filter=loop"
|
||||
"--enable-filter=setpts"
|
||||
"--enable-filter=movie"
|
||||
"--enable-filter=alphamerge"
|
||||
"--enable-filter=boxblur"
|
||||
"--enable-filter=lut"
|
||||
"--enable-filter=negate"
|
||||
"--enable-filter=colorkey"
|
||||
"--enable-filter=transpose"
|
||||
;; More filters.
|
||||
"--enable-filter=afir"
|
||||
"--enable-filter=split"
|
||||
"--enable-filter=drawbox"
|
||||
"--enable-filter=drawtext"
|
||||
"--enable-filter=rotate"
|
||||
"--enable-filter=loop"
|
||||
"--enable-filter=setpts"
|
||||
"--enable-filter=movie"
|
||||
"--enable-filter=alphamerge"
|
||||
"--enable-filter=boxblur"
|
||||
"--enable-filter=lut"
|
||||
"--enable-filter=negate"
|
||||
"--enable-filter=colorkey"
|
||||
"--enable-filter=transpose"
|
||||
|
||||
"--enable-libfreetype"
|
||||
"--enable-libfreetype"
|
||||
|
||||
#$@(if (string-contains (%current-system) "linux")
|
||||
;; Leave out the '--enable-cuvid' ... '--enable-encoder=hevc_nvenc'
|
||||
;; flags, as there's no support for ffnvcodec in Guix;
|
||||
;; it would not work with Mesa anyway.
|
||||
'("--enable-pic"
|
||||
"--extra-cxxflags=-fPIC"
|
||||
"--extra-cflags=-fPIC"
|
||||
"--target-os=linux"
|
||||
"--enable-indev=v4l2"
|
||||
"--enable-indev=xcbgrab"
|
||||
"--enable-vdpau"
|
||||
"--enable-hwaccel=h264_vdpau"
|
||||
"--enable-hwaccel=mpeg4_vdpau"
|
||||
"--enable-vaapi"
|
||||
"--enable-hwaccel=h264_vaapi"
|
||||
"--enable-hwaccel=mpeg4_vaapi"
|
||||
"--enable-hwaccel=h263_vaapi"
|
||||
"--enable-hwaccel=vp8_vaapi"
|
||||
"--enable-hwaccel=mjpeg_vaapi"
|
||||
"--enable-hwaccel=hevc_vaapi"
|
||||
"--enable-encoder=h264_vaapi"
|
||||
"--enable-encoder=vp8_vaapi"
|
||||
"--enable-encoder=mjpeg_vaapi"
|
||||
"--enable-encoder=hevc_vaapi")
|
||||
'())))))
|
||||
(inputs (modify-inputs (package-inputs ffmpeg)
|
||||
(append pipewire)))))
|
||||
#$@(if (string-contains (%current-system) "linux")
|
||||
;; Leave out the '--enable-cuvid' ... '--enable-encoder=hevc_nvenc'
|
||||
;; flags, as there's no support for ffnvcodec in Guix;
|
||||
;; it would not work with Mesa anyway.
|
||||
'("--enable-pic"
|
||||
"--extra-cxxflags=-fPIC"
|
||||
"--extra-cflags=-fPIC"
|
||||
"--target-os=linux"
|
||||
"--enable-indev=v4l2"
|
||||
"--enable-indev=xcbgrab"
|
||||
"--enable-vdpau"
|
||||
"--enable-hwaccel=h264_vdpau"
|
||||
"--enable-hwaccel=mpeg4_vdpau"
|
||||
"--enable-vaapi"
|
||||
"--enable-hwaccel=h264_vaapi"
|
||||
"--enable-hwaccel=mpeg4_vaapi"
|
||||
"--enable-hwaccel=h263_vaapi"
|
||||
"--enable-hwaccel=vp8_vaapi"
|
||||
"--enable-hwaccel=mjpeg_vaapi"
|
||||
"--enable-hwaccel=hevc_vaapi"
|
||||
"--enable-encoder=h264_vaapi"
|
||||
"--enable-encoder=vp8_vaapi"
|
||||
"--enable-encoder=mjpeg_vaapi"
|
||||
"--enable-encoder=hevc_vaapi")
|
||||
'())))))
|
||||
(inputs (modify-inputs (package-inputs ffmpeg)
|
||||
(append pipewire))))))
|
||||
|
||||
(define-public ffmpegthumbnailer
|
||||
(package
|
||||
|
@ -3774,7 +3789,7 @@ capabilities.")
|
|||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
python-cython
|
||||
python-cython-0
|
||||
libtool
|
||||
pkg-config
|
||||
yasm))
|
||||
|
|
|
@ -1515,7 +1515,8 @@ using simplestreams index files as the publishing mechanism
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1dn6pzv0gzkxrjvi60cdzdmyxqlcsvinbrbds91xm4v7wbn5g1dd"))))
|
||||
"1dn6pzv0gzkxrjvi60cdzdmyxqlcsvinbrbds91xm4v7wbn5g1dd"))
|
||||
(patches (search-patches "libosinfo-libxml2-fix.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -1774,7 +1775,7 @@ to integrate other virtualization mechanisms if needed.")
|
|||
`(,glib "bin") vala))
|
||||
(propagated-inputs
|
||||
;; ‘Required:’ by the installed .pc files.
|
||||
(list glib libvirt libxml2-next gobject-introspection))
|
||||
(list glib libvirt libxml2 gobject-introspection))
|
||||
(home-page "https://libvirt.org")
|
||||
(synopsis "GLib wrapper around libvirt")
|
||||
(description "libvirt-glib wraps the libvirt library to provide a
|
||||
|
@ -1900,8 +1901,8 @@ virtualization library.")
|
|||
libosinfo
|
||||
libvirt
|
||||
libvirt-glib
|
||||
libxml2
|
||||
python-minimal
|
||||
python-libxml2
|
||||
python-libvirt
|
||||
python-pycairo
|
||||
python-pygobject
|
||||
|
|
|
@ -771,7 +771,7 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer
|
|||
"etc/vpnc/vpnc-script")))))
|
||||
(native-inputs (list gettext-minimal pkg-config))
|
||||
(inputs (list lz4 vpnc-scripts))
|
||||
(propagated-inputs (list libxml2-next gnutls zlib))
|
||||
(propagated-inputs (list libxml2 gnutls zlib))
|
||||
(synopsis "Client for Cisco VPN")
|
||||
(description
|
||||
"OpenConnect is a client for Cisco's AnyConnect SSL VPN, which is
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2024 James Smith <jsubuntuxp@disroot.org>
|
||||
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
|
||||
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -44,6 +46,7 @@
|
|||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages libffi)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
|
@ -53,7 +56,7 @@
|
|||
(define-public spirv-headers
|
||||
(package
|
||||
(name "spirv-headers")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -62,7 +65,7 @@
|
|||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"15l35w60sbw1i3a48057hvpvldf0lrlfmkz73bp456g2jn5vln23"))
|
||||
"11nsfr6z11dx6ccyi9anz2iycxr9i06zl8dk4pdllf3dvk5wq61d"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
|
@ -85,7 +88,7 @@ and for the GLSL.std.450 extended instruction set.
|
|||
(define-public spirv-tools
|
||||
(package
|
||||
(name "spirv-tools")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -93,19 +96,21 @@ and for the GLSL.std.450 extended instruction set.
|
|||
(url "https://github.com/KhronosGroup/SPIRV-Tools")
|
||||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(sha256
|
||||
(base32 "1ykrsd3fl8sx9sq8pc551swacqnl0xwv3p0l1ppdpw2h2mvz8syr"))
|
||||
(base32 "015xymrzch87f3xkzx9rvlglqp39zx4vphjb2dkl5w6qcpz5s1y8"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DBUILD_SHARED_LIBS=ON"
|
||||
;; Some packages like mpv fail to link
|
||||
;; when the static libraries are built.
|
||||
"-DSPIRV_TOOLS_BUILD_STATIC=OFF"
|
||||
(string-append
|
||||
"-DSPIRV-Headers_SOURCE_DIR="
|
||||
(assoc-ref %build-inputs "spirv-headers")))))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON"
|
||||
;; Some packages like mpv fail to link
|
||||
;; when the static libraries are built.
|
||||
"-DSPIRV_TOOLS_BUILD_STATIC=OFF"
|
||||
(string-append
|
||||
"-DSPIRV-Headers_SOURCE_DIR="
|
||||
(assoc-ref %build-inputs "spirv-headers")))))
|
||||
(inputs (list spirv-headers))
|
||||
(native-inputs (list pkg-config python))
|
||||
(native-inputs (list pkg-config python-minimal))
|
||||
(home-page "https://github.com/KhronosGroup/SPIRV-Tools")
|
||||
(synopsis "API and commands for processing SPIR-V modules")
|
||||
(description
|
||||
|
@ -117,7 +122,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
|
|||
(define-public spirv-cross
|
||||
(package
|
||||
(name "spirv-cross")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -125,34 +130,35 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
|
|||
(url "https://github.com/KhronosGroup/SPIRV-Cross")
|
||||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(sha256
|
||||
(base32 "1sckwqz67mh48zypgr1r9x101mcq1dlkh8sxi341ynrxzjk8rm3j"))
|
||||
(base32 "13fci6z74bxm8pbb3plchx31r04yzb4g11dbzcw3337dsgdllqma"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(;; Disable tests for now due to upstream issue hit when running
|
||||
;; update-reference-shaders phase:
|
||||
;; <https://github.com/KhronosGroup/SPIRV-Tools/issues/5980>.
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
(list "-DSPIRV_CROSS_SHARED=YES")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-tests-to-find-deps
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\$\\{CMAKE_(.*)_DIR\\}/external/glslang(.*)/bin")
|
||||
(string-append (assoc-ref inputs "glslang") "/bin")))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\$\\{CMAKE_(.*)_DIR\\}/external/spirv-tools(.*)/bin")
|
||||
(string-append (assoc-ref inputs "spirv-tools") "/bin")))))
|
||||
(add-before 'check 'update-reference-shaders
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "../source"
|
||||
(invoke "./update_test_shaders.sh"))))))))
|
||||
(list
|
||||
;; Disable tests for now due to upstream issue hit when running
|
||||
;; update-reference-shaders phase:
|
||||
;; <https://github.com/KhronosGroup/SPIRV-Tools/issues/5980>.
|
||||
#:tests? #f
|
||||
#:configure-flags
|
||||
#~(list "-DSPIRV_CROSS_SHARED=YES")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-tests-to-find-deps
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\$\\{CMAKE_(.*)_DIR\\}/external/glslang(.*)/bin")
|
||||
(string-append (assoc-ref inputs "glslang") "/bin")))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\$\\{CMAKE_(.*)_DIR\\}/external/spirv-tools(.*)/bin")
|
||||
(string-append (assoc-ref inputs "spirv-tools") "/bin")))))
|
||||
(add-before 'check 'update-reference-shaders
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(with-directory-excursion "../source"
|
||||
(invoke "./update_test_shaders.sh"))))))))
|
||||
(inputs
|
||||
(list glslang spirv-headers spirv-tools))
|
||||
(native-inputs (list python))
|
||||
(native-inputs (list python-minimal))
|
||||
(home-page "https://github.com/KhronosGroup/SPIRV-Cross")
|
||||
(synopsis "Parser for and converter of SPIR-V to other shader languages")
|
||||
(description
|
||||
|
@ -164,7 +170,7 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
|
|||
(define-public spirv-llvm-translator
|
||||
(package
|
||||
(name "spirv-llvm-translator")
|
||||
(version "18.1.0")
|
||||
(version "18.1.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -173,7 +179,7 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0yfz02mlnf4ffn67g2ms0w8f7jgdsn438w2dbxd5mvcf5dk2x27b"))))
|
||||
(base32 "11gmb1kw6j90hwcf6wxjz4pki653lyd8v8kphk7jq67gvw8dkiwy"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
;; The test suite is known to fail on several architectures:
|
||||
|
@ -201,7 +207,14 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
|
|||
(apply (assoc-ref gnu:%standard-phases 'check)
|
||||
#:test-target "test" args))))))
|
||||
(inputs (list llvm-18))
|
||||
(native-inputs (list clang-18 llvm-18 python-lit spirv-headers))
|
||||
(native-inputs
|
||||
(list
|
||||
clang-18
|
||||
libffi
|
||||
llvm-18
|
||||
pkg-config
|
||||
python-lit
|
||||
spirv-headers))
|
||||
(home-page "https://github.com/KhronosGroup/SPIRV-LLVM-Translator")
|
||||
(synopsis "Bi-directional translation between SPIR-V and LLVM IR")
|
||||
(description
|
||||
|
@ -212,7 +225,7 @@ translation between LLVM IR and SPIR-V.")
|
|||
(define-public glslang
|
||||
(package
|
||||
(name "glslang")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -221,36 +234,39 @@ translation between LLVM IR and SPIR-V.")
|
|||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"0kzzjh2dxzkznp75jk9sl4fjjgdy5s6xr8vha9av6cvi3jxm2i8y"))
|
||||
"1b0zsrv12b34q0wp9g85x11kpd5kjvx4lbn7xv8b4szfpwdkxxxh"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"
|
||||
"-DALLOW_EXTERNAL_SPIRV_TOOLS=ON"
|
||||
,@(if (target-riscv64?)
|
||||
`("-DCMAKE_EXE_LINKER_FLAGS=-latomic")
|
||||
'()))
|
||||
#:phases (modify-phases %standard-phases
|
||||
,@(if (target-ppc32?)
|
||||
`((add-after 'unpack 'skip-failing-test
|
||||
(lambda _
|
||||
;; TODO: Figure out why this test fails.
|
||||
(substitute* "Test/runtests"
|
||||
((".*remap\\.invalid" all)
|
||||
(string-append "# " all))))))
|
||||
'())
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "ctest"
|
||||
"-j" (if parallel-tests?
|
||||
(number->string (parallel-job-count))
|
||||
"1")
|
||||
"--rerun-failed"
|
||||
"--output-on-failure")))))))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_SHARED_LIBS=ON"
|
||||
"-DALLOW_EXTERNAL_SPIRV_TOOLS=ON"
|
||||
#$@(if (target-riscv64?)
|
||||
`("-DCMAKE_EXE_LINKER_FLAGS=-latomic")
|
||||
'()))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
#$@(if (target-ppc32?)
|
||||
`((add-after 'unpack 'skip-failing-test
|
||||
(lambda _
|
||||
;; TODO: Figure out why this test fails.
|
||||
(substitute* "Test/runtests"
|
||||
((".*remap\\.invalid" all)
|
||||
(string-append "# " all))))))
|
||||
'())
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "ctest"
|
||||
"-j" (if parallel-tests?
|
||||
(number->string (parallel-job-count))
|
||||
"1")
|
||||
"--rerun-failed"
|
||||
"--output-on-failure")))))))
|
||||
(inputs (list spirv-tools))
|
||||
(native-inputs
|
||||
(list pkg-config python))
|
||||
(list pkg-config python-minimal))
|
||||
(home-page "https://github.com/KhronosGroup/glslang")
|
||||
(synopsis "OpenGL and OpenGL ES shader front end and validator")
|
||||
(description
|
||||
|
@ -317,7 +333,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
|
|||
(define-public vulkan-headers/no-loader
|
||||
(package
|
||||
(name "vulkan-headers")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -327,7 +343,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ncj4gqb5zmkgmd205frrq8rxxdqlissqpj2fq3wxkdbdyx7pwid"))))
|
||||
"1kamn5hw5lpw4yxyri4mlrryzhn33bnnrqby0yxla45z5f5f6fb3"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; No tests.
|
||||
|
@ -361,7 +377,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
|
|||
(define-public vulkan-loader
|
||||
(package
|
||||
(name "vulkan-loader")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -371,7 +387,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1y6wqc8adzg7ndmbr95nzhcxf93qsfndfdnsym5pkbjfx454151d"))))
|
||||
"0fbpypznznvwkqgf2zw85xdpbiq92j95xyldhnjk94lia6bs4klb"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
@ -387,31 +403,33 @@ Enhanced Subpixel Morphological Anti-Aliasing
|
|||
%build-inputs "include/vulkan"))))
|
||||
#$@(if (%current-target-system)
|
||||
#~("-DBUILD_TESTS=OFF" "-DUSE_GAS=OFF"
|
||||
(string-append "-DPKG_CONFIG_EXECUTABLE="
|
||||
(search-input-file
|
||||
%build-inputs
|
||||
(string-append "bin/" #$(pkg-config-for-target)))))
|
||||
(string-append
|
||||
"-DPKG_CONFIG_EXECUTABLE="
|
||||
(search-input-file
|
||||
%build-inputs
|
||||
(string-append "bin/" #$(pkg-config-for-target)))))
|
||||
#~("-DBUILD_TESTS=ON")))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-pkg-config-file
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((vulkan-headers (dirname (search-input-directory
|
||||
inputs "include/vulkan"))))
|
||||
;; Ensure the pkg-config file refers to vulkan-headers.
|
||||
(substitute* "loader/vulkan.pc.in"
|
||||
(("^includedir=.*")
|
||||
(string-append "includedir=" vulkan-headers "\n"))))))
|
||||
(add-after 'unpack 'use-system-googletest
|
||||
(lambda _
|
||||
(substitute* "tests/CMakeLists.txt"
|
||||
(((string-append "message\\(FATAL_ERROR \"Could not "
|
||||
"find googletest directory. See BUILD.md\"\\)"))
|
||||
"find_package(GTest REQUIRED)"))
|
||||
;; Use the namespaced variable.
|
||||
(substitute* "tests/framework/CMakeLists.txt"
|
||||
(("PUBLIC gtest ")
|
||||
"PUBLIC GTest::gtest ")))))))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-pkg-config-file
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((vulkan-headers (dirname (search-input-directory
|
||||
inputs "include/vulkan"))))
|
||||
;; Ensure the pkg-config file refers to vulkan-headers.
|
||||
(substitute* "loader/vulkan.pc.in"
|
||||
(("^includedir=.*")
|
||||
(string-append "includedir=" vulkan-headers "\n"))))))
|
||||
(add-after 'unpack 'use-system-googletest
|
||||
(lambda _
|
||||
(substitute* "tests/CMakeLists.txt"
|
||||
(((string-append
|
||||
"message\\(FATAL_ERROR \"Could not "
|
||||
"find googletest directory. See BUILD.md\"\\)"))
|
||||
"find_package(GTest REQUIRED)"))
|
||||
;; Use the namespaced variable.
|
||||
(substitute* "tests/framework/CMakeLists.txt"
|
||||
(("PUBLIC gtest ")
|
||||
"PUBLIC GTest::gtest ")))))))
|
||||
(native-inputs
|
||||
(list googletest
|
||||
libxrandr
|
||||
|
@ -440,50 +458,56 @@ and the ICD.")
|
|||
license:bsd-3))))
|
||||
|
||||
(define-public vulkan-tools
|
||||
(package
|
||||
(name "vulkan-tools")
|
||||
(version "1.4.309.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/KhronosGroup/Vulkan-Tools")
|
||||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet #~(substitute* "tests/icd/mock_icd_tests.cpp"
|
||||
;; Disable driver info test since it relies on git branch info
|
||||
(("ASSERT_EQ\\(std::string\\(driver_properties\\.driverInfo\\)")
|
||||
"// ASSERT_EQ(std::string(driver_properties.driverInfo)")))
|
||||
(sha256
|
||||
(base32
|
||||
"0ywvvkra29y2cvw8i9laf4skn6cl7phrwshcc7z9dljb3il87cym"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list glslang libxrandr vulkan-loader wayland wayland-protocols))
|
||||
(native-inputs
|
||||
(list googletest pkg-config python vulkan-volk vulkan-headers))
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DBUILD_TESTS=ON")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "./tests/vulkan_tools_tests")))))))
|
||||
(home-page
|
||||
"https://github.com/KhronosGroup/Vulkan-Tools")
|
||||
(synopsis "Tools and utilities for Vulkan")
|
||||
(description
|
||||
"Vulkan-Tools provides tools and utilities that can assist development by
|
||||
;; Required to fix an issue. See:
|
||||
;; https://github.com/KhronosGroup/Vulkan-Tools/issues/1130
|
||||
(let ((commit "105d6c1fede00c3a9055e5a531ebf3d99bac406e")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "vulkan-tools")
|
||||
(version (git-version "1.4.321.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/KhronosGroup/Vulkan-Tools")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(substitute* "tests/icd/mock_icd_tests.cpp"
|
||||
;; Disable driver info test since it relies on git branch info
|
||||
(("ASSERT_EQ\\(std::string\\(driver_properties\\.driverInfo\\)")
|
||||
"// ASSERT_EQ(std::string(driver_properties.driverInfo)")))
|
||||
(sha256
|
||||
(base32
|
||||
"1dphpf4v0kip2b0vhhwb136gjjmgxc64gg26sg3wpg6nnwakpznc"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list glslang libxrandr vulkan-loader wayland wayland-protocols))
|
||||
(native-inputs
|
||||
(list googletest pkg-config python vulkan-volk vulkan-headers))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags #~(list "-DBUILD_TESTS=ON")
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "./tests/vulkan_tools_tests")))))))
|
||||
(home-page
|
||||
"https://github.com/KhronosGroup/Vulkan-Tools")
|
||||
(synopsis "Tools and utilities for Vulkan")
|
||||
(description
|
||||
"Vulkan-Tools provides tools and utilities that can assist development by
|
||||
enabling developers to verify their applications correct use of the Vulkan
|
||||
API.")
|
||||
(license (list license:asl2.0)))) ;LICENSE.txt
|
||||
(license (list license:asl2.0))))) ;LICENSE.txt
|
||||
|
||||
(define-public shaderc
|
||||
(package
|
||||
(name "shaderc")
|
||||
;; shaderc doesn't follow the versioning scheme of vulkan sdk
|
||||
(version "2025.1")
|
||||
(version "2025.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -493,44 +517,44 @@ API.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hbsvyyy5fzgal83z8kx4a3x9d2fnd2fcs53l3s9n0pyybip3i5j"))))
|
||||
"0w1mj5b3n6kp0brqindb7fppvllzlywkdk1zglkbj3bw8k0795mb"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(;; FIXME: Skip most of the tests, because enabling system gtest breaks
|
||||
;; the build: <https://github.com/google/shaderc/issues/470>.
|
||||
#:configure-flags
|
||||
(list "-DSHADERC_SKIP_TESTS=ON"
|
||||
;; The two flags are copied from:
|
||||
;; https://sdk.lunarg.com/sdk/download/1.3.280.0/linux/config.json
|
||||
"-DSHADERC_ENABLE_SHARED_CRT=ON"
|
||||
"-DSHADERC_SKIP_COPYRIGHT_CHECK=ON"
|
||||
"-DPYTHON_EXECUTABLE=python3"
|
||||
;; Note: despite the name, this just specifies the headers.
|
||||
(string-append "-Dglslang_SOURCE_DIR="
|
||||
(assoc-ref %build-inputs "glslang") "/include/glslang"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-look-for-bundled-sources
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\(third_party\\)")
|
||||
""))
|
||||
|
||||
(substitute* "glslc/test/CMakeLists.txt"
|
||||
(("\\$<TARGET_FILE:spirv-dis>")
|
||||
(which "spirv-dis")))
|
||||
|
||||
;; Do not attempt to use git to encode version information.
|
||||
(substitute* "glslc/CMakeLists.txt"
|
||||
(("add_dependencies\\(glslc_exe build-version\\)")
|
||||
""))
|
||||
(call-with-output-file "glslc/src/build-version.inc"
|
||||
(lambda (port)
|
||||
(format port "\"~a\"\n\"~a\"\n\"~a\"~%"
|
||||
,version
|
||||
,(package-version spirv-tools)
|
||||
,(package-version glslang))))
|
||||
#t)))))
|
||||
(list
|
||||
#:tests? #f ; We don't build the tests, see below.
|
||||
;; FIXME: Skip most of the tests, because enabling system gtest breaks
|
||||
;; the build: <https://github.com/google/shaderc/issues/470>.
|
||||
#:configure-flags
|
||||
#~(list "-DSHADERC_SKIP_TESTS=ON"
|
||||
;; The two flags are copied from:
|
||||
;; https://sdk.lunarg.com/sdk/download/1.3.280.0/linux/config.json
|
||||
"-DSHADERC_ENABLE_SHARED_CRT=ON"
|
||||
"-DSHADERC_SKIP_COPYRIGHT_CHECK=ON"
|
||||
"-DPYTHON_EXECUTABLE=python3"
|
||||
;; Note: despite the name, this just specifies the headers.
|
||||
(string-append "-Dglslang_SOURCE_DIR="
|
||||
#$(this-package-input "glslang")
|
||||
"/include/glslang"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-look-for-bundled-sources
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("add_subdirectory\\(third_party\\)")
|
||||
""))
|
||||
(substitute* "glslc/test/CMakeLists.txt"
|
||||
(("\\$<TARGET_FILE:spirv-dis>")
|
||||
(which "spirv-dis")))
|
||||
;; Do not attempt to use git to encode version information.
|
||||
(substitute* "glslc/CMakeLists.txt"
|
||||
(("add_dependencies\\(glslc_exe build-version\\)")
|
||||
""))
|
||||
(call-with-output-file "glslc/src/build-version.inc"
|
||||
(lambda (port)
|
||||
(format port "\"~a\"\n\"~a\"\n\"~a\"~%"
|
||||
#$version
|
||||
#$(package-version spirv-tools)
|
||||
#$(package-version glslang)))))))))
|
||||
(inputs
|
||||
(list glslang spirv-headers spirv-tools))
|
||||
(native-inputs
|
||||
|
@ -544,56 +568,57 @@ shader compilation.")
|
|||
(define-public vkd3d
|
||||
(let ((commit "56cd4a94d541707959ce7677af6d1a34739e5579")) ; Release 1.2.
|
||||
(package
|
||||
(name "vkd3d")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://source.winehq.org/git/vkd3d.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1n4a622drgnprvz5hjxzyzcsg2lp5rlf1sajki2vzf5gsx6fdpk8"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--with-spirv-tools")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-for-new-vulkan
|
||||
(lambda _
|
||||
;; Mimic upstream commit 8e7bf8a5c3e0047 for
|
||||
;; compatibility with newer vulkan-headers.
|
||||
(substitute* "libs/vkd3d/vkd3d_private.h"
|
||||
(("VK_PIPELINE_BIND_POINT_RANGE_SIZE")
|
||||
"2u"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("gettext" ,gettext-minimal)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
(list libx11
|
||||
libxcb
|
||||
spirv-headers
|
||||
spirv-tools
|
||||
vulkan-headers
|
||||
vulkan-loader
|
||||
wine-minimal ; Needed for 'widl'.
|
||||
xcb-util
|
||||
xcb-util-keysyms
|
||||
xcb-util-wm))
|
||||
(home-page "https://source.winehq.org/git/vkd3d.git/")
|
||||
(synopsis "Direct3D 12 to Vulkan translation library")
|
||||
(description "vkd3d is a library for translating Direct3D 12 to Vulkan.")
|
||||
(license license:lgpl2.1))))
|
||||
(name "vkd3d")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://source.winehq.org/git/vkd3d.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1n4a622drgnprvz5hjxzyzcsg2lp5rlf1sajki2vzf5gsx6fdpk8"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags #~(list "--with-spirv-tools")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-for-new-vulkan
|
||||
(lambda _
|
||||
;; Mimic upstream commit 8e7bf8a5c3e0047 for
|
||||
;; compatibility with newer vulkan-headers.
|
||||
(substitute* "libs/vkd3d/vkd3d_private.h"
|
||||
(("VK_PIPELINE_BIND_POINT_RANGE_SIZE")
|
||||
"2u")))))))
|
||||
(native-inputs
|
||||
(list autoconf
|
||||
automake
|
||||
gettext-minimal
|
||||
libtool
|
||||
pkg-config))
|
||||
(inputs
|
||||
(list libx11
|
||||
libxcb
|
||||
spirv-headers
|
||||
spirv-tools
|
||||
vulkan-headers
|
||||
vulkan-loader
|
||||
wine-minimal ; Needed for 'widl'.
|
||||
xcb-util
|
||||
xcb-util-keysyms
|
||||
xcb-util-wm))
|
||||
(home-page "https://source.winehq.org/git/vkd3d.git/")
|
||||
(synopsis "Direct3D 12 to Vulkan translation library")
|
||||
(description "vkd3d is a library for translating Direct3D 12 to Vulkan.")
|
||||
(license license:lgpl2.1))))
|
||||
|
||||
(define-public vulkan-validationlayers
|
||||
(package
|
||||
(name "vulkan-validationlayers")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -608,7 +633,7 @@ shader compilation.")
|
|||
"")))
|
||||
(sha256
|
||||
(base32
|
||||
"1dvgbgfxcp3ypy06j5m561j1gag0hk40zqd477cdv1kizv6i7nsk"))))
|
||||
"1lmkcgz80386304s6kr4fi825r5004305fhvfc7gmsqdih0bqcv9"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs (list glslang
|
||||
libxrandr
|
||||
|
@ -619,39 +644,43 @@ shader compilation.")
|
|||
vulkan-loader
|
||||
vulkan-utility-libraries
|
||||
wayland))
|
||||
(native-inputs (list googletest pkg-config python spirv-headers vulkan-headers))
|
||||
(native-inputs
|
||||
(list googletest pkg-config python spirv-headers vulkan-headers))
|
||||
(arguments
|
||||
(list #:tests? #f ; tests crash on some hardware (various upstream issues)
|
||||
#:configure-flags
|
||||
#~(list "-DBUILD_TESTS=ON")
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
(add-after 'install 'set-layer-path-in-manifest
|
||||
(lambda _
|
||||
(let ((manifest (string-append #$output
|
||||
"/share/vulkan/explicit_layer.d"
|
||||
"/VkLayer_khronos_validation.json")))
|
||||
(substitute* manifest
|
||||
(("\"libVkLayer_khronos_validation.so\"")
|
||||
(string-append "\"" #$output
|
||||
"/lib/libVkLayer_khronos_validation.so\""))))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "VK_LAYER_PATH"
|
||||
(string-append (getcwd) "/layers"))
|
||||
(setenv "LD_LIBRARY_PATH"
|
||||
(string-append #$(this-package-input
|
||||
"vulkan-loader") "/lib"))
|
||||
(setenv "MESA_SHADER_CACHE_DIR"
|
||||
(string-append (getcwd) "/shader-cache"))
|
||||
(setenv "XDG_RUNTIME_DIR" (getcwd))
|
||||
(invoke "./tests/vk_layer_validation_tests")))))))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'set-layer-path-in-manifest
|
||||
(lambda _
|
||||
(let ((manifest
|
||||
(string-append #$output
|
||||
"/share/vulkan/explicit_layer.d"
|
||||
"/VkLayer_khronos_validation.json")))
|
||||
(substitute* manifest
|
||||
(("\"libVkLayer_khronos_validation.so\"")
|
||||
(string-append
|
||||
"\"" #$output
|
||||
"/lib/libVkLayer_khronos_validation.so\""))))))
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(setenv "VK_LAYER_PATH"
|
||||
(string-append (getcwd) "/layers"))
|
||||
(setenv "LD_LIBRARY_PATH"
|
||||
(string-append #$(this-package-input
|
||||
"vulkan-loader") "/lib"))
|
||||
(setenv "MESA_SHADER_CACHE_DIR"
|
||||
(string-append (getcwd) "/shader-cache"))
|
||||
(setenv "XDG_RUNTIME_DIR" (getcwd))
|
||||
(invoke "./tests/vk_layer_validation_tests")))))))
|
||||
(home-page "https://github.com/KhronosGroup/Vulkan-ValidationLayers")
|
||||
(synopsis "Khronos official validation layers for Vulkan")
|
||||
(description
|
||||
"Vulkan-ValidationLayers provides the Khronos official validation layers that
|
||||
can assist development by enabling developers to verify their applications correctly
|
||||
use the Vulkan API.")
|
||||
"Vulkan-ValidationLayers provides the Khronos official validation layers
|
||||
that can assist development by enabling developers to verify their
|
||||
applications correctly use the Vulkan API.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public vulkan-volk
|
||||
|
@ -696,7 +725,7 @@ skipping loader dispatch overhead.")
|
|||
(define-public vulkan-memory-allocator
|
||||
(package
|
||||
(name "vulkan-memory-allocator")
|
||||
(version "3.2.1")
|
||||
(version "3.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -707,11 +736,9 @@ skipping loader dispatch overhead.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y8ccx080bqrgv71ggixxpl57vc5znq55rnvl4v4srfkjxhz6yiy"))))
|
||||
"1qadyd9nir9ip176fsxvl91w60mnyvk07d5ihjlpqvl7rdbjmwac"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
;; no test
|
||||
`(#:tests? #f))
|
||||
(arguments (list #:tests? #f)) ;no tests
|
||||
(inputs (list vulkan-loader vulkan-headers))
|
||||
(synopsis "Vulkan memory allocation library")
|
||||
(description
|
||||
|
@ -725,7 +752,7 @@ storage.")
|
|||
(define-public vulkan-utility-libraries
|
||||
(package
|
||||
(name "vulkan-utility-libraries")
|
||||
(version "1.4.309.0")
|
||||
(version "1.4.321.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -733,7 +760,7 @@ storage.")
|
|||
(url "https://github.com/KhronosGroup/Vulkan-Utility-Libraries")
|
||||
(commit (string-append "vulkan-sdk-" version))))
|
||||
(sha256
|
||||
(base32 "1ihk95gjszk9yn3r6xvda83qp7f463m86srj6cq43z01sk2naxkr"))
|
||||
(base32 "1xj860z596p2wgdfc5yr15q0hasz8p4ci6x0j1wim7jklp92g89i"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2021 Michael Rohleder <mike@rohleder.de>
|
||||
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -46,17 +47,14 @@
|
|||
|
||||
(define-public wget
|
||||
(package
|
||||
(replacement wget/fixed)
|
||||
(name "wget")
|
||||
(version "1.21.4")
|
||||
(version "1.25.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/wget/wget-"
|
||||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nabhxx3rg28h2scba2mlawzjyx3dw07j2kjn76cpvahbyd630rn"))))
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/wget/wget-" version ".tar.lz"))
|
||||
(sha256
|
||||
(base32 "07waw3s51zmjqzqq717xyyd353qc1ajcd38lh7y8i85hav3mq8hr"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
(list gnutls libidn2 libpsl))
|
||||
|
@ -76,17 +74,6 @@ wild cards, supports proxies and cookies, and it can convert absolute links
|
|||
in downloaded documents to relative links.")
|
||||
(license license:gpl3+))) ; some files are under GPLv2+
|
||||
|
||||
(define-public wget/fixed
|
||||
(package
|
||||
(inherit wget)
|
||||
(version "1.25.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/wget/wget-" version ".tar.lz"))
|
||||
(sha256
|
||||
(base32 "07waw3s51zmjqzqq717xyyd353qc1ajcd38lh7y8i85hav3mq8hr"))))))
|
||||
|
||||
(define-public wgetpaste
|
||||
(package
|
||||
(name "wgetpaste")
|
||||
|
|
|
@ -428,7 +428,7 @@ loginctl commands (lock/unlock/before-sleep) and inhibit.")
|
|||
hyprland-qtutils
|
||||
hyprlang
|
||||
hyprutils
|
||||
libinput-minimal-next
|
||||
libinput-minimal
|
||||
libxcursor
|
||||
libxkbcommon
|
||||
mesa
|
||||
|
|
|
@ -302,6 +302,8 @@ and many other languages.")
|
|||
(outputs '("out" "debug"))
|
||||
(arguments
|
||||
(list
|
||||
#:test-backend #~'custom
|
||||
#:test-flags #~(list "build.py" "-v" "test")
|
||||
#:modules '((guix build pyproject-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 ftw)
|
||||
|
@ -355,7 +357,7 @@ except ImportError:
|
|||
(inputs
|
||||
(list gtk+ wxwidgets))
|
||||
(native-inputs
|
||||
(list pkg-config python-setuptools python-waf python-wheel))
|
||||
(list pkg-config python-setuptools python-waf))
|
||||
(propagated-inputs
|
||||
(list python-numpy python-pillow python-six))
|
||||
(home-page "https://wxpython.org/")
|
||||
|
|
|
@ -53,7 +53,7 @@
|
|||
;;; Copyright © 2021 ikasero <ahmed@ikasero.com>
|
||||
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
|
||||
;;; Copyright © 2021, 2025 jgart <jgart@dismail.de>
|
||||
;;; Copyright © 2022, 2024 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2022, 2024, 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
|
||||
;;; Copyright © 2022 Derek Chuank <derekchuank@outlook.com>
|
||||
;;; Copyright © 2022, 2023 Wamm K. D. <jaft.r@outlook.com>
|
||||
|
@ -633,14 +633,16 @@ avoiding password prompts when X11 forwarding has already been setup.")
|
|||
(define-public libxkbcommon
|
||||
(package
|
||||
(name "libxkbcommon")
|
||||
(version "1.6.0")
|
||||
(version "1.11.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://xkbcommon.org/download/libxkbcommon-"
|
||||
version ".tar.xz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xkbcommon/libxkbcommon")
|
||||
(commit (string-append "xkbcommon-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0awwz5pg9x5bj0d7dpg4a7bd4gl6k55mlpxwb12534fkrpn19p0f"))))
|
||||
"1swa6rf63c0wi0qq5r661g63yk2iwa9l66148078xkrwcf05sp91"))))
|
||||
(outputs '("out" "doc"))
|
||||
(build-system meson-build-system)
|
||||
(inputs
|
||||
|
@ -652,12 +654,19 @@ avoiding password prompts when X11 forwarding has already been setup.")
|
|||
xkeyboard-config))
|
||||
(native-inputs
|
||||
(append
|
||||
(list bison doxygen pkg-config python
|
||||
;; wayland-scanner is required at build time.
|
||||
wayland)
|
||||
(if (%current-target-system)
|
||||
(list pkg-config-for-build)
|
||||
'())))
|
||||
(list bison
|
||||
doxygen
|
||||
pkg-config
|
||||
python
|
||||
;; wayland-scanner is required at build time.
|
||||
wayland
|
||||
;; Xvfb for tests.
|
||||
xorg-server-for-tests
|
||||
;; xkbcomp for tests.
|
||||
xkbcomp)
|
||||
(if (%current-target-system)
|
||||
(list pkg-config-for-build)
|
||||
'())))
|
||||
(arguments
|
||||
(list
|
||||
#:configure-flags
|
||||
|
@ -666,7 +675,8 @@ avoiding password prompts when X11 forwarding has already been setup.")
|
|||
%build-inputs "share/X11/xkb"))
|
||||
(string-append "-Dx-locale-root="
|
||||
(search-input-directory
|
||||
%build-inputs "share/X11/locale")))
|
||||
%build-inputs "share/X11/locale"))
|
||||
"-Denable-docs=true")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'move-doc
|
||||
|
@ -695,41 +705,6 @@ X11 (yet).")
|
|||
"See 'COPYING' in the distribution."))
|
||||
(properties '((cpe-name . "xkbcommon")))))
|
||||
|
||||
(define-public libxkbcommon-1.5
|
||||
(package
|
||||
(inherit libxkbcommon)
|
||||
(version "1.5.0")
|
||||
(source (origin
|
||||
(inherit (package-source libxkbcommon))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://xkbcommon.org/download/libxkbcommon-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"05z08rpa464x8myjxddhix7jp9jcmakd7xrybx4hz8dwpg2123sn"))))))
|
||||
|
||||
(define-public libxkbcommon-1.8
|
||||
(package
|
||||
(inherit libxkbcommon)
|
||||
(version "1.8.1")
|
||||
(source (origin
|
||||
(inherit (package-source libxkbcommon))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xkbcommon/libxkbcommon")
|
||||
(commit (string-append "xkbcommon-" version))))
|
||||
(file-name (git-file-name (package-name libxkbcommon) version))
|
||||
(sha256
|
||||
(base32
|
||||
"0fz6mf99lyp7x6g6v33210hhpykbg32fjmckyvxfpd805cza0xrj"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments libxkbcommon)
|
||||
((#:configure-flags flags #~(list))
|
||||
#~(cons "-Denable-docs=true" #$flags))))
|
||||
(native-inputs (modify-inputs (package-native-inputs libxkbcommon)
|
||||
(append xorg-server ;; Xvfb for tests
|
||||
xkbcomp))))) ;; xkbcomp for tests
|
||||
|
||||
(define-public libfakekey
|
||||
(package
|
||||
(name "libfakekey")
|
||||
|
@ -902,31 +877,29 @@ typing tool (@code{wtype}, @code{xdotool}, etc.), or via standard output.")
|
|||
(define-public pixman
|
||||
(package
|
||||
(name "pixman")
|
||||
(version "0.42.2")
|
||||
(version "0.46.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.cairographics.org/releases/pixman-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0pk298iqxqr64vk3z6nhjwr6vjg1971zfrjkqy5r9zd2mppq057a"))
|
||||
(base32 "072rd8sd454rzybmxx90fdzvabzvx0pr57y745qfwnxxqgml976h"))
|
||||
(patches (search-patches "pixman-CVE-2016-5296.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--disable-static"
|
||||
"--enable-timers"
|
||||
"--enable-gnuplot"
|
||||
,@(if (target-arm32?)
|
||||
`("--disable-arm-simd")
|
||||
'()))))
|
||||
(native-inputs (list pkg-config))
|
||||
(inputs (list libpng zlib))
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "-Dtimers=true"
|
||||
"-Dgnuplot=true"
|
||||
#$@(if (target-arm32?)
|
||||
'("-Darm-simd=false")
|
||||
'()))))
|
||||
(synopsis "Low-level pixel manipulation library")
|
||||
(description "Pixman is a low-level software library for pixel
|
||||
manipulation, providing features such as image compositing and trapezoid
|
||||
rasterisation.")
|
||||
(home-page "http://www.pixman.org/")
|
||||
(home-page "https://www.pixman.org/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public libdrm
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
|
||||
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
|
||||
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -188,19 +189,19 @@ binary extension of XML for the purpose of storing and manipulating data in a
|
|||
hierarchical form with variable field lengths.")
|
||||
(license license:lgpl2.1)))
|
||||
|
||||
;; Note: Remember to check python-libxml2 when updating this package.
|
||||
(define-public libxml2
|
||||
(package
|
||||
(name "libxml2")
|
||||
(version "2.9.14")
|
||||
(version "2.14.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/libxml2/"
|
||||
(version-major+minor version)"/libxml2-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vnzk33wfms348lgz9pvkq9li7jm44pvm73lbr3w1khwgljlmmv0"))))
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/libxml2/"
|
||||
(version-major+minor version)"/libxml2-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fi0jysncjpvhvp29qcx3bydndapwphgkx7ial5kzf7ymyh5ir3w"))
|
||||
(patches (search-patches "python-libxml2-utf8.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "static" "doc"))
|
||||
(arguments
|
||||
|
@ -218,6 +219,13 @@ hierarchical form with variable field lengths.")
|
|||
(string-append "/bin/" file)) "."))
|
||||
'("config.guess" "config.sub")))))
|
||||
#~())
|
||||
(add-before 'configure 'configure-python
|
||||
(lambda _
|
||||
(substitute* "python/setup.py.in"
|
||||
;; The build system ignores C_INCLUDE_PATH & co, so
|
||||
;; provide the absolute directory name.
|
||||
(("/opt/include")
|
||||
(string-append #$output "/include/libxml2")))))
|
||||
(add-after 'install 'use-other-outputs
|
||||
(lambda _
|
||||
(let ((doc (string-append #$output:doc "/share/"))
|
||||
|
@ -245,7 +253,7 @@ hierarchical form with variable field lengths.")
|
|||
(native-inputs (append (if (target-loongarch64?)
|
||||
(list config)
|
||||
'())
|
||||
(list perl)))
|
||||
(list perl pkg-config python-minimal)))
|
||||
(native-search-paths
|
||||
(list $SGML_CATALOG_FILES $XML_CATALOG_FILES))
|
||||
(search-paths native-search-paths)
|
||||
|
@ -254,57 +262,23 @@ hierarchical form with variable field lengths.")
|
|||
project (but it is usable outside of the Gnome platform).")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public libxml2-next
|
||||
(package
|
||||
(inherit libxml2)
|
||||
(name "libxml2")
|
||||
(version "2.14.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/libxml2/"
|
||||
(version-major+minor version)"/libxml2-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jylv2kkyzih710blg24al7b43iaqg6xsfn52qy865knagrhdl03"))))
|
||||
(native-inputs (modify-inputs (package-native-inputs libxml2)
|
||||
(append pkg-config
|
||||
python-minimal)))))
|
||||
|
||||
(define-public libxml2-next/fixed
|
||||
(package
|
||||
(inherit libxml2)
|
||||
(properties '((hidden? . #t)))
|
||||
(name "libxml2")
|
||||
(version "2.14.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/libxml2/"
|
||||
(version-major+minor version)"/libxml2-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jylv2kkyzih710blg24al7b43iaqg6xsfn52qy865knagrhdl03"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments libxml2-next)
|
||||
((#:phases phases #~%standard-phases)
|
||||
#~(modify-phases #$phases
|
||||
(add-after 'install 'symlink-hardcoded-lib-for-grafts
|
||||
(lambda _
|
||||
(let ((lib (string-append #$output "/lib/libxml2.so")))
|
||||
;; XXX: When grafting, we need to reproduce the file paths to
|
||||
;; the libraries too.
|
||||
(symlink (string-append lib ".16")
|
||||
(string-append lib ".2")))))))))
|
||||
(native-inputs (modify-inputs (package-native-inputs libxml2)
|
||||
(append pkg-config
|
||||
python-minimal)))))
|
||||
|
||||
(define-public libxml2-next-for-grafting
|
||||
(package
|
||||
(inherit libxml2)
|
||||
(replacement libxml2-next/fixed)
|
||||
(properties '((hidden? . #t)))))
|
||||
;; This is an old version (the most recent that works) of libxml2 solely for
|
||||
;; building librsvg-2.40.
|
||||
;; XXX: Remove once Rust (and thus newer librsvg) is supported on all
|
||||
;; platforms.
|
||||
(define-public libxml2-2.11
|
||||
(hidden-package
|
||||
(package
|
||||
(inherit libxml2)
|
||||
(version "2.11.9")
|
||||
(source (origin
|
||||
(inherit (package-source libxml2))
|
||||
(uri (string-append "mirror://gnome/sources/libxml2/"
|
||||
(version-major+minor version)"/libxml2-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17w0a622466k2hi5nln276la6rzfr9xaip3lqj71hmyvxyhmf0bq")))))))
|
||||
|
||||
(define-public libxml2-xpath0
|
||||
(package/inherit libxml2
|
||||
|
@ -320,34 +294,7 @@ provides an @code{--xpath0} option to @command{xmllint} that enables it
|
|||
to output XPath results with a null delimiter.")))
|
||||
|
||||
(define-public python-libxml2
|
||||
(package/inherit libxml2
|
||||
(name "python-libxml2")
|
||||
(source (origin
|
||||
(inherit (package-source libxml2))
|
||||
(patches
|
||||
(append (search-patches "python-libxml2-utf8.patch")
|
||||
(origin-patches (package-source libxml2))))))
|
||||
(build-system pyproject-build-system)
|
||||
(outputs '("out"))
|
||||
(arguments
|
||||
(list
|
||||
;; XXX: Tests are specified in 'Makefile.am', but not in 'setup.py'.
|
||||
#:tests? #f
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'build 'configure
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(chdir "python")
|
||||
(let ((libxml2-headers (search-input-directory
|
||||
inputs "include/libxml2")))
|
||||
(substitute* "setup.py"
|
||||
;; The build system ignores C_INCLUDE_PATH & co, so
|
||||
;; provide the absolute directory name.
|
||||
(("/opt/include")
|
||||
(dirname libxml2-headers)))))))))
|
||||
(native-inputs (list python-setuptools))
|
||||
(inputs (list libxml2))
|
||||
(synopsis "Python bindings for the libxml2 library")))
|
||||
(deprecated-package "python-libxml2" libxml2))
|
||||
|
||||
(define-public libxlsxwriter
|
||||
(package
|
||||
|
@ -394,7 +341,7 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
|
|||
(define-public libxslt
|
||||
(package
|
||||
(name "libxslt")
|
||||
(version "1.1.37")
|
||||
(version "1.1.43")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources"
|
||||
|
@ -402,8 +349,7 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
|
|||
"/libxslt-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1d1s2bk0m6d7bzml9w90ycl0jlpcy4v07595cwaddk17h3f2fjrs"))
|
||||
(patches (search-patches "libxslt-generated-ids.patch"))))
|
||||
"0fhqy01x99iia8306czakxza4spzyn88w4bin4sw5bx57hw6ngas"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
|
@ -1256,7 +1202,7 @@ XSL-T processor. It also performs any necessary post-processing.")
|
|||
"1shk40mpaqaf05skgyxa7qxgcarjd6i1fadn2sk0b8lakfv96bnq"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs ; according to xmlsec1.pc
|
||||
(list libxml2-next libxslt))
|
||||
(list libxml2 libxslt))
|
||||
(inputs
|
||||
(list gnutls libgcrypt libltdl))
|
||||
(native-inputs
|
||||
|
@ -1937,13 +1883,13 @@ because lxml.etree already has its own implementation of XPath 1.0.")
|
|||
(define-public python-lxml
|
||||
(package
|
||||
(name "python-lxml")
|
||||
(version "5.2.2")
|
||||
(version "6.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "lxml" version))
|
||||
(sha256
|
||||
(base32 "11yvrzlswlh81z6lpmds2is2jd3wkigpwj6mcfcaggl0h64w8bdv"))))
|
||||
(base32 "14064h0pxdsx36nhyjzrw0v16ygz977qf6l0ydnh5p97pwp8hfib"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
|
|
|
@ -5759,7 +5759,7 @@ Wayland.")
|
|||
(define-public libx11
|
||||
(package
|
||||
(name "libx11")
|
||||
(version "1.8.10")
|
||||
(version "1.8.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -5767,7 +5767,7 @@ Wayland.")
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lywvwsz92j7isglvw2227g3na4ghyspvsvblpf43ns7jfnksfrb"))))
|
||||
"16lspc3bw2pg3jal7zyq6mxmxmmaax0fz6lgh1n4skqjn2dny0ps"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"doc")) ;8 MiB of man pages + XML
|
||||
|
|
|
@ -64,6 +64,7 @@
|
|||
includedir "/include"))
|
||||
'())
|
||||
,(string-append "--buildtype=" build-type)
|
||||
"--wrap-mode=nofallback"
|
||||
,(string-append "-Dc_link_args=-Wl,-rpath="
|
||||
(assoc-ref outputs "out") "/lib")
|
||||
,(string-append "-Dcpp_link_args=-Wl,-rpath="
|
||||
|
@ -75,12 +76,12 @@
|
|||
(chdir build-dir)
|
||||
(apply invoke "meson" "setup" args)))
|
||||
|
||||
(define* (build #:key parallel-build?
|
||||
#:allow-other-keys)
|
||||
(define* (build #:key parallel-build? #:allow-other-keys)
|
||||
"Build a given meson package."
|
||||
(invoke "ninja" "-j" (if parallel-build?
|
||||
(number->string (parallel-job-count))
|
||||
"1")))
|
||||
(invoke "ninja" "--verbose"
|
||||
"-j" (if parallel-build?
|
||||
(number->string (parallel-job-count))
|
||||
"1")))
|
||||
|
||||
(define* (check #:key tests? test-options parallel-tests?
|
||||
#:allow-other-keys)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue