Compare commits

...

201 commits

Author SHA1 Message Date
Maxim Cournoyer
fcc8c1d3ea
tests/pack: Fix rpm tests.
The rpm-for-tests would no longer build, due to the parent package having
migrated to CMake. Use the --dbpath argument instead of a variant test
package.

* tests/pack.scm (rpm-for-tests): Delete variable.
(rpm archive can be installed/uninstalled): Invoke rpm, not rpm-for-tests, but
with the --dbpath location specified.

Change-Id: I1b578db3ef8f1309c32c6ef92615814ca49fd22c
2025-09-30 16:02:27 +09:00
Maxim Cournoyer
87ebd01a05
gnu: rpm: Restore localstatedir to /var.
Commit 51e1f76 migrated the build system to CMake, and in the process, the
localstatedir value became $prefix/var (inside the package prefix), which
is not useful as this place should be writable for proper operation.

* gnu/packages/package-management.scm (rpm) [#:phases]
{install-macros-file}: New phase.

Change-Id: I1d069243d3b1aff3b0cf0ae79ad5823f8c2a4aeb
2025-09-30 15:44:15 +09:00
Maxim Cournoyer
4c6b2da2ed
tests/builders: Avoid races in unpack tests.
* tests/builders.scm
<gnu-build-system unpack phase, single file>: Add sync call.

Change-Id: Iac992e0899fe3b9c9e727bd42860ec564e1dc9a2
2025-09-30 14:43:06 +09:00
Maxim Cournoyer
ba4bc10dd4
gnu: friction: Build with ffmpeg-6.
* gnu/packages/graphics.scm (friction) [inputs]: Replace ffmpeg with
ffmpeg-6.

Change-Id: I8991631795145c305e81ab79d6ee308624e23695
2025-09-30 14:26:20 +09:00
Maxim Cournoyer
7f67eab68f
gnu: php: Disable the bug65148 and bug46347 flaky tests.
* gnu/packages/php.scm (php): Update to 8.3.26.
[#:phases] {prepare-tests}: Disable the bug65148 and bug46347 tests.

Change-Id: I366e408372c218842b4f6949f459e0b1924e204c
2025-09-30 12:08:07 +09:00
Maxim Cournoyer
0850534d75
gnu: php: Add autoconf to native inputs.
* gnu/packages/php.scm (php) [native-inputs]: Add autoconf.

Change-Id: I4e2185b04338b45ed89ef8a23232ff6524af4a00
2025-09-30 11:23:42 +09:00
Maxim Cournoyer
e0346b3ce1
gnu: gnome-planner: Some follow-ups.
* gnu/packages/gnome.scm (gnome-planner) [#:configure-flags]: Add comment.
[inputs]: Sort.

Change-Id: I233a44a143342aca63a9e8d4091ef5da81582da0
2025-09-30 11:11:42 +09:00
Hugo Buddelmeijer
20fba311d1
gnu: gnome-planner: Update to 0.14.92.
* gnu/packages/gnome.scm (gnome-planner): Update to 0.14.92.
[build-system]: Switch to meson-build-system.
[inputs]: Remove libgnomeui, libglade, gnome-vfs, and libgnomecanvas.
[native-inputs]: Remove intltool and pkg-config; add glib, desktop-file-utils,
and gettext-minimal.
[arguments] <#:glib-or-gtk?>: Set to #t.
<:configure-flags>: Remove --disable-python. Fix RUNPATH.
<:phases>: Add skip-gtk-update-icon-cache phase.
[home-page]: Change to https://gitlab.gnome.org/World/planner.

Change-Id: I64fb296c882f15bee64721dc6e2fbe204cd646f1
2025-09-30 11:02:35 +09:00
Hugo Buddelmeijer
4ad38dcb1d
gnu: Remove scrollkeeper dependencies.
* gnu/packages/mate.scm (mate-applets)[native-inputs]: Remove scrollkeeper.
* gnu/packages/mate.scm (mate-utils)[native-inputs]: Remove scrollkeeper.
* gnu/packages/mate.scm (pluma)[inputs]: Remove scrollkeeper.

Change-Id: I1d37a6d77508cd4154c51930ee030bd60064e58b
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 10:59:20 +09:00
Maxim Cournoyer
dbaed143e5
Revert "gnu: msamr: Update to (git-version 1.1.4 revision commit)."
This reverts commit f4dabf11a4.
2025-09-30 10:56:11 +09:00
Maxim Cournoyer
afe9a61fd4
gnu: php: Update to 8.3.26.
* gnu/packages/php.scm (php): Update to 8.3.26.
[#:phases] {prepare-tests}: Disable gh16659 test.

Change-Id: I2e3f5244e2471e7bab559db620c3658326ddcb93
2025-09-30 10:52:44 +09:00
Maxim Cournoyer
6018973ea6
gnu: php: Run tests in parallel.
* gnu/packages/php.scm (php) [arguments]
{prepare-tests}: Set TEST_PHP_ARGS environment variable.

Change-Id: Ideed9528c3474ff8c2f0abd760b64f12a7e3ec08
2025-09-30 10:19:25 +09:00
Maxim Cournoyer
32898c0056
gnu: php: Improve style.
* gnu/packages/php.scm (php) [arguments]: Use gexps.
[native-inputs, inputs]: Drop labels.

Change-Id: I6244b131bfeb3583bd77ca28dd0f8ab93ff8dade
2025-09-30 09:30:46 +09:00
André Batista
f26de13bfb
gnu: ungoogled-chromium: Fix build with libxml2@2.14.
* gnu/packages/chromium.scm (%debian-patches): Remove
'trixie/libxml-parseerr.patch' which is not needed and breaks build with newer
libxml2.

Chnage-Id: I7dfe8f4eaa353f1df0b19b9f515474e269f8a4e5
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:59 +09:00
André Batista
ad87d0009a
gnu: kodi: Build with ffmpeg@6.
* gnu/packages/kodi.scm (kodi)[inputs]: Replace ffmpeg by ffmpeg-6.  Otherwise
the build system tries to download this version and fails.

Change-Id: I4d08797d55cd6585ee365c24af020c8320b41639
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:59 +09:00
John Kehayias
d650736764
gnu: emacs-next-minimal: Fix test.
This patch represents a commit which should already be in emacs-next; to be
investigated.

* gnu/packages/emacs.scm (emacs-next-minimal)[source]: Add patch.

Change-Id: I884c9082cf53478411f01ccb5deab0e5c239fba1
2025-09-30 09:29:59 +09:00
André Batista
6907428e34
gnu: vlc: Build with ffmpeg@6.
* gnu/packages/video.scm (vlc)[inputs]: Replace ffmpeg with ffmpeg-6.

Change-Id: I49ae469dcff11a35122794f10f6b602f264344d6
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-30 09:29:59 +09:00
Ada Stevenson
f21e9833c1
gnu: qtwebengine: Fix build.
* gnu/packages/qt.scm (qtwebengine)[inputs]: Replace ffmpeg by ffmpeg-6.

Fixes: guix/guix#3111
Change-Id: I81a2674aef24eedc030f255fe173f8fbf4baeb1f
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-30 09:29:59 +09:00
Ada Stevenson
ac3ea7a797
gnu: python-html5-parser: Fix build.
* gnu/packages/python-web.scm (python-html5-parser):
[arguments]<#:phases>{set-configure-flags}: New phase to set
`-Wno-error=implicit-function-declaration` flag.

Change-Id: I21f8f785c55c8cedf6669c221290e40e83447351
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-30 09:29:59 +09:00
Maxim Cournoyer
7e918353b8
gnu: gnucash: Update to 5.13.
* gnu/packages/gnucash.scm (gnucash): Update to 5.13.
(gnucash-docs): Likewise.

Change-Id: I61afb60ca33d0874dfa8f6e5286a10e8eb5cc3f5
2025-09-30 09:29:59 +09:00
Maxim Cournoyer
9f317cef3e
gnu: retroarch-minimal: Fix build.
* gnu/packages/emulators.scm (retroarch-minimal)
[inputs]: Replace ffmpeg with ffmpeg-6.

Change-Id: Ifc876d329f2c057fd0d46d50d858cabd74cba988
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
66c97d0fc7
gnu: gnucash-docs: Remove extraneous scrollkeeper input.
* gnu/packages/gnucash.scm (gnucash-docs)
[native-inputs]: Delete scrollkeeper.

Change-Id: I813bae9d5320d1530e5c7477af38b02e1768eb7a
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
901728d29f
gnu: perl-xml-libxml: Skip test suite for now.
The test suite is broken with the recent libxml2 update.

* gnu/packages/xml.scm (perl-xml-libxml) [inputs]: Replace libxml2 with
libxml2-2.11.
[#:tests?]: Set to #f.

Change-Id: I9a39f02897388cc5f493e9f54df0af26ac7d1903
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
04147edf9f
gnu: linphone-desktop: Update to 5.2.6.
* gnu/packages/linphone.scm (linphone-desktop): Update to 5.2.6.

Change-Id: I1d58fa5134aab1f4d00b56d9e3648b180a39a194
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
96800a6c98
gnu: liblinphone: Update to 5.3.112.
* gnu/packages/linphone.scm (liblinphone): Update to 5.3.112.
[inputs]: Replace libxml2 with libxml2-2.11.

Change-Id: Ib2b477152d2e189c350365f3aedeab1029b7a57d
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
9427cbc447
gnu: openldap-for-linphone: Update to 2.6.4-0.8511a0f.
* gnu/packages/openldap.scm (openldap-for-linphone): Update to 2.6.4-0.8511a0f.

Change-Id: I8f5cccf1e3fa346a5b9c4426ba372ec8127f6edd
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
60443a6e31
scripts: Honor --target-version in every situation.
* guix/scripts/refresh.scm (options->update-specs): Always honor
--target-version.
* doc/guix.texi (Invoking guix refresh): Add an example showing how this can
be useful.

Change-Id: I55f98c88f4b583f65dd85a6d3573f9bc87a1dead
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
1010f3fa87
gnu: mbedtls-for-hiawatha: Use package/inherit.
This is a variant, and should get the same graft treatment as the parent
package.

* gnu/packages/tls.scm (mbedtls-for-hiawatha): Use package/inherit.

Change-Id: I570db81d5a6d703ade47b160fbdf0eb5d655b0fc
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
92d3ef26eb
gnu: Remove mbedtls-apache.
* gnu/packages/tls.scm (mbedtls-apache): Delete variable.

Change-Id: I606a45f29e6212f259159a9d2f2d2edc9a42b7b5
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
5805105574
gnu: mbedtls: Update to 3.5.2.
* gnu/packages/tls.scm (mbedtls): Update to 3.5.2.
[source]: Switch to url-fetch (otherwise there are git submodules to pull).

Change-Id: I8e7402fd24049defb922a4ceae64d099abbf5bfb
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
f4dabf11a4
gnu: msamr: Update to (git-version 1.1.4 revision commit).
* gnu/packages/linphone.scm (msamr): Update to (git-version 1.1.4 revision commit).

Change-Id: Ic01159fd54ac45a3441eb0ae1a39540fc02f5a02
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
2ec75172d9
gnu: mswebrtc: Update to 5.4.0.
* gnu/packages/linphone.scm (mswebrtc): Update to 5.4.0.

Change-Id: I46796f76ede89f093d9410cfa08d3e033b997e9f
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
c79204cd4f
gnu: lime: Update to 5.3.112.
* gnu/packages/linphone.scm (lime): Update to 5.3.112.

Change-Id: I38c5beed5a53d0da0f9c351bc9554569a2af2af3
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
8b643d0659
gnu: mediastreamer2: Update to 5.3.112.
* gnu/packages/linphone.scm (mediastreamer2): Update to 5.3.112.

Change-Id: I1afe825c0e3b529944a5301052032f6e996681b4
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
d0577668c3
gnu: belle-sip: Update to 5.3.112.
* gnu/packages/linphone.scm (belle-sip): Update to 5.3.112.

Change-Id: I929189b4b3b1294c063654d3698baa35988df268
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
dbd44f5181
gnu: bzrtp: Update to 5.3.112.
* gnu/packages/linphone.scm (bzrtp): Update to 5.3.112.

Change-Id: I5fbf6b3152db4a5dad9bfa9e0c0076387d1d5fa7
2025-09-30 09:29:58 +09:00
Maxim Cournoyer
d5917210c6
gnu: ortp: Update to 5.3.112.
* gnu/packages/linphone.scm (ortp): Update to 5.3.112.

Change-Id: I9a2b9208b6da20b1e5592d6520a4a31e3335d9b2
2025-09-30 09:29:57 +09:00
Maxim Cournoyer
564f6e32f4
gnu: bcmatroska2: Update to 5.3.101.
* gnu/packages/linphone.scm (bcmatroska2): Update to 5.3.101.

Change-Id: I53ceeb4d5bde0e92ad2c88b37f22820cc7d97f86
2025-09-30 09:29:57 +09:00
Maxim Cournoyer
30902ae7ff
gnu: belcard: Update to 5.3.112.
* gnu/packages/linphone.scm (belcard): Update to 5.3.112.
[#:phases] {patch-vcard-grammar-location}: Adjust.

Change-Id: Ibcad5c710abf10dc2a3bd32220dcd79630a0a052
2025-09-30 09:29:57 +09:00
Maxim Cournoyer
8e22300e30
gnu: belr: Update to 5.3.112.
* gnu/packages/linphone.scm (belr): Update to 5.3.112.

Change-Id: Ia105fd24f2a4f46b1ccec9fcaf212468af1c0e01
2025-09-30 09:29:57 +09:00
Maxim Cournoyer
3b90bf9938
gnu: bctoolbox: Update to 5.3.112 and disable mbedtls support.
* gnu/packages/linphone.scm (bctoolbox): Update to 5.3.112.

Change-Id: I87eceb689aeea03236ed64de7aa7f5594c57e1f0
2025-09-30 09:29:57 +09:00
Maxim Cournoyer
d3fd000f91
gnu: bcunit: Update to 5.3.101.
* gnu/packages/linphone.scm (bcunit): Update to 5.3.101.

Change-Id: I3cdba8945367d18625c0c607df6265e440abf76d
2025-09-30 09:29:57 +09:00
John Kehayias
ad40bec3e3
gnu: python-openpyxl: Fix tests.
* gnu/packages/python-xyz.scm (python-openpyxl)[native-inputs]: Replace
python-lxml with python-lxml-4.9.

Change-Id: I59374faaf1dea054ac3f109fcdca53fe7aaa96a9
2025-09-30 09:29:57 +09:00
John Kehayias
ca5a56c4a2
gnu: ffmpeg-5: Fix build.
* gnu/packages/video.scm (ffmpeg-5)[arguments]: Add modules.
<#:configure-flags>: Remove "--enable-libplacebo".
[inputs]: Remove libplacebo.
(ffmpeg-4)[inputs]: Inherit from ffmpeg-5.
[arguments]: Remove modules.
<#:configure-flags>: Reduce as libplacebo flag is now removed via ffmpeg-5.

Change-Id: Ia13b297cb224abf8212e02a934f0f8fb04bce48e
2025-09-30 09:29:57 +09:00
Ian Eure
2de488a8ab
gnu: librewolf: Use ffmpeg-6.
Fixes guix/guix#3038.

* gnu/packages/librewolf.scm (librewolf): Replace ffmpeg with ffmpeg-6.

Change-Id: I8aef1b8102e6aff9f9dc4513c7169507efdec16b
2025-09-30 09:29:57 +09:00
Rutherther
159997c5cb
gnu: wlroots: Update to 0.19.1.
* gnu/packages/wm.scm (wlroots): Update to 0.19.1.
(wlroots-0.19): Alias to wlroots.

Change-Id: Ie222ebfc52d36ff8d4ec7580074a8476ae5f5a78
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
40bad2b66e
gnu: scenefx: Use wlroots-0.18.
* gnu/packages/wm.scm (scenefx)[inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I6d2ec1bc2b9c1a088fc913c6d66b918d41d542bc
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
eb69992d3c
gnu: sway: Use wlroots-0.18.
* gnu/packages/wm.scm (sway)[inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I3f59098af9f128269733f99a80daff2b6f7484a7
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
1db3164e8a
gnu: zig-wlroots: Use wlroots-0.18.
* gnu/packages/zig-xyz.scm (zig-wlroots)[propagated-inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I8aa52dcee7e03225819ca34aca3d3fd0bea3769d
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
9a919c607d
gnu: wideriver: Update to 1.3.1.
* gnu/packages/wm.scm (wideriver): Update to 1.3.1.
[inputs]: Remove wlroots.

Change-Id: I5642972d1d7afd270e5717fe624418332db291ea
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
1aa1b16aa8
gnu: labwc: Update to 0.9.1.
* gnu/packages/wm.scm (labwc): Update to 0.9.1.
[inputs]: Remove wlroots; add wlroots-0.19.

Change-Id: I481ece0d790c7c96db1490a04e6d299d029244bc
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
6cd8cb0d5d
gnu: swayfx: Use wlroots-0.18.
* gnu/packages/wm.scm (swayfx)[inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I921ea79301faf175036744b511aed35fc90d9f0a
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
956674b040
gnu: dwl: Use wlroots-0.18.
* gnu/packages/wm.scm (dwl)[inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I5555e43722d788d5f9ede5ce3143b54a9dfa4e63
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:57 +09:00
Rutherther
35aefa0579
gnu: fnott: Remove wlroots input.
* gnu/packages/wm.scm (fnott)[inputs]: Remove wlroots.

Change-Id: Id1ea1d5c30539965dfe980cdb899db81e45a00c1
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:56 +09:00
Rutherther
765f2d1100
gnu: cage: Use wlroots-0.18.
* gnu/packages/wm.scm (cage)[inputs]: Remove wlroots; add wlroots-0.18.

Change-Id: I8f84f4e5b5e940e8144e04a432bdbb2f97d507ce
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:56 +09:00
Rutherther
a73ccc230e
gnu: mpvpaper: Remove wlroots input.
mpvpaper doesn't use it, the output is the same with and without
it.

* gnu/packages/video.scm (mpvpaper)[inputs]: Remove wlroots.

Change-Id: I4a740aa3da82f1460380b161ff1dbfc8e5fb0979
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:56 +09:00
Rutherther
6fbc74b8b6
gnu: Add wlroots-0.19.
* gnu/packages/wm.scm (wlroots-0.19): New variable.

Change-Id: Iabd13690e9cafdcf876f4f3d18530fb3d75ae21f
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:56 +09:00
Rutherther
a6691468ef
gnu: Add wlroots-0.18.
* gnu/packages/wm.scm (wlroots-0.18): New variable.

Change-Id: I01eda336601fc26a03bb76c407caf95dd4b97a55
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
8404fb8777
gnu: gnudatalanguage: Update to 1.1.1.
* gnu/packages/data-language.scm (gnudatalanguage): Update to 1.1.1.

Change-Id: I2ffc591bd10f33e120639623ceb87ca96b6a3eae
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
6de3eef18c
gnu: freerdp-3: Use current ffmpeg.
* gnu/packages/rdesktop.scm (freerdp-3)
[inputs]: Replace ffmpeg-4 with current ffmpeg (8).

Change-Id: If9687f3e7f753628d6071e9b7e8baa82ffa3d673
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
4b47837cf4
gnu: gupnp-av: Update to 0.14.4.
* gnu/packages/gnome.scm (gupnp-av): Update to 0.14.4.

Change-Id: I13cce944540f84f36d888e2266fb70728efecf2e
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
85d06eda27
gnu: python-ufo2ft: Update to 2.33.4.
* gnu/packages/fontutils.scm (python-ufo2ft): Update to 2.33.4.
[arguments]: New field, to skip a few tests.

Change-Id: Iee6630e3ca9f4d6c69dd3a9aae80fef1d90aa7da
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
a8bc6c5e12
gnu: python-cu2qu: Update to 1.6.7.post2.
* gnu/packages/fontutils.scm (python-cu2qu): Update to 1.6.7.post2.

Change-Id: I1dd2a69912ac8c64dfd349695ee0713e51aefd33
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
ab6f561324
gnu: python-afdko: Update to 4.0.2.
* gnu/packages/fontutils.scm (python-afdko): Update to 4.0.2.

Change-Id: I4c05f1100d80cbbd2b542cbdc537d7ab8373847a
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
284f0e91f9
gnu: python-cffsubr: Update to 0.3.0.
* gnu/packages/fontutils.scm (python-cffsubr): Update to 0.3.0.

Change-Id: I452751aa6f2eea2cb4332f6d162b06d10d7c411e
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
a3a2f96069
gnu: python-afdko-3.6.1: Skip extra tests.
* gnu/packages/fontutils.scm (python-afdko-3.6.1)
[#:phases] {check}: Ignore proofpdf_test tests, newly failing due to libxml2
update.

Change-Id: Ia951573cfc54b25462bc38a3d29ee45275a3e91d
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
349f305b55
gnu: python-lxml-4.9: Disable test suite.
* gnu/packages/xml.scm (python-lxml-4.9) [#:tests?]: Set to #f.
[#:phases] {check}: Delete.

Change-Id: I1e984f27598ed7dfd694712bb609b4d6a2ab242c
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
037e3bd8d8
gnu: python-ufolib2: Update to 0.18.1.
* gnu/packages/fontutils.scm (python-ufolib2): Update to 0.18.1.

Change-Id: I598c2589f515cd4b0eef733b84491b64d77258ab
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
0414fd6e6d
gnu: python-defcon-bootstrap: Update to 0.12.2.
* gnu/packages/fontutils.scm (python-defcon-bootstrap): Update to 0.12.2.
Make hidden.
(python-defcon): Un-hide.

Change-Id: I107b1d40bd94c98bc14e81a052d28a8508eb2959
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
3459c11411
gnu: python-fontparts-bootstrap: Update to 0.13.3.
* gnu/packages/fontutils.scm (python-fontparts-bootstrap): Update to 0.13.3.
[source]: Adjust URI.
[native-inputs]: Remove unzip.

Change-Id: I81096277898f8b337bdb54fc23d3b8ac433b6426
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
07339a7420
gnu: python-booleanoperations: Update to 0.9.0.
* gnu/packages/graphics.scm (python-booleanoperations): Update to 0.9.0.
[#:modules, #:test-flags]: New arguments.
[native-inputs]: Delete unzip.

Change-Id: If4c4f36545f90b8d76d1a6a8c214aeaaa0841a58
2025-09-30 09:29:56 +09:00
Maxim Cournoyer
d7d573920a
gnu: python-unicodedata2: Update to 16.0.0.
* gnu/packages/python-xyz.scm (python-unicodedata2): Update to 16.0.0.

Change-Id: Ia3edef9c5ada75b2c85727be3b55db4ab2bc7b44
2025-09-30 09:29:55 +09:00
Maxim Cournoyer
a67a4b58be
gnu: harfbuzz: Update to 11.4.4.
* gnu/packages/gtk.scm (harfbuzz): Update to 11.4.4.

Change-Id: I0716fcaee731e062a250b5c9d4a04a433f2310b0
2025-09-30 09:29:55 +09:00
Maxim Cournoyer
bb04d25364
gnu: python-fonttools-minimal: Update to 4.59.2.
* gnu/packages/python-xyz.scm (python-fonttools-minimal): Update to 4.59.2.
[native-inputs]: Delete field.
(python-fonttools) [#:phases] {check}: Adjust.

Change-Id: Iaa4569e734956ff65dcd0bd6d8ed712858ee493c
2025-09-30 09:29:55 +09:00
John Kehayias
7e10845142
gnu: r-xml2: Update to 1.4.0.
* gnu/packages/cran.scm (r-xml2): Update to 1.4.0.

Change-Id: I4ec43f8e2b660086c16bd3c4479d071ee0fbec9d
2025-09-30 09:29:55 +09:00
Rutherther
e346624d6c
gnu: mpv: Patch removed constants from ffmpeg 8.0.
MPV 0.40.0 didn't remove deprecated constants. Those
constants were removed in ffmpeg 8.0. Mpv is not planning
on releasing a patch release any time soon.

* gnu/packages/patches/mpv-0.40.0-fix-ffmpeg-8.0.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/video.scm (mpv)<source>[patches]: Apply it.

Change-Id: Id48bf513e6c80b59ae2bb167e7e98e41d5efad6f
Signed-off-by: John Kehayias <john@guixotic.coop>
2025-09-30 09:29:55 +09:00
Maxim Cournoyer
e5079eb3b1
gnu: libmusicbrainz: Update to 5.1.0-0.4efbed3.
* gnu/packages/music.scm (libmusicbrainz): Update to 5.1.0-0.4efbed3.
[#:phases]: Delete trailing #t.

Change-Id: Ia256588bac3d618e90960783a0fec94f0bdabf67
2025-09-30 09:29:55 +09:00
John Kehayias
624af63158
gnu: python-beautifulsoup4: Update to 4.13.5.
* gnu/packages/python-xyz.scm (python-beautifulsoup4): Update to 4.13.5.

Change-Id: Ie1786b0b16b4332ea6295a3ecea83540dbab82cc
2025-09-30 09:29:55 +09:00
Sergey Trofimov
fbdb22556e
gnu: sane: Update to 1.4.0.
* gnu/packages/scanner.scm (sane): Update to 1.4.0.

Change-Id: I6c0d98de464c38d5c326a7f8346ca03a2be6a34c
2025-09-30 09:29:55 +09:00
Sergey Trofimov
8ff8de3b41
gnu: sane-airscan: Update to 0.99.36.
* gnu/packages/scanner.scm (sane-airscan): Update to 0.99.36.

Change-Id: I1e5227d2ff2e4578531bcb7051ad9d7f94d3b323
2025-09-30 09:29:55 +09:00
Sergey Trofimov
939e17f1cc
gnu: Replace usages of sane-backends with sane.
Replacement done using:
find gnu/packages -name '*.scm' -print0 | xargs -0 sed -ri \
  -e 's/"sane-backends" ,sane-backends/"sane" ,sane/' \
  -e 's/(list[^"]+sane)-backends/\1/' \
  -e 's/^( +sane)-backends/\1/'

* gnu/packages/hardware.scm (hw-probe)[inputs]:
* gnu/packages/wine.scm (wine)[inputs]:
* gnu/packages/python-xyz.scm (python-sane)[inputs]:
* gnu/packages/ocr.scm (gimagereader)[inputs]:
* gnu/packages/libreoffice.scm (libreoffice)[inputs]:
* gnu/packages/kde.scm (ksanecore)[inputs]:
* gnu/packages/gnome.scm (simple-scan, ocrfeeder, colord)[inputs]:
* gnu/packages/scanner.scm (scanbd, xsane, sane-airscan)[inputs]:
Replace sane-backends with sane.

Change-Id: If995e846ed4f53a740119b362e07c36c90a621cb
2025-09-30 09:29:55 +09:00
Sergey Trofimov
01179dadaf
gnu: scanbd: Format inputs.
* gnu/packages/scanner.scm (scanbd)[inputs]: Use new format.

Change-Id: I82d4d013b93cf445056bfe3a0c78addef367b0db
2025-09-30 09:29:55 +09:00
Sergey Trofimov
9e2db08b3e
gnu: sane-backends: Remove hplip dependency.
* gnu/packages/scanner.scm (sane-backends)[inputs]: Omit hplip.
[arguments]: Remove hplip phases.
* gnu/services/desktop.scm (lift-sane-configuration): Warn user that
hplip needs to be explicitly enabled in sane-configuration.

Change-Id: I05ffc3a2d04c5ee3da2739b68085557ff791814f
2025-09-30 09:29:55 +09:00
Sergey Trofimov
a14b8a1a4d
gnu: hplip: Make SANE backend truly pluggable.
* gnu/packages/cups.scm (hplip)[#:phases]
<move-sane-config-to-dll.d>: Fix dynamic loading.

Change-Id: I5ae3edabf8ccb87d547990f641fe42d2260e9080
2025-09-30 09:29:55 +09:00
Sergey Trofimov
f3271223c8
services: sane: Support pluggable backends.
* gnu/services/desktop.scm (sane-configuration): New record.
(sane-service-type): Add native search paths to environment.

Change-Id: Ia7b66b62cf027200dd94533f32c1e4bc0ed373d3
2025-09-30 09:29:55 +09:00
Sergey Trofimov
1b8fd37841
gnu: sane-backends-minimal: Rename to sane.
sane-backends-minimal contains helper programs and library files, but
none of the backends. Renaming the package to avoid confusion.

* gnu/packages/scanner.scm (sane-backends-minimal): Rename to...
(sane): ... this.
(utsushi, hplip, hplip-minimal)[inputs]: Replace sane-backends-minimal
with sane.

Change-Id: If987248f0ad8ac7041454a164d905c1c069242b7
2025-09-30 09:29:54 +09:00
Sergey Trofimov
ebc8f12d65
gnu: sane-backends-minimal: Respect backend search paths.
SANE's dynamic loading mechanism looks for configs in SANE_CONFIG_DIR,
and the libraries are expected to be either in LD_LIBRARY_PATH or in the
LIBDIR, which is set during the build to $PREFIX/lib/sane. A small patch
is necessary to make SANE respect backend search paths set by Guix.

* gnu/local.mk: Register sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch
* gnu/packages/scanner.scm (sane-backends-minimal): Patch dynamic
loading mechanism to look for libraries in SANE_BACKEND_LIB_PATH.

Change-Id: I132a709d171331d249acfe2fd1242dae43867ae8
2025-09-30 09:29:54 +09:00
John Kehayias
c7cb794db8
gnu: python-fonttools: Fix build.
* gnu/packages/python-xyz.scm (python-fonttools)[propagated-inputs]: Change
python-lxml-4.9 to python-lxml.

Change-Id: I5fb32f3cd02dd7d9d537a7464bf0bcc5f0088f93
2025-09-30 09:29:54 +09:00
Ada Stevenson
5164edd486
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 <john@guixotic.coop>
2025-09-30 09:29:54 +09:00
John Kehayias
bf73939ccb
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
2025-09-30 09:29:54 +09:00
John Kehayias
320d61df30
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
2025-09-30 09:29:54 +09:00
John Kehayias
b540288537
gnu: tracker: Fix build (re-enable dependency fallbacks).
* gnu/packages/gnome.scm (tracker)[arguments]<#:configure-flags>: Add
"--wrap-mode=nodownload".

Change-Id: I84a7cfb5cd301cde395e82863283e23bb364ac70
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
09c70489d5
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 71c8e360f6)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
85d7be026e
gnu: Add gst-rtsp-server.
* gnu/packages/gstreamer.scm (gst-rtsp-server): New variable.

(cherry picked from commit 2605aa6323)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
bd0df4fc26
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 64c4c8d384)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
8b38c804c9
gnu: gst-libav: Update to 1.26.3.
* gnu/packages/gstreamer.scm (gst-libav): Update to 1.26.3.

(cherry picked from commit 2c9e1edfe4)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
d2287b6682
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 2ecf2f0892)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
2689fcfe6a
gnu: gst-plugins-bad: Update to 1.26.3.
* 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 82e2d85db5)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
e8f8d6573a
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 e154bdc69b)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
061d64c1d1
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 8c82fb2fa3)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
72e2e841d3
gnu: gstreamer: Update to 1.26.3.
* gnu/packages/gstreamer.scm (gstreamer): Update to 1.26.3.

(cherry picked from commit 27ae993a06)
2025-09-30 09:29:54 +09:00
Liliana Marie Prikler
7e5111f5a1
gnu: gstreamer-docs: Update to 1.26.3.
* gnu/packages/gstreamer.scm (gstreamer-docs): Update to 1.26.3.

(cherry picked from commit 413d5f948b)
2025-09-30 09:29:53 +09:00
John Kehayias
57abab7f07
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
2025-09-30 09:29:53 +09:00
John Kehayias
138a65bacd
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
2025-09-30 09:29:53 +09:00
John Kehayias
da652f8e33
gnu: liblangtag: Update to 0.6.7.
* gnu/packages/libreoffice.scm (liblangtag): Update to 0.6.7.

Change-Id: I53a382d3c5784240a941c85f3efc29612655b4df
2025-09-30 09:29:53 +09:00
John Kehayias
6ce1c5e01f
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
2025-09-30 09:29:53 +09:00
John Kehayias
e71d27bab0
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
2025-09-30 09:29:53 +09:00
John Kehayias
0fcf57aafc
gnu: mariadb: Update to 10.11.14.
* gnu/packages/databases.scm (mariadb): Update to 10.11.14.

Change-Id: Iea635acff6b89f9be23f0ce4ba255ef322eb8643
2025-09-30 09:29:53 +09:00
John Kehayias
bb785fd355
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
2025-09-30 09:29:53 +09:00
John Kehayias
818c772527
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
2025-09-30 09:29:53 +09:00
Liliana Marie Prikler
858adf2166
mesa: Re-enable dependency fallbacks.
* gnu/packages/gl.scm (mesa)[#:configure-flags]: Add “--wrap-mode=nodownload”.

(cherry picked from commit f0b058a541)
2025-09-30 09:29:53 +09:00
John Kehayias
051275db55
gnu: mesa: Update to 25.2.3.
* gnu/packages/gl.scm (mesa): Update to 25.2.3.

Change-Id: I28cee586fc49ba5aad9fa362260357e96d76977f
2025-09-30 09:29:53 +09:00
Sharlatan Hellseher
941d0d585f
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 <liliana.prikler@gmail.com>
Co-authored-by: Dariqq <dariqq@posteo.net>
Change-Id: I31932f24d1a54b8c79987296daaeb5a5285a8344
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Co-authored-by: John Kehayias <john@guixotic.coop>
(cherry picked from commit 3bcc621b2f)
2025-09-30 09:29:53 +09:00
Maxim Cournoyer
51c5e59ef8
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 d9b9670b05)
2025-09-30 09:29:53 +09:00
Dariqq
fb091cf948
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 fe8dded27f)
2025-09-30 09:29:53 +09:00
Sergey Trofimov
8d6b2bdada
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 <john@guixotic.coop>
2025-09-30 09:29:53 +09:00
John Kehayias
f001557a61
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
2025-09-30 09:29:53 +09:00
John Kehayias
b1aeae1e3b
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
2025-09-30 09:29:53 +09:00
John Kehayias
06d7fe7cdb
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
2025-09-30 09:29:52 +09:00
John Kehayias
ffab66960b
gnu: python-lxml: Update to 6.0.1.
* gnu/packages/xml.scm (python-lxml): Update to 6.0.1.

Change-Id: Iab60f97a74c804e17fd2f2adf326d8a098c06ef0
2025-09-30 09:29:52 +09:00
John Kehayias
7b695827c1
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 <https://codeberg.org/guix/guix/issues/1257>.

* gnu/packages/autotools.scm (automake)[arguments]<#:phases>: Skip some
tests.

Change-Id: I87099386483efdbb62e42251298f0995f3967179
2025-09-30 09:29:52 +09:00
John Kehayias
91d711474c
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 <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=902051> 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
2025-09-30 09:29:52 +09:00
John Kehayias
b0254d3d3b
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
2025-09-30 09:29:52 +09:00
John Kehayias
7df42168f6
gnu: libx11: Update to 1.8.12.
* gnu/packages/xorg.scm (libx11): Update to 1.8.12.

Change-Id: I42986033bde1534e09a0f027c3599ed4142ff9c0
2025-09-30 09:29:52 +09:00
John Kehayias
502e5d335c
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
2025-09-30 09:29:52 +09:00
John Kehayias
3f6ac45d1e
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
2025-09-30 09:29:52 +09:00
John Kehayias
fd051bf47b
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
2025-09-30 09:29:52 +09:00
John Kehayias
5ce65db069
gnu: wget: Ungraft.
* gnu/packages/wget.scm (wget): Update to 1.25.0.
[replacement]: Remove.
(wget/fixed): Remove.

Change-Id: Ib3798d67bc293295a0480e2db36de98e1ce7edea
2025-09-30 09:29:52 +09:00
John Kehayias
b7364f4009
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
<https://issues.guix.gnu.org/69962>.

* 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
2025-09-30 09:29:52 +09:00
Maxim Cournoyer
72ef4a0259
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
2025-09-30 09:29:52 +09:00
Maxim Cournoyer
10d15e4714
gnu: mesa: Update to 25.2.2.
* gnu/packages/gl.scm (mesa): Update to 25.2.2.

Change-Id: Iad91783d151000f6a7e43ce5d59f4b9b38aedc45
2025-09-30 09:29:52 +09:00
Cayetano Santos
20aa8a583e
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 <maxim@guixotic.coop>
2025-09-30 09:29:52 +09:00
Cayetano Santos
8f453fe775
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 <maxim@guixotic.coop>
2025-09-30 09:29:52 +09:00
Cayetano Santos
6b7a5e6779
gnu: vkd3d: Improve style.
* gnu/packages/vulkan.scm (vkd3d)[arguments]: Use G-Expressions.
[native-inputs]: Modernize.

Change-Id: I29d558f777f3bd56e55e8e5872ca7fa291081b0d
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
5fbf19bb93
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 <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
d712eab046
gnu: shaderc: Improve style.
* gnu/packages/vulkan.scm (shaderc)[arguments]: Use G-Expressions.

Change-Id: Ifa7b303c173a5093fa7733fa67e09eab1b39d8bd
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
b5838bd0a9
gnu: vulkan-tools: Improve style.
* gnu/packages/vulkan.scm (vulkan-tools): Fix max column.

Change-Id: Ibae23e8eaed1fa6c3f0ea593b4c64330e4037a94
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
c72cd11b63
gnu: vulkan-validationlayers: Improve style.
* gnu/packages/vulkan.scm (vulkan-validationlayers): Fix max column.

Change-Id: I3a79acbc7c4a36105e27a6dfaba028094a5d5232
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
e196e689e0
gnu: vulkan-loader: Improve style.
* gnu/packages/vulkan.scm (vulkan-loader): Fix max column.

Change-Id: I613ef9c8b87200168af3ab4c0379b0c8b2d09c58
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
c341440812
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 <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
131ec8961f
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 <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
Cayetano Santos
81e27add4e
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 <maxim@guixotic.coop>
2025-09-30 09:29:51 +09:00
John Kehayias
b6fe97abdc
gnu: mesa: Update to 25.2.1.
* gnu/packages/gl.scm (mesa): Update to 25.2.1.

Change-Id: I4ee0255e6208b282ccca139c56e051a08170e026
2025-09-30 09:29:51 +09:00
John Kehayias
b234aaf844
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
2025-09-30 09:29:51 +09:00
John Kehayias
ab915f981a
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
2025-09-30 09:29:51 +09:00
John Kehayias
ea7095f117
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
2025-09-30 09:29:51 +09:00
John Kehayias
391b246fe0
gnu: libinput: Update to 1.29.0.
* gnu/packages/freedesktop.scm (libinput): Update to 1.29.0.

Change-Id: Ib54bd0d7202707852694f875c44c84b90589feac
2025-09-30 09:29:51 +09:00
John Kehayias
8a7069e07f
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
2025-09-30 09:29:51 +09:00
John Kehayias
39b329ab76
gnu: Add meson-1.8.
* gnu/packages/build-tools.scm (meson-1.8): New variable.

Change-Id: I9895780b41f659d73750519825e7340a1f2911f9
2025-09-30 09:29:51 +09:00
Murilo
ff4c7c2bd6
gnu: Remove libinput-minimal-next.
* gnu/packages/freedesktop.scm (libinput-minimal-next): Delete variable.

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-30 09:29:50 +09:00
Murilo
d7e6264de6
gnu: hyprland: Build with libinput-minimal.
* gnu/packages/wm.scm (hyprland)[inputs]: Change libinput-minimal-next
to libinput-minimal.

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-30 09:29:50 +09:00
Murilo
d14946c9ee
gnu: libinput: Update to 1.28.1.
* gnu/packages/freedesktop.scm (libinput): Update to 1.28.1.

Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-09-30 09:29:50 +09:00
John Kehayias
c88a696df2
gnu: mesa: Update to 25.1.6.
* gnu/packages/gl.scm (mesa): Update to 25.1.6.

Change-Id: I42e6d33411aea3876d84477212f5e21fadcf2605
2025-09-30 09:29:50 +09:00
Philipp Berger
cd62c6ceb8
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 <john.kehayias@protonmail.com>
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
62d86ff0fe
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
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
af32c4258a
gnu: libplacebo: Update to 7.351.0.
* gnu/packages/video.scm (libplacebo): Update to 7.351.0.

Change-Id: I96b5c43f9269e3ce61390118269dadfcca0f3103
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
ea5950593f
gnu: mesa: Update to 25.1.5.
* gnu/packages/gl.scm (mesa): Update to 25.1.5.

Change-Id: Ic05db30a9c4d8ee8c165eb8455c245aa2e2afd85
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
a59b8973b6
gnu: vulkan-validationlayers: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (vulkan-validationlayers): Update to 1.4.313.0.

Change-Id: I122d61f1e931ec6624cbf96ed64f585ad92f4789
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
fabce974a1
gnu: vulkan-tools: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (vulkan-tools): Update to 1.4.313.0.

Change-Id: Ic96b91a364836a312a1d5f5d58fd2978ac50522a
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
0b3685a8b1
gnu: vulkan-loader: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (vulkan-loader): Update to 1.4.313.0.

Change-Id: I5a969aab936ae40a7694dcc0d92e158d8375290a
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
9412895e48
gnu: vulkan-headers: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (vulkan-headers): Update to 1.4.313.0.

Change-Id: Ibed13fb472f5511a8e73625df19058e05b87d78a
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
b7fdaae5d2
gnu: shaderc: Update to 2025.3.
* gnu/packages/vulkan.scm (shaderc): Update to 2025.3.

Change-Id: If5ac7736ba1f32ddd24aaba45e179768aa37558f
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
8563cfe893
gnu: vulkan-utility-libraries: Update to 1.4.313.
* gnu/packages/vulkan.scm (vulkan-utility-libraries): Update to 1.4.313.

Change-Id: Ie7cbeb3393fb3d33859bf3983385961e072025ec
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
bc5b7bcc51
gnu: spirv-cross: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (spirv-cross): Update to 1.4.313.0.

Change-Id: Idee2fa8bd45d2510990bb0d6ab1f9352094693ef
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
54c545e82e
gnu: glslang: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (glslang): Update to 1.4.313.0.

Change-Id: Ie3a4168dc4d62846b68b9a1f417edebf7224134f
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
cf2d74d048
gnu: spirv-tools: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (spirv-tools): Update to 1.4.313.0.

Change-Id: Id436a37723e3fbc75525877f66bbf092b19db8db
2025-09-30 09:29:50 +09:00
Maxim Cournoyer
064d3068dc
gnu: spirv-headers: Update to 1.4.313.0.
* gnu/packages/vulkan.scm (spirv-headers): Update to 1.4.313.0.

Change-Id: Id20c09fad12aad12ca3dd045af0369f63a5ef49d
2025-09-30 09:29:49 +09:00
Maxim Cournoyer
96a580c5d1
gnu: wayland-protocols: Update to 1.45.
* gnu/packages/freedesktop.scm (wayland-protocols): Update to 1.45.

Change-Id: I6855e59a86dec111b45c0e87d6e3fabe62880aa9
2025-09-30 09:29:49 +09:00
Jesse Gibbons
fac230d68e
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 <maxim@guixotic.coop>
2025-09-30 09:29:49 +09:00
Maxim Cournoyer
8fa67d6c0e
gnu: ffmpeg-7: Enable libplacebo support.
* gnu/packages/video.scm (ffmpeg-7) [inputs]: Add libplacebo.
[configure-flags]: Add --enable-libplacebo.

Change-Id: Ib46d46505417b63d44d28369662617e8ebbf9098
2025-09-30 09:29:49 +09:00
45mg
cb5d39c646
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 <maxim@guixotic.coop>
2025-09-30 09:29:49 +09:00
Maxim Cournoyer
7a6d0160f9
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
2025-09-30 09:29:24 +09:00
Maxim Cournoyer
b8951c7122
gnu: ffmpeg: Update to 6.1.2.
* gnu/packages/video.scm (ffmpeg): Update to 6.1.2.

Change-Id: I32ee4ff66f3e8dcf87dbfb373252859bdb1c86d6
2025-09-30 09:28:03 +09:00
pinoaffe
5ae8ea40b6
gnu: emacs-mpdel: Update to 2.1.1.
*  (emacs-mpdel): Update to 2.1.1.

Change-Id: If9174f93fbf2ed9501ef39246d1637c00839fcc4
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-09-29 20:02:26 +02:00
pinoaffe
a2c24c2cfe
gnu: emacs-libmpdel: Update to 2.1.0.
* gnu/packages/emacs-xyz.scm (emacs-libmpdel): Update to 2.1.0.

Change-Id: I8d9939faa625bd7c03e9a74152e1eb00918bc854
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-09-29 20:02:26 +02:00
Cayetano Santos
582be17cd0
gnu: makel: Update to 1.0.0.
* gnu/packages/emacs-build.scm (makel): Update to 1.0.0.
[arguments]: Use G-Expressions.
<#:tests?>: Activate.

Change-Id: I8ccfae0e4501d8a8c43af186e70d6cf010f700e6
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-09-29 20:02:25 +02:00
Sughosha
a49269fd42
gnu: crow-translate: Update to 4.0.2.
* gnu/packages/kde-office.scm (crow-translate): Update to 4.0.2.
[source]: Update uri; add snippet.
[arguments]: Update comment.
<#:qtbase>: Use qtbase.
<#:configure-flags>: Add "-DCMAKE_CXX_FLAGS".
<#:phases>: Add 'unbundle-singleapplication phase.
[inputs]: Reorder; remove qtx11extras; replace qtbase-5 with qtbase, qtsvg-5
with qtsvg, qtmultimedia-5 with qtmultimedia and kwayland-5 with kwayland; add
breeze-icons, espeak-ng, qhotkey, qtscxml, qtspeech and single-application.
[native-inputs]: Replace qttools-5 with qttools.

Change-Id: I5b6f10c617d9fc7462c64710a5e303d99af26bbd
2025-09-29 22:11:12 +08:00
Sughosha
2afc99e027
gnu: Add qhotkey.
* gnu/packages/qt.scm (qhotkey): New variable.

Change-Id: Iea8794291af9828041862aa3f5e8c5dff7f9f8b3
2025-09-29 22:11:12 +08:00
Sughosha
dfadde6a45
gnu: crow-translate: Move to kde-office.scm.
* gnu/packages/kde-office.scm (crow-translate): Delete variable.
* gnu/packages/kde-office.scm (crow-translate): New variable.

Change-Id: I06fb1cebe44fb94cd78ec49c01f71dcf004400ad
2025-09-29 22:11:11 +08:00
Sughosha
92c6501a55
gnu: tellico: Update to 4.1.3.
* gnu/packages/kde-multimedia.scm (tellico): Update to 4.1.3.

Change-Id: I1bd2a2675ffa24765b74c6877bf21825fbc4de04
2025-09-29 22:11:11 +08:00
Sughosha
677d7bc5a9
gnu: ghostwriter: Update to 25.08.1.
* gnu/packages/kde-multimedia.scm (ghostwriter): Update to 25.08.1.

Change-Id: Icb7317a48ecf61832ef2f1132bf175a8e40bb5ab
2025-09-29 22:11:11 +08:00
pinoaffe
562802c23c
gnu: Add digikam.
* gnu/packages/image-viewers.scm (digikam): New variable.

Change-Id: I7d013e5c2b0cd9fc05d994449a8d3fd4db6b8393
2025-09-29 21:40:56 +08:00
pinoaffe
87da209e57
gnu: Add exiv2-static.
* gnu/packages/image.scm (exiv2-static): New variable.

Change-Id: Ie2d6abad666028fca761910be098d3fd165cbe50
2025-09-29 21:40:37 +08:00
Trevor Arjeski
b4b4be47cb
services: tor: Add nss-certs.
When using a tor-transport-plugin, namely a webtunnel with lyrebird, it is
necessary to have access to ssl certs to establish a connection to the bridge
over https.

* gnu/services/networking.scm (tor-shepherd-service): add nss-certs
file-sytem-mapping

Change-Id: Ifb7488d406cc6300eb6ac95e7dc0dfef0ff571db
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-09-29 15:28:08 +02:00
Junker
c7b7089963
gnu: Add faber.
* gnu/packages/task-runners.scm (faber): New variable.

Change-Id: Ic6dbfa00b99cd979130d5142a3165a1ab4d7a03d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-29 15:28:08 +02:00
Sören Tempel
04120f69dd
gnu: Add lhs2tex.
* gnu/packages/haskell-apps.scm (lhs2tex): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-29 15:28:08 +02:00
Jake Forster
7eeab5ffa7
gnu: simpleitk: Fix 'pip install'.
* gnu/packages/image-processing.scm: Import (gnu packages nss).
(simpleitk) [native-inputs]: Add nss-certs-for-test.

Change-Id: If8c1e75b8813f44384fe0c4a5396fce46441d077
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-29 15:12:20 +02:00
Arun Isaac
16aaabdf53
gnu: phockup: Respect tests?.
* gnu/packages/image.scm (phockup)[arguments]: Respect tests? in the check
phase.
2025-09-29 13:51:48 +01:00
Arun Isaac
2fe2935180
gnu: phockup: Update to 1.13.0.
* gnu/packages/image.scm (phockup): Update to 1.13.0.
2025-09-29 13:51:48 +01:00
Arun Isaac
a6839f9355
gnu: phockup: Depend on python-pytest-socket for tests.
* gnu/packages/image.scm (phockup)[native-inputs]: Add python-pytest-socket.
2025-09-29 13:51:41 +01:00
Noé Lopez
8886042f8a
gnu: gnunet: Update to 0.25.1.
* gnu/packages/gnunet.scm (gnunet): Update to 0.25.1.

Change-Id: I006947f6e1f58f204dc7241aa44f4536790cf9d0
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-29 14:47:01 +02:00
Remco van 't Veer
ca60f03d84
gnu: assimp: Fix aarch64 build.
Some tests fail on aarch64 upstream.  See also:
https://github.com/assimp/assimp/issues/6246

* gnu/packages/graphics.scm (assimp) [arguments] <#:phases>: Disable
tests failing on target aarch64.

Change-Id: I193fb97b285bab9b7e092b9ad21b7e301177e1f4
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-09-29 14:48:51 +03:00
David Arroyo
fd888ddf63
gnu: linux-initrd: Fix f2fs module dependencies
The linux kernel has renamed the crc32_generic module to
crc32_cryptoapi. This fixes the f2fs-root-os system test.

* gnu/system/linux-initrd.scm (file-system-type-modules): update module
  name

Change-Id: I73a135e453434e726ea9d3ff99ab1a83b4810a10
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-09-29 12:56:30 +03:00
Andreas Enge
a0321563eb
gnu: php: Update to 8.3.13.
* gnu/packages/php.scm (php): Update to 8.3.13.

Change-Id: Ie803bffa03019f9a31c8cfa84d016d98be9baee6
2025-09-29 11:41:29 +02:00
宋文武
adc443c39e
gnu: easyrpg-player: Update to 0.8.1.1.
* gnu/packages/easyrpg.scm (easyrpg-player): Update to 0.8.1.1.
[inputs]: Remove sdl2-mixer.
[license]: Update comment.

Change-Id: I507f49e6e3d5558d50cec8927d3cd81abd7c84ff
2025-09-29 17:13:13 +08:00
宋文武
04d4b01979
gnu: liblcf: Update to 0.8.1.
* gnu/packages/easyrpg.scm (liblcf): Update to 0.8.1.
[propagated-inputs]: Add libinih.
[license]: Update comment.

Change-Id: Id137c466d8e49e10981837211cf0bd51dbab32ce
2025-09-29 17:13:06 +08:00
Alissa Istleyeva
98b02667e3
gnu: libvirt: Update to 11.5.0.
Fixes: guix/guix#2563.

* gnu/packages/virtualization.scm (libvirt): Update to 11.5.0.
(python-libvirt): Update to 11.5.0.
* gnu/packages/patches/libvirt-add-install-prefix.patch: Pull changes
from NixOS.

Change-Id: I13b619028cb2292c46f78669170265ef29e54b6b
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2025-09-29 11:49:23 +03:00
Andreas Enge
323babaa18
gnu: Remove ffmpeg-for-friction.
* gnu/packages/video.scm (ffmpeg-for-friction): Delete variable.

Change-Id: Ibab9be11e1b2e079b23114cded903c7920f41db9
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-29 10:27:42 +02:00
Andreas Enge
b2a0acdb97
gnu: friction: Build with newer ffmpeg.
* gnu/packages/graphics.scm (friction)[inputs]: Remove ffmpeg-for-friction;
add ffmpeg.

Change-Id: Ia925749b4dd8052f472a221e2038e756d13c1d8a
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-09-29 10:27:42 +02:00
André Batista
02264cf4cb
gnu: dwm: Fix desktop file.
* gnu/packages/suckless.scm (dwm)[arguments]<#:phases>:
Remove '%U' arg from Exec field in dwm.desktop file.

Closes: #2630
Change-Id: Ia1d8a1813ac1c1ff493308185f2ebf5abfb54354
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-09-29 16:19:37 +08:00
Simen Endsjø
84b416ece3
gnu: xinit: Update to 1.4.4.
* gnu/packages/patches/xinit-startx-mcookie-path.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Unregister patch.
* gnu/packages/xorg.scm (xinit): Update to 1.4.4
[source]: Remove patch.

Closes: #2772
Fixes: #2763
Change-Id: I1adc645ea9e9f1d897dc1f461aa58ad00bd7f6f9
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-09-29 16:11:42 +08:00
95 changed files with 2588 additions and 2460 deletions

View file

@ -15237,6 +15237,14 @@ gnu/packages/qt.scm:2070:13: qtquickcontrols2 would be upgraded from 5.15.8 to 5
@dots{}
@end example
@example
$ guix refresh -s module:kde-plasma --target-version=6.3.6
[@dots{}] plasma-systemmonitor would be upgraded from 6.3.4 to 6.3.6
[@dots{}] plasma-workspace-wallpapers would be upgraded from 6.3.4 to 6.3.6
[@dots{}] plasma-browser-integration would be upgraded from 6.3.4 to 6.3.6
@dots{}
@end example
@cindex partial target version, guix refresh
The @option{--target-version} option accepts partial version prefixes,
which can be useful to update to the latest major or major-minor
@ -26957,23 +26965,46 @@ site} for more information.
@defvar sane-service-type
This service provides access to scanners @i{via}
@uref{http://www.sane-project.org, SANE} by installing the necessary
udev rules. It is included in @code{%desktop-services} (@pxref{Desktop
Services}) and relies by default on @code{sane-backends-minimal} package
(see below) for hardware support.
udev rules and pluggable backends. It is included in
@code{%desktop-services} (@pxref{Desktop Services}) and relies by
default on @code{sane-backends} package (see below) for hardware
support.
@end defvar
@defvar sane-backends-minimal
The default package which the @code{sane-service-type} installs. It
supports many recent scanners.
@end defvar
@deftp {Data Type} sane-configuration
Data type representing the configuration for SANE.
@defvar sane-backends
This package includes support for all scanners that
@code{sane-backends-minimal} supports, plus older Hewlett-Packard
scanners supported by @code{hplip} package. In order to use this on
a system which relies on @code{%desktop-services}, you may use
@code{modify-services} (@pxref{Service Reference,
@code{modify-services}}) as illustrated below:
@table @asis
@item @code{sane} (default: @code{sane})
Package containing SANE library.
@item @code{backends} (default: @code{(sane-backends)})
List of packages with pluggable SANE backends:
@itemize @bullet
@item
@code{sane-backends}: The default backend collection which supports many recent scanners,
@item
@code{sane-airscan}: A backend that enables network scanners supporting eSCL (Apple) or WSD,
(Microsoft) protocols
@item
@code{hplip}: A backend containing drivers for older Hewlett-Packard scanners,
@item
@code{utsushi}: A backend containing drivers for older Epson devices.
@end itemize
@end table
@end deftp
In order to use additional backends on a system which relies on
@code{%desktop-services}, you may use @code{modify-services}
(@pxref{Service Reference, @code{modify-services}}) as illustrated
below:
@lisp
(use-modules (gnu))
@ -26987,13 +27018,14 @@ a system which relies on @code{%desktop-services}, you may use
(define %my-desktop-services
;; List of desktop services that supports a broader range of scanners.
(modify-services %desktop-services
(sane-service-type _ => sane-backends)))
(sane-service-type _ =>
(sane-configuration
(backends (list sane-backends sane-airscan))))))
(operating-system
@dots{}
(services %my-desktop-services))
@end lisp
@end defvar
@deffn {Procedure} geoclue-application name [#:allowed? #t] [#:system? #f] [#:users '()]
Return a configuration allowing an application to access GeoClue

View file

@ -1136,7 +1136,7 @@ dist_patch_DATA = \
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
%D%/packages/patches/ctranslate2-local-build.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cups-minimal-Address-PPD-injection-issues.patch \
%D%/packages/patches/cups-relax-root-ownership-check.patch \
%D%/packages/patches/cura-engine-gcc-14.patch \
%D%/packages/patches/curl-CVE-2024-8096.patch \
%D%/packages/patches/curl-use-ssl-cert-env.patch \
@ -1228,6 +1228,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 \
@ -1553,6 +1554,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 \
@ -1603,6 +1605,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 \
@ -1674,6 +1677,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 \
@ -1746,6 +1750,7 @@ dist_patch_DATA = \
%D%/packages/patches/libofa-ftbfs-1.diff \
%D%/packages/patches/libofa-curl.diff \
%D%/packages/patches/libofa-ftbfs-2.diff \
%D%/packages/patches/libosinfo-libxml2-fix.patch \
%D%/packages/patches/libotr-test-auth-fix.patch \
%D%/packages/patches/libksieve-Fix-missing-link-libraries.patch \
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
@ -1786,7 +1791,6 @@ dist_patch_DATA = \
%D%/packages/patches/libxcb-path-max.patch \
%D%/packages/patches/libxml2-xpath0-Add-option-xpath0.patch \
%D%/packages/patches/libwpd-gcc-compat.patch \
%D%/packages/patches/libxslt-generated-ids.patch \
%D%/packages/patches/libxt-guix-search-paths.patch \
%D%/packages/patches/lierolibre-check-unaligned-access.patch \
%D%/packages/patches/lierolibre-is-free-software.patch \
@ -1867,6 +1871,7 @@ dist_patch_DATA = \
%D%/packages/patches/mpc123-initialize-ao.patch \
%D%/packages/patches/mpg321-CVE-2019-14247.patch \
%D%/packages/patches/mpg321-gcc-10.patch \
%D%/packages/patches/mpv-0.40.0-fix-ffmpeg-8.0.patch \
%D%/packages/patches/modglue-fix-build.patch \
%D%/packages/patches/modem-manager-fix-test-wrapper.patch \
%D%/packages/patches/module-init-tools-moduledir.patch \
@ -2226,6 +2231,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 \
@ -2261,6 +2267,7 @@ dist_patch_DATA = \
%D%/packages/patches/sage-safeguard-sage-getargspec-cython.patch \
%D%/packages/patches/sajson-for-gemmi-numbers-as-strings.patch \
%D%/packages/patches/sajson-build-with-gcc10.patch \
%D%/packages/patches/sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch \
%D%/packages/patches/sbc-fix-build-non-x86.patch \
%D%/packages/patches/sbcl-fix-arm64-shared-lib.patch \
%D%/packages/patches/sbcl-aserve-add-HTML-5-elements.patch \
@ -2433,6 +2440,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/warzone2100-unbundle-libs.patch \
%D%/packages/patches/wcstools-extend-makefiles.patch \
@ -2460,7 +2468,6 @@ dist_patch_DATA = \
%D%/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xgboost-use-system-dmlc-core.patch \
%D%/packages/patches/xinit-startx-mcookie-path.patch \
%D%/packages/patches/xiphos-glib.patch \
%D%/packages/patches/xmonad-dynamic-linking.patch \
%D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch \

View file

@ -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")

View file

@ -13,6 +13,7 @@
;;; Copyright © 2020, 2023, 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -460,7 +461,13 @@ Makefile, simplifying the entire process for the developer.")
'("t/tags-lisp-space.sh"
;; This test fails, probably a timestamp thing:
;; make: Nothing to be done for 'all'.
"t/remake-aclocal-version-mismatch.sh")
"t/remake-aclocal-version-mismatch.sh"
;; Non-deterministic test failures:
"t/aclocal-autoconf-version-check.sh"
"t/backcompat2.sh"
"t/backcompat3.sh"
"t/nodef.sh"
"t/nodef2.sh")
(("^#!.*" all)
(string-append all "exit 77;\n")))))
#$@(if (%current-target-system)

View file

@ -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

View file

@ -23604,7 +23604,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")

View file

@ -19,6 +19,7 @@
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Aiden Isik <aidenisik+git@member.fsf.org>
;;; Copyright © 2025 Josep Bigorra <jjbigorra@gmail.com>
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -308,7 +309,7 @@ files and generates build instructions for the Ninja build system.")
(define-public meson
(package
(name "meson")
(version "1.5.2")
(version "1.9.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
@ -316,8 +317,8 @@ files and generates build instructions for the Ninja build system.")
version ".tar.gz"))
(sha256
(base32
"02wi62k9w7716xxdgrrx68q89vaq3ncnbpw5ms0g27npn2df0mgr"))))
(build-system python-build-system)
"13a9pj7d2mxgv5gbd78di4pb4w722vjis0vmk38m1vdm95v2f9yd"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f ;disabled to avoid extra dependencies
#:phases
@ -327,12 +328,14 @@ files and generates build instructions for the Ninja build system.")
(replace 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* (search-input-file outputs "bin/meson")
(("# EASY-INSTALL-ENTRY-SCRIPT")
(format #f "\
import sys
sys.path.insert(0, '~a')
# EASY-INSTALL-ENTRY-SCRIPT" (site-packages inputs outputs)))))))))
(inputs (list python ninja/pinned))
(("import sys" all)
(string-append
all "\n"
"sys.path.insert(0, '"
(site-packages inputs outputs)
"')"))))))))
(native-inputs (list python-setuptools))
(inputs (list python ninja))
(home-page "https://mesonbuild.com/")
(synopsis "Build system designed to be fast and user-friendly")
(description

View file

@ -411,7 +411,6 @@
"system/openjpeg.patch"
;; adler2 is not part of our rust toolchain, check on next version.
"trixie/adler1.patch"
"trixie/libxml-parseerr.patch"
;; Remove after rust is past
;; <https://github.com/rust-lang/rust/pull/141061>.
"trixie/rust-no-alloc-shim.patch")))

View file

@ -38082,14 +38082,14 @@ offers access to an XPath \"interpreter\".")
(define-public r-xml2
(package
(name "r-xml2")
(version "1.3.8")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "xml2" version))
(sha256
(base32
"01qhmlr5rhsn25ddb8cm3vl9vyqk5c5cgpc6c0krs9wccd1j4pbj"))))
"0qnw4id8bknm3anvd9dlpg344s18dnxzm8lhbyqkcpgqfya84bhc"))))
(properties
;; Avoid dependency cycle.
'((updater-ignored-native-inputs . ("r-httr"))))

View file

@ -12,6 +12,7 @@
;;; Copyright © 2025 Lukas Gradl <lgradl@posteo.net>
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -321,7 +322,7 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
(define-public cups-minimal
(package
(name "cups-minimal")
(version "2.4.9")
(version "2.4.14")
(source
(origin
(method git-fetch)
@ -331,8 +332,8 @@ filters for the PDF-centric printing workflow introduced by OpenPrinting.")
;; Avoid NAME confusion: these are the complete CUPS sources.
(file-name (git-file-name "cups" version))
(sha256
(base32 "08wjd1flyaslhnwvxl39403qi3g675rk532ysiyk6cda4r8ks1g1"))
(patches (search-patches "cups-minimal-Address-PPD-injection-issues.patch"))))
(base32 "1dk5salizxy1qm19gw93ffdd34hsn1cd4s57nwl7nfhwwirkiri2"))
(patches (search-patches "cups-relax-root-ownership-check.patch"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
@ -703,6 +704,14 @@ should only be used as part of the Guix cups-pk-helper service.")
(string-append "rulessystemdir = " out "/lib/systemd/system"))
(("/etc/sane.d")
(string-append out "/etc/sane.d"))))))
(add-after 'install 'move-sane-config-to-dll.d
(lambda _
;; move dll.conf to dll.d - the directory intended for 3rd-party
;; backend configurations.
(let ((dll.d (string-append #$output "/etc/sane.d/dll.d"))
(dll.conf (string-append #$output "/etc/sane.d/dll.conf")))
(mkdir-p dll.d)
(rename-file dll.conf (string-append dll.d "/hpaio")))))
(add-after 'install 'install-models-dat
(lambda* (#:key outputs #:allow-other-keys)
(install-file "data/models/models.dat"
@ -751,7 +760,7 @@ should only be used as part of the Guix cups-pk-helper service.")
python-pygobject
python-pyqt
python-wrapper
sane-backends-minimal
sane
net-snmp
openssl
avahi
@ -789,7 +798,7 @@ should only be used as part of the Guix cups-pk-helper service.")
dbus
libjpeg-turbo
libusb
sane-backends-minimal
sane
zlib))
(synopsis "GUI-less version of hplip")))

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,7 +20,7 @@
(define-module (gnu packages data-language)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cmake)
#:use-module (guix git-download)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
@ -42,16 +43,17 @@
(define-public gnudatalanguage
(package
(name "gnudatalanguage")
(version "1.0.1")
(version "1.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gnudatalanguage/gdl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append
"https://github.com/gnudatalanguage/gdl/releases/download/v"
version "/gdl-v" version ".tar.gz"))
(sha256
(base32 "1bb3nin3qrzx2dwdk08vffp4bblrcpv6vv1ybaj499qhqcpqpc12"))))
(base32
"0qln7851dpfy78yyx5k01ch2yrik3k1a1a2727rvpqf5rnmx6kkl"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config python python-numpy))
@ -75,6 +77,7 @@
netcdf
plplot
proj
qhull
readline
shapelib
udunits

View file

@ -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

View file

@ -187,7 +187,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)
@ -198,7 +198,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
@ -219,12 +219,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 _
(for-each delete-file-recursively
;; Disable test that requires bibtex to avoid a
;; circular dependency.
(for-each delete-file-recursively
'("testing/012" "testing/012_cite.dox"))))
'("testing/012" "testing/012_cite.dox"
;; Reported upstream, see
;; <https://github.com/doxygen/doxygen/issues/11772>.
"testing/009" "testing/009_bug.cpp"))))
(add-before 'configure 'patch-sh
(lambda* (#:key inputs #:allow-other-keys)
(let ((/bin/sh (search-input-file inputs "/bin/sh")))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2018, 2025 宋文武 <iyzsong@envs.net>
;;; Copyright © 20192021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
@ -30,6 +30,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages linux)
#:use-module (gnu packages mp3)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
@ -42,7 +43,7 @@
(define-public liblcf
(package
(name "liblcf")
(version "0.8")
(version "0.8.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -50,34 +51,26 @@
"/liblcf-" version ".tar.gz"))
(sha256
(base32
"0kskflh2izc8q5p5x0rfxw8xa3591xfkmqf74rj72ff34xri4nj1"))))
"1b68yhs14b4ql1wfbm0jzklyqyi3b2wm3pm9zhx0ij2a98c8cnli"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
(propagated-inputs
;; Required by 'liblcf.pc'.
(list expat icu4c))
(list expat icu4c libinih))
(home-page "https://easyrpg.org/")
(synopsis "Library to handle RPG Maker 2000 and 2003 game data")
(description
"@code{liblcf} is a library to handle RPG Maker 2000 and 2003 game data.
It can read and write LCF and XML files.")
;; It includes a copy of Boost Preprocessor Cat and Stringize (boost-1.0):
;; src/boost/preprocessor/config.hpp
;; src/boost/preprocessor/cat.hpp
;; src/boost/preprocessor/stringize.hpp
;; and a copy of inih (bsd-3):
;; src/ini.h
;; src/ini.cpp
;; src/inireader.h
;; src/inireader.cpp
;; TODO: Unbundle them.
;; It includes a copy of span-lite (boost-1.0):
;; src/lcf/third_party/span.h
(license license:expat)))
(define-public easyrpg-player
(package
(name "easyrpg-player")
(version "0.8")
(version "0.8.1.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -85,7 +78,7 @@ It can read and write LCF and XML files.")
"/easyrpg-player-" version ".tar.gz"))
(sha256
(base32
"1brx2iix9d5i2lyjjcs03pq1xgl1gyh0yas8avazahgd9sn47696"))))
"0aa60568cvhxf93065wn2r6js7xh81vhsl2nw3bhs5g3l1smq28z"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags
@ -107,7 +100,6 @@ It can read and write LCF and XML files.")
mpg123
opusfile
pixman
sdl2-mixer
sdl2
speexdsp
wildmidi
@ -121,7 +113,6 @@ data.")
;; It bundles FMMidi YM2608 FM synthesizer emulator (bsd-3):
;; src/midisynth.h
;; src/midisynth.cpp
;; and PicoJSON JSON parser/serializer (bsd-2):
;; src/picojson.h
;; TODO: Unbundle them.
;; and WAV audio loader and writer (public-domain):
;; src/external/dr_wav.h
(license license:gpl3+)))

View file

@ -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

View file

@ -524,33 +524,29 @@ Lisp.")
(license license:expat)))
(define-public makel
(let ((commit "2c831098c28a1f581b016532fa1f6e1c596b8ed1")
(revision "0"))
(package
(name "makel")
(version (git-version "0.8.0" revision commit))
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/DamienCassou/makel")
(commit commit)))
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0lmfl27rqh1530j8g4z2k6y6mc25n54bjkqriqdkw3703kliyvry"))))
(base32 "143bdy4c81jbmp5sk1arnlmpc4dsw85n601x9rii2dgyn186l8si"))))
(build-system copy-build-system)
(arguments
(list
;; Some tests are currently broken, see
;; https://github.com/DamienCassou/makel/issues/6
#:tests? #f
#:modules
'((guix build copy-build-system)
#~((guix build copy-build-system)
(guix build utils)
(srfi srfi-1)
(srfi srfi-26)
(ice-9 ftw))
#:install-plan ''(("makel.mk" "include/")
#:install-plan
#~'(("makel.mk" "include/")
("README.org" "share/docs/"))
#:phases
#~(modify-phases %standard-phases
@ -575,13 +571,15 @@ Lisp.")
(with-directory-excursion "test"
(invoke "bash" "run-tests.sh"))
(format #f "Test suite not run.~%")))))))
(native-inputs (list bash-minimal emacs-minimal))
(inputs (list emacs-buttercup emacs-package-lint))
(native-inputs
(list bash-minimal emacs-minimal))
(inputs
(list emacs-buttercup emacs-package-lint))
(home-page "https://github.com/DamienCassou/makel")
(synopsis "Makefile to help checking Emacs packages")
(description "This package provides a makefile to help checking Emacs
packages.")
(license license:gpl3+))))
(description
"This package provides a Makefile to help checking Emacs packages.")
(license license:gpl3+)))
;; This is an alternative version patches for internal Guix tests.
;; The user-facing version is in emacs-xyz.scm

View file

@ -34442,7 +34442,7 @@ from Emacs.")
(define-public emacs-libmpdel
(package
(name "emacs-libmpdel")
(version "2.0.0")
(version "2.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -34451,10 +34451,20 @@ from Emacs.")
(file-name (git-file-name name version))
(sha256
(base32
"03bavca89cf7dsjmg7hb48qnvca41ndiij33iw5yjjhbq1zyj8r4"))))
"1indy1y31g68i3a4j6nbx3idybn5b11bjvlx9vkibraf622s2bls"))))
(build-system emacs-build-system)
(arguments
(list
;; XXX: "check" includes "lint-package-lint", which raises errors.
#:test-command #~(list "make" "test")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'inject-makel
(lambda* (#:key inputs #:allow-other-keys)
(symlink (search-input-file inputs "/include/makel.mk")
"makel.mk"))))))
(native-inputs
(list emacs-ert-runner))
(list emacs-ert-runner makel))
(home-page "https://github.com/mpdel/libmpdel")
(synopsis "Emacs library to communicate with Music Player Daemon (MPD)")
(description
@ -34466,7 +34476,7 @@ music.")
(define-public emacs-mpdel
(package
(name "emacs-mpdel")
(version "2.1.0")
(version "2.1.1")
(source
(origin
(method git-fetch)
@ -34476,19 +34486,19 @@ music.")
(file-name (git-file-name name version))
(sha256
(base32
"00ajjb9iawva3g7i1y6bz4d4ny3cv5rby6vgkwiy2xkprzxi8900"))))
"1i7ymg0ls984vjmzjz0sbg280i47c6j79vr725x94xdpj6ci35qr"))))
(build-system emacs-build-system)
(arguments
(list
;; XXX: check includes lint-package-lint, which raises errors.
#:test-command #~(list "make" "test" "lint-checkdoc")
;; XXX: "check" includes "lint-package-lint", which raises errors.
#:test-command #~(list "make" "test")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'inject-makel
(lambda* (#:key inputs #:allow-other-keys)
(symlink (search-input-file inputs "/include/makel.mk")
"makel.mk"))))))
(inputs (list makel))
(native-inputs (list makel))
(propagated-inputs
(list emacs-libmpdel emacs-navigel))
(home-page "https://gitea.petton.fr/mpdel/mpdel")

View file

@ -27,6 +27,7 @@
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Jake Forster <jakecameron.forster@gmail.com>
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -158,7 +159,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"
@ -688,7 +690,10 @@ editor (with wide ints)" )
"emacs-native-comp-driver-options.patch"
"emacs-next-native-comp-fix-filenames.patch"
"emacs-native-comp-pin-packages.patch"
"emacs-pgtk-super-key-fix.patch")))))))
"emacs-pgtk-super-key-fix.patch"
;; XXX This commit should already be on 31.0 but
;; without this emacs-next will fail a test.
"emacs-zoom-image-test-fix.patch")))))))
(define* (emacs->emacs-next emacs #:optional name
#:key (version (package-version emacs-next-minimal))

View file

@ -2950,7 +2950,7 @@ GLSL (@file{.slang}) shaders for use with RetroArch.")
(list alsa-lib
dbus
eudev
ffmpeg
ffmpeg-6
flac
fontconfig
freetype

View file

@ -1566,8 +1566,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/")

View file

@ -12,7 +12,7 @@
;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2020, 2021, 2024 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021-2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev>
;;; Copyright © 2022 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org>
@ -181,13 +181,13 @@ them as it goes.")
(define-public python-afdko
(package
(name "python-afdko")
(version "3.9.5")
(version "4.0.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "afdko" version))
(sha256
(base32 "02c1rjx7ggbd1m9vqgsc2r28yiw66cjgvs5cq1a2fz0lkadbvrnb"))
(base32 "0c6ribidsmcd9rihy32gknfrr3iw8dy2jlmq6lk05pc33s3ix8z1"))
(modules '((guix build utils)))
(snippet
#~(begin
@ -415,6 +415,7 @@ but also provides many useful font conversion and analysis facilities.
"--ignore=tests/makeotfexe_test.py"
"--ignore=tests/otc2otf_test.py"
"--ignore=tests/otf2ttf_test.py"
"--ignore=tests/proofpdf_test.py"
"--ignore=tests/ttxn_test.py")))))))
(native-inputs
(list pkg-config
@ -470,7 +471,7 @@ other operations on paths.")
(define-public python-cffsubr
(package
(name "python-cffsubr")
(version "0.2.9.post1")
(version "0.3.0")
(source
(origin
(method url-fetch)
@ -478,7 +479,7 @@ other operations on paths.")
(modules '((guix build utils)))
(snippet '(delete-file-recursively "external")) ;unbundle ADFKO
(sha256
(base32 "0p7wyagkmwf4agr6ysgswrpmpifx5rz8dnjbcs2gmj29rwnl2cbb"))))
(base32 "1yrfjn3mdi48pg78yzlmskdz9i4nf2wg7h8ivnn9yrw1vc5iaibp"))))
(build-system python-build-system)
(arguments
(list
@ -560,13 +561,13 @@ for fontTools.")
(define-public python-cu2qu
(package
(name "python-cu2qu")
(version "1.6.7.post1")
(version "1.6.7.post2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cu2qu" version ".zip"))
(sha256
(base32 "1x762r7bf39g6aivfvrmq00h6f07abvs9x1xm0fz8l81vq8jz64c"))))
(base32 "022qpzbpi6j56wqz48rnqs6dvksipw13fi4g10k941fnkgcn5x8x"))))
(build-system pyproject-build-system)
(arguments
;; XXX: Try to remove it when updating python-fonttools.
@ -592,14 +593,24 @@ converts any cubic curves to quadratic. The most useful function is probably
(define-public python-ufo2ft
(package
(name "python-ufo2ft")
(version "2.31.0")
(version "2.33.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ufo2ft" version))
(sha256
(base32 "1rg2997af8blvswlwif0kpz2vxrlh555gzqslz6yv9y7i7v8lphl"))))
(base32 "0xnnwlj3rl0p7q19l6wdrfkzzq1f2l5vyl2qs7kl4vvfalgpzakv"))))
(build-system pyproject-build-system)
(arguments
(list #:test-flags
#~(list "-k"
;; XXX: These tests all fail with "TTX output is different
;; from expected". Potentially fixed in 3.x release.
(string-append "not test_compileVariableTTF "
"and not test_compileVariableCFF2 "
"and not test_drop_glyph_names_variable "
"and not test_buildTables_FeatureLibError "
"and not test_kern_zyyy_zinh"))))
(native-inputs
(list python-pytest
python-setuptools-scm
@ -708,13 +719,13 @@ implementing the pen protocol for manipulating glyphs.")
(hidden-package
(package
(name "python-fontparts-bootstrap")
(version "0.11.0")
(version "0.13.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fontParts" version ".zip"))
(uri (pypi-uri "fontparts" version ".tar.gz"))
(sha256
(base32 "0j4h8hszky639gmfy1avmw670y80ya49kca8yc635h5ihl0c3v8x"))))
(base32 "0ddyfa975hskaip6l4hn7n2jh50y5s0pw911phyx2fsws54pw5s7"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'custom
@ -726,8 +737,7 @@ implementing the pen protocol for manipulating glyphs.")
python-fonttools-minimal))
(native-inputs
(list python-setuptools
python-setuptools-scm
unzip))
python-setuptools-scm))
(home-page "https://github.com/robotools/fontParts")
(synopsis "Library for interacting with font parts")
(description "FontParts is an @acronym{API, Application Programming
@ -1925,13 +1935,13 @@ with @samp{nameIDs}.")
(define-public python-ufolib2
(package
(name "python-ufolib2")
(version "0.13.1")
(version "0.18.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ufoLib2" version))
(uri (pypi-uri "ufolib2" version))
(sha256
(base32 "0yx4i8q5rfyqhr2fj70a7z1bp1jv7bdlr64ww9z4nv9ycbda4x9j"))))
(base32 "1971ibdsgji8x0jzlk1hc6dv2r5wnfyylz7f6wjkymqw6v6fzq3x"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
@ -1954,9 +1964,10 @@ API-compatible with defcon.")
;;; A variant used to break a cycle between python-fontpens and
;;; python-fontparts.
(define-public python-defcon-bootstrap
(hidden-package
(package
(name "python-defcon-bootstrap")
(version "0.11.0")
(version "0.12.2")
(source
(origin
(method git-fetch)
@ -1965,7 +1976,7 @@ API-compatible with defcon.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "06w5kd5ac63m6m8x8j4xwdl7ncbpjl7pdpfpy9i6c8nhbd8sbjfm"))))
(base32 "1zx4xas6qcpp54d1vcfy5wjv17aazkpfmb7hkjy99g47xsi6crrh"))))
(build-system pyproject-build-system)
(arguments
(list
@ -1978,8 +1989,7 @@ API-compatible with defcon.")
(native-inputs
(list python-pytest
python-setuptools
python-setuptools-scm
unzip))
python-setuptools-scm))
(home-page "https://github.com/robotools/defcon")
(synopsis "Flexible objects for representing UFO data")
(description
@ -1990,15 +2000,17 @@ they are not meant to be end-all, be-all objects. Rather, they are meant to
provide base functionality so that you can focus on your applications
behavior, not object observing or maintaining cached data. Defcon implements
UFO3 as described by the UFO font format.")
(license license:expat)))
(license license:expat))))
(define-public python-defcon
(hidden-package
(package/inherit python-defcon-bootstrap
(name "python-defcon")
(propagated-inputs
(modify-inputs (package-propagated-inputs python-defcon-bootstrap)
(replace "python-fontpens-bootstrap" python-fontpens))))))
(replace "python-fontpens-bootstrap" python-fontpens)))
(properties
(alist-delete 'hidden?
(package-properties python-fontparts-bootstrap)))))
(define-public nototools
(package

View file

@ -586,7 +586,7 @@ freedesktop.org project.")
;; Updating this will rebuild over 700 packages through libinput-minimal.
(package
(name "libinput")
(version "1.26.2")
(version "1.29.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -595,7 +595,7 @@ freedesktop.org project.")
(file-name (git-file-name name version))
(sha256
(base32
"1zwwq7a0a6yznc6jxhp6gb50yw5vpfkvgbrabrpc5pwldpckfbrg"))))
"1kgr18p7n9bvim9bx24jbr5nwp6icla3bgzfskr04f68mirmx561"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Ddocumentation=false")
@ -642,21 +642,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")
@ -1363,7 +1348,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
@ -1371,12 +1356,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 _
@ -1414,7 +1398,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
@ -1423,7 +1407,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))
@ -2250,7 +2234,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

View file

@ -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 _

View file

@ -314,7 +314,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
(version "25.1.3")
(version "25.2.3")
(source
(origin
(method url-fetch)
@ -324,7 +324,7 @@ also known as DXTn or DXTC) for Mesa.")
"mesa-" version ".tar.xz")))
(sha256
(base32
"0zxsvly6xjinaicgcf81ycljjjzy3mj0hqwf01b6sdgxnnnnrjzz"))))
"1y5lj9zy2hfvx9ji1rvsjapmzap7mpp5i3pf2yfcpmpica2v5mpj"))))
(build-system meson-build-system)
(propagated-inputs
;; The following are in the Requires.private field of gl.pc.
@ -357,7 +357,6 @@ also known as DXTn or DXTC) for Mesa.")
glslang
libclc
pkg-config
python-libxml2 ;for OpenGL ES 1.1 and 2.0 support
python-mako
python-ply
python-pyyaml
@ -406,13 +405,12 @@ panfrost,r300,r600,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl,zink"))
"-Dglx=dri" ;Thread Local Storage, improves performance
;; "-Dopencl=true"
;; "-Domx=true"
"-Dosmesa=true"
"-Dgallium-xa=enabled"
;; features required by wayland
"-Dgles2=enabled"
"-Dgbm=enabled"
"-Dshared-glapi=enabled"
"--wrap-mode=nodownload" ; XXX: disable
#$@(cond
((target-x86-32?)
@ -439,6 +437,9 @@ panfrost,r300,r600,svga,softpipe,llvmpipe,tegra,v3d,vc4,virgl,zink"))
;; Also enable the tests.
"-Dbuild-tests=true"
;; Re-enable X11 protocol support for the DRI2 extension.
"-Dlegacy-x11=dri2"
"-Dllvm=enabled") ; default is x86/x86_64 only
;; XXX: 'debugoptimized' causes LTO link failures on some drivers. The

View file

@ -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)

View file

@ -180,7 +180,6 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages ocr)
#:use-module (gnu packages openldap)
@ -443,7 +442,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 +1222,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 +1432,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
@ -1476,7 +1475,7 @@ given profile, etc. DLNA is a subset of UPnP A/V.")
(define-public gupnp-av
(package
(name "gupnp-av")
(version "0.14.1")
(version "0.14.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -1484,7 +1483,7 @@ given profile, etc. DLNA is a subset of UPnP A/V.")
name "-" version ".tar.xz"))
(sha256
(base32
"0kry7arwmvs8b4175wia3l0s02ap1shq68f29g2xjrhc9g6f175p"))))
"1izq71qphyac02ynypwk0skxqzhfr0zrl7dap3sxrdaw4yrp9n91"))))
(build-system meson-build-system)
(native-inputs
(list gettext-minimal
@ -2018,7 +2017,7 @@ and system administrators.")
(inputs
(list graphene
gtk+
libxml2-next-for-grafting
libxml2
libxslt
poppler
python-minimal
@ -2068,7 +2067,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 +3599,7 @@ XML/CSS rendering engine.")
zlib))
(propagated-inputs
(list glib
libxml2-next-for-grafting))
libxml2))
(synopsis "G Structured File Library")
(description "Libgsf aims to provide an efficient extensible I/O abstraction
for dealing with different structured file formats.")
@ -3802,7 +3801,7 @@ diagrams.")
`(,glib "bin") ; glib-mkenums, etc.
gobject-introspection)) ; g-ir-compiler, etc.
(inputs
(list pango libcroco libxml2))
(list pango libcroco libxml2-2.11))
(propagated-inputs
;; librsvg-2.0.pc refers to all of that.
(list cairo gdk-pixbuf glib))
@ -4215,7 +4214,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")
@ -4254,7 +4253,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
@ -4911,7 +4910,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/")
@ -5021,7 +5020,6 @@ files.")
(define-public rest
(package
(replacement rest/fixed)
(name "rest")
(version "0.8.1")
(source (origin
@ -5050,13 +5048,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)
@ -5210,7 +5201,7 @@ as OpenStreetMap, OpenCycleMap, OpenAerialMap and Maps.")
libpsl
nghttp2 ;for pkg-config
`(,nghttp2 "lib")
libxml2-next-for-grafting
libxml2
sqlite
zlib))
(inputs
@ -5799,7 +5790,7 @@ output devices.")
docbook-xsl
gtk-doc/stable
libxslt
sane-backends
sane
vala))))) ;for VAPI, needed by simple-scan
(define-public geoclue
@ -6018,7 +6009,7 @@ service via the system message bus.")
(list gtk+
gdk-pixbuf
json-glib
libxml2-next-for-grafting
libxml2
libsoup
geocode-glib))
(inputs
@ -6137,7 +6128,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")
@ -7238,7 +7229,7 @@ USB transfers with your high-level application or system daemon.")
gdk-pixbuf
gusb
libadwaita
sane-backends))
sane))
(home-page "https://gitlab.gnome.org/GNOME/simple-scan")
(synopsis "Document and image scanner")
(description
@ -8122,7 +8113,7 @@ to display dialog boxes from the commandline and shell scripts.")
libxext
libxfixes
libxkbcommon
libxml2-next-for-grafting
libxml2
libxrandr
mesa
pango
@ -8948,7 +8939,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
@ -9726,7 +9717,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
@ -11631,7 +11623,7 @@ text views, and buttons to choose the language.")
(define-public gnome-planner
(package
(name "gnome-planner")
(version "0.14.6")
(version "0.14.92")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/planner/"
@ -11639,30 +11631,34 @@ text views, and buttons to choose the language.")
version ".tar.xz"))
(sha256
(base32
"15h6ps58giy5r1g66sg1l4xzhjssl362mfny2x09khdqsvk2j38k"))))
(build-system glib-or-gtk-build-system)
"0cyqs1ly6cp96pjw0yjk1r0dshp0c3869wgknxpp97dnbppsg8px"))))
(build-system meson-build-system)
(arguments
;; Disable the Python bindings because the Planner program functions
;; without them, and (as of 2017-06-13) we have not packaged all of
;; packages that are necessary for building the Python bindings.
`(#:configure-flags
(list "--disable-python"
,@(if (string=? "aarch64-linux" (%current-system))
'("--build=aarch64-unknown-linux-gnu")
'()))))
(list
#:glib-or-gtk? #t
#:configure-flags
;; Otherwise, the RUNPATH will lack the final 'planner' path component
;; (see: <https://gitlab.gnome.org/World/planner/-/issues/274>).
#~(list (string-append "-Dc_link_args=-Wl,-rpath="
#$output "/lib/planner"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson_post_install.sh"
(("gtk-update-icon-cache") (which "true"))))))))
(inputs
(list libgnomecanvas
libgnomeui
libglade
gnome-vfs
gconf
libxml2
libxslt
(list gconf
glib
gtk+
glib))
libxml2
libxslt))
(native-inputs
(list intltool scrollkeeper pkg-config))
(home-page "https://wiki.gnome.org/Apps/Planner")
(list `(,glib "bin") ;for glib-genmarshal, etc.
desktop-file-utils ;for update-desktop-database
gettext-minimal
pkg-config))
(home-page "https://gitlab.gnome.org/World/planner")
(synopsis "Project management software for the GNOME desktop")
(description
"GNOME Planner is a project management tool based on the Work Breakdown
@ -13885,7 +13881,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
@ -14000,7 +13996,7 @@ world.")
("python-pyenchant" ,python-pyenchant)
("python-reportlab" ,python-reportlab)
("python-sane" ,python-sane)
("sane-backends" ,sane-backends)
("sane" ,sane)
("tesseract-ocr" ,tesseract-ocr)))
(home-page "https://wiki.gnome.org/Apps/OCRFeeder")
(synopsis "Complete OCR Suite")

View file

@ -66,14 +66,14 @@
;; directory.
(package
(name "gnucash")
(version "5.10")
(version "5.13")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
version "/gnucash-" version ".tar.bz2"))
(sha256
(base32 "14xd0w2afbyk0dzsw9f528722i3p1vhs78vr09r8cnzfk0v9z7bq"))))
(base32 "1xdfci26av2jhyg40p5g9bwn7vz5xck2clgjsciz48mp6b1yqbh8"))))
(outputs '("out" "doc" "debug" "python"))
(build-system cmake-build-system)
(arguments
@ -234,7 +234,7 @@ installed as well as Yelp, the Gnome help browser.")
"mirror://sourceforge/gnucash/gnucash%20%28stable%29/"
version "/gnucash-docs-" version revision ".tar.gz"))
(sha256
(base32 "0hx8gd5xbypbgw1hfnjiyxhkjxpid1qpmvihwlpb803lx9v8jkk0"))))
(base32 "0lv3gh47crjyjfv84xrfgz833hv9hhcyi4qkkpj097qn0l0dg5k7"))))
(build-system cmake-build-system)
;; These are native-inputs because they are only required for building the
;; documentation.
@ -244,8 +244,7 @@ installed as well as Yelp, the Gnome help browser.")
(list docbook-xml
docbook-xsl
libxml2
libxslt
scrollkeeper))
libxslt))
(arguments
`(#:tests? #f)) ;no test target
(home-page "https://www.gnucash.org/")

View file

@ -193,7 +193,7 @@ authentication and support for SSL3 and TLS.")
(define-public gnunet
(package
(name "gnunet")
(version "0.25.0")
(version "0.25.1")
(source
(origin
(method url-fetch)
@ -201,7 +201,7 @@ authentication and support for SSL3 and TLS.")
".tar.gz"))
(sha256
(base32
"1zrn5j12c2vfp3vfx3kirknsvzb4r832hbgh5a2lcnb0x0p6dsid"))))
"0p4gcv67rh9832vgi5k31pgpq6hmv6198dfmbyfizyaprlb6qcr1"))))
(build-system meson-build-system)
(inputs
(list bluez

View file

@ -21,7 +21,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020, 2021, 2025 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2020-2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2021 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2021 Andy Tai <atai@atai.org>
@ -462,7 +462,7 @@ objects!")
qt)))))))))
(inputs
(list expat
ffmpeg-for-friction ;version 4.2 is recommended; does not work with version 7+.
ffmpeg-6
fontconfig
freetype
gperftools-for-friction
@ -826,7 +826,20 @@ and export to various formats including the format used by Magicavoxel.")
(substitute* "test/CMakeLists.txt"
;; Leave the test binary where ctest will look for it.
(("TARGET_USE_COMMON_OUTPUT_DIRECTORY\\(unit\\)")
"")))))))
""))
;; Some tests fail on aarch64:
;; <https://github.com/assimp/assimp/issues/6246>.
(when #$(target-aarch64?)
(substitute* "test/unit/AssimpAPITest_aiMatrix3x3.cpp"
(("aiMatrix3FromToTest")
"DISABLED_aiMatrix3FromToTest"))
(substitute* "test/unit/AssimpAPITest_aiMatrix4x4.cpp"
(("aiMatrix4FromToTest")
"DISABLED_aiMatrix4FromToTest"))
(substitute* "test/unit/AssimpAPITest_aiQuaternion.cpp"
(("aiQuaternionFromNormalizedQuaternionTest")
"DISABLED_aiQuaternionFromNormalizedQuaternionTest"))))))))
(build-system cmake-build-system)
(inputs
(list zlib))
@ -1233,6 +1246,22 @@ basic geometries.")
(build-system pyproject-build-system)
(arguments
(list
;; There are
#:modules '((guix build pyproject-build-system)
(guix build utils)
(ice-9 format))
;; Some tests fail due to small differences in the expected result (see:
;; <https://github.com/typemytype/booleanOperations/issues/69>).
#:test-flags #~(list "-k"
(format #f "not ~{~a~^ and not ~}"
'("test_QTail_reversed_difference"
"test_QTail_reversed_intersection"
"test_QTail_reversed_union"
"test_QTail_reversed_xor"
"test_Q_difference"
"test_Q_intersection"
"test_Q_union"
"test_Q_xor")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-version
@ -1244,8 +1273,7 @@ basic geometries.")
python-fontpens-bootstrap
python-pytest
python-setuptools
python-setuptools-scm
unzip))
python-setuptools-scm))
(home-page "https://github.com/typemytype/booleanOperations")
(synopsis "Boolean operations on paths")
(description

View file

@ -374,7 +374,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
@ -382,7 +382,7 @@ arrays of data.")
"/gstreamer-docs-" version ".tar.xz"))
(sha256
(base32
"0vb4d35rglvjlj2y9r0nlgankflqw0ql6gwsf4612505sa01mz7s"))))
"11q0yydchisd4c0jnqa6kmnf66kf25fim3l456krlwcy1qpsvd4j"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@ -434,7 +434,7 @@ the GStreamer multimedia framework.")
(define-public gstreamer
(package
(name "gstreamer")
(version "1.24.9")
(version "1.26.3")
(source
(origin
(method url-fetch)
@ -443,7 +443,7 @@ the GStreamer multimedia framework.")
version ".tar.xz"))
(sha256
(base32
"03r6rwmih3nqxrfw9nkhpbwpwp1yf7qw3m2phl6a027mxrmppx7b"))))
"1016z0znl2j43n08rl19zdhfvfsgnmg44qh8fk6dr4qj481icrnw"))))
(build-system meson-build-system)
(arguments
(list #:disallowed-references (list python)
@ -515,7 +515,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)
@ -523,7 +523,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
@ -623,7 +623,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)
@ -632,7 +632,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
@ -743,14 +743,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
@ -814,7 +814,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.
@ -953,7 +959,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)
@ -961,7 +967,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
@ -1010,7 +1016,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)
@ -1019,7 +1025,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))
@ -1033,7 +1039,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
@ -1041,7 +1047,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
@ -1100,10 +1106,45 @@ given, also pass them to the build system instead of the ones used by PKG."
\"bad\" plugin set, essentially containing libraries and the gst-transcoder
binary, but none of the actual plugins.")))
(define-public gst-rtsp-server
(package
(name "gst-rtsp-server")
(version "1.26.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1ibg83sa0nswqan5fg378bg36jis5sn1dwfl1mvqjiw4m59qlpj1"))))
(build-system meson-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda _
(define failing
(list "client" "media" "mediafactory" "rtspserver"
"sessionmedia" "stream" "onvif" "rtspclientsink"))
(substitute* "tests/check/meson.build"
(("'gst/(.*)',?" all test)
(if (member test failing) "" all))))))))
(propagated-inputs
(list gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad))
(native-inputs (list gobject-introspection
`(,glib "bin")
pkg-config
python-wrapper))
(home-page "https://gstreamer.freedesktop.org/")
(synopsis "Library for building RTSP servers with GStreamer")
(description "This package provides a GStreamer extension to handle
RTSP connections and messages.")
(license license:lgpl2.0+)))
(define-public python-gst
(package
(name "python-gst")
(version "1.24.9")
(version "1.26.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -1111,7 +1152,7 @@ binary, but none of the actual plugins.")))
"gst-python-" version ".tar.xz"))
(sha256
(base32
"0bplhfnvsi3l9fmfb346n2dvzi1jrxqpp4kcwiwsrjrlgic1vrl0"))))
"04hv5pj8br56knvw1nsx74j1lpxskbm6znsdqac28iszqjkvjhwk"))))
(build-system meson-build-system)
(arguments
(list
@ -1127,7 +1168,10 @@ binary, but none of the actual plugins.")))
(native-inputs
(list pkg-config python))
(propagated-inputs
(list gst-plugins-base python-pygobject))
(list gst-plugins-base
gst-plugins-bad ; for gst-analytics
gst-rtsp-server
python-pygobject))
(home-page "https://gstreamer.freedesktop.org/")
(synopsis "GStreamer GObject Introspection overrides for Python")
(description

View file

@ -36,7 +36,7 @@
;;; Copyright © 2023 Sergiu Ivanov <sivanov@colimite.fr>
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2024 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2024, 2025 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
;;;
@ -285,7 +285,7 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
(define-public harfbuzz
(package
(name "harfbuzz")
(version "8.3.0")
(version "11.4.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/harfbuzz/harfbuzz"
@ -293,7 +293,7 @@ output. Experimental backends include OpenGL, BeOS, OS/2, and DirectFB.")
version ".tar.xz"))
(sha256
(base32
"0izq2lpqxrf1l755nxrxkkiarywkx5j43asznankxplbxgm0358h"))))
"1iaqiwh3b6mwv1ar2mm29fpfygsb1x79wv7mm6ppyn7a8rqz2lqh"))))
(build-system meson-build-system)
(outputs '("out"
"bin")) ;160K, only hb-view depend on cairo
@ -613,7 +613,7 @@ diagrams.")
fribidi
glib
gtk
libxml2-next
libxml2
pango
pcre2))
(home-page "https://wiki.gnome.org/Projects/GtkSourceView")
@ -1009,18 +1009,18 @@ 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"))
(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
"1izky8dxaxp4bg5nii4n58dgpkw79mvmvbkldf04n0qmhmjg013y"))
(patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
"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.
@ -1101,7 +1101,18 @@ application suites.")
;; unknown reasons.
(substitute* "testsuite/gtk/meson.build"
((".*\\['defaultvalue'],.*") "")
((".*\\['objects-finalize',.*") ""))))
((".*\\['objects-finalize',.*") ""))
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
;; fail for unknown reasons (see:
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
(substitute* "testsuite/reftests/meson.build"
((" 'flipping-icons.ui',.*") "")
((" 'gtk-icontheme-sizing.ui',.*") ""))
;; This test fails just on i686-linux, for unknown reasons.
#$@(if (target-x86-32?)
#~((substitute* "testsuite/reftests/meson.build"
((" 'linear-gradient.ui',.*") "")))
#~())))
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
@ -1128,41 +1139,6 @@ application suites.")
(variable "GUIX_GTK3_PATH")
(files '("lib/gtk-3.0")))))))
(define-public gtk+/fixed
(package
(inherit gtk+)
(name "gtk+")
(version "3.24.49")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/GNOME/gtk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0flsnh3f0l9v3y2hmnxz1h15nw1l12ixmiwcpiy1ywplrlgq4j00"))
(patches (search-patches
"gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments gtk+)
((#:phases phases)
#~(modify-phases #$phases
(replace 'disable-failing-tests
(lambda _
;; These tests fail only in the containerized environment, for
;; unknown reasons.
(substitute* "testsuite/gtk/meson.build"
((".*\\['defaultvalue'],.*") "")
((".*\\['objects-finalize',.*") ""))
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
;; fail for unknown reasons (see:
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
(substitute* "testsuite/reftests/meson.build"
((" 'flipping-icons.ui',.*") "")
((" 'gtk-icontheme-sizing.ui',.*") ""))))))))))
(define-public gtk
(package
(name "gtk")
@ -2370,7 +2346,8 @@ information.")
(base32
"0746lwxgybc5ss3hzdd0crjjghk0ck0x9jbmz73iig405arp42xj"))
(patches
(search-patches "gtk-doc-respect-xml-catalog.patch"))))
(search-patches "gtk-doc-respect-xml-catalog.patch"
"gtk-doc-mkhtml-test-fix.patch"))))
(build-system meson-build-system)
(arguments
(list

View file

@ -476,7 +476,7 @@ sharing.")
procps
psmisc ;for pstree
rpm
sane-backends
sane
smartmontools
sysstat
upower

View file

@ -623,6 +623,29 @@ with CSS and mouseover annotations, XHTML 1.0 with inline CSS styling, LaTeX,
and mIRC chat codes.")
(license license:bsd-3)))
(define-public lhs2tex
(package
(name "lhs2tex")
(version "1.25")
(source
(origin
(method url-fetch)
(uri (hackage-uri "lhs2tex" version))
(sha256
(base32 "0cf66z6mgadgqd1xs5b6gw8l9rkwgbfsc5czwdiapn7ichi26qyj"))))
(build-system haskell-build-system)
(properties '((upstream-name . "lhs2tex")))
(inputs (list ghc-regex-compat))
(home-page "https://github.com/kosmikus/lhs2tex")
(synopsis "Preprocessor for typesetting Haskell sources with LaTeX")
(description
"This tool is primarily intended for people who want to write articles or
books using LaTeX that contain some Haskell code. It works on literate Haskell
documents where the non-Haskell parts form essentially a valid LaTeX document,
then processes the Haskell code in the document and replaces it with formatted
LaTeX output.")
(license license:gpl2+)))
(define-public kmonad
;; Project is active, but no new releases exist. Pick current master
;; HEAD as of 2024-08-18.

View file

@ -92,6 +92,7 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages nss)
#:use-module (gnu packages opencl)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
@ -815,7 +816,7 @@ the OpenCV-Python library.")
libpng
(librsvg-for-system)
libtiff
libxml2-next
libxml2
libwebp
matio
openexr
@ -1865,6 +1866,7 @@ and Scan Tailor Enhanced versions as well as including many more bug fixes.")
(native-inputs
(list googletest
lua
nss-certs-for-test ;for 'pip install'
python-numpy ;for tests
python-pip
python-setuptools

View file

@ -32,6 +32,7 @@
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Mathieu Laparie <mlaparie@disr.it>
;;; Copyright © 2025 Joaquín Aguirrezabalaga <kinote@kinote.org>
;;; Copyright © 2025 pinoaffe <pinoaffe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -69,6 +70,7 @@
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
@ -77,6 +79,7 @@
#:use-module (gnu packages curl)
#:use-module (gnu packages documentation)
#:use-module (gnu packages djvu)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
@ -90,9 +93,13 @@
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages kde-pim)
#:use-module (gnu packages linux)
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
@ -110,6 +117,8 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages ruby)
#:use-module (gnu packages scanner)
#:use-module (gnu packages suckless)
#:use-module (gnu packages stb)
#:use-module (gnu packages terminals)
@ -1150,6 +1159,128 @@ synchronization of multiple instances.")
"xzgv is a fast image viewer that provides extensive keyboard support.")
(license license:gpl2+)))
(define-public digikam
(package
(name "digikam")
(version "8.7.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/digikam/"
version "/digiKam-" version ".tar.xz"))
(sha256
(base32 "0bx0kpzgq47pj3msrnd7gxr8n2qbak0cjird6bw4r4s31b15xqvr"))))
(build-system qt-build-system)
(home-page "https://www.digikam.org/download/git/")
(arguments (list
#:tests? #f
#:build-type "Release"
#:configure-flags #~(list "-DENABLE_MEDIAPLAYER=ON" ; for video playback
"-DENABLE_QWEBENGINE=ON" ; for web content
"-DENABLE_KFILEMETADATASUPPORT=ON"
"-DENABLE_AKONADICONTACTSUPPORT=ON"
"-DBUILD_WITH_QT6=ON"
"-DENABLE_APPSTYLES=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-test-data
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "digikam-test-data")
"test-data")))
(add-after 'install 'wrap-binary
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append (assoc-ref outputs "out")
"/bin/digikam")
`("PATH" ":" prefix
(,(dirname
(search-input-file inputs "/bin/exiftool"))))))))))
(native-search-paths
(list (search-path-specification
(variable "DK_PLUGIN_PATH")
(separator ";")
(files '("lib/qt6/plugins/digikam")))))
(inputs (list
akonadi-contacts
bash-minimal
boost
ecm
eigen
exiv2-static ; digikam only wants to statically link against exiv2
ffmpeg
glib
ijg-libjpeg
imagemagick
jasper
kcalendarcore
kconfig
kcoreaddons
kfilemetadata
ki18n
kiconthemes
kio
knotifications
knotifyconfig
kservice
kwindowsystem
kxmlgui
lcms
lensfun
libgphoto2
libheif
libjpeg-turbo
libjxl
libksane
libpng
libtiff
libxml2
libxslt
marble-qt
mesa
opencv
perl-image-exiftool
python-wrapper
qtimageformats
qtmultimedia
qtnetworkauth
qtscxml
qtsvg
qtwebengine
ruby
sane-backends
solid
sonnet
threadweaver
x265))
(native-inputs (list
(origin
(method git-fetch)
(uri (git-reference
(url "https://invent.kde.org/graphics/digikam-test-data/")
(commit "83efefdfc7fffa35e5e260d3b5a4aec01ebbdb40")))
(file-name "digikam-test-data")
(sha256
(base32
"0mf7rzwhy5yyj47xh4vs0i841m8885yy9qganli04d8skikl0s6z")))
appstream
bison
doxygen
extra-cmake-modules
flex
graphviz ; for inheritance graphs in documentation
perl
pkg-config))
(synopsis "Photo management, organizing and editing suite")
(description "digiKam is an advanced open-source digital photo management
application. It provides a comprehensive set of tools for importing,
managing, editing, and sharing photos and RAW files.
You can use digiKam's import capabilities to easily transfer photos, RAW
files, and videos directly from your camera and external storage devices (SD
cards, USB disks, etc.). The application allows you to configure import
settings and rules that process and organize imported items on-the-fly.")
(license (list license:bsd-3 ; cmake scripts
license:cc0 ; test data
license:gpl2+)))) ; code
(define-public hydrus-network
(package
(name "hydrus-network")

View file

@ -11,7 +11,7 @@
;;; Copyright © 2016-2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2020, 2021, 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017, 2020, 2021, 2022, 2025 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017,2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
@ -95,6 +95,7 @@
#:use-module (gnu packages popt)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages ragel)
@ -1677,6 +1678,15 @@ and XMP metadata of images in various formats.")
;; <https://launchpad.net/ubuntu/precise/+source/exiv2/+copyright>.
(license license:gpl2+)))
(define-public exiv2-static
(package
(inherit exiv2)
(arguments
(substitute-keyword-arguments (package-arguments exiv2)
((#:phases phases)
#~(modify-phases #$phases
(delete 'delete-static-libraries)))))))
(define-public devil
(package
(name "devil")
@ -2940,7 +2950,7 @@ Wacom-style graphics tablets.")
(define-public phockup
(package
(name "phockup")
(version "1.9.2")
(version "1.13.0")
(source
(origin
(method git-fetch)
@ -2949,7 +2959,7 @@ Wacom-style graphics tablets.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0j4mnsy12bhsmd80vgqknv004xbqd165y8gpalw87gp8i8xv172r"))))
(base32 "1kwz2qy8mx0j25g3gyda08qaz5rgwm6vycsrqhgkd5cqqz76bbmc"))))
(build-system copy-build-system)
(arguments
`(#:install-plan '(("src" "share/phockup/")
@ -2963,13 +2973,14 @@ Wacom-style graphics tablets.")
(("'exiftool")
(string-append "'" (search-input-file inputs "bin/exiftool"))))))
(add-before 'install 'check
(lambda _
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Test without PATH to make sure exiftool is properly found.
(let ((path (getenv "PATH"))
(pytest (which "pytest")))
(setenv "PATH" "")
(invoke pytest)
(setenv "PATH" path))))
(setenv "PATH" path)))))
(add-after 'install 'install-bin
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -2986,7 +2997,7 @@ Wacom-style graphics tablets.")
(inputs
(list bash-minimal perl-image-exiftool python python-tqdm))
(native-inputs
(list python-pytest python-pytest-mock))
(list python-pytest python-pytest-mock python-pytest-socket))
(home-page "https://github.com/ivandokov/phockup")
(synopsis "Organize photos and videos in folders")
(description "Phockup is a media sorting tool that uses creation date and

View file

@ -8,6 +8,7 @@
;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com>
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -78,6 +79,7 @@
(base32 "0sq81smxwypgnp7r3wgza8w25dsz9qa8ga79sc85xzj3qi6q9lfv"))
(modules '((guix build utils)
(ice-9 format)))
(patches (search-patches "inkscape-libxml2.patch"))
(snippet
'(begin
(let-syntax

View file

@ -42,11 +42,13 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mp3)
#:use-module (gnu packages networking)
#:use-module (gnu packages ocr)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages serialization)
#:use-module (gnu packages speech)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages wm)
@ -152,16 +154,102 @@ Advanced plugins:
@end itemize")
(license (list license:lgpl2.0+ license:gpl2+))))
(define-public crow-translate
(package
(name "crow-translate")
(version "4.0.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/crow-translate/" version
"/crow-translate-" version ".tar.gz"))
(sha256
(base32 "0lrpxdgicbg0wj2cf0lif99pz5kiqck53qkm5385vymzn1w8wjz2"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete bundled breeze-icons, espeak-ng and qhotkey.
(for-each delete-file-recursively
'("data/icons/3rdparty/breeze-icons"
"src/3rdparty/espeak-ng"
"src/3rdparty/qhotkey"))
;; Use system libraries instead.
(substitute* "CMakeLists.txt"
((".*icon-theme\\.qrc.*$") "")
(("WITH_PIPER_TTS") "WITH_BUNDLED_ESPEAK_NG")
(("(.*WITH_BUNDLED_ESPEAK_NG.* )ON" all start)
(string-append start "OFF"))
(("Enable Piper neural TTS provider.*\"")
"Build bundled espeak-ng (requires onnxruntime)\"")
(("Piper TTS support disabled.*\"")
"Piper TTS support enabled with system espeak-ng\"")
(("add_subdirectory.*qhotkey.*")
(string-append "\nfind_package(PkgConfig)\n"
"pkg_check_modules(eSpeak_NG REQUIRED espeak-ng)"
"\nfind_package(QHotkey REQUIRED)\n"))
(("QHotkey::QHotkey") "qhotkey")
(("( *)Qt6::TextToSpeech" all indent)
(string-append all "\n" indent "espeak-ng")))
;; Link Qt6::Widgets.
(substitute* "CMakeLists.txt"
(("Qt6::TextToSpeech" all) (string-append all "\n Qt6::Widgets")))
;; Include QGuiApplication in main.cpp.
(substitute* "src/main.cpp"
(("#include <QtCore>" all)
(string-append all "\n#include <QtGui/QGuiApplication>")))))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
#:tests? #f ; no tests
#:configure-flags
#~(list (string-append "-DCMAKE_CXX_FLAGS=-isystem "
#$(this-package-input "qtbase")
"/include/qt6/QtWidgets"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'unbundle-singleapplication
(lambda _
(delete-file-recursively "src/3rdparty/singleapplication")
(substitute* "CMakeLists.txt"
(("add_subdirectory.*singleapplication.*$") "")
(("SingleApplication::SingleApplication")
(string-append #$(this-package-input
"single-application")
"/lib/libSingleApplication.a"))))))))
(inputs
(list breeze-icons
espeak-ng
kwayland
qhotkey
qtbase
qtsvg
qtmultimedia
qtscxml
qtspeech
single-application
tesseract-ocr))
(native-inputs
(list pkg-config
extra-cmake-modules
qttools))
(home-page "https://invent.kde.org/office/crow-translate")
(synopsis "Application for translating text")
(description
"Crow Translate is an application written in C++/Qt for translating
and speaking text which relies on Mozhi to interface with various
translation engines.")
(license license:gpl3+)))
(define-public ghostwriter
(package
(name "ghostwriter")
(version "25.04.0")
(version "25.08.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ghostwriter-" version ".tar.xz"))
(sha256
(base32 "0vx6zd6js4anz2cmvljbp0dyq1gj58j28a1vx0fa7m01m8kxbsl6"))))
(base32 "0hlc039pkrn0l3k4vzvlvwnbzv46vnkacpaasn2lj5rfs3spxcmj"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@ -193,7 +281,7 @@ cmark processors if they are installed.")
(define-public tellico
(package
(name "tellico")
(version "4.1.1")
(version "4.1.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -201,7 +289,7 @@ cmark processors if they are installed.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0jx512rgrbc8n8p2gnk543l3k53gf30a0zjixp8ly2z70w6qp2br"))
(base32 "0930jh6b9cl3jvhmfv00l6566vsnpwkf6shz5w0hn67j0vpvhk7s"))
(modules '((guix build utils)))
(snippet
;; Fix including QtPrintSupport.

View file

@ -93,7 +93,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages mp3)
#:use-module (gnu packages ocr)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
@ -142,38 +141,6 @@
This package contains GUI widgets for baloo.")
(license license:lgpl2.0+)))
(define-public crow-translate
(package
(name "crow-translate")
(version "3.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/crow-translate/" version
"/crow-translate-v" version ".tar.gz"))
(sha256
(base32 "18f7i5sxrvqp6h7zj77sdxyy9rlbw0rv3w7akf1j14072ala9bwc"))))
(build-system qt-build-system)
(arguments '(#:tests? #f)) ; there are no tests.
(inputs
(list qtbase-5
qtx11extras
qtsvg-5
qtmultimedia-5
tesseract-ocr
kwayland-5))
(native-inputs
(list pkg-config
extra-cmake-modules
qttools-5))
(home-page "https://invent.kde.org/office/crow-translate")
(synopsis "Application for translating text")
(description
"Crow Translate is an application written in C++/Qt for translating
and speaking text which relies on Mozhi to interface with various
translation engines.")
(license license:gpl3+)))
(define-public futuresql
(package
(name "futuresql")
@ -1417,7 +1384,7 @@ transport data and for performing public transport journey queries.")
(list extra-cmake-modules))
(inputs
(list ki18n
sane-backends))
sane))
(home-page "https://invent.kde.org/libraries/ksanecore")
(synopsis "Library providing logic to interface scanners")
(description

View file

@ -434,7 +434,7 @@ secondary errors.")
dcadec
dbus
eudev
ffmpeg
ffmpeg-6
flac
flatbuffers
fmt

View file

@ -286,7 +286,7 @@ into other word processors.")
(native-inputs
(list cppunit gperf pkg-config))
(propagated-inputs ; in Requires or Requires.private field of .pkg
(list icu4c liblangtag librevenge libxml2-next))
(list icu4c liblangtag librevenge libxml2))
(inputs
(list boost))
(arguments
@ -372,7 +372,7 @@ working with graphics in the WPG (WordPerfect Graphics) format.")
(native-inputs
(list autoconf automake libtool cppunit pkg-config))
(propagated-inputs ;in Requires field of .pkg
(list curl libxml2-next))
(list curl libxml2))
(inputs
(list boost cyrus-sasl openssl))
(arguments
@ -413,7 +413,7 @@ as Alfresco or Nuxeo.")
(native-inputs
(list doxygen gperf perl pkg-config))
(propagated-inputs ; in Requires or Requires.private field of .pkg
(list librevenge libxml2-next))
(list librevenge libxml2))
(inputs
(list boost))
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libabw")
@ -467,7 +467,7 @@ CorelDRAW documents of all versions.")
(native-inputs
(list cppunit doxygen gperf pkg-config))
(propagated-inputs ; in Requires or Requires.private field of .pkg
(list liblangtag librevenge libxml2-next zlib))
(list liblangtag librevenge libxml2 zlib))
(inputs
(list boost glm mdds))
(home-page "https://wiki.documentfoundation.org/DLP/Libraries/libetonyek")
@ -479,14 +479,14 @@ Apple Keynote documents. It currently supports Keynote versions 2 to 5.")
(define-public liblangtag
(package
(name "liblangtag")
(version "0.6.4")
(version "0.6.7")
(source
(origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/tagoh/liblangtag/downloads/"
"liblangtag-" version ".tar.bz2"))
(sha256
(base32 "0r55r30ih8dgq1hwbpl834igilj7bpxcnmlrlkd3vryk2wn0c0ap"))))
(base32 "03h33sjqsrmmkyj2kxs7c6226hd4s5n22bz62b4hag1zmvabrmjy"))))
(build-system gnu-build-system)
(native-inputs
(list libtool pkg-config))
@ -772,15 +772,28 @@ Works word processor file format.")
(uri (string-append "http://dev-www.libreoffice.org/src/libzmf/libzmf-"
version ".tar.xz"))
(sha256 (base32
"08mg5kmkjrmqrd8j5rkzw9vdqlvibhb1ynp6bmfxnzq5rcq1l197"))))
"08mg5kmkjrmqrd8j5rkzw9vdqlvibhb1ynp6bmfxnzq5rcq1l197"))
(patches (search-patches "libzmf-doxygen-1.14.patch"))))
(build-system gnu-build-system)
(arguments
(list
;; A harmless 'sign-compare' error pops up on i686 so disable '-Werror'.
'(#:configure-flags '("--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
@ -1177,7 +1190,7 @@ commonly called @code{ftoa} or @code{dtoa}.")
python-lxml
qrcodegen-cpp
redland
sane-backends
sane
unixodbc
unzip
vigra

View file

@ -626,7 +626,7 @@
cups
dbus-glib
freetype
ffmpeg
ffmpeg-6
gdk-pixbuf
glib
gtk+

View file

@ -65,7 +65,7 @@
(define-public bcunit
(package
(name "bcunit")
(version "5.3.57")
(version "5.3.101")
(source
(origin
(method git-fetch)
@ -74,7 +74,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "02aqc8052vidc8ylkwiv2rqddl58fccrjz561j8zfqlwm2irnsg3"))))
(base32 "0rpkc9bjlf370p5fsrbp9b481zakdndmfxyg5vwza0a9z19f81vb"))))
(build-system cmake-build-system)
(arguments
(list
@ -125,7 +125,7 @@ writing, administering, and running unit tests in C.")
(define-public bctoolbox
(package
(name "bctoolbox")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -134,12 +134,14 @@ writing, administering, and running unit tests in C.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "178axy7gmmi6fzjbz7aaawcx0qg50i4hnn7ab6w642b02vxfr386"))))
(base32 "1bmn3q318wfwnpv017sa1qgffb4bm8lfhm9xaa345fpp5ws2h4an"))))
(build-system cmake-build-system)
(outputs '("out" "debug"))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
#:configure-flags
#~(list
"-DBUILD_SHARED_LIBS=ON"
;; Do not use -Werror, because due to skipping
;; a test there are unused procedures.
"-DENABLE_STRICT=OFF")
@ -188,7 +190,7 @@ Communications software like belle-sip, mediastreamer2 and linphone.")
(define-public belr
(package
(name "belr")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -197,7 +199,7 @@ Communications software like belle-sip, mediastreamer2 and linphone.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1jqv2rfclzwsglwgvx7ypy0yhwbjxrsbik6xipf48770qmdz3bj9"))))
(base32 "00gmdh8nchn4frxzli62w8slqpizln9bd1czrmpj8laiqdy1ihvk"))))
(build-system cmake-build-system)
(outputs '("out" "debug" "tester"))
(arguments
@ -237,7 +239,7 @@ IETF.")
(define-public belcard
(package
(name "belcard")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -246,7 +248,7 @@ IETF.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1d69s7v3yd276nasfxnsjp3q820pcchdpdpw4y7ak7sf6gr6mrrh"))))
(base32 "190l1f7f2dhm887xw34gcawa9c4cmcndikfd8qc1xpn16fals4kd"))))
(build-system cmake-build-system)
(outputs '("out" "debug" "tester"))
(arguments
@ -256,12 +258,10 @@ IETF.")
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-vcard-grammar-location
(lambda _
(let ((vcard-grammar
(string-append #$output
"/share/belr/grammars/vcard_grammar")))
(substitute* "include/belcard/vcard_grammar.hpp"
(("define VCARD_GRAMMAR \"vcard_grammar\"")
(format #f "define VCARD_GRAMMAR ~s" vcard-grammar))))))
(("define VCARD3?_GRAMMAR \"" all)
(string-append all (string-append
#$output "/share/belr/grammars/"))))))
(add-after 'install 'install-tester
(lambda _
(let ((test-name (string-append #$name "-tester")))
@ -290,7 +290,7 @@ format.")
(define-public bcmatroska2
(package
(name "bcmatroska2")
(version "5.3.57")
(version "5.3.101")
(source
(origin
(method git-fetch)
@ -299,7 +299,7 @@ format.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1fdlvsca34armxasj2g4vxjzm9iiqfl7832qqlggh04yw21cfa5c"))))
(base32 "0m1qf0jiz58r6vyy9gzc563hrcxvmmq5m1if2cq0qbxmanvqbgns"))))
(build-system cmake-build-system)
(arguments
(list
@ -395,7 +395,7 @@ such as conferencing.")
(define-public ortp
(package
(name "ortp")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -404,7 +404,7 @@ such as conferencing.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1bl3ig1xbxprcdid9i8bnl433x4crxqnj30x5lxiy9ka79b8s8r6"))))
(base32 "0vgzn9ll7i6x1rprknzmam5npnm2sbhnkr3fvz6ilanckznqvzar"))))
(build-system cmake-build-system)
(outputs '("out" "tester"
"doc")) ;1.5 MiB of HTML doc
@ -450,7 +450,7 @@ implements the RFC 3550 standard.")
(define-public bzrtp
(package
(name "bzrtp")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -459,7 +459,7 @@ implements the RFC 3550 standard.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1q8w5blf2cjmzyv4bdd7zg4lv3pfjq6w6cfm6d75az4xqzg023kp"))))
(base32 "1bi82isc8r3h6pwiwqfxd089dfzx1ijfl4nhp75yqwr6dvqhrz68"))))
(build-system cmake-build-system)
(arguments
(list
@ -480,7 +480,7 @@ including both ARM and x86.")
(define-public belle-sip
(package
(name "belle-sip")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -489,7 +489,7 @@ including both ARM and x86.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1jmvf1s54ppc0qfi2wl6whk7s3lghpzzp6597nblncjsr2i6ha6c"))))
(base32 "198pa42abby9hyznckl7h1pmh31nhia6nd6sjfqs61zsrzf8flxn"))))
(build-system cmake-build-system)
(outputs '("out" "tester"))
(arguments
@ -570,7 +570,7 @@ API. It also comprises a simple HTTP/HTTPS client implementation.")
(define-public mediastreamer2
(package
(name "mediastreamer2")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -579,7 +579,7 @@ API. It also comprises a simple HTTP/HTTPS client implementation.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1zv13icfdpaq7fa325mnqf340vbvif9791hb9h22qpc0f2wcwvjb"))))
(base32 "1z46vpcg4n2i28vv09p6g69wa6bh6pbwzkmygy5653rn55vhd9ng"))))
(outputs '("out" "doc" "tester"))
(build-system cmake-build-system)
(arguments
@ -684,7 +684,7 @@ including media capture, encoding and decoding, and rendering.")
(define-public lime
(package
(name "lime")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -693,7 +693,7 @@ including media capture, encoding and decoding, and rendering.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1jd549f4cky5rcvq3d2zn8d383jahdi71nhkzblnr6mqqbn6b7sa"))))
(base32 "00m96pznkawdmzhz25igyiiy3nx6ql5r5k14kcc3h8fqkg917vjf"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(arguments
@ -734,7 +734,7 @@ device.")
(define-public liblinphone
(package
(name "liblinphone")
(version "5.3.57")
(version "5.3.112")
(source
(origin
(method git-fetch)
@ -743,7 +743,7 @@ device.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1f3hcbdkd8nqvjm5avylz226a8in360yiafcsxpa69wvh1a03i4h"))
(base32 "0a8v3mbv05xgnljls7y5xb7bcxvy8dl6k10jg421nihd5vab1jl3"))
(patches (search-patches "liblinphone-jsoncpp.patch"))))
(outputs '("out" "tester"))
(build-system cmake-build-system)
@ -799,7 +799,7 @@ device.")
(list belle-sip
jsoncpp
mediastreamer2
libxml2
libxml2-2.11
lime
ortp
sqlite))
@ -987,7 +987,7 @@ codec. It is based on the Skype's SILK implementation.")
;; latest one available.
(package
(name "mswebrtc")
(version "1.1.2")
(version "5.4.0")
(source
(origin
(method git-fetch)
@ -996,7 +996,7 @@ codec. It is based on the Skype's SILK implementation.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "10j124vd9zm03s1vzb74n3zjrf6x1nfvji7vryih4dq2xlgrqxx6"))
(base32 "0dgkqxwqp05n14wwg805zfycy1rryrmpp25p8gfzdsxgljk29phn"))
(patches (search-patches "mswebrtc-b64-refactor.patch"
"mswebrtc-cmake.patch"))))
(build-system cmake-build-system)

View file

@ -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
@ -538,7 +538,6 @@ assorted menu related utility programs.")
intltool
libxslt
yelp-tools
scrollkeeper
gettext-minimal
docbook-xml
gobject-introspection))
@ -1412,7 +1411,6 @@ can be used as backgrounds in the MATE Desktop environment.")
libice
libsm
pkg-config
scrollkeeper
xorgproto
yelp-tools))
(inputs
@ -1591,7 +1589,6 @@ can be used as backgrounds in the MATE Desktop environment.")
packagekit
pango
python
scrollkeeper
startup-notification))
(home-page "https://mate-desktop.org/")
(synopsis "Text Editor for MATE")

View file

@ -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.")

View file

@ -6091,18 +6091,23 @@ Recording Code} (ISRC) can be extracted.}")
(license license:lgpl3+)))
(define-public libmusicbrainz
;; The latest release is more than a decade old, doesn't build with the
;; latest libxml2 release.
(let ((commit "4efbed3afae11ef68281816088d7cf3d0f704dfe")
(revision "0"))
(package
(name "libmusicbrainz")
(version "5.1.0")
(version (git-version "5.1.0" revision commit))
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/metabrainz/libmusicbrainz/releases/download/release-"
version "/libmusicbrainz-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/metabrainz/libmusicbrainz")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0ikb9igyyk28jm34raxfzkw2qyn4nzzwsymdyprp7cmvi6g2ajb7"))))
"1h1q0gg3xzhw115ifr5ja9gbd2k6ggkpm2f4sdqp313wp3lj86g9"))))
(build-system cmake-build-system)
(arguments
`(#:phases
@ -6115,8 +6120,7 @@ Recording Code} (ISRC) can be extracted.}")
(lambda _
;; requires network connections
;; (invoke "tests/mbtest")
(invoke "tests/ctest")
#t)))))
(invoke "tests/ctest"))))))
(inputs (list neon libxml2))
(native-inputs (list pkg-config))
(home-page "https://musicbrainz.org/doc/libmusicbrainz")
@ -6124,7 +6128,7 @@ Recording Code} (ISRC) can be extracted.}")
(description "The MusicBrainz Client Library (libmusicbrainz), also known as
mb_client, is a development library geared towards developers who wish to add
MusicBrainz lookup capabilities to their applications.")
(license license:lgpl2.1+)))
(license license:lgpl2.1+))))
(define-public perl-musicbrainz-discid
(package

View file

@ -213,7 +213,7 @@ default. To add support for more languages, the
leptonica
podofo
poppler-qt5
sane-backends
sane
qtbase-5
qtspell
quazip-5

View file

@ -7,7 +7,7 @@
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2023 Brian Cully <bjc@spork.org>
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
@ -119,20 +119,23 @@
;; This is an incompatible fork of openldap that adds types needed for
;; liblinphone.
(define-public openldap-for-linphone
(let ((commit "8511a0f54d270ff529d83b4a8ba113819b18b856")
(revision "0"))
(hidden-package
(package
(inherit openldap)
(name "openldap")
(version "2.6.4")
(source (origin
(version (git-version "2.6.4" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.linphone.org/BC/public/external/openldap/")
(commit "8a885896a3fb88098d970ab96316c0b7f18367b8")))
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1yd3cnngr5z3nymnml8fynspxgdzap7y7glp601nbkdj67wyg0k8"))))
"06qf8lcalvgzr3w1m697xrj12ikav5im00wjmxa62qdmsg5rvji1"))))
(arguments
(substitute-keyword-arguments (package-arguments openldap)
((#:configure-flags flags)
@ -140,7 +143,7 @@
(list #$(string-append "CFLAGS=-g -O2"
" -Wno-error=implicit-int"
" -Wno-error=int-conversion"))
#$flags)))))))
#$flags))))))))
(define-public nss-pam-ldapd
(package

View file

@ -18,7 +18,7 @@
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021, 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022, 2023 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023 jgart <jgart@dismail.de>
@ -1043,7 +1043,7 @@ features of Stow with some extensions.")
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ; TEST need fhs envirnment.
#:tests? #f ;tests require FHS environment
#:configure-flags
#~(list
;; TODO: Add rpm-sequoia
@ -1073,7 +1073,16 @@ features of Stow with some extensions.")
site)))
(substitute* "plugins/CMakeLists.txt"
(("\\$[{]dbus-1_DATADIR[}]")
(string-append #$output "/share"))))))))
(string-append #$output "/share")))))
(add-after 'install 'install-macros-file
(lambda _
(define macros (string-append #$output "/etc/rpm/macros"))
(mkdir-p (dirname macros))
(call-with-output-file macros
(lambda (p)
(format p "\
%_var /var
%_localstatedir /var~%"))))))))
(native-inputs
(list pkg-config
python

View file

@ -1,529 +0,0 @@
From 373924d728b61cf6dec9c8a1a1edeb4b9f342529 Mon Sep 17 00:00:00 2001
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Fri, 27 Sep 2024 17:03:10 +0200
Subject: [PATCH] gnu: cups-minimal: Address PPD injection issues.
This patch combines 5 upstream commits:
9939a70b750edd9d05270060cc5cf62ca98cfbe5
04bb2af4521b56c1699a2c2431c56c05a7102e69
e0630cd18f76340d302000f2bf6516e99602b844
1e6ca5913eceee906038bc04cc7ccfbe2923bdfd
2abe1ba8a66864aa82cd9836b37e57103b8e1a3b
---
cups/ppd-cache.c | 235 +++++++++++++++++++++++++++++++++--------------
scheduler/ipp.c | 9 +-
2 files changed, 174 insertions(+), 70 deletions(-)
diff --git a/cups/ppd-cache.c b/cups/ppd-cache.c
index e750fccd4..d2533b731 100644
--- a/cups/ppd-cache.c
+++ b/cups/ppd-cache.c
@@ -32,6 +32,7 @@
static int cups_connect(http_t **http, const char *url, char *resource, size_t ressize);
static int cups_get_url(http_t **http, const char *url, char *name, size_t namesize);
static const char *ppd_inputslot_for_keyword(_ppd_cache_t *pc, const char *keyword);
+static void ppd_put_string(cups_file_t *fp, cups_lang_t *lang, cups_array_t *strings, const char *ppd_option, const char *ppd_choice, const char *pwg_msgid);
static void pwg_add_finishing(cups_array_t *finishings, ipp_finishings_t template, const char *name, const char *value);
static void pwg_add_message(cups_array_t *a, const char *msg, const char *str);
static int pwg_compare_finishings(_pwg_finishings_t *a, _pwg_finishings_t *b);
@@ -3197,9 +3198,10 @@ _ppdCreateFromIPP2(
ipp_t *media_col, /* Media collection */
*media_size; /* Media size collection */
char make[256], /* Make and model */
- *model, /* Model name */
+ *mptr, /* Pointer into make and model */
ppdname[PPD_MAX_NAME];
/* PPD keyword */
+ const char *model; /* Model name */
int i, j, /* Looping vars */
count, /* Number of values */
bottom, /* Largest bottom margin */
@@ -3221,8 +3223,7 @@ _ppdCreateFromIPP2(
int have_qdraft = 0,/* Have draft quality? */
have_qhigh = 0; /* Have high quality? */
char msgid[256]; /* Message identifier (attr.value) */
- const char *keyword, /* Keyword value */
- *msgstr; /* Localized string */
+ const char *keyword; /* Keyword value */
cups_array_t *strings = NULL;/* Printer strings file */
struct lconv *loc = localeconv();
/* Locale data */
@@ -3260,34 +3261,104 @@ _ppdCreateFromIPP2(
}
/*
- * Standard stuff for PPD file...
+ * Get a sanitized make and model...
*/
- cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
- cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
- cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
- cupsFilePuts(fp, "*LanguageVersion: English\n");
- cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
- cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
- cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
- cupsFilePuts(fp, "*FileSystem: False\n");
- cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
+ if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL && ippValidateAttribute(attr))
+ {
+ /*
+ * Sanitize the model name to only contain PPD-safe characters.
+ */
- if ((attr = ippFindAttribute(supported, "printer-make-and-model", IPP_TAG_TEXT)) != NULL)
strlcpy(make, ippGetString(attr, 0, NULL), sizeof(make));
+
+ for (mptr = make; *mptr; mptr ++)
+ {
+ if (*mptr < ' ' || *mptr >= 127 || *mptr == '\"')
+ {
+ /*
+ * Truncate the make and model on the first bad character...
+ */
+
+ *mptr = '\0';
+ break;
+ }
+ }
+
+ while (mptr > make)
+ {
+ /*
+ * Strip trailing whitespace...
+ */
+
+ mptr --;
+ if (*mptr == ' ')
+ *mptr = '\0';
+ }
+
+ if (!make[0])
+ {
+ /*
+ * Use a default make and model if nothing remains...
+ */
+
+ strlcpy(make, "Unknown", sizeof(make));
+ }
+ }
else
- strlcpy(make, "Unknown Printer", sizeof(make));
+ {
+ /*
+ * Use a default make and model...
+ */
+
+ strlcpy(make, "Unknown", sizeof(make));
+ }
if (!_cups_strncasecmp(make, "Hewlett Packard ", 16) || !_cups_strncasecmp(make, "Hewlett-Packard ", 16))
{
+ /*
+ * Normalize HP printer make and model...
+ */
+
model = make + 16;
strlcpy(make, "HP", sizeof(make));
+
+ if (!_cups_strncasecmp(model, "HP ", 3))
+ model += 3;
+ }
+ else if ((mptr = strchr(make, ' ')) != NULL)
+ {
+ /*
+ * Separate "MAKE MODEL"...
+ */
+
+ while (*mptr && *mptr == ' ')
+ *mptr++ = '\0';
+
+ model = mptr;
}
- else if ((model = strchr(make, ' ')) != NULL)
- *model++ = '\0';
else
- model = make;
+ {
+ /*
+ * No separate model name...
+ */
+ model = "Printer";
+ }
+
+ /*
+ * Standard stuff for PPD file...
+ */
+
+ cupsFilePuts(fp, "*PPD-Adobe: \"4.3\"\n");
+ cupsFilePuts(fp, "*FormatVersion: \"4.3\"\n");
+ cupsFilePrintf(fp, "*FileVersion: \"%d.%d\"\n", CUPS_VERSION_MAJOR, CUPS_VERSION_MINOR);
+ cupsFilePuts(fp, "*LanguageVersion: English\n");
+ cupsFilePuts(fp, "*LanguageEncoding: ISOLatin1\n");
+ cupsFilePuts(fp, "*PSVersion: \"(3010.000) 0\"\n");
+ cupsFilePuts(fp, "*LanguageLevel: \"3\"\n");
+ cupsFilePuts(fp, "*FileSystem: False\n");
+ cupsFilePuts(fp, "*PCFileName: \"ippeve.ppd\"\n");
cupsFilePrintf(fp, "*Manufacturer: \"%s\"\n", make);
cupsFilePrintf(fp, "*ModelName: \"%s\"\n", model);
cupsFilePrintf(fp, "*Product: \"(%s)\"\n", model);
@@ -3317,13 +3388,13 @@ _ppdCreateFromIPP2(
}
cupsFilePuts(fp, "\"\n");
- if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-more-info", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
cupsFilePrintf(fp, "*APSupplies: \"%s\"\n", ippGetString(attr, 0, NULL));
- if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-charge-info-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
cupsFilePrintf(fp, "*cupsChargeInfoURI: \"%s\"\n", ippGetString(attr, 0, NULL));
- if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
{
http_t *http = NULL; /* Connection to printer */
char stringsfile[1024]; /* Temporary strings file */
@@ -3367,7 +3438,7 @@ _ppdCreateFromIPP2(
response = cupsDoRequest(http, request, resource);
- if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(response, "printer-strings-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
cupsFilePrintf(fp, "*cupsStringsURI %s: \"%s\"\n", keyword, ippGetString(attr, 0, NULL));
ippDelete(response);
@@ -3389,10 +3460,10 @@ _ppdCreateFromIPP2(
if (ippGetBoolean(ippFindAttribute(supported, "job-accounting-user-id-supported", IPP_TAG_BOOLEAN), 0))
cupsFilePuts(fp, "*cupsJobAccountingUserId: True\n");
- if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-privacy-policy-uri", IPP_TAG_URI)) != NULL && ippValidateAttribute(attr))
cupsFilePrintf(fp, "*cupsPrivacyURI: \"%s\"\n", ippGetString(attr, 0, NULL));
- if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-mandatory-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
{
char prefix = '\"'; // Prefix for string
@@ -3410,7 +3481,7 @@ _ppdCreateFromIPP2(
cupsFilePuts(fp, "\"\n");
}
- if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL)
+ if ((attr = ippFindAttribute(supported, "printer-requested-job-attributes", IPP_TAG_KEYWORD)) != NULL && ippValidateAttribute(attr))
{
char prefix = '\"'; // Prefix for string
@@ -3973,18 +4044,16 @@ _ppdCreateFromIPP2(
cupsFilePrintf(fp, "*DefaultInputSlot: %s\n", ppdname);
for (j = 0; j < (int)(sizeof(sources) / sizeof(sources[0])); j ++)
+ {
if (!strcmp(sources[j], keyword))
{
snprintf(msgid, sizeof(msgid), "media-source.%s", keyword);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
-
cupsFilePrintf(fp, "*InputSlot %s: \"<</MediaPosition %d>>setpagedevice\"\n", ppdname, j);
- cupsFilePrintf(fp, "*%s.InputSlot %s/%s: \"\"\n", lang->language, ppdname, msgstr);
+ ppd_put_string(fp, lang, strings, "InputSlot", ppdname, msgid);
break;
}
+ }
}
cupsFilePuts(fp, "*CloseUI: *InputSlot\n");
}
@@ -4010,12 +4079,9 @@ _ppdCreateFromIPP2(
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
snprintf(msgid, sizeof(msgid), "media-type.%s", keyword);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
cupsFilePrintf(fp, "*MediaType %s: \"<</MediaType(%s)>>setpagedevice\"\n", ppdname, ppdname);
- cupsFilePrintf(fp, "*%s.MediaType %s/%s: \"\"\n", lang->language, ppdname, msgstr);
+ ppd_put_string(fp, lang, strings, "MediaType", ppdname, msgid);
}
cupsFilePuts(fp, "*CloseUI: *MediaType\n");
}
@@ -4476,12 +4542,9 @@ _ppdCreateFromIPP2(
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
snprintf(msgid, sizeof(msgid), "output-bin.%s", keyword);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
cupsFilePrintf(fp, "*OutputBin %s: \"\"\n", ppdname);
- cupsFilePrintf(fp, "*%s.OutputBin %s/%s: \"\"\n", lang->language, ppdname, msgstr);
+ ppd_put_string(fp, lang, strings, "OutputBin", ppdname, msgid);
if ((tray_ptr = ippGetOctetString(trays, i, &tray_len)) != NULL)
{
@@ -4600,9 +4663,6 @@ _ppdCreateFromIPP2(
cupsArrayAdd(names, (char *)keyword);
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
@@ -4617,7 +4677,7 @@ _ppdCreateFromIPP2(
continue;
cupsFilePrintf(fp, "*StapleLocation %s: \"\"\n", ppd_keyword);
- cupsFilePrintf(fp, "*%s.StapleLocation %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
+ ppd_put_string(fp, lang, strings, "StapleLocation", ppd_keyword, msgid);
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*StapleLocation %s\"\n", value, keyword, ppd_keyword);
}
@@ -4680,9 +4740,6 @@ _ppdCreateFromIPP2(
cupsArrayAdd(names, (char *)keyword);
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
@@ -4697,7 +4754,7 @@ _ppdCreateFromIPP2(
continue;
cupsFilePrintf(fp, "*FoldType %s: \"\"\n", ppd_keyword);
- cupsFilePrintf(fp, "*%s.FoldType %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
+ ppd_put_string(fp, lang, strings, "FoldType", ppd_keyword, msgid);
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*FoldType %s\"\n", value, keyword, ppd_keyword);
}
@@ -4768,9 +4825,6 @@ _ppdCreateFromIPP2(
cupsArrayAdd(names, (char *)keyword);
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
if (value >= IPP_FINISHINGS_NONE && value <= IPP_FINISHINGS_LAMINATE)
ppd_keyword = base_keywords[value - IPP_FINISHINGS_NONE];
@@ -4785,7 +4839,7 @@ _ppdCreateFromIPP2(
continue;
cupsFilePrintf(fp, "*PunchMedia %s: \"\"\n", ppd_keyword);
- cupsFilePrintf(fp, "*%s.PunchMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
+ ppd_put_string(fp, lang, strings, "PunchMedia", ppd_keyword, msgid);
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*PunchMedia %s\"\n", value, keyword, ppd_keyword);
}
@@ -4856,9 +4910,6 @@ _ppdCreateFromIPP2(
cupsArrayAdd(names, (char *)keyword);
snprintf(msgid, sizeof(msgid), "finishings.%d", value);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
if (value == IPP_FINISHINGS_TRIM)
ppd_keyword = "Auto";
@@ -4866,7 +4917,7 @@ _ppdCreateFromIPP2(
ppd_keyword = trim_keywords[value - IPP_FINISHINGS_TRIM_AFTER_PAGES];
cupsFilePrintf(fp, "*CutMedia %s: \"\"\n", ppd_keyword);
- cupsFilePrintf(fp, "*%s.CutMedia %s/%s: \"\"\n", lang->language, ppd_keyword, msgstr);
+ ppd_put_string(fp, lang, strings, "CutMedia", ppd_keyword, msgid);
cupsFilePrintf(fp, "*cupsIPPFinishings %d/%s: \"*CutMedia %s\"\n", value, keyword, ppd_keyword);
}
@@ -4905,12 +4956,11 @@ _ppdCreateFromIPP2(
cupsArrayAdd(templates, (void *)keyword);
+ pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+
snprintf(msgid, sizeof(msgid), "finishing-template.%s", keyword);
- if ((msgstr = _cupsLangString(lang, msgid)) == msgid || !strcmp(msgid, msgstr))
- if ((msgstr = _cupsMessageLookup(strings, msgid)) == msgid)
- msgstr = keyword;
- cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", keyword);
+ cupsFilePrintf(fp, "*cupsFinishingTemplate %s: \"\n", ppdname);
for (finishing_attr = ippFirstAttribute(finishing_col); finishing_attr; finishing_attr = ippNextAttribute(finishing_col))
{
if (ippGetValueTag(finishing_attr) == IPP_TAG_BEGIN_COLLECTION)
@@ -4923,7 +4973,7 @@ _ppdCreateFromIPP2(
}
}
cupsFilePuts(fp, "\"\n");
- cupsFilePrintf(fp, "*%s.cupsFinishingTemplate %s/%s: \"\"\n", lang->language, keyword, msgstr);
+ ppd_put_string(fp, lang, strings, "cupsFinishingTemplate", ppdname, msgid);
cupsFilePuts(fp, "*End\n");
}
@@ -4959,9 +5009,8 @@ _ppdCreateFromIPP2(
{
ipp_t *preset = ippGetCollection(attr, i);
/* Preset collection */
- const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL),
+ const char *preset_name = ippGetString(ippFindAttribute(preset, "preset-name", IPP_TAG_ZERO), 0, NULL);
/* Preset name */
- *localized_name; /* Localized preset name */
ipp_attribute_t *member; /* Member attribute in preset */
const char *member_name; /* Member attribute name */
char member_value[256]; /* Member attribute value */
@@ -4969,7 +5018,8 @@ _ppdCreateFromIPP2(
if (!preset || !preset_name)
continue;
- cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", preset_name);
+ pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
+ cupsFilePrintf(fp, "*APPrinterPreset %s: \"\n", ppdname);
for (member = ippFirstAttribute(preset); member; member = ippNextAttribute(preset))
{
member_name = ippGetName(member);
@@ -5010,7 +5060,10 @@ _ppdCreateFromIPP2(
fin_col = ippGetCollection(member, i);
if ((keyword = ippGetString(ippFindAttribute(fin_col, "finishing-template", IPP_TAG_ZERO), 0, NULL)) != NULL)
- cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", keyword);
+ {
+ pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
+ cupsFilePrintf(fp, "*cupsFinishingTemplate %s\n", ppdname);
+ }
}
}
else if (!strcmp(member_name, "media"))
@@ -5037,13 +5090,13 @@ _ppdCreateFromIPP2(
if ((keyword = ippGetString(ippFindAttribute(media_col, "media-source", IPP_TAG_ZERO), 0, NULL)) != NULL)
{
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
- cupsFilePrintf(fp, "*InputSlot %s\n", keyword);
+ cupsFilePrintf(fp, "*InputSlot %s\n", ppdname);
}
if ((keyword = ippGetString(ippFindAttribute(media_col, "media-type", IPP_TAG_ZERO), 0, NULL)) != NULL)
{
pwg_ppdize_name(keyword, ppdname, sizeof(ppdname));
- cupsFilePrintf(fp, "*MediaType %s\n", keyword);
+ cupsFilePrintf(fp, "*MediaType %s\n", ppdname);
}
}
else if (!strcmp(member_name, "print-quality"))
@@ -5088,8 +5141,9 @@ _ppdCreateFromIPP2(
cupsFilePuts(fp, "\"\n*End\n");
- if ((localized_name = _cupsMessageLookup(strings, preset_name)) != preset_name)
- cupsFilePrintf(fp, "*%s.APPrinterPreset %s/%s: \"\"\n", lang->language, preset_name, localized_name);
+ snprintf(msgid, sizeof(msgid), "preset-name.%s", preset_name);
+ pwg_ppdize_name(preset_name, ppdname, sizeof(ppdname));
+ ppd_put_string(fp, lang, strings, "APPrinterPreset", ppdname, msgid);
}
}
@@ -5360,6 +5414,43 @@ cups_get_url(http_t **http, /* IO - Current HTTP connection */
}
+/*
+ * 'ppd_put_strings()' - Write localization attributes to a PPD file.
+ */
+
+static void
+ppd_put_string(cups_file_t *fp, /* I - PPD file */
+ cups_lang_t *lang, /* I - Language */
+ cups_array_t *strings, /* I - Strings */
+ const char *ppd_option,/* I - PPD option */
+ const char *ppd_choice,/* I - PPD choice */
+ const char *pwg_msgid) /* I - PWG message ID */
+{
+ const char *text; /* Localized text */
+
+
+ if ((text = _cupsLangString(lang, pwg_msgid)) == pwg_msgid || !strcmp(pwg_msgid, text))
+ {
+ if ((text = _cupsMessageLookup(strings, pwg_msgid)) == pwg_msgid)
+ return;
+ }
+
+ // Add the first line of localized text...
+ cupsFilePrintf(fp, "*%s.%s %s/", lang->language, ppd_option, ppd_choice);
+ while (*text && *text != '\n')
+ {
+ // Escape ":" and "<"...
+ if (*text == ':' || *text == '<')
+ cupsFilePrintf(fp, "<%02X>", *text);
+ else
+ cupsFilePutChar(fp, *text);
+
+ text ++;
+ }
+ cupsFilePuts(fp, ": \"\"\n");
+}
+
+
/*
* 'pwg_add_finishing()' - Add a finishings value.
*/
@@ -5473,7 +5564,7 @@ pwg_ppdize_name(const char *ipp, /* I - IPP keyword */
*end; /* End of name buffer */
- if (!ipp)
+ if (!ipp || !_cups_isalnum(*ipp))
{
*name = '\0';
return;
@@ -5488,8 +5579,14 @@ pwg_ppdize_name(const char *ipp, /* I - IPP keyword */
ipp ++;
*ptr++ = (char)toupper(*ipp++ & 255);
}
- else
+ else if (*ipp == '_' || *ipp == '.' || *ipp == '-' || _cups_isalnum(*ipp))
+ {
*ptr++ = *ipp++;
+ }
+ else
+ {
+ ipp ++;
+ }
}
*ptr = '\0';
diff --git a/scheduler/ipp.c b/scheduler/ipp.c
index 37623c54e..14b1fe1e0 100644
--- a/scheduler/ipp.c
+++ b/scheduler/ipp.c
@@ -1,7 +1,7 @@
/*
* IPP routines for the CUPS scheduler.
*
- * Copyright © 2020-2023 by OpenPrinting
+ * Copyright © 2020-2024 by OpenPrinting
* Copyright © 2007-2021 by Apple Inc.
* Copyright © 1997-2007 by Easy Software Products, all rights reserved.
*
@@ -5417,6 +5417,13 @@ create_local_bg_thread(
}
}
+ // Validate response from printer...
+ if (!ippValidateAttributes(response))
+ {
+ send_ipp_status(con, IPP_STATUS_ERROR_DEVICE, _("Printer returned invalid data: %s"), cupsLastErrorString());
+ goto finish_response;
+ }
+
// TODO: Grab printer icon file...
httpClose(http);
--
2.46.0

View file

@ -0,0 +1,34 @@
From 943e44dafa192b54fadcbb24f5f87d62a22c9f84 Mon Sep 17 00:00:00 2001
From: Sergey Trofimov <sarg@sarg.org.ru>
Date: Wed, 17 Sep 2025 12:09:34 +0200
Subject: [PATCH] Exempt files in /gnu/store from root ownership check.
---
cups/file.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/cups/file.c b/cups/file.c
index 95054f3c8..9822619d4 100644
--- a/cups/file.c
+++ b/cups/file.c
@@ -159,7 +159,8 @@ _cupsFileCheck(
* 4. Must not be writable by others
*/
- if (fileinfo.st_uid || /* 1. Must be owned by root */
+ int in_gnu_store = !strncmp(filename, "/gnu/store/", 11);
+ if ((fileinfo.st_uid && !in_gnu_store) || /* 1. Must be owned by root or be in /gnu/store */
(fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
@@ -198,7 +199,7 @@ _cupsFileCheck(
goto finishup;
}
- if (fileinfo.st_uid || /* 1. Must be owned by root */
+ if ((fileinfo.st_uid && !in_gnu_store) || /* 1. Must be owned by root or be in /gnu/store */
(fileinfo.st_mode & S_IWGRP) || /* 2. Must not be writable by group */
(fileinfo.st_mode & S_ISUID) || /* 3. Must not be setuid */
(fileinfo.st_mode & S_IWOTH)) /* 4. Must not be writable by others */
--
2.51.0

View file

@ -0,0 +1,25 @@
From 462a541db904405ede8446c48ba0c71ad41c544d Mon Sep 17 00:00:00 2001
From: Eli Zaretskii <eliz@gnu.org>
Date: Thu, 17 Jul 2025 19:34:50 +0300
Subject: [PATCH] ; * test/lisp/net/shr-tests.el (shr-test/zoom-image): Fix
<img> (bug#79041).
---
test/lisp/net/shr-tests.el | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/test/lisp/net/shr-tests.el b/test/lisp/net/shr-tests.el
index 363cd144e8f3..a931d07a1631 100644
--- a/test/lisp/net/shr-tests.el
+++ b/test/lisp/net/shr-tests.el
@@ -145,8 +145,8 @@ settings, then once more for each (OPTION . VALUE) pair.")
(dolist (alt '(nil "" "nothing to see here"))
(with-temp-buffer
(ert-info ((format "image with alt=%S" alt))
- (let ((attrs (if alt (format " alt=\"%s\"" alt) "")))
- (insert (format "<img src=\"%s\" %s" image-url attrs)))
+ (let ((attrs (if alt (format " alt=\"%s\">" alt) ">")))
+ (insert (format "<img src=\"%s\"%s" image-url attrs)))
(cl-letf* (;; Pretend we're a graphical display.
((symbol-function 'display-graphic-p) #'always)
((symbol-function 'url-queue-retrieve)

View file

@ -0,0 +1,33 @@
From 951743698610eaaa0cc9030f7d7d02437419ac24 Mon Sep 17 00:00:00 2001
From: Neil Hanlon <neil@shrug.pw>
Date: Fri, 9 Feb 2024 15:32:38 -0500
Subject: [PATCH] Add gobject example source code to path for mkhtml test
Fixes #150
I'm not really sure why this is required, but I suspect it has to do
with changes in how GCC handles path traversal due to recent (ish)
security issues, as the code here is evaluated to
`../xml/../../examples/gobject.c` which probably looks unhealthy to
automatically include.
Signed-off-by: Neil Hanlon <neil@shrug.pw>
---
tests/gobject/docs/meson.build | 1 +
1 file changed, 1 insertion(+)
diff --git a/tests/gobject/docs/meson.build b/tests/gobject/docs/meson.build
index a1dd66ca..236a1cc0 100644
--- a/tests/gobject/docs/meson.build
+++ b/tests/gobject/docs/meson.build
@@ -119,6 +119,7 @@ test(
'--path=@0@'.format(':'.join([
gobject_test_docs_dir,
srcdir,
+ join_paths(srcdir, 'tests/gobject/examples'),
])
),
],
--
GitLab

View file

@ -0,0 +1,33 @@
From 694d8ae43d06efff21adebf377ce614d660b24cd Mon Sep 17 00:00:00 2001
From: Christian Hesse <mail@eworm.de>
Date: Fri, 17 Nov 2023 22:30:42 +0100
Subject: [PATCH] include missing header file
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This fixes build error:
```
/build/inkscape/src/inkscape/src/object/uri.cpp: In constructor Inkscape::URI::URI(const gchar*, const char*):
/build/inkscape/src/inkscape/src/object/uri.cpp:86:9: error: xmlFree was not declared in this scope; did you mean xmlFreeURI?
86 | xmlFree(full);
```
---
src/object/uri.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/object/uri.h b/src/object/uri.h
index 381adec58cf..d5b211fe2b2 100644
--- a/src/object/uri.h
+++ b/src/object/uri.h
@@ -13,6 +13,7 @@
#define INKSCAPE_URI_H
#include <libxml/uri.h>
+#include <libxml/xmlmemory.h>
#include <memory>
#include <string>
--
GitLab

View file

@ -0,0 +1,83 @@
From 0adf38535637ec668e658d43f04f60f11f51574f Mon Sep 17 00:00:00 2001
From: Roman Bogorodskiy <bogorodskiy@gmail.com>
Date: Thu, 10 Apr 2025 13:54:02 +0200
Subject: [PATCH] loader: don't use libxml2 deprecated APIs
Address the following items:
- Deprecated direct access to buf's content
- Mismatching error function signature
- Deprecated direct access to ctxt's lastError
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
---
osinfo/osinfo_loader.c | 42 +++++++++++++++++++++++-------------------
1 file changed, 23 insertions(+), 19 deletions(-)
diff --git a/osinfo/osinfo_loader.c b/osinfo/osinfo_loader.c
index 0a9004af..b3fd4535 100644
--- a/osinfo/osinfo_loader.c
+++ b/osinfo/osinfo_loader.c
@@ -354,7 +354,7 @@ osinfo_loader_doc(const char *xpath,
xmlXPathFreeObject(obj);
OSINFO_LOADER_SET_ERROR(err, "Cannot format stylesheet");
}
- ret = g_strdup((char *)buf->content);
+ ret = g_strdup((char *)xmlBufferContent(buf));
xmlBufferFree(buf);
xmlXPathFreeObject(obj);
@@ -1902,28 +1902,32 @@ static void osinfo_loader_root(OsinfoLoader *loader,
}
static void
-catchXMLError(void *ctx, const char *msg ATTRIBUTE_UNUSED, ...)
+catchXMLError(void *ctx, const char *msg, ...)
{
xmlParserCtxtPtr ctxt = (xmlParserCtxtPtr) ctx;
+ const xmlError *xmlErr = NULL;
+ g_autofree gchar *xmlmsg = NULL;
- if (ctxt && ctxt->_private) {
- GError **err = ctxt->_private;
- if (!error_is_set(err)) {
- gchar *xmlmsg;
- if (ctxt->lastError.file) {
- xmlmsg = g_strdup_printf("%s:%d: %s",
- ctxt->lastError.file,
- ctxt->lastError.line,
- ctxt->lastError.message);
- } else {
- xmlmsg = g_strdup_printf("at line %d: %s",
- ctxt->lastError.line,
- ctxt->lastError.message);
- }
- OSINFO_LOADER_SET_ERROR(ctxt->_private, xmlmsg);
- g_free(xmlmsg);
- }
+ if (!ctxt || !ctxt->_private)
+ return;
+
+ if (error_is_set(ctxt->_private))
+ return;
+
+ if (!(xmlErr = xmlCtxtGetLastError(ctx)))
+ return;
+
+ if (xmlErr->file) {
+ xmlmsg = g_strdup_printf("%s:%d: %s",
+ xmlErr->file,
+ xmlErr->line,
+ xmlErr->message);
+ } else {
+ xmlmsg = g_strdup_printf("at line %d: %s",
+ xmlErr->line,
+ xmlErr->message);
}
+ OSINFO_LOADER_SET_ERROR(ctxt->_private, xmlmsg);
}
static void osinfo_loader_process_xml(OsinfoLoader *loader,
--
GitLab

View file

@ -1,6 +1,6 @@
Patch from NixOS:
https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/libvirt/0001-meson-patch-in-an-install-prefix-for-building-on-nix.patch
https://github.com/NixOS/nixpkgs/blob/master/pkgs/by-name/li/libvirt/0001-meson-patch-in-an-install-prefix-for-building-on-nix.patch
From 58c07f1d59ef683faf8b747e40bd75401306acf4 Mon Sep 17 00:00:00 2001
From: Euan Kemp <euank@euank.com>
@ -406,10 +406,10 @@ index 3b859ea7b4..ccddb3e805 100644
]
endif
diff --git a/src/security/apparmor/meson.build b/src/security/apparmor/meson.build
index b9257c816d..98701755d8 100644
index 09d9fac02c..ee0c74ceec 100644
--- a/src/security/apparmor/meson.build
+++ b/src/security/apparmor/meson.build
@@ -57,7 +57,7 @@ foreach name : apparmor_gen_profiles
@@ -20,16 +20,16 @@ foreach name : apparmor_gen_profiles
output: name,
configuration: apparmor_gen_profiles_conf,
install: true,
@ -418,31 +418,17 @@ index b9257c816d..98701755d8 100644
)
endforeach
@@ -68,13 +68,13 @@ foreach name : apparmor_gen_abstractions
command: apparmor_gen_cmd,
capture: true,
install: true,
install_data(
[ 'libvirt-qemu', 'libvirt-lxc' ],
- install_dir: apparmor_dir / 'abstractions',
+ install_dir: install_prefix + apparmor_dir / 'abstractions',
)
endforeach
install_data(
[ 'TEMPLATE.qemu', 'TEMPLATE.lxc' ],
- install_dir: apparmor_dir / 'libvirt',
+ install_dir: install_prefix + apparmor_dir / 'libvirt',
)
if not conf.has('WITH_APPARMOR_3')
@@ -83,7 +83,7 @@ if not conf.has('WITH_APPARMOR_3')
# files in order to limit the amount of filesystem clutter.
install_data(
'usr.lib.libvirt.virt-aa-helper.local',
- install_dir: apparmor_dir / 'local',
+ install_dir: install_prefix + apparmor_dir / 'local',
rename: 'usr.lib.libvirt.virt-aa-helper',
)
endif
diff --git a/src/storage/meson.build b/src/storage/meson.build
index 404d6a6941..fb4e67a0a8 100644
--- a/src/storage/meson.build
@ -461,18 +447,25 @@ index 404d6a6941..fb4e67a0a8 100644
endif
diff --git a/tools/meson.build b/tools/meson.build
index 1bb84be0be..e04a4e986d 100644
index a099148d3c..d0d6510f17 100644
--- a/tools/meson.build
+++ b/tools/meson.build
@@ -121,7 +121,7 @@ if conf.has('WITH_LOGIN_SHELL')
@@ -123,12 +123,12 @@ if conf.has('WITH_LOGIN_SHELL')
install_rpath: libvirt_rpath,
)
- install_data('virt-login-shell.conf', install_dir: sysconfdir / 'libvirt')
+ install_data('virt-login-shell.conf', install_dir: install_prefix + sysconfdir / 'libvirt')
# Install the sysuser config for the setgid binary
install_data(
'libvirt-login-shell.sysusers.conf',
- install_dir: sysusersdir,
+ install_dir: install_prefix + sysusersdir,
rename: [ 'libvirt-login-shell.conf' ],
)
endif
if host_machine.system() == 'windows'
diff --git a/tools/ssh-proxy/meson.build b/tools/ssh-proxy/meson.build
index e9f312fa25..95d5d8fe0b 100644
--- a/tools/ssh-proxy/meson.build

View file

@ -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 */
};
/**

View file

@ -0,0 +1,30 @@
From 48f94abff2fcc4943626a62c6180c60862288b08 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
Date: Tue, 3 Jun 2025 11:57:29 +0200
Subject: [PATCH 245/248] Install all files generated by doxygen
Install the whole directory and do not pick only some file-types
Change-Id: I743253696f3e57dfe70c6509b7d620dc2bf39e76
---
docs/doxygen/Makefile.am | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/docs/doxygen/Makefile.am b/docs/doxygen/Makefile.am
index 4351042..40a02e8 100644
--- a/docs/doxygen/Makefile.am
+++ b/docs/doxygen/Makefile.am
@@ -6,9 +6,7 @@ if WITH_LIBZMF_DOCS
install-data-am:
mkdir -p $(DESTDIR)$(docdir)/html
- $(INSTALL_DATA) html/*.html $(DESTDIR)$(docdir)/html/
- $(INSTALL_DATA) html/*.png $(DESTDIR)$(docdir)/html/
- $(INSTALL_DATA) html/*.css $(DESTDIR)$(docdir)/html/
+ $(INSTALL_DATA) html/* $(DESTDIR)$(docdir)/html/
uninstall-am:
-rm -rf $(DESTDIR)$(docdir)/html
--
2.51.0

View file

@ -0,0 +1,40 @@
Patch obtained from https://github.com/mpv-player/mpv/commit/26b29fba02a2782f68e2906f837d21201fc6f1b9
See https://github.com/mpv-player/mpv/issues/16176 for discussion. Next version
of mpv will have this fixed, but upstream is not planning to release a patch
release.
From 26b29fba02a2782f68e2906f837d21201fc6f1b9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= <kasper93@gmail.com>
Date: Fri, 28 Mar 2025 19:12:01 +0100
Subject: [PATCH] demux_mkv: fix compilation after deprecated definitions
removal
See: https://github.com/FFmpeg/FFmpeg/commit/822432769868da325ba03774df1084aa78b9a5a0
---
demux/demux_mkv.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/demux/demux_mkv.c b/demux/demux_mkv.c
index 135edcc23d82b..cc7ce3e98f4f6 100644
--- a/demux/demux_mkv.c
+++ b/demux/demux_mkv.c
@@ -2200,16 +2200,16 @@ static int demux_mkv_open_sub(demuxer_t *demuxer, mkv_track_t *track)
// [0x30..0x37] are component tags utilized for
// non-mobile captioning service ("profile A").
if (component_tag >= 0x30 && component_tag <= 0x37)
- lav->profile = FF_PROFILE_ARIB_PROFILE_A;
+ lav->profile = AV_PROFILE_ARIB_PROFILE_A;
break;
case 0x0012:
// component tag 0x87 signifies a mobile/partial reception
// (1seg) captioning service ("profile C").
if (component_tag == 0x87)
- lav->profile = FF_PROFILE_ARIB_PROFILE_C;
+ lav->profile = AV_PROFILE_ARIB_PROFILE_C;
break;
}
- if (lav->profile == FF_PROFILE_UNKNOWN)
+ if (lav->profile == AV_PROFILE_UNKNOWN)
MP_WARN(demuxer, "ARIB caption profile %02x / %04x not supported.\n",
component_tag, data_component_id);
}

View file

@ -6,17 +6,17 @@ that 'itstool' stumbles upon when processing UTF-8 data:
Patch by Jan Matejek
from <https://bugzilla.opensuse.org/show_bug.cgi?id=1065270>.
--- libxml2-2.9.5.orig/python/libxml.c
+++ libxml2-2.9.5/python/libxml.c
@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
--- a/python/libxml.c
+++ b/python/libxml.c
@@ -1499,6 +1499,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg,
PyObject *message;
PyObject *result;
char str[1000];
+ unsigned char *ptr = (unsigned char *)str;
#ifdef DEBUG_ERROR
printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg);
@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU
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);
@ -32,7 +32,7 @@ from <https://bugzilla.opensuse.org/show_bug.cgi?id=1065270>.
- message = libxml_charPtrConstWrap(str);
+ message = libxml_charPtrConstWrap(ptr);
PyTuple_SetItem(list, 1, message);
result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list);
result = PyObject_CallObject(libxml_xmlPythonErrorFuncHandler, list);
+ /* Forget any errors caused in the error handler. */
+ PyErr_Clear();
Py_XDECREF(list);

View file

@ -0,0 +1,30 @@
https://bugs.gentoo.org/906227
https://github.com/dajobe/raptor/issues/59
https://github.com/dajobe/raptor/pull/58
From 4dbc4c1da2a033c497d84a1291c46f416a9cac51 Mon Sep 17 00:00:00 2001
From: David Anes <david.anes@suse.com>
Date: Thu, 4 May 2023 11:54:02 +0200
Subject: [PATCH] Remove the access to entities 'checked' private symbol for
libxml2 2.11.0
Since version 2.11.0, some private symbols that were never intended
as public API/ABI have been removed from libxml2, therefore the field
'checked' is no longer present and raptor fails to build in this
scenario.
--- a/src/raptor_libxml.c
+++ b/src/raptor_libxml.c
@@ -246,10 +246,11 @@ raptor_libxml_getEntity(void* user_data, const xmlChar *name)
ret->owner = 1;
-#if LIBXML_VERSION >= 20627
+#if LIBXML_VERSION >= 20627 && LIBXML_VERSION < 21100
/* Checked field was released in 2.6.27 on 2006-10-25
* http://git.gnome.org/browse/libxml2/commit/?id=a37a6ad91a61d168ecc4b29263def3363fff4da6
*
+ * and was later removed in version 2.11.0
*/
/* Mark this entity as having been checked - never do this again */

View file

@ -0,0 +1,25 @@
From 324ad2e5b5d4b08fb682fa05d5baaaf087d13f5c Mon Sep 17 00:00:00 2001
From: Sergey Trofimov <sarg@sarg.org.ru>
Date: Sat, 20 Sep 2025 18:26:44 +0200
Subject: [PATCH] Look for plugins in SANE_BACKEND_LIB_PATH.
---
backend/dll.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/backend/dll.c b/backend/dll.c
index bf34c4f6d..d52e81206 100644
--- a/backend/dll.c
+++ b/backend/dll.c
@@ -461,6 +461,8 @@ load (struct backend *be)
be->op[i] = op_unsupported;
path = getenv ("LD_LIBRARY_PATH");
+ if (!path)
+ path = getenv ("SANE_BACKEND_LIB_PATH"); /* for guix */
if (!path)
path = getenv ("SHLIB_PATH"); /* for HP-UX */
if (!path)
--
2.51.0

View file

@ -0,0 +1,100 @@
From f546743016f5301c063f2c50af0ea43dd2485ef4 Mon Sep 17 00:00:00 2001
From: Charles Giessen <charles@lunarg.com>
Date: Thu, 17 Jul 2025 09:56:40 -0500
Subject: [PATCH] build: Remove pkg-config provided library names
The library names of Xcb, Xlib, and Wayland do not need to be queried from pkg-config,
instead they can be hardcoded to use the fallback names.
The intent of querying the library names was to prevent issues where the hardcoded name
was not the platform-appropriate name. But because <library>_LINK_LIBRARIES can have
more than one library name, the logic to assign <library>_LINK_LIBRARIES into a compile
definition breaks horribly. While it is possible to handle this in CMake, the dlopen code would
also have to handle it which is much more error prone.
---
cube/CMakeLists.txt | 20 --------------------
cube/wayland_loader.h | 3 ---
cube/xcb_loader.h | 3 ---
cube/xlib_loader.h | 3 ---
4 files changed, 29 deletions(-)
diff --git a/cube/CMakeLists.txt b/cube/CMakeLists.txt
index 7e135e79b..dac6bfed9 100644
--- a/cube/CMakeLists.txt
+++ b/cube/CMakeLists.txt
@@ -307,16 +307,6 @@ if (ANDROID)
return()
endif()
-if (XCB_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
-endif()
-if (X11_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
-endif()
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
- target_compile_definitions(vkcube PRIVATE "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
-endif()
-
# ----------------------------------------------------------------------------
# vkcubepp
@@ -360,16 +350,6 @@ target_include_directories(vkcubepp PRIVATE .)
target_compile_definitions(vkcubepp PRIVATE ${ENABLED_CUBE_PLATFORMS})
target_link_libraries(vkcubepp ${CMAKE_DL_LIBS} Vulkan::Headers)
-if (XCB_LINK_LIBRARIES )
- target_compile_definitions(vkcubepp PUBLIC "XCB_LIBRARY=\"${XCB_LINK_LIBRARIES}\"")
-endif()
-if (X11_LINK_LIBRARIES)
- target_compile_definitions(vkcubepp PUBLIC "XLIB_LIBRARY=\"${X11_LINK_LIBRARIES}\"")
-endif()
-if (WAYLAND_CLIENT_LINK_LIBRARIES)
- target_compile_definitions(vkcubepp PUBLIC "WAYLAND_LIBRARY=\"${WAYLAND_CLIENT_LINK_LIBRARIES}\"")
-endif()
-
if(APPLE)
install(
TARGETS vkcubepp
diff --git a/cube/wayland_loader.h b/cube/wayland_loader.h
index 2afab6e97..7d7d91412 100644
--- a/cube/wayland_loader.h
+++ b/cube/wayland_loader.h
@@ -80,9 +80,6 @@ static PFN_wl_display_disconnect cube_wl_display_disconnect = NULL;
static inline void *initialize_wayland() {
void *wayland_library = NULL;
-#if defined(WAYLAND_LIBRARY)
- wayland_library = dlopen(WAYLAND_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == wayland_library) {
wayland_library = dlopen("libwayland-client.so.0", RTLD_NOW | RTLD_LOCAL);
}
diff --git a/cube/xcb_loader.h b/cube/xcb_loader.h
index a94d5ab56..cecd25402 100644
--- a/cube/xcb_loader.h
+++ b/cube/xcb_loader.h
@@ -88,9 +88,6 @@ static PFN_xcb_screen_next cube_xcb_screen_next = NULL;
void *initialize_xcb() {
void *xcb_library = NULL;
-#if defined(XCB_LIBRARY)
- xcb_library = dlopen(XCB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == xcb_library) {
xcb_library = dlopen("libxcb.so.1", RTLD_NOW | RTLD_LOCAL);
}
diff --git a/cube/xlib_loader.h b/cube/xlib_loader.h
index c7874d0e7..881789f18 100644
--- a/cube/xlib_loader.h
+++ b/cube/xlib_loader.h
@@ -72,9 +72,6 @@ static PFN_XFlush cube_XFlush = NULL;
void* initialize_xlib() {
void* xlib_library = NULL;
-#if defined(XLIB_LIBRARY)
- xlib_library = dlopen(XLIB_LIBRARY, RTLD_NOW | RTLD_LOCAL);
-#endif
if (NULL == xlib_library) {
xlib_library = dlopen("libX11.so.6", RTLD_NOW | RTLD_LOCAL);
}

View file

@ -1,23 +0,0 @@
This patch fixes two bugs in upstream mcookie detection: 1) If mcookie is not
detected, we still need to set HAS_COOKIE_HANDLER and MK_COOKIE, and 2) the
value for MK_COOKIE must be a string in order to disallow further preprocessor
expansions.
In particular for 2, if we fail to surround the path in quotes, our path
contains the token "linux", which gcc further expands, creating an invalid
path.
--- a/configure.ac 2025-03-08 16:48:34.476791744 +0900
+++ b/configure.ac 2025-03-08 16:48:30.208791623 +0900
@@ -157,8 +157,10 @@
fi
fi
if test "x$MCOOKIE" != x ; then
- STARTX_COOKIE_FLAGS='-DHAS_COOKIE_MAKER -DMK_COOKIE="$(MCOOKIE)"'
+ STARTX_COOKIE_FLAGS='-DHAS_COOKIE_MAKER -DMK_COOKIE="'"'"'$(MCOOKIE)'"'"'"'
AC_MSG_NOTICE([startx will depend on "$MCOOKIE" to generate xauth cookies])
+else
+ STARTX_COOKIE_FLAGS='-DHAS_COOKIE_MAKER -DMK_COOKIE='
fi
AC_SUBST(STARTX_COOKIE_FLAGS)

View file

@ -4,7 +4,7 @@
;;; Copyright © 2018, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
;;;
@ -27,6 +27,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages compression)
@ -55,6 +56,7 @@
#:use-module (gnu packages xorg)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix build-system gnu)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:))
@ -62,38 +64,38 @@
(define-public php
(package
(name "php")
(version "8.3.12")
(version "8.3.26")
(home-page "https://www.php.net/")
(source (origin
(source
(origin
(method url-fetch)
(uri (string-append home-page "distributions/"
"php-" version ".tar.xz"))
(uri (string-append home-page "distributions/" "php-" version ".tar.xz"))
(sha256
(base32
"0cfi9g97lnmh3b3cn4a33dyzhgwyxicawkbz372whvz26f3f4x7p"))
(base32 "1lnbcc3b9k1j4c85a7sabvwp3iyl9xfg41qdc6a0qh1cl3pjwlig"))
(modules '((guix build utils)))
(snippet
'(with-directory-excursion "ext"
(for-each delete-file-recursively
;; Some of the bundled libraries have no proper upstream.
;; Ideally we'd extract these out as separate packages:
;;"mbstring/libmbfl"
;;"date/lib"
;;"bcmath/libbcmath"
;;"fileinfo/libmagic" ; a patched version of libmagic
'("gd/libgd"
"pcre/pcre2lib"))))))
;; "mbstring/libmbfl"
;; "date/lib"
;; "bcmath/libbcmath"
;; "fileinfo/libmagic" ; a patched version of libmagic
'("gd/libgd" "pcre/pcre2lib"))))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(let-syntax ((with (syntax-rules ()
(list
#:configure-flags
#~(let-syntax ((with (syntax-rules ()
((_ option input)
(string-append option "="
(string-append
option "="
(assoc-ref %build-inputs input))))))
(list (with "--with-bz2" "bzip2")
(with "--with-curl" "curl")
(with "--with-gdbm" "gdbm")
(with "--with-gettext" "libc") ; libintl.h
(with "--with-gettext" "libc") ;libintl.h
(with "--with-gmp" "gmp")
(with "--with-ldap" "openldap")
(with "--with-ldap-sasl" "cyrus-sasl")
@ -106,7 +108,7 @@
(with "--with-readline" "readline")
(with "--with-sodium" "libsodium")
(with "--with-sqlite3" "sqlite")
(with "--with-tidy" "tidy")
(with "--with-tidy" "tidy-html")
(with "--with-xsl" "libxslt")
(with "--with-zlib-dir" "zlib")
;; We could add "--with-snmp", but it requires netsnmp that
@ -116,11 +118,11 @@
"--with-external-gd"
"--with-iconv"
"--with-openssl"
"--with-mysqli" ; Required for, e.g. wordpress
"--with-mysqli" ;Required for, e.g. wordpress
"--with-pdo-mysql"
"--with-zip"
"--with-zlib"
"--enable-bcmath" ; Required for, e.g. Zabbix frontend
"--enable-bcmath" ;Required for, e.g. Zabbix frontend
"--enable-calendar"
"--enable-dba=shared"
"--enable-exif"
@ -133,30 +135,35 @@
"--enable-mbstring"
"--enable-pcntl"
"--enable-sockets"
"--enable-sysvsem" ; Required for, e.g. Nextcloud
"--enable-embed" ; Required for embed SAPI
"--enable-sysvsem" ;Required for, e.g. Nextcloud
"--enable-embed" ;Required for embed SAPI
"--enable-zts"
"--disable-zend-signals"
"--enable-zend-max-execution-timers"))
#:phases
(modify-phases %standard-phases
#~(modify-phases %standard-phases
(add-after 'unpack 'do-not-record-build-flags
(lambda _
;; Prevent configure flags from being stored and causing
;; unnecessary runtime dependencies.
(substitute* "scripts/php-config.in"
(("@CONFIGURE_OPTIONS@") "")
(("@PHP_LDFLAGS@") ""))
(("@CONFIGURE_OPTIONS@")
"")
(("@PHP_LDFLAGS@")
""))
;; This file has ISO-8859-1 encoding.
(with-fluids ((%default-port-encoding "ISO-8859-1"))
(substitute* "main/build-defs.h.in"
(("@CONFIGURE_COMMAND@") "(omitted)")))))
(("@CONFIGURE_COMMAND@")
"(omitted)")))))
(add-before 'build 'patch-/bin/sh
(lambda _
(substitute* '("run-tests.php" "ext/standard/proc_open.c")
(("/bin/sh") (which "sh")))))
(substitute* '("run-tests.php"
"ext/standard/proc_open.c")
(("/bin/sh")
(which "sh")))))
(add-before 'check 'prepare-tests
(lambda _
(lambda* (#:key parallel-tests? #:allow-other-keys)
;; Some of these files have ISO-8859-1 encoding, whereas others
;; use ASCII, so we can't use a "catch-all" find-files here.
(with-fluids ((%default-port-encoding "ISO-8859-1"))
@ -164,26 +171,32 @@
"ext/mbstring/tests/mb_send_mail04.phpt"
"ext/mbstring/tests/mb_send_mail05.phpt"
"ext/mbstring/tests/mb_send_mail06.phpt")
(("/bin/cat") (which "cat"))))
(("/bin/cat")
(which "cat"))))
(substitute* '("ext/mbstring/tests/mb_send_mail01.phpt"
"ext/mbstring/tests/mb_send_mail03.phpt"
"ext/mbstring/tests/bug52681.phpt"
"ext/standard/tests/general_functions/bug34794.phpt"
"ext/standard/tests/general_functions/bug44667.phpt"
"ext/standard/tests/general_functions/proc_open.phpt")
(("/bin/cat") (which "cat")))
(("/bin/cat")
(which "cat")))
;; The encoding of this file is not recognized, so we simply drop it.
(delete-file "ext/mbstring/tests/mb_send_mail07.phpt")
(substitute* "ext/standard/tests/streams/bug60602.phpt"
(("'ls'") (string-append "'" (which "ls") "'")))
(("'ls'")
(string-append "'"
(which "ls") "'")))
;; Drop tests known to fail on different architectures:
(for-each delete-file
,(cond
(for-each
delete-file
#$(cond
((target-arm32?)
`(list "ext/calendar/tests/unixtojd_error1.phpt"
'(list
"ext/calendar/tests/unixtojd_error1.phpt"
"ext/opcache/tests/preload_006.phpt"
"ext/opcache/tests/preload_011.phpt"
;; arm can be a lot slower, so a time-related test fails
@ -201,13 +214,13 @@
"sapi/cli/tests/cli_process_title_unix.phpt"
"Zend/tests/concat_003.phpt"))
((target-x86-32?)
`(list "ext/dba/tests/dba_gdbm.phpt"))
'(list "ext/dba/tests/dba_gdbm.phpt"))
((target-ppc32?)
`(list "sapi/phpdbg/tests/watch_001.phpt"
'(list "sapi/phpdbg/tests/watch_001.phpt"
"sapi/phpdbg/tests/watch_003.phpt"
"sapi/phpdbg/tests/watch_004.phpt"))
((target-ppc64le?)
`(list
'(list
;; phpdbg watchpoints don't work.
;; Bug tracked upstream at:
;; https://bugs.php.net/bug.php?id=81408
@ -216,33 +229,24 @@
"sapi/phpdbg/tests/watch_004.phpt"
"sapi/phpdbg/tests/watch_005.phpt"
"sapi/phpdbg/tests/watch_006.phpt"))
(else `'())))
(else ''())))
;; Drop tests that are known to fail.
(for-each delete-file
'("ext/posix/tests/posix_getgrgid.phpt" ; Requires /etc/group.
"ext/posix/tests/posix_getgrnam_basic.phpt" ; Requires /etc/group.
"ext/sockets/tests/bug63000.phpt" ; Fails to detect OS.
(for-each
delete-file
'("ext/posix/tests/posix_getgrgid.phpt" ;Requires /etc/group.
"ext/posix/tests/posix_getgrnam_basic.phpt" ;Requires /etc/group.
"ext/sockets/tests/bug63000.phpt" ;Fails to detect OS.
;; These need exotic locales.
"ext/standard/tests/strings/setlocale_basic1.phpt"
"ext/standard/tests/strings/setlocale_basic2.phpt"
"ext/standard/tests/strings/setlocale_basic3.phpt"
"ext/standard/tests/strings/setlocale_variation1.phpt"
;; This bug should have been fixed in gd 2.2.2.
;; Is it a regression?
"ext/gd/tests/bug65148.phpt"
;; This bug should have been fixed in the gd 2.2
;; series. Perhaps a regression introduced by gd
;; 2.3.0?
"ext/gd/tests/bug66590.phpt"
;; This bug should have been fixed in the php-5.5
;; series. Perhaps a regression introduced by gd
;; 2.3.0?
"ext/gd/tests/bug70102.phpt"
;; This bug should have been fixed in the php-5.6
;; series. Perhaps a regression introduced by gd
;; 2.3.0?
"ext/gd/tests/bug73869.phpt"
;; This test fails for unknown reason (see:
;; <https://github.com/php/php-src/issues/19996>).
"ext/gd/tests/gh16559.phpt"
;; Some WebP related tests fail.
"ext/gd/tests/webp_basic.phpt"
"ext/gd/tests/imagecreatefromstring_webp.phpt"
@ -284,6 +288,9 @@
"ext/gd/tests/bug48801.phpt"
;; Different expected output from imagecolorallocate().
"ext/gd/tests/bug53504.phpt"
;; This test sometimes exit with Termsig=11 (see:
;; <https://github.com/php/php-src/issues/19996>).
"ext/gd/tests/bug65148.phpt"
;; Wrong image size after scaling an image.
"ext/gd/tests/bug73272.phpt"
;; PCRE with/without JIT gives different result
@ -291,6 +298,10 @@
"ext/pcre/tests/gh11956.phpt"
;; reported bug only seems to affect windows
"ext/standard/tests/directory/bug74589_utf8.phpt"
;; This test is flaky, appears racy when the test suite runs
;; in parallel (see:
;; <https://github.com/php/php-src/issues/19998>).
"ext/standard/tests/file/bug46347.phpt"
;; this test seems to be unreliable/flaky
"sapi/cli/tests/php_cli_server_pdeathsig.phpt"
;; This test fails on most architectures.
@ -310,54 +321,59 @@
(setenv "REPORT_EXIT_STATUS" "1")
;; Skip tests requiring I/O facilities that are unavailable in the
;; build environment
(setenv "SKIP_IO_CAPTURE_TESTS" "1"))))
(setenv "SKIP_IO_CAPTURE_TESTS" "1")
;; Run tests in parallel.
(setenv "TEST_PHP_ARGS"
(format #f "-j~a" (if parallel-tests?
(parallel-job-count)
1))))))
#:test-target "test"))
(inputs
`(("aspell" ,aspell)
("bzip2" ,bzip2)
("curl" ,curl)
("cyrus-sasl" ,cyrus-sasl)
("freetype" ,freetype)
("fontconfig" ,fontconfig)
("libjpeg-turbo" ,libjpeg-turbo)
("libpng" ,libpng)
("gd" ,gd)
("gdbm" ,gdbm)
("gmp" ,gmp)
("gnutls" ,gnutls)
("icu4c" ,icu4c)
("libgcrypt" ,libgcrypt)
("libpng" ,libpng)
("libsodium" ,libsodium)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
("libx11" ,libx11)
("libzip" ,libzip)
("oniguruma" ,oniguruma)
("openldap" ,openldap)
("openssl" ,openssl)
("pcre" ,pcre2)
("postgresql" ,postgresql)
("readline" ,readline)
("sqlite" ,sqlite)
("tidy" ,tidy-html)
("zlib" ,zlib)))
(list aspell
bzip2
curl
cyrus-sasl
fontconfig
freetype
gd
gdbm
gmp
gnutls
icu4c
libgcrypt
libjpeg-turbo
libpng
libpng
libsodium
libx11
libxml2
libxslt
libzip
oniguruma
openldap
openssl
pcre2
postgresql
readline
sqlite
tidy-html
zlib))
(native-inputs
`(("pkg-config" ,pkg-config)
("bison" ,bison)
("gettext" ,gettext-minimal)
("procps" ,procps))) ; for tests
(list autoconf ;to save the test report
bison
gettext-minimal
pkg-config
procps)) ;for tests
(synopsis "PHP programming language")
(description
"PHP (PHP Hypertext Processor) is a server-side (CGI) scripting
language designed primarily for web development but is also used as
a general-purpose programming language. PHP code may be embedded into
HTML code, or it can be used in combination with various web template
systems, web content management systems and web frameworks." )
(license (list
(license:non-copyleft "file://LICENSE") ; The PHP license.
(license:non-copyleft "file://Zend/LICENSE") ; The Zend license.
license:lgpl2.1 ; ext/mbstring/libmbfl
license:lgpl2.1+ ; ext/bcmath/libbcmath
license:bsd-2 ; ext/fileinfo/libmagic
systems, web content management systems and web frameworks.")
(license (list (license:non-copyleft "file://LICENSE") ;The PHP license.
(license:non-copyleft "file://Zend/LICENSE") ;The Zend license.
license:lgpl2.1 ;ext/mbstring/libmbfl
license:lgpl2.1+ ;ext/bcmath/libbcmath
license:bsd-2 ;ext/fileinfo/libmagic
license:expat)))) ; ext/date/lib

View file

@ -3530,6 +3530,14 @@ and written in Python.")
(base32
"195wgxls3df7djry9cz3p2k9644l6bfd66fczbaw55fsq0c48agr"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-configure-flags
(lambda _
(setenv "CFLAGS"
"-Wno-error=implicit-function-declaration"))))))
(native-inputs
(list pkg-config))
(inputs

View file

@ -6061,7 +6061,7 @@ server.")
(base32 "17z6rrvv3q1axy9r13c2hln2pazfn9n5bhkzrbjcjakgbfjl6mss"))))
(build-system pyproject-build-system)
(native-inputs
(list python-lxml
(list python-lxml-4.9
python-pillow
python-pytest
python-setuptools))
@ -13102,8 +13102,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
@ -15602,14 +15601,14 @@ the GObject Introspection bindings to libnotify for non-GTK applications.")
(define-public python-beautifulsoup4
(package
(name "python-beautifulsoup4")
(version "4.13.4")
(version "4.13.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "beautifulsoup4" version))
(sha256
(base32
"15bi8fl51aibdz33h3j1191n5l0c4r3k4hpjvbmyysmfrvhw9cyv"))))
"159niwk99m9lbcxb9sl6jfqy9mb39bss4l1lwcypq3lkh89i6w2y"))))
(build-system pyproject-build-system)
(native-inputs
(list python-hatchling
@ -17559,16 +17558,14 @@ number of lines in the contained files easily.")
(hidden-package
(package
(name "python-fonttools-minimal")
(version "4.39.3")
(version "4.59.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "fonttools" version ".zip"))
(uri (pypi-uri "fonttools" version ".tar.gz"))
(sha256
(base32
"1msibi5cmi5znykkg66dq7xshl07lkqjxhrz5hcipqvlggsvjd4j"))))
"08pgq9nrj3r81gzb6gbf5mcak0xyqrj26cw0rc5za4v1n14hfb77"))))
(build-system python-build-system)
(native-inputs
(list unzip))
(arguments '(#:tests? #f))
(home-page "https://github.com/fonttools/fonttools")
(synopsis "Tools to manipulate font files")
@ -17595,14 +17592,17 @@ from an XML-based format.")
(when tests?
(invoke "pytest" "-vv"
"-k"
;; XXX: These tests need .trm files that are
;; not shipped with the PyPI release.
;; XXX: These tests need data files that are not
;; shipped with the PyPI release.
(format #f "not ~a"
(string-join
'("test_read_fontdimens_mathsy"
'("test_cli_vtp"
"test_group_order"
"test_read_fontdimens_mathsy"
"test_read_fontdimens_mathex"
"test_read_fontdimens_vanilla"
"test_read_boundary_char"
"test_reading_supplement_encoding"
"fontTools.tfmLib"
;; The MtiTest tests fail for unknown
;; reasons (see:
@ -17616,7 +17616,7 @@ from an XML-based format.")
(propagated-inputs
(list python-brotli
python-fs
python-lxml-4.9
python-lxml
python-lz4
python-scipy
python-unicodedata2
@ -21028,13 +21028,13 @@ expression.")
(define-public python-unicodedata2
(package
(name "python-unicodedata2")
(version "15.0.0")
(version "16.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "unicodedata2" version))
(sha256
(base32 "0bcgls7m2zndpd8whgznnd5908jbsa50si2bh88wsn0agcznhv7d"))))
(base32 "1z3llixb4cd6cc6nmyps5vv2sss14n3x6dzcc65xg75mj9jqsj05"))))
(build-system python-build-system)
(home-page "https://github.com/fonttools/unicodedata2")
(synopsis "Python unicodedata backport")
@ -35541,7 +35541,7 @@ restores the original state after the string is printed.")
(native-inputs
(list python-pytest))
(inputs
(list sane-backends))
(list sane))
(home-page "https://github.com/python-pillow/Sane")
(synopsis "Python interface to the SANE scanner")
(description "This package provides Python interface to the SANE scanner

View file

@ -2117,7 +2117,7 @@ Vulkan, OpenGL and other main graphic APIs.")
vulkan-headers))
(inputs
(list alsa-lib
ffmpeg
ffmpeg-6
glib
libxkbcommon
libxrandr
@ -4144,7 +4144,7 @@ linux/libcurl_wrapper.h"
curl
dbus
eudev
ffmpeg
ffmpeg-6
fontconfig
fxdiv
harfbuzz
@ -5940,6 +5940,35 @@ simple editor for binary data, just like @code{QPlainTextEdit} is for text
data.")
(license license:lgpl2.1)))
(define-public qhotkey
(package
(name "qhotkey")
(version "1.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Skycoder42/QHotkey")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0glzh4l532xk4v9mphsdf96v1557pyvg5al3ha0vr3244bfh9hcf"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no tests
#:configure-flags
#~(list "-DQT_DEFAULT_MAJOR_VERSION=6"
"-DBUILD_SHARED_LIBS=ON"
"-DQHOTKEY_EXAMPLES=ON")))
(inputs (list libx11 qtbase))
(home-page "https://github.com/Skycoder42/QHotkey")
(synopsis "Global shortcut key for Qt desktop applications")
(description
"This package provides @code{QHotKey} class that can be used to create
hotkeys/global shortcuts, aka shortcuts that work everywhere, independent of
the application state.")
(license license:bsd-3)))
(define-public qthttpserver
(package
(name "qthttpserver")

View file

@ -192,6 +192,7 @@ of parts of the Windows API.")
(search-patches "freerdp-3.16.0-rpath.patch"))))
(inputs
(modify-inputs (package-inputs freerdp)
(replace "ffmpeg" ffmpeg)
(prepend fuse icu4c mit-krb5 sdl3 sdl3-gfx sdl3-ttf)))
(arguments
(list #:build-type "Release"
@ -252,8 +253,7 @@ of parts of the Windows API.")
linux-pam
openssl
pixman
python
python-libxml2))
python))
(native-inputs
(append
(list bison

View file

@ -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))

View file

@ -19903,6 +19903,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)))

View file

@ -42,18 +42,20 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages xml)
#:use-module (guix build-system gnu)
#:use-module (guix deprecation)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module ((guix licenses)
#:prefix license:)
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix utils))
(define-public sane-airscan
(package
(name "sane-airscan")
(version "0.99.27")
(version "0.99.36")
(source
(origin
(method git-fetch)
@ -62,7 +64,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1syxsih1kdnz9slsg5a92bqnllagm4cybqk4n2y6mbkqn6h0zlnv"))))
(base32 "1dh7rq1g120gqhkr7ac3p7yizm330dj3xqrrg08dff7ra1jx955y"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
@ -78,8 +80,9 @@
gnutls
libjpeg-turbo
libpng
libtiff
libxml2
sane-backends))
sane))
(home-page "https://github.com/alexpevzner/sane-airscan")
(synopsis "SANE backend for eSCL (AirScan) and WSD document scanners")
(description ; no @acronym{eSCL} because the meaning isn't officially known
@ -103,10 +106,11 @@ both WSD and eSCL.")
(license (list license:gpl2+ ; the combined work
license:expat)))) ; http_parser.[ch]
(define-public sane-backends-minimal
(define-deprecated/public-alias sane-backends-minimal sane)
(define-public sane
(package
(name "sane-backends-minimal")
(version "1.3.1")
(name "sane")
(version "1.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -114,7 +118,9 @@ both WSD and eSCL.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1fb6shx9bz0svcyasmyqs93rbbwq7kzg6l0h1zh3kjvcwhchyv72"))
(base32 "09hcqrli127amdxjlj6xd9lvc0rhlhhm8vxrnldbd8c2mxss7dbv"))
(patches (search-patches
"sane-look-for-plugins-in-SANE_BACKEND_LIB_PATH.patch"))
(modules '((guix build utils)))
(snippet
;; Generated HTML files and udev rules normally embed a
@ -186,6 +192,11 @@ both WSD and eSCL.")
(string-append out
"/lib/udev/rules.d/"
"60-libsane.rules")))))
(add-after 'install 'remove-dll.conf
(lambda _
;; dll.conf lists enabled backends, so it should be removed as
;; there are none in this package
(delete-file (string-append %output "/etc/sane.d/dll.conf"))))
(add-after 'install 'make-reproducible
;; XXX Work around an old bug <https://issues.guix.gnu.org/26247>.
;; Then work around "Throw to key `decoding-error' ..." by using sed.
@ -197,6 +208,14 @@ both WSD and eSCL.")
(invoke "sed" "-i" "/^PO-Revision-Date:/d" file))
(list "en@boldquot/LC_MESSAGES/sane-backends.mo"
"en@quot/LC_MESSAGES/sane-backends.mo")))))))))
(native-search-paths
(list
(search-path-specification
(variable "SANE_CONFIG_DIR")
(files '("etc/sane.d")))
(search-path-specification
(variable "SANE_BACKEND_LIB_PATH")
(files '("lib/sane")))))
(home-page "http://www.sane-project.org")
(synopsis
"Raster image scanner library and drivers, without scanner support")
@ -206,20 +225,16 @@ hand-held scanner, video- and still-cameras, frame-grabbers, etc.). The
package contains the library, but no drivers.")
(license license:gpl2+))) ; plus linking exception
;; This variant links in the hpaio backend provided by hplip, which adds
;; support for HP scanners whose backends are not maintained by the SANE
;; project, and builds all of those backends.
(define-public sane-backends
(package/inherit sane-backends-minimal
(package/inherit sane
(name "sane-backends")
(inputs
`(("hplip" ,(@ (gnu packages cups) hplip))
("libjpeg" ,libjpeg-turbo) ; for pixma/epsonds/other back ends
`(("libjpeg" ,libjpeg-turbo) ; for pixma/epsonds/other back ends
("libpng" ,libpng) ; support scanimage --format=png
("libxml2" ,libxml2) ; for pixma back end
,@(package-inputs sane-backends-minimal)))
,@(package-inputs sane)))
(arguments
(substitute-keyword-arguments (package-arguments sane-backends-minimal)
(substitute-keyword-arguments (package-arguments sane)
((#:phases phases)
`(modify-phases ,phases
(delete 'disable-backends)
@ -229,22 +244,6 @@ package contains the library, but no drivers.")
;; <https://bugs.gnu.org/39449>
(substitute* "testsuite/backend/genesys/Makefile.in"
((" genesys_unit_tests\\$\\(EXEEXT\\)") ""))
#t))
(add-after 'unpack 'add-backends
(lambda _
(substitute* "backend/dll.conf.in"
(("hp5590" all) (format #f "~a~%~a" all "hpaio")))
#t))
(add-after 'install 'install-hpaio
(lambda* (#:key inputs outputs #:allow-other-keys)
(define hplip (string-append (assoc-ref inputs "hplip")
"/lib/sane"))
(define out (string-append (assoc-ref outputs "out")
"/lib/sane"))
(for-each
(lambda (file)
(symlink file (string-append out "/" (basename file))))
(find-files hplip))
#t))))))
(synopsis
"Raster image scanner library and drivers, with scanner support")
@ -288,7 +287,7 @@ package contains the library and drivers.")))
"/lib/udev/rules.d")))))))
(inputs (list boost
eudev
sane-backends-minimal
sane
libusb
libjpeg-turbo
imagemagick
@ -350,11 +349,7 @@ standard.")
(native-inputs
(list pkg-config))
(inputs
`(("dbus" ,dbus)
("libconfuse" ,libconfuse)
("sane-backends" ,sane-backends)
("udev" ,eudev)
("zlib" ,zlib)))
(list dbus libconfuse sane eudev zlib))
(home-page "https://scanbd.sourceforge.io")
(synopsis "Configurable scanner button monitor")
(description "Scanbd stands for scanner button daemon. It regularly polls
@ -435,7 +430,7 @@ provided the driver also exposes the buttons.")
lcms
libjpeg-turbo
libtiff
sane-backends
sane
xdg-utils)) ;to open the manual from the Help menu
(home-page "https://gitlab.com/sane-project/frontend/xsane")
(synopsis "Featureful graphical interface for document and image scanners")

View file

@ -267,7 +267,7 @@ a custom raw video format with a simple container.")
(string-append apps "/dwm.desktop")
#:name "dwm"
#:generic-name #$synopsis
#:exec (string-append #$output "/bin/dwm %U")
#:exec (string-append #$output "/bin/dwm")
#:comment
`(("en" ,#$synopsis)
(#f ,#$synopsis)))))))))

View file

@ -3,6 +3,7 @@
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,6 +25,8 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages mail)
#:use-module (gnu packages scheme)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix download)
@ -33,6 +36,31 @@
#:use-module (guix packages)
#:use-module (guix utils))
(define-public faber
(package
(name "faber")
(version "0.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Junker/faber")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "17xjg92vwg7n06lx4xbsnd7wvsgqcw8h10ha5365rsfs49bd3cyf"))))
(inputs (list gauche))
(build-system copy-build-system)
(arguments
'(#:install-plan '(("faber" "bin/"))))
(synopsis "Task runner with power of Scheme")
(description "Faber is a CLI task runner designed to leverage the power and
flexibility of Gauche Scheme.
Unlike other build systems that rely on custom formats, Faber uses Gauche
Scheme, allowing you to write build scripts using familiar Scheme syntax.")
(home-page "https://github.com/Junker/faber")
(license license:expat)))
(define-public run
(package
(name "run")

View file

@ -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

View file

@ -15,7 +15,7 @@
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020, 2023, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2021, 2023, 2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020, 2021, 2023-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Solene Rapenne <solene@perso.pw>
;;; Copyright © 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
@ -971,6 +971,8 @@ correct OpenSSL include path. It is intended for use in your
number generator")
(license license:perl-license)))
;;; TODO: No longer maintained, migrate dependents to current mbedtls v3
;;; (which is the new LTS).
(define-public mbedtls-lts
(package
(name "mbedtls")
@ -1011,25 +1013,21 @@ coding footprint.")
(package
(inherit mbedtls-lts)
(name "mbedtls")
(version "3.5.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ARMmbed/mbedtls")
(commit (string-append "mbedtls-" version))))
(file-name (git-file-name name version))
(version "3.6.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/Mbed-TLS/mbedtls/releases"
"/download/mbedtls-" version
"/mbedtls-" version ".tar.bz2"))
(sha256
(base32
"1wsjrx98h74q0q4zqwsghiqvjz4aqgvigpxb9f8xjw0w4sfsclcm"))))))
(define-public mbedtls-apache
(deprecated-package "mbedtls-apache" mbedtls-lts))
"0441cwfh3z0xnik0wsafih599s4kzyc8pnrh7s6gjg2rdj5b2dgc"))))))
;; The Hiawatha Web server requires some specific features to be enabled.
(define-public mbedtls-for-hiawatha
(hidden-package
(package
(inherit mbedtls)
(package/inherit mbedtls
(arguments
(substitute-keyword-arguments (package-arguments mbedtls)
((#:phases phases)

View file

@ -240,7 +240,7 @@ Browser.")
libxcomposite
libxt
libffi
ffmpeg-7
ffmpeg
libvpx
icu4c
pixman

View file

@ -75,6 +75,7 @@
;;; Copyright © 2025 VnPower <vnpower@loang.net>
;;; Copyright © 2025 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2025 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2025 John Kehayias <john@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1528,7 +1529,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)
@ -1537,7 +1538,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
@ -1645,17 +1646,17 @@ These tools require a supported graphics chip, driver, and VA-API back end to
operate properly.")
(license license:expat)))
(define-public ffmpeg-7
(define-public ffmpeg
(package
(name "ffmpeg")
(version "7.0.2")
(version "8.0")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
"12dkv17mrsdqrm70c30azjw7qi1lfxca7xisw81x6flacddm2il6"))))
"13kvs9rh5mp21gx64hdj0jlnz6q5c6spik8kh5q7fk6cnv61yxdj"))))
(outputs '("out" "debug"))
(build-system gnu-build-system)
(inputs
@ -1675,6 +1676,8 @@ operate properly.")
libcaca
libcdio-paranoia
libdrm
libgme
libplacebo
libtheora
libva
libvdpau
@ -1686,13 +1689,16 @@ operate properly.")
mesa
openal
pulseaudio
shaderc
sdl2
soxr
speex
spirv-tools
srt
svt-av1
twolame
vidstab
vulkan-loader
x265
xvid
zlib)))
@ -1702,7 +1708,8 @@ operate properly.")
pkg-config
texinfo
speex
yasm))
vulkan-headers
nasm))
(arguments
(list
#:test-target "fate"
@ -1717,7 +1724,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]
@ -1770,12 +1776,15 @@ operate properly.")
"--enable-libcdio"
"--enable-libdav1d"
"--enable-libfreetype"
"--enable-libgme"
"--enable-libmp3lame"
"--enable-libopus"
"--enable-libplacebo"
"--enable-libpulse"
#$@(if (this-package-input "rav1e")
'("--enable-librav1e")
'())
"--enable-libshaderc"
"--enable-libsoxr"
"--enable-libspeex"
"--enable-libsrt"
@ -1793,6 +1802,7 @@ operate properly.")
"--enable-opengl"
"--enable-libdrm"
"--enable-vaapi"
"--enable-vulkan"
"--enable-runtime-cpudetect"
@ -1837,7 +1847,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
@ -1862,23 +1872,23 @@ convert and stream audio and video. It includes the libavcodec
audio/video codec library.")
(license license:gpl2+)))
(define-public ffmpeg
(define-public ffmpeg-6
(package
(inherit ffmpeg-7)
(version "6.1.1")
(inherit ffmpeg)
(version "6.1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
"0s7r2qv8gh2a3w568n9xxgcz0q8j5ww1jdsci1hm9f4l1yqg9146"))
"0f2fr8ywchhlkdff88lr4d4vscqzsi1ndjh3r5jwbkayf94lcqiv"))
(patches
(search-patches
"ffmpeg-add-av_stream_get_first_dts-for-chromium.patch"))))
(arguments
(if (target-x86-32?)
(substitute-keyword-arguments (package-arguments ffmpeg-7)
(substitute-keyword-arguments (package-arguments ffmpeg)
((#:phases phases)
#~(modify-phases #$phases
(add-before 'configure 'relax-gcc-14-strictness
@ -1886,8 +1896,9 @@ audio/video codec library.")
(setenv
"CFLAGS"
(string-append "-g -O2"
" -Wno-error=incompatible-pointer-types")))))))
(package-arguments ffmpeg-7)))))
" -Wno-error=incompatible-pointer-types"
" -Wno-error=int-conversion")))))))
(package-arguments ffmpeg)))))
(define-public ffmpeg-5
(package
@ -1901,16 +1912,22 @@ audio/video codec library.")
(base32
"1g8116rp4fgq82br8lclb2dmw3fvyh2zkzhnngm7z97pg1i0dypl"))))
(arguments
(if (target-x86-32?)
(substitute-keyword-arguments (package-arguments ffmpeg)
((#:modules modules %default-gnu-modules)
`((srfi srfi-1) ,@modules))
((#:phases phases)
(if (target-x86-32?)
#~(modify-phases #$phases
(replace 'bypass-openal-check
(lambda _
(substitute* "configure"
(("die \"ERROR: openal not found\"")
"true")))))))
(package-arguments ffmpeg)))))
"true")))))
phases))
((#:configure-flags flags ''())
#~(fold delete #$flags '("--enable-libplacebo")))))
(inputs (modify-inputs (package-inputs ffmpeg)
(delete "libplacebo")))))
(define-public ffmpeg-4
(package
@ -1923,12 +1940,13 @@ audio/video codec library.")
(sha256
(base32
"01xb2vj4n52fv2y56n5ifirgzlg16qbgfg98f6ifbbhm6l6lwlgr"))))
(inputs (modify-inputs (package-inputs ffmpeg)
(inputs (modify-inputs (package-inputs ffmpeg-5)
(replace "sdl2" sdl2-2.0)))
(arguments
(substitute-keyword-arguments (package-arguments ffmpeg-5)
((#:configure-flags flags ''())
#~(cons "--enable-avresample" #$flags))))))
#~(cons "--enable-avresample"
(fold delete #$flags '("--enable-libshaderc"))))))))
(define-public ffmpeg-for-stepmania
(hidden-package
@ -1968,34 +1986,9 @@ audio/video codec library.")
" -Wno-error=int-conversion ")))))))))
(inputs '()))))
(define-public ffmpeg-for-friction
(package
(inherit ffmpeg-4)
(version "4.2.10")
(source (origin
(method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz"))
(sha256
(base32
"01jc8ygbazk37wbb7qj24zi9sbfrxrvzhyk527bbas19gxpdrk64"))))
(arguments
(substitute-keyword-arguments (package-arguments ffmpeg-4)
((#:modules modules %default-gnu-modules)
`((srfi srfi-1) ,@modules))
((#:configure-flags flags ''())
#~(fold delete #$flags
'("--enable-avresample"
"--enable-libaom"
"--enable-libdav1d"
"--enable-librav1e"
"--enable-libsrt"
"--enable-libsvtav1")))))
(inputs (modify-inputs (package-inputs ffmpeg-4)
(delete "dav1d" "libaom" "rav1e" "srt")))))
;;; Custom ffmpeg package used by Jami, which incorporates custom patches.
(define-public ffmpeg-jami
(let ((ffmpeg ffmpeg-6))
(package
(inherit ffmpeg)
(name "ffmpeg-jami")
@ -2259,7 +2252,7 @@ audio/video codec library.")
"--enable-encoder=hevc_vaapi")
'())))))
(inputs (modify-inputs (package-inputs ffmpeg)
(append pipewire)))))
(append pipewire))))))
(define-public ffmpegthumbnailer
(package
@ -2449,7 +2442,7 @@ media, 2D/3D graphics and ECMAScript.")
dav1d
dbus
eudev
ffmpeg
ffmpeg-6
flac
fontconfig
freetype
@ -2686,7 +2679,10 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0w0qk61ll0mddbkiwavqfx048sacyvp6fwglms58ypw869rh7iy7"))))
(base32 "0w0qk61ll0mddbkiwavqfx048sacyvp6fwglms58ypw869rh7iy7"))
(patches
(search-patches
"mpv-0.40.0-fix-ffmpeg-8.0.patch"))))
(build-system meson-build-system)
(arguments
(list
@ -2995,7 +2991,7 @@ To load this plugin, specify the following option when starting mpv:
(file-name (git-file-name name version))))
(build-system meson-build-system)
(inputs
(list mpv libdisplay-info wlroots))
(list mpv libdisplay-info))
(native-inputs
(list pkg-config cmake-minimal))
(home-page "https://github.com/GhostNaN/mpvpaper")

View file

@ -1516,7 +1516,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
@ -1629,14 +1630,14 @@ It started as a side project of LXC but can be used by any run-time.")
(define-public libvirt
(package
(name "libvirt")
(version "11.0.0")
(version "11.5.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://libvirt.org/sources/libvirt-"
version ".tar.xz"))
(sha256
(base32 "0vl0lgzw3x4fkghhw7nfxk8fxj3bbn9f17y0hg7miba283zpd881"))
(base32 "08r4sxchhh639a8h346795971zz615j86v9z9vxf5q9q0pbbjqrb"))
(patches (search-patches "libvirt-add-install-prefix.patch"
"libvirt-respect-modules-path.patch"))))
(build-system meson-build-system)
@ -1775,7 +1776,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
@ -1793,14 +1794,14 @@ three libraries:
(define-public python-libvirt
(package
(name "python-libvirt")
(version "11.0.0")
(version "11.5.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://libvirt.org/sources/python/libvirt-python-"
version ".tar.gz"))
(sha256
(base32 "1y26104zgylz0v9d6xc0bm6m13is94shn9dlhjycaf347jjjbs6f"))))
(base32 "08xcnzmahmb72rv9cw8dxwnjmrdgmm5j4bbxpwsnhll9qsgdiak9"))))
(build-system pyproject-build-system)
(inputs
(list libvirt))
@ -1901,8 +1902,8 @@ virtualization library.")
libosinfo
libvirt
libvirt-glib
libxml2
python-minimal
python-libxml2
python-libvirt
python-pycairo
python-pygobject

View file

@ -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

View file

@ -9,6 +9,8 @@
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -44,6 +46,7 @@
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gl)
#:use-module (gnu packages libffi)
#:use-module (gnu packages llvm)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@ -53,7 +56,7 @@
(define-public spirv-headers
(package
(name "spirv-headers")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -62,7 +65,7 @@
(commit (string-append "vulkan-sdk-" version))))
(sha256
(base32
"15l35w60sbw1i3a48057hvpvldf0lrlfmkz73bp456g2jn5vln23"))
"11nsfr6z11dx6ccyi9anz2iycxr9i06zl8dk4pdllf3dvk5wq61d"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -85,7 +88,7 @@ and for the GLSL.std.450 extended instruction set.
(define-public spirv-tools
(package
(name "spirv-tools")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -93,11 +96,13 @@ and for the GLSL.std.450 extended instruction set.
(url "https://github.com/KhronosGroup/SPIRV-Tools")
(commit (string-append "vulkan-sdk-" version))))
(sha256
(base32 "1ykrsd3fl8sx9sq8pc551swacqnl0xwv3p0l1ppdpw2h2mvz8syr"))
(base32 "015xymrzch87f3xkzx9rvlglqp39zx4vphjb2dkl5w6qcpz5s1y8"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_SHARED_LIBS=ON"
(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"
@ -105,7 +110,7 @@ and for the GLSL.std.450 extended instruction set.
"-DSPIRV-Headers_SOURCE_DIR="
(assoc-ref %build-inputs "spirv-headers")))))
(inputs (list spirv-headers))
(native-inputs (list pkg-config python))
(native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/KhronosGroup/SPIRV-Tools")
(synopsis "API and commands for processing SPIR-V modules")
(description
@ -117,7 +122,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
(define-public spirv-cross
(package
(name "spirv-cross")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -125,18 +130,19 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
(url "https://github.com/KhronosGroup/SPIRV-Cross")
(commit (string-append "vulkan-sdk-" version))))
(sha256
(base32 "1sckwqz67mh48zypgr1r9x101mcq1dlkh8sxi341ynrxzjk8rm3j"))
(base32 "13fci6z74bxm8pbb3plchx31r04yzb4g11dbzcw3337dsgdllqma"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(;; Disable tests for now due to upstream issue hit when running
(list
;; Disable tests for now due to upstream issue hit when running
;; update-reference-shaders phase:
;; <https://github.com/KhronosGroup/SPIRV-Tools/issues/5980>.
#:tests? #f
#:configure-flags
(list "-DSPIRV_CROSS_SHARED=YES")
#~(list "-DSPIRV_CROSS_SHARED=YES")
#:phases
(modify-phases %standard-phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests-to-find-deps
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "CMakeLists.txt"
@ -152,7 +158,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
(invoke "./update_test_shaders.sh"))))))))
(inputs
(list glslang spirv-headers spirv-tools))
(native-inputs (list python))
(native-inputs (list python-minimal))
(home-page "https://github.com/KhronosGroup/SPIRV-Cross")
(synopsis "Parser for and converter of SPIR-V to other shader languages")
(description
@ -164,7 +170,7 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
(define-public spirv-llvm-translator
(package
(name "spirv-llvm-translator")
(version "18.1.0")
(version "18.1.10")
(source
(origin
(method git-fetch)
@ -173,7 +179,7 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yfz02mlnf4ffn67g2ms0w8f7jgdsn438w2dbxd5mvcf5dk2x27b"))))
(base32 "11gmb1kw6j90hwcf6wxjz4pki653lyd8v8kphk7jq67gvw8dkiwy"))))
(build-system cmake-build-system)
(arguments
;; The test suite is known to fail on several architectures:
@ -201,7 +207,14 @@ SPIR-V, aiming to emit GLSL or MSL that looks like human-written code.")
(apply (assoc-ref gnu:%standard-phases 'check)
#:test-target "test" args))))))
(inputs (list llvm-18))
(native-inputs (list clang-18 llvm-18 python-lit spirv-headers))
(native-inputs
(list
clang-18
libffi
llvm-18
pkg-config
python-lit
spirv-headers))
(home-page "https://github.com/KhronosGroup/SPIRV-LLVM-Translator")
(synopsis "Bi-directional translation between SPIR-V and LLVM IR")
(description
@ -212,7 +225,7 @@ translation between LLVM IR and SPIR-V.")
(define-public glslang
(package
(name "glslang")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -221,17 +234,20 @@ translation between LLVM IR and SPIR-V.")
(commit (string-append "vulkan-sdk-" version))))
(sha256
(base32
"0kzzjh2dxzkznp75jk9sl4fjjgdy5s6xr8vha9av6cvi3jxm2i8y"))
"1b0zsrv12b34q0wp9g85x11kpd5kjvx4lbn7xv8b4szfpwdkxxxh"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"
(list
#:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON"
"-DALLOW_EXTERNAL_SPIRV_TOOLS=ON"
,@(if (target-riscv64?)
#$@(if (target-riscv64?)
`("-DCMAKE_EXE_LINKER_FLAGS=-latomic")
'()))
#:phases (modify-phases %standard-phases
,@(if (target-ppc32?)
#:phases
#~(modify-phases %standard-phases
#$@(if (target-ppc32?)
`((add-after 'unpack 'skip-failing-test
(lambda _
;; TODO: Figure out why this test fails.
@ -250,7 +266,7 @@ translation between LLVM IR and SPIR-V.")
"--output-on-failure")))))))
(inputs (list spirv-tools))
(native-inputs
(list pkg-config python))
(list pkg-config python-minimal))
(home-page "https://github.com/KhronosGroup/glslang")
(synopsis "OpenGL and OpenGL ES shader front end and validator")
(description
@ -317,7 +333,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
(define-public vulkan-headers/no-loader
(package
(name "vulkan-headers")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -327,7 +343,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
(file-name (git-file-name name version))
(sha256
(base32
"0ncj4gqb5zmkgmd205frrq8rxxdqlissqpj2fq3wxkdbdyx7pwid"))))
"1kamn5hw5lpw4yxyri4mlrryzhn33bnnrqby0yxla45z5f5f6fb3"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; No tests.
@ -361,7 +377,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
(define-public vulkan-loader
(package
(name "vulkan-loader")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -371,7 +387,7 @@ Enhanced Subpixel Morphological Anti-Aliasing
(file-name (git-file-name name version))
(sha256
(base32
"1y6wqc8adzg7ndmbr95nzhcxf93qsfndfdnsym5pkbjfx454151d"))))
"0fbpypznznvwkqgf2zw85xdpbiq92j95xyldhnjk94lia6bs4klb"))))
(build-system cmake-build-system)
(arguments
(list
@ -387,7 +403,8 @@ Enhanced Subpixel Morphological Anti-Aliasing
%build-inputs "include/vulkan"))))
#$@(if (%current-target-system)
#~("-DBUILD_TESTS=OFF" "-DUSE_GAS=OFF"
(string-append "-DPKG_CONFIG_EXECUTABLE="
(string-append
"-DPKG_CONFIG_EXECUTABLE="
(search-input-file
%build-inputs
(string-append "bin/" #$(pkg-config-for-target)))))
@ -405,7 +422,8 @@ Enhanced Subpixel Morphological Anti-Aliasing
(add-after 'unpack 'use-system-googletest
(lambda _
(substitute* "tests/CMakeLists.txt"
(((string-append "message\\(FATAL_ERROR \"Could not "
(((string-append
"message\\(FATAL_ERROR \"Could not "
"find googletest directory. See BUILD.md\"\\)"))
"find_package(GTest REQUIRED)"))
;; Use the namespaced variable.
@ -440,32 +458,38 @@ and the ICD.")
license:bsd-3))))
(define-public vulkan-tools
;; Required to fix an issue. See:
;; https://github.com/KhronosGroup/Vulkan-Tools/issues/1130
(let ((commit "105d6c1fede00c3a9055e5a531ebf3d99bac406e")
(revision "1"))
(package
(name "vulkan-tools")
(version "1.4.309.0")
(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 (string-append "vulkan-sdk-" version))))
(commit commit)))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet #~(substitute* "tests/icd/mock_icd_tests.cpp"
(snippet
#~(substitute* "tests/icd/mock_icd_tests.cpp"
;; Disable driver info test since it relies on git branch info
(("ASSERT_EQ\\(std::string\\(driver_properties\\.driverInfo\\)")
"// ASSERT_EQ(std::string(driver_properties.driverInfo)")))
(sha256
(base32
"0ywvvkra29y2cvw8i9laf4skn6cl7phrwshcc7z9dljb3il87cym"))))
"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
`(#:configure-flags (list "-DBUILD_TESTS=ON")
#:phases (modify-phases %standard-phases
(list
#:configure-flags #~(list "-DBUILD_TESTS=ON")
#:phases #~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
@ -477,13 +501,13 @@ and the ICD.")
"Vulkan-Tools provides tools and utilities that can assist development by
enabling developers to verify their applications correct use of the Vulkan
API.")
(license (list license:asl2.0)))) ;LICENSE.txt
(license (list license:asl2.0))))) ;LICENSE.txt
(define-public shaderc
(package
(name "shaderc")
;; shaderc doesn't follow the versioning scheme of vulkan sdk
(version "2025.1")
(version "2025.3")
(source
(origin
(method git-fetch)
@ -493,13 +517,15 @@ 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
(list
#:tests? #f ; We don't build the tests, see below.
;; FIXME: Skip most of the tests, because enabling system gtest breaks
;; the build: <https://github.com/google/shaderc/issues/470>.
#:configure-flags
(list "-DSHADERC_SKIP_TESTS=ON"
#~(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"
@ -507,19 +533,18 @@ API.")
"-DPYTHON_EXECUTABLE=python3"
;; Note: despite the name, this just specifies the headers.
(string-append "-Dglslang_SOURCE_DIR="
(assoc-ref %build-inputs "glslang") "/include/glslang"))
#$(this-package-input "glslang")
"/include/glslang"))
#:phases
(modify-phases %standard-phases
#~(modify-phases %standard-phases
(add-after 'unpack 'do-not-look-for-bundled-sources
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(third_party\\)")
""))
(substitute* "glslc/test/CMakeLists.txt"
(("\\$<TARGET_FILE:spirv-dis>")
(which "spirv-dis")))
;; Do not attempt to use git to encode version information.
(substitute* "glslc/CMakeLists.txt"
(("add_dependencies\\(glslc_exe build-version\\)")
@ -527,10 +552,9 @@ API.")
(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)))))
#$version
#$(package-version spirv-tools)
#$(package-version glslang)))))))))
(inputs
(list glslang spirv-headers spirv-tools))
(native-inputs
@ -558,22 +582,23 @@ shader compilation.")
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-spirv-tools")
#:phases (modify-phases %standard-phases
(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"))
#t)))))
"2u")))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(list autoconf
automake
gettext-minimal
libtool
pkg-config))
(inputs
(list libx11
libxcb
@ -593,7 +618,7 @@ shader compilation.")
(define-public vulkan-validationlayers
(package
(name "vulkan-validationlayers")
(version "1.4.309.0")
(version "1.4.321.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -608,7 +633,7 @@ shader compilation.")
"")))
(sha256
(base32
"1dvgbgfxcp3ypy06j5m561j1gag0hk40zqd477cdv1kizv6i7nsk"))))
"1lmkcgz80386304s6kr4fi825r5004305fhvfc7gmsqdih0bqcv9"))))
(build-system cmake-build-system)
(inputs (list glslang
libxrandr
@ -619,20 +644,24 @@ 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
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'set-layer-path-in-manifest
(lambda _
(let ((manifest (string-append #$output
(let ((manifest
(string-append #$output
"/share/vulkan/explicit_layer.d"
"/VkLayer_khronos_validation.json")))
(substitute* manifest
(("\"libVkLayer_khronos_validation.so\"")
(string-append "\"" #$output
(string-append
"\"" #$output
"/lib/libVkLayer_khronos_validation.so\""))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
@ -649,9 +678,9 @@ shader compilation.")
(home-page "https://github.com/KhronosGroup/Vulkan-ValidationLayers")
(synopsis "Khronos official validation layers for Vulkan")
(description
"Vulkan-ValidationLayers provides the Khronos official validation layers that
can assist development by enabling developers to verify their applications correctly
use the Vulkan API.")
"Vulkan-ValidationLayers provides the Khronos official validation layers
that can assist development by enabling developers to verify their
applications correctly use the Vulkan API.")
(license license:asl2.0)))
(define-public vulkan-volk
@ -696,7 +725,7 @@ skipping loader dispatch overhead.")
(define-public vulkan-memory-allocator
(package
(name "vulkan-memory-allocator")
(version "3.2.1")
(version "3.3.0")
(source
(origin
(method git-fetch)
@ -707,11 +736,9 @@ skipping loader dispatch overhead.")
(file-name (git-file-name name version))
(sha256
(base32
"0y8ccx080bqrgv71ggixxpl57vc5znq55rnvl4v4srfkjxhz6yiy"))))
"1qadyd9nir9ip176fsxvl91w60mnyvk07d5ihjlpqvl7rdbjmwac"))))
(build-system cmake-build-system)
(arguments
;; no test
`(#:tests? #f))
(arguments (list #:tests? #f)) ;no tests
(inputs (list vulkan-loader vulkan-headers))
(synopsis "Vulkan memory allocation library")
(description
@ -725,7 +752,7 @@ storage.")
(define-public vulkan-utility-libraries
(package
(name "vulkan-utility-libraries")
(version "1.4.309.0")
(version "1.4.321.0")
(source
(origin
(method git-fetch)
@ -733,7 +760,7 @@ storage.")
(url "https://github.com/KhronosGroup/Vulkan-Utility-Libraries")
(commit (string-append "vulkan-sdk-" version))))
(sha256
(base32 "1ihk95gjszk9yn3r6xvda83qp7f463m86srj6cq43z01sk2naxkr"))
(base32 "1xj860z596p2wgdfc5yr15q0hasz8p4ci6x0j1wim7jklp92g89i"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments

View file

@ -6,6 +6,7 @@
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -46,17 +47,14 @@
(define-public wget
(package
(replacement wget/fixed)
(name "wget")
(version "1.21.4")
(version "1.25.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/wget/wget-"
version ".tar.lz"))
(uri (string-append "mirror://gnu/wget/wget-" version ".tar.lz"))
(sha256
(base32
"1nabhxx3rg28h2scba2mlawzjyx3dw07j2kjn76cpvahbyd630rn"))))
(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")

View file

@ -185,7 +185,7 @@ integrate Windows applications into your desktop.")
libgphoto2
openldap
samba
sane-backends
sane
libpcap
libusb
libice

View file

@ -245,7 +245,7 @@ the leaves of a full binary tree.")
(native-inputs (list pkg-config scdoc
;; for wayland-scanner
wayland))
(inputs (list wayland wlroots libxkbcommon))
(inputs (list wayland wlroots-0.18 libxkbcommon))
(home-page "https://github.com/cage-kiosk/cage")
(synopsis "Wayland kiosk")
(description "This package provides a Wayland @dfn{kiosk}, which runs a
@ -430,7 +430,7 @@ loginctl commands (lock/unlock/before-sleep) and inhibit.")
hyprland-qtutils
hyprlang
hyprutils
libinput-minimal-next
libinput-minimal
libxcursor
libxkbcommon
mesa
@ -1612,7 +1612,7 @@ the XDG Autostart specification.")
tllist
scdoc))
(inputs
(list wlroots wayland fcft dbus libpng))
(list wayland fcft dbus libpng))
(home-page "https://codeberg.org/dnkl/fnott")
(synopsis "Keyboard driven and lightweight Wayland notification daemon")
(description "Fnott is a keyboard driven and lightweight notification daemon
@ -2049,7 +2049,7 @@ started automatically on the first call via D-Bus.")
(native-inputs
(list pkg-config))
(inputs
(list wlroots))
(list wlroots-0.18))
(home-page "https://codeberg.org/dwl/dwl")
(synopsis "Dynamic window manager for Wayland")
(description
@ -2244,7 +2244,7 @@ XDG-Output for wlclock to work.")
(define-public wlroots
(package
(name "wlroots")
(version "0.18.2")
(version "0.19.1")
(source
(origin
(method git-fetch)
@ -2253,7 +2253,7 @@ XDG-Output for wlclock to work.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1l1c4m8m1h8rl00y9yi6qjma5m3lhai9hqv5578q69yg2dcwraxw"))))
(base32 "1w3nlrvy7625jh4f0l923f7irywzfdashcw5hbf8jq9kpjhpm323"))))
(build-system meson-build-system)
(arguments
(list #:phases
@ -2302,6 +2302,24 @@ Wayland compositor")
modules for building a Wayland compositor.")
(license license:expat))) ; MIT license
;; Allow packages refering to stable wlroots version, because
;; wlroots updates are backward incompatible.
(define-public wlroots-0.19 wlroots)
(define-public wlroots-0.18
(package
(inherit wlroots)
(version "0.18.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/wlroots/wlroots")
(commit version)))
(file-name (git-file-name "wlroots" version))
(sha256
(base32 "1l1c4m8m1h8rl00y9yi6qjma5m3lhai9hqv5578q69yg2dcwraxw"))))))
(define-public wlroots-0.17
(package
(inherit wlroots)
@ -2450,7 +2468,7 @@ narrow the items to those matching the tokens in the input.")
pcre2
swaybg
wayland
wlroots))
wlroots-0.18))
(native-inputs
(cons* linux-pam mesa pkg-config scdoc wayland-protocols
(if (%current-target-system)
@ -2489,7 +2507,7 @@ narrow the items to those matching the tokens in the input.")
scenefx
swaybg
wayland
wlroots))
wlroots-0.18))
(home-page "https://github.com/WillPower3309/swayfx")
(synopsis "Sway Fork with extra options and effects")
(description
@ -3936,7 +3954,7 @@ read and write, and compatible with JSON.")
(define-public labwc
(package
(name "labwc")
(version "0.8.4")
(version "0.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3945,7 +3963,7 @@ read and write, and compatible with JSON.")
(file-name (git-file-name name version))
(sha256
(base32
"1wbza00y2xf2zn34q5c8g5k2dn2xjzbbqmsnjv6c90mh2bbk1q95"))))
"0p475vjn9gg314spf89di6i1l2lr9xx59mz4hq4shvbh64hr48pi"))))
(build-system meson-build-system)
(native-inputs
(list pkg-config gettext-minimal scdoc))
@ -3958,7 +3976,7 @@ read and write, and compatible with JSON.")
libxcb
libxml2
pango
wlroots))
wlroots-0.19))
(home-page "https://labwc.github.io")
(synopsis "Window-stacking compositor for Wayland")
(description
@ -4624,7 +4642,7 @@ battery efficient---polling is only done when absolutely necessary.")
(define-public wideriver
(package
(name "wideriver")
(version "1.2.0")
(version "1.3.1")
(source
(origin
(method git-fetch)
@ -4633,7 +4651,7 @@ battery efficient---polling is only done when absolutely necessary.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "16i0mzgxn32nrh5ajn0kb4xdwmsjg03amhasxhwyvspar5y4flhg"))))
(base32 "1ljl1finfajinvrj073dbwk9vm352jwr6rm9vn5fkrqi296s1n8x"))))
(build-system gnu-build-system)
(arguments
(list
@ -4644,7 +4662,7 @@ battery efficient---polling is only done when absolutely necessary.")
#:phases #~(modify-phases %standard-phases
(delete 'configure)))) ; no configure script
(native-inputs (list pkg-config cmocka))
(inputs (list wayland wayland-protocols wlroots))
(inputs (list wayland wayland-protocols))
(home-page "https://github.com/alex-courtis/wideriver")
(synopsis "A set of riverWM layouts")
(description
@ -4695,7 +4713,7 @@ configure input, and customize Wayfire plugins.")
mesa
libxkbcommon
libdrm
wlroots))
wlroots-0.18))
(home-page "https://github.com/wlrfx/scenefx")
(synopsis "Drop-in replacement for the wlroots scene API")
(description

View file

@ -53,7 +53,7 @@
;;; Copyright © 2021 ikasero <ahmed@ikasero.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021, 2025 jgart <jgart@dismail.de>
;;; Copyright © 2022, 2024 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022, 2024, 2025 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Derek Chuank <derekchuank@outlook.com>
;;; Copyright © 2022, 2023 Wamm K. D. <jaft.r@outlook.com>
@ -633,14 +633,16 @@ avoiding password prompts when X11 forwarding has already been setup.")
(define-public libxkbcommon
(package
(name "libxkbcommon")
(version "1.6.0")
(version "1.11.0")
(source (origin
(method url-fetch)
(uri (string-append "https://xkbcommon.org/download/libxkbcommon-"
version ".tar.xz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/xkbcommon/libxkbcommon")
(commit (string-append "xkbcommon-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0awwz5pg9x5bj0d7dpg4a7bd4gl6k55mlpxwb12534fkrpn19p0f"))))
"1swa6rf63c0wi0qq5r661g63yk2iwa9l66148078xkrwcf05sp91"))))
(outputs '("out" "doc"))
(build-system meson-build-system)
(inputs
@ -652,9 +654,16 @@ avoiding password prompts when X11 forwarding has already been setup.")
xkeyboard-config))
(native-inputs
(append
(list bison doxygen pkg-config python
(list bison
doxygen
pkg-config
python
;; wayland-scanner is required at build time.
wayland)
wayland
;; Xvfb for tests.
xorg-server-for-tests
;; xkbcomp for tests.
xkbcomp)
(if (%current-target-system)
(list pkg-config-for-build)
'())))
@ -666,7 +675,8 @@ avoiding password prompts when X11 forwarding has already been setup.")
%build-inputs "share/X11/xkb"))
(string-append "-Dx-locale-root="
(search-input-directory
%build-inputs "share/X11/locale")))
%build-inputs "share/X11/locale"))
"-Denable-docs=true")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'move-doc
@ -695,41 +705,6 @@ X11 (yet).")
"See 'COPYING' in the distribution."))
(properties '((cpe-name . "xkbcommon")))))
(define-public libxkbcommon-1.5
(package
(inherit libxkbcommon)
(version "1.5.0")
(source (origin
(inherit (package-source libxkbcommon))
(method url-fetch)
(uri (string-append "https://xkbcommon.org/download/libxkbcommon-"
version ".tar.xz"))
(sha256
(base32
"05z08rpa464x8myjxddhix7jp9jcmakd7xrybx4hz8dwpg2123sn"))))))
(define-public libxkbcommon-1.8
(package
(inherit libxkbcommon)
(version "1.8.1")
(source (origin
(inherit (package-source libxkbcommon))
(method git-fetch)
(uri (git-reference
(url "https://github.com/xkbcommon/libxkbcommon")
(commit (string-append "xkbcommon-" version))))
(file-name (git-file-name (package-name libxkbcommon) version))
(sha256
(base32
"0fz6mf99lyp7x6g6v33210hhpykbg32fjmckyvxfpd805cza0xrj"))))
(arguments
(substitute-keyword-arguments (package-arguments libxkbcommon)
((#:configure-flags flags #~(list))
#~(cons "-Denable-docs=true" #$flags))))
(native-inputs (modify-inputs (package-native-inputs libxkbcommon)
(append xorg-server ;; Xvfb for tests
xkbcomp))))) ;; xkbcomp for tests
(define-public libfakekey
(package
(name "libfakekey")
@ -902,31 +877,29 @@ typing tool (@code{wtype}, @code{xdotool}, etc.), or via standard output.")
(define-public pixman
(package
(name "pixman")
(version "0.42.2")
(version "0.46.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.cairographics.org/releases/pixman-"
version ".tar.gz"))
(sha256
(base32 "0pk298iqxqr64vk3z6nhjwr6vjg1971zfrjkqy5r9zd2mppq057a"))
(base32 "072rd8sd454rzybmxx90fdzvabzvx0pr57y745qfwnxxqgml976h"))
(patches (search-patches "pixman-CVE-2016-5296.patch"))))
(build-system gnu-build-system)
(build-system meson-build-system)
(arguments
`(#:configure-flags
(list "--disable-static"
"--enable-timers"
"--enable-gnuplot"
,@(if (target-arm32?)
`("--disable-arm-simd")
(list
#:configure-flags
#~(list "-Dtimers=true"
"-Dgnuplot=true"
#$@(if (target-arm32?)
'("-Darm-simd=false")
'()))))
(native-inputs (list pkg-config))
(inputs (list libpng zlib))
(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

View file

@ -37,6 +37,7 @@
;;; Copyright © 2024 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2024 gemmaro <gemmaro.dev@gmail.com>
;;; Copyright © 2025 Antoine Côté <antoine.cote@posteo.net>
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -188,11 +189,10 @@ binary extension of XML for the purpose of storing and manipulating data in a
hierarchical form with variable field lengths.")
(license license:lgpl2.1)))
;; Note: Remember to check python-libxml2 when updating this package.
(define-public libxml2
(package
(name "libxml2")
(version "2.9.14")
(version "2.14.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libxml2/"
@ -200,7 +200,8 @@ hierarchical form with variable field lengths.")
version ".tar.xz"))
(sha256
(base32
"1vnzk33wfms348lgz9pvkq9li7jm44pvm73lbr3w1khwgljlmmv0"))))
"0fi0jysncjpvhvp29qcx3bydndapwphgkx7ial5kzf7ymyh5ir3w"))
(patches (search-patches "python-libxml2-utf8.patch"))))
(build-system gnu-build-system)
(outputs '("out" "static" "doc"))
(arguments
@ -218,6 +219,13 @@ hierarchical form with variable field lengths.")
(string-append "/bin/" file)) "."))
'("config.guess" "config.sub")))))
#~())
(add-before 'configure 'configure-python
(lambda _
(substitute* "python/setup.py.in"
;; The build system ignores C_INCLUDE_PATH & co, so
;; provide the absolute directory name.
(("/opt/include")
(string-append #$output "/include/libxml2")))))
(add-after 'install 'use-other-outputs
(lambda _
(let ((doc (string-append #$output:doc "/share/"))
@ -245,7 +253,7 @@ hierarchical form with variable field lengths.")
(native-inputs (append (if (target-loongarch64?)
(list config)
'())
(list perl)))
(list perl pkg-config python-minimal)))
(native-search-paths
(list $SGML_CATALOG_FILES $XML_CATALOG_FILES))
(search-paths native-search-paths)
@ -254,57 +262,23 @@ hierarchical form with variable field lengths.")
project (but it is usable outside of the Gnome platform).")
(license license:x11)))
(define-public libxml2-next
;; 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)
(name "libxml2")
(version "2.14.5")
(version "2.11.9")
(source (origin
(method url-fetch)
(inherit (package-source libxml2))
(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)))))
"17w0a622466k2hi5nln276la6rzfr9xaip3lqj71hmyvxyhmf0bq")))))))
(define-public libxml2-xpath0
(package/inherit libxml2
@ -320,34 +294,7 @@ provides an @code{--xpath0} option to @command{xmllint} that enables it
to output XPath results with a null delimiter.")))
(define-public python-libxml2
(package/inherit libxml2
(name "python-libxml2")
(source (origin
(inherit (package-source libxml2))
(patches
(append (search-patches "python-libxml2-utf8.patch")
(origin-patches (package-source libxml2))))))
(build-system pyproject-build-system)
(outputs '("out"))
(arguments
(list
;; XXX: Tests are specified in 'Makefile.am', but not in 'setup.py'.
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'configure
(lambda* (#:key inputs #:allow-other-keys)
(chdir "python")
(let ((libxml2-headers (search-input-directory
inputs "include/libxml2")))
(substitute* "setup.py"
;; The build system ignores C_INCLUDE_PATH & co, so
;; provide the absolute directory name.
(("/opt/include")
(dirname libxml2-headers)))))))))
(native-inputs (list python-setuptools))
(inputs (list libxml2))
(synopsis "Python bindings for the libxml2 library")))
(deprecated-package "python-libxml2" libxml2))
(define-public libxlsxwriter
(package
@ -394,7 +341,7 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
(define-public libxslt
(package
(name "libxslt")
(version "1.1.37")
(version "1.1.43")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources"
@ -402,8 +349,7 @@ formulas and hyperlinks to multiple worksheets in an Excel 2007+ XLSX file.")
"/libxslt-" version ".tar.xz"))
(sha256
(base32
"1d1s2bk0m6d7bzml9w90ycl0jlpcy4v07595cwaddk17h3f2fjrs"))
(patches (search-patches "libxslt-generated-ids.patch"))))
"0fhqy01x99iia8306czakxza4spzyn88w4bin4sw5bx57hw6ngas"))))
(build-system gnu-build-system)
(arguments
(list #:phases
@ -712,10 +658,11 @@ with XML in Perl. libxml-perl software works in combination with
;; Remove patch with update to version 2.0210.
(patches (search-patches "perl-xml-libxml-fix-function-prototypes.patch"))))
(build-system perl-build-system)
(arguments '(#:tests? #f)) ;FIXME: 2 test failures since updating libxml2
(propagated-inputs
(list perl-xml-namespacesupport perl-xml-sax))
(inputs
(list libxml2))
(list libxml2-2.11))
(home-page "https://metacpan.org/release/XML-LibXML")
(synopsis "Perl interface to libxml2")
(description "This module implements a Perl interface to the libxml2
@ -1256,7 +1203,7 @@ XSL-T processor. It also performs any necessary post-processing.")
"1shk40mpaqaf05skgyxa7qxgcarjd6i1fadn2sk0b8lakfv96bnq"))))
(build-system gnu-build-system)
(propagated-inputs ; according to xmlsec1.pc
(list libxml2-next libxslt))
(list libxml2 libxslt))
(inputs
(list gnutls libgcrypt libltdl))
(native-inputs
@ -1937,13 +1884,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
@ -1975,19 +1922,13 @@ libxml2 and libxslt.")
(sha256
(base32 "03l86qr5xzvz0jcbk669sj8nbw1fjshmf0b7l83gl5cfnx81wm5i"))))
(arguments
(list #:phases
(list #:tests? #f ;some tests fail with newer libxml2
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'relax-gcc-14-strictness
(lambda _
(setenv "CFLAGS"
"-Wno-error=incompatible-pointer-types")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(substitute* "src/lxml/tests/test_elementtree.py"
;; AssertionError: Lists differ: [] != [('end', 'element')]
(("def test_simple_xml") "def _do_not_test_simple_xml"))
(invoke "make" "test"))))))))))
"-Wno-error=incompatible-pointer-types")))))))))
(define-deprecated python-lxml-4.7 python-lxml)
(export python-lxml-4.7)

View file

@ -44,6 +44,7 @@
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2025 宋文武 <iyzsong@envs.net>
;;; Copyright © 2025 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
;;;
;;; This file is part of GNU Guix.
;;;
@ -5759,7 +5760,7 @@ Wayland.")
(define-public libx11
(package
(name "libx11")
(version "1.8.10")
(version "1.8.12")
(source
(origin
(method url-fetch)
@ -5767,7 +5768,7 @@ Wayland.")
version ".tar.xz"))
(sha256
(base32
"0lywvwsz92j7isglvw2227g3na4ghyspvsvblpf43ns7jfnksfrb"))))
"16lspc3bw2pg3jal7zyq6mxmxmmaax0fz6lgh1n4skqjn2dny0ps"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;8 MiB of man pages + XML
@ -6202,16 +6203,13 @@ The XCB util-wm module provides the following libraries:
(define-public xinit
(package
(name "xinit")
(version "1.4.3")
(version "1.4.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://xorg/individual/app/xinit-"
version ".tar.xz"))
(sha256
(base32
"0npx32mi035xkz26gp7raps5xsq4v7rgayy1q794h4d3lqhryh46"))
(patches
(search-patches "xinit-startx-mcookie-path.patch"))))
(base32 "1ygymifhg500sx1ybk8x4d1zn4g4ywvlnyvqwcf9hzsc2rx7r920"))))
(build-system gnu-build-system)
(inputs (list libx11 util-linux xorgproto))
(native-inputs (list pkg-config))

View file

@ -445,7 +445,7 @@ interface.")
`(,@args #:install-source? #f))
(chdir ".."))))))
(propagated-inputs
(list wlroots
(list wlroots-0.18
zig-pixman
zig-wayland
zig-xkbcommon))

View file

@ -80,8 +80,10 @@
#:use-module (gnu packages nfs)
#:use-module (gnu packages enlightenment)
#:use-module (guix deprecation)
#:use-module (guix i18n)
#:use-module (guix records)
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix store)
#:use-module (guix ui)
#:use-module (guix utils)
@ -147,6 +149,11 @@
accountsservice-service ; deprecated
cups-pk-helper-service-type
sane-configuration
sane-configuration?
sane-configuration-backends
sane-configuration-sane
sane-service-type
gnome-desktop-configuration
@ -1681,6 +1688,38 @@ accountsservice web site} for more information."
;; The '60-libsane.rules' udev rules refers to the "scanner" group.
(list (user-group (name "scanner") (system? #t))))
(define (non-empty-list-of-packages? val)
(and (not (null? val)) (list-of-packages? val)))
(define-configuration/no-serialization sane-configuration
(sane
(package sane)
"The package that provides the SANE library.")
(backends
(non-empty-list-of-packages (list sane-backends))
"A list of packages containing SANE backends."))
(define (sane-search-paths config)
(match-record config <sane-configuration> (sane backends)
(let ((backend-union (directory-union "sane-backends" backends)))
(map (match-lambda
(($ <search-path-specification> variable (files))
(cons variable (file-append backend-union "/" files))))
(package-native-search-paths sane)))))
(define* (lift-sane-configuration config #:key warn?)
(if (sane-configuration? config)
config
(begin
(when warn?
(warning (G_ "'sane' service now expects a 'sane-configuration' record~%"))
(when (eq? config sane-backends)
(warning (G_ "'sane-backends' does not include 'hplip' backend anymore. Add it
explicitly when needed.~%"))))
(sane-configuration (backends (list config))))))
(define sane-service-type
(service-type
(name 'sane)
@ -1688,9 +1727,15 @@ accountsservice web site} for more information."
"This service provides access to scanners @i{via}
@uref{http://www.sane-project.org, SANE} by installing the necessary udev
rules.")
(default-value sane-backends-minimal)
(default-value (sane-configuration))
(extensions
(list (service-extension udev-service-type list)
(list (service-extension udev-service-type
(lambda (c)
(sane-configuration-backends
(lift-sane-configuration c #:warn? #t))))
(service-extension session-environment-service-type
(lambda (c)
(sane-search-paths (lift-sane-configuration c))))
(service-extension account-service-type
(const %sane-accounts))))))
@ -2445,7 +2490,7 @@ applications needing access to be root.")
;; Add udev rules for MTP devices so that non-root users can access
;; them.
(simple-service 'mtp udev-service-type (list libmtp))
;; Add udev rules for scanners.
;; Add udev rules and default backends for scanners.
(service sane-service-type)
;; Add polkit rules, so that non-root users in the wheel group can
;; perform administrative tasks (similar to "sudo").

View file

@ -64,6 +64,7 @@
#:use-module (gnu packages usb-modeswitch)
#:use-module (gnu packages messaging)
#:use-module (gnu packages networking)
#:use-module (gnu packages nss)
#:use-module (gnu packages ntp)
#:use-module (gnu packages gnome)
#:use-module (gnu packages ipfs)
@ -1307,7 +1308,13 @@ HiddenServicePort ~a ~a~%"
(writable? #t))
(file-system-mapping
(source torrc)
(target source)))
(target source))
;; Transport plugins like the lyrebird
;; webtunnel need X.509 certificates.
(file-system-mapping
(source (file-append nss-certs "/etc/ssl/certs"))
(target "/etc/ssl/certs")))
(map (lambda (plugin)
(file-system-mapping
(source (tor-plugin-program plugin))

View file

@ -349,7 +349,7 @@ FILE-SYSTEMS."
("btrfs" => '("btrfs"))
("iso9660" => '("isofs"))
("jfs" => '("jfs"))
("f2fs" => '("f2fs" "crc32_generic"))
("f2fs" => '("f2fs" "crc32_cryptoapi"))
("xfs" => '("xfs"))
(else '())))

View file

@ -64,6 +64,7 @@
includedir "/include"))
'())
,(string-append "--buildtype=" build-type)
"--wrap-mode=nofallback"
,(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref outputs "out") "/lib")
,(string-append "-Dcpp_link_args=-Wl,-rpath="
@ -75,10 +76,10 @@
(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?
(invoke "ninja" "--verbose"
"-j" (if parallel-build?
(number->string (parallel-job-count))
"1")))

View file

@ -306,7 +306,10 @@ update would trigger a complete rebuild."
(list (resolve-interface mod)))
(_ (all-modules (%package-module-path)
#:warn
warn-about-load-error)))))
warn-about-load-error))))
(update-spec (if target-version
(cut update-spec <> target-version #t)
update-spec)))
(map update-spec
(fold-packages (lambda (package result)
(if (select? package)

View file

@ -140,6 +140,7 @@
(lambda (dir)
(with-directory-excursion dir
(unpack #:source file)
(sync)
(call-with-input-file name get-string-all))))))))
compressors)

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017-2021, 2023, 2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2023 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2024 Noé Lopez <noelopez@free.fr>
;;;
@ -61,17 +61,6 @@
(define %ar-bootstrap %bootstrap-binutils)
;;; This is a variant of the RPM package configured so that its database can
;;; be created on a writable location readily available inside the build
;;; container ("/tmp").
(define rpm-for-tests
(package
(inherit rpm)
(arguments (substitute-keyword-arguments (package-arguments rpm)
((#:configure-flags flags '())
#~(cons "--localstatedir=/tmp"
(delete "--localstatedir=/var" #$flags)))))))
(test-begin "pack")
@ -517,14 +506,15 @@
(use-modules (guix build utils))
(define fakeroot #+(file-append fakeroot "/bin/fakeroot"))
(define rpm #+(file-append rpm-for-tests "/bin/rpm"))
(mkdir-p "/tmp/lib/rpm")
(define rpm #+(file-append rpm "/bin/rpm"))
(define dbpath (string-append (getcwd) "/var/lib/rpm"))
(mkdir-p dbpath)
;; Install the RPM package. This causes RPM to validate the
;; signatures, header as well as the file digests, which
;; makes it a rather thorough test.
(mkdir "test-prefix")
(invoke fakeroot rpm "--install"
(invoke fakeroot rpm "--dbpath" dbpath "--install"
(string-append "--prefix=" (getcwd) "/test-prefix")
#$rpm-pack)
@ -532,7 +522,8 @@
(invoke "./test-prefix/bin/guile" "--version")
;; Uninstall the RPM package.
(invoke fakeroot rpm "--erase" "guile-bootstrap")
(invoke fakeroot rpm "--dbpath" dbpath
"--erase" "guile-bootstrap")
;; Required so the above is run.
(mkdir #$output))))))