From 21467e43f1653ef28f692db83e1f27f3efe4ed18 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 30 Sep 2025 21:05:08 +0300 Subject: [PATCH 01/29] gnu: libinput-minimal: Fix build on 32-bit systems. * gnu/packages/freedesktop.scm (libinput)[arguments]: When building for a 32-bit system add a phase to fix the test suite. Change-Id: I9bb40e17cd83e61ff6a4cb7adf6b9a4685bd9246 --- gnu/packages/freedesktop.scm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index d5589fba198..b6083dadea3 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015-2017, 2019, 2021-2022, 2025 Ludovic Courtès ;;; Copyright © 2015, 2017, 2018, 2019, 2021, 2022, 2023 Ricardo Wurmus ;;; Copyright © 2015 David Hashe -;;; Copyright © 2016, 2017, 2019, 2021-2024 Efraim Flashner +;;; Copyright © 2016, 2017, 2019, 2021-2025 Efraim Flashner ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2017 Nikita ;;; Copyright © 2017, 2018 Mark H Weaver @@ -603,7 +603,16 @@ freedesktop.org project.") ;; XXX: Using 'debug' or 'debugoptimized' pulls in an additional test that ;; hangs, and the comments around it suggests that we should be using this ;; Meson target anyway. - #:build-type "release")) + #:build-type "release" + #:phases + ,@(if (target-64bit?) + `(%standard-phases) + `((modify-phases %standard-phases + ;; Backported from a commit after the 1.29.0 release. + (add-after 'unpack 'correct-value-type-in-atou64_test + (lambda _ + (substitute* "test/test-utils.c" + (("unsigned long val") "uint64_t val"))))))))) (native-inputs (append (list check pkg-config python-minimal-wrapper python-pytest) (if (%current-target-system) From 1bef690046c29a5190a8d9ffd3915ebee6eeff08 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 1 Oct 2025 09:44:20 +0300 Subject: [PATCH 02/29] gnu: vte/gtk+-3: Set upstream name. * gnu/packages/gnome.scm (vtk/gtk+-3)[properties]: New field. Change-Id: I93bb7af4d5e2646f78e37350ccf64fb974d19825 --- gnu/packages/gnome.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index dda73b78176..94b8ce6ec4e 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4672,7 +4672,9 @@ editors, IDEs, etc.") ((#:configure-flags flags #~'()) #~(cons "-Dgtk4=false" (delete "-Dgtk3=false" #$flags))))) (propagated-inputs (modify-inputs (package-propagated-inputs vte) - (replace "gtk" gtk+))))) + (replace "gtk" gtk+))) + (properties + `((upstream-name . "vte"))))) (define-public vte-with-sixel (package/inherit vte From c794bf4b8120f9f201f346abc7af6ff9775d5f70 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 25 Sep 2025 13:51:32 +0300 Subject: [PATCH 03/29] gnu: Add python-term-image. * gnu/packages/python-xyz.scm (python-term-image): New variable. Change-Id: I5f5da625ff99b79a1351cc938139c0d0717e0cd3 Signed-off-by: Efraim Flashner --- gnu/packages/python-xyz.scm | 56 +++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 152b3c36d7c..3eb193c5c1b 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1622,6 +1622,62 @@ Form (EBNF) as input, and outputs a memoizing Parsing Expression Grammar (PEG) or Packrat parser in Python.") (license license:bsd-2))) +(define-public python-term-image + (package + (name "python-term-image") + (version "0.7.2") + (source + (origin + ;; We need the full repo to run the tests. + (method git-fetch) + (uri (git-reference + (url "https://github.com/AnonymouX47/term-image") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1lsd5m0k5m99arkca2rzrrlln10c8ax6xfawqwjnspcbf8l3h3dq")))) + (build-system pyproject-build-system) + (arguments + (list #:test-flags + #~(list "tests" + ;; These tests require network access. + "-k" (string-append "not test_from_url" + " and not test_source" + " and not test_close")) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'adjust-dependencies + (lambda _ + (substitute* "setup.py" + (("pillow>=9.1,<11") "pillow>=9.1,<12"))))))) + (propagated-inputs (list python-pillow python-requests)) + (native-inputs + (list python-pytest + python-setuptools + python-urwid)) + (home-page "https://github.com/AnonymouX47/term-image") + (synopsis "Display images in the terminal") + (description "term-image is a library and program to display images on +compatible terminals. + +Features: +@enumerate +@item Multiple image formats (basically all formats supported by +@code{PIL.Image.open()}) +@item Multiple image source types: PIL image instance, local file, URL +@item Multiple image render styles (with automatic support detection) +@item Support for multiple terminal graphics protocols, including Kitty +@item Transparency support (with multiple options) +@item Animated image support (including transparent ones) +@item Integration into various TUI / terminal-based output libraries +@item Terminal size awareness +@item Automatic and manual image sizing +@item Horizontal and vertical alignment +@item Automatic and manual font ratio adjustment (to preserve image aspect +ratio) +@end enumerate") + (license license:expat))) + (define-public python-trubar (package (name "python-trubar") From 3cca86b369fb5168175fa45f6ae6665157fd508a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 25 Sep 2025 13:51:58 +0300 Subject: [PATCH 04/29] gnu: toot: Enable TUI graphics. * gnu/packages/fediverse.scm (toot)[inputs]: Add python-pillow, python-term-image. [native-inputs]: Remove python-pillow. Change-Id: I51bf2843c1890f2a1dc2f29f00697708595728fd Signed-off-by: Efraim Flashner --- gnu/packages/fediverse.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/fediverse.scm b/gnu/packages/fediverse.scm index ce91efa9b4d..e1c5e1f64bd 100644 --- a/gnu/packages/fediverse.scm +++ b/gnu/packages/fediverse.scm @@ -137,7 +137,10 @@ the federation of interconnected video hosting services.") python-requests python-tomlkit python-urwid-3 - python-wcwidth)) + python-wcwidth + ;; Required to display images in the TUI + python-pillow + python-term-image)) (home-page "https://github.com/ihabunek/toot/") (synopsis "Mastodon CLI client") (description "Interact with Mastodon social network from the command line. From 18dbf1571b9f0b12893f85f36640d6a498e2f0d7 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 12:09:23 +0100 Subject: [PATCH 05/29] gnu: Add python-grapheme. * gnu/packages/python-xyz.scm (python-grapheme): New variable. Change-Id: Ia24a261eae6f36d97022e0c78a0b492b90131054 --- 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 3eb193c5c1b..fff24de1bdc 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -949,6 +949,36 @@ part of @url{https://github.com/hgrecco/pint, Pint}, the Python units package. ") (license license:bsd-3))) +(define-public python-grapheme + ;; 0.6.0 has not git tag, PyPI has no tests. use the latest commit on master + ;; branch. + (let ((commit "66f07ca02fc64a9ea2f9b4ad66593b226d473adb") + (revision "0")) + (package + (name "python-grapheme") + (version (git-version "0.6.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alvinlindstam/grapheme") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0fqw6iymg7s8q1pfwijx0awcj1j55jppx7hfa5ci7y0c7x4jc8v9")))) + (build-system pyproject-build-system) + (native-inputs + (list python-pytest + python-setuptools)) + (home-page "https://github.com/alvinlindstam/grapheme") + (synopsis "Unicode grapheme helpers") + (description + "This package provides a functionality for working with user perceived +characters. More specifically, string manipulation and calculation functions +for working with grapheme cluster groups (graphemes) as defined by the +@url{http://unicode.org/reports/tr29/, Unicode Standard Annex #29}.") + (license license:expat)))) + (define-public python-halo (package (name "python-halo") From 3aaee878abad8232042ede093c5701906ed7889b Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 12:09:24 +0100 Subject: [PATCH 06/29] gnu: Add python-pytest-retry. * gnu/packages/python-check.scm (python-pytest-retry): New variable. Change-Id: I3f9b318d8195633d75383bfacf843fd8f597395c --- gnu/packages/python-check.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 1b16f2ffb44..b059ce104a7 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -3014,6 +3014,27 @@ times.") eliminate flaky failures.") (license license:mpl2.0))) +(define-public python-pytest-retry + (package + (name "python-pytest-retry") + (version "1.7.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest_retry" version)) + (sha256 + (base32 "03zqgl2y16pcf0w0sn7z9n1gaqmkspl9xfhigks9v50yy0wj7mgq")))) + (build-system pyproject-build-system) + (native-inputs + (list python-pytest-bootstrap + python-setuptools)) + (home-page "https://github.com/str0zzapreti/pytest-retry") + (synopsis "Pytest plugin to retry flaky tests in CI environments") + (description + "This package provides a plugin for Pytest which adds the ability to retry +flaky tests, thereby improving the consistency of the test suite results.") + (license license:expat))) + ;; This is only used by python-sanic (define-public python-pytest-sanic (package From 6e5be16da687b15086fdec0d8f868644b5c61a20 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 12:09:24 +0100 Subject: [PATCH 07/29] gnu: Add python-pytest-recording. * gnu/packages/python-check.scm (python-pytest-recording): New variable. Change-Id: I73a9132a7a19528790c8817ad75fd87c2d4520ff --- gnu/packages/python-check.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index b059ce104a7..d67ab3a990b 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -2925,6 +2925,32 @@ The main usage is to use the @code{qtbot} fixture, responsible for handling interaction, like key presses and mouse clicks.") (license license:expat))) +(define-public python-pytest-recording + (package + (name "python-pytest-recording") + (version "0.13.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest_recording" version)) + (sha256 + (base32 "133nj8vha63gv226f0gvqn16gnazbn2rqh8amv2fx4jrm2r693an")))) + (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ;XXX: more than 50% tets failed + (native-inputs + (list python-pytest-bootstrap + python-hatchling)) + (propagated-inputs + (list python-vcrpy)) + (home-page "https://github.com/kiwicom/pytest-recording") + (synopsis "Pytest support for recording and replaying HTTP traffic") + (description + "This package provides a Pytest plugin powered by +@url{https://vcrpy.readthedocs.io/en/latest/, VCR.py} to record and replay +HTTP traffic.") + (license license:expat))) + (define-public python-pytest-remotedata (package (name "python-pytest-remotedata") From 885fbb4cfecbbce4163156377c9e0b3b054b0d72 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 12:09:59 +0100 Subject: [PATCH 08/29] gnu: python-mastodon-py: Update to 2.1.4. * gnu/packages/fediverse.scm (python-mastodon-py): Update to 2.1.4. [build-system]: Switch to pyproject-build-system. [arguments] : Add 'set-check-environment. [propagated-inputs]: Remove python-pytz and python-six; add python-cryptography, python-grapheme, and python-http-ece. [native-inputs]: Remove python-blurhash, python-cryptography, python-http-ece, python-pytest-runner, and python-pytest-vcr; add nss-certs-for-test, python-pytest-recording, python-pytest-retry, python-pytz, python-setuptools, and tzdata-for-tests. Change-Id: I34cd7d5ee68cde737793f00b6f4e6b9cd0f915d3 --- gnu/packages/fediverse.scm | 59 ++++++++++++++++++++++++-------------- 1 file changed, 37 insertions(+), 22 deletions(-) diff --git a/gnu/packages/fediverse.scm b/gnu/packages/fediverse.scm index e1c5e1f64bd..fdfd25f52c9 100644 --- a/gnu/packages/fediverse.scm +++ b/gnu/packages/fediverse.scm @@ -34,6 +34,7 @@ #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages bash) + #:use-module (gnu packages base) #:use-module (gnu packages check) #:use-module (gnu packages curl) #:use-module (gnu packages databases) @@ -44,6 +45,7 @@ #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages image) + #:use-module (gnu packages nss) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python-build) #:use-module (gnu packages python-check) @@ -222,34 +224,47 @@ seamlessly with your desktop environment.") (define-public python-mastodon-py (package (name "python-mastodon-py") - (version "1.5.1") + (version "2.1.4") (source - (origin - (method url-fetch) - (uri (pypi-uri "Mastodon.py" version)) - (sha256 - (base32 - "1vikvkzcij2gd730cssigxi38vlmzqmwdy58r3y2cwsxifnxpz9a")))) - (build-system python-build-system) - (propagated-inputs - (list python-blurhash - python-dateutil - python-decorator - python-magic - python-pytz - python-requests - python-six)) + (origin + (method url-fetch) + (uri (pypi-uri "mastodon_py" version)) + (sha256 + (base32 "1988sanhh4162jilffa7r1n9ylls5v868ndfmnsp0z5k9p5fj0k6")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'set-check-environment + (lambda* (#:key inputs #:allow-other-keys) + (setenv "TZ" "UTC") + (setenv "TZDIR" + (search-input-directory inputs + "share/zoneinfo"))))))) (native-inputs - (list python-blurhash - python-cryptography - python-http-ece + (list nss-certs-for-test python-pytest python-pytest-cov python-pytest-mock - python-pytest-runner - python-pytest-vcr + python-pytest-recording + python-pytest-retry + python-pytz python-requests-mock - python-vcrpy)) + python-setuptools + python-vcrpy + tzdata-for-tests)) + (propagated-inputs + (list python-blurhash + python-decorator + python-dateutil + python-magic + python-requests + ;; [optional] + python-blurhash + python-cryptography + python-grapheme ;project was not updated for 6y + python-http-ece)) (home-page "https://github.com/halcy/Mastodon.py") (synopsis "Python wrapper for the Mastodon API") (description From 36ec3c09b71a4fc4ccb0cd701c56982f86a33be6 Mon Sep 17 00:00:00 2001 From: Sughosha Date: Wed, 1 Oct 2025 17:09:57 +0530 Subject: [PATCH 09/29] gnu: mlt: Fix build. * gnu/packages/video.scm (mlt)[inputs]: Replace ffmpeg with ffmpeg-6. Change-Id: Icb3ddd3ba09eef273886f64e3b4a9586517644c1 --- 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 e7af1b46846..d719e3ef52b 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -3937,7 +3937,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (list alsa-lib `(,alsa-plugins "pulseaudio") bash-minimal - ffmpeg + ffmpeg-6 fftw frei0r-plugins gdk-pixbuf From aceaa49d824aa159cfd4821d2bdcc67b5275e50a Mon Sep 17 00:00:00 2001 From: Sughosha Date: Wed, 1 Oct 2025 17:28:57 +0530 Subject: [PATCH 10/29] gnu: k3b: Fix build. * gnu/packages/kde-multimedia.scm (k3b)[inputs]: Replace ffmpeg with ffmpeg-6. Change-Id: Id50db4915ed5407675c11d2c672e8e0d474975ec --- gnu/packages/kde-multimedia.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index cef10491542..ba1b2ca13be 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -548,7 +548,7 @@ variety of formats.") cdrdao cdrtools dvd+rw-tools - ffmpeg + ffmpeg-6 flac karchive kauth From 0d42fc162431c6a3de6545409eacef5efb9c5a21 Mon Sep 17 00:00:00 2001 From: Sughosha Date: Wed, 1 Oct 2025 17:32:39 +0530 Subject: [PATCH 11/29] gnu: kid3: Fix build. * gnu/packages/kde-multimedia.scm (kid3)[arguments]<#:configure-flags>: Add "-DWITH_FFMPEG=ON". [native-inputs]: Remove ffmpeg-4. [inputs]: Add ffmpeg-6. Change-Id: I52236bfdb525473e83b5f6f6ed2d8a55026e1e16 --- gnu/packages/kde-multimedia.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index ba1b2ca13be..31a61630065 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -453,6 +453,7 @@ projects.") #:configure-flags #~(list "-DBUILD_WITH_QT6=ON" + "-DWITH_FFMPEG=ON" (string-append "-DDOCBOOK_XSL_DIR=" #$(this-package-native-input "docbook-xsl"))) #:qtbase qtbase @@ -467,13 +468,13 @@ projects.") (native-inputs (list docbook-xsl extra-cmake-modules - ffmpeg-4 kdoctools libxslt python-minimal-wrapper qttools)) (inputs (list chromaprint + ffmpeg-6 flac id3lib kconfig From db6d6b00e7a82f91622c3e94de2fac860b6abf79 Mon Sep 17 00:00:00 2001 From: Evgenii Klimov Date: Tue, 30 Sep 2025 16:41:41 +0100 Subject: [PATCH 12/29] gnu: python-inline-snapshot: Update to 0.29.1. * gnu/packages/python-check.scm (python-inline-snapshot): Update to 0.29.1. [arguments] : Run tests in parallel, rework ignored and skipped tests to prevent adding MyPy and Pyright. [propagated-inputs]: Remove python-black, python-click, python-mkdocs, python-tomli, and python-typing-extensions. [native-inputs]: Remove python-mypy, python-pydantic, and python-pytest; add python-black, python-freezer, python-pydantic-2, python-pytest-bootstrap, python-pytest-xdist. Change-Id: I8d831efc1ef52f94037ce349cffecfe79ab4efd9 Modified-by: Efraim Flashner Signed-off-by: Efraim Flashner --- gnu/packages/python-check.scm | 45 +++++++++++++++-------------------- 1 file changed, 19 insertions(+), 26 deletions(-) diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index d67ab3a990b..4f72018d823 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -1073,45 +1073,38 @@ to establish class invariants.") (define-public python-inline-snapshot (package (name "python-inline-snapshot") - (version "0.18.2") + (version "0.29.1") (source (origin (method url-fetch) (uri (pypi-uri "inline_snapshot" version)) (sha256 - (base32 "09pqgz4phal2pjkv03wg3gvj7jr89rrb93rfw4hd2x9v8px4mqqv")))) + (base32 "19x5j97i96p3xr9xyjvwh0mmpcnypf8g5hf2jjm6g82ghsv3rrqp")))) (build-system pyproject-build-system) (arguments (list + ;; tests: 518 passed, 88 skipped, 1 xfailed, 903 subtests passed #:test-flags - ;; Missing "freezer" fixture - '(list "--ignore=tests/test_external.py" - "--ignore=tests/test_pytest_plugin.py" - "-k" - (string-append - "not test_trailing_comma" - ;; Cannot use inline-snapshop when xdist is available. - " and not test_xdist" - " and not test_xdist_disabled" - " and not test_xdist_and_disable" - " and not test_typing")))) - (propagated-inputs (list python-asttokens - python-black - python-click - python-executing - python-mkdocs - python-rich - python-tomli - python-typing-extensions)) + #~(list "--numprocesses" (number->string (min 8 (parallel-job-count))) + ;; To prevent adding mypy and pyright. + "--ignore=tests/test_typing.py"))) (native-inputs - (list python-dirty-equals + (list python-black ;XXX: used in tests/conftest.py to self lint + python-dirty-equals python-freezegun python-hatchling - python-pydantic - python-pytest + python-hypothesis + python-pydantic-2 + python-pytest-bootstrap + python-pytest-freezer python-pytest-mock - python-pytest-subtests)) - (home-page "https://pypi.org/project/inline-snapshot/") + python-pytest-subtests + python-pytest-xdist)) + (propagated-inputs + (list python-asttokens + python-executing + python-rich)) + (home-page "https://github.com/15r10nk/inline-snapshot/") (synopsis "Golden master/snapshot/approval testing library") (description "This package can be used for different things: From f627558ec77686ee8746eb4575cfb319ea5134a6 Mon Sep 17 00:00:00 2001 From: Ghislain Vaillant Date: Sun, 28 Sep 2025 21:56:10 +0200 Subject: [PATCH 13/29] gnu: Add python-inotify. * gnu/packages/python-xyz.scm (python-inotify): New variable. Change-Id: Iff49c585ee257161c86e6ef12f84233d33e504ae 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 fff24de1bdc..9ce26e5a428 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1082,6 +1082,37 @@ supports: identities.") (license license:asl2.0))) +(define-public python-inotify + (package + (name "python-inotify") + (version "0.2.12") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dsoprea/PyInotify") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1n1rqpzk70ap2i4zk2k0znz407i909y2001v65agy7y30apjzb67")))) + (build-system pyproject-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-requirements + (lambda _ + (substitute* "inotify/resources/requirements.txt" + (("build") + ""))))))) + (native-inputs (list python-pytest python-setuptools)) + (home-page "https://github.com/dsoprea/PyInotify") + (synopsis "Linux filesystem activity monitor library for Python") + (description + "This package provides an efficient and elegant inotify (Linux filesystem +activity monitor) library for Python.") + (license license:gpl2))) + (define-public python-jsonpath-ng (package (name "python-jsonpath-ng") From 9aea4bdf0167db3364fea1df80a20b87a6d3294c Mon Sep 17 00:00:00 2001 From: Sughosha Date: Wed, 1 Oct 2025 19:11:34 +0530 Subject: [PATCH 14/29] gnu: kpipewire: Fix build. * gnu/packages/kde-plasma.scm (kpipewire)[inputs]: Replace ffmpeg with ffmpeg-6. Change-Id: I2f89ffbfeeca28ee12743072b6fdb5ff4ccab471 --- gnu/packages/kde-plasma.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index 28262aed53d..e255a0e0956 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -1057,7 +1057,7 @@ the schedule and venue information.") (inputs (list libxkbcommon libva pipewire - ffmpeg + ffmpeg-6 kcoreaddons ki18n kwayland From 2605ef607e707be2158868e994b065bc8ae2a6dc Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 14:29:40 +0100 Subject: [PATCH 15/29] gnu: python-pybktree: Disable tests. * gnu/packages/python-xyz.scm (python-pybktree)[argumens] : No tests. [native-inputs]: Remove python-wheel. Change-Id: I6663ce2a60a78ec89a4b26653546aab9a7fbe256 --- gnu/packages/python-xyz.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 9ce26e5a428..6161792e6d4 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -29193,6 +29193,7 @@ working with iterables.") Python.") (license license:expat))) +;; XXX: Not maintained since 2020. (define-public python-pybktree (package (name "python-pybktree") @@ -29204,7 +29205,9 @@ Python.") (sha256 (base32 "0asd2lw9c5l5wi4z24k7gkhlprpdkcvs8d94szk56x9xvmy07h7f")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (arguments + (list #:tests? #f)) ;no tests provided + (native-inputs (list python-setuptools)) (home-page "https://github.com/Jetsetter/pybktree") (synopsis "Pythonic BK-tree data structure") (description From e5579dc5de77fe1b3d595ac514c09cf86d4310cb Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 15:00:33 +0100 Subject: [PATCH 16/29] gnu: umi-tools: Fix tests. * gnu/packages/bioinformatics.scm (umi-tools)[arguments] : Skip style and broken test files. : Add 'fix-bash-path and 'build-extensions. [native-inputs]: Remove python-wheel; add python-cython, python-pyaml, and python-pytest. Change-Id: I96da9eaed696bc94999e41cffe88a47500542754 --- gnu/packages/bioinformatics.scm | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3cd2c838bfd..9ba3e900a01 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -21816,16 +21816,32 @@ throughput chromatin profiles. Typical use cases include: (package (name "umi-tools") (version "1.1.6") + ;; TODO: Delete generated Cython C files. (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/CGATOxford/UMI-tools") - (commit (string-append "v" version)))) + (url "https://github.com/CGATOxford/UMI-tools") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "1liykfj4msvcgk8an5qq802jcxwlijqxrvijipqj1pwpxqzl9qnh")))) (build-system pyproject-build-system) + (arguments + (list + #:test-flags + #~(list "--ignore=tests/test_style.py" + "--ignore=step1_unit_test.py") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-bash-path + (lambda _ + (substitute* "tests/test_umi_tools.py" + (("/bin/bash") + (which "sh"))))) + (add-before 'check 'build-extensions + (lambda _ + (invoke "python" "setup.py" "build_ext" "--inplace")))))) (inputs (list python-pandas python-future @@ -21836,7 +21852,10 @@ throughput chromatin profiles. Typical use cases include: python-scipy python-pysam)) (native-inputs - (list python-setuptools python-wheel)) + (list python-cython + python-pyaml + python-pytest + python-setuptools)) (home-page "https://github.com/CGATOxford/UMI-tools") (synopsis "Tools for analyzing unique modular identifiers") (description "This package provides tools for dealing with @dfn{Unique From 011de0d1f50b30048d531bab40224a1fac818810 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 15:24:57 +0100 Subject: [PATCH 17/29] gnu: python-monthdelta: Fix tests. * gnu/packages/python-xyz.scm (python-monthdelta)[arguments] : Use 'unittest. [native-inputs]: Remove python-wheel. Change-Id: I9e23db42377deef7c6cc321217bbb130861ba890 --- gnu/packages/python-xyz.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 6161792e6d4..dd0ad272382 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -20866,6 +20866,7 @@ for the module to work under Python 3.3.") text.") (license license:bsd-3))) +;; XXX: Not maintained since 2012. (define-public python-monthdelta (package (name "python-monthdelta") @@ -20877,7 +20878,9 @@ text.") (sha256 (base32 "0iwcsk7ryjw5h1wp10ykwd01f3am8gdlga6461q1v1njsk0rxh41")))) (build-system pyproject-build-system) - (native-inputs (list python-setuptools python-wheel)) + (arguments + (list #:test-backend #~'unittest)) + (native-inputs (list python-setuptools)) (home-page "http://packages.python.org/MonthDelta") (synopsis "Date computations with months") (description From 8cae62c191736ce882c01062e9851772da94a9aa Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 15:24:58 +0100 Subject: [PATCH 18/29] gnu: heatwave: Fix build. * gnu/packages/version-control.scm (heatwave)[arguments] : No tests in PyPI. [native-inputs]: Add python-setuptools. Change-Id: I198bb0e47bcf8a4b820752c378cd3919a203e92d --- gnu/packages/version-control.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index b870f7396d2..944c99b8bf9 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -2971,6 +2971,7 @@ changeset itself; there won't be any extra commits. Either GnuPG or OpenSSL can be used for signing.") (license license:gpl2)))) ;per commitsigs.py +;; XXX: Not maintained since 2019. (define-public heatwave (package (name "heatwave") @@ -2982,6 +2983,10 @@ can be used for signing.") (sha256 (base32 "1zzwmb9hvbyswzjgap02rrq8p44hb6xlzk1wd8w01mh2vva0xlx7")))) (build-system pyproject-build-system) + (arguments + (list #:tests? #f)) ;no tests in PyPI + (native-inputs + (list python-setuptools)) (propagated-inputs (list python-click python-gitpython From 6c2c8e566d5d30547e3d695d369b7ce6e2e263ab Mon Sep 17 00:00:00 2001 From: Mark Walker Date: Tue, 17 Jun 2025 12:40:03 +0800 Subject: [PATCH 19/29] gnu: Add ghc-portmidi. * gnu/packages/haskell-xyz.scm (ghc-portmidi): New variable. Change-Id: Ib88052e7ac9ad6aab3721a4f31a4ceccdae1619c Signed-off-by: Sharlatan Hellseher --- gnu/packages/haskell-xyz.scm | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index fd7519b957c..4a613264dce 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -9336,6 +9336,24 @@ standard Read class, for better deserialisation of Haskell values from Strings.") (license license:lgpl2.1))) +(define-public ghc-portmidi + (package + (name "ghc-portmidi") + (version "0.2.0.0") + (source (origin + (method url-fetch) + (uri (hackage-uri "PortMidi" version)) + (sha256 + (base32 + "1jb722gwgx1fdyv64nj3by22970l3r04ibc3fa3hnp3k4l2jvk0f")))) + (build-system haskell-build-system) + (inputs (list alsa-lib)) + (home-page "https://github.com/PortMidi/PortMidi-haskell") + (synopsis "Haskell bindings for PortMedia/PortMidi") + (description "This is a Haskell module for PortMidi audio library, +which supports real-time MIDI input and output.") + (license license:bsd-3))) + (define-public ghc-pqueue (package (name "ghc-pqueue") From fbbb2205fbaa99dae0b752af39cadfc795523bcf Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 16:41:45 +0100 Subject: [PATCH 20/29] gnu: python-pygpgme: Update to 0.6. * gnu/packages/gnupg.scm (python-pygpgme): Update to 0.6. [argument] : Skip one failing test. [native-inputs]: Remove python-wheel; add pkg-config and python-pytest. Change-Id: I1b58d556e51c0920773b7139f916fb7adc2cf47a --- gnu/packages/gnupg.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index c98d5fc7d26..621954a612c 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -47,6 +47,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages base) + #:use-module (gnu packages check) #:use-module (gnu packages curl) #:use-module (gnu packages crypto) #:use-module (gnu packages emacs) @@ -616,17 +617,26 @@ distributed separately.") (define-public python-pygpgme (package (name "python-pygpgme") - (version "0.4") + (version "0.6") (source (origin (method url-fetch) (uri (pypi-uri "pygpgme" version)) (sha256 (base32 - "1px1c5nqsls3fxg0zkyd9sgc5rxpdagvsadnp8fd5bmgrrjka5ws")))) + "0k25y3c07bkmz6q87lcbsbf34gva99rmdf5gffd8c1r1sccjif1n")))) (build-system pyproject-build-system) + (arguments + (list + #:test-flags + ;; gpgme.GpgmeError: (, , + ;; 'No such file or directory') + #~(list "--deselect=tests/test_import.py::ImportTestCase::test_import_keys"))) (native-inputs - (list gnupg python-setuptools python-wheel)) + (list gnupg ;to run gpg-connect-agent + pkg-config + python-pytest + python-setuptools)) (inputs (list gpgme)) (home-page "https://github.com/jhenstridge/pygpgme") From 8fb1ccf1290aaef0fc9b08eed00d53ac430f2489 Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Wed, 1 Oct 2025 17:02:30 +0100 Subject: [PATCH 21/29] gnu: python-pyvcf3: Fix tests. * gnu/packages/bioinformatics.scm (python-pyvcf3)[native-inputs]: Remove python-wheel; add python-pytest. Change-Id: I7ff63f2b6a19662570a76fd597f8741e32218c3b --- gnu/packages/bioinformatics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 9ba3e900a01..0e80c7eb208 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -24278,7 +24278,7 @@ for the analysis and visualization of raw nanopore signal.") (base32 "0i4j5bq5q32q216ja7yvg0mpww5j0b9p8ky5bya4d31wqmygal8z")))) (build-system pyproject-build-system) (propagated-inputs (list python-setuptools)) - (native-inputs (list python-setuptools python-wheel)) + (native-inputs (list python-pytest python-setuptools)) (home-page "https://github.com/dridk/PyVCF3") (synopsis "Variant Call Format parser for Python") (description "This package provides a @acronym{VCF,Variant Call Format} From b9ed2f681889d702df85c545e6db23ea52a3738e Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Fri, 26 Sep 2025 08:43:39 +0200 Subject: [PATCH 22/29] gnu: m8c: Update to 2.2.0. * gnu/packages/electronics.scm (m8c): Update to 2.2.0. Change-Id: Id0ab3cf276593556dfd06a8e1f73e43efa82071d Signed-off-by: Gabriel Wicki --- gnu/packages/electronics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index b8349aa8ce4..6d469a24dd9 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -827,7 +827,7 @@ supported devices, as well as input/output file format support.") (define-public m8c (package (name "m8c") - (version "2.1.0") + (version "2.2.0") (source (origin (method git-fetch) @@ -836,7 +836,7 @@ supported devices, as well as input/output file format support.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1vv0m4ry23nns5a47m2n9k6i3wly2jjc5n1j3l7sh1m480ga3d42")))) + (base32 "1mx4n5di1bsm4ill55sf4dfa5rldrch0mrr4mk83x0xqd2rfy2mp")))) (build-system cmake-build-system) (arguments (list From 98a9cf0ec9111e11e5ffa531f7b2313793a34ae1 Mon Sep 17 00:00:00 2001 From: Simeon Prause Date: Mon, 22 Sep 2025 10:18:20 +0000 Subject: [PATCH 23/29] gnu: wavpack: Update to 5.8.1. * gnu/packages/audio.scm (wavpack): Update to 5.8.1. Change-Id: I9f9d2a9fd1ca63651353f8724f681722920610f5 Signed-off-by: Gabriel Wicki --- gnu/packages/audio.scm | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 66af265cd0a..1da6e771948 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4910,26 +4910,19 @@ key of digital audio.") (define-public wavpack (package (name "wavpack") - (version "5.4.0") + (version "5.8.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/dbry/WavPack/releases/download/" version "/wavpack-" version ".tar.xz")) (sha256 - (base32 "0ycbqarw25x7208jilh86vwwiqklr7f617jps9mllqc659mnmpjb")))) + (base32 "09hcbkjlg00gdcyqfviqa76wpx4xz4waxhfgmx88hb30k1a7f8kk")))) (build-system gnu-build-system) (arguments '(#:configure-flags (list "--disable-static" - "--enable-tests") - #:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "./cli/wvtest" "--default" "--short")) - #t))))) + "--enable-tests"))) (home-page "https://www.wavpack.com/") (synopsis "Hybrid lossless audio codec") (description From 9e299926c6922fa3d5988540ea9d1462c5c4d7d6 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Tue, 23 Sep 2025 14:48:45 +0200 Subject: [PATCH 24/29] gnu: nextpnr: Add icestorm and prjtrellis checks. * gnu/packages/electronics.scm (nextpnr)[arguments]: Add run-icestorm-examples and run-prjtrellis-examples phases. [native-inputs]: Add icestorm and prjtrellis. Change-Id: Icd94efb4deb53430412422e03acc19d036470f88 Signed-off-by: Gabriel Wicki --- gnu/packages/electronics.scm | 42 +++++++++++++++++++++++++++++++++--- 1 file changed, 39 insertions(+), 3 deletions(-) diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 6d469a24dd9..3ab1ac83cec 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -921,6 +921,10 @@ which allows one to install the M8 firmware on any Teensy.") (string-append "-DTRELLIS_INSTALL_PREFIX=" #$(this-package-input "prjtrellis")) "-DUSE_IPO=OFF") + #:modules '((guix build qt-build-system) + (guix build utils) + (ice-9 ftw) + (srfi srfi-26)) #:phases #~(modify-phases %standard-phases ;; Required by himbaechel architecture, ng-ultra support. @@ -947,10 +951,42 @@ which allows one to install the M8 firmware on any Teensy.") (("\\$\\{CMAKE_SOURCE_DIR}/3rdparty/sanitizers-cmake/cmake") (string-append #$(this-package-native-input "sanitizers-cmake") - "/share/sanitizers-cmake/cmake")))))))) + "/share/sanitizers-cmake/cmake"))))) + (add-after 'install 'run-icestorm-examples + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append #$output "/bin:" (getenv "PATH"))) + ;; Tests need write access. + (copy-recursively + (string-append + #$(this-package-native-input "icestorm") "/examples") + "/tmp/icestorm/examples") + (with-directory-excursion "/tmp/icestorm/examples" + (for-each + (cut invoke "make" "-C" <>) + (scandir "." (negate (cut member <> '("." ".."))))))))) + (add-after 'run-icestorm-examples 'run-prjtrellis-examples + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "PATH" + (string-append #$output "/bin:" (getenv "PATH"))) + ;; Tests need write access. + (copy-recursively + (string-append + #$(this-package-native-input "prjtrellis") "/examples") + "/tmp/prjtrellis/examples") + (with-directory-excursion "/tmp/prjtrellis/examples" + (for-each + (cut invoke "make" "-C" <>) + ;; Other tests require unavailable tools. + (list "ecp5_evn" "tinyfpga_rev1" + "tinyfpga_rev2" "versa5g"))))))))) (native-inputs - (list googletest - sanitizers-cmake)) + `(("icestorm" ,(package-source icestorm)) + ("googletest" ,googletest) + ("prjtrellis" ,(package-source prjtrellis)) + ("sanitizers-cmake" ,sanitizers-cmake))) (inputs (list apycula boost From fa7440a30ced4a2c1748fd501e1415c116641003 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Wed, 1 Oct 2025 16:27:47 +0200 Subject: [PATCH 25/29] gnu: osvvm: Conditionnally run tests. * gnu/packages/electronics.scm (osvvm)[arguments]: Use #:tests? in check * gnu/packages/electronics.scm (osvvm-2023.04)[arguments]: Disable #:tests?. Change-Id: Icca5d7158abe8339e00be14d0672b2797a8a36ea Signed-off-by: Gabriel Wicki --- gnu/packages/electronics.scm | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index 3ab1ac83cec..d50bec38770 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -1393,12 +1393,13 @@ GUI for sigrok.") (("\\[FindOsvvmSettingsDirectory\\]") " \"\" ")))) (add-after 'fix-scripts 'check - (lambda _ - (setenv "OSVVM_DIR" (getcwd)) - (setenv "OSVVM_MUST_BUILD" (getcwd)) - (invoke "tclsh" - (string-append #$(this-package-native-input "nvc") - "/test/test-osvvm.tcl"))))))) + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (setenv "OSVVM_DIR" (getcwd)) + (setenv "OSVVM_MUST_BUILD" (getcwd)) + (invoke "tclsh" + (string-append #$(this-package-native-input "nvc") + "/test/test-osvvm.tcl")))))))) (native-inputs (list nvc tcl tcllib which)) (native-search-paths @@ -1434,6 +1435,8 @@ verification.") (base32 "1kn18ibvm7bzdyw2d914284wriravyh5qwfarj06pb052x1yblyx")))) (arguments (substitute-keyword-arguments (package-arguments osvvm) + ((#:tests? _ #t) + #f) ((#:phases phases #~%standard-phases) #~(modify-phases #$phases (delete 'fix-scripts))))))) From 5f04a1d7099c82de2580b3a3023be2021f64ab74 Mon Sep 17 00:00:00 2001 From: Cayetano Santos Date: Wed, 1 Oct 2025 18:20:53 +0200 Subject: [PATCH 26/29] etc: guix-install.sh: Update GNU_URL. * etc/guix-install.sh (GNU_URL): Update to generic mirror URL. Change-Id: I7197691d2ed7b125a1fbc6ca774be7a34b81c121 Signed-off-by: Gabriel Wicki --- etc/guix-install.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 3215c4cfea9..39189304727 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -97,8 +97,7 @@ WAR=$'[ \033[33;1mWARN\033[0m ] ' INF="[ INFO ] " DEBUG=0 -GNU_URL="https://ftp.gnu.org/gnu/guix/" -#GNU_URL="https://alpha.gnu.org/gnu/guix/" +GNU_URL="https://ftpmirror.gnu.org/gnu/guix/" # The following associative array holds set of GPG keys used to sign the # releases, keyed by their corresponding Savannah user ID. From 8fb3ddda57829f48590d63d62fcce1827c6a3db2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 1 Oct 2025 17:03:28 +0800 Subject: [PATCH 27/29] gnu: Add pipewire-minimal. * gnu/packages/linux.scm (pipewire-minimal): New variable. Change-Id: Ibe30029f63b0cf3085f33569a8c165f0e48434ce Signed-off-by: Gabriel Wicki --- gnu/packages/linux.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cbed9b1d45f..b8df4438e93 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -10986,6 +10986,26 @@ and Flatpak we expect PipeWire to provide a core building block for the future of Linux application development.") (license license:lgpl2.0+))) +(define-public pipewire-minimal + ;; Used as libpipewire to reduce closure size and avoid dependency cycles. + (hidden-package + (package + (inherit pipewire) + (name "pipewire-minimal") + (arguments + (list + #:configure-flags + #~(list "-Dsession-managers=[]" + "-Ddbus=disabled" + "-Dflatpak=disabled" + ;; XXX: Otherwise test_loop will fail with: + ;; libgcc_s.so.1 must be installed for pthread_cancel to work + (string-append "-Dc_link_args=-Wl,-rpath=" #$output "/lib" + " -lgcc_s") + "-Db_asneeded=false"))) + (native-inputs '()) + (inputs '())))) + (define-public wireplumber (package (name "wireplumber") From 396e7fb8df63f32ed859c2e9cb02cbf5b88ca5e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 1 Oct 2025 17:03:47 +0800 Subject: [PATCH 28/29] gnu: mpv: Use pipewire-minimal. * gnu/packages/video.scm (mpv)[propagated-inputs]: Replace pipewire with pipewire-minimal. Change-Id: I45781ec304c892ba30ff5c30a4ae7f8a2c311476 Signed-off-by: Gabriel Wicki --- 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 d719e3ef52b..6b8635f540a 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -2745,7 +2745,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") ;; XXX: lua > 5.2 is not currently supported; see meson.build lua-5.2 mesa - pipewire + pipewire-minimal pulseaudio shaderc wayland From 0cf5958c42a0dd5e9be1f48e8c737e5ac0147eca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= Date: Wed, 1 Oct 2025 17:04:27 +0800 Subject: [PATCH 29/29] gnu: sdl3: Use pipewire-minimal. * gnu/packages/sdl.scm (sdl3)[propagated-inputs]: Replace pipewire with pipewire-minimal. Change-Id: I1e0a7542b8e8ec83f55dfaa9e20dfadbded40ccd Signed-off-by: Gabriel Wicki --- gnu/packages/sdl.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index 66cb9e9b931..7a0e12e886c 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -191,7 +191,7 @@ hardware.") libxkbcommon libxrandr mesa ;required by wayland - pipewire + pipewire-minimal pulseaudio wayland)) (inputs