From ea8a6e7bb21cc4e6e894cd6fac82540efad5e6e1 Mon Sep 17 00:00:00 2001 From: Hugo Buddelmeijer Date: Mon, 22 Sep 2025 10:36:14 +0200 Subject: [PATCH 001/148] gnu: python-assertpy: Fix tests. * gnu/packages/python-check.scm (python-assertpy): Fix tests. [source]: Switch to git-fetch. [native-inputs]: Remove python-wheel, add python-pytest. Change-Id: I878498f64bb6b1399c033ee6d33bbf7a1afd47ed Signed-off-by: Andreas Enge --- gnu/packages/python-check.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index e9f16606199..d4cc2c79750 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -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 From 4514403f55788569700d9f6291fdeac95983b0aa Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 20:35:05 +0100 Subject: [PATCH 002/148] gnu: python-gatspy: Disable tests. * gnu/packages/astronomy.scm (python-gatspy)[arguments] : They depend on Nose test runner. : Drop them. : Remove 'set-HOME. [native-inputs]: Remove python-pytest and python-wheel. Change-Id: I9c3d17a1ede19ccaa0b2107860cfd6f48c183e9a --- gnu/packages/astronomy.scm | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 4dc1ce8d5ac..e5a38226bef 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -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 From 37ebdbe3ddd7bc746ef175e184c48db83e282ad0 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 22:07:57 +0200 Subject: [PATCH 003/148] gnu: python-can: Update to 4.6.1. * gnu/packages/python-xyz.scm (python-can): Update to 4.6.1. [source]: Switch to git-fetch. [arguments]<#:phases>: Add phase 'set-version. [native-inputs]: Remove python-codecov, python-coverage, python-pytest-runner, python-wheel. Add python-setuptools, python-setuptools-scm. [description]: Improve style. Change-Id: I75d9fa49566d8cb47b34c04f5a7bf67112f2c8ea Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++---------------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 74bfdc4e384..7a8bc5e9639 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5357,14 +5357,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 +5377,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 +5395,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+))) From 409264cf1dbbb324b792654150adc9a715dee438 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 22:10:43 +0200 Subject: [PATCH 004/148] gnu: python-cantools: Update to 40.5.0. * gnu/packages/python-xyz.scm (python-cantools): Update to 40.5.0. [native-inputs]: Remove python-wheel. Add python-freezegun. Change-Id: I5bbf58d2681dbbe83b215501438908ce2ab2ee79 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7a8bc5e9639..bc9f8d64aee 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5625,18 +5625,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 @@ -5650,11 +5648,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 @@ -5665,8 +5663,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 From bd1ba5a740b8a73ba5548a4b9c303c02d923424e Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 22:16:26 +0200 Subject: [PATCH 005/148] gnu: python-canopen: Update to 2.4.1. * gnu/packages/python-xyz.scm (python-canopen): Update to 2.4.1. [source]: Switch to git-fetch. [native-inputs]: Remove python-wheel. Add python-setuptools. Change-Id: Ie1f49c6ce10d9fb6d3ba90a442c5b1d50f9dc554 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index bc9f8d64aee..878d8ca283c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5450,15 +5450,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") From 87eb0c24a796470f1941227514daf59d012d3b92 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 22:50:10 +0200 Subject: [PATCH 006/148] gnu: python-grpcio: Disable tests. * gnu/packages/rpc.scm (python-grpcio) [source]: Improve style, importing srfi-26 in . [arguments]<#:tests?>: Disable them. [native-inputs]: Replace python-cython by python-cython-0, remove python-wheel. [description]: Improve style. Change-Id: Ifbf801ee9e54b90cefab17af3cf07f5a11992a46 Signed-off-by: Sharlatan Hellseher --- gnu/packages/rpc.scm | 28 ++++++++++++---------------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/gnu/packages/rpc.scm b/gnu/packages/rpc.scm index 0bb28b16702..e75d97b1205 100644 --- a/gnu/packages/rpc.scm +++ b/gnu/packages/rpc.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2021 Greg Hogan ;;; Copyright © 2021 Tobias Geerinckx-Rice ;;; Copyright © 2022, 2024 Maxim Cournoyer +;;; Copyright © 2025 Nicolas Graves ;;; ;;; 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 From b7232cf8c064daf5ce0559e9b8b49d354eaed1ce Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 23:04:54 +0200 Subject: [PATCH 007/148] gnu: python-daiquiri: Update to 3.0.1. * gnu/packages/python-xyz.scm (python-daiquiri): Update to 3.0.1. [source]: Switch to git-fetch. [build-system]: Switch to pyproject-build-system. [arguments]<#:phases>: Add 'set-version phase. [native-inputs]: Add python-setuptools. Remove python-six. [synopsis, description]: Improve style. Change-Id: I7d1caed0f59f412a82998fea2c1916b4b67cde83 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 36 ++++++++++++++++++++++-------------- 1 file changed, 22 insertions(+), 14 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 878d8ca283c..4f133e20d61 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -32923,24 +32923,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 From 1a2e469de5e74287bb068303822ad08dc082a135 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 23:41:38 +0200 Subject: [PATCH 008/148] gnu: python-os-testr: Update to 3.0.0-0.0ba674d. * gnu/packages/openstack.scm (python-os-testr): Update to 3.0.0-0.0ba674d. [source]: Switch to git-fetch. [arguments]<#:phases>: Add phase 'set-version. [native-inputs]: Remove python-wheel. [home-page]: Use github link. Change-Id: I403e6a973adc0512c6393bc16e56f3ac96b14211 Signed-off-by: Sharlatan Hellseher --- gnu/packages/openstack.scm | 79 +++++++++++++++++++++----------------- 1 file changed, 43 insertions(+), 36 deletions(-) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index ee31ae9f086..b498766067b 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -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 From b5dc339bbe722cf7fc0d11d81cfebed339161c2d Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 23:45:03 +0200 Subject: [PATCH 009/148] gnu: python-requestsexceptions: Disable tests. * gnu/packages/openstack.scm (python-requestsexceptions): [source]: Switch to git-fetch. [arguments]<#:tests?>: Disable them. <#:phases>: Add phase 'set-version. [native-inputs]: Add python-os-testr. Remove python-wheel. [synopsis, description]: Improve style. Change-Id: I9ee0105c2cd7153ecef8dfc38a9ca255a97366ed Signed-off-by: Sharlatan Hellseher --- gnu/packages/openstack.scm | 36 +++++++++++++++++++++++------------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index b498766067b..f701e4663ec 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -1153,29 +1153,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 From b462f091d1a78c04668765a854333846dbcb800d Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 23:48:46 +0200 Subject: [PATCH 010/148] gnu: python-oslo-config: Update to 9.8.0. * gnu/packages/openstack.scm (python-oslo-config): Update to 9.8.0. [native-inputs]: Remove python-mypy, python-wheel. Change-Id: I3ccfb4222383d6eb4af5aedc8207a58a2fc76a31 Signed-off-by: Sharlatan Hellseher --- gnu/packages/openstack.scm | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index f701e4663ec..99d3431af95 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -560,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 @@ -593,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 @@ -602,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 From a8d58a70567327f20db91108223896db5eac62b1 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Sun, 21 Sep 2025 23:51:24 +0200 Subject: [PATCH 011/148] gnu: Add python-etcd3. * gnu/packages/python-xyz.scm (python-etcd3): New variable. Change-Id: Ic41bfd08d26c549dcaab4043448fe93a506e7a95 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4f133e20d61..8f6d2ca2420 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -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) @@ -5854,6 +5855,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") From 564f406c5892cf22fde77391f68a4babac4ec98d Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 00:39:59 +0200 Subject: [PATCH 012/148] gnu: Add python-valkey. * gnu/packages/python-xyz.scm (python-valkey): New variable. Change-Id: I901715e061fe1c86fdfd7873a4fdc738bde06646 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 8f6d2ca2420..df47ac4a706 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -27347,6 +27347,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: . From e4f8c118bcb41992e97b6ab1a4e6d4fac6060a53 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 00:40:07 +0200 Subject: [PATCH 013/148] gnu: python-limits: Update to 5.5.0 and setup tests. * gnu/packages/python-xyz.scm (python-limits): Update to 5.5.0. [source]: Switch to git-fetch. [arguments]<#:tests?, test-flags, phases>: Setup tests. [native-inputs]: Add python-flaky, python-pytest, python-pytest-asyncio, python-pytest-benchmark, python-pytest-cov, python-pytest-lazy-fixtures, python-pytest-xdist, python-setuptools. [description]: Improve style. Change-Id: I738eb037a2e90b7cd9492793e1061561ce5f3ffb Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 46 +++++++++++++++++++++++++++++-------- 1 file changed, 37 insertions(+), 9 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index df47ac4a706..f607b4b309a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -4970,21 +4970,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 From 4a01e89f9e5cb9154904d6ad812c892b206cac1a Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 00:45:16 +0200 Subject: [PATCH 014/148] gnu: python-hiro: Fix tests. * gnu/packages/python-check.scm (python-hiro): [source]: Switch to git-fetch. [native-inputs]: Add python-pytest, python-pytest-cov. Remove python-wheel. [description]: Improve style. Change-Id: I30447c5227e09b76708e2c075639c4e95a8f03ee Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-check.scm | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index d4cc2c79750..990ee1cf1e7 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -879,18 +879,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 From 838531e366ddc28d0f52fd7a0b601a191cea91dc Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 00:54:15 +0200 Subject: [PATCH 015/148] gnu: python-mf2py: Update to 2.0.1. * gnu/packages/python-web.scm (python-mf2py): Update to 2.0.1. [build-system]: Switch to pyproject-build-system. [arguments]: Remove them. [native-inputs]: Add python-poetry-core. [description]: Improve style. Change-Id: I43b67d96178314a2efe442ff6fd6ab34865daa5a Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-web.scm | 39 +++++++++++++++---------------------- 1 file changed, 16 insertions(+), 23 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 7f4f175c8e5..8d9a073d395 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -11061,33 +11061,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 From d6464a8c60d606d28d9b0c58f003341fd91ed96b Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:01:08 +0200 Subject: [PATCH 016/148] gnu: python-notmuch: Remove python-wheel native-input. * gnu/packages/mail.scm (python-notmuch)[native-inputs]: Remove python-wheel. Change-Id: I9e2ee28200a2ded84700fcd7fea099f3a1b0574a Signed-off-by: Sharlatan Hellseher --- gnu/packages/mail.scm | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c487aaa4a49..99bfddd43ed 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1685,11 +1685,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 From db05dfb1d5e4aa2a93acde359ddbd90734f68030 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:01:56 +0200 Subject: [PATCH 017/148] gnu: python-notmuch2: Fix tests. * gnu/packages/mail.scm (python-notmuch2)[native-inputs]: Add python-pytest, python-pytest-cov, python-setuptools. Change-Id: I5678b4565fb31a36484b89acaa66b67e0029b262 Signed-off-by: Sharlatan Hellseher --- gnu/packages/mail.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 99bfddd43ed..e62fcacf91f 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1699,7 +1699,6 @@ and search library.") (inherit python-notmuch) (name "python-notmuch2") (version (package-version notmuch)) - (propagated-inputs (list python-cffi)) (arguments (list #:phases @@ -1728,6 +1727,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+))) From 9b2381a5cea1f743bbf6b9619e7956a0bb0ecd87 Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:14:57 +0200 Subject: [PATCH 018/148] gnu: python-qnorm: Update to 0.9.0. * gnu/packages/python-xyz.scm (python-qnorm): Update to 0.9.0. [arguments]: Remove them. [propagated-inputs]: Add python-tables, python-pyarrow, python-fastparquet. [description]: Improve style. Change-Id: I6862c4ddf60938034a39953ecfddde4b839705b2 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 50 ++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 29 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f607b4b309a..64c6f816f1f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -16223,38 +16223,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 \"") - "{ 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 From ebbcd92f0037b7cfaa7de18285a3a8e9039b696f Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:30:43 +0200 Subject: [PATCH 019/148] gnu: python-treelib: Remove python-six properly. The package still used python-six. Luckily a PR was ready for its removal. * gnu/packages/python-xyz.scm (python-treelib)[source]: Add patch. * gnu/packages/patches/python-treelib-remove-python2-compat.patch: Add file. * gnu/local.mk: Record patch. Change-Id: I91a37770391cc72f158ade5b9619e80ab9a36bc7 Signed-off-by: Sharlatan Hellseher --- gnu/local.mk | 1 + ...python-treelib-remove-python2-compat.patch | 129 ++++++++++++++++++ gnu/packages/python-xyz.scm | 6 +- 3 files changed, 134 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/python-treelib-remove-python2-compat.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8016b3fa047..4fa5ca90d50 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -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 \ diff --git a/gnu/packages/patches/python-treelib-remove-python2-compat.patch b/gnu/packages/patches/python-treelib-remove-python2-compat.patch new file mode 100644 index 00000000000..50659c21e90 --- /dev/null +++ b/gnu/packages/patches/python-treelib-remove-python2-compat.patch @@ -0,0 +1,129 @@ +From: Alexandre Detiste , 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 + diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 64c6f816f1f..f693be66e3d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -14660,13 +14660,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") From 5ce1e4c0facfac9e751fa686a199ddf339bfb5ef Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:37:29 +0200 Subject: [PATCH 020/148] gnu: python-reretry: Fix tests. * gnu/packages/python-xyz.scm (python-reretry) [source]: Switch to git-fetch. [native-inputs]: Add python-pytest, python-pytest-asyncio. Remove python-setuptools. Change-Id: I559f5d00d8093fd468a308f3b8588a75c0f75161 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index f693be66e3d..3e1dcb5c9f2 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -8962,12 +8962,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 From f0f35ff8a315b3b6debe2ce63ace003b78b21f9c Mon Sep 17 00:00:00 2001 From: Nicolas Graves Date: Mon, 22 Sep 2025 01:43:13 +0200 Subject: [PATCH 021/148] gnu: python-socks: Update to 2.7.2. * gnu/packages/python-web.scm (python-socks): Update to 2.7.2. [source]: Switch to git-fetch. [native-inputs]: Add python-pytest-trio. Remove python-wheel. Change-Id: I0e75b01fb350d964997d5d3a6d8e8e6a1dcbcd67 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-web.scm | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 8d9a073d395..2d7b5a74e9a 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -10015,27 +10015,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 From a54fa374f9aaab924974a46e60b628a991996a4f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 21:34:04 +0100 Subject: [PATCH 022/148] gnu: alot: Update to 0.11, fix build. * gnu/packages/mail.scm (alot): Update to 0.11. Improve package style. [buld-system]: Switch to pyproject-build-system. [arguments] : Disable for now. : Remove 'fix-tests, disable-failing-tests; add 'relax-requirements. [inputs]: Remove python-service-identity. [native-inputs]: Remove python-mock; add python-setuptools. Change-Id: I824e0f5c07739f2f69c037f56043824948638d13 --- gnu/packages/mail.scm | 73 ++++++++++++++++++------------------------- 1 file changed, 31 insertions(+), 42 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index e62fcacf91f..0ea33860f03 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -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 From a03293ac503a3749301fe98cc9a5876e9a6ca0f7 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 21:50:52 +0100 Subject: [PATCH 023/148] gnu: Add python-cachetools-5. * gnu/packages/python-xyz.scm (python-cachetools-5): New variable. Change-Id: I88a91b87f89f1ae49e251fba316f1edaad77d121 --- gnu/packages/python-xyz.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 3e1dcb5c9f2..93436db1c9c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -2461,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") From 67b0aaaa74037056afa0edfc86dee71189e18cee Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 21:50:54 +0100 Subject: [PATCH 024/148] gnu: python-google-auth: Update to 2.40.3. * gnu/packages/python-web.scm (python-google-auth): Update to 2.40.3. [propagated-inputs]: Remove python-cachetools; add python-cachetools-5. Change-Id: Ie31e53b04df90fcdc6a730dbace042b5ca33b329 --- gnu/packages/python-web.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 2d7b5a74e9a..01094e83276 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -10305,13 +10305,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 @@ -10319,7 +10319,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)) From 46773999d91521a1336b3b870192fbf25a7b21b6 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 22:08:54 +0100 Subject: [PATCH 025/148] gnu: python-cykhash: Disalbe tests. * gnu/packages/python-xyz.scm (python-cykhash)[arguments] : No tests in PyPI, git does not provide 2.0.1 tag or any newer. [native-inputs]: Remove python-wheel. Change-Id: Id356556121023a1ad3077d190d0f153de903a91a --- gnu/packages/python-xyz.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 93436db1c9c..4c05dc942b9 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -10421,9 +10421,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 From bf50016eae80a20744702a7db32f1d383adcb312 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 22:09:04 +0100 Subject: [PATCH 026/148] gnu: python-grpcio-tools: Disable tests. * gnu/packages/rpc.scm (python-grpcio-tools)[argumetns] : No tests in PyPI archive. [native-inputs]: Remove python-wheel. Change-Id: I61dc4de8327dfdbeee4aca8a44b362b84ea271a7 --- gnu/packages/rpc.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/rpc.scm b/gnu/packages/rpc.scm index e75d97b1205..1e5ba338dff 100644 --- a/gnu/packages/rpc.scm +++ b/gnu/packages/rpc.scm @@ -237,12 +237,13 @@ 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") From e5e7af6c49086e11cce9e2f74fdc6f028132982e Mon Sep 17 00:00:00 2001 From: Hugo Buddelmeijer Date: Sun, 21 Sep 2025 22:15:14 +0200 Subject: [PATCH 027/148] gnu: python-colormath2: Fix tests. * gnu/packages/python-xyz.scm (python-colormath2): Fix tests. [source]: Switch to git-fetch. [native-inputs]: Remove python-pytest; add python-nose2. Change-Id: I969d0271cc9d7cdb9a662e0a007f2c895a331ace Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 4c05dc942b9..1f195b85180 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11065,13 +11065,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 From 82539653d7aa20afd52448b08e99810269184bd0 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 22 Sep 2025 22:34:45 +0100 Subject: [PATCH 028/148] gnu: python-engineio: Update to 4.12.2. * gnu/packages/python-web.scm (python-engineio): Update to 4.12.2. [propagated-inputs]: Remove python-tornado. [native-inputs]: Remove python-wheel; add python-pytest-asyncio and python-tornado. Change-Id: I29e6bbc8ebcd3734a76fab524bd6958c6360d355 --- gnu/packages/python-web.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 01094e83276..e4deac30732 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -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 From 21c0edc37c453863890cea5cc3b28642f30861ae Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 08:33:50 +0100 Subject: [PATCH 029/148] gnu: python-green: Fix tests. * gnu/packages/python-check.scm (python-green): Rework custom phases. [arguments] : Add portion of tests. [phases]{check}: Run tests with installed "green" command. [native-inputs]: Remove python-mypy, python-testtools, and python-wheel. Change-Id: Ifaf4507825ecfdd924abaa391db1c876500735ca --- gnu/packages/python-check.scm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 990ee1cf1e7..f06baf96fab 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -832,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 From 777bb5ad0593ddd00a9b288d17643a7a7d1a3237 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 08:37:12 +0100 Subject: [PATCH 030/148] gnu: python-mando: Update to 0.8.2. * gnu/packages/python-xyz.scm (python-mando): Update to 0.8.2. Improve style. [bulid-system]: Switch to pyproject-bulid-system. [arguments]: Drop all. [propagated-inputs]: Remove python-rst2ansi and python-six. [native-inputs]: Add python-setuptools. Change-Id: I2ef5ca1c19e209404491be4a4fd616080d6ca744 --- gnu/packages/python-xyz.scm | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 1f195b85180..20f4bea917f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -26503,31 +26503,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 From ba549e727b81ebd0c43e69ca79ae97b909baa74c Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 09:11:34 +0100 Subject: [PATCH 031/148] gnu: breezy: Fix build with gcc-14. * gnu/packages/version-control.scm (breezy)[arguments] : Add 'relax-gcc-14-strictness. [phases]{check}: Skip one more test. [native-inputs]: Remove python-cython; add python-cython-0. Change-Id: Ibdaf1851d49b01e1a7f7c168ca9962e92155cfe7 --- gnu/packages/version-control.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 86cc099f705..f03994406e7 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -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 From 9c86a5c9dda3536a9104910f41e77c1e8da2fb23 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 09:59:32 +0100 Subject: [PATCH 032/148] gnu: python-txacme: Update to 0.9.3-0.ac18f92, fix build. * gnu/packages/python-xyz.scm (python-txacme): Update to 0.9.3-0.ac18f92. [source]: Switch to git-fetch and use the latest commit from trunk branch. [arguments] : Use 'custom. : Provide option to run tests with twisted. [native-inputs]: Remove python-fixtures, python-hypothesis, python-mock, python-service-identity, python-testrepository, python-testscenarios, and python-testtools; add python-setuptools. Change-Id: Ifd7feb33bbca051e61f9eddf7b6e1a5026ec5568 --- gnu/packages/python-xyz.scm | 70 ++++++++++++++++++++----------------- 1 file changed, 38 insertions(+), 32 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 20f4bea917f..36fb963c43d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -33524,44 +33524,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: . + (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 From 413e1baeeb96d42dc98bc975fa656b222714ac63 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 10:10:06 +0100 Subject: [PATCH 033/148] gnu: python-yt: Skip some tests. * gnu/packages/astronomy.scm (python-yt)[arguments]: Skip one more test which fails on deprecation, ignore some documentation tests. Change-Id: I231adf3a785e8340523e4d2bf7291f8f13ffc116 --- gnu/packages/astronomy.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index e5a38226bef..5328c43f596 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -9218,6 +9218,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" @@ -9227,7 +9230,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 From c9a466428a3b58d4f7a5de82cd0f442fc4ed4c38 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 10:10:07 +0100 Subject: [PATCH 034/148] gnu: python-efl: Fix bulid. * gnu/packages/enlightenment.scm (python-efl)[native-inputs]: Remove python-cython; add python-cython-0. Change-Id: I6899a268a0019774709e1e318ccf3966239e7098 --- gnu/packages/enlightenment.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 60196cd6e3a..8a08262e22d 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -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/") From 8fa52bb06b0068637675ee98b0cd5aa092b4766f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 10:28:38 +0100 Subject: [PATCH 035/148] gnu: onionshare-cli: Don't check wheel in sanity check. python-wheel is less likely required during runtime at all, adjust relaxation and remove it from native inputs completely. * gnu/packages/tor.scm (onionshare-cli)[phases]{relax-requirements}: Remove check for wheel package [native-inputs]: Remove python-wheel; add python-setuptools. Change-Id: Ifa6af72d70af364f744e93f84820d00bff6fd267 --- gnu/packages/tor.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index f41cd8d3d7c..e33e37971fa 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -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" From b2aafa488e0eb7a202f09cacba55b9f4b94d4b5f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Thu, 18 Sep 2025 16:54:32 +0100 Subject: [PATCH 036/148] gnu: python-yt-astro-analysis: Update to 1.1.4. * gnu/packages/astronomy.scm (python-yt-astro-analysis): Update to 1.1.4. [native-inputs]: Remove python-tomli, and python-wheel. Change-Id: I877d19cb921b39970fb6125cad4a5055f4547c2f --- gnu/packages/astronomy.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 5328c43f596..5ab59035b41 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -9309,13 +9309,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 @@ -9330,9 +9330,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 From 891a9bd967f76b968372f3e96d5a6fed6c184f1d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 11:53:32 +0100 Subject: [PATCH 037/148] gnu: python-gpy: Fix tests. * gnu/packages/machine-learning.scm (python-gpy)[arguments] : Ignore 2 test files. Change-Id: Ic529f0e913aaa7977503476f812c1d1293f5d2fc --- gnu/packages/machine-learning.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index ff0ace2efd7..f3cae49fa9a 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -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 From 4beefc0da725e886745cb50674d3038f4e3f118e Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 11:53:32 +0100 Subject: [PATCH 038/148] gnu: python-lightning-utilities: Disable tests. * gnu/packages/machine-learning.scm (python-lightning-utilities)[arguments] : Most tests are broken. [native-inputs]: Remove python-wheel. Change-Id: I73e90cadff07d662e43dfced6227f0023382b76c --- gnu/packages/machine-learning.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index f3cae49fa9a..74756ee41c8 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -4884,10 +4884,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 From e090629e6dfe61d0fab41c62e70eb73b2354d482 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 11:59:17 +0100 Subject: [PATCH 039/148] gnu: python-memory-allocator: Disable tests. * gnu/packages/sagemath.scm (python-memory-allocator)[arguments] : No tests provided. [native-inputs]: Remove python-wheel. Change-Id: I9568b8847e808ef3f61add0d14d8c2a6aa6a07c1 --- gnu/packages/sagemath.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/sagemath.scm b/gnu/packages/sagemath.scm index 9cfe8fe7dfa..4fad4d30cab 100644 --- a/gnu/packages/sagemath.scm +++ b/gnu/packages/sagemath.scm @@ -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 From c14e79727370375d18d10a79ad01981f6fb3b9d1 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:04:31 +0100 Subject: [PATCH 040/148] gnu: python-js2py: Fix build. * gnu/packages/python-web.scm (python-js2py) [propagated-inputs]: Remove python-numpy; add python-six. [native-inputs]: Remove python-pytest and python-wheel. Change-Id: I5e18ac4c7eff8de3aa8858021d530b967c1a3529 --- gnu/packages/python-web.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index e4deac30732..9febc615004 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -9571,12 +9571,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") From bd5b15b61c2dae34fd27936fa580351d9fd6873d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:11:28 +0100 Subject: [PATCH 041/148] gnu: python-pyaes: Disable tests. * gnu/packages/python-crypto.scm (python-pyaes)[arguments] : Disable for now. [native-inputs]: Remove python-wheel. Change-Id: I6b1be9e4dab156ed36ddb2a57b080824f6388f11 --- gnu/packages/python-crypto.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index f4d8a7819c0..32b9f17aaa7 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -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 From aaf1f020eb1131dd451d9d5a34a9809af684a7a5 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:21:36 +0100 Subject: [PATCH 042/148] gnu: python-pillow-simd: Don't inherit from python-pillow. * gnu/packages/python-xyz.scm (python-pillow-simd): Don't inherit from python-pillow. [arguments] : Skip one more test. [inputs]: Add freetype, lcms, libimagequant, libjpeg-turbo, libraqm, libtiff, libwebp, openjpeg, and zlib. [native-inputs]: Add python-check-manifest, python-defusedxml, python-markdown2, python-olefile, python-packaging, python-pytest, python-pytest-timeout, python-setuptools, and python-trove-classifiers. Change-Id: Ie2473266b4d1447ece70b4da12cc17a9e7fbcf4a --- gnu/packages/python-xyz.scm | 46 ++++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 13 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 36fb963c43d..63b083cd9ba 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12690,39 +12690,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 From 91e92a195da6132ef237368edae3b87edf05a5df Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:32:19 +0100 Subject: [PATCH 043/148] gnu: python-pybbi: Update to 0.4.1. * gnu/packages/bioinformatics.scm (python-pybbi): Update to 0.4.1. Use G-Expressions. [build-system]: Switch to pyproject-build-system. [arguments] : Skip tests requiring network access. : Use default 'check; add 'remove-local-bbi. [propagated-inputs]: Remove python-cython, python-pandas, and python-six. [native-inputs]: Add python-cython, python-pandas, and python-setuptools. Change-Id: I580999a2aa7ba3511752ba00f3c923a26ab2c426 --- gnu/packages/bioinformatics.scm | 51 +++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 19 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 18352f35291..e67cc589ba7 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -24323,34 +24323,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 From 2051a06d5c916eb8866df926a5323e98e949948f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:38:08 +0100 Subject: [PATCH 044/148] gnu: python-pygame-sdl2: Fix build. * gnu/packages/game-development.scm (python-pygame-sdl2) [native-inputs]: Remove python-cython; add python-cython-0. Change-Id: I6b72a665daf0206c61a33fb30f4f775bf3977693 --- gnu/packages/game-development.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 275912d83db..6ddf8d7ba21 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -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, From 58406f8bd05b652cea2ae92b93b1d49b6e5c224d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 12:44:43 +0100 Subject: [PATCH 045/148] gnu: python-kivy: Fix build. * gnu/packages/python-graphics.scm (python-kivy)[native-inputs]: Remove python-cython; add python-cython-0. Change-Id: Ic37de9f525576a7a5dd8551c2db215f960c6dcf8 --- gnu/packages/python-graphics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python-graphics.scm b/gnu/packages/python-graphics.scm index a4b83c3ea8d..d96387ab6d8 100644 --- a/gnu/packages/python-graphics.scm +++ b/gnu/packages/python-graphics.scm @@ -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 From 9ca78db0fec5d2d696c756a158e790602b5003d1 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 13:12:28 +0100 Subject: [PATCH 046/148] gnu: python-hdbscan: Update to 0.8.40. * gnu/packages/machine-learning.scm (python-hdbscan): Update to 0.8.40. [arguments] : Ignore 3 test files. : Add 'pre-check. [native-inputs]: Remove python-nose, python-pandas, python-networkx, and python-wheel; add python-numpy. Change-Id: I38813d1cc16d4e90b5f0875dc93728bb42f4fa5d --- gnu/packages/machine-learning.scm | 33 +++++++++++++++++++------------ 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 74756ee41c8..afa83a12c31 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -2213,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 From 00dc86225b3e1bf78d511e4ae86d2f96dfcb0ec2 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 13:23:22 +0100 Subject: [PATCH 047/148] gnu: python-pyopengl-accelerate: Update to 3.1.10. * gnu/packages/python-graphics.scm (python-pyopengl-accelerate): Update to 3.1.10. Change-Id: I92b6b3ed8b18a5e07c647d209d8aa00840b5f7e9 --- gnu/packages/python-graphics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python-graphics.scm b/gnu/packages/python-graphics.scm index d96387ab6d8..d3c622e4e2e 100644 --- a/gnu/packages/python-graphics.scm +++ b/gnu/packages/python-graphics.scm @@ -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 From c8f792e089c7acd4b13f8e54faef2b7489c273d2 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 13:46:23 +0100 Subject: [PATCH 048/148] gnu: python-rpy2: Delete sanity-check. * gnu/packages/statistics.scm (python-rpy2) [arguments] : Delete 'sanity-check. [propagated-inputs]: Remove python-six. [native-inputs]: Remove python-coverage, python-ipython, python-numpy, python-pandas, python-pytest-cov, and python-wheel. Change-Id: Iac85261a8236d5b9746671a373da7fd6824c1a70 --- gnu/packages/statistics.scm | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 038fafcc325..688db007838 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -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: . + (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 From 63de0306967747073b83b6ad053a11383bbc6822 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 13:46:22 +0100 Subject: [PATCH 049/148] gnu: tombo: Switch to pyproject. * gnu/packages/bioinformatics.scm (tombo) [build-system]: Switch to pyproject-build-system. [native-inputs]: Remove python-cython and python-nose2; add python-cython-0 and python-setuptools. Change-Id: Ib647da2feba5f0614428c9b70d7b18532b0a9e1c --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e67cc589ba7..ede8eb70b27 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -24216,11 +24216,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 From e098877692955b5eeca201a128b67a4d5053a178 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 14:19:35 +0100 Subject: [PATCH 050/148] gnu: python-scikit-survival: Update to 0.25.0-0.bc4a891. * gnu/packages/python-science.scm (python-scikit-survival): Update to 0.25.0-0.bc4a891. [propagated-inputs]: Remove python-importlib-resources. [native-inputs]: Remove python-black, python-pypa-build, python-coverage, python-cython-3, python-tomli, and python-tox; add python-cython. Change-Id: I49a2e79c8b445f6e7ddc4886641d471a5f06fb98 --- gnu/packages/python-science.scm | 30 ++++++++++++------------------ 1 file changed, 12 insertions(+), 18 deletions(-) diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index 61f75dd6b6f..3283c66c563 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -3019,25 +3019,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 +3049,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 +3057,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 From c6a4b84e15ed38dc1fed4eddd81cf47222565f51 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 14:26:57 +0100 Subject: [PATCH 051/148] gnu: python-setools: Improve package, fix build. * gnu/packages/selinux.scm (python-setools): Use G-Expressions, fix indentation, remove trailing #t from lambdas. [native-inputs]: Remove python-cython; add python-cython-0. Change-Id: Ib30043915a6895022b32cb818a74aea54d91b6d2 --- gnu/packages/selinux.scm | 68 +++++++++++++++++++++------------------- 1 file changed, 36 insertions(+), 32 deletions(-) diff --git a/gnu/packages/selinux.scm b/gnu/packages/selinux.scm index c72dfa007ba..72ba66604ce 100644 --- a/gnu/packages/selinux.scm +++ b/gnu/packages/selinux.scm @@ -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 From aaa761991e59d57d6436c8f48adfbce1e81a626a Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 14:39:06 +0100 Subject: [PATCH 052/148] gnu: python-setuptools-declarative-requirements: Update to 1.3.0. * gnu/packages/python-xyz.scm (python-setuptools-declarative-requirements): Update to 1.3.0. [arguments] : Avoid running tests as they require old no packaged projects. [propagated-inputs]: Remove python-toml and python-wheel; add python-setuptools. [native-inputs]: Remove python-pytest. Change-Id: I0c652f0de8e28d8a4b487b117433ac68b64d8efc --- gnu/packages/python-xyz.scm | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 63b083cd9ba..a50b8905dcd 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -5218,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 From bb0eb543f7c70dea3da69e0b0afbc656a4f3e60a Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 15:26:56 +0100 Subject: [PATCH 053/148] gnu: python-taggd: Switch to pyproject, fix tests. * gnu/packages/bioinformatics.scm (python-taggd)[build-system]: Switch to pyproject-build-system. [arguments] : Move skipping tests options here. : Remove 'disable-broken-tests; add 'remove-local-taggd. [propagated-inputs]: Remove python-setuptools. [native-inputs]: Add python-pytest and python-setuptools. Change-Id: I8cd3a72b2469dbb0d53c21f2fda30c0b004a6c8d --- gnu/packages/bioinformatics.scm | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ede8eb70b27..26847d6edcf 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -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 From 98ff2fbb5be88cfcff41d83447275b74595c11c5 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 15:34:19 +0100 Subject: [PATCH 054/148] gnu: urh: Fix bulid. * gnu/packages/radio.scm (urh)[native-inputs]: Remove python-cython and python-wheel; add python-cython-0 and python-setuptools. Change-Id: Ib3420be4077c9f86843e3ba3feb05cb95e80d727 --- gnu/packages/radio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm index 7dc4f65db79..c0a94836a8c 100644 --- a/gnu/packages/radio.scm +++ b/gnu/packages/radio.scm @@ -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 From 2078aeebe04826c4a1b33090482f863d9dd77844 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 15:41:15 +0100 Subject: [PATCH 055/148] gnu: vapoursynth: Fix build. * gnu/packages/video.scm (vapoursynth)[native-inputs]: Remove python-cython; add python-cython-0. Change-Id: Iaded25958277d0264f89a4966c9b070b5fae7945 --- gnu/packages/video.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 5d491abe403..fd0f07acc6c 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3774,7 +3774,7 @@ capabilities.") (native-inputs (list autoconf automake - python-cython + python-cython-0 libtool pkg-config yasm)) From f2a5829a48b96e9fe821da038e80f6d0b12c3d54 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 16:01:26 +0100 Subject: [PATCH 056/148] gnu: python-google-auth-httplib2: Update to 0.2.0. * gnu/packages/python-web.scm (python-google-auth-httplib2): Update to 0.2.0. [build-system]: Switch to pyproject-build-system. [propagated-inputs]: Remove python-six. [native-inputs]: Remove python-mock; add python-pyparsing and python-setuptools. Change-Id: I5f8a3951fcd68bc7633f0450ec706a871c5f4590 --- gnu/packages/python-web.scm | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 9febc615004..4bde4500ae6 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -7635,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") From 32f6942001fdbffb0a1965ae7fc3556e423f1eae Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 16:04:17 +0100 Subject: [PATCH 057/148] gnu: python-google-pasta: Fix tests. * gnu/packages/python-xyz.scm (python-google-pasta)[native-inputs]: Remove python-wheel; add python-pytest. Change-Id: Ie0436d9735aabd02b9f58f17d64e6167cd5d744f --- gnu/packages/python-xyz.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index a50b8905dcd..90fa4dc868d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -17730,7 +17730,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 From 5b24f580a0b7ff3d779dcd5b6c2857079037ca2b Mon Sep 17 00:00:00 2001 From: Hugo Buddelmeijer Date: Tue, 23 Sep 2025 15:32:27 +0200 Subject: [PATCH 058/148] gnu: qpageview: Update to 1.0.1. * gnu/packages/image-viewers.scm (qpageview): Update to 1.0.1. [build-system]: Switch to pyproject-build-system. [inputs]: Remove python-pyqt and qtbase-5; add python-pyqt-6 and qtbase. [native-inputs]: Add python-hatchling. [synopsis, description]: Replace Qt5 by Qt. Change-Id: I7b316a38d2d90359725417f068e6ba84c7345091 Signed-off-by: Andreas Enge --- gnu/packages/image-viewers.scm | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index e4157e0b073..6d292fa9c24 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -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+))) From 8bbf7324f3c0ec906c6acb6a8b0cd9b2a373688f Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 18:45:42 +0100 Subject: [PATCH 059/148] gnu: python-circe: Disable tests. * gnu/packages/bioinformatics.scm (python-circe)[arguments] : Tests hang during collection then timeout. [native-inputs]: Remove python-wheel. Change-Id: Ibd9adf352c733626627f73ecad01205bcc80a44c --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 26847d6edcf..e8fb0e2d5a4 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -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. From 6892f496896271c7901ca6fd91547b9de643ccb2 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 21:10:11 +0100 Subject: [PATCH 060/148] gnu: python-wxpython: Fix tests. * gnu/packages/wxwidgets.scm (python-wxpython)[arguments] : Use 'custom. : Provide them. [native-inputs]: Remove python-wheel. Change-Id: I062b47773737b1aac38847c1b956991a14edbe0e --- gnu/packages/wxwidgets.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/wxwidgets.scm b/gnu/packages/wxwidgets.scm index 3f5fcbb07c9..d7fb7543d8f 100644 --- a/gnu/packages/wxwidgets.scm +++ b/gnu/packages/wxwidgets.scm @@ -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/") From dc2ba915334ba599003cef788d8854118defff85 Mon Sep 17 00:00:00 2001 From: Hugo Buddelmeijer Date: Tue, 23 Sep 2025 20:10:38 +0200 Subject: [PATCH 061/148] gnu: python-dbus-fast: Update to 2.44.3. * gnu/packages/python-xyz.scm (python-dbus-fast): Update to 2.44.3. [source]: Switch to git-fetch; PyPI does not have tests. [arguments] : Disable tests needing python_codspeed or access dbus. [native-inputs]: Remove python-wheel; add python-pytest, python-pytest-cov, python-pytest-asyncio, and python-covdefaults. Change-Id: I36b16866bd3a7a17b4468db411d60e702d526d69 Signed-off-by: Sharlatan Hellseher --- gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++------ 1 file changed, 24 insertions(+), 6 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 90fa4dc868d..fbd4ae3c2ff 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -39294,16 +39294,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.") From 045079199a7680b5b91fb9b1d4a051e5b1a9fae8 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 21:42:55 +0100 Subject: [PATCH 062/148] gnu: python-suntime: Fix tests. * gnu/packages/astronomy.scm (python-suntime)[source]: Switch to git-fetch providing tests. [arguments] : Provide the path to the test file. [native-inputs]: Remove python-wheel; add python-pytest. Change-Id: Ia00f4940d6e398996eaa67689ff1d804533d2729 --- gnu/packages/astronomy.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 5ab59035b41..1d56773c353 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -9034,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") From 896111cf234d63b4cd8e84088ba621484965e87d Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Tue, 23 Sep 2025 22:03:49 +0100 Subject: [PATCH 063/148] gnu: python-asap3: Update to 3.13.9. * gnu/packages/python-science.scm (python-asap3): Update to 3.13.9. [arguments] : Disable them for now. [propagated-inputs]: Add python-numpy. [native-inputs]: Remove python-wheel. Change-Id: Ifc7bcbb7cd7a2001038a1ae65b59e1da0978a349 --- gnu/packages/python-science.scm | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm index 3283c66c563..d068b3c0b9e 100644 --- a/gnu/packages/python-science.scm +++ b/gnu/packages/python-science.scm @@ -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 From 9b29b236ab233646ff513b068eb75b0c8545d93a Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 14:07:08 +0900 Subject: [PATCH 064/148] gnu: ffmpeg: Update to 6.1.2. * gnu/packages/video.scm (ffmpeg): Update to 6.1.2. Change-Id: I32ee4ff66f3e8dcf87dbfb373252859bdb1c86d6 --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index fd0f07acc6c..ee32815b7a3 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1864,14 +1864,14 @@ audio/video codec library.") (define-public ffmpeg (package (inherit ffmpeg-7) - (version "6.1.1") + (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")))) From dcf870b788ff180d0d2568582aa511e2c65e6c98 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sat, 12 Jul 2025 23:08:16 +0900 Subject: [PATCH 065/148] gnu: ffmpeg-7: Enable vulkan support. * gnu/packages/video.scm (ffmpeg-7) [native-inputs]: Add vulkan-headers. [inputs]: Add shaderc, spirv-tools and vulkan-loader. [configure-flags]: Add --enable-libshaderc and --enable-vulkan. Change-Id: I469b013f6fc4d85a86004615948d3a03c9c3efde --- gnu/packages/video.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index ee32815b7a3..5095dc676f4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1654,7 +1654,7 @@ operate properly.") version ".tar.xz")) (sha256 (base32 - "12dkv17mrsdqrm70c30azjw7qi1lfxca7xisw81x6flacddm2il6")))) + "1c837agaw8ljhjx6ndp2w7hffi2mkb22vnmb8v0fbfqdbqwq8fbk")))) (outputs '("out" "debug")) (build-system gnu-build-system) (inputs @@ -1685,13 +1685,16 @@ operate properly.") mesa openal pulseaudio + shaderc sdl2 soxr speex + spirv-tools srt svt-av1 twolame vidstab + vulkan-loader x265 xvid zlib))) @@ -1701,6 +1704,7 @@ operate properly.") pkg-config texinfo speex + vulkan-headers yasm)) (arguments (list @@ -1775,6 +1779,7 @@ operate properly.") #$@(if (this-package-input "rav1e") '("--enable-librav1e") '()) + "--enable-libshaderc" "--enable-libsoxr" "--enable-libspeex" "--enable-libsrt" @@ -1792,6 +1797,7 @@ operate properly.") "--enable-opengl" "--enable-libdrm" "--enable-vaapi" + "--enable-vulkan" "--enable-runtime-cpudetect" From d8e098fb50bb22c80c4b5e65450555e4c8d996f0 Mon Sep 17 00:00:00 2001 From: 45mg <45mg.writes@gmail.com> Date: Tue, 4 Mar 2025 17:32:59 +0530 Subject: [PATCH 066/148] gnu: ffmpeg-7: Update to 7.1.1. * gnu/packages/video.scm (ffmpeg-7): Update to 7.1.1. [phases] {configure}: Don't expect a space in shebang lines; the spaces were removed in FFmpeg commit 67e2f8b6bf5a44fa8083f90096de6131601879b4. [native-inputs]: Replace yasm with nasm. Change-Id: If774bae60713009d7267332959388002bc47daed Signed-off-by: Maxim Cournoyer --- gnu/packages/video.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 5095dc676f4..2874ea4ec21 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1647,7 +1647,7 @@ operate properly.") (define-public ffmpeg-7 (package (name "ffmpeg") - (version "7.0.2") + (version "7.1.1") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" @@ -1705,7 +1705,7 @@ operate properly.") texinfo speex vulkan-headers - yasm)) + nasm)) (arguments (list #:test-target "fate" @@ -1842,7 +1842,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 From 4e424143a239515ef7866213fd5a235c3b5ff719 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 00:40:04 +0900 Subject: [PATCH 067/148] gnu: ffmpeg-7: Enable libplacebo support. * gnu/packages/video.scm (ffmpeg-7) [inputs]: Add libplacebo. [configure-flags]: Add --enable-libplacebo. Change-Id: Ib46d46505417b63d44d28369662617e8ebbf9098 --- gnu/packages/video.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 2874ea4ec21..e250207f822 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1674,6 +1674,7 @@ operate properly.") libcaca libcdio-paranoia libdrm + libplacebo libtheora libva libvdpau @@ -1775,6 +1776,7 @@ operate properly.") "--enable-libfreetype" "--enable-libmp3lame" "--enable-libopus" + "--enable-libplacebo" "--enable-libpulse" #$@(if (this-package-input "rav1e") '("--enable-librav1e") From c90aff0961fd320bdb82c46fc6eff3281c46306c Mon Sep 17 00:00:00 2001 From: Jesse Gibbons Date: Tue, 21 Jul 2020 00:08:46 -0600 Subject: [PATCH 068/148] gnu: ffmpeg-7: Add support for libgme. * gnu/packages/video.scm (ffmpeg-7) [inputs]: Add libgme. [configure-flags]: Add "--enable-libgme". Change-Id: I7af4c2cc3af78a808f3d9b8f8e485d666692701a Signed-off-by: Maxim Cournoyer --- gnu/packages/video.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index e250207f822..77fd1316c0c 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1674,6 +1674,7 @@ operate properly.") libcaca libcdio-paranoia libdrm + libgme libplacebo libtheora libva @@ -1721,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] @@ -1774,6 +1774,7 @@ operate properly.") "--enable-libcdio" "--enable-libdav1d" "--enable-libfreetype" + "--enable-libgme" "--enable-libmp3lame" "--enable-libopus" "--enable-libplacebo" From 6d29c0442eb7782d4fe9989ccf31190d29fc315a Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:11:52 +0900 Subject: [PATCH 069/148] gnu: wayland-protocols: Update to 1.45. * gnu/packages/freedesktop.scm (wayland-protocols): Update to 1.45. Change-Id: I6855e59a86dec111b45c0e87d6e3fabe62880aa9 --- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index ca107180ac5..d4cac694edf 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1504,7 +1504,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 +1513,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)) From 1c2f5c7fef4ef66ca36177bbb67f562953c0e2ba Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:18:24 +0900 Subject: [PATCH 070/148] gnu: spirv-headers: Update to 1.4.313.0. * gnu/packages/vulkan.scm (spirv-headers): Update to 1.4.313.0. Change-Id: Id20c09fad12aad12ca3dd045af0369f63a5ef49d --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 53e6e9d4b1d..b44914573fd 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -53,7 +53,7 @@ (define-public spirv-headers (package (name "spirv-headers") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) @@ -62,7 +62,7 @@ (commit (string-append "vulkan-sdk-" version)))) (sha256 (base32 - "15l35w60sbw1i3a48057hvpvldf0lrlfmkz73bp456g2jn5vln23")) + "1ndbzcqq337gs5nkh0yf1lz1n5sdanc06aqqrwl8l9ggdpp2sj3d")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From 5558627ca6c77aedc864600783a13d5fff895dcd Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:18:32 +0900 Subject: [PATCH 071/148] gnu: spirv-tools: Update to 1.4.313.0. * gnu/packages/vulkan.scm (spirv-tools): Update to 1.4.313.0. Change-Id: Id436a37723e3fbc75525877f66bbf092b19db8db --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index b44914573fd..48fb9a20aae 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -85,7 +85,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.313.0") (source (origin (method git-fetch) @@ -93,7 +93,7 @@ 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 "0s1v894024bmhqjp4pk7706j0vaxm8chxz6nk6vgasrf24wq8v4w")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From b143868b813c37a41715724e080ca32b1ce47bd4 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:21:12 +0900 Subject: [PATCH 072/148] gnu: glslang: Update to 1.4.313.0. * gnu/packages/vulkan.scm (glslang): Update to 1.4.313.0. Change-Id: Ie3a4168dc4d62846b68b9a1f417edebf7224134f --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 48fb9a20aae..8924f809bfb 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -212,7 +212,7 @@ translation between LLVM IR and SPIR-V.") (define-public glslang (package (name "glslang") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) @@ -221,7 +221,7 @@ translation between LLVM IR and SPIR-V.") (commit (string-append "vulkan-sdk-" version)))) (sha256 (base32 - "0kzzjh2dxzkznp75jk9sl4fjjgdy5s6xr8vha9av6cvi3jxm2i8y")) + "1b3znvbvbhcnzcab221pj99zs60905fmkhav856f00vflbh4y08z")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From bd3a4bebc8c3576b098a85901aac87d7d353e24d Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:35:19 +0900 Subject: [PATCH 073/148] gnu: spirv-cross: Update to 1.4.313.0. * gnu/packages/vulkan.scm (spirv-cross): Update to 1.4.313.0. Change-Id: Idee2fa8bd45d2510990bb0d6ab1f9352094693ef --- gnu/packages/vulkan.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 8924f809bfb..3a95a7c3a69 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2024 James Smith ;;; Copyright © 2025 John Kehayias +;;; Copyright © 2025 Maxim Cournoyer ;;; ;;; This file is part of GNU Guix. ;;; @@ -117,7 +118,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.313.0") (source (origin (method git-fetch) @@ -125,7 +126,7 @@ 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 "1h246sy4hxpb5yw0a34b2bhd5qrrvflqrgr20n0058f6aigggxj6")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From 9ed9adb3fc4fb35d409e665f0635565a889e4ccd Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:37:25 +0900 Subject: [PATCH 074/148] gnu: vulkan-utility-libraries: Update to 1.4.313. * gnu/packages/vulkan.scm (vulkan-utility-libraries): Update to 1.4.313. Change-Id: Ie7cbeb3393fb3d33859bf3983385961e072025ec --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 3a95a7c3a69..cf7d8cfafa3 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -726,7 +726,7 @@ storage.") (define-public vulkan-utility-libraries (package (name "vulkan-utility-libraries") - (version "1.4.309.0") + (version "1.4.313") (source (origin (method git-fetch) @@ -734,7 +734,7 @@ storage.") (url "https://github.com/KhronosGroup/Vulkan-Utility-Libraries") (commit (string-append "vulkan-sdk-" version)))) (sha256 - (base32 "1ihk95gjszk9yn3r6xvda83qp7f463m86srj6cq43z01sk2naxkr")) + (base32 "0gymlk0qz2k2970gyrijvk749zw49ffhc25zxqhzsgxxar8vhq1j")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From bffa5fe56f4a9065035e7a950f4f7cba1c640d3b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:37:59 +0900 Subject: [PATCH 075/148] gnu: shaderc: Update to 2025.3. * gnu/packages/vulkan.scm (shaderc): Update to 2025.3. Change-Id: If5ac7736ba1f32ddd24aaba45e179768aa37558f --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index cf7d8cfafa3..c707d088289 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -484,7 +484,7 @@ API.") (package (name "shaderc") ;; shaderc doesn't follow the versioning scheme of vulkan sdk - (version "2025.1") + (version "2025.3") (source (origin (method git-fetch) @@ -494,7 +494,7 @@ 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 From 82f661c08ce2be26cc33e72552c5f3e8036d12f4 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:38:41 +0900 Subject: [PATCH 076/148] gnu: vulkan-headers: Update to 1.4.313.0. * gnu/packages/vulkan.scm (vulkan-headers): Update to 1.4.313.0. Change-Id: Ibed13fb472f5511a8e73625df19058e05b87d78a --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index c707d088289..e40d045815a 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -318,7 +318,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (define-public vulkan-headers/no-loader (package (name "vulkan-headers") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) @@ -328,7 +328,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (file-name (git-file-name name version)) (sha256 (base32 - "0ncj4gqb5zmkgmd205frrq8rxxdqlissqpj2fq3wxkdbdyx7pwid")))) + "0mfmdxip5sxf2mc0b7vg80hc7mcc9ygg9mgdjfd113czg1079fvi")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; No tests. From 14279c99870d51d088e2f6aa2d3a50a3f2e9f156 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Sun, 13 Jul 2025 23:39:21 +0900 Subject: [PATCH 077/148] gnu: vulkan-loader: Update to 1.4.313.0. * gnu/packages/vulkan.scm (vulkan-loader): Update to 1.4.313.0. Change-Id: I5a969aab936ae40a7694dcc0d92e158d8375290a --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index e40d045815a..7f270702304 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -362,7 +362,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (define-public vulkan-loader (package (name "vulkan-loader") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) @@ -372,7 +372,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (file-name (git-file-name name version)) (sha256 (base32 - "1y6wqc8adzg7ndmbr95nzhcxf93qsfndfdnsym5pkbjfx454151d")))) + "1ycwgz012098xhgi8an7jy3n755k5j47v18wpq62sikldz4j7qh9")))) (build-system cmake-build-system) (arguments (list From fdabc99137d60f36b0aaa4bb7f7a2f2570a3acb7 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 17 Jul 2025 15:30:05 +0900 Subject: [PATCH 078/148] gnu: vulkan-tools: Update to 1.4.313.0. * gnu/packages/vulkan.scm (vulkan-tools): Update to 1.4.313.0. Change-Id: Ic96b91a364836a312a1d5f5d58fd2978ac50522a --- gnu/packages/vulkan.scm | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 7f270702304..1c64343c9bd 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -443,13 +443,13 @@ and the ICD.") (define-public vulkan-tools (package (name "vulkan-tools") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/KhronosGroup/Vulkan-Tools") - (commit (string-append "vulkan-sdk-" version)))) + (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" @@ -458,19 +458,20 @@ and the ICD.") "// ASSERT_EQ(std::string(driver_properties.driverInfo)"))) (sha256 (base32 - "0ywvvkra29y2cvw8i9laf4skn6cl7phrwshcc7z9dljb3il87cym")))) + "152sl309k2lw38x6r15ddyf55dn1wc26pf1idd73nd5x2ax5bd73")))) (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"))))))) + (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") From d23fd90115d90d2833bc979cb255779f2bc7518d Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 17 Jul 2025 15:32:43 +0900 Subject: [PATCH 079/148] gnu: vulkan-validationlayers: Update to 1.4.313.0. * gnu/packages/vulkan.scm (vulkan-validationlayers): Update to 1.4.313.0. Change-Id: I122d61f1e931ec6624cbf96ed64f585ad92f4789 --- gnu/packages/vulkan.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 1c64343c9bd..8c44babb816 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -595,7 +595,7 @@ shader compilation.") (define-public vulkan-validationlayers (package (name "vulkan-validationlayers") - (version "1.4.309.0") + (version "1.4.313.0") (source (origin (method git-fetch) (uri (git-reference @@ -610,7 +610,7 @@ shader compilation.") ""))) (sha256 (base32 - "1dvgbgfxcp3ypy06j5m561j1gag0hk40zqd477cdv1kizv6i7nsk")))) + "1q5nwpl3rinypxl78yz0viw1kvqb70j0a6wgjp89zx1g0bswkaqm")))) (build-system cmake-build-system) (inputs (list glslang libxrandr From 9b4411cc8f271a0f82ca6e1f55fd6d558c73758f Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 17 Jul 2025 15:32:54 +0900 Subject: [PATCH 080/148] gnu: mesa: Update to 25.1.5. * gnu/packages/gl.scm (mesa): Update to 25.1.5. Change-Id: Ic05db30a9c4d8ee8c165eb8455c245aa2e2afd85 --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 38c0f5be546..ab4d8c5038c 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.1.3") + (version "25.1.5") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.") "mesa-" version ".tar.xz"))) (sha256 (base32 - "0zxsvly6xjinaicgcf81ycljjjzy3mj0hqwf01b6sdgxnnnnrjzz")))) + "0qxklcar3pknnalkjgaf8mlwad3ddv6379vfxk851sbfzw86nkrw")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. From e4a61d98ba1823995f63dc3f4285afa9b3af65ca Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 17 Jul 2025 21:51:30 +0900 Subject: [PATCH 081/148] gnu: libplacebo: Update to 7.351.0. * gnu/packages/video.scm (libplacebo): Update to 7.351.0. Change-Id: I96b5c43f9269e3ce61390118269dadfcca0f3103 --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 77fd1316c0c..9a1af375c5e 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -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 From 2d3cef3ee955f3936b2236250bbd5ffa03414d22 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Fri, 18 Jul 2025 08:03:58 +0900 Subject: [PATCH 082/148] gnu: wayland: Update to 1.24.0. * gnu/packages/freedesktop.scm (wayland): Update to 1.24.0. [arguments] <#:parallel-tests?>: Delete. * gnu/packages/vulkan.scm (vulkan-tools) [source]: Apply patch. * gnu/packages/patches/vulkan-tools-wayland-1.24.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I321ec682423cc12f320e56156305992349b4b6c6 --- gnu/local.mk | 1 + gnu/packages/freedesktop.scm | 7 +- .../patches/vulkan-tools-wayland-1.24.patch | 100 ++++++++++++++++++ gnu/packages/vulkan.scm | 1 + 4 files changed, 105 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/patches/vulkan-tools-wayland-1.24.patch diff --git a/gnu/local.mk b/gnu/local.mk index 4fa5ca90d50..28a5777d2a3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2427,6 +2427,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 \ diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index d4cac694edf..7a8f713cdce 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -1453,7 +1453,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 +1461,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 _ diff --git a/gnu/packages/patches/vulkan-tools-wayland-1.24.patch b/gnu/packages/patches/vulkan-tools-wayland-1.24.patch new file mode 100644 index 00000000000..7d440c09caf --- /dev/null +++ b/gnu/packages/patches/vulkan-tools-wayland-1.24.patch @@ -0,0 +1,100 @@ +From f546743016f5301c063f2c50af0ea43dd2485ef4 Mon Sep 17 00:00:00 2001 +From: Charles Giessen +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 _LINK_LIBRARIES can have +more than one library name, the logic to assign _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); + } diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 8c44babb816..fa598a99d7f 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -456,6 +456,7 @@ and the ICD.") ;; 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)"))) + (patches (search-patches "vulkan-tools-wayland-1.24.patch")) (sha256 (base32 "152sl309k2lw38x6r15ddyf55dn1wc26pf1idd73nd5x2ax5bd73")))) From e4861d4218402862de6cd21efbb71d141de8ca23 Mon Sep 17 00:00:00 2001 From: Philipp Berger Date: Sun, 13 Jul 2025 06:06:45 +0200 Subject: [PATCH 083/148] gnu: mesa: Re-enable X11 protocol support for the DRI2 extension. Starting with Mesa 24.3, X11 protocol support for the DRI2 extension is no longer enabled by default. The developers are phasing it out in favor of DRI3, and have moved it into an optional 'legacy-x11' feature. Re-enable it to retain hardware acceleration on older systems that do not support DRI3. * gnu/packages/gl.el (mesa)[arguments]<#:configure-flags>: Add '-Dlegacy-x11=dri2'. Signed-off-by: John Kehayias --- gnu/packages/gl.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index ab4d8c5038c..a15f96fdf81 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -439,6 +439,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 From 970c2aeae535aef0ddc8745d6472bdceda71c649 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 27 Jul 2025 11:19:22 -0400 Subject: [PATCH 084/148] gnu: mesa: Update to 25.1.6. * gnu/packages/gl.scm (mesa): Update to 25.1.6. Change-Id: I42e6d33411aea3876d84477212f5e21fadcf2605 --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index a15f96fdf81..0d7e6dceb8b 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.1.5") + (version "25.1.6") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.") "mesa-" version ".tar.xz"))) (sha256 (base32 - "0qxklcar3pknnalkjgaf8mlwad3ddv6379vfxk851sbfzw86nkrw")))) + "116f712h9nwdmjxph9x3idqd7h70lgfqz1m961yp3n6j77mnjawz")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. From ea0515ddaadcc6fa14aace6009139119e9f59f6d Mon Sep 17 00:00:00 2001 From: Murilo Date: Thu, 24 Jul 2025 08:59:16 -0300 Subject: [PATCH 085/148] gnu: libinput: Update to 1.28.1. * gnu/packages/freedesktop.scm (libinput): Update to 1.28.1. Signed-off-by: John Kehayias --- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 7a8f713cdce..3f38b449561 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -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.28.1") (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")))) + "1kgdjxgx5dbrx21kp4x2azfffd96lhcry77pbddbpkw4643vkmwj")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false") From 73ca10dbc6f77ec6c7075e8fc1d056678a416d75 Mon Sep 17 00:00:00 2001 From: Murilo Date: Thu, 24 Jul 2025 09:01:38 -0300 Subject: [PATCH 086/148] gnu: hyprland: Build with libinput-minimal. * gnu/packages/wm.scm (hyprland)[inputs]: Change libinput-minimal-next to libinput-minimal. Signed-off-by: John Kehayias --- gnu/packages/wm.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 7b91e2b33a0..5130bf99a3e 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -428,7 +428,7 @@ loginctl commands (lock/unlock/before-sleep) and inhibit.") hyprland-qtutils hyprlang hyprutils - libinput-minimal-next + libinput-minimal libxcursor libxkbcommon mesa From 113ac9ca84e60c85246a464ad6ec4af3f459fa33 Mon Sep 17 00:00:00 2001 From: Murilo Date: Thu, 24 Jul 2025 09:00:17 -0300 Subject: [PATCH 087/148] gnu: Remove libinput-minimal-next. * gnu/packages/freedesktop.scm (libinput-minimal-next): Delete variable. Signed-off-by: John Kehayias --- gnu/packages/freedesktop.scm | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 3f38b449561..ff68f499c49 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -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") From 67cf1cc311ebd68e4e40ccace1a35c10d3f7be87 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 14:55:49 -0400 Subject: [PATCH 088/148] gnu: Add meson-1.8. * gnu/packages/build-tools.scm (meson-1.8): New variable. Change-Id: I9895780b41f659d73750519825e7340a1f2911f9 --- gnu/packages/build-tools.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index cae3673c8d4..74c74851787 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2024 Janneke Nieuwenhuizen ;;; Copyright © 2025 Aiden Isik ;;; Copyright © 2025 Josep Bigorra +;;; Copyright © 2025 John Kehayias ;;; ;;; This file is part of GNU Guix. ;;; @@ -344,6 +345,19 @@ files}, are written in a custom domain-specific language (@dfn{DSL}) that resembles Python.") (license license:asl2.0))) +(define-public meson-1.8 + (package + (inherit meson) + (version "1.8.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mesonbuild/meson/" + "releases/download/" version "/meson-" + version ".tar.gz")) + (sha256 + (base32 + "1gvs2mm6z2b4pgsv1d9gl7cm68gqvcr244nh5p63g8f01y8sl67i")))))) + (define-public meson-python (package (name "meson-python") From 05f9440f46c76eab5d77bb2b6d55ad9f0333a53b Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Thu, 7 Aug 2025 14:22:40 -0400 Subject: [PATCH 089/148] gnu: mesa: Update to 25.2.0. Note: this is not the first "stable" release, but making this available for testing as some configuration we used have been dropped upstream. * gnu/packages/gl.scm (mesa): Update to 25.2.0. [arguments]<#:meson>: Use meson-1.8. <#:configure-flags>: Remove osmesa and gallium-xa flags (no longer available). * gnu/packages/rust-crates.scm (mesa-cargo-inputs): Add rustc-hash. Change-Id: I36d59582b5d827f78040a248a54fd11e2f982393 --- gnu/packages/gl.scm | 7 +++---- gnu/packages/rust-crates.scm | 1 + 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 0d7e6dceb8b..3b5a5a22fb6 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.1.6") + (version "25.2.0") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.") "mesa-" version ".tar.xz"))) (sha256 (base32 - "116f712h9nwdmjxph9x3idqd7h70lgfqz1m961yp3n6j77mnjawz")))) + "0kwdpl87v4damasg3rvw9453qbs286vkimjks8qlvlblq0hnnwkw")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. @@ -384,6 +384,7 @@ also known as DXTn or DXTC) for Mesa.") (outputs '("out" "bin")) (arguments (list + #:meson meson-1.8 #:configure-flags #~(list #$@(cond @@ -406,8 +407,6 @@ 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" diff --git a/gnu/packages/rust-crates.scm b/gnu/packages/rust-crates.scm index f415c06fd4e..17a8b93ae66 100644 --- a/gnu/packages/rust-crates.scm +++ b/gnu/packages/rust-crates.scm @@ -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))) From 06203f7413b2b82b487f15328baaa05319d8f0ab Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Thu, 7 Aug 2025 14:50:21 -0400 Subject: [PATCH 090/148] gnu: libinput: Update to 1.29.0. * gnu/packages/freedesktop.scm (libinput): Update to 1.29.0. Change-Id: Ib54bd0d7202707852694f875c44c84b90589feac --- gnu/packages/freedesktop.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index ff68f499c49..9fe23829102 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -676,7 +676,7 @@ freedesktop.org project.") ;; Updating this will rebuild over 700 packages through libinput-minimal. (package (name "libinput") - (version "1.28.1") + (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 - "1kgdjxgx5dbrx21kp4x2azfffd96lhcry77pbddbpkw4643vkmwj")))) + "1kgr18p7n9bvim9bx24jbr5nwp6icla3bgzfskr04f68mirmx561")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false") From 333115f9bb299ae24b5f0e24c724720b86744044 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 10 Aug 2025 00:05:16 -0400 Subject: [PATCH 091/148] gnu: shaderc: Disable tests. The check phase started failing (after core-updates merge maybe?) as there are no tests since building them was previously disabled already. * gnu/packages/vulkan.scm (shaderc)[arguments]: Disable tests. Change-Id: Ibfa53bd30e90a3b4fd6b5bbed403b8a9aa615e9c --- gnu/packages/vulkan.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index fa598a99d7f..b0b64f95655 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -499,7 +499,8 @@ API.") "0w1mj5b3n6kp0brqindb7fppvllzlywkdk1zglkbj3bw8k0795mb")))) (build-system cmake-build-system) (arguments - `(;; FIXME: Skip most of the tests, because enabling system gtest breaks + `(#:tests? #f ; We don't build the tests, see below. + ;; FIXME: Skip most of the tests, because enabling system gtest breaks ;; the build: . #:configure-flags (list "-DSHADERC_SKIP_TESTS=ON" From 3aa19045e2771183221f3c5feaa490f8c86796b3 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Mon, 11 Aug 2025 21:34:34 -0400 Subject: [PATCH 092/148] gnu: ffmpeg@6: Fix build with gcc-14 on i686-linux. Without turning off this error, the build fails on some Vulkan related code. * gnu/packages/video.scm (ffmpeg)[arguments]<#:phases>: In relax-gcc-14-strictness phase, add -Wno-error=int-conversion to CFLAGS. Change-Id: I3b0d0f5cbc80aae7b4b164b9a17bd0d8804c9fdd --- gnu/packages/video.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 9a1af375c5e..0557e260c53 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1894,7 +1894,8 @@ audio/video codec library.") (setenv "CFLAGS" (string-append "-g -O2" - " -Wno-error=incompatible-pointer-types"))))))) + " -Wno-error=incompatible-pointer-types" + " -Wno-error=int-conversion"))))))) (package-arguments ffmpeg-7))))) (define-public ffmpeg-5 From 3bf0001fa85dcc20e67eac536553d975f664e788 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 12 Aug 2025 15:16:30 -0400 Subject: [PATCH 093/148] gnu: ffmpeg@4: Fix build. * gnu/packages/video.scm (ffmpeg-4)[arguments]: Add modules. <#:configure-flags>: Remove flags --enable-libplacebo and --enable-libshaderc. Change-Id: Ib3b69703f74601b1b632dd7f673c0235f1fb6c79 --- gnu/packages/video.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 0557e260c53..270044f158a 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1936,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 From 2a421099d463c101f9304a7d55387ca7281e944e Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Thu, 21 Aug 2025 14:08:43 -0400 Subject: [PATCH 094/148] gnu: mesa: Update to 25.2.1. * gnu/packages/gl.scm (mesa): Update to 25.2.1. Change-Id: I4ee0255e6208b282ccca139c56e051a08170e026 --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 3b5a5a22fb6..7a03bcdd4d0 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.2.0") + (version "25.2.1") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.") "mesa-" version ".tar.xz"))) (sha256 (base32 - "0kwdpl87v4damasg3rvw9453qbs286vkimjks8qlvlblq0hnnwkw")))) + "192vjqf7g9k8v63cnw89b0n9cs0w2wlk0l7f97h4hpyki4hkf961")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. From 7ff28b97bd896bd0dd16664b15f8ff50e346a2e1 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 09:47:45 +0200 Subject: [PATCH 095/148] gnu: spirv-tools: Improve style. * gnu/packages/vulkan.scm (spirv-tools):[arguments]: Use Gexp. [native-inputs]: Remove python; add python-minimal. Change-Id: I91c66e8b196a00f9beb327e440f39d2675964f99 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index b0b64f95655..d4e41358923 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -98,15 +98,17 @@ and for the GLSL.std.450 extended instruction set. (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 From 2c8dfc38fc3e89e85e4111c1dded0074486449aa Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 09:54:27 +0200 Subject: [PATCH 096/148] gnu: spirv-cross: Improve style. * gnu/packages/vulkan.scm (spirv-cross)[arguments]: Use Gexp. [native-inputs]: Remove python; add python-minimal. Change-Id: Ia010d51736d099e4a0f983b79e2053bff6a63637 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 45 +++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index d4e41358923..0a8dfbc0f15 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -132,30 +132,31 @@ parser,disassembler, validator, and optimizer for SPIR-V.") (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: - ;; . - #: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: + ;; . + #: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 From 1b9c7e32ef2ab52336dbe9cd941cb16598979a1f Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 09:56:12 +0200 Subject: [PATCH 097/148] gnu: glslang: Improve style. * gnu/packages/vulkan.scm (glslang)[arguments]: Use Gexp. [native-inputs]: Remove python; add python-minimal. Change-Id: I7b4f236b984b85d12f76f9d8de2b627e005bd232 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 51 ++++++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 0a8dfbc0f15..c430184486f 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -229,32 +229,35 @@ translation between LLVM IR and SPIR-V.") (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 From 2944b896b41d6954877b32eaafa99275379842db Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 10:26:57 +0200 Subject: [PATCH 098/148] gnu: vulkan-loader: Improve style. * gnu/packages/vulkan.scm (vulkan-loader): Fix max column. Change-Id: I613ef9c8b87200168af3ab4c0379b0c8b2d09c58 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 50 +++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 24 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index c430184486f..15a032538ca 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -394,31 +394,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 From e3eb2af7a8e911e60acb06b27af26605be18b413 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 11:39:13 +0200 Subject: [PATCH 099/148] gnu: vulkan-validationlayers: Improve style. * gnu/packages/vulkan.scm (vulkan-validationlayers): Fix max column. Change-Id: I3a79acbc7c4a36105e27a6dfaba028094a5d5232 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 56 ++++++++++++++++++++++------------------- 1 file changed, 30 insertions(+), 26 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 15a032538ca..7c69cf214fa 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -631,39 +631,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 From 28c058b1659c4f644fb3ec49b81f6da27b3ad67f Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 8 Aug 2025 10:28:02 +0200 Subject: [PATCH 100/148] gnu: vulkan-tools: Improve style. * gnu/packages/vulkan.scm (vulkan-tools): Fix max column. Change-Id: Ibae23e8eaed1fa6c3f0ea593b4c64330e4037a94 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 7c69cf214fa..a4790d6a684 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -460,11 +460,11 @@ and the ICD.") (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)"))) - (patches (search-patches "vulkan-tools-wayland-1.24.patch")) + (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 "152sl309k2lw38x6r15ddyf55dn1wc26pf1idd73nd5x2ax5bd73")))) From b173178b4539fa52233e75a1da3f4142e3112988 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Sun, 24 Aug 2025 10:37:26 +0200 Subject: [PATCH 101/148] gnu: shaderc: Improve style. * gnu/packages/vulkan.scm (shaderc)[arguments]: Use G-Expressions. Change-Id: Ifa7b303c173a5093fa7733fa67e09eab1b39d8bd Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 71 ++++++++++++++++++++--------------------- 1 file changed, 35 insertions(+), 36 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index a4790d6a684..8c4df348174 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -507,42 +507,41 @@ API.") "0w1mj5b3n6kp0brqindb7fppvllzlywkdk1zglkbj3bw8k0795mb")))) (build-system cmake-build-system) (arguments - `(#:tests? #f ; We don't build the tests, see below. - ;; FIXME: Skip most of the tests, because enabling system gtest breaks - ;; the build: . - #: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" - (("\\$") - (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: . + #: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" + (("\\$") + (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 From 2d51b77ab843bb760c3ecb089c7730fb145d10d0 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Sun, 24 Aug 2025 10:12:07 +0200 Subject: [PATCH 102/148] gnu: vulkan: Update to 1.4.321.0. * gnu/packages/vulkan.scm (spirv-headers, spirv-tools, spirv-cross, glslang, vulkan-headers, vulkan-loader, vulkan-tools, vulkan-validationlayers, vulkan-utility-libraries): Update to 1.4.321.0. Change-Id: Ia19d8cdec3c3a904326d869a58c6348d4f5c5215 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 113 +++++++++++++++++++++------------------- 1 file changed, 59 insertions(+), 54 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 8c4df348174..3632b395d08 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2024 James Smith ;;; Copyright © 2025 John Kehayias ;;; Copyright © 2025 Maxim Cournoyer +;;; Copyright © 2025 Cayetano Santos ;;; ;;; This file is part of GNU Guix. ;;; @@ -54,7 +55,7 @@ (define-public spirv-headers (package (name "spirv-headers") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -63,7 +64,7 @@ (commit (string-append "vulkan-sdk-" version)))) (sha256 (base32 - "1ndbzcqq337gs5nkh0yf1lz1n5sdanc06aqqrwl8l9ggdpp2sj3d")) + "11nsfr6z11dx6ccyi9anz2iycxr9i06zl8dk4pdllf3dvk5wq61d")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -86,7 +87,7 @@ and for the GLSL.std.450 extended instruction set. (define-public spirv-tools (package (name "spirv-tools") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -94,7 +95,7 @@ and for the GLSL.std.450 extended instruction set. (url "https://github.com/KhronosGroup/SPIRV-Tools") (commit (string-append "vulkan-sdk-" version)))) (sha256 - (base32 "0s1v894024bmhqjp4pk7706j0vaxm8chxz6nk6vgasrf24wq8v4w")) + (base32 "015xymrzch87f3xkzx9rvlglqp39zx4vphjb2dkl5w6qcpz5s1y8")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -120,7 +121,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.") (define-public spirv-cross (package (name "spirv-cross") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -128,7 +129,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.") (url "https://github.com/KhronosGroup/SPIRV-Cross") (commit (string-append "vulkan-sdk-" version)))) (sha256 - (base32 "1h246sy4hxpb5yw0a34b2bhd5qrrvflqrgr20n0058f6aigggxj6")) + (base32 "13fci6z74bxm8pbb3plchx31r04yzb4g11dbzcw3337dsgdllqma")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -216,7 +217,7 @@ translation between LLVM IR and SPIR-V.") (define-public glslang (package (name "glslang") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -225,7 +226,7 @@ translation between LLVM IR and SPIR-V.") (commit (string-append "vulkan-sdk-" version)))) (sha256 (base32 - "1b3znvbvbhcnzcab221pj99zs60905fmkhav856f00vflbh4y08z")) + "1b0zsrv12b34q0wp9g85x11kpd5kjvx4lbn7xv8b4szfpwdkxxxh")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -324,7 +325,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (define-public vulkan-headers/no-loader (package (name "vulkan-headers") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -334,7 +335,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (file-name (git-file-name name version)) (sha256 (base32 - "0mfmdxip5sxf2mc0b7vg80hc7mcc9ygg9mgdjfd113czg1079fvi")))) + "1kamn5hw5lpw4yxyri4mlrryzhn33bnnrqby0yxla45z5f5f6fb3")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; No tests. @@ -368,7 +369,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (define-public vulkan-loader (package (name "vulkan-loader") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -378,7 +379,7 @@ Enhanced Subpixel Morphological Anti-Aliasing (file-name (git-file-name name version)) (sha256 (base32 - "1ycwgz012098xhgi8an7jy3n755k5j47v18wpq62sikldz4j7qh9")))) + "0fbpypznznvwkqgf2zw85xdpbiq92j95xyldhnjk94lia6bs4klb")))) (build-system cmake-build-system) (arguments (list @@ -449,46 +450,50 @@ and the ICD.") license:bsd-3)))) (define-public vulkan-tools - (package - (name "vulkan-tools") - (version "1.4.313.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 - "152sl309k2lw38x6r15ddyf55dn1wc26pf1idd73nd5x2ax5bd73")))) - (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 + ;; 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 @@ -604,7 +609,7 @@ shader compilation.") (define-public vulkan-validationlayers (package (name "vulkan-validationlayers") - (version "1.4.313.0") + (version "1.4.321.0") (source (origin (method git-fetch) (uri (git-reference @@ -619,7 +624,7 @@ shader compilation.") ""))) (sha256 (base32 - "1q5nwpl3rinypxl78yz0viw1kvqb70j0a6wgjp89zx1g0bswkaqm")))) + "1lmkcgz80386304s6kr4fi825r5004305fhvfc7gmsqdih0bqcv9")))) (build-system cmake-build-system) (inputs (list glslang libxrandr @@ -740,7 +745,7 @@ storage.") (define-public vulkan-utility-libraries (package (name "vulkan-utility-libraries") - (version "1.4.313") + (version "1.4.321.0") (source (origin (method git-fetch) @@ -748,7 +753,7 @@ storage.") (url "https://github.com/KhronosGroup/Vulkan-Utility-Libraries") (commit (string-append "vulkan-sdk-" version)))) (sha256 - (base32 "0gymlk0qz2k2970gyrijvk749zw49ffhc25zxqhzsgxxar8vhq1j")) + (base32 "1xj860z596p2wgdfc5yr15q0hasz8p4ci6x0j1wim7jklp92g89i")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments From 4e3f8c0ed94accaf41778651eb537317b18dc20b Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Sun, 24 Aug 2025 10:59:35 +0200 Subject: [PATCH 103/148] gnu: vkd3d: Improve style. * gnu/packages/vulkan.scm (vkd3d)[arguments]: Use G-Expressions. [native-inputs]: Modernize. Change-Id: I29d558f777f3bd56e55e8e5872ca7fa291081b0d Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 91 +++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 45 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 3632b395d08..2037273d3a9 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -560,51 +560,52 @@ 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 From 6285c37dadf68c30ee3beaa48b52a6d5b8eef157 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Mon, 25 Aug 2025 09:40:26 +0200 Subject: [PATCH 104/148] gnu: vulkan-memory-allocator: Update to 3.3.0. * gnu/packages/vulkan.scm (vulkan-memory-allocator)[arguments]: Use G-Expressions. Change-Id: I17030138801cb6d1b17cb849275dc0a0269daf4d Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 2037273d3a9..91d3e9b8048 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -717,7 +717,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) @@ -728,11 +728,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 From e6e3f693384fe15fe04bdb3bcd69de260510ae66 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Mon, 25 Aug 2025 10:34:02 +0200 Subject: [PATCH 105/148] gnu: spirv-llvm-translator: Update to 18.1.10. * gnu/packages/vulkan.scm (spirv-llvm-translator): Update to 18.1.10. [native-inputs]: Add libffi, pkg-config. Change-Id: Id7251c3594ae56533b0930f9ecd54d8db88b5ab6 Signed-off-by: Maxim Cournoyer --- gnu/packages/vulkan.scm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index 91d3e9b8048..5ab1feb4658 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -46,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) @@ -169,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) @@ -178,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: @@ -206,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 From dd9626dece22a3c6b9b30d8458cc94e1516bf88e Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 4 Sep 2025 11:34:32 +0900 Subject: [PATCH 106/148] gnu: mesa: Update to 25.2.2. * gnu/packages/gl.scm (mesa): Update to 25.2.2. Change-Id: Iad91783d151000f6a7e43ce5d59f4b9b38aedc45 --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 7a03bcdd4d0..255b4526243 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.2.1") + (version "25.2.2") (source (origin (method url-fetch) @@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.") "mesa-" version ".tar.xz"))) (sha256 (base32 - "192vjqf7g9k8v63cnw89b0n9cs0w2wlk0l7f97h4hpyki4hkf961")))) + "04j41qbc1qnf2iillyz1h5g7c1216x538f2msy7rs1589b6spms3")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. From d98a0890aacddc806faa99d524284385b629a96b Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Thu, 4 Sep 2025 11:46:56 +0900 Subject: [PATCH 107/148] gnu: ffmpeg: Update to 8.0. * gnu/packages/video.scm (ffmpeg-7): Replace with... (ffmpeg): ... this updated version. (ffmpeg): Adjust to use ffmpeg. (ffmpeg-jami): Stay on ffmpeg-6. * gnu/packages/tor-browsers.scm (make-torbrowser): Likewise. * gnu/packages/python-xyz.scm (python-av): Likewise. * gnu/packages/qt.scm (qtmultimedia): Likewise. Change-Id: I2d7b1861a647f583da93fe230fd0734742671d4d --- gnu/packages/python-xyz.scm | 3 +- gnu/packages/qt.scm | 2 +- gnu/packages/tor-browsers.scm | 2 +- gnu/packages/video.scm | 515 +++++++++++++++++----------------- 4 files changed, 261 insertions(+), 261 deletions(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index fbd4ae3c2ff..931353dba52 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13157,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 diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 3ad2181530b..5a1dd7762cd 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -2117,7 +2117,7 @@ Vulkan, OpenGL and other main graphic APIs.") vulkan-headers)) (inputs (list alsa-lib - ffmpeg + ffmpeg-6 glib libxkbcommon libxrandr diff --git a/gnu/packages/tor-browsers.scm b/gnu/packages/tor-browsers.scm index ddd34a9f3e1..3473829855f 100644 --- a/gnu/packages/tor-browsers.scm +++ b/gnu/packages/tor-browsers.scm @@ -240,7 +240,7 @@ Browser.") libxcomposite libxt libffi - ffmpeg-7 + ffmpeg libvpx icu4c pixman diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 270044f158a..5ce8cbf9e3a 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -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.1.1") + (version "8.0") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "1c837agaw8ljhjx6ndp2w7hffi2mkb22vnmb8v0fbfqdbqwq8fbk")))) + "13kvs9rh5mp21gx64hdj0jlnz6q5c6spik8kh5q7fk6cnv61yxdj")))) (outputs '("out" "debug")) (build-system gnu-build-system) (inputs @@ -1870,9 +1870,9 @@ 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) + (inherit ffmpeg) (version "6.1.2") (source (origin (method url-fetch) @@ -1886,7 +1886,7 @@ audio/video codec library.") "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 @@ -1896,7 +1896,7 @@ audio/video codec library.") (string-append "-g -O2" " -Wno-error=incompatible-pointer-types" " -Wno-error=int-conversion"))))))) - (package-arguments ffmpeg-7))))) + (package-arguments ffmpeg))))) (define-public ffmpeg-5 (package @@ -2009,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 - ;; . - ;; 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 + ;; . + ;; 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 From ea1606543e91feb9b3e906b1e3905b7bab66fa6b Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 9 Sep 2025 17:24:32 -0400 Subject: [PATCH 108/148] gnu: pixman: Update to 0.46.4. Upstream no longer uses autotools so we build with meon-build-system now. The configure flag to not build a static output is no longer supported and even though it was used previously, there was still a static library built. Finally, the gnuplot configure flag is also removed, per . * gnu/packages/xdisorg.scm (pixman): Update to 0.46.4. [build-system]: Switch to meson-build-system. [arguments]<#:configure-flags>: Rewrite with gexp and for meson. Remove "--disable-static" as it is not a supported flag. Remove "--enable-gnuplot" flag. [inputs, native-inputs]: Remove. [home-page]: Use https URL. Change-Id: I6bc17761ce96de9ef17bb8b420b8570d1ea11e07 --- gnu/packages/xdisorg.scm | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 88d06c98f8c..8a00ba8498d 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -53,7 +53,7 @@ ;;; Copyright © 2021 ikasero ;;; Copyright © 2021 Felix Gruber ;;; Copyright © 2021, 2025 jgart -;;; Copyright © 2022, 2024 John Kehayias +;;; Copyright © 2022, 2024, 2025 John Kehayias ;;; Copyright © 2022 Jai Vetrivelan ;;; Copyright © 2022 Derek Chuank ;;; Copyright © 2022, 2023 Wamm K. D. @@ -902,31 +902,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 From 571c10c85b8513dd2f7c476d87a0ae3cd4af2978 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 9 Sep 2025 17:34:09 -0400 Subject: [PATCH 109/148] gnu: wget: Ungraft. * gnu/packages/wget.scm (wget): Update to 1.25.0. [replacement]: Remove. (wget/fixed): Remove. Change-Id: Ib3798d67bc293295a0480e2db36de98e1ce7edea --- gnu/packages/wget.scm | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 8e36fea6de9..eec6bea4ed6 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen ;;; Copyright © 2021 Michael Rohleder +;;; Copyright © 2025 John Kehayias ;;; ;;; 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") From b66a09c539da2e8d318e6ebb3c2b0d8202e64efa Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 9 Sep 2025 17:37:36 -0400 Subject: [PATCH 110/148] gnu: gtk+: Ungraft. * gnu/packages/gtk.scm (gtk+): Update to 3.24.43. [replacement]: Remove. [source]: Use git-fetch. [arguments]<#:phases>: Add some test to disable-failing-tests phase. (gtk+/fixed): Remove. Change-Id: Ia34ac538f36424748e0a813cfc4e0dad2d643d0b --- gnu/packages/gtk.scm | 77 ++++++++++++++------------------------------ 1 file changed, 24 insertions(+), 53 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 002bbe17fef..2899b4bc699 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -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,17 @@ 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: + ;; ). + (substitute* "testsuite/reftests/meson.build" + ((" 'flipping-icons.ui',.*") "") + ((" 'gtk-icontheme-sizing.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 +1134,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: - ;; ). - (substitute* "testsuite/reftests/meson.build" - ((" 'flipping-icons.ui',.*") "") - ((" 'gtk-icontheme-sizing.ui',.*") "")))))))))) - (define-public gtk (package (name "gtk") From 57b2442944466579db3bb0041de1e1f30e956e49 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 9 Sep 2025 17:45:29 -0400 Subject: [PATCH 111/148] gnu: rest: Ungraft. * gnu/packages/gnome.scm (rest)[replacement]: Remove. [propagated-inputs]: Replace libxml2 with libxml2-next-for-grafting. (rest/fixed): Remove. Change-Id: Ib203ef0697419558c0be0ba2e844293aa20a6061 --- gnu/packages/gnome.scm | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 0870496001b..e5c07bfa16b 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5019,7 +5019,6 @@ files.") (define-public rest (package - (replacement rest/fixed) (name "rest") (version "0.8.1") (source (origin @@ -5039,7 +5038,7 @@ files.") (list `(,glib "bin") gobject-introspection pkg-config)) (propagated-inputs ;; rest-0.7.pc refers to all these. - (list glib libsoup-minimal-2 libxml2)) + (list glib libsoup-minimal-2 libxml2-next-for-grafting)) (home-page "https://www.gtk.org/") (synopsis "RESTful web api query library") (description @@ -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) From c4fa062000da71ced8fce8a8ada263da25f2267a Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Thu, 11 Sep 2025 16:51:08 -0400 Subject: [PATCH 112/148] gnu: libxml2: Update to 2.14.6; deprecate python-libxml2. Python bindings for libxml2 are now built as part of libxml2; remove all python-libxml2 inputs for libxml2 (nearly all already had libxml2) and deprecate the package. This was done manually using git grep python-libxml2 gnu/packages to find affected packages and then check all their input fields. With the update to libxml2, we can remove all the libxml2-next* variants. This change was automated with: git grep -rl libxml2-next | xargs sed -i 's/\(libxml2-next\|libxml2-next-for-grafting\)/libxml2/g' * gnu/packages/xml.scm (libxml2): Update to 2.14.6. [arguments]<#:phases>: Add configure-python phase (from python-libxml2). [native-inputs]: Add pkg-config and python-minimal. (libxml2-next, libxml2-next/fixed, libxml2-next-for-grafting): Remove. (python-libxml2): Deprecate in favor of libxml2. Change-Id: I2976f2fde086e9bc345d661edbdc125abbb7a753 --- gnu/packages/augeas.scm | 2 +- gnu/packages/bioinformatics.scm | 2 +- gnu/packages/elf.scm | 2 +- gnu/packages/engineering.scm | 3 +- gnu/packages/freedesktop.scm | 2 +- gnu/packages/gl.scm | 1 - gnu/packages/glib.scm | 4 +- gnu/packages/gnome.scm | 32 ++--- gnu/packages/gtk.scm | 2 +- gnu/packages/image-processing.scm | 2 +- gnu/packages/libreoffice.scm | 8 +- gnu/packages/mate.scm | 2 +- gnu/packages/messaging.scm | 2 +- .../patches/python-libxml2-utf8.patch | 16 +-- gnu/packages/rdesktop.scm | 3 +- gnu/packages/virtualization.scm | 4 +- gnu/packages/vpn.scm | 2 +- gnu/packages/xml.scm | 110 ++++-------------- 18 files changed, 63 insertions(+), 136 deletions(-) diff --git a/gnu/packages/augeas.scm b/gnu/packages/augeas.scm index 0b3233e960e..8a784f48175 100644 --- a/gnu/packages/augeas.scm +++ b/gnu/packages/augeas.scm @@ -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") diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e8fb0e2d5a4..4d10f4329df 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -23605,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") diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index 40558a4c6ca..0b435993ef4 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -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 diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 98974799832..aa9b20f2a3d 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -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/") diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 9fe23829102..c3746b4f950 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -2324,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 diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 255b4526243..ae2abd3bd1f 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -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 diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 8347359a846..acdf9268cda 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -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) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e5c07bfa16b..5eceb70752d 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -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.") @@ -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/") @@ -5038,7 +5038,7 @@ files.") (list `(,glib "bin") gobject-introspection pkg-config)) (propagated-inputs ;; rest-0.7.pc refers to all these. - (list glib libsoup-minimal-2 libxml2-next-for-grafting)) + (list glib libsoup-minimal-2 libxml2)) (home-page "https://www.gtk.org/") (synopsis "RESTful web api query library") (description @@ -5200,7 +5200,7 @@ as OpenStreetMap, OpenCycleMap, OpenAerialMap and Maps.") libpsl nghttp2 ;for pkg-config `(,nghttp2 "lib") - libxml2-next-for-grafting + libxml2 sqlite zlib)) (inputs @@ -6008,7 +6008,7 @@ service via the system message bus.") (list gtk+ gdk-pixbuf json-glib - libxml2-next-for-grafting + libxml2 libsoup geocode-glib)) (inputs @@ -6127,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") @@ -8112,7 +8112,7 @@ to display dialog boxes from the commandline and shell scripts.") libxext libxfixes libxkbcommon - libxml2-next-for-grafting + libxml2 libxrandr mesa pango @@ -8938,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 @@ -13875,7 +13875,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 diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 2899b4bc699..e9bdb59964f 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -613,7 +613,7 @@ diagrams.") fribidi glib gtk - libxml2-next + libxml2 pango pcre2)) (home-page "https://wiki.gnome.org/Projects/GtkSourceView") diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index 9f2f1afd454..520ceeb0d8f 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -815,7 +815,7 @@ the OpenCV-Python library.") libpng (librsvg-for-system) libtiff - libxml2-next + libxml2 libwebp matio openexr diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index a0b3cd353ae..a23b980bdf6 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -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") diff --git a/gnu/packages/mate.scm b/gnu/packages/mate.scm index 5b6ea6d21b2..1c9a759c7e9 100644 --- a/gnu/packages/mate.scm +++ b/gnu/packages/mate.scm @@ -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 diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 26ea6d55fe7..65de945b71d 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -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.") diff --git a/gnu/packages/patches/python-libxml2-utf8.patch b/gnu/packages/patches/python-libxml2-utf8.patch index e39672faa1b..9c4ca4fdb29 100644 --- a/gnu/packages/patches/python-libxml2-utf8.patch +++ b/gnu/packages/patches/python-libxml2-utf8.patch @@ -6,18 +6,18 @@ that 'itstool' stumbles upon when processing UTF-8 data: Patch by Jan Matejek from . ---- 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 . - 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); diff --git a/gnu/packages/rdesktop.scm b/gnu/packages/rdesktop.scm index d341c59e629..bfb0bb82b55 100644 --- a/gnu/packages/rdesktop.scm +++ b/gnu/packages/rdesktop.scm @@ -252,8 +252,7 @@ of parts of the Windows API.") linux-pam openssl pixman - python - python-libxml2)) + python)) (native-inputs (append (list bison diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index bdc4ebf41ff..ba5730540ad 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -1774,7 +1774,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 +1900,8 @@ virtualization library.") libosinfo libvirt libvirt-glib + libxml2 python-minimal - python-libxml2 python-libvirt python-pycairo python-pygobject diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index f961feab3de..6d07462f4d3 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -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 diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index b7482bfbe97..20cb0e0bc85 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -37,6 +37,7 @@ ;;; Copyright © 2024 Nicolas Graves ;;; Copyright © 2024 gemmaro ;;; Copyright © 2025 Antoine Côté +;;; Copyright © 2025 John Kehayias ;;; ;;; This file is part of GNU Guix. ;;; @@ -192,15 +193,16 @@ hierarchical form with variable field lengths.") (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 +220,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 +254,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,58 +263,6 @@ 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))))) - (define-public libxml2-xpath0 (package/inherit libxml2 (name "libxml2-xpath0") @@ -320,34 +277,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 @@ -1256,7 +1186,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 From 10a30b2879db95ce09029180836aa755b5e6a435 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Thu, 11 Sep 2025 22:13:53 -0400 Subject: [PATCH 113/148] gnu: libx11: Update to 1.8.12. * gnu/packages/xorg.scm (libx11): Update to 1.8.12. Change-Id: I42986033bde1534e09a0f027c3599ed4142ff9c0 --- gnu/packages/xorg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index c3c3a70339d..30a7b5e9d1a 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -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 From 4c983af43230bfba4daddb9e8d0020c714010ea6 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Fri, 12 Sep 2025 17:09:54 -0400 Subject: [PATCH 114/148] gnu: coreutils: Skip a test. This test fails on btrfs more generally, not only on hurd. * gnu/packages/base.scm (coreutils)[arguments]<#:phases>: Skip the reflink-auto test unconditionally. Change-Id: I27c4750f848a6b4c3c251614d95aefe41efe5d81 --- gnu/packages/base.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 51a06c5413e..2b3367d5b2b 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -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 From bee25d710f95b4765edd04e9d3719d26875b9885 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Fri, 12 Sep 2025 17:12:47 -0400 Subject: [PATCH 115/148] gnu: libxslt: Update to 1.1.43 [security-fixes]. The following CVEs were fixed: - CVE-2025-24855: Fix use-after-free of XPath context node - CVE-2024-55549: Fix UAF related to excluded namespaces Additionally, a patch from Debian for generated IDs and reproduciblity no longer applies cleanly and is likely problematic or (partially?) unneeded. See for the latest. * gnu/packages/xml.scm (libxslt): Update to 1.1.43. (source): Remove patch. * gnu/packages/patches/libxslt-generated-ids.patch: Delete it. * gnu/local.mk (dist_patch_DATA): Unregister it. Change-Id: Ia10d906bab090792d28524beda6aca79a5a21684 --- gnu/local.mk | 1 - .../patches/libxslt-generated-ids.patch | 173 ------------------ gnu/packages/xml.scm | 5 +- 3 files changed, 2 insertions(+), 177 deletions(-) delete mode 100644 gnu/packages/patches/libxslt-generated-ids.patch diff --git a/gnu/local.mk b/gnu/local.mk index 28a5777d2a3..9a92b15f045 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1786,7 +1786,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 \ diff --git a/gnu/packages/patches/libxslt-generated-ids.patch b/gnu/packages/patches/libxslt-generated-ids.patch deleted file mode 100644 index 1cd2363d6aa..00000000000 --- a/gnu/packages/patches/libxslt-generated-ids.patch +++ /dev/null @@ -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 */ - }; - - /** diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 20cb0e0bc85..5dec5d157a7 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -324,7 +324,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" @@ -332,8 +332,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 From 5f225ac614c7c8fecc630931a5772672ab85e1ba Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Fri, 12 Sep 2025 17:18:50 -0400 Subject: [PATCH 116/148] gnu: automake: Skip some tests. These tests fail for unknown reasons locally (even on master, without the changes from this mesa-updates branch) though presumably pass on some machines since there are substitutes available. It appears to be non-deterministic. See discussion at . * gnu/packages/autotools.scm (automake)[arguments]<#:phases>: Skip some tests. Change-Id: I87099386483efdbb62e42251298f0995f3967179 --- gnu/packages/autotools.scm | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm index 7c36ff22c94..84f2444004e 100644 --- a/gnu/packages/autotools.scm +++ b/gnu/packages/autotools.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2020, 2023, 2024, 2025 Janneke Nieuwenhuizen ;;; Copyright © 2021 Maxim Cournoyer ;;; Copyright © 2022 Marius Bakke +;;; Copyright © 2025 John Kehayias ;;; ;;; 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) From b83ba77e7bd423f9c29746d0ce1be16c13e37be8 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Tue, 16 Sep 2025 14:52:54 -0400 Subject: [PATCH 117/148] gnu: python-lxml: Update to 6.0.1. * gnu/packages/xml.scm (python-lxml): Update to 6.0.1. Change-Id: Iab60f97a74c804e17fd2f2adf326d8a098c06ef0 --- gnu/packages/xml.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 5dec5d157a7..e0415ece471 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -1866,13 +1866,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 From 283f5e972bea653d8444a9e8b13a4f881c36e9e0 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 13 Sep 2025 01:56:32 -0400 Subject: [PATCH 118/148] gnu: doxygen: Update to 1.14.0. * gnu/packages/documentation.scm (doxygen): Update to 1.14.0. [arguments]<#:phases>: Rename disable-bibtex-test to disable-some-tests and disable a failing test (reported upstream). Change-Id: I2402138cb20916601adbc88ba9a769520d673f7f --- gnu/packages/documentation.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gnu/packages/documentation.scm b/gnu/packages/documentation.scm index 0eebedd5034..bda8ba8baf6 100644 --- a/gnu/packages/documentation.scm +++ b/gnu/packages/documentation.scm @@ -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 + ;; . + "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"))) From 656f4d512adf8d02b88df1484df1536e5b5725aa Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 13 Sep 2025 14:49:55 -0400 Subject: [PATCH 119/148] gnu: cups: Update to 2.4.14 [security-fixes]. Fixes CVE-2025-58060 and CVE-2025-58364. * gnu/packages/cups.scm(cups): Update to 2.4.14. [source]: Drop unneeded patch. * gnu/packages/patches/cups-minimal-Address-PPD-injection-issues.patch: Remove it. * gnu/local.mk (dist_patch_DATA): Deregister it. Change-Id: I719e568716c8739aca16c6ebc29f50c7d2ac83bc --- gnu/local.mk | 1 - gnu/packages/cups.scm | 6 +- ...minimal-Address-PPD-injection-issues.patch | 529 ------------------ 3 files changed, 3 insertions(+), 533 deletions(-) delete mode 100644 gnu/packages/patches/cups-minimal-Address-PPD-injection-issues.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9a92b15f045..9bc5b0255d4 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1137,7 +1137,6 @@ 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/cura-engine-gcc-14.patch \ %D%/packages/patches/curl-CVE-2024-8096.patch \ %D%/packages/patches/curl-use-ssl-cert-env.patch \ diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index fcc63f3cad5..7f9cedd2f24 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2025 Lukas Gradl ;;; Copyright © 2025 Antoine Côté ;;; Copyright © 2024 Janneke Nieuwenhuizen +;;; Copyright © 2025 John Kehayias ;;; ;;; 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,7 @@ 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")))) (build-system gnu-build-system) (arguments (list #:configure-flags diff --git a/gnu/packages/patches/cups-minimal-Address-PPD-injection-issues.patch b/gnu/packages/patches/cups-minimal-Address-PPD-injection-issues.patch deleted file mode 100644 index b6cf94c0854..00000000000 --- a/gnu/packages/patches/cups-minimal-Address-PPD-injection-issues.patch +++ /dev/null @@ -1,529 +0,0 @@ -From 373924d728b61cf6dec9c8a1a1edeb4b9f342529 Mon Sep 17 00:00:00 2001 -From: Tobias Geerinckx-Rice -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: \"<>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: \"<>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 - From 8c892aaaf86416f3962e8536c4da49b56c7e55c1 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 14 Sep 2025 17:49:37 -0400 Subject: [PATCH 120/148] gnu: libxkbcommon: Update to 1.11.0. * gnu/packages/xdisorg.scm (libxkbcommon): Update to 1.11.0. [source]: Use git-fetch instead of url-fetch. [native-inputs]: Add xorg-server-for-tests and xkbcomp. Reformat. [arguments]<#:configure-flags>: Add flag to enable docs. (libxkbcommon-1.5, libxkbcommon-1.8): Remove variables. * gnu/packages/terminals.scm (foot)[inputs]: Use libxkbcommon instead of libxkbcommon-1.8. Change-Id: I0e4ce4cab04c059916ea7dddd31d2780c7b49b26 --- gnu/packages/terminals.scm | 2 +- gnu/packages/xdisorg.scm | 69 ++++++++++++-------------------------- 2 files changed, 23 insertions(+), 48 deletions(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 7d9b2db9406..8021652dbcd 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -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 diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 8a00ba8498d..82ed070d402 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -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") From 2d5a5a6f7e8b5242c12e90b4e658a14b009e1638 Mon Sep 17 00:00:00 2001 From: Sergey Trofimov Date: Tue, 1 Jul 2025 16:28:47 +0200 Subject: [PATCH 121/148] gnu: cups: Don't enforce root ownership on supplementary files. Printers managed by CUPS might require supplementary files to function, such as color profiles or filters. CUPS checks permissions on such files to prevent the execution of unsafe code. One of the conditions-that the files are owned by root-must be short-circuited on Guix, because this condition cannot be met on a system with an unprivileged daemon (where store files are owned by `guix-daemon`). * gnu/packages/patches/cups-relax-root-ownership-check.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/cups.scm (cups)[source]: Include it. Change-Id: I77f67f996d057a34bd018ab97cda54577060b0c3 Signed-off-by: John Kehayias --- gnu/local.mk | 1 + gnu/packages/cups.scm | 3 +- .../cups-relax-root-ownership-check.patch | 34 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/cups-relax-root-ownership-check.patch diff --git a/gnu/local.mk b/gnu/local.mk index 9bc5b0255d4..3be10c4462b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1137,6 +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-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 \ diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 7f9cedd2f24..5bed0580316 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -332,7 +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 "1dk5salizxy1qm19gw93ffdd34hsn1cd4s57nwl7nfhwwirkiri2")))) + (base32 "1dk5salizxy1qm19gw93ffdd34hsn1cd4s57nwl7nfhwwirkiri2")) + (patches (search-patches "cups-relax-root-ownership-check.patch")))) (build-system gnu-build-system) (arguments (list #:configure-flags diff --git a/gnu/packages/patches/cups-relax-root-ownership-check.patch b/gnu/packages/patches/cups-relax-root-ownership-check.patch new file mode 100644 index 00000000000..f24461153d8 --- /dev/null +++ b/gnu/packages/patches/cups-relax-root-ownership-check.patch @@ -0,0 +1,34 @@ +From 943e44dafa192b54fadcbb24f5f87d62a22c9f84 Mon Sep 17 00:00:00 2001 +From: Sergey Trofimov +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 From c381ecf8f80a377276b3484c03c9de4cfd8b1fa2 Mon Sep 17 00:00:00 2001 From: Dariqq Date: Sat, 19 Jul 2025 07:19:37 +0000 Subject: [PATCH 122/148] build-system: meson: Set default wrap-mode to nofallback. Fixes guix/guix#1162. This solves two issues: Not having to wait for the network timeout (same as the nodownload) option and also disabling meson to fall back to predownloaded subprojects. If desired, this behaviour can be overridden by adding --wrap-mode=MODE to #:configure-flags. * guix/build/meson-build-system.scm (configure): Add --wrap-mode=nofallback. Change-Id: Ibf1d6ac60a4c47cd71574a96ceb8773e6d8cf60b (cherry picked from commit fe8dded27f15b7052a4161be4690f6d943b93aff) --- guix/build/meson-build-system.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/guix/build/meson-build-system.scm b/guix/build/meson-build-system.scm index d11a5d8e18e..b84a77c0f59 100644 --- a/guix/build/meson-build-system.scm +++ b/guix/build/meson-build-system.scm @@ -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=" From d1ea32886d79984fd8d2873717ef4da6261aab98 Mon Sep 17 00:00:00 2001 From: Maxim Cournoyer Date: Mon, 28 Jul 2025 19:17:24 +0900 Subject: [PATCH 123/148] build-system/meson: Make build verbose. It's useful to see the link directives and other options passed to the compiler when debugging build issues. * guix/build/meson-build-system.scm (build): Invoke ninja with its --verbose option. Change-Id: Iab11eeb29351a1d6a954576e3a916e2d536058d9 (cherry picked from commit d9b9670b0573cdfba93afbb0ea8453d164a73ac7) --- guix/build/meson-build-system.scm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/guix/build/meson-build-system.scm b/guix/build/meson-build-system.scm index b84a77c0f59..d8be1f3faa2 100644 --- a/guix/build/meson-build-system.scm +++ b/guix/build/meson-build-system.scm @@ -76,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) From 9bb44fd30de526bd5b2a3dcea285aeacc1f49eee Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Mon, 23 Jun 2025 20:05:01 +0100 Subject: [PATCH 124/148] gnu: meson: Update to 1.9.0. * gnu/packages/build-tools.scm (meson): Update to 1.9.0. [build-system]: Use pyproject. [native-inputs]: Add python-setuptools. [#:phases]: Adjust 'wrap phase for pyproject-build-system. (meson-1.8): Remove variable. * gnu/packages/gl.scm (mesa)[arguments]: Remove #:meson. Co-authored-by: Liliana Marie Prikler Co-authored-by: Dariqq Change-Id: I31932f24d1a54b8c79987296daaeb5a5285a8344 Signed-off-by: Liliana Marie Prikler Co-authored-by: John Kehayias (cherry picked from commit 3bcc621b2f4be2f75aaf2d8fa175f4f8df4f5688) --- gnu/packages/build-tools.scm | 33 +++++++++++---------------------- gnu/packages/gl.scm | 1 - 2 files changed, 11 insertions(+), 23 deletions(-) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 74c74851787..62b383179db 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -309,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/" @@ -317,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 @@ -328,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 @@ -345,19 +347,6 @@ files}, are written in a custom domain-specific language (@dfn{DSL}) that resembles Python.") (license license:asl2.0))) -(define-public meson-1.8 - (package - (inherit meson) - (version "1.8.3") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mesonbuild/meson/" - "releases/download/" version "/meson-" - version ".tar.gz")) - (sha256 - (base32 - "1gvs2mm6z2b4pgsv1d9gl7cm68gqvcr244nh5p63g8f01y8sl67i")))))) - (define-public meson-python (package (name "meson-python") diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index ae2abd3bd1f..fdeaee7e79d 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -383,7 +383,6 @@ also known as DXTn or DXTC) for Mesa.") (outputs '("out" "bin")) (arguments (list - #:meson meson-1.8 #:configure-flags #~(list #$@(cond From 11445763b4e96d0c75c49988ff4086a63908e9df Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Wed, 17 Sep 2025 23:20:37 -0400 Subject: [PATCH 125/148] gnu: mesa: Update to 25.2.3. * gnu/packages/gl.scm (mesa): Update to 25.2.3. Change-Id: I28cee586fc49ba5aad9fa362260357e96d76977f --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index fdeaee7e79d..4214f102a8d 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "25.2.2") + (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 - "04j41qbc1qnf2iillyz1h5g7c1216x538f2msy7rs1589b6spms3")))) + "1y5lj9zy2hfvx9ji1rvsjapmzap7mpp5i3pf2yfcpmpica2v5mpj")))) (build-system meson-build-system) (propagated-inputs ;; The following are in the Requires.private field of gl.pc. From 94abeb33d048aeb00eaed10fe18f7da95691baf0 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Thu, 4 Sep 2025 18:03:53 +0200 Subject: [PATCH 126/148] mesa: Re-enable dependency fallbacks. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gl.scm (mesa)[#:configure-flags]: Add “--wrap-mode=nodownload”. (cherry picked from commit f0b058a54140fec3d2bb35a86496929d04a833c1) --- gnu/packages/gl.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 4214f102a8d..60c3a094f4b 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -410,6 +410,7 @@ panfrost,r300,r600,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl,zink")) "-Dgles2=enabled" "-Dgbm=enabled" "-Dshared-glapi=enabled" + "--wrap-mode=nodownload" ; XXX: disable #$@(cond ((target-x86-32?) From 1b41809cbf77c4e9af19f2b0f71770b4cd78f425 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 01:24:42 -0400 Subject: [PATCH 127/148] gnu: inkscape/pinned: Fix build. * gnu/packages/inkscape.scm (inkscape/pinned)[source]: Add patch. * gnu/packages/patches/inkscape-libxml2.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I90394818c66093e8989a32905ddc69dad117f8c7 --- gnu/local.mk | 1 + gnu/packages/inkscape.scm | 2 ++ gnu/packages/patches/inkscape-libxml2.patch | 33 +++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 gnu/packages/patches/inkscape-libxml2.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3be10c4462b..df58fef4ba3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1602,6 +1602,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 \ diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index b1b03928d06..a06e61294f1 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2020 Boris A. Dekshteyn ;;; Copyright © 2020 Ekaitz Zarraga ;;; Copyright © 2023, 2024 Efraim Flashner +;;; Copyright © 2025 John Kehayias ;;; ;;; 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 diff --git a/gnu/packages/patches/inkscape-libxml2.patch b/gnu/packages/patches/inkscape-libxml2.patch new file mode 100644 index 00000000000..dc5b0f53460 --- /dev/null +++ b/gnu/packages/patches/inkscape-libxml2.patch @@ -0,0 +1,33 @@ +From 694d8ae43d06efff21adebf377ce614d660b24cd Mon Sep 17 00:00:00 2001 +From: Christian Hesse +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 ++#include + #include + #include + +-- +GitLab + From 8391d893fba6a6893ff415199df33b0492f8aa29 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 15:08:00 -0400 Subject: [PATCH 128/148] gnu: gtk-doc: Fix test. * gnu/packages/gtk.scm (gtk-doc)[source]: Add patch. * gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: Ie1cc25bbef294755534db00380b880719c9ee9ff --- gnu/local.mk | 1 + gnu/packages/gtk.scm | 5 +-- .../patches/gtk-doc-mkhtml-test-fix.patch | 33 +++++++++++++++++++ 3 files changed, 37 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index df58fef4ba3..392197e6fe0 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1552,6 +1552,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 \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index e9bdb59964f..f36ce2e791b 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -36,7 +36,7 @@ ;;; Copyright © 2023 Sergiu Ivanov ;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2023, 2025 Janneke Nieuwenhuizen -;;; Copyright © 2024 John Kehayias +;;; Copyright © 2024, 2025 John Kehayias ;;; Copyright © 2025 Florian Pelz ;;; Copyright © 2025 Remco van 't Veer ;;; @@ -2341,7 +2341,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 diff --git a/gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch b/gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch new file mode 100644 index 00000000000..b6adbbba8e7 --- /dev/null +++ b/gnu/packages/patches/gtk-doc-mkhtml-test-fix.patch @@ -0,0 +1,33 @@ +From 951743698610eaaa0cc9030f7d7d02437419ac24 Mon Sep 17 00:00:00 2001 +From: Neil Hanlon +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 +--- + 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 + From e8b19037a8436170e72e9fc97980cb0216b061c9 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 15:37:49 -0400 Subject: [PATCH 129/148] gnu: mariadb: Update to 10.11.14. * gnu/packages/databases.scm (mariadb): Update to 10.11.14. Change-Id: Iea635acff6b89f9be23f0ce4ba255ef322eb8643 --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 547016c85ab..c5d90d900d2 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -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 From 7edbb2937c2e4a48f8cf26109fe3049ef582af21 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 17:38:53 -0400 Subject: [PATCH 130/148] gnu: librsvg-2.40: Fix build. * gnu/packages/gnome.scm (librsvg-2.40)[inputs]: Replace libxml2 with libxml2-2.11. * gnu/packages/xml.scm (libxml2-2.11): New variable. (libxml2): Remove outdated comment. Change-Id: I7080f39aab81ca104836b64dd1f7c10d14157e81 --- gnu/packages/gnome.scm | 2 +- gnu/packages/xml.scm | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5eceb70752d..beaab2df2b0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -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)) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index e0415ece471..2b38ed9d03f 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -189,7 +189,6 @@ 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") @@ -263,6 +262,24 @@ hierarchical form with variable field lengths.") project (but it is usable outside of the Gnome platform).") (license license:x11))) +;; 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 (name "libxml2-xpath0") From fed32ecdf8e2fd46c960290c7a752e6f11f4eb34 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sat, 20 Sep 2025 23:37:04 -0400 Subject: [PATCH 131/148] gnu: gtk+: Fix build on i686-linux. Looks like the (graft) update to gtk+ to 3.24.49 never built on i686-linux due to a failing test. It is unclear why, but since we use an old librsvg on this platform compared to x86_64, that is a major difference in the build/tests. * gnu/packages/gtk.scm (gtk+)[arguments]<#:phases>: Skip the linear-gradient on i686-linux. Change-Id: I61e2fccaeaa92889c5519ad7845483f0e6a6715f --- gnu/packages/gtk.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index f36ce2e791b..b1193ff4205 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1107,7 +1107,12 @@ application suites.") ;; ). (substitute* "testsuite/reftests/meson.build" ((" 'flipping-icons.ui',.*") "") - ((" 'gtk-icontheme-sizing.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)) From 3dcf4d1d8e597b237299d655fd214d37cdc7f469 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 21 Sep 2025 12:03:14 -0400 Subject: [PATCH 132/148] gnu: liblangtag: Update to 0.6.7. * gnu/packages/libreoffice.scm (liblangtag): Update to 0.6.7. Change-Id: I53a382d3c5784240a941c85f3efc29612655b4df --- gnu/packages/libreoffice.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index a23b980bdf6..60fcac40691 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -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)) From 464023ad9a404cbd253fe9d342c464e0ddce28e9 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 21 Sep 2025 15:16:32 -0400 Subject: [PATCH 133/148] gnu: raptor2: Fix build. * gnu/packages/rdf.scm (raptor2)[source]: Add patch. * gnu/packages/patches/raptor2-libxml2.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I690a6a9120692f81f68e20e3b0fdc96f04fbfb32 --- gnu/local.mk | 1 + gnu/packages/patches/raptor2-libxml2.patch | 30 ++++++++++++++++++++++ gnu/packages/rdf.scm | 3 ++- 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/raptor2-libxml2.patch diff --git a/gnu/local.mk b/gnu/local.mk index 392197e6fe0..6ded59d9012 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -2223,6 +2223,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 \ diff --git a/gnu/packages/patches/raptor2-libxml2.patch b/gnu/packages/patches/raptor2-libxml2.patch new file mode 100644 index 00000000000..605301ca0fd --- /dev/null +++ b/gnu/packages/patches/raptor2-libxml2.patch @@ -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 +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 */ + diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index ad6ec7921e5..609cae6d50b 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -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)) From 9a17b7ca601d237abceec3fb9e99e2c36249f1db Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 21 Sep 2025 15:30:17 -0400 Subject: [PATCH 134/148] gnu: libzmf: Fix build with newer doxygen. * gnu/packages/libreoffice.scm (libzmf)[source]: Add patch. * gnu/packages/patches/libzmf-doxygen-1.14.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: Iced77d86eb5ed92d379cc9668182299dd865a5d4 --- gnu/local.mk | 1 + gnu/packages/libreoffice.scm | 21 ++++++++++--- .../patches/libzmf-doxygen-1.14.patch | 30 +++++++++++++++++++ 3 files changed, 48 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/patches/libzmf-doxygen-1.14.patch diff --git a/gnu/local.mk b/gnu/local.mk index 6ded59d9012..99810a3b1c6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1675,6 +1675,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 \ diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 60fcac40691..24edbfba4de 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -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 diff --git a/gnu/packages/patches/libzmf-doxygen-1.14.patch b/gnu/packages/patches/libzmf-doxygen-1.14.patch new file mode 100644 index 00000000000..46d05a2549d --- /dev/null +++ b/gnu/packages/patches/libzmf-doxygen-1.14.patch @@ -0,0 +1,30 @@ +From 48f94abff2fcc4943626a62c6180c60862288b08 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Fridrich=20=C5=A0trba?= +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 + From 9986b7cd64baf4cc21489ac8e3692fa311b1011f Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 28 Jun 2025 09:52:08 +0200 Subject: [PATCH 135/148] gnu: gstreamer-docs: Update to 1.26.3. * gnu/packages/gstreamer.scm (gstreamer-docs): Update to 1.26.3. (cherry picked from commit 413d5f948b0fcfb1f69757599af77df37389bd21) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 454e6757f7e..a77a905b9d4 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -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)) From ab089c8e3aae3e23528075a6ade8ee53fa7f964f Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:42:03 +0200 Subject: [PATCH 136/148] gnu: gstreamer: Update to 1.26.3. * gnu/packages/gstreamer.scm (gstreamer): Update to 1.26.3. (cherry picked from commit 27ae993a066437e873a6adc3bb4d70e288659ec7) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index a77a905b9d4..d4f2402fa71 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -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) From 187dddba8016a69c5d1cf2b177b13c4f52742403 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:42:15 +0200 Subject: [PATCH 137/148] gnu: gst-plugins-base: Update to 1.26.3. * gnu/packages/gstreamer.scm (gst-plugins-base): Update to 1.26.3. (cherry picked from commit 8c82fb2fa3021b029e969529747668484320dae6) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index d4f2402fa71..d4201b0f7a6 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -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 From ad5afca1a2342fd68a557e9114e2b4226a35fd60 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:42:23 +0200 Subject: [PATCH 138/148] gnu: gst-plugins-good: Update to 1.26.3. * gnu/packages/gstreamer.scm (gst-plugins-good): Update to 1.26.3. (cherry picked from commit e154bdc69bc98acf702b5c45925f0aa96d99e4fa) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index d4201b0f7a6..bd7dc9a7d22 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -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 From f802bf2331d2a976f90f75b2468568b131602aaa Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:42:33 +0200 Subject: [PATCH 139/148] gnu: gst-plugins-bad: Update to 1.26.3. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gstreamer.scm (gst-plugins-bad): Update to 1.26.3. [adjust-tests]: Also disable “elements_vkcolorconvert” and “elements_vkupload”. (cherry picked from commit 82e2d85db5b1ee8cf617d2e4302a350ea6f08cf6) --- gnu/packages/gstreamer.scm | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index bd7dc9a7d22..c5a81a36f09 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -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. From 0dd0ecac7695bb66b6dedd2589b6ccaf4fcfd0ab Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:43:27 +0200 Subject: [PATCH 140/148] gnu: gst-plugins-ugly: Update to 1.26.3. * gnu/packages/gstreamer.scm (gst-plugins-ugly): Update to 1.26.3. (cherry picked from commit 2ecf2f0892dbc7e593b1047bd67a3dd75ca30b0f) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index c5a81a36f09..c9d86b98b71 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -958,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) @@ -966,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 From 5695fdf20bad4a9a5da95d36b15c1efa6cafb55d Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:43:37 +0200 Subject: [PATCH 141/148] gnu: gst-libav: Update to 1.26.3. * gnu/packages/gstreamer.scm (gst-libav): Update to 1.26.3. (cherry picked from commit 2c9e1edfe411613d2ccb2e7728709ba4eb61a2bb) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index c9d86b98b71..4c7aea178eb 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -1015,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) @@ -1024,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)) From 13c9c9e2cdcedc39205dda155db11bf14458d2d5 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 10:43:44 +0200 Subject: [PATCH 142/148] gnu: gst-editing-services: Update to 1.26.3. * gnu/packages/gstreamer.scm (gst-editing-services): Update to 1.26.3. (cherry picked from commit 64c4c8d384c868a0a07966019dc36fc356ecad92) --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 4c7aea178eb..9a51c63c2c5 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -1038,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 @@ -1046,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 From 96c443c12d51ab6e528c8422740376866c8f3407 Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 12:36:03 +0200 Subject: [PATCH 143/148] gnu: Add gst-rtsp-server. * gnu/packages/gstreamer.scm (gst-rtsp-server): New variable. (cherry picked from commit 2605aa6323351428b38115fb21d335b806fc70e9) --- gnu/packages/gstreamer.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 9a51c63c2c5..b2ab500a99e 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -1105,6 +1105,41 @@ 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") From ef1731447550ffaba4acd42b75e797272b49dd5a Mon Sep 17 00:00:00 2001 From: Liliana Marie Prikler Date: Sat, 12 Apr 2025 12:36:13 +0200 Subject: [PATCH 144/148] gnu: python-gst: Update to 1.26.3. * gnu/packages/gstreamer.scm (python-gst): Update to 1.26.3. [propagated-inputs]: Add gst-plugins-bad and gst-rtsp-server. (cherry picked from commit 71c8e360f63fa30196bdf84acf250689ab90e65f) --- gnu/packages/gstreamer.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index b2ab500a99e..74e72041add 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -1143,7 +1143,7 @@ RTSP connections and messages.") (define-public python-gst (package (name "python-gst") - (version "1.24.9") + (version "1.26.3") (source (origin (method url-fetch) (uri (string-append @@ -1151,7 +1151,7 @@ RTSP connections and messages.") "gst-python-" version ".tar.xz")) (sha256 (base32 - "0bplhfnvsi3l9fmfb346n2dvzi1jrxqpp4kcwiwsrjrlgic1vrl0")))) + "04hv5pj8br56knvw1nsx74j1lpxskbm6znsdqac28iszqjkvjhwk")))) (build-system meson-build-system) (arguments (list @@ -1167,7 +1167,10 @@ RTSP connections and messages.") (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 From c1989dd41112a82a36e137bdc5324c5f6ed47a91 Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Sun, 21 Sep 2025 20:36:17 -0400 Subject: [PATCH 145/148] gnu: tracker: Fix build (re-enable dependency fallbacks). * gnu/packages/gnome.scm (tracker)[arguments]<#:configure-flags>: Add "--wrap-mode=nodownload". Change-Id: I84a7cfb5cd301cde395e82863283e23bb364ac70 --- gnu/packages/gnome.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index beaab2df2b0..91bffecd4c0 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -9716,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 From b30296428b8fd6687702d328ec7531d49d971a4b Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Mon, 22 Sep 2025 00:46:58 -0400 Subject: [PATCH 146/148] gnu: libosinfo: Fix build with newer libxml2. * gnu/packages/virtualization.scm (libosinfo)[source]: Add patch. * gnu/packages/patches/libosinfo-libxml2-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I31377cf36b92562d9a87e6434cf30a01f5d3dcb2 --- gnu/local.mk | 1 + .../patches/libosinfo-libxml2-fix.patch | 83 +++++++++++++++++++ gnu/packages/virtualization.scm | 3 +- 3 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/libosinfo-libxml2-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index 99810a3b1c6..1f16f8889f6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1749,6 +1749,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 \ diff --git a/gnu/packages/patches/libosinfo-libxml2-fix.patch b/gnu/packages/patches/libosinfo-libxml2-fix.patch new file mode 100644 index 00000000000..71d620532c3 --- /dev/null +++ b/gnu/packages/patches/libosinfo-libxml2-fix.patch @@ -0,0 +1,83 @@ +From 0adf38535637ec668e658d43f04f60f11f51574f Mon Sep 17 00:00:00 2001 +From: Roman Bogorodskiy +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 +--- + 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 + diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index ba5730540ad..8050fb5bc68 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -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 From 944b2d4ad818bbdc8ddc5287bafb93fed8cf43cf Mon Sep 17 00:00:00 2001 From: John Kehayias Date: Mon, 22 Sep 2025 22:37:12 -0400 Subject: [PATCH 147/148] gnu: emacs-minimal: Fix test. The included patch is already done upstream, just after the 30.2 release. * gnu/packages/emacs.scm (emacs-minimal)[source]: Add patch. * gnu/packages/patches/emacs-zoom-image-test-fix.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. Change-Id: I0134ec90a03f8757b4247b5aea0853752b67daef --- gnu/local.mk | 1 + gnu/packages/emacs.scm | 3 ++- .../patches/emacs-zoom-image-test-fix.patch | 25 +++++++++++++++++++ 3 files changed, 28 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/emacs-zoom-image-test-fix.patch diff --git a/gnu/local.mk b/gnu/local.mk index 1f16f8889f6..fd70436db1a 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1229,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 \ diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index de1564b1e30..2b273ce3685 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -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" diff --git a/gnu/packages/patches/emacs-zoom-image-test-fix.patch b/gnu/packages/patches/emacs-zoom-image-test-fix.patch new file mode 100644 index 00000000000..b47cc4f800d --- /dev/null +++ b/gnu/packages/patches/emacs-zoom-image-test-fix.patch @@ -0,0 +1,25 @@ +From 462a541db904405ede8446c48ba0c71ad41c544d Mon Sep 17 00:00:00 2001 +From: Eli Zaretskii +Date: Thu, 17 Jul 2025 19:34:50 +0300 +Subject: [PATCH] ; * test/lisp/net/shr-tests.el (shr-test/zoom-image): Fix + (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 "" alt) ">"))) ++ (insert (format " Date: Tue, 23 Sep 2025 14:23:19 +0800 Subject: [PATCH 148/148] gnu: gegl: Fix build (re-enable dependency fallbacks). * gnu/packages/gimp.scm (gegl)[arguments]<#:configure-flags>: Add "--wrap-mode=nodownload". Change-Id: I25440fde9a7bd20692fda7fbc83818263535df4c Signed-off-by: John Kehayias --- gnu/packages/gimp.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index d5da671ada6..89fa08ca316 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -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 _