1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-13 05:24:05 +02:00

Compare commits

..

142 Commits

Author SHA1 Message Date
Yelninei e5b92baa27 gnu: dmd: Support GNU/Hurd.
* gnu/packages/patches/dmd-hurd.patch, gnu/packages/patches/phobos-hurd.patch
: New patches.
* gnu/local.mk: Register them.
* gnu/packages/dlang.scm (dmd-bootstrap): Add dmd patch.
[native-inputs]: Make gdb/pinned linux-only, add patch to phobos.
[#:make-flags]: Set DISABLED_TESTS.
[#:phases]: In 'patch-tests disable more tests.
Change-Id: Id5e2fee30bb48a27785682d1b6a30666f33e37c5

Change-Id: I16ad0cba2666fe475cd4028287316e9f8cbad2fe
2026-05-10 19:08:07 +02:00
Yelninei 0c53e15628 gnu: dmd: Update to 2.112.0.
* gnu/packages/dlang.scm (dmd-bootstrap): Update to 2.112.0.

Change-Id: I13d01df4627dc80e6738b247e8ff426d359f7f96
2026-05-10 19:08:07 +02:00
Yelninei 35d6a5d3fa make-gdc: Support GNU/Hurd in gdc-11 and gdc-14.
* gnu/packages/patches/gdc-11-druntime-hurd.patch,
gnu/packages/patches/gdc-14-druntime-hurd.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/gcc.scm (make-gdc): Add patches for gdc-11 and gdc-14.

Change-Id: Ie92e10b1e9f829020d4b63c7c86120f6595b42a5
2026-05-10 19:08:07 +02:00
Yelninei 413d01aaf2 gnu: gcc-11: Support x86_64-gnu.
* gnu/packages/patches/gcc-11-x86_64-gnu.patch: New patch.
* nu/packages/gcc.scm (gcc-11): Add patch.
* gnu/local.mk (dist_patch_DATA): Register patch.

Change-Id: Ie6ec86f4282c6af4ebe43485e4fb9be450c81a94
2026-05-10 19:08:01 +02:00
Janneke Nieuwenhuizen 56a998e94c gnu: grub: Also search for multiboot kernel.
* gnu/bootloader/grub.scm (make-grub-configuration): Also add search for
multiboot-kernel.

Change-Id: I19be79ef35b08059b8d13946836a06ae9f2cd402
2026-05-10 18:44:27 +02:00
Janneke Nieuwenhuizen 1100e266a6 system: hurd: Add pciutils to %base-packages/hurd.
* gnu/system/hurd.scm (%base-packages/hurd): Add pciutils.

Change-Id: Id5d69b83a51a59ca6214a3f7a8b61d53fe9f66d3
2026-05-10 18:44:27 +02:00
Janneke Nieuwenhuizen d255c4e9f2 guix: rumpkernel: Update to debian/0_20250111-6.
* gnu/packages/hurd.scm (rumpkernel): debian/0_20250111-6.

Change-Id: Iaf5791c170b290c60ae4a8bac54e7aceb04b56ed
2026-05-10 18:44:27 +02:00
Janneke Nieuwenhuizen 7f8750a383 system: hurd: Add acpi server.
See <https://lists.gnu.org/archive/html/bug-hurd/2023-07/msg00000.html>.

* gnu/system.scm (hurd-multiboot-modules): Add acpi-command.
2026-05-10 18:44:27 +02:00
Janneke Nieuwenhuizen b39a170b3b gnu: hurd: Use libacpica.
This allows enabling the acpi service.

* gnu/packages/hurd.scm (hurd)[inputs]: Add libacpica.

Change-Id: I4c234cf4296b6dbd3d42622527d698fbebbe4760
2026-05-10 18:44:27 +02:00
Janneke Nieuwenhuizen d543870175 gnu: Add libacpica.
* gnu/packages/hurd.scm (libacpica): New variable.

Change-Id: Idd30328c3417e5232dc01a38da913b796da5c4e0
2026-05-10 18:44:27 +02:00
Ludovic Courtès 8ddc279254 news: Add entry about downloading channel files.
* etc/news.scm: Add entry.

Change-Id: I026b6653de697666e2c177792ee879f7a508ded7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6745
2026-05-10 17:02:57 +02:00
Ludovic Courtès 03b2e7f34a doc: Add a list of ‘guix hash’ examples.
* doc/guix.texi (Invoking guix hash): Add examples.
(Invoking guix time-machine): Add cross reference.

Change-Id: I128d8a884f26e580955a0316caa2e119cff4498b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:08 +02:00
Ludovic Courtès c9dcd203e5 pull, time-machine: ‘--allow-untrusted-channels’ takes an argument.
* guix/scripts/pull.scm (%default-options): Change ‘require-trusted-channels?’
to ‘require-trusted-channels’.
(show-help, %options): Support optional argument to
‘--allow-untrusted-channels’.
(channel-list): Adjust accordingly.
* guix/scripts/time-machine.scm (show-help, %options)
(%default-options): Likewise.
* tests/guix-time-machine.sh: Add test.
* doc/guix.texi (Invoking guix pull)
(Invoking guix time-machine): Adjust accordingly.

Suggested-by: Reepca Russelstein <reepca@russelstein.xyz>
Change-Id: I342ebbcc7355953487a5c6c8ac85048943a5ac46
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:08 +02:00
Ludovic Courtès f13901f6cb pull, time-machine: Accept content SWHIDs as arguments to ‘--channels’.
* guix/swh.scm (swhid-content-data): New procedure.
(call): Do not close ‘port’ when ‘result’ is the same as ‘port’.
* guix/scripts/pull.scm (swhid-content-data*): New procedure.
(channel-list): Accept ‘file’ as a SWHID.
* tests/guix-time-machine.sh: Add test.
* doc/guix.texi (Invoking guix pull): Document it.
(Invoking guix time-machine): Likewise.

Change-Id: I8145cd8685fe2926b1548d4a2dcd54804d89228a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:08 +02:00
Ludovic Courtès 4b81a4df19 pull, time-machine: Support transparent download of channel files.
* guix/scripts/pull.scm (%default-options): Add ‘require-trusted-channels?’.
(show-help, %options): Add ‘--allow-untrusted-channels’.
(trusted-channels, equivalent-channels?, check-trusted-channels): New
procedures.
(channel-list)[require-trusted-channels?]: New variable.
[load-channels]: Honor it and call ‘check-trusted-channels’.
* guix/scripts/time-machine.scm (show-help, %options): Add
‘--allow-untrusted-channels’.
(%default-options): Add ‘require-trusted-channels?’.
* tests/guix-time-machine.sh: Add test.
* doc/guix.texi (Invoking guix pull): Update ‘--channels’ documentation and
document ‘allow-untrusted-channels’.
(Invoking guix time-machine): Likewise.
(Channels with Substitutes): Add example of ‘guix pull’ with a URL.

Change-Id: If0bb6acaedf324e35a21c9c7d285f3e423ae49aa
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:08 +02:00
Ludovic Courtès 2d4f290e17 ui: ‘load*’ accepts a file name or a port.
* guix/ui.scm (load/isolated): Change ‘file’ parameter to ‘port’ and adjust
accordingly.
(load*): Change ‘file’ to ‘file-or-port’ and adjust accordingly.
* tests/ui.scm ("load/isolated, reading exceeds limits")
("load/isolated, attempt to import module")
("load/isolated, attempt to allocate with 'cons'")
("load/isolated, attempt to allocate with 'make-vector'")
("load/isolated, use of allowed bindings"): New tests.

Change-Id: I0ec8fa2717c02041d409f6dc59b753d4501107f9
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:08 +02:00
Ludovic Courtès 882f46bdd7 http-client: Record file name in returned port.
* guix/http-client.scm (http-fetch): Add call to ‘set-port-filename!’.

Change-Id: I621e467308c54463399dfa283c920bef705e425a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:07 +02:00
Ludovic Courtès 3deecc2f87 perform-download: Use ‘read/safe’ from (guix ui).
* guix/scripts/perform-download.scm (read/safe): Remove.

Change-Id: I941e1ab299dc1e82b2587ae58fc9f44aa9187653
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:07 +02:00
Ludovic Courtès 36d431c051 pull, time-machine: Evaluate channels in a sandbox by default.
* guix/scripts/pull.scm (%default-options): Add
‘isolated-channel-evaluation?’.
(show-help, %options): Add ‘--unsafe-channel-evaluation’.
(%safe-channel-bindings): New variable.
(channel-list): Honor ‘isolated-channel-evaluation?’.
* guix/scripts/time-machine.scm (show-help, %options): Add
‘--unsafe-channel-evaluation’.
(%default-options): Add ‘isolated-channel-evaluation?’.
* tests/guix-time-machine.sh: Test use of unauthorized bindings in channel
files.
* doc/guix.texi (Invoking guix time-machine): Document
‘--unsafe-channel-evaluation’.
(Invoking guix pull): Likewise.
(Channels with Substitutes): Add index entry for
‘channel-with-substitutes-available’.  Mention that it requires
‘--unsafe-channel-evaluation’.

Change-Id: I75f60dba516f42ef62a9d779cde8e2f0a9d0c140
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:07 +02:00
Ludovic Courtès 568f8e97a7 ui: Add #:isolated? parameter to ‘load*’.
* guix/ui.scm (read/safe, sever-module!, load/isolated): New procedures.
(pure-bindings-sans-allocators): New variable.
(load*): Add #:isolated? parameter and honor it.

Change-Id: I0164a7a28997e01c6948ed32d26900b5bf524b27
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:07 +02:00
Ludovic Courtès 94ae360ab4 ui: ‘load*’ takes a list of modules to import.
* guix/ui.scm (load*): Change ‘module’ to ‘imports’.  Define ‘user-module’.
* guix/scripts/build.scm (options->things-to-build): Update to new ‘load*’
calling convention.
* guix/scripts/deploy.scm (load-source-file): Likewise.
* guix/scripts/environment.scm (load-manifest)
(options/resolve-packages): Likewise.
* guix/scripts/home.scm (process-action): Likewise.
(%user-module): Rename to…
(%user-modules): … this, and change to a list of module names.
* guix/scripts/pack.scm (guix-pack): Update ‘load*’ calls.
* guix/scripts/package.scm (load-manifest, %options): Likewise.
* guix/scripts/pull.scm (channel-list): Likewise.
* guix/scripts/refresh.scm (packages-from-manifest): Likewise.
* guix/scripts/system.scm (%user-module): Rename to…
(%user-modules): … this, and change to a list of module names.
(read-operating-system): Adjust accordingly.
(process-action): Likewise.
* guix/scripts/weather.scm (load-manifest): Likewise.
* tests/gexp.scm ("local-file, relative file name, within gexp, compiled"):
Likewise.

Change-Id: Ic838e66719d89de556ac0872c3ce0c8ff6de8790
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-10 17:01:07 +02:00
gemmaro a6f6e6c7b3 gnu: uriparser: Update to 1.0.2 [security fixes].
Includes fixes for CVE-2026-42371, CVE-2026-44927, and CVE-2026-44928.

* gnu/packages/web.scm (uriparser): Update to 1.0.2.

Change-Id: I0c4ac0be248e32afa5aa8e8817c8497d783af0ef
Merges: https://codeberg.org/guix/guix/pulls/8492
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-10 21:59:22 +09:00
Julien Lepiller 9f8d0595a2 gnu: gramps: Update to 6.0.8.
* gnu/packages/genealogy.scm (gramps): Update to 6.0.8.

Change-Id: I4d2a2af75b42b9a858d88a054b9cca569db8e769
2026-05-10 12:38:59 +02:00
chris0ax bb40939209 gnu: plover: Improve style
* gnu/packages/stenography.scm (plover)[source]: Reflow.
  [arguments]<#:test-flags>: Fix indentation.
  <#:phases>{install-udev-rules}: Use G-expression.

Change-Id: Ib867c2c74ee1a222d89d7fd5f197bb998ac60e62
Merges: https://codeberg.org/guix/guix/pulls/7857
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-10 17:29:08 +09:00
chris0ax d00631a4ff gnu: plover: Update to 5.3.0.
Propagated inputs are populated to allow Plover plugins
to be packaged in the future.

* gnu/packages/stenography.scm (plover): Update to 5.3.0.
  [arguments]<#:test-flags>: Move to here...
  <#:phases>{check}: ...from here.  Remove custom phase definition.
  {wrap-executable}: Switch QT_PLUGIN_PATH to Qt 6.
  {set-paths, update-i18n-catalog, install-desktop}: Add phases.
  [native-inputs]: Add python-setuptools.  Remove python-wheel.
  [inputs]: Replace qtsvg-5 with qtsvg.  Add qtbase, qtwayland.
  [native-inputs]: Move python-evdev...  [inputs]: ..., python-appdirs,
  python-dbus-1.2, python-hidapi, python-plover-stroke, python-pyserial,
  python-rtf-tokenize, python-wcwidth, and python-xlib from here...
  [propagated-inputs]: ...to here.  Add python-packaging,
  python-pkginfo, python-psutil, python-pygments,
  python-readme-renderer, python-requests-cache,
  python-requests-futures, and python-xkbcommon.
  Replace python-pyqt with python-pyside-6.

Change-Id: Id55ea1f7be36cbc9bfbd3cb49eeafb8fb8d80c6f
Modified-by: Nguyễn Gia Phong <cnx@loang.net>
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-10 17:29:08 +09:00
chris0ax 8e8403b996 gnu: Add python-xkbcommon.
* gnu/packages/python-xyz.scm (python-xkbcommon): New variable.

Change-Id: Ib36611baaf0fb9fea0f0bd912ff162f661c3bb7b
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-10 17:29:08 +09:00
Artyom V. Poptsov 33550057ae gnu: wireproxy: Update to 1.1.2.
* gnu/packages/networking.scm (wireproxy): Update to 1.1.2.
[source]<origin>: Change URL to "https://github.com/windtf/wireproxy".
[arguments]<#:import-path>: Set to
"github.com/windtf/wireproxy/cmd/wireproxy".
<#:unpack-path>: Set to "github.com/windtf/wireproxy".
[home-page]: Set to "https://github.com/windtf/wireproxy".

Change-Id: I9f1df7282a1405f0fd95ceece355466c3397173d
2026-05-10 10:40:38 +03:00
Artyom V. Poptsov 3c85becdf7 gnu: iperf: Update to 3.21.
* gnu/packages/networking.scm (iperf): Update to 3.21.

Change-Id: I4444d22c017b1b4cbb9cc98beefc8a551395ddb4
2026-05-10 10:40:38 +03:00
Artyom V. Poptsov c451c185de gnu: atftp: Update to 0.8.1.
* gnu/packages/networking.scm (atftp): Update to 0.8.1.

Change-Id: I47622343ba3a88f8b6f5d634e9db3e009e34d3a8
2026-05-10 10:40:38 +03:00
Cayetano Santos a404ada964 gnu: emacs-forgejo: Update to 0.2.0.
* gnu/packages/emacs-xyz.scm (emacs-forgejo): Update to 0.2.0.

Change-Id: I2b7b310af5697b8e06313ac56bbaf176d12b5f76
2026-05-10 09:34:33 +02:00
Mark H Weaver fcacbd0826 gnu: icecat: Update to 140.10.2-gnu1 [security fixes].
Includes fixes for CVE-2026-8090, CVE-2026-8092, and CVE-2026-8094.

* gnu/packages/gnuzilla.scm (%icecat-base-version, %icecat-build-id): Update.
(icecat-source): Update 'gnuzilla-commit' and hashes.
2026-05-10 02:06:46 -04:00
Akiyoshi Suda 24061dccef gnu: Add python-rustworkx.
* gnu/packages/python-xyz.scm (python-rustworkx): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[python-rustworkx]:
  New entry.

Change-Id: Ic5fbb7303d00ebadc9086a92936ce59bc7b745fe
Merges: https://codeberg.org/guix/guix/pulls/8290
Reviewed-by: Efraim Flashner <efraim@flashner.co.il>
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-10 12:37:29 +09:00
Sughosha 794173c04a gnu: strawberry: Update to 1.2.19.
The bundled Discord RPC is rewritten and is now part of strawberry itself.

* gnu/packages/music.scm (strawberry): Update to 1.2.19.
[source]: Remove snippet.

Change-Id: I64c788472ddd5ee5b88be26eec3abd7522ce33b7
2026-05-10 00:06:43 +05:30
Wilko Meyer 18f6d3537f gnu: linux-libre 6.1: Update to 6.1.172.
* gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.172.
(linux-libre-6.1-pristine-source): Update hash.

Change-Id: I82f9e9bf7c9e2498b1f6d87abfdeacf7431aa353
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-09 08:49:57 -07:00
Wilko Meyer 9075b70fdc gnu: linux-libre 5.15: Update to 5.15.206.
* gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.206.
(linux-libre-5.15-pristine-source): Update hash.

Change-Id: I33143dfef87633317b29a7ca3aabcd2f381857bb
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-09 08:49:54 -07:00
Wilko Meyer ccd324ef6d gnu: linux-libre 5.10: Update to 5.10.255.
* gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.255.
(linux-libre-5.10-pristine-source): Update hash.

Change-Id: I542a482a39fa2ca448bb40d1690f680d90ff6963
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-09 08:49:47 -07:00
Dariqq 57fb0b2312 gnu: libgit2: Don't set PKG_CONFIG_EXECUTABLE.
The variable is set automatically after 3fe0b451c6
("build-system: cmake: Use a toolchain file for cross compiling.")

* gnu/packages/version-control.scm (libgit2-1.9)[#:configure-flags]:
  When cross compiling remove setting PKG_CONFIG_EXECUTABLE.

Change-Id: I97cb9105cf33728bcb56bb86722d277ea967e8f4
Merges: https://codeberg.org/guix/guix/pulls/8236
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-09 23:33:59 +09:00
Hilton Chain b2a13dcf54 system: os-release: Update BUG_REPORT_URL.
* gnu/system.scm (os-release): Update BUG_REPORT_URL to Codeberg.

Merges: https://codeberg.org/guix/guix/pulls/8263
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Reviewed-by: Murilo <murilo@disroot.org>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-09 22:11:58 +09:00
Patrick Norton 2ca9efb154 gnu: whois: Update to 5.6.6.
* gnu/packages/networking.scm (whois): Update to 5.6.6.

Change-Id: I2c27cfd4e74df76f484f9d8caebccd60653584a3
Merges: https://codeberg.org/guix/guix/pulls/8426
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-09 22:10:09 +09:00
Efraim Flashner 0ab9e0ad28 gnu: node-balanced-match: Remove duplicate definition.
* gnu/packages/node-xyz.scm (node-balanced-match):
  Reflow definition with `guix style`.
  (node-balanced-match-1): Remove variable.
  (node-brace-expansion-1)[inputs]: Replace node-balanced-match-1
  with node-balanced-match.

Change-Id: Ibb65912fcdd503709ec7fb522786082606570796
Merges: https://codeberg.org/guix/guix/pulls/6491
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-09 22:00:29 +09:00
Yappaholic 8fdcc9a4a2 gnu: libuv-for-lua: Update to 1.44.2
* gnu/packages/libevent.scm (libuv-for-lua): Update to 1.44.2.

Fixes: a11eeeaf63 ("gnu: lua-luv: Update to 1.44.2-0")
Merges: https://codeberg.org/guix/guix/pulls/8454
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-09 21:25:45 +09:00
Nguyễn Gia Phong 9fbec1f16f gnu: fennel: Update to 1.6.1.
* gnu/packages/lua.scm (fennel): Update to 1.6.1.
  [arguments]<#:make-flags>: Use gexp.

Change-Id: I6b63c385300d988f46668b81b5fe4893c4a7372a
Merges: https://codeberg.org/guix/guix/pulls/8372
2026-05-09 21:19:14 +09:00
Sughosha 2bf228ab40 gnu: sideload: Fix build.
* gnu/packages/pantheon.scm (sideload)[arguments]: Switch to gexp.

Change-Id: I5e482dedaf5bec95c6320663f03b3f97fab56cde
2026-05-09 16:22:59 +05:30
Sören Tempel 027eec1faf gnu: bvi: Update to 1.5.0.
* gnu/packages/hexedit.scm (bvi): Update to 1.5.0.

Change-Id: Ie3ae2ad492f8d7286b29bd1127ecdb54260d2bbf
2026-05-09 12:20:34 +02:00
Sören Tempel 5b0d1fc8ab gnu: cvc5: Update to 1.3.4.
* gnu/packages/maths.scm (cvc5): Update to 1.3.4.
[source]<patches>: Remove patches.
* gnu/local.mk (dist_patch_DATA): Deregister removed patches.
* gnu/packages/patches/cvc5-reproducible-build.patch: Delete file.
* gnu/packages/patches/cvc5-symfpu-compatibility.patch: Delete file.

Change-Id: I83d05653587fedcb21b78dfbae2026960fe07f55
2026-05-09 12:16:09 +02:00
Guillaume Le Vaillant 1158d6f4ea gnu: p2pool: Update to 4.15.
* gnu/packages/finance.scm (p2pool): Update to 4.15.

Change-Id: Id69de3f693eb791fde81ea0b2a907387c07e4ad0
2026-05-09 10:19:31 +02:00
Wilko Meyer e39609d41b gnu: linux-libre 6.6: Update to 6.6.138.
* gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.138.
(linux-libre-6.6-pristine-source): Update hash.

Change-Id: Id7dcfe0207fe7f3b189ad0f675da943410d83959
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-09 00:42:04 -07:00
Ashish SHUKLA 02b3d4d442 gnu: tuxedo-keyboard: Update to 4.22.2
* gnu/packages/linux.scm (tuxedo-keyboard): Update to 4.22.2.

Merges guix/guix!8449

Change-Id: I2afa2ef44210f1e0b18efd66dc1f8161744b7095
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-09 09:32:48 +02:00
Thanos Apollo 3f89f7b20c gnu: emacs-forgejo: Update to 0.1.7.
* gnu/packages/emacs-xyz.scm (emacs-forgejo): Update to 0.1.7.

Merges guix/guix!8444

Change-Id: I50918f9d6e7888e3ce24b7912aa7c4057acc7ef9
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-09 09:27:15 +02:00
Thanos Apollo d121362bef gnu: emacs-gnosis: Update to 0.10.6.
* gnu/packages/emacs-xyz.scm (emacs-gnosis): Update to 0.10.6.
[arguments]<#:lisp-directory>: Add; sources moved to lisp/.
<#:test-command>: Use make -C .. for top-level Makefile.
<#:phases>: Update 'make-info likewise.

Merges guix/guix!8444

Change-Id: Ic9df6a646bbec67af9a0bfd33168495d0335c68e
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-09 09:26:24 +02:00
Thanos Apollo a243040e4d gnu: emacs-keymap-popup: Update to 0.2.7.
* gnu/packages/emacs-xyz.scm (emacs-keymap-popup): Update to 0.2.7.
[description]: Fix typo: keyboard -> keymap.

Merges guix/guix!8444

Change-Id: I464dc30c43bd274c3f0a62b4022f268801141902
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-09 09:26:02 +02:00
satoshi b48654ff08 gnu: linux-libre 6.12 [riscv64]: Add kernel option.
Fixing regression from https://codeberg.org/guix/guix/pulls/4855

Due to an open issue https://codeberg.org/guix/guix/issues/7570 creation of riscv images is broken. This patch is fixing it for kernel 6.12 (with other versions it could also work but I was not testing it yet)

* gnu/packages/aux-files/linux-libre/6.12-riscv.conf: Add CONFIG_SCSI_VIRTIO
as a module.

Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-09 00:10:13 -07:00
Vagrant Cascadian 6b39fe14d9 gnu: Add linux-libre-arm64-mnt-reform 7.0.
* gnu/packages/linux.scm (linux-libre-arm64-mnt-reform-7.0): New variable.
2026-05-09 00:10:10 -07:00
Vagrant Cascadian 8bcdaeef8e gnu: Add reform-debian-packages-for-7.0.
* gnu/packages/linux.scm (reform-debian-packages-for-7.0): New variable.
2026-05-09 00:10:08 -07:00
Vagrant Cascadian 86e413b46f gnu: consolidate linux-libre-arm64-mnt-reform kernel configurations options
across versions.

* gnu/packages/linux.scm (mnt-reform-kernel-options): New variable.
(linux-libre-arm64-mnt-reform-6.12, linux-libre-arm64-mnt-reform-6.18,
linux-libre-arm64-mnt-reform-6.19)[#:extra-options]: Use
mnt-reform-kernel-options.
2026-05-09 00:10:04 -07:00
Wilko Meyer 33730f95a9 gnu: linux-libre 6.12: Update to 6.12.87.
* gnu/packages/linux.scm (linux-libre-6.12-version): Update to 6.12.87.
(linux-libre-6.12-pristine-source): Update hash.

Change-Id: I7c1f54d4998a5a75c64bede3184c986781789153
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-08 23:54:18 -07:00
Wilko Meyer 5f65d3f998 gnu: linux-libre 6.18: Update to 6.18.28.
* gnu/packages/linux.scm (linux-libre-6.18-version): Update to 6.18.28.
(linux-libre-6.18-pristine-source): Update hash.

Change-Id: I00a0f5b4edcf8e0264cb4bf7655e0212b2b1daa8
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-08 23:54:15 -07:00
Wilko Meyer 883d0e0f83 gnu: linux-libre 7.0: Update to 7.0.5.
* gnu/packages/linux.scm (linux-libre-7.0-version): Update to 7.0.5.
(linux-libre-7.0-pristine-source): Update hash.

Change-Id: Id98b7f2ac3a1c8a0c7e5e4f141260e3ea4660742
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-08 23:54:12 -07:00
Sughosha 77ae767bae gnu: amarok: Fix playback error.
* gnu/packages/kde-multimedia.scm (amarok)[arguments]<#:phases>: Add
'wrap-program phase to wrap GST_PLUGIN_SYSTEM_PATH.

Change-Id: I565b9fbf0c3788b160d68a2d71a12aadbad55fc5
2026-05-09 09:42:28 +05:30
Sughosha d7aacd8c84 gnu: rattlesnake: Fix start-up.
* gnu/packages/kde-multimedia.scm (rattlesnake)[arguments]: Realign.
<#:phases>: Add 'wrap-program phase to wrap GST_PLUGIN_SYSTEM_PATH.
[propagated-inputs]: Move gstreamer, gst-plugins-base, and gst-plugins-good to
...
[inputs]: ... here. Add kirigami-addons.

Change-Id: I254f1953a4751f6cafe7b32ad9e7a6425b06aae7
2026-05-09 09:42:28 +05:30
Sughosha e1a0cd5c7b gnu: kamoso: Fix start-up.
* gnu/packages/kde-multimedia.scm (kamoso)[arguments]: Realign.
<#:phases>: Add 'wrap-program phase to wrap GST_PLUGIN_SYSTEM_PATH.

Fixes: guix/guix#8202
Change-Id: I192e9a201bf5ed3eaebcba895152dd4df028c2af
2026-05-09 09:42:19 +05:30
Cayetano Santos 355e90f787 gnu: emacs-shell-pop: Update to 0.70.
* gnu/packages/emacs-xyz.scm (emacs-shell-pop): Update to 0.70.
[arguments]: Disable #:tests?.

Change-Id: I4f3fa9d81996f8b7567ad2c5e6a6550d1562a371
2026-05-09 01:01:52 +02:00
Ludovic Courtès 3ec013018a gnu: guix-modules: Update to 0.4.0.
* gnu/packages/package-management.scm (guix-modules): Update to 0.4.0.

Change-Id: I40267af9e0d1a6e42e5e4dcc2a72f51c745064ca
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8418
2026-05-08 22:39:53 +02:00
Ludovic Courtès ef3dcc29e5 doc: Build with Texinfo 7.
This is a backport of guix/lernigilo#7 and followup commits.

* doc/build.scm (html-manual-identifier-index)[build]
(collect-anchors): Add clauses matching Texinfo 7 output.
(syntax-highlighted-html)[build](concatenate-snippets): Likewise.
(syntax-highlight):Likewise.
(stylized-html)[stylized-html]: Do not insert <link> tag for ‘%manual-css-url’
since it’s already added by ‘makeinfo’.

Change-Id: I3a51eece053d4fdeeaa72d2642fd4a62695cc3a6
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8272
2026-05-08 22:22:14 +02:00
Ludovic Courtès b84d3cb9bf doc: Remove extra parent in ‘shepherd-signal-action’ example.
* doc/guix.texi (Shepherd Services): Remove extra paren in example.

Change-Id: I6530e8a9cb3a5f9596f57f8b6c7dc4ea8e3fab77
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-08 22:22:13 +02:00
Ludovic Courtès cd9d6853d4 doc: For Guile identifiers, refer to doc.guix.gnu.org.
* doc/build.scm (%guile-manual-base-url): Point to doc.guix.gnu.org.

Change-Id: I0be6a42e6bbb84a5ee7c3cbe9fd9d0e0867acb14
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-08 22:22:13 +02:00
jgart d83568b31d gnu: trealla: Update to 2.97.0.
* gnu/packages/prolog.scm (trealla): Update to 2.97.0.

Change-Id: I749d9600e1496476548ec3506240d364d8ee41cc
2026-05-08 08:40:39 -04:00
Andreas Enge 8975ae41b7 gnu: Remove librsync-0.9.
* gnu/packages/rsync.scm (librsync-0.9): Delete variable.

Fixes: guix/guix#7739
Change-Id: I124ae4c934fc5618e7e853bfc7e19077886c3049
2026-05-08 12:31:53 +02:00
Liam Hupfer fff231162b gnu: Add emacs-kkp.
* gnu/packages/emacs-xyz.scm (emacs-kkp): New variable.

Change-Id: Ie09ddbc528a69a9fe4c8d0a51f22e57b0d0942bd
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:58 +02:00
Liam Hupfer 6e0a7e14e0 gnu: Add emacs-magit-lfs.
* gnu/packages/emacs-xyz.scm (emacs-magit-lfs): New variable.

Change-Id: I862022bec344221272fbc80d03884ce9e5c85e07
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:51 +02:00
Liam Hupfer f66846de2f gnu: Add emacs-isayt.
* gnu/packages/emacs-xyz.scm (emacs-isayt): New variable.

Change-Id: I7b8989db415df2d76dd898e4de6f9f536c0cc1cf
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:40 +02:00
Liam Hupfer e0c204b2c2 gnu: Add emacs-highlight-quoted.
* gnu/packages/emacs-xyz.scm (emacs-highlight-quoted): New variable.

Change-Id: Iefbd572b6e59155a61fb1d8b0ca13b5ecee61337
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:33 +02:00
Liam Hupfer 5cbdcd4a9a gnu: emacs-puni: Update to 0-4.fe132f8.
* gnu/packages/emacs-xyz.scm (emacs-puni): Update to 0-4.fe132f8.

Change-Id: I21576c0313604cc5c01dd6742791270e0aedd2d4
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:31 +02:00
Thanos Apollo 9c664e9a85 gnu: emacs-next: Update to 31.0.50-3.d969185.
* gnu/packages/emacs.scm (emacs-next-minimal): Update to 31.0.50-3.d969185.

Change-Id: I59f3f216047ba9e27a8b190dfbf7af1badca06c0
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:21 +02:00
equalsraf 133e135cc7 gnu: tree-sitter-vimdoc: Update to 4.1.0.
* gnu/packages/tree-sitter.scm (tree-sitter-vimdoc): Update to 4.1.0.

Change-Id: I9766208d7f580fc6bfcf9839b77c1f81f89ef185
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:18 +02:00
equalsraf 9b91ff6e74 gnu: tree-sitter-vim: Update to 0.8.1.
* gnu/packages/tree-sitter.scm (tree-sitter-vim): Update to 0.8.1.

Change-Id: Ie764e794a2656a477e7e2811a4eaad6962f9dda1
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:34:15 +02:00
equalsraf d22620424b gnu: tree-sitter-query: Update to 0.8.0.
* gnu/packages/tree-sitter.scm (tree-sitter-query): Update to 0.8.0.

Change-Id: Iaefe651e68d1e5255ca5ad4f1d4bc59c62b4d937
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:33:58 +02:00
equalsraf d3b0f2323e gnu: tree-sitter-markdown: Update to 0.5.3.
* gnu/packages/tree-sitter.scm (tree-sitter-markdown): Update to 0.5.3.

Change-Id: I054aa02030992c927abe69911ca630a7d505a728
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:33:55 +02:00
equalsraf e420a1974c gnu: tree-sitter-lua: Add tree-sitter-lua 0.5.0.
* gnu/packages/tree-sitter.scm (tree-sitter-lua): Update to 0.5.0.

Fixes: guix/guix#7981 (Neovim tree-sitter dependencies out of date)
Change-Id: I17dba80cdf327354e9bd4777cb168792a5b10a72
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:32:47 +02:00
equalsraf 115aae70b6 gnu: tree-sitter-c: Update to 0.24.1.
* gnu/packages/tree-sitter.scm (tree-sitter-c): Update to 0.24.1.

Change-Id: I518279c0346409089e9549ed020900a1d2cbd764
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-07 22:32:40 +02:00
jgart 117043e5e8 gnu: trealla: Update to 2.96.3.
* gnu/packages/prolog.scm (trealla): Update to 2.96.3.

Change-Id: Ib2eba6792474b5586e37a3afd73bacee5b309311
2026-05-07 15:02:22 -04:00
jgart 9a7db2db5d gnu: emacs-dape: Update to 0.27.1.
* gnu/packages/emacs-xyz.scm (emacs-dape): Update to 0.27.1.

Change-Id: Ie5cd6de604bb22bdeb99d6f3d595b8b41b048429
2026-05-07 15:01:08 -04:00
Guillaume Le Vaillant 6dd1ff6e9e gnu: cl-simple-matrix: Update to 3.16.
* gnu/packages/lisp-xyz.scm (sbcl-simple-matrix): Update to 3.16.

Change-Id: I1231cc6244bc80eaf0289caf86fdfd3a68a04d1c
2026-05-07 19:06:17 +02:00
Philippe Virouleau 7b6e9748c4 gnu: hypre: Fix build-docs
* gnu/packages/maths.scm: hypre,hypre-openmpi: use doxygen 1.16.1

Change-Id: I221ac26d0b30028f87c7b2a398d3922e0e6c0cde
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8351
2026-05-07 17:43:42 +02:00
Philippe Virouleau 641992f1ee gnu: doxygen: Add 1.16.1.
* gnu/packages/documentation.scm (doxygen-1.16, doxygen-1.14): New variables.
(doxygen): Define as an alias for the latter.

Change-Id: Ibb277bb07e2e5ab9121e77d126154c5a6d551951
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-07 17:42:50 +02:00
Nicolas Graves 8a505cfd48 style: Add ‘remove-input’ and related styling rules.
* guix/scripts/style.scm (input-matches?, package-list->string,
%field-accessors, remove-from-package-field, transform-package-field):
Add variables.
(%options): Add options --remove-input, --remove-native-input,
--remove-propagated-input, and --parameter.
(guix-style): Implement those options.  To keep ony one autoload, use
specification->package+output rather than specification->package.

* tests/style.scm ("remove-input, single input removed",
"remove-input, one of multiple inputs removed",
"remove-input, middle input removed from list",
"remove-input, non-existent input unchanged",
"remove-input, input with output specifier",
"remove-native-input, single input removed",
"remove-native-input, one of multiple inputs removed",
"remove-native-input, does not affect inputs field",
"remove-propagated-input, single input removed",
"remove-propagated-input, one of multiple inputs removed",
"remove-propagated-input, does not affect other fields",
"remove-input from all three fields independently",
"remove-input, dry-run does not modify file"): New tests.
("url-fetch->git-fetch, preserved field"): Drop the use of %patch-path
and %package-module-path, which are not necessary because of -L.
Change the mocked procedure from specification->package to
specification->package+output, as in the implementation.

* doc/guix.texi (Invoking guix style): Add description for guix style
-S remove-*input rules.

Change-Id: I449c87930310a73ad316b4cb5db72d0906ea495d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #5862
2026-05-07 17:35:32 +02:00
Nicolas Graves 10bf5b6c29 doc: Rebalance guix style inputs description.
* doc/guix.texi: It seems that there were two places where styling
rules were declared, and one was vastly outdated.  Only describe
styling rules once instead, and move their specific discussion where
the styling rule is described.

Change-Id: Ic83d4c59e45ed51f63dfe91e624b6f453a800818
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-07 17:34:44 +02:00
bdunahu c7871f6111 teams: Add bdunahu to games team.
* etc/teams.scm: ("bdunahu"): New person in games team.

Merges guix/guix!8381.

Change-Id: Ia7f467468375f08fc6cb04dec31ee74e18bf2ea4
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-07 16:45:09 +02:00
Romain GARBAGE 363ea2f547 gnu: r-cellid: Fix deprecated argument.
r-seurat update (commit 51b1aea0bd) broke
this package as it is using deprecated arguments that were removed.

* gnu/packages/bioconductor.scm (r-cellid)[arguments]: Add
’fix-deprecated-argument #:phase.

Merges guix/guix!8414

Change-Id: I12aa8665aa694836ea21f199b521cc208af317a2
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-05-07 15:10:07 +02:00
Sughosha 3d87fa6421 gnu: ctune: Update to 1.3.10.
* gnu/packages/music.scm (ctune): Update to 1.3.10.
[source]<patches>: Remove patch.
[arguments]: Switch to gexp.
<#:configure-flags>: Add "-DNO_NCURSESW=ON".
* gnu/local.mk (dist_patch_DATA): Deregister the removed patch.

Change-Id: Idc92db9021647844b76c84a8fcb7ef93fcafe24f
2026-05-07 18:17:23 +05:30
Reza Housseini d9711641a6 gnu: opencascade-occt: Build with VTK.
* gnu/packages/maths.scm (opencascade-occt): Build with VTK enabled.
[inputs]: Add vtk.
[arguments]: Enable USE_VTK build flag.
[home-page]: Switch to https://dev.opencascade.org.

Change-Id: I3a57793c43084be13b1f078fcacc73a553ad82c5
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-07 11:54:17 +02:00
Cayetano Santos 2adf8026c4 gnu: emacs-keymap-popup: Update to 0.2.6.
* gnu/packages/emacs-xyz.scm (emacs-keymap-popup): Update to 0.2.6.

Change-Id: I32c95342451db36a4ef0f5ea955e5dafa3886b19
2026-05-07 10:44:57 +02:00
Cayetano Santos 984c5f07cd gnu: emacs-forgejo: Update to 0.1.5.
* gnu/packages/emacs-xyz.scm (emacs-forgejo): Update to 0.1.5.
[arguments]: Set #:emacs and #:test-command.

Change-Id: I979766e590895831dbc9bcc2880d3edc4b95d09e
2026-05-07 10:33:25 +02:00
Patrick Norton 6fdb90592a gnu: difftastic: Update to 0.69.0.
* gnu/packages/rust-apps.scm (difftastic): Update to 0.69.0.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[difftastic]: Update
cargo-inputs.

Change-Id: Ic19fb7bab1bb90aede0d035f786ad983eb97b041
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-07 08:42:13 +03:00
Thanos Apollo c682b5f3a5 gnu: Add emacs-forgejo.
* gnu/packages/emacs-xyz.scm (emacs-forgejo): New variable.

Change-Id: I0fcb64b1472ce19db162e5ef1a24c3462c47ffc0
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-05-07 09:49:20 +09:00
Thanos Apollo 47eb631d50 gnu: Add emacs-keymap-popup.
* gnu/packages/emacs-xyz.scm (emacs-keymap-popup): New variable.

Change-Id: I675590c033479b12a9227ca7e6e7daf2c1fdce36
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-05-07 09:49:19 +09:00
Thanos Apollo 14435577a8 gnu: emacs-yeetube: Update to 2.3.0.
* gnu/packages/emacs-xyz.scm (emacs-yeetube): Update to 2.3.0.
[propagated-inputs]: Add emacs-keymap-popup.

Change-Id: I1d06ea1e7764f9dd2b67c5b94a9f38dc15415fdb
2026-05-07 09:44:34 +09:00
Thanos Apollo b41dc8345c gnu: emacs-jabber: Update to 0.10.6.
* gnu/packages/emacs-xyz.scm (emacs-jabber): Update to 0.10.6.
[arguments]<#:phases>: Remove 'fix-test-runner.
[propagated-inputs]: Add emacs-keymap-popup.

Change-Id: Ib36d5f91e6673aa601fec083e2a2fd3e8779d073
2026-05-07 09:44:33 +09:00
Thanos Apollo 84bbece4d5 gnu: emacs-gnosis: Update to 0.10.4.
* gnu/packages/emacs-xyz.scm (emacs-gnosis): Update to 0.10.4.
[propagated-inputs]: Replace emacs-transient with emacs-keymap-popup.

Change-Id: Ic93f300bb7b891b1d25f7b5f715102927a7636e6
2026-05-07 09:44:33 +09:00
Trevor Arjeski dc4f3b708f gnu: swaynotificationcenter: Update to 0.12.6.
* gnu/packages/wm.scm (swaynotificationcenter): Update to 0.12.6.
[inputs] Add blueprint-compiler, granite, gtk, gtk4-layer-shell, libadwaita,
libshumate. Remove granite-6, gtk+, gtk-layer-shell

Change-Id: I50d248880dc817ca1f33da81bc8f6b336326c766
Signed-off-by: Sughosha <sughosha@disroot.org>
2026-05-07 00:31:47 +05:30
Sughosha 2ec28cfdfa gnu: pantheon-wallpapers: Update to 8.0.0.
* gnu/packages/pantheon.scm (pantheon-wallpapers): Update to 8.0.0.

Change-Id: Iac2a58a67bbece1e8751dd55096c62470f355b75
2026-05-07 00:28:32 +05:30
Sughosha 50aec8eeba gnu: sideload: Update to 6.3.1.
* gnu/packages/pantheon.scm (sideload): Update to 6.3.1.
[arguments]<#:phases>: Remove set-environment-variables phase. Simplify
install-symlinks phase by using #$output instead of (assoc-ref outputs "out")
and remove lambda arguments.
[inputs]: Switch to new style.
[native-inputs]: Switch to new style. Add desktop-file-utils.

Change-Id: I4370b6b5a1846f4438da85e2624ef269bb1d910a
2026-05-07 00:28:31 +05:30
Sughosha 8d108e2d89 gnu: pantheon-terminal: Update to 8.0.0.
* gnu/packages/pantheon.scm (pantheon-terminal): Update to 8.0.0.
[arguments]<#:phases>: Remove set-environment-variables phase.
[inputs]: Remove granite-6, gtk+, and vte/gtk+-3; add granite, gtk, libadwaita,
and vte.

Change-Id: I1ffcda56882128620d6ef3d71f7aa301bd01a86d
2026-05-07 00:28:31 +05:30
Sughosha a3bce9294d gnu: pantheon-stylesheet: Update to 8.2.2.
* gnu/packages/pantheon.scm (pantheon-stylesheet): Update to 8.2.2.

Change-Id: I876a5069645880acd833d9771b92c818d4c1bcb3
2026-05-07 00:28:31 +05:30
Sughosha c1efd598a8 gnu: pantheon-screenshot: Update to 8.0.4.
* gnu/packages/pantheon.scm (pantheon-screenshot): Update to 8.0.4.
[arguments]<#:phases>: In install-symlinks phase, remove lambda arguments.

Change-Id: I35cda915a07676a4268f09f416360ede0303a843
2026-05-07 00:28:31 +05:30
Sughosha 6e0addaab7 gnu: pantheon-photos: Update to 8.0.1.
* gnu/packages/pantheon.scm (pantheon-photos): Update to 8.0.1.
[arguments]<#:phases>: Remove disable-schema-cache-generation phase. Add
disable-icon-cache phase. In install-symlinks phase, remove lambda arguments.

Change-Id: I818e044d0b95ccd566ba54327b483af72f76f8dc
2026-05-07 00:28:31 +05:30
Sughosha e712542373 gnu: pantheon-icons: Update to 8.2.0.
* gnu/packages/pantheon.scm (pantheon-icons): Update to 8.2.0.
[inputs]: Remove hicolor-icon-theme; add adwaita-icon-theme.

Change-Id: Ic02324b8366177d593459463352e82939ae0ba86
2026-05-07 00:28:31 +05:30
Sughosha 265b95ec9c gnu: pantheon-calendar: Update to 8.0.1.
* gnu/packages/pantheon.scm (pantheon-calendar): Update to 8.0.1.
[arguments]<#:phases>: Remove set-environment-variables phase. Add
disable-icon-cache phase. In install-symlinks phase, remove lambda arguments.

Change-Id: I726b6fbb8f557498a4e25598c0402b023abab792
2026-05-07 00:28:31 +05:30
Sughosha d884f509f8 gnu: pantheon-calculator: Update to 8.0.1.
* gnu/packages/pantheon.scm (pantheon-calculator): Update to 8.0.1.

Change-Id: Ie42c141450ba91db8091d58da4c1aa1f110894b2
2026-05-07 00:28:31 +05:30
Sughosha 17eaf9a444 gnu: granite: Update to 7.8.1.
* gnu/packages/pantheon.scm (granite): Update to 7.8.1.
[arguments]: Switch to gexp.
<#:configure-flags>: Disable demo.
<#:phases>: In disable-icon-cache phase, substitute meson.build instead of
setting DESTDIR.
(granite-6)[arguments]: Substitute keyword arguments from the inherited
package.

Change-Id: I5e2f024a480474f13fc1ca270abb7eff15acae21
2026-05-07 00:28:30 +05:30
jgart e018ecb458 gnu: trealla: Update to 2.95.12.
* gnu/packages/prolog.scm (trealla): Update to 2.95.12.

Change-Id: Icede34dfb114d8c4d28da4aff80e68e537d0c448
2026-05-06 10:21:12 -04:00
Giacomo Leidi 126a51d0e5 gnu: Add fwupd-service-type.
* gnu/services/firmware.scm: New file.
(fwupd-configuration): New configuration record.
(fwupd-service-type): New service type.
* gnu/local.mk: Add it.
* doc/guix.texi: Document it.

Change-Id: Ibea27566d6ae64ccfdfdd2750be006df1ffde22d
Signed-off-by: Sughosha <sughosha@disroot.org>
Merges: guix/guix!5409
2026-05-06 19:41:09 +05:30
Andrew Stubbs 04b1cac9b7 gnu: fish: Update to 4.7.0.
* gnu/packages/shells.scm (fish): Update to 4.7.0.
[arguments]: Add some test fixups.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[fish]: Update crates.

Change-Id: If2f10422ac1069037f3e4e5ce346cdb1fe21667b
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-06 16:26:56 +03:00
Ashish SHUKLA 1b3e7af0d7 gnu: mold: Update to 2.41.0
* gnu/packages/mold.scm (mold): Update to 2.41.0.
[source]<snippet>: Unbundle blake3.
[inputs]: Add libblake3.

Change-Id: I4ba3e3ebba6a8f6fd18cb5d44093c95010e6781a
Signed-off-by: Sughosha <sughosha@disroot.org>
2026-05-06 18:46:37 +05:30
Roman Scherer 26e42c6c26 gnu: websocketpp-next: Register missing patch in local.mk.
This is a follow-up to f3fcd66878.

* gnu/local.mk (dist_patch_DATA): Register websocketpp-boost-compat.patch.

Change-Id: I3cb1c4844c71dba637fd4ce1f04a4961332de51a
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:37:33 +02:00
Roman Scherer fc34e4ff12 gnu: obs-advanced-masks: Register missing patch in local.mk.
This is a follow-up to 655abc9436.

* gnu/local.mk (dist_patch_DATA): Register
obs-advanced-masks-nlohmann-json.patch.

Change-Id: Ib61dc33145db7aeaabd5c61d276a63c329083361
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:37:33 +02:00
Roman Scherer ed6dc37044 gnu: netbeans: Register missing patch in local.mk.
This is a follow-up to 853d0baf9c.

* gnu/local.mk (dist_patch_DATA): Register
netbeans-25-wayland-font-rendering.patch.

Change-Id: I30622487f5b915baed970b4d1bedfbd41e8ac5df
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:37:33 +02:00
Roman Scherer e0431c7d7c gnu: jami: Register missing patch in local.mk.
This is a follow-up to 3b8d7b10ae.

* gnu/local.mk (dist_patch_DATA): Register jami-libjami-cmake.patch.

Change-Id: I77fdd228d7919985d073d8921551c61b99288438
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:37:33 +02:00
Roman Scherer 5bb48ad74b gnu: glycin-loaders: Register missing patch in local.mk.
This is a follow-up to 08a9f8941f.

* gnu/local.mk (dist_patch_DATA): Register
glycin-sandbox-Adapt-bwrap-invocation.patch.

Change-Id: Iae0ed74ce78d6bbb92933920ab7321cca6634c77
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:37:33 +02:00
André Batista 4ec740ec18 gnu: ungoogled-chromium: Fix performance regression.
Fix performance regression introduced by
10ea4f874e, which added
ungoogled-chromium-custom-compiler.patch.  This patch was taken from gentoo and
fixes some build failures when using our system toolchain.  However it also
removes build optimizations which we rely on, so here we adjust it to our needs.

* gnu/packages/patches/ungoogled-chromium-custom-compiler.patch: Don't patch
the optimized configuration away.
* gnu/packages/chromium.scm (%preserved-third-party-files): Remove
base/third_party/nspr, buildtools/third_party/libc++,
buildtools/third_party/libc++abi, third_party/libc++,
third_party/llvm-libc and third_party/llvm-libc/src/shared, we don't need them.
[arguments] <#:phases> {install}: Include libvulkan.so.1 to installed libs.
Add a semicolon to @@uri_scheme substitution to avoid future surprises if this
ever moves from being the last item in list.

Fixes: guix/guix#7738
Change-Id: I331908ebf0838b7fc2d567e9c429d861e882470d
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-06 13:30:41 +02:00
宋文武 81934cf7e9 gnu: Add 9pfs.
* gnu/packages/plan9.scm (9pfs): New variable.

Merges guix/guix!8287

Change-Id: Ic0d4f1d8f981cbb0a2ac65d6a0fd9dad1dae5649
2026-05-06 17:00:44 +08:00
Foster Hangdaan 34bc468f33 gnu: font-mona-sans: Update to 2.0.23.
* gnu/packages/fonts.scm (font-mona-sans): Update to 2.0.23.

Merges guix/guix!8280
Change-Id: I2c4017e098fdf4b5cdb5b46e7bb8875dc0c9989d
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2026-05-06 16:59:50 +08:00
Ricardo Wurmus d066971753 import/cran: Fail gracefully if HEAD is not supported.
* guix/import/cran.scm (description->package): Ignore failure when
SOURCE-SIZE-TOO-BIG? raises an exception.

Change-Id: I986ad51f26b705d5efcac083984fdec478234683
2026-05-06 08:57:04 +02:00
Edouard Klein 16f9d0985f services: libvirt: Add Shepherd reload action.
* gnu/services/virtualization.scm (libvirt-shepherd-service):
  Add a reload action that sends SIGHUP to libvirtd.

Change-Id: Ie424dcc45dc0e93a979a0a8b7e680c28bf4ea387
Merges: https://codeberg.org/guix/guix/pulls/8204
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 15:42:59 +09:00
Ashish SHUKLA 8f1f7b614a gnu: got: Update to 0.124
* gnu/packages/version-control.scm (got): Update to 0.124.

Change-Id: Ic3f510b42fffbf07bc72b32add4641687b4c1390
Merges: https://codeberg.org/guix/guix/pulls/7931
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 15:26:00 +09:00
Efraim Flashner fdcfe68021 gnu: python: Skip a test on powerpc-linux.
* gnu/packages/python.scm (python-3.11)[arguments]: Skip a test when
building for powerpc-linux.

Change-Id: Ic60ff6726c5ea24ea3d271c3008bdd29df05edc2
2026-05-06 08:14:53 +03:00
Igorj Gorjaĉev 9749500d75 gnu: Add janet-spork.
* gnu/packages/lisp.scm (janet-spork): New variable.

Change-Id: I0dfe7841d0c6eebefb1b4561d9149ef6d73cc231
Merges: https://codeberg.org/guix/guix/pulls/8172
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 11:37:33 +09:00
Igorj Gorjaĉev 85ce0f1fbb gnu: janet: Support JANET_PATH.
* gnu/packages/lisp.scm (janet): Support JANET_PATH.
  [native-search-paths]: Add JANET_PATH search path.
  [#:make-flags]: Use PREFIX instead of DESTDIR.

Change-Id: I4e6d621c5a5bc33851041cd37381db963abde1d2
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 11:31:53 +09:00
Ashish SHUKLA 96195363d9 gnu: dhcpcd: Update to 10.3.2
* gnu/packages/admin.scm (dhcpcd): Update to 10.3.2.

Change-Id: I261e7c110422c84a129d0c3cc99284945998db1b
Merges: https://codeberg.org/guix/guix/pulls/8314
Reviewed-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 10:54:30 +09:00
Simen Endsjø 87cc50cf07 gnu: sbcl-trivial-backtrace: Circumvent compile time check.
* gnu/packages/lisp-xyz.scm (sbcl-trivial-backtrace): Circumvent compile time check.
[arguments]: Add circumvent-compile-time-check.

Change-Id: I777ce20bb921a2fa56c39ca807e0e5e333dc7444
Signed-off-by: jgart <jgart@dismail.de>
2026-05-05 21:41:25 -04:00
Giacomo Leidi f3bb486988 gnu: Add guile-arguments.
* gnu/packages/guile-xyz.scm (guile-arguments): New variable.

Change-Id: I4ebb7bc4cd9f4b098c190b32b7a9a3ca3c767261
2026-05-06 02:08:57 +02:00
Maxim Cournoyer f321a1b7de gnu: guile-3.0: Fix indentation.
* gnu/packages/guile.scm (guile-3.0): Fix indentation.

Change-Id: I7cfe56fda99655ec88f3fc58c35f3ab3725f5a43
2026-05-06 08:39:51 +09:00
Patrick Norton d304eecf24 gnu: valgrind: Update to 3.27.0.
* gnu/packages/valgrind.scm (valgrind): Update to 3.27.0.

Change-Id: Ic1c8078c995ce641cba0bc05e4661c8b588044e5
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 23:06:55 +02:00
Andreas Enge 1da8972e11 gnu: restbed: Fix build.
* gnu/packages/networking.scm (restbed)[inputs]: Replace asio by asio-1.28.

Change-Id: I19c9bb34a9c0bb22df82b8a45a243a9ec5c61cd9
2026-05-05 22:44:41 +02:00
Daniel Fahey 20b9a9ed98 gnu: Remove attention.
The upstream ECAN (Economic Attention Allocation) subsystem has been
abandoned. The AttentionValue type was removed from AtomSpace (Dec 2025;
<https://wiki.opencog.org/w/AttentionValue>) and the subsystem declared
obsolete with "the code for it no longer exists" (Oct 2025;
<https://wiki.opencog.org/w/Economic_attention_allocation_(Obsolete)>).

* gnu/packages/opencog.scm (attention): Delete variable.

Fixes: guix/guix#4615
Change-Id: I52d049f9c652ef23eb4436e40b3e56bda3e5c9d7
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 20:13:49 +02:00
Daniel Fahey f215a51317 gnu: Remove opencog.
The upstream repo is no longer maintained. The README states "This repo
is no longer maintained!" and "Obsolete! As of 2021, the most
interesting and actively maintained parts of this git repo have been
split off into their own distinct git repos" (commit 77db0f03, 2023).
Individual components (atomspace, cogserver, etc.) are packaged
separately. The opencog meta-package also depends on the removed
attention package.

* gnu/packages/opencog.scm (opencog): Delete variable.

Change-Id: I97b3c9cf7d97bd2951b9223ce11f6d96f04a58e0
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 20:00:09 +02:00
Daniel Fahey facddec38e gnu: cogserver: Update to 0-3.3c4da0b.
* gnu/packages/opencog.scm (cogserver)[source]: Update to 0-3.3c4da0b.
[inputs]: Switch from guile-2.2 to guile-3.0.latest. Add asio,
atomspace-storage, jsoncpp, and openssl.
[native-inputs]: Switch from python-minimal to python. Add netcat-openbsd
and python-cython.
[arguments]<#:tests?>: Set to #f.
<#:configure-flags>: Add SKIP_LDCONF, GUILE_CCACHE_DIR, and
PYTHON_INSTALL_PREFIX. Update Guile paths from 2.2 to 3.0.

Change-Id: I117368247778d19ebc286a5bdd3cebcfc0d5809c
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 19:56:35 +02:00
Daniel Fahey e965869895 gnu: agi-bio: Update to 0-2.2f723ad.
* gnu/packages/opencog.scm (agi-bio)[source]: Update to 0-2.2f723ad.
[inputs]: Switch from guile-2.2 to guile-3.0-latest.
[arguments]<#:configure-flags>: Update Guile paths from 2.2 to 3.0.
[arguments]<#Lphases>{fix-unqualified-load}: Update Guile load path
from 2.2 to 3.0.

Change-Id: I98223dc4f1a241049e5613156fe77bfc8399048b
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 19:01:26 +02:00
Daniel Fahey f528be103a gnu: Add atomspace-storage.
* gnu/packages/opencog.scm (atomspace-storage): New variable.

Assisted-by: Syzygy(mptmrrwl)/OpenCode(1.14.30):zai-coding-plan/glm-5.1
Change-Id: I9a37af1ca7752e9e2f35dcc714c0d84c9b75f1ff
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 18:59:39 +02:00
Daniel Fahey 428080e755 gnu: atomspace: Update to 5.0.3-2.c8d633b.
* gnu/packages/opencog.scm (atomspace)[source]: Update to 5.0.3-2.c8d633b.
[inputs]: Switch from guile-2.2 to guile-3.0-latest.
[native-inputs]: Add python-cython.
[arguments]<#:configure-flags>: Add SKIP_LDCONF, GUILE_CCACHE_DIR, and
PYTHON_INSTALL_PREFIX.

Change-Id: I88d74868b92e2fb4fd9418a2ec209048420e3c04
2026-05-05 18:56:34 +02:00
Daniel Fahey db597f0573 gnu: cogutil: Update to 2.0.3-2.64dca90.
* gnu/packages/opencog.scm (cogutil)[source]: Update to 2.0.3-2.64dca90.
[inputs]: Switch from boost-1.83 to boost.
[arguments]<#:configure-flags>: Add -DSKIP_LDCONF=ON.

Change-Id: I55c864a385df6c90b21ba1a07a82ffbcfebe4ed4
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-05 18:53:35 +02:00
Ashish SHUKLA 738ce4385b gnu: unbound: Update to 1.25.0
* gnu/packages/dns.scm (unbound): Update to 1.25.0.

Change-Id: Ie592a52e8504931163ca54e42615350dfc1b7264
Merges: https://codeberg.org/guix/guix/pulls/8223
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 00:48:38 +09:00
119 changed files with 20652 additions and 3750 deletions
+41 -23
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2022 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Florian Pelz <pelzflorian@pelzflorian.de>
@@ -324,17 +324,31 @@ actual file name."
((('span ('@ ('class "category")) ;raw Texinfo 6.8
(? string-or-entity?) ...) rest ...)
#t)
((('span ('@ ('class "symbol-definition-category"))
(? string-or-entity?) ...) rest ...)
((('span ;Texinfo 6, post-processed
('@ ('class "symbol-definition-category"))
(? string-or-entity?) ...) rest ...)
#t)
((('span ;Texinfo 7
('@ ('class "category-def")) _ ...)
('span ('strong ('@ ('class "def-name")) _ ...)
_ ...)
rest ...)
#t)
(x
#f))))
(define (definition-class? class)
;; Return true for "deffn def-line", "deftp def-line", etc.
(string-suffix? " def-line" class))
(let ((shtml (call-with-input-file file html->shtml)))
(let loop ((shtml shtml)
(anchors anchors))
(match shtml
(('dt ('@ ('id id) _ ...) rest ...)
((or ('dt ('@ ('id id) _ ...) rest ...) ;Texinfo 6
('dt ('@ ('class (? definition-class?)) ;Texinfo 7
('id id))
rest ...))
(if (and (string-prefix? "index-" id)
(worthy-entry? rest))
(alist-cons (anchor-id->key id)
@@ -505,10 +519,16 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(loop rest (cons str strings)))
((('*ENTITY* "additional" entity) . rest)
(loop rest (cons (entity->string entity) strings)))
((('*ENTITY* "additional-char" entity) . rest)
(loop rest (cons (string
(integer->char (string->number entity)))
strings)))
((('span _ lst ...) . rest) ;for <span class="roman">
(loop (append lst rest) strings))
((('var name) . rest) ;for @var{name} within @lisp
((('var ('@ _) name) . rest) ;for @var{name} within @lisp
(loop rest (cons name strings))) ;XXX: losing formatting
((('var name) . rest) ;likewise (Texinfo 6)
(loop rest (cons name strings)))
(something
(pk 'unsupported-code-snippet something)
(primitive-exit 1)))))
@@ -537,7 +557,10 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(link (@ (rel "stylesheet")
(type "text/css")
(href #$syntax-css-url)))))
(('pre ('@ ('class "lisp")) code-snippet ...)
((or ('pre ('@ ('class "lisp")) ;Texinfo 6
code-snippet ...)
('pre ('@ ('class "lisp-preformatted"))
code-snippet ...))
`(pre (@ (class "lisp"))
,@(highlights->sxml*
(pair-open/close
@@ -545,14 +568,16 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
(concatenate-snippets code-snippet)))
anchors)))
;; Replace the ugly <strong> used for @deffn etc., which
;; translate to <dt>, with more stylable markup.
;; For Texinfo 6: Replace the ugly <strong> used for @deffn
;; etc., which translate to <dt>, with more stylable
;; markup. No such post-processing is needed for @deffn
;; with Texinfo 7.
(('dt ('@ ('id id)) ;raw Texinfo 6.8
('span ('@ ('class "category")) category ...)
('span ('strong thing)
anchor))
(highlight-definition id category thing '()))
(('dt (@ ('id id))
(('dt ('@ ('id id)) ;ditto
('span ('@ ('class "category")) category ...)
('span ('strong thing)
(? space?) ('em args ...)
@@ -808,16 +833,9 @@ in SOURCE."
(match sxml
(('*TOP* decl body ...)
`(*TOP* ,decl ,@(map loop body)))
(('head elements ...)
;; Add reference to our own manual CSS, which provides
;; support for the language menu.
`(head ,@elements
(link (@ (rel "stylesheet")
(type "text/css")
(href #$manual-css-url)))))
(('body ('@ attributes ...) elements ...)
`(body (@ ,@attributes)
,(navigation-bar
((or ('body ('@ _) elements ...)
('body elements ...))
`(body ,(navigation-bar
;; TODO: Add "Contribute" menu, to report
;; errors, etc.
(list (menu-dropdown
@@ -952,12 +970,12 @@ makeinfo OPTIONS."
(mkdir-p (string-append #$output "/"
(normalize language)))
(setenv "LANGUAGE" language)
(apply invoke #$(file-append texinfo "/bin/makeinfo")
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
"-o" (string-append #$output "/"
(normalize language)
"/html_node")
opts)
(apply invoke #$(file-append texinfo "/bin/makeinfo")
(apply invoke #$(file-append texinfo-7 "/bin/makeinfo")
"--no-split"
"-o"
(string-append #$output "/"
@@ -1409,7 +1427,7 @@ commit date (an integer)."
(string-append #+tar "/bin:"
#+xz "/bin:"
#+zstd "/bin:"
#+texinfo "/bin"))
#+texinfo-7 "/bin"))
(invoke "tar" "xf" #$(package-source guile))
(mkdir-p (string-append #$output "/en/html_node"))
@@ -1428,7 +1446,7 @@ commit date (an integer)."
(string-append #$output "/en/html_node")))))))))
(define %guile-manual-base-url
"https://www.gnu.org/software/guile/manual")
"https://doc.guix.gnu.org/guile/latest/en")
(define (for-all-languages index)
(map (lambda (language)
+265 -59
View File
@@ -4780,14 +4780,91 @@ These options are provided for convenience, but you can also specify your
configuration in the @file{~/.config/guix/channels.scm} file or using the
@option{--channels} option (see below).
@item --channels=@var{file}
@itemx -C @var{file}
Read the list of channels from @var{file} instead of
@item --channels=@var{file-or-uri}
@itemx -C @var{file-or-uri}
Read the list of channels from @var{file-or-uri} instead of
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
@var{file} must contain Scheme code that
@var{file-or-uri} must contain Scheme code that
evaluates to a list of channel objects. @xref{Channels}, for more
information.
As you can guess, @var{file-or-uri} can be a URL, in which case the
given channels file is transparently downloaded. In the example below,
we pull from the latest revision of Guix that was successfully
evaluated:
@example
guix pull \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
@cindex SWHID, for channel files
Alternatively, you can refer to a channel file by its
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
uniquely and unambiguously identifies contents, as in this example:
@example
guix pull \
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b
@end example
This command downloads the data designated by the given identifier from
@uref{https://archive.softwareheritage.org, the Software Heritage
archive}.
@anchor{trusted-channels}
@cindex trusted channels, for downloaded channel files
In both cases, the command errors out if the returned channels are not
among the user's @dfn{trusted channels}, defined as:
@itemize
@item
the channels returned by @file{~/.config/guix/trusted-channels.scm},
which has the same format as any channel file;
@item
or, if the above file doesn't exist, the currently-used channels as
returned by @command{guix describe}.
@end itemize
@item --allow-untrusted-channels[=yes|no]
Whether to allow pulls from untrusted channels.
By default, @command{guix pull} aborts when downloading a channel file
that specifies an untrusted channel and merely warns if the list of
channels comes from a local file. This option allows you to change
that.
@quotation Warning
Allowing untrusted channels can effectively lead to arbitrary code
execution on your system.
@end quotation
@anchor{unsafe-channel-evaluation}
@item --unsafe-channel-evaluation
Allow arbitrary code execution from channel files, both the default
@file{channels.scm} files and those passed with @option{--channels} as
mentioned above.
@cindex sandboxing, of channel evaluation
By default, channel files are evaluated in an isolated ``sandbox''
where only trivial declarative code returning a list of channels is
allowed---calls to procedures such as @code{list}, @code{cons},
@code{string-append}, as well as the @code{channel} constructor.
Attempts from a channel file to access unauthorized bindings such as
@code{system} (to run shell code) or to use additional modules with
@code{use-modules} are impossible.
The @option{--unsafe-channel-evaluation} option disables these
safeguards.
@quotation Warning
When using @code{--unsafe-channel-evaluation}, channel files can
@emph{run arbitrary code on your machine}. While this is useful in some
cases, only use @code{--unsafe-channel-evaluation} when you fully
understand the code of the channel files you use!
@end quotation
@item --no-channel-files
@itemx -q
Inhibit loading of the user and system channel files,
@@ -5029,12 +5106,68 @@ Use the @code{guix} channel from the specified @var{url}, at the
given @var{commit} (a valid Git commit ID represented as a hexadecimal
string or the name of a tag), or @var{branch}.
@item --channels=@var{file}
@itemx -C @var{file}
Read the list of channels from @var{file}. @var{file} must contain
Scheme code that evaluates to a list of channel objects.
@item --channels=@var{file-or-uri}
@itemx -C @var{file-or-uri}
Read the list of channels from @var{file-or-uri}. @var{file-or-uri}
must contain Scheme code that evaluates to a list of channel objects.
@xref{Channels} for more information.
When @var{file-or-uri} is a URL, channels are transparently downloaded.
In the example below, we pull from the latest revision of Guix that was
successfully evaluated:
@example
guix time-machine \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master \
-- describe
@end example
@cindex SWHID, for channel files
Note that downloading a channel file potentially harms reproducibility:
the file might vanish or be modified on the server behind your back.
From a reproducibility viewpoint the safe approach is to keep channel
files under version control, or to refer to them by their
@uref{https://swhid.org,Software Hash Identifier}, or SWHID, which
uniquely and unambiguously identifies contents. Here is an example:
@example
guix time-machine \
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \
-- @dots{}
@end example
This command downloads the data designated by the identifier from
@uref{https://archive.softwareheritage.org, the Software Heritage
archive}; it is fully reproducible because the data it refers to is
immutable.
@xref{Invoking guix pull}, for more information, and @pxref{Invoking
guix hash}, for info on how to compute the SWHID of a file.
@item --allow-untrusted-channels[=yes|no]
Whether to allow pulls from untrusted channels.
@quotation Warning
Allowing untrusted channels can effectively lead to arbitrary code
execution on your system.
@end quotation
@xref{trusted-channels, @command{guix pull} documentation}, for more
info.
@item --unsafe-channel-evaluation
Allow arbitrary code execution from channels files.
@quotation Warning
When using @code{--unsafe-channel-evaluation}, channel files can
@emph{run arbitrary code on your machine}. Only use
@code{--unsafe-channel-evaluation} when you fully understand the code of
the channel files you use!
@xref{unsafe-channel-evaluation, @option{--unsafe-channel-evaluation} in
@command{guix pull}}, for background information.
@end quotation
@item --no-channel-files
@itemx -q
Inhibit loading of the user and system channel files,
@@ -5763,6 +5896,7 @@ pull} uses the latest commit with available substitutes for the package
definitions: this is done by querying the continuous integration
server at @url{https://ci.guix.gnu.org}.
@findex channel-with-substitutes-available
@lisp
(use-modules (guix ci))
@@ -5777,6 +5911,21 @@ substitutes. It only ensures that @command{guix pull} will not try to
compile package definitions. This is particularly useful when using
machines with limited resources.
@quotation Warning
Use of this functionality in your channel file requires it to be
evaluated in ``unsafe'' mode, with the
@option{--unsafe-channel-evaluation} option.
@xref{unsafe-channel-evaluation, the @command{guix pull} documentation},
for more info.
However, a similar result can be achieved by running, say:
@example
guix pull \
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
@end quotation
@node Creating a Channel
@section Creating a Channel
@@ -14686,8 +14835,32 @@ guix hash @var{option} @var{file} ...
@end example
When @var{file} is @code{-} (a hyphen), @command{guix hash} computes the
hash of data read from standard input. @command{guix hash} has the
following options:
hash of data read from standard input.
Here are a few examples:
@table @asis
@item SHA256 of a file for use in an @code{origin} record:
@example
guix hash example.tar.gz
@end example
@item SHA256 of directory @var{checkout} for use in an @code{origin} record:
@example
guix hash -rx @var{checkout}
@end example
@item SHA1 hash of @var{file} like the @code{sha1sum} command:
@example
guix hash -H sha1 -f hex @var{file}
@end example
@cindex SWHID, computing
@item SHA1 hash of @var{file} for a @code{swh:1:cnt} @uref{https://swhid.org, SWHID}:
guix hash -S git -H sha1 -f hex @var{file}
@end table
@command{guix hash} has the following options:
@table @code
@@ -15994,51 +16167,10 @@ Use @var{host} as the OpenPGP key server when importing a public key.
@cindex format conventions
The @command{guix style} command helps users and packagers alike style
their package definitions and configuration files according to the
latest fashionable trends. It can either reformat whole files, with the
@option{--whole-file} option, or apply specific @dfn{styling rules} to
individual package definitions. The command currently provides the
following styling rules:
@itemize
@item
formatting package definitions according to the project's conventions
(@pxref{Formatting Code});
@item
rewriting package inputs to the ``new style'', as explained below.
@end itemize
The way package inputs are written is going through a transition
(@pxref{package Reference}, for more on package inputs). Until version
1.3.0, package inputs were written using the ``old style'', where each
input was given an explicit label, most of the time the package name:
@lisp
(package
;; @dots{}
;; The "old style" (deprecated).
(inputs `(("libunistring" ,libunistring)
("libffi" ,libffi))))
@end lisp
Today, the old style is deprecated and the preferred style looks like
this:
@lisp
(package
;; @dots{}
;; The "new style".
(inputs (list libunistring libffi)))
@end lisp
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
Package Variants}, for more info on @code{modify-inputs}).
In the vast majority of cases, this is a purely mechanical change on the
surface syntax that does not even incur a package rebuild. Running
@command{guix style -S inputs} can do that for you, whether you're working on
packages in Guix proper or in an external channel.
latest fashionable trends, or patch them with specific rewrites. It can
either reformat whole files, with the @option{--whole-file} option, or
apply specific @dfn{styling rules} to individual package definitions.
The command provides multiple styling rules, explained below.
The general syntax is:
@@ -16101,14 +16233,45 @@ definition of the Coreutils package like so:
@end example
@item inputs
Rewrite package inputs to the ``new style'', as described above. This
is how you would rewrite inputs of package @code{whatnot} in your own
channel:
Rewrite package inputs to the ``new style''. This is how you would
rewrite inputs of package @code{whatnot} in your own channel:
@example
guix style -L ~/my/channel -S inputs whatnot
@end example
The way package inputs are written is going through a transition
(@pxref{package Reference}, for more on package inputs). Until version
1.3.0, package inputs were written using the ``old style'', where each
input was given an explicit label, most of the time the package name:
@lisp
(package
;; @dots{}
;; The "old style" (deprecated).
(inputs `(("libunistring" ,libunistring)
("libffi" ,libffi))))
@end lisp
Today, the old style is deprecated and the preferred style looks like
this:
@lisp
(package
;; @dots{}
;; The "new style".
(inputs (list libunistring libffi)))
@end lisp
Likewise, uses of @code{alist-delete} and friends to manipulate inputs
is now deprecated in favor of @code{modify-inputs} (@pxref{Defining
Package Variants}, for more info on @code{modify-inputs}).
In the vast majority of cases, this is a purely mechanical change on the
surface syntax that does not even incur a package rebuild. Running
@command{guix style -S inputs} can do that for you, whether you're working on
packages in Guix proper or in an external channel.
Rewriting is done in a conservative way: preserving comments and bailing
out if it cannot make sense of the code that appears in an inputs field.
The @option{--input-simplification} option described below provides
@@ -16147,6 +16310,29 @@ rebuild of the affected packages. Furthermore, if a package definition
happens to be using G-expressions already, @command{guix style} leaves
it unchanged.
@item remove-input
@itemx remove-native-input
@itemx remove-propagated-input
These styling rules remove an input from the given package(s).
Removing these packages respects the package syntax, doesn't affect
margin comments or parentheses, and will put all remaining inputs on a
single line if there are less than three.
This is a focused styling rule for use in teams, when updating
build-systems, or removing unwanted development inputs from
native-inputs.
To remove package @var{whatnot} from all inputs, use the
@code{--parameter} option:
@example
guix style -S remove-input --parameter=@var{whatnot}
@end example
It is also possible to do that for a collection of packages by appending
them to the above invocation.
@item git-source
If the @code{home-page} is a Git repository (as per
@code{git-repository-url?}), and the actual Git repository is tagged
@@ -46226,6 +46412,26 @@ up not being used much for the reasons described there.
@end deftp
@end defvar
@cindex fwupd
@cindex firmware update
@subsubheading fwupd Service
@defvar fwupd-service-type
This service allows users of supported hardware to update their firmware. The
service's value is a @code{fwupd-configuration} record.
@deftp {Data Type} fwupd-configuration
This is the data type representing the configuration for the fwupd
service.
@table @asis
@item @code{fwupd} (default @code{fwupd})
The fwupd package that will be installed in the system profile.
@end table
@end deftp
@end defvar
@node Hurd Services
@subsection Hurd Services
@@ -51284,7 +51490,7 @@ after receiving @code{SIGHUP}.
After adding
@lisp
(shepherd-signal-action 'reload SIGHUP))
(shepherd-signal-action 'reload SIGHUP)
@end lisp
the @code{reload} action will be available and can be used with
+66
View File
@@ -43,6 +43,72 @@
(channel-news
(version 0)
(entry (commit "c9dcd203e5356f13b736d5be121fd61874be1a93")
(title
(en "@command{pull} and @command{time-machine} can download channel
files")
(fr "@command{pull} et @command{time-machine} peuvent télécharger des
fichiers canaux"))
(body
(en "The @command{guix pull} and @command{guix time-machine} can now
be passed a URL as their @option{-C} (or @option{--channels}) option. For
instance, the command below pulls from the latest successfully-evaluated
commit of the @code{master} branch:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Alternatively, one may also specify a @uref{https://swhid.org, SWHID} that
points to a channel file:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
To make that possible, channel files are now evaluated in an isolated
environment (a @dfn{sandbox}), which prevents them from evaluating arbitrary
code; if you have existing channel files that rely on \"non-standard\"
features, you may now need to pass @option{--unsafe-channel-evaluation} to
evaluate them. Furthermore, when fetching channels from a downloaded file,
only @dfn{trusted channels} are allowed---one may specify them in
@file{~/.config/guix/trusted-channels.scm}.
See @samp{info \"(guix)Invoking guix pull\"} for more information.")
(fr "Les commandes @command{guix pull} et @command{guix time-machine}
peuvent dorénavant prendre une URL pour l'option @option{-C} (ou
@option{--channels}). Par exemple, la commande ci-dessous tire la dernière
révision de la branch @code{master} à avoir été évaluée avec succès:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
On peut également spécifier un @uref{https://swhid.org, SWHID} qui pointe vers
un fichier canaux:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Pour permettre cela, les fichiers canaux sont maintenant évalués dans un
environnement isolé (un @dfn{bac à sable}), ce qui les empêche d'évaluer du
code arbitraire; lorsqu'on a des fichiers canaux qui dépendent de
fonctionnalités «non standard», il peut dorénavant être nécessaire de passer
l'option @option{--unsafe-channel-evaluation} pour les évaluer. De plus,
lorsqu'un fichier canaux est téléchargé, seuls les @dfn{canaux de confiance}
sont admis---on peut les énumérer dans
@file{~/.config/guix/trusted-channels.scm}.
Voir @samp{info \"(guix.fr) Invoquer guix pull\"} pour plus
d'informations.")))
(entry (commit "a7c8e68dc51144a6d3981b770aca9c4897fc7c0c")
(title
(en "Records can refer to inherited values of thunked fields")
+5
View File
@@ -1666,6 +1666,11 @@ the \"texlive\" importer."
"gemmaro")
ruby)
(define-member (person "bdunahu"
"bdunahu@operationnull.com"
"bdunahu")
games)
(define (find-team name)
(or (hash-ref %teams (string->symbol name))
+2
View File
@@ -446,9 +446,11 @@ when booting a root file system on a Btrfs subvolume."
(modules (menu-entry-multiboot-modules entry)))
#~(format port "
menuentry ~s {
~a
multiboot ~a root=~a~a~a
}~%"
#$label
#$(grub-root-search device kernel)
#$kernel
#$(device-name->hurd-device-name device-name #:disk disk)
(string-join (list #$@arguments) " " 'prefix)
+14 -12
View File
@@ -756,6 +756,7 @@ GNU_SYSTEM_MODULES = \
%D%/services/docker.scm \
%D%/services/authentication.scm \
%D%/services/file-sharing.scm \
%D%/services/firmware.scm \
%D%/services/games.scm \
%D%/services/ganeti.scm \
%D%/services/getmail.scm \
@@ -1168,7 +1169,6 @@ dist_patch_DATA = \
%D%/packages/patches/cryfs-boost-1.89-fix.patch \
%D%/packages/patches/csvkit-set-locale-for-tests.patch \
%D%/packages/patches/ctranslate2-local-build.patch \
%D%/packages/patches/ctune-cmake-disable-git-clone.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/cups-relax-root-ownership-check.patch \
%D%/packages/patches/cura-engine-gcc-14.patch \
@@ -1179,8 +1179,6 @@ dist_patch_DATA = \
%D%/packages/patches/curlftpfs-fix-memory-leak.patch \
%D%/packages/patches/curlftpfs-fix-no_verify_hostname.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvc5-reproducible-build.patch \
%D%/packages/patches/cvc5-symfpu-compatibility.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/cyrus-sasl-fix-time-h.patch \
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
@@ -1201,6 +1199,7 @@ dist_patch_DATA = \
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
%D%/packages/patches/django-compressor-build-with-beautifulsoup-4.14+.patch \
%D%/packages/patches/dkimproxy-add-ipv6-support.patch \
%D%/packages/patches/dmd-hurd.patch \
%D%/packages/patches/doc++-gcc-14.patch \
%D%/packages/patches/docbook-utils-documentation-edits.patch \
%D%/packages/patches/docbook-utils-escape-characters.patch \
@@ -1377,6 +1376,8 @@ dist_patch_DATA = \
%D%/packages/patches/ganeti-template-haskell-2.17.patch \
%D%/packages/patches/ganeti-template-haskell-2.18.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gdc-11-druntime-hurd.patch \
%D%/packages/patches/gdc-14-druntime-hurd.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
%D%/packages/patches/gcc-asan-missing-include.patch \
@@ -1426,6 +1427,7 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-11-libstdc++-hurd-libpthread.patch \
%D%/packages/patches/gcc-12-cross-environment-variables.patch \
%D%/packages/patches/gcc-11-libstdc++-powerpc.patch \
%D%/packages/patches/gcc-11-x86_64-gnu.patch \
%D%/packages/patches/gcc-13-cross-system-header-dir.patch \
%D%/packages/patches/gcc-12-libsanitizer-no-crypt.patch \
%D%/packages/patches/gcc-13-libsanitizer-no-crypt.patch \
@@ -1515,6 +1517,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glycin-sandbox-Adapt-bwrap-invocation.patch \
%D%/packages/patches/gmime-disable-tests.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
@@ -1588,11 +1591,8 @@ dist_patch_DATA = \
%D%/packages/patches/gtk2-theme-paths.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk3-treeview-test-fix.patch \
%D%/packages/patches/gtk-doc-respect-xml-catalog.patch \
%D%/packages/patches/gtk-doc-mkhtml-test-fix.patch \
%D%/packages/patches/gtk4-demo-reproducible.patch \
%D%/packages/patches/gtk4-needs-udmabuf.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 \
@@ -1670,6 +1670,7 @@ dist_patch_DATA = \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/ispell-for-linphone-cmake.patch \
%D%/packages/patches/jami-avutil-link.patch \
%D%/packages/patches/jami-libjami-cmake.patch \
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
@@ -1916,7 +1917,6 @@ dist_patch_DATA = \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
%D%/packages/patches/mono-msbuild-15.7.179-fix-build.patch \
%D%/packages/patches/mono-msbuild-15.7.179-fix-resources.patch \
%D%/packages/patches/mozjs-xp-win.patch \
%D%/packages/patches/libmemcached-build-with-gcc7.patch \
%D%/packages/patches/libmhash-hmac-fix-uaf.patch \
%D%/packages/patches/libmodbus-disable-networking-test.patch \
@@ -1929,8 +1929,6 @@ dist_patch_DATA = \
%D%/packages/patches/mediasdk-gcc-14.patch \
%D%/packages/patches/memtest86+-build-reproducibly.patch \
%D%/packages/patches/mercurial-hg-extension-path.patch \
%D%/packages/patches/meson-keep-rpath-vicinity.patch \
%D%/packages/patches/meson-gir-fallback-path.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/mia-fix-boost-headers.patch \
%D%/packages/patches/mia-gcc11.patch \
@@ -1991,6 +1989,7 @@ dist_patch_DATA = \
%D%/packages/patches/netbeans-25-nativeexecution-paths.patch \
%D%/packages/patches/netbeans-25-terminal-no-login-shell.patch \
%D%/packages/patches/netbeans-25-source-only-build.patch \
%D%/packages/patches/netbeans-25-wayland-font-rendering.patch \
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
%D%/packages/patches/netsurf-message-timestamp.patch \
@@ -2020,6 +2019,7 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/obs-advanced-masks-nlohmann-json.patch \
%D%/packages/patches/obs-modules-location.patch \
%D%/packages/patches/ocaml-ctypes-test-oo.patch \
%D%/packages/patches/ocaml-multiple-definitions.patch \
@@ -2102,6 +2102,7 @@ dist_patch_DATA = \
%D%/packages/patches/pdl-2.100-reproducibility.patch \
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
%D%/packages/patches/pharo-vm-cmake.patch \
%D%/packages/patches/phobos-hurd.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/plasp-fix-normalization.patch \
%D%/packages/patches/plasp-include-iostream.patch \
@@ -2623,9 +2624,10 @@ dist_patch_DATA = \
%D%/packages/patches/wcstools-extend-makefiles.patch \
%D%/packages/patches/wdl-link-libs-and-fix-jnetlib.patch \
%D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \
%D%/packages/patches/webrtc-audio-processing-abseil-cpp.patch \
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
%D%/packages/patches/webrtc-audio-processing-gcc-14.patch \
%D%/packages/patches/webrtc-audio-processing-byte-order-pointer-size.patch \
%D%/packages/patches/webrtc-audio-processing-x86-no-sse.patch \
%D%/packages/patches/websocketpp-boost-compat.patch \
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
%D%/packages/patches/wmctrl-64-fix.patch \
%D%/packages/patches/wmfire-dont-inline-draw-fire.patch \
+2 -2
View File
@@ -1972,7 +1972,7 @@ maintenance releases.")
(define-public dhcpcd
(package
(name "dhcpcd")
(version "10.3.0")
(version "10.3.2")
(source
(origin
(method git-fetch)
@@ -1981,7 +1981,7 @@ maintenance releases.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "058k8wbzbjb6mm6qklv40z1y4k6sdb4ysap1xk6pny1m1f9xkdax"))))
(base32 "1z5rpi0n2vwhkh3c4d0dxwp38fl18br58jpy7kzh97gzg3gpk5dl"))))
(inputs (list bash-minimal coreutils-minimal eudev sed))
(build-system gnu-build-system)
(arguments
+1 -1
View File
@@ -12132,7 +12132,7 @@ It can be used to calculate the trajectory of satellites.")
gtksourceview-4
healpix-cxx
json-glib
lcms
lcms-next
;; XXX: It downloads script and data during start up, check if they
;; may be presented as packages with wrapped environment variables
+22 -6
View File
@@ -11,7 +11,7 @@
;;; Copyright © 20162023 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020, 2024 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 okapi <okapi@firemail.cc>
;;; Copyright © 2018, 2020, 2022-2026 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2018, 2020, 2022-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2018, 2019, 2022 Marius Bakke <marius@gnu.org>
@@ -403,7 +403,7 @@ displays a histogram of the roundtrip time jitter.")
(define-public webrtc-audio-processing
(package
(name "webrtc-audio-processing")
(version "2.1")
(version "1.3")
(source
(origin
(method url-fetch)
@@ -411,14 +411,30 @@ displays a histogram of the roundtrip time jitter.")
(string-append "http://freedesktop.org/software/pulseaudio/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32 "0lrjzhshwj1rkh4fxh7sq2dkkfimlyjs2ha7s3ribsh2dnc6ps1m"))
(patches (search-patches "webrtc-audio-processing-abseil-cpp.patch"
"webrtc-audio-processing-gcc-14.patch"))))
(base32 "0xfvq5lxg612vfzk3zk6896zcb4cgrrb7fq76w9h40magz0jymcm"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags (if (target-x86-32?)
#~(list "-Dc_args=-DPFFFT_SIMD_DISABLE")
#~'())))
#~'())
#:phases
(if (or (target-x86-32?) (target-powerpc?))
#~(modify-phases %standard-phases
(add-after 'unpack 'apply-patches
(lambda _
(define (patch file)
(invoke "patch" "-p1" "--force" "-i" file))
;; https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/5
;; TODO: Move to the 'patches' field of the origin on
;; the next rebuild.
(patch #$(local-file
(search-patch
"webrtc-audio-processing-byte-order-pointer-size.patch")))
(patch #$(local-file
(search-patch
"webrtc-audio-processing-x86-no-sse.patch"))))))
#~%standard-phases)))
(native-inputs (list pkg-config))
(inputs (list abseil-cpp))
(synopsis "WebRTC's Audio Processing Library")
@@ -1989,7 +1989,7 @@ CONFIG_SCSI_LOWLEVEL=y
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_PMCRAID is not set
# CONFIG_SCSI_PM8001 is not set
# CONFIG_SCSI_VIRTIO is not set
CONFIG_SCSI_VIRTIO=m
# CONFIG_SCSI_DH is not set
# end of SCSI device support
+11
View File
@@ -6272,6 +6272,17 @@ for clusters.")
"1bvj7n2qxfvy1fmjqmm1w65fcj7fy5h74i0jgl0a0940mlhd7s9v"))))
(properties `((upstream-name . "CelliD")))
(build-system r-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
;; "The `slot` argument of `GetAssayData()` was deprecated in
;; SeuratObject 5.0.0 and is now defunct.", i = "Please use
;; the `layer` argument instead."
(add-after 'unpack 'fix-deprecated-argument
(lambda _
(substitute* '("R/mca.R" "tests/testthat/test_CelliD.R")
(("slot") "layer")))))))
(propagated-inputs
(list r-biocparallel
r-data-table
+1 -4
View File
@@ -427,10 +427,7 @@ files and generates build instructions for the Ninja build system.")
version ".tar.gz"))
(sha256
(base32
"13a9pj7d2mxgv5gbd78di4pb4w722vjis0vmk38m1vdm95v2f9yd"))
(patches
(search-patches "meson-gir-fallback-path.patch"
"meson-keep-rpath-vicinity.patch"))))
"13a9pj7d2mxgv5gbd78di4pb4w722vjis0vmk38m1vdm95v2f9yd"))))
(build-system gnu-build-system)
(arguments
(list
+6 -6
View File
@@ -43,7 +43,6 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system meson)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (gnu packages)
@@ -1001,17 +1000,18 @@ Supported extensions to ISO 9660 are Rock Ridge, Joliet, AAIP, zisofs.")
(define-public libudfread
(package
(name "libudfread")
(version "1.2.0")
(version "1.1.2")
(source (origin
(method url-fetch)
(uri (string-append
"https://download.videolan.org/pub/videolan/libudfread/"
name "-" version ".tar.xz"))
name "-" version ".tar.bz2"))
(sha256
(base32
"03q5b1wm90vygx4rf4mzzrf0yhvhbvp72nyhv63pgz7v9jypqixv"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
"05c943ymw94nzjxf7v102916frqk7icgw4gb244wx23jn8cnz56m"))))
(build-system gnu-build-system)
(native-inputs
(list automake autoconf libtool pkg-config))
(home-page "https://code.videolan.org/videolan/libudfread")
(synopsis "C library to read UDF file systems")
(description "@code{libudfread} is a C library for reading
+4 -9
View File
@@ -79,12 +79,9 @@
'("base/third_party/cityhash" ;Expat
"base/third_party/double_conversion" ;BSD-3
"base/third_party/icu" ;Unicode, X11-style
"base/third_party/nspr" ;MPL-2.0
"base/third_party/superfasthash" ;BSD-3
"base/third_party/symbolize" ;BSD-3
"base/third_party/xdg_user_dirs" ;Expat
"buildtools/third_party/libc++" ;BSD
"buildtools/third_party/libc++abi" ;BSD
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
"net/third_party/quiche" ;BSD-3
"net/third_party/uri_template" ;ASL2.0
@@ -222,7 +219,6 @@
"third_party/libaom/source/libaom/third_party/fastfeat" ;BSD-3
"third_party/libaom/source/libaom/third_party/vector" ;Expat
"third_party/libaom/source/libaom/third_party/x86inc" ;ISC
"third_party/libc++" ;Expat
"third_party/libdrm" ; Expat
"third_party/libgav1" ;ASL2.0
"third_party/libjingle_xmpp" ;BSD-3
@@ -248,8 +244,6 @@
"third_party/libzip" ;BSD-3
"third_party/lit" ;BSD-3
"third_party/lit/v3_0" ;BSD-3
"third_party/llvm-libc" ;ASL2.0
"third_party/llvm-libc/src/shared" ;ASL2.0
"third_party/lottie" ;Expat
"third_party/lss" ;BSD-3
"third_party/lzma_sdk" ;public domain
@@ -901,8 +895,9 @@
"libvk_swiftshader.so"
"vk_swiftshader_icd.json"
;; Chromium ships its own libGL
;; implementation called ANGLE.
;; Chromium ships its own libGL and
;; vulkan implementation called ANGLE.
"libvulkan.so.1"
"libEGL.so" "libGLESv2.so"))
(locales (string-append lib "/locales"))
(resources (string-append lib "/resources"))
@@ -921,7 +916,7 @@
(("@@MENUNAME") "Chromium")
(("@@PACKAGE") "chromium")
(("/usr/bin/@@usr_bin_symlink_name") exe)
(("@@uri_scheme") "x-scheme-handler/chromium")
(("@@uri_scheme") "x-scheme-handler/chromium;")
(("@@extra_desktop_entries") ""))
(mkdir-p man)
+47 -17
View File
@@ -342,7 +342,7 @@ integration tests...\n")
;; and their names must have the same length to avoid corrupting the
;; binary.
(name "dmd")
(version "2.111.0")
(version "2.112.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -351,7 +351,9 @@ integration tests...\n")
(file-name (git-file-name "dmd" version))
(sha256
(base32
"0cz5qdd1j89w2s7nzw9ahzwsqiraidg4ajy7syy7qkk7mwcyrf6r"))))
"0qvg2fb73kyng8k1wj482g07ar2qw5laa5fynwx7pdd610n0pjpc"))
(patches
(search-patches "dmd-hurd.patch"))))
(build-system gnu-build-system)
(arguments
(list
@@ -372,7 +374,16 @@ integration tests...\n")
;; Do not build the shared libphobos2.so library, to avoid
;; retaining a reference to gcc:lib.
"SHARED=0"
"DIFFABLE=1" ;constant timestamp
#$@(if (target-hurd?)
(list (string-append "DISABLED_TESTS=core/thread/osthread "
"std/parallelism " ;; pthread stubs
"std/file " ;; rename (NULL, "")
"std/socket " ;; ENOPROTOOPT
"std/datetime/systime "
"std/datetime/timezone " ;; TZDIR
"std/net/curl ")) ;; dlopen curl
'())
"DIFFABLE=1" ;constant timestamp
"VERBOSE=1")
#:modules
`(,@%default-gnu-modules
@@ -470,7 +481,19 @@ integration tests...\n")
"long_backtrace_trunc rt_trap_exceptions "))
""))
(substitute* "dmd/druntime/test/gc/Makefile"
((" invariant ") " "))))
((" invariant ") " "))
#$@(if (target-hurd?)
'((for-each
delete-file
;; environment differs in LD_ORIGIN_PATH
'("dmd/compiler/test/dshell/sameenv.d"
;; Non _GLIBCXX_USE_CXX98_ABI version prints a warning
"dmd/compiler/test/runnable_cxx/cppa.d"))
;; Segfault
(substitute* "dmd/druntime/test/shared/Makefile"
(("loadDR host ") "")))
'())))
(delete 'bootstrap)
(delete 'configure)
(replace 'build
@@ -492,7 +515,8 @@ integration tests...\n")
(phase-in-sub-dir 'check "phobos"))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((platform (cond (#$(target-linux?) "linux")))
(let* ((platform (cond (#$(target-linux?) "linux")
(#$(target-hurd?) "hurd")))
(bits (if #$(target-64bit?) 64 32))
(build-sub-dir (format #f "generated/~a/release/~a"
platform bits))
@@ -536,17 +560,22 @@ integration tests...\n")
(inputs
(list bash-minimal))
(native-inputs
(list gdmd which
gdb/pinned ; for tests
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"1ydls3ar6d3f7ffqvidr46x3zrz3wlzjln5qa0nbz843ndjr4g7n")))))
(append
(if (target-linux?)
;; gdb tests only on on linux
(list gdb/pinned)
'())
(list gdmd which
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"0afi5glnf96242cbnr10ccjvfsgkh4k5y7qnmxv4ph5g0izvi1dc"))
(patches (search-patches "phobos-hurd.patch"))))))
(outputs '("out" "lib" "debug"))
(synopsis "Reference D Programming Language compiler")
(description "@acronym{DMD, Digital Mars D compiler} is the reference
@@ -555,7 +584,8 @@ compiler for the D programming language.")
(home-page "https://github.com/dlang/dmd")
;; As reported by upstream:
;; https://wiki.dlang.org/Compilers#Comparison
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"
"i586-gnu" "x86_64-gnu"))
;; This variant exists only for bootstrapping purposes.
(properties '((hidden? . #t)))))
+2 -2
View File
@@ -841,14 +841,14 @@ to result in system-wide compromise.")
(define-public unbound
(package
(name "unbound")
(version "1.24.2")
(version "1.25.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.unbound.net/downloads/unbound-"
version ".tar.gz"))
(sha256
(base32 "1nwwwmwazwx40nm88lhh7k1basml2ai6j9q30gnclvca00zbbrs4"))))
(base32 "1iyyplggqhh2h1sbssq65v8z2s8mk1v9n1z4pr0z1qizfbd6wah6"))))
(build-system gnu-build-system)
(outputs '("out" "python"))
(native-inputs
+31 -13
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2018, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
@@ -192,21 +192,20 @@ markup) can be customized and extended by the user.")
(define-deprecated asciidoc-py3 asciidoc)
(define-public doxygen
(define-public doxygen-1.16
(package
(name "doxygen")
(version "1.14.0")
(version "1.16.1")
(home-page "https://www.doxygen.nl/")
(source (origin
(method url-fetch)
(uri (list (string-append home-page "files/doxygen-"
version ".src.tar.gz")
(string-append "mirror://sourceforge/doxygen/rel-"
version "/doxygen-" version
".src.tar.gz")))
(sha256
(base32
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))
(source
(origin
(method url-fetch)
(uri (list (string-append home-page "files/doxygen-" version
".src.tar.gz")
(string-append "mirror://sourceforge/doxygen/rel-" version
"/doxygen-" version ".src.tar.gz")))
(sha256
(base32 "1a33w82ln692qsf3ls0j31f6khljjs1cy3bwd70pra2fa4xy6710"))))
(build-system cmake-build-system)
(native-inputs
(list bison
@@ -250,6 +249,25 @@ IDL (Corba, Microsoft, and UNO/OpenOffice flavors), Fortran, VHDL, Tcl,
and to some extent D.")
(license license:gpl3+)))
(define-public doxygen-1.14
(package
(inherit doxygen-1.16)
(name "doxygen")
(version "1.14.0")
(home-page "https://www.doxygen.nl/")
(source (origin
(method url-fetch)
(uri (list (string-append home-page "files/doxygen-"
version ".src.tar.gz")
(string-append "mirror://sourceforge/doxygen/rel-"
version "/doxygen-" version
".src.tar.gz")))
(sha256
(base32
"0pbbdvc1zxps6mi58bry16rcrdw6b9gvf9nhv0kp60qkmc8nslyl"))))))
(define-public doxygen doxygen-1.14)
(define-public halibut
(package
(name "halibut")
+237 -46
View File
@@ -2078,8 +2078,8 @@ when typing parentheses directly or commenting out code line by line.")
(define-public emacs-puni
;; No tagged release upstream
(let ((commit "f430f5b0a14c608176e3376058eb380ab0824621")
(revision "3"))
(let ((commit "fe132f803868f325cf6f162139e327b76df9e4c1")
(revision "4"))
(package
(name "emacs-puni")
(version (git-version "0" revision commit))
@@ -2091,7 +2091,7 @@ when typing parentheses directly or commenting out code line by line.")
(file-name (git-file-name name version))
(sha256
(base32
"0kvxll2yx4lh5x04cigdizncp2kbva1iidz9fjnbi8qqfm6pq5qq"))))
"0ffjpb0ilhcng1wwmnl1lx7h8v1z0bgsq6wb7x4x2rwsrvqjv9hm"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no actual tests
(propagated-inputs (list emacs-with-editor))
@@ -2864,6 +2864,31 @@ process, passing on the arguments as command line arguments.")
"Magit-annex adds a few git-annex operations to the Magit interface.")
(license license:gpl3+)))
(define-public emacs-magit-lfs
;; Last tag is from 2021 and missing changes adjusting to transient.el
;; deprecations.
(let ((commit "cd9f46e1840270be27e2c2d9dcf036ff0781f66d")
(revision "0"))
(package
(name "emacs-magit-lfs")
(version (git-version "0.4.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Ailrun/magit-lfs")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0psnyxrc7fy2vng81mak0ji7kw58ly01frzr5z2xpj08hxx16b3c"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list emacs-magit emacs-transient emacs-dash))
(home-page "https://github.com/Ailrun/magit-lfs")
(synopsis "Git LFS support for Magit")
(description "@code{magit-lfs} provides Magit integration for git-lfs.")
(license license:gpl3+))))
(define-public emacs-magit-tbdiff
(package
(name "emacs-magit-tbdiff")
@@ -6175,6 +6200,33 @@ always indented. It reindents after every change, making it more reliable
than @code{electric-indent-mode}.")
(license license:gpl2+)))
(define-public emacs-isayt
;; No tags. The Version header has not been updated since 2021.
(let ((commit "32967c11a5a24b3c1d85cbf41a9b52a996739b45")
(revision "0"))
(package
(name "emacs-isayt")
(version (git-version "0.0.5" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/andreyorst/isayt.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "15i8z06k7iakw50lx9akq2ggddm7z99crwqbb0sx81bzddaz2s63"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://gitlab.com/andreyorst/isayt.el")
(synopsis "Automatically indent lisp expressions while typing")
(description
"@code{isayt-mode} is a minor mode to adjust indentation of
S-expressions automatically as you type. It is similar to
@code{aggressive-indent-mode}, but it uses @code{syntax-ppss} and
@code{indent-sexp} instead of a timer and @code{indent-according-to-mode}.")
(license license:gpl3+))))
(define-public emacs-smarttabs
(package
(name "emacs-smarttabs")
@@ -22674,7 +22726,7 @@ are common in Chromium-derived projects.")
(define-public emacs-gnosis
(package
(name "emacs-gnosis")
(version "0.10.3")
(version "0.10.6")
(source
(origin
(method git-fetch)
@@ -22683,12 +22735,13 @@ are common in Chromium-derived projects.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0kpzc2jw51sklz15v0d0vzm5ck05n3d90l02la4nxn8r85jb1f53"))))
(base32 "1cjm8hj62zm9k89pnsh5hbgjqqnh53byw4mijl76a7cn8args4gy"))))
(build-system emacs-build-system)
(arguments
(list
#:lisp-directory "lisp"
#:test-command
#~(list "make" "test" "GUIX_SHELL=")
#~(list "make" "-C" ".." "test" "GUIX_SHELL=")
#:emacs emacs-no-x ;tests require built-in SQLite support
#:phases
#~(modify-phases %standard-phases
@@ -22701,9 +22754,9 @@ are common in Chromium-derived projects.")
"/.emacs.d"))))
(add-before 'install 'make-info
(lambda _
(invoke "make" "doc" "GUIX_SHELL="))))))
(invoke "make" "-C" ".." "doc" "GUIX_SHELL="))))))
(native-inputs (list texinfo))
(propagated-inputs (list emacs-transient))
(propagated-inputs (list emacs-keymap-popup))
(home-page "https://thanosapollo.org/projects/gnosis/")
(synopsis "Personal knowledge system for GNU Emacs")
(description
@@ -25363,7 +25416,7 @@ with Eglot.")
(define-public emacs-jabber
(package
(name "emacs-jabber")
(version "0.10.3")
(version "0.10.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -25372,7 +25425,7 @@ with Eglot.")
(file-name (git-file-name name version))
(sha256
(base32
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
(build-system emacs-build-system)
(arguments
(list
@@ -25394,16 +25447,6 @@ with Eglot.")
"../src/picomemo")
(invoke "chmod" "--recursive" "u+w"
"../src/picomemo")))
(add-after 'unpack 'fix-test-runner
(lambda _
;; Replace grep -oP (Perl regex) with a
;; POSIX-compatible alternative so the test
;; runner counts results correctly.
(substitute* "../Makefile"
(("grep -oP '\\^Ran \\\\K\\[0-9\\]\\+'")
(string-append
"grep -o 'Ran [0-9]*'"
" | grep -o '[0-9]*'")))))
(add-after 'unpack 'disable-failing-tests
(lambda _
;; These 4 tests pass outside the build
@@ -25439,7 +25482,7 @@ with Eglot.")
(base32
"044xd1gn9lpd5yrb3c1lmvqsc1chbkhd3vnh7800hxn23a0hxbzj")))))
(inputs (list mbedtls))
(propagated-inputs (list emacs-fsm))
(propagated-inputs (list emacs-fsm emacs-keymap-popup))
(home-page "https://thanosapollo.org/projects/jabber/")
(synopsis "XMPP (Jabber) client for Emacs")
(description
@@ -32162,6 +32205,32 @@ symbols. Currently the code distinguishes Lisp functions, built-in functions,
macros, faces and variables. To enable call @code{highlight-defined-mode}.")
(license license:gpl3+)))
(define-public emacs-highlight-quoted
;; The last tagged release is from 2014 and predates a license change from
;; BSD 3-clause to BSD 2-clause.
(let ((commit "24103478158cd19fbcfb4339a3f1fa1f054f1469")
(revision "0"))
(package
(name "emacs-highlight-quoted")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Fanael/highlight-quoted")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1gq8inxfni9zgz2brqm4nlswgr8b0spq15wr532xfrgr456g10ks"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://github.com/Fanael/highlight-quoted")
(synopsis "Highlight Lisp quotes and quoted symbols")
(description
"@code{highlight-quoted-mode} is a minor mode for highlighting Lisp
quotes and quoted symbols.")
(license license:bsd-2))))
(define-public emacs-parinfer-mode
(package
(name "emacs-parinfer-mode")
@@ -35600,7 +35669,7 @@ and comments.")
(define-public emacs-yeetube
(package
(name "emacs-yeetube")
(version "2.1.12")
(version "2.3.0")
(source
(origin
(method git-fetch)
@@ -35609,7 +35678,7 @@ and comments.")
(commit version)))
(sha256
(base32
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@@ -35624,7 +35693,7 @@ and comments.")
(format #f "~s" (search-input-file inputs
(string-append "/bin/" program))))))))))
(inputs (list mpv torsocks yt-dlp))
(propagated-inputs (list emacs-compat))
(propagated-inputs (list emacs-compat emacs-keymap-popup))
(home-page "https://thanosapollo.org/projects/yeetube/")
(synopsis "Youtube front-end for Emacs")
(description
@@ -38038,7 +38107,7 @@ in Docker environment.")
(define-public emacs-dape
(package
(name "emacs-dape")
(version "0.26.0")
(version "0.27.1")
(source
(origin
(method git-fetch)
@@ -38047,7 +38116,7 @@ in Docker environment.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0pib99g20kx7jqxbr7xv6xgpihjrb1yyd84qs05i0xscpgy8yj9l"))))
(base32 "12cvry61nrr7xjsd7f445ik273lv4na4wkxad795pflibqz7q6r3"))))
(build-system emacs-build-system)
(arguments
;; FIXME python tests pass, JS tests require additional dependencies
@@ -41184,6 +41253,39 @@ work.")
text-property translator.")
(license license:bsd-2)))
(define-public emacs-kkp
;; No tags.
(let ((commit "73957230ffdd3dedf16f4436f61471bd1365abf6")
(revision "0"))
(package
(name "emacs-kkp")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/benotn/kkp")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1j5igiys8asjg0v18flc7p71xjynqi7v8s06qgkac8djvjamd4lh"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command
#~(list "emacs" "--batch" "-L" "." "-l" "kkp-tests.el"
"-f" "ert-run-tests-batch-and-exit")))
(propagated-inputs (list emacs-compat))
(home-page "https://github.com/benotn/kkp")
(synopsis "Kitty Keyboard Protocol input support")
(description
"@file{kkp.el} implements support for the
@url{https://sw.kovidgoyal.net/kitty/keyboard-protocol, Kitty Keyboard
Protocol} in Emacs. It provides an alternative, improved way to transmit
keyboard input from a terminal to Emacs running in that terminal. For
debugging key translation, see @file{kkp-debug.el}.")
(license license:gpl3+))))
(define-public emacs-org-noter
(package
(name "emacs-org-noter")
@@ -41903,6 +42005,96 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
"Fj contains basic functions for interacting with a Forgejo instance.")
(license license:gpl3+)))
(define-public emacs-keymap-popup
(package
(name "emacs-keymap-popup")
(version "0.2.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thanosapollo/emacs-keymap-popup")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1p48nnzf6m4r5jg3qxp7cv78gfwz521zi4zq0d54jmjwyszjjw1z"))))
(build-system emacs-build-system)
(arguments
(list #:tests? #f)) ;tests need a live display read-loop
(home-page "https://codeberg.org/thanosapollo/emacs-keymap-popup")
(synopsis "Elisp library to create key-driven popup menus")
(description "This package provides @code{keymap-popup-define}, a macro
to define a keymap along with popup data and documentation in one place. It
is similar to the @code{transient} Elisp library, but aims to be simpler to
use. Among its features are:
@table @code
@item :switch
buffer-local toggle with [on]/[off] display
@item :keymap
sub-menu with stack navigation (q / C-g pops back)
@item :stay-open
command executes without dismissing the popup
@item :inapt-if
grays out and blocks entries based on a predicate
@item :c-u
prefix argument mode (C-u highlights eligible entries)
@item :if
conditionally hide entries
@item :group
@itemx :row
column layout
@item keymap-popup-annotate
add popup descriptions to existing keymaps
@end table")
(license license:gpl3+)))
(define-public emacs-forgejo
(package
(name "emacs-forgejo")
(version "0.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thanosapollo/emacs-forgejo")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1nqcxg902zdabwlgyx0iv4p339kh4n1nk293i2lnv752q8as0dc6"))))
(build-system emacs-build-system)
(arguments
(list #:lisp-directory "lisp"
#:emacs emacs ;tests requires sqlite
#:test-command #~(list "make" "-C" ".." "test")))
(propagated-inputs (list emacs-keymap-popup emacs-markdown-mode))
(home-page "https://codeberg.org/thanosapollo/emacs-forgejo")
(synopsis "Emacs front-end for Forgejo instances")
(description "This package provides an Emacs front-end for Forgejo
instances such as Codeberg or self-hosted servers. It allows you to browse,
filter, and manage issues and pull requests from Emacs. All API responses are
cached in a local SQLite database for fast offline re-display. Among the
other things it can do are:
@itemize
@item
Submit and merge PRs via
AGit-Flow (https://forgejo.org/docs/latest/user/agit-support/) push options
@item
Full code review workflow with threaded comments
@item
Watch rules with per-repo filter polling and desktop notifications
@item
Label, assignee, and milestone management
@item
SQLite cache for instant display and offline usage
@item
Multi-host support with per-instance token configuration
@item
@code{#} and @code{@@} completion in composition buffers (@code{gfm-mode})
@item
Repository settings editor
@end itemize")
(license license:gpl3+)))
(define-public emacs-ebdb-i18n-chn
(package
(name "emacs-ebdb-i18n-chn")
@@ -45741,29 +45933,28 @@ the selected region with @code{| tr -d a-z}.")
(license license:gpl3+))))
(define-public emacs-shell-pop
(let ((commit "4b4394037940a890a313d715d203d9ead2d156a6")
(revision "0"))
(package
(name "emacs-shell-pop")
(version (git-version "0.64" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kyagi/shell-pop-el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0s77n6b9iw1x3dv91ybkpgy3zvqd12si7zw3lg0m2b6j1akrawsg"))))
(build-system emacs-build-system)
(home-page "https://github.com/kyagi/shell-pop-el")
(synopsis "Utility which helps with pop up shell buffer")
(description
"This Emacs utility helps you pop up and pop out shell buffer window
(package
(name "emacs-shell-pop")
(version "0.70")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kyagi/shell-pop-el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sdi7ckn3dcxy9kw7xz2b5z46fgjjn5mvwpqsmjh3qa6kqirlwmi"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://github.com/kyagi/shell-pop-el")
(synopsis "Utility which helps with pop up shell buffer")
(description
"This Emacs utility helps you pop up and pop out shell buffer window
easily. Four pre-set options are: @samp{shell}, @samp{terminal},
@samp{ansi-term}, and @samp{eshell}. You can also set your custom shell if
you use some other configuration.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-shell-here
(let ((commit "eeb437ff26d62a5009046b1b3b4503b768e3131a")
+3 -3
View File
@@ -702,8 +702,8 @@ editor (with wide ints)" )
#~(cons "--with-wide-int" #$flags))))))
(define-public emacs-next-minimal
(let ((commit "509228fc6c026921c67459f21164e0325efc583b")
(revision "2"))
(let ((commit "d969185878bf50faedbafbd609c361875b891b53")
(revision "3"))
(package
(inherit emacs-minimal)
(name "emacs-next-minimal")
@@ -717,7 +717,7 @@ editor (with wide ints)" )
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "04aalyrx5jysk5fhlka98fhfx23sy99zp8j16i0ils20sflyig6n"))
(base32 "1pmx71b6pazjpyfs1d2ngby1idsviwbap3xbr5b7dgf0rngim32s"))
(patches
(search-patches "emacs-next-disable-jit-compilation.patch"
"emacs-next-exec-path.patch"
+2 -2
View File
@@ -2601,7 +2601,7 @@ mining.")
(define-public p2pool
(package
(name "p2pool")
(version "4.14")
(version "4.15")
(source
(origin
(method git-fetch)
@@ -2610,7 +2610,7 @@ mining.")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256 (base32 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
(sha256 (base32 "1jfrq3dnkkvrk9zsn3viix5dcjwk0nmp15y1m1vj5py89hm57rxq"))
(modules '((guix build utils)))
(snippet
#~(for-each delete-file-recursively
+2 -2
View File
@@ -3873,7 +3873,7 @@ typographical palette.")
(define-public font-mona-sans
(package
(name "font-mona-sans")
(version "2.0.8")
(version "2.0.23")
(source
(origin
(method git-fetch)
@@ -3883,7 +3883,7 @@ typographical palette.")
(file-name (git-file-name name version))
(sha256
(base32
"1gdblparf0v5mdbp891wnsc5x4dxr433fg0dmz0mhzrdw9vaalig"))))
"1pa6bghch1y0drxmz627055fwgsbdyp9vsj0f3va64pmvgkyf5jl"))))
(build-system font-build-system)
(outputs '("out" "ttf" "woff"))
(home-page "https://github.com/mona-sans")
+5 -6
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-2026 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>
@@ -1382,15 +1382,14 @@ Font Format (WOFF).")
(hidden-package
(package
(name "fontconfig-minimal")
(version "2.17.1")
(version "2.16.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://gitlab.freedesktop.org/api/v4/projects/890"
"/packages/generic/fontconfig/" version "/fontconfig-"
version ".tar.xz"))
"https://www.freedesktop.org/software/"
"fontconfig/release/fontconfig-" version ".tar.xz"))
(sha256 (base32
"0hd5dw15q0i7518w1zqjcvyhvmlcf3ycv6df0ny1zz7zyj9swp4z"))
"086jdsdxmc9ryr0n0dmgs0vfnkhkxxw5hsgpr888pfn9biaxqcva"))
(patches (search-patches "fontconfig-cache-ignore-mtime.patch"))))
(build-system gnu-build-system)
;; In Requires or Requires.private of fontconfig.pc.
+4 -5
View File
@@ -794,16 +794,16 @@ the freedesktop.org XDG Base Directory specification.")
(define-public elogind
(package
(name "elogind")
(version "257.14")
(version "255.17")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/elogind/elogind")
(commit (string-append "v" version))))
(url "https://github.com/elogind/elogind")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"16cbkkia2wmcjwqxgzl714igi9sgpcl4sdvag388vlh941136bs9"))))
"0cb6p559281dzh24is91v6d4v4kz45yhyizibi4sfql9nign865h"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
@@ -3302,7 +3302,6 @@ compatible with the well-known scripts of the same name.")
(list gettext-minimal
`(,glib "bin")
gst-plugins-good ;for wavparse plugin
(librsvg-for-system) ;SVG loader needed for one test
pkg-config
python
python-dbusmock
+2 -2
View File
@@ -10225,7 +10225,7 @@ their own levels.")
(define-public libmanette
(package
(name "libmanette")
(version "0.2.13")
(version "0.2.12")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libmanette/"
@@ -10233,7 +10233,7 @@ their own levels.")
"libmanette-" version ".tar.xz"))
(sha256
(base32
"1bnqfxd9b5vff9256f8vxd404fkvbvc5gxva6qcjj2fyw3yw4z18"))))
"1n513s8ksjbrwqq7k46f3550avx11gly3a85shsdrwc0f4k4kcs8"))))
(build-system meson-build-system)
(native-inputs
(list `(,glib "bin") ; for glib-compile-resources
+15 -1
View File
@@ -928,7 +928,8 @@ It also includes runtime support libraries for these languages.")
"gcc-5.0-libvtv-runpath.patch"
"gcc-10-libsanitizer-no-crypt.patch"
"gcc-11-libstdc++-hurd-libpthread.patch"
"gcc-libstdc++-newer-gcc.patch"))
"gcc-libstdc++-newer-gcc.patch"
"gcc-11-x86_64-gnu.patch"))
(modules '((guix build utils)))
(snippet gcc-canadian-cross-objdump-snippet)))
(properties
@@ -1408,8 +1409,21 @@ as the 'native-search-paths' field."
(define version (package-version gdc))
(define (since-version? since) (version>=? version since))
(define (until-version? until) (version>? until version))
(define patches (cond ((and (since-version? "11")
(until-version? "12"))
(search-patches "gdc-11-druntime-hurd.patch"))
((and (since-version? "14")
(until-version? "15"))
(search-patches "gdc-14-druntime-hurd.patch"))
(else '())))
(package
(inherit gdc)
(source
(origin
(inherit (package-source gdc))
(patches
(append (origin-patches (package-source gdc))
patches))))
(arguments
(substitute-keyword-arguments arguments
((#:modules modules)
+8 -2
View File
@@ -44,7 +44,7 @@
(define-public gramps
(package
(name "gramps")
(version "5.2.3")
(version "6.0.8")
(source
(origin
(method git-fetch)
@@ -53,7 +53,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gzhi5hxpgc6pxs40xsxf67hndjifnfhm89s3ly68c70x83qmwhd"))))
(base32 "06kdcf6h9rqdcsx097a3n2z4q8yvln20ja7ajwrna1i133591bra"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -68,6 +68,11 @@
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'fix-gexiv2-dependency
(lambda _
;; Use our own version
(substitute* (find-files "." ".*\\.py$")
(("\"GExiv2\", \"0.10\"") "\"GExiv2\", \"0.16\""))))
(add-before 'check 'prepare-tests
(lambda _
(setenv "HOME" (getenv "TMPDIR"))
@@ -113,6 +118,7 @@
python-bsddb3
python-jsonschema
python-lxml
python-orjson
python-pillow
python-pycairo
python-pygobject
+22 -11
View File
@@ -50,15 +50,15 @@
(define-public lcms
(package
(name "lcms")
(version "2.16.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/lcms/lcms/"
(version-major+minor version)
"/lcms2-" (version-major+minor version) ".tar.gz"))
(sha256
(base32 "0lasskcj7k0sp0z7cpnwwisp826j51i1l7v322hcxd5rv15d6wyq"))))
(version "2.13.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/lcms/lcms/"
(version-major+minor version)
"/lcms2-" version ".tar.gz"))
(sha256
(base32
"121v414bg2zk0fcwx0kigr2l6nxl88nmblfn3gq5lz5jwybffwyl"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
@@ -73,8 +73,19 @@ Consortium standard (ICC), approved as ISO 15076-1.")
(home-page "https://www.littlecms.com/")
(properties '((cpe-name . "little_cms_color_engine")))))
;; Can be removed after 2027/05/01.
(define-deprecated-package lcms-next lcms)
(define-public lcms-next
(package
(inherit lcms)
(name "lcms-next")
(version "2.16.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/lcms/lcms/"
(version-major+minor version)
"/lcms2-" (version-major+minor version) ".tar.gz"))
(sha256
(base32 "0lasskcj7k0sp0z7cpnwwisp826j51i1l7v322hcxd5rv15d6wyq"))))))
(define-public libpaper
(package
+2 -2
View File
@@ -994,7 +994,7 @@ useful for C++.")
(define-public python-pygobject
(package
(name "python-pygobject")
(version "3.54.5")
(version "3.54.3")
(source
(origin
(method url-fetch)
@@ -1003,7 +1003,7 @@ useful for C++.")
"/pygobject-" version ".tar.gz"))
(sha256
(base32
"11dm5yi80v143dn21bayqxb53w67hk1lishmrw35c97m91inyrdn"))))
"1rxsj85xl73a14vz7s30sy8lx9sswd2j2hgj3i4mcz8g989hknm8"))))
(build-system meson-build-system)
;; The tests require mutter, which would introduce a circular dependency.
(arguments (list #:tests? #f))
+164 -227
View File
@@ -215,7 +215,6 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby-xyz)
#:use-module (gnu packages rust)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages samba)
#:use-module (gnu packages scanner)
#:use-module (gnu packages sdl)
@@ -2085,7 +2084,7 @@ offline sources, providing a centralized place for managing your contacts.")
(define-public gnome-desktop
(package
(name "gnome-desktop")
(version "44.5")
(version "44.4")
(source
(origin
(method url-fetch)
@@ -2094,16 +2093,11 @@ offline sources, providing a centralized place for managing your contacts.")
name "-" version ".tar.xz"))
(sha256
(base32
"0br33ma7l45nr8yp9bcjqgy9zrj57yy2fnkc0b0yh0rsdrd9kq10"))))
"1129nh32ga5vv869fwby3n2lvj2chd9wys8j1jdnisr8lg3bk30x"))))
(build-system meson-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; The languages test fails due to Guix defaulting to C.UTF-8.
(substitute* "tests/meson.build"
((".*'languages':.*") ""))))
(add-before 'configure 'patch-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "libgnome-desktop/gnome-languages.c"
@@ -2693,7 +2687,7 @@ and single page document formats like PDF and DejaVu.")
(define-public gsettings-desktop-schemas
(package
(name "gsettings-desktop-schemas")
(version "49.1")
(version "48.0")
(source
(origin
(method url-fetch)
@@ -2702,7 +2696,7 @@ and single page document formats like PDF and DejaVu.")
name "-" version ".tar.xz"))
(sha256
(base32
"0qqfxml3kqg87ly5w8rhqalin6qv20jcn2gqkdmhga75sn1pyykp"))))
"1lqv5mn7r1c8nxm6dfxgvk56r2sqfgafkj5jm1jzh65z2dc1b3z6"))))
(build-system meson-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -2880,7 +2874,7 @@ GNOME and KDE desktops to the icon names proposed in the specification.")
(define-public adwaita-icon-theme
(package
(name "adwaita-icon-theme")
(version "49.0")
(version "48.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -2888,7 +2882,7 @@ GNOME and KDE desktops to the icon names proposed in the specification.")
name "-" version ".tar.xz"))
(sha256
(base32
"0p3mj6bl8wp1cri2qdszqrqqs47irh7qvajr5yaaly5js5hn85k5"))))
"04kfi8qpvghhmj83p03k509pnsp8ywlrii1qm0xv056dxf39pznb"))))
(build-system meson-build-system)
(arguments
(list #:phases
@@ -3227,7 +3221,6 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
@@ -3235,13 +3228,17 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
(add-after 'unpack 'skip-modules-test
;; This test fails with 'GLib-GObject-FATAL-CRITICAL: cannot
;; register existing type 'GIRepository' since the GNOME 49
;; upgrades.
(lambda _
(substitute* "tests/meson.build"
((".*'modules', .*") ""))))
#$@(if (this-package-input "gjs")
'()
'((add-after 'unpack 'skip-gjs-test
(lambda _
;; When the optional dependency on GJS is missing, skip
;; the GJS plugin tests.
(substitute* "tests/modules.c"
(("g_test_add.*JavaScript.*" all)
(string-append "// " all "\n")))
(delete-file "tests/catalogs/gjsplugin.xml")))))
(add-before 'check 'pre-check
(lambda _
(setenv "HOME" "/tmp")
@@ -3497,7 +3494,7 @@ XML/CSS rendering engine.")
(define-public libgsf
(package
(name "libgsf")
(version "1.14.55")
(version "1.14.54")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -3505,7 +3502,7 @@ XML/CSS rendering engine.")
name "-" version ".tar.xz"))
(sha256
(base32
"0c91l0l3camxpanpgp634nd68vz3v0jbk9bxs5dfmlsvl6xhmmkl"))))
"08vny43clswk95djch50z17hdnns2p8qc93if6qcy4r598k6k26i"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "bin" "doc"))
(arguments
@@ -3553,7 +3550,7 @@ for dealing with different structured file formats.")
(define-public librsvg
(package
(name "librsvg")
(version "2.61.4")
(version "2.58.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/librsvg/"
@@ -3561,31 +3558,45 @@ for dealing with different structured file formats.")
"librsvg-" version ".tar.xz"))
(sha256
(base32
"036afbhd2h4brbd491kmgig0ib1df3s7j9bx8349b3zjs4lfm87w"))))
(build-system meson-build-system)
"0ym2yg94sc7ralh1kwqqrhz3wcc51079z90mbx0qrls7wfh36hi2"))))
(build-system gnu-build-system)
(outputs '("out" "doc" "debug"))
(arguments
(list
#:configure-flags
#~(list #$@(if (%current-target-system)
#~( ;; g-ir-scanner can't import its modules
#~(list "--disable-static"
#$@(if (%current-target-system)
#~(;; g-ir-scanner can't import its modules
;; and vala currently can't be cross-compiled.
"-Dintrospection=false"
"-Dvala=false"
"--enable-introspection=no"
"--enable-vala=no"
;; These two are necessary for cross-compiling.
(string-append
"--build=" #$(nix-system->gnu-triplet
(%current-system)))
(string-append
"--host=" #$(%current-target-system))
;; This is needed when cross-compiling for some
;; architectures as autoconf and rust disagree about
;; the target triplet.
(string-append "-Dtriplet="
(string-append "RUST_TARGET="
#$(platform-rust-target
(lookup-platform-by-target
(%current-target-system)))))
#~())
"-Dpixbuf-loader=enabled") ;disabled since 2.61.2
#:imported-modules (append %cargo-build-system-modules
%meson-build-system-modules)
#~("--enable-vala")))
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "PKG_CONFIG=" #$(pkg-config-for-target))
#$@(if (%current-target-system)
#~((string-append "RUST_TARGET="
#$(platform-rust-target
(lookup-platform-by-target
(%current-target-system)))))
#~()))
#:imported-modules %cargo-build-system-modules
#:modules
'(((guix build cargo-build-system) #:prefix cargo:)
(guix build meson-build-system)
(guix build gnu-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
@@ -3602,19 +3613,12 @@ for dealing with different structured file formats.")
(lambda _
;; Something about the build environment resists building
;; successfully with the '--locked' flag.
(substitute* "meson/cargo_wrapper.py"
(("\"--locked\",?") ""))
;; This is needed so Cargo embeds the correct RUNPATH
;; information to the binaries it produces,
;; e.g. libpixbufloader_svg.so.
(setenv "RUSTFLAGS"
(string-append "-C link-arg=-Wl,-rpath,"
#$output "/lib"))))
(add-after 'unpack 'prepare-for-tests
(substitute* '("Makefile.am" "Makefile.in")
(("--locked") ""))))
(add-after 'unpack 'loosen-test-boundaries
(lambda _
(setenv "HOME" "/tmp") ;placate fontconfig errors
;; Increase reftest tolerance a bit to account for different
;; libraries like pango, etc.
;; harfbuzz, pango, etc.
(setenv "RSVG_TEST_TOLERANCE" "20")
;; These tests fail even after loosening the tolerance.
(substitute* "rsvg/tests/reference.rs"
@@ -3622,16 +3626,19 @@ for dealing with different structured file formats.")
((".*rtl_tspan_svg.*") ""))))
(add-before 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "gdk-pixbuf-loader/meson.build"
(substitute* "gdk-pixbuf-loader/Makefile.in"
;; By default the gdk-pixbuf loader is installed under
;; gdk-pixbuf's prefix. Work around that.
(("pixbuf_dep.get_variable.*'gdk_pixbuf_moduledir'.*),")
(format #f "get_option('prefix') / '~a',"
#$%gdk-pixbuf-loaders-directory))
(("pixbuf_dep.get_variable.*'gdk_pixbuf_query_loaders'.*),")
(format #f "'~a'," (which "gdk-pixbuf-query-loaders")))
(("pixbuf_dep.get_variable.*'gdk_pixbuf_cache_file'.*)")
(format #f "prefix / '~a'" #$%gdk-pixbuf-loaders-cache-file)))))
(("gdk_pixbuf_moduledir = .*$")
(string-append "gdk_pixbuf_moduledir = "
"$(prefix)/"
#$(dirname %gdk-pixbuf-loaders-cache-file) "/"
"loaders\n")))
(substitute* "configure"
(("gdk_pixbuf_cache_file=.*")
(string-append "gdk_pixbuf_cache_file="
#$output "/"
#$%gdk-pixbuf-loaders-cache-file "\n")))))
(add-after 'unpack 'prepare-cargo-build-system
(lambda args
(for-each
@@ -3643,30 +3650,23 @@ for dealing with different structured file formats.")
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums))))
(add-after 'install 'sanitize-pkg-config-files
(lambda _
(substitute* (find-files #$output "\\.pc$")
(("^Requires.private:.*") "")))))))
patch-cargo-checksums)))))))
(native-inputs
(append
(list gdk-pixbuf
gi-docgen
`(,glib "bin")
gobject-introspection
pkg-config
python
python-docutils ;for rst2man
rust
rust-cargo-c
`(,rust "cargo")
vala)
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(inputs
(cons* dav1d
freetype
(cons* freetype
gobject-introspection
harfbuzz
libxml2
pango
(cargo-inputs 'librsvg)))
@@ -4667,7 +4667,7 @@ and RDP protocols.")
(define-public dconf
(package
(name "dconf")
(version "0.49.0")
(version "0.40.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4676,7 +4676,7 @@ and RDP protocols.")
name "-" version ".tar.xz"))
(sha256
(base32
"0dkc7nbd0byibf6i5gm9xqclr7i94n1p1qbqcnwxnml1lm4px90n"))))
"0cs5nayg080y8pb9b7qccm1ni8wkicdmqp1jsgc22110r6j24zyg"))))
(build-system meson-build-system)
(arguments
(list
@@ -4685,8 +4685,7 @@ and RDP protocols.")
;; there and loaded without having to set GCONF_PROFILE, which cannot be
;; safely set globally (as a gconf profile is a per-user thing).
#:configure-flags #~(list "--sysconfdir=/etc"
"-Dgtk_doc=true"
"--wrap-mode=nodownload") ;for gvdb
"-Dgtk_doc=true")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'increase-test-timeout
(lambda _
@@ -5212,26 +5211,17 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.")
(define-public gi-docgen
(package
(name "gi-docgen")
(version "2026.1")
(version "2025.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "gi_docgen" version))
(sha256
(base32
"1df7yb6d5zsr4wks4p2lf40a2v4v2dasx3pv2v3d2ma25d7krb35"))))
"1i9dlwirizc0n5sw9w60yscaj14x9x06fdq64kwxqkia13d6dq3z"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-commands
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("gidocgen/config.py"
"gidocgen/utils.py")
(("find_program\\(['\"]dot['\"])")
(format #f "find_program(~s)"
(search-input-file inputs "bin/dot")))))))))
(native-inputs (list python-pytest-bootstrap python-setuptools))
(inputs (list graphviz-14))
(native-inputs
(list python-pytest-bootstrap
python-setuptools))
(propagated-inputs (list python-jinja2
python-markdown
python-markupsafe
@@ -6988,10 +6978,10 @@ side panel;
(license license:gpl2+)))
;; Also update (@ (gnu packages rust-sources) rust-glycin-3) when updating this.
(define-public libglycin
(define-public glycin-loaders
(package
(name "libglycin")
(version "2.1.1")
(name "glycin-loaders")
(version "2.0.7")
(source
(origin
(method git-fetch)
@@ -7001,16 +6991,12 @@ side panel;
(file-name (git-file-name name version))
(sha256
(base32
"1mrv733xhbxydww4szskv7jc0hif908aavh8h4kjcxp0zgy13blf"))
"0v6szxk5h8a4b28xb0lrhqrq6b4vka2ha4qgpdp35f6c49v9pdyp"))
(patches (search-patches "glycin-sandbox-Adapt-bwrap-invocation.patch"))))
(outputs '("out" "debug"))
(build-system meson-build-system)
(arguments
(list
#:configure-flags #~(list "-Dglycin-loaders=false"
"-Dglycin-thumbnailer=true"
"-Dlibglycin=true"
"-Dlibglycin-gtk4=true")
#:imported-modules `(,@%meson-build-system-modules
,@%cargo-build-system-modules)
#:modules `(((guix build cargo-build-system) #:prefix cargo:)
@@ -7096,15 +7082,18 @@ side panel;
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/sophie-h/test-images.git")
(commit "b3a107267cc4f1d136b7007938556250ce06fc4f")))
(commit "b148bcf70847d6f126a8e83e27e1c59d2e474adf")))
(file-name "glycin-test-images")
(sha256
(base32
"1jvra75kjqkndxzzpmi5lb8d3q4fi3yc4hha0r1g9brdsnbhsp6f")))))
"16s3lss4cbny5d0ixhc0vaxxcvq2n7rcnbklrxdm84p2m21192vm")))))
(inputs (cons* bubblewrap
libheif
libjxl
librsvg
(cargo-inputs 'glycin)))
;; The following inputs are 'Required' in the pkg-config files.
(propagated-inputs (list fontconfig glib gtk lcms libseccomp))
(propagated-inputs (list fontconfig glib gtk lcms-next libseccomp))
(home-page "https://gitlab.gnome.org/GNOME/glycin")
(synopsis "Rust library for sandboxed image decoding")
(description "Glycin is a sandbox image decoder for image viewers and
@@ -7112,22 +7101,6 @@ thumbnails to display untrusted content safely. This package provides the
runtime image loader executables that are used inside the sandbox.")
(license (list license:mpl2.0 license:lgpl2.1+))))
(define-public glycin-loaders
(package/inherit libglycin
(name "glycin-loaders")
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags original-flags #~(list))
#~(list "-Dglycin-loaders=true"
"-Dglycin-thumbnailer=false"
"-Dlibglycin=false"
"-Dlibglycin-gtk4=false"))))
(inputs
(modify-inputs inputs
(prepend libheif
libjxl
librsvg)))))
(define-public loupe
(package
(name "loupe")
@@ -7198,7 +7171,6 @@ runtime image loader executables that are used inside the sandbox.")
gtk
lcms
libadwaita
libglycin
libgweather
libseccomp
(cargo-inputs 'loupe)))
@@ -7239,14 +7211,14 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
(define-public msgraph
(package
(name "msgraph")
(version "0.3.4")
(version "0.3.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/msgraph/"
(version-major+minor version) "/"
"msgraph-" version ".tar.xz"))
(sha256
(base32 "1iyn0jdqgw238cxaxvji0v9ds0xwfzffz65xpgzywcibn3kfqc87"))))
(base32 "04j00lf0aqiccgbg95jh9sxmx48bgsrg110ilap9014r58py3mrp"))))
(build-system meson-build-system)
(native-inputs (list gi-docgen gobject-introspection pkg-config uhttpmock))
(inputs (list gnome-online-accounts json-glib libsoup librest))
@@ -7259,7 +7231,7 @@ MS Graph APIs.")
(define-public gvfs
(package
(name "gvfs")
(version "1.58.1")
(version "1.58.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gvfs/"
@@ -7267,7 +7239,7 @@ MS Graph APIs.")
"gvfs-" version ".tar.xz"))
(sha256
(base32
"0fywnla2xwyi44jfipyixcczxh5h34c4lzfzf9lsgzxip9mpslzw"))))
"0bqq9z1y31yk3c8wz8i8fql7dr8cfxsd5a49xc4v7z6hfdlf76yx"))))
(build-system meson-build-system)
(arguments
(list
@@ -7617,7 +7589,7 @@ environments.")
(define-public yelp-xsl
(package
(name "yelp-xsl")
(version "49.0")
(version "42.4")
(source
(origin
(method url-fetch)
@@ -7626,7 +7598,7 @@ environments.")
(version-major version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1v7va1xa80pyj0dyfraalvsag4m0lza4v87r2i7phyz6iy7kmm2r"))))
(base32 "1lfpmdc4y46a528q5filn6xs8add921avrnwl2vpysp6n9zb1szx"))))
(build-system meson-build-system)
(native-inputs
(list mallard-ducktype
@@ -7654,7 +7626,7 @@ jQuery.Syntax JavaScript libraries.")
(define-public yelp
(package
(name "yelp")
(version "49.0")
(version "42.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -7662,7 +7634,7 @@ jQuery.Syntax JavaScript libraries.")
name "-" version ".tar.xz"))
(sha256
(base32
"0mrlqsbr2wb0k2p3dmywzdb0c0rzcx1dv6qlimxzx9ab3w5lwqg6"))))
"18w95bfhq3d364af1qqb63rgaixkrl7xk0x079x6m7lscwic9k16"))))
(build-system meson-build-system)
(arguments
(list #:phases
@@ -7687,9 +7659,7 @@ jQuery.Syntax JavaScript libraries.")
`("PATH" ":" prefix
(,(dirname (search-input-file inputs "bin/groff"))))))))))
(native-inputs
(list desktop-file-utils
`(,glib "bin") ;for glib-genmarshal, etc.
`(,gtk "bin")
(list `(,glib "bin") ; for glib-genmarshal, etc.
intltool
itstool
pkg-config))
@@ -7698,14 +7668,13 @@ jQuery.Syntax JavaScript libraries.")
(inputs
(list bash-minimal
gsettings-desktop-schemas
libadwaita
libhandy
libxslt
man-db ;for URIs like "man:ls"
groff-minimal ;ditto
gtk
man-db ;for URIs like "man:ls"
groff-minimal ;ditto
gtk+
sqlite
webkitgtk
webkitgtk-for-gtk3
yelp-xsl))
(home-page "https://wiki.gnome.org/Apps/Yelp")
(synopsis "GNOME help browser")
@@ -7994,88 +7963,57 @@ configuration program to choose applications starting on login.")
(define-public gjs
(package
(name "gjs")
(version "1.88.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0ly43lcpafl0an3k4g4mvwrwvc78f0y91ckdi6qn13ky67rvk81h"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-26)))
(snippet
#~(begin
;; XXX: 'delete-all-but' is copied from the turbovnc package.
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "subprojects"
"gobject-introspection-tests")))))
(version "1.84.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0rh1fkkb35aa1zrhzbizzxllkwc3snkw67i901in61ap6kgjw51m"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "installed-tests/scripts/testCommandLine.sh"
(("Valentín") "")
(("☭") ""))
(substitute* "modules/script/package.js"
(("type_default_interface_ref")
"type_default_interface_get"))))))
(build-system meson-build-system)
(arguments
(list
#:modules '((guix build meson-build-system)
(guix build utils)
(ice-9 match))
#:configure-flags #~(list "-Dinstalled_tests=false")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-gi
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/gjs")
`("GI_TYPELIB_PATH" suffix
(,(dirname
(search-input-file
inputs
"lib/girepository-1.0/GObject-2.0.typelib"))
,(dirname
(search-input-file
inputs
"lib/girepository-1.0/GIRepository-2.0.typelib")))))))
(replace 'check
(lambda* (#:key tests? parallel-tests? #:allow-other-keys)
(when tests?
;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0")
(setenv "HOME" (getcwd))
;; In Guix, gobject-introspection is patched to always embed
;; the absolute path of a typelib library; unfortunately it
;; does this also for test typelibs not meant to be installed;
;; work around it via temporary symlinks.
(let* ((test-libraries (find-files (getcwd)
"\\.so(\\.[0-9]*)?$"))
(test-library-links (map (lambda (x)
(cons x (string-append
#$output "/lib/"
(basename x))))
test-libraries)))
(for-each (match-lambda
((old . new)
(symlink old new)))
test-library-links)
(invoke "xvfb-run" "--" "dbus-run-session"
"meson" "test" "--print-errorlogs" "-t" "0"
"-j" (if parallel-tests?
(number->string (parallel-job-count))
"1"))
(for-each delete-file (map cdr test-library-links))))))
(add-after 'install 'delete-installed-tests
(lambda _
;; Installed tests libraries are installed despite
;; -Dinstalled_tests=false.
(delete-file-recursively
(string-append #$output "/libexec/installed-tests"))))
(add-after 'install 'sanitize-pkg-config-files
(lambda _
(substitute* (find-files #$output "\\.pc$")
(("^Requires.private:.*") "")))))))
'(#:configure-flags '("-Dinstalled_tests=false")
#:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; The test suite requires a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
;; For the missing /etc/machine-id.
(setenv "DBUS_FATAL_WARNINGS" "0")
(setenv "HOME" (getcwd))))
(add-after 'unpack 'skip-failing-tests
(lambda _
;; Expects to test against 2.84, but we're using 2.86.
(substitute* "installed-tests/js/testIntrospection.js"
(("const skip = imports.gi.versions.GioUnix !== '2\\.0';")
"const skip = true;"))))
(add-after 'install 'wrap-gi
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append (assoc-ref outputs "out")
"/bin/gjs")
`("GI_TYPELIB_PATH" suffix
(,(dirname
(search-input-file
inputs
"lib/girepository-1.0/GObject-2.0.typelib"))
,(dirname
(search-input-file
inputs
"lib/girepository-1.0/GIRepository-2.0.typelib"))))))))))
(native-inputs
(list `(,glib "bin") ;for glib-compile-resources
pkg-config
@@ -8083,16 +8021,16 @@ configuration program to choose applications starting on login.")
;; For testing
dbus
dconf ;required to properly store settings
gtk+
sysprof
util-linux
xvfb-run))
(inputs (list mozjs readline))
xorg-server-for-tests))
(propagated-inputs
;; These are all in the Requires field of gjs-1.0.pc.
(list glib gobject-introspection))
;; These are all in the Requires.private field of gjs-1.0.pc.
;; Check the version of mozjs required in meson.build.
(list cairo gobject-introspection mozjs-128))
(inputs
(list gtk+ readline))
(synopsis "Javascript bindings for GNOME")
(home-page "https://gitlab.gnome.org/GNOME/gjs")
(home-page "https://wiki.gnome.org/Gjs")
(description
"Gjs is a javascript binding for GNOME. It's mainly based on spidermonkey
javascript engine and the GObject introspection framework.")
@@ -8414,7 +8352,7 @@ window manager.")
(define-public gnome-online-accounts
(package
(name "gnome-online-accounts")
(version "3.56.4")
(version "3.54.9")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -8422,7 +8360,7 @@ window manager.")
name "-" version ".tar.xz"))
(sha256
(base32
"1cv1l757g4iac39l0ccwvqhibyjdjhy9q8p86fp8mqs5mfnix0ra"))))
"10bwrc50aqaf7j3qabv7zpfnf2dmf9mwbmnjpgqfqsmny2ba80pb"))))
(build-system meson-build-system)
(arguments
(list
@@ -9943,7 +9881,7 @@ easy, safe, and automatic.")
(define-public tinysparql
(package
(name "tinysparql")
(version "3.10.1")
(version "3.9.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/tinysparql/"
@@ -9951,7 +9889,7 @@ easy, safe, and automatic.")
"tinysparql-" version ".tar.xz"))
(sha256
(base32
"0r824dz8szfwd2z95nk8ffkvwq0ayva0wa6n1railrxnkmw3wzss"))))
"13mddmszrk4ihfwi5n67v5ykf01fmld4pkmw4881hphk4j807khl"))))
(build-system meson-build-system)
(arguments
(list
@@ -10234,7 +10172,6 @@ through portals.")
gst-plugins-base
json-glib
libadwaita
libglycin
libportal
libseccomp
libselinux
@@ -10306,7 +10243,7 @@ is complete it provides a graphical representation of each selected folder.")
(define-public gnome-backgrounds
(package
(name "gnome-backgrounds")
(version "49.0")
(version "48.2.1")
(source
(origin
(method url-fetch)
@@ -10315,7 +10252,7 @@ is complete it provides a graphical representation of each selected folder.")
name "-" version ".tar.xz"))
(sha256
(base32
"1dgl8jxczx2cwszg07bhrjpcg2rywfcak2d5md20x84bwl6jdzh1"))))
"1n8ypmdgpp2hj7jsbpicha0d2pfnqbwmavcjfzlmr3qd5rxmn73a"))))
(build-system meson-build-system)
(native-inputs (list gettext-minimal))
(home-page "https://gitlab.gnome.org/GNOME/gnome-backgrounds")
@@ -10380,7 +10317,7 @@ beautifying border effects.")
(define-public dconf-editor
(package
(name "dconf-editor")
(version "49.0")
(version "45.0.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -10388,7 +10325,7 @@ beautifying border effects.")
name "-" version ".tar.xz"))
(sha256
(base32
"16fkppclv7xzglfafqg8b9nd5cjqlfwlyci800gg7psivzxcra4h"))))
"1pa1k510qx4v0ywhqwpj3qfjyz8qiiis4565ghhydnpfg1v2k00i"))))
(build-system meson-build-system)
(arguments
(list #:phases #~(modify-phases %standard-phases
@@ -13446,7 +13383,7 @@ GObject introspection bindings.")
(define-public sysprof
(package
(name "sysprof")
(version "49.0")
(version "48.1")
(source
(origin
(method url-fetch)
@@ -13454,7 +13391,7 @@ GObject introspection bindings.")
(version-major version) "/"
"sysprof-" version ".tar.xz"))
(sha256
(base32 "0y18535lymqv684n8aa2v601d61v6aj8f84690cq8p3q6yb1617z"))))
(base32 "1qmv76877vkw2ajfnc4cr8gw5qch5m32qm1fybig3vgizvymgwal"))))
(build-system meson-build-system)
(arguments
(list
@@ -13751,7 +13688,7 @@ Document Analysis and Recognition program.")
(define-public libadwaita
(package
(name "libadwaita")
(version "1.8.4")
(version "1.8.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libadwaita/"
@@ -13759,7 +13696,7 @@ Document Analysis and Recognition program.")
"libadwaita-" version ".tar.xz"))
(sha256
(base32
"074j59bz5zgnb7grw3clpwyxickw9268k6fj0980bw8gdxxvfayh"))))
"1cdda2sk1w5jmfkism8v6ihl03gs2s72klx7j230wx4i847nx6jq"))))
(build-system meson-build-system)
(arguments
`(#:phases
+354 -354
View File
@@ -106,6 +106,355 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages time))
(define-public mozjs
(package
(name "mozjs")
(version "140.3.0")
(source (origin
(method url-fetch)
;; TODO: Switch to IceCat source once available on ftp.gnu.org.
(uri (string-append "https://ftp.mozilla.org/pub/firefox"
"/releases/" version "esr/source/firefox-"
version "esr.source.tar.xz"))
(sha256
(base32
"05i3czn3v2qnhir8apcphbqy7rmy1dn7kcwx5yyi2qvmjcyfpipg"))))
(build-system gnu-build-system)
(arguments
(list
#:imported-modules %cargo-utils-modules ;for `generate-all-checksums'
#:modules `((guix build cargo-utils)
,@%default-gnu-modules)
#:test-target "check-jstests"
#:configure-flags
#~(list
;; Disable debugging symbols to save space.
"--disable-debug"
"--disable-debug-symbols"
;; This is important because without it gjs will segfault during the
;; configure phase. With jemalloc only the standalone mozjs console
;; will work.
"--disable-jemalloc"
"--enable-tests"
"--enable-hardening"
"--enable-optimize"
"--enable-release"
"--enable-readline"
"--enable-rust-simd"
"--enable-shared-js"
"--with-system-icu"
"--with-system-nspr"
"--with-system-zlib"
"--with-intl-api")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'python-3.11-compatibility
(lambda _
(substitute* '("python/mozbuild/mozpack/files.py"
"python/mozbuild/mozbuild/util.py"
"python/mozbuild/mozbuild/action/process_define_files.py"
"python/mozbuild/mozbuild/backend/base.py"
"python/mozbuild/mozbuild/preprocessor.py")
(("\"rU\"") "\"r\""))))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda _
(let ((null-hash
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
(for-each (lambda (file)
(format #t "patching checksums in ~a~%" file)
(substitute* file
(("^checksum = \".*\"")
(string-append "checksum = \"" null-hash "\""))))
(find-files "." "Cargo\\.lock$"))
(for-each generate-all-checksums
'("js" "third_party/rust")))))
(replace 'configure
(lambda* (#:key configure-flags #:allow-other-keys)
;; The configure script does not accept environment variables as
;; arguments. It also must be run from a different directory,
;; but not the root directory either.
(mkdir "run-configure-from-here")
(chdir "run-configure-from-here")
;; Configure script writes to $HOME.
(setenv "HOME" (getcwd))
(setenv "SHELL" (which "sh"))
(setenv "CONFIG_SHELL" (which "sh"))
(setenv "AUTOCONF" (which "autoconf"))
(apply invoke "python" "../configure.py"
"--enable-project=js"
(string-append "--prefix=" #$output)
configure-flags)))
(add-before 'check 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; Most of the timezone related failures are probably
;; attributable to our use of a system-provided icu4c library
;; instead of the bundled one.
(for-each
delete-file
'( ;; FIXME: An one-hour difference is produced after DST
;; starting in the timezone the test suite uses.
"non262/Date/15.9.5.7.js"
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
"non262/Intl/DateTimeFormat/fractional-second-digits-append-item.js"
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
"non262/Intl/DateTimeFormat/day-period-hour-cycle.js"
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
"non262/Intl/available-locales-supported.js"
;; FIXME: got "en-US", expected "en-US-POSIX"
"non262/Intl/available-locales-resolved.js"
;;; Since 115:
;; Mismatching array lengths
"non262/Intl/supportedValuesOf-timeZones-canonical.js"
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
"non262/Intl/DateTimeFormat/timeZone_version.js"
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
"non262/Intl/Collator/implicithan.js"
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
"non262/Intl/Collator/big5han-gb2312han.js"
;; Since 128:
;; FIXME: got (void 0), expected "GMT"
"non262/Intl/DateTimeFormat/formatRange-timeZoneName-matches-format.js"
;; FIXME: got 7, expected 9: parts count mismatch
"non262/Intl/DateTimeFormat/formatRange-timeZone-offset.js"
"non262/Intl/DateTimeFormat/formatRange-timeZoneName.js"
;; Since 140:
;; RangeError: invalid time zone: America/Coyhaique
"non262/Temporal/ZonedDateTime/zones-and-links.js"
;; got 2042, expected 2043
"non262/Temporal/Intl/consistent-dates.js"
;; got "Pacific/Auckland", expected "Antarctica/McMurdo"
"non262/Intl/DateTimeFormat/timeZone_links.js"
"test262/staging/sm/Temporal/ZonedDateTime/zones-and-links.js"
;; Test262Error: Expected true but got false
"test262/staging/Intl402/Temporal/old/zoneddatetime-dst-corner-cases.js"
;; Test262Error: getTimeZoneTransition(next) does not return its input
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/result-type.js"
;; Expected SameValue («1912-01-01T00:16:08+00:00[Africa/Abidjan]», «null»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/transition-at-instant-boundaries.js"
;; Expected SameValue(«1762063200000000000n», «1572760800000000000n»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/specific-tzdb-values.js"
;; Expected SameValue(«"2025-03-30T03:00:00+02:00[Europe/Berlin]"»,
;; «"2020-10-25T02:00:00+01:00[Europe/Berlin]"»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/nanoseconds-subtracted-or-added-at-dst-transition.js"
;; TypeError: can't access property "epochNanoseconds",
;; before.getTimeZoneTransition(...) is null
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/transitions-close-together.js")))))
(add-before 'check 'pre-check
(lambda _
(setenv "JSTESTS_EXTRA_ARGS"
(string-join
(list
;; Do not run tests marked as "random".
"--exclude-random"
;; Exclude web platform tests.
"--wpt=disabled"
;; Respect the daemons configured number of jobs.
(string-append "--worker-count="
(number->string (parallel-job-count)))))))))))
(native-inputs
(list autoconf
llvm ;for llvm-objdump
m4
perl
pkg-config
python-wrapper
rust
`(,rust "cargo")
rust-cbindgen))
(inputs
(list icu4c-77 readline zlib))
(propagated-inputs
(list nspr)) ; in the Requires.private field of mozjs-*.pc
(home-page
"https://spidermonkey.dev/")
(synopsis "Mozilla JavaScript engine")
(description "SpiderMonkey is Mozilla's JavaScript engine written
in C/C++.")
(license license:mpl2.0))) ; and others for some files
(define-public mozjs-128
(package
(inherit mozjs)
(version "128.3.1")
(source (origin
(method url-fetch)
;; TODO: Switch to IceCat source once available on ftp.gnu.org.
(uri (string-append "https://ftp.mozilla.org/pub/firefox"
"/releases/" version "esr/source/firefox-"
version "esr.source.tar.xz"))
(sha256
(base32
"1a3h7p7126pxzpidb1lqckvhfh1had805mai4l96mnc878phbx61"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(delete "--enable-rust-simd" #$flags))
((#:phases phases)
#~(modify-phases #$phases
(replace 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; This was fixed sometime between 102.15.1 and 115.11.0.
;; These tests are supposed to be skipped on all 64-bit systems.
#$@(if (target-riscv64?)
#~((substitute* '("non262/Array/regress-157652.js"
"non262/regress/regress-422348.js")
(("mips64") "mips64|riscv64")))
#~())
;; FIXME: An one-hour difference is produced after DST
;; starting in the timezone the test suite uses.
(delete-file "non262/Date/15.9.5.7.js")
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
(delete-file "non262/Intl/DateTimeFormat/\
fractional-second-digits-append-item.js")
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
(delete-file "non262/Intl/DateTimeFormat/day-period-hour-cycle.js")
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
(delete-file "non262/Intl/available-locales-supported.js")
;; FIXME: got "en-US", expected "en-US-POSIX"
(delete-file "non262/Intl/available-locales-resolved.js")
;;; Since 115:
;; Mismatching array lengths
(delete-file "non262/Intl/supportedValuesOf-timeZones-canonical.js")
;; FIXME: got "America/Santa_Isabel", expected "America/Tijuana":
;; America/Santa_Isabel -> America/Tijuana
(delete-file "non262/Intl/DateTimeFormat/timeZone_backward_links.js")
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
(delete-file "non262/Intl/DateTimeFormat/timeZone_version.js")
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
(delete-file "non262/Intl/Collator/implicithan.js")
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
(delete-file "non262/Intl/Collator/big5han-gb2312han.js")
;; Since 128:
;; FIXME: got (void 0), expected "GMT"
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZoneName-matches-format.js")
;; FIXME: got 7, expected 9: parts count mismatch
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZone-offset.js")
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZoneName.js"))))))))
(inputs
(list icu4c-73 readline zlib))))
(define-public mozjs-115
(package
(inherit mozjs)
(version "115.26.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.mozilla.org/pub/firefox"
"/releases/" version "esr/source/firefox-"
version "esr.source.tar.xz"))
(sha256
(base32
"0xvwk3vkbxnybpi3gwk48nxffg44lbv58mbk2xq6cz50ffq0k5k2"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(delete "--enable-rust-simd" #$flags))
((#:phases phases)
#~(modify-phases #$phases
(replace 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
(delete-file "non262/Intl/DateTimeFormat/\
fractional-second-digits-append-item.js")
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
(delete-file "non262/Intl/DateTimeFormat/day-period-hour-cycle.js")
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
(delete-file "non262/Intl/available-locales-supported.js")
;; FIXME: got "en-US", expected "en-US-POSIX"
(delete-file "non262/Intl/available-locales-resolved.js")
;;; Since 115:
;; Mismatching array lengths
(delete-file "non262/Intl/supportedValuesOf-timeZones-canonical.js")
;; FIXME: got "America/Santa_Isabel", expected "America/Tijuana":
;; America/Santa_Isabel -> America/Tijuana
(delete-file "non262/Intl/DateTimeFormat/timeZone_backward_links.js")
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
(delete-file "non262/Intl/DateTimeFormat/timeZone_version.js")
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
(delete-file "non262/Intl/Collator/implicithan.js")
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
(delete-file "non262/Intl/Collator/big5han-gb2312han.js"))))
(replace 'pre-check
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; XXX: Delete all tests that test time zone functionality,
;; because the test suite uses /etc/localtime to figure out
;; the offset from the hardware clock, which does not work
;; in the build container. See <tests/non262/Date/shell.js>.
(delete-file-recursively "non262/Date")
(delete-file "non262/Intl/DateTimeFormat/tz-environment-variable.js")
(setenv "JSTESTS_EXTRA_ARGS"
(string-join
(list
;; Do not run tests marked as "random".
"--exclude-random"
;; Exclude web platform tests.
"--wpt=disabled"
;; Respect the daemons configured number of jobs.
(string-append "--worker-count="
(number->string
(parallel-job-count)))))))))))))
(inputs
(list icu4c-73 readline zlib))))
(define computed-origin-method (@@ (guix packages) computed-origin-method))
(define mozilla-compare-locales
@@ -256,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"zh-TW"))
;;; Please keep these versions in sync with icedove.
(define %icecat-base-version "140.10.1")
(define %icecat-base-version "140.10.2")
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
(define %icecat-build-id "20260428000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20260509000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@@ -278,9 +627,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"1fx52y52c3dmgr5gm64x40r2n6zq5ckqiqsd6vlhsly5wb1w0xaf"))))
"0xsfy8b80mh6kb13928ym3pdrnfyfs98xwz6fwrc20p7f99zcsvr"))))
(gnuzilla-commit "5162cbc74c483c361ad5709c767c5cb2395ff4f9")
(gnuzilla-commit "f04b721394b9d1103e92dbe989060f96756fe54c")
(gnuzilla-source
(origin
(method git-fetch)
@@ -291,7 +640,7 @@ in the case of Firefox, it is browser/locales/all-locales."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"06qyirgjjgy7fwn7mbrz23wsdv9a88w70pz8qm1yszln74xxdsp0"))))
"05d3793565pxz1h3wmwxk8j4cfqci4c0jic4q4ys8rbnfz98cj6z"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@@ -900,355 +1249,6 @@ testing.")
(cpe-name . "firefox_esr")
(cpe-version . ,(first (string-split version #\-)))))))
(define-public mozjs
(package
(name "mozjs")
(version %icecat-version)
(source (origin (inherit icecat-source)
(patches (search-patches "mozjs-xp-win.patch"))))
(build-system gnu-build-system)
(arguments
(list
#:imported-modules %cargo-utils-modules ;for `generate-all-checksums'
#:modules `((guix build cargo-utils)
,@%default-gnu-modules)
#:test-target "check-jstests"
#:configure-flags
#~(list
;; Disable debugging symbols to save space.
"--disable-debug"
"--disable-debug-symbols"
;; This is important because without it gjs will segfault during the
;; configure phase. With jemalloc only the standalone mozjs console
;; will work.
"--disable-jemalloc"
"--enable-tests"
"--enable-hardening"
"--enable-optimize"
"--enable-release"
"--enable-readline"
"--enable-rust-simd"
"--enable-shared-js"
"--with-system-icu"
"--with-system-nspr"
"--with-system-zlib"
"--with-intl-api")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'python-3.11-compatibility
(lambda _
(substitute* '("python/mozbuild/mozpack/files.py"
"python/mozbuild/mozbuild/util.py"
"python/mozbuild/mozbuild/action/process_define_files.py"
"python/mozbuild/mozbuild/backend/base.py"
"python/mozbuild/mozbuild/preprocessor.py")
(("\"rU\"") "\"r\""))))
(add-after 'unpack 'restore-api-compat
(lambda _
(substitute* "js/public/GCAPI.h"
(("enum class GCReason")
"#define FIRST_FIREFOX_REASON FIRST_ICECAT_REASON
#define LAST_FIREFOX_REASON LAST_ICECAT_REASON
enum class GCReason"))))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda _
(let ((null-hash
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
(for-each (lambda (file)
(format #t "patching checksums in ~a~%" file)
(substitute* file
(("^checksum = \".*\"")
(string-append "checksum = \"" null-hash "\""))))
(find-files "." "Cargo\\.lock$"))
(for-each generate-all-checksums
'("js" "third_party/rust")))))
(replace 'configure
(lambda* (#:key configure-flags #:allow-other-keys)
;; The configure script does not accept environment variables as
;; arguments. It also must be run from a different directory,
;; but not the root directory either.
(mkdir "run-configure-from-here")
(chdir "run-configure-from-here")
;; Configure script writes to $HOME.
(setenv "HOME" (getcwd))
(setenv "SHELL" (which "sh"))
(setenv "CONFIG_SHELL" (which "sh"))
(setenv "AUTOCONF" (which "autoconf"))
(apply invoke "python" "../configure.py"
"--enable-project=js"
(string-append "--prefix=" #$output)
configure-flags)))
(add-before 'check 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; Most of the timezone related failures are probably
;; attributable to our use of a system-provided icu4c library
;; instead of the bundled one.
(for-each
delete-file
'( ;; FIXME: An one-hour difference is produced after DST
;; starting in the timezone the test suite uses.
"non262/Date/15.9.5.7.js"
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
"non262/Intl/DateTimeFormat/fractional-second-digits-append-item.js"
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
"non262/Intl/DateTimeFormat/day-period-hour-cycle.js"
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
"non262/Intl/available-locales-supported.js"
;; FIXME: got "en-US", expected "en-US-POSIX"
"non262/Intl/available-locales-resolved.js"
;;; Since 115:
;; Mismatching array lengths
"non262/Intl/supportedValuesOf-timeZones-canonical.js"
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
"non262/Intl/DateTimeFormat/timeZone_version.js"
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
"non262/Intl/Collator/implicithan.js"
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
"non262/Intl/Collator/big5han-gb2312han.js"
;; Since 128:
;; FIXME: got (void 0), expected "GMT"
"non262/Intl/DateTimeFormat/formatRange-timeZoneName-matches-format.js"
;; FIXME: got 7, expected 9: parts count mismatch
"non262/Intl/DateTimeFormat/formatRange-timeZone-offset.js"
"non262/Intl/DateTimeFormat/formatRange-timeZoneName.js"
;; Since 140:
;; RangeError: invalid time zone: America/Coyhaique
"non262/Temporal/ZonedDateTime/zones-and-links.js"
;; got 2042, expected 2043
"non262/Temporal/Intl/consistent-dates.js"
;; got "Pacific/Auckland", expected "Antarctica/McMurdo"
"non262/Intl/DateTimeFormat/timeZone_links.js"
"test262/staging/sm/Temporal/ZonedDateTime/zones-and-links.js"
;; Test262Error: Expected true but got false
"test262/staging/Intl402/Temporal/old/zoneddatetime-dst-corner-cases.js"
;; Test262Error: getTimeZoneTransition(next) does not return its input
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/result-type.js"
;; Expected SameValue («1912-01-01T00:16:08+00:00[Africa/Abidjan]», «null»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/transition-at-instant-boundaries.js"
;; Expected SameValue(«1762063200000000000n», «1572760800000000000n»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/specific-tzdb-values.js"
;; Expected SameValue(«"2025-03-30T03:00:00+02:00[Europe/Berlin]"»,
;; «"2020-10-25T02:00:00+01:00[Europe/Berlin]"»
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/nanoseconds-subtracted-or-added-at-dst-transition.js"
;; TypeError: can't access property "epochNanoseconds",
;; before.getTimeZoneTransition(...) is null
"test262/intl402/Temporal/ZonedDateTime/prototype/\
getTimeZoneTransition/transitions-close-together.js")))))
(add-before 'check 'pre-check
(lambda _
(setenv "JSTESTS_EXTRA_ARGS"
(string-join
(list
;; Do not run tests marked as "random".
"--exclude-random"
;; Exclude web platform tests.
"--wpt=disabled"
;; Respect the daemons configured number of jobs.
(string-append "--worker-count="
(number->string (parallel-job-count)))))))))))
(native-inputs
(list autoconf
llvm ;for llvm-objdump
m4
perl
pkg-config
python-wrapper
rust
`(,rust "cargo")
rust-cbindgen))
(inputs
(list icu4c-77 readline zlib))
(propagated-inputs
(list nspr)) ; in the Requires.private field of mozjs-*.pc
(home-page
"https://spidermonkey.dev/")
(synopsis "Mozilla JavaScript engine")
(description "SpiderMonkey is Mozilla's JavaScript engine written
in C/C++.")
(license license:mpl2.0))) ; and others for some files
(define-public mozjs-128
(package
(inherit mozjs)
(version "128.3.1")
(source (origin
(method url-fetch)
;; TODO: Switch to IceCat source once available on ftp.gnu.org.
(uri (string-append "https://ftp.mozilla.org/pub/firefox"
"/releases/" version "esr/source/firefox-"
version "esr.source.tar.xz"))
(sha256
(base32
"1a3h7p7126pxzpidb1lqckvhfh1had805mai4l96mnc878phbx61"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(delete "--enable-rust-simd" #$flags))
((#:phases phases)
#~(modify-phases #$phases
(replace 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; This was fixed sometime between 102.15.1 and 115.11.0.
;; These tests are supposed to be skipped on all 64-bit systems.
#$@(if (target-riscv64?)
#~((substitute* '("non262/Array/regress-157652.js"
"non262/regress/regress-422348.js")
(("mips64") "mips64|riscv64")))
#~())
;; FIXME: An one-hour difference is produced after DST
;; starting in the timezone the test suite uses.
(delete-file "non262/Date/15.9.5.7.js")
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
(delete-file "non262/Intl/DateTimeFormat/\
fractional-second-digits-append-item.js")
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
(delete-file "non262/Intl/DateTimeFormat/day-period-hour-cycle.js")
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
(delete-file "non262/Intl/available-locales-supported.js")
;; FIXME: got "en-US", expected "en-US-POSIX"
(delete-file "non262/Intl/available-locales-resolved.js")
;;; Since 115:
;; Mismatching array lengths
(delete-file "non262/Intl/supportedValuesOf-timeZones-canonical.js")
;; FIXME: got "America/Santa_Isabel", expected "America/Tijuana":
;; America/Santa_Isabel -> America/Tijuana
(delete-file "non262/Intl/DateTimeFormat/timeZone_backward_links.js")
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
(delete-file "non262/Intl/DateTimeFormat/timeZone_version.js")
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
(delete-file "non262/Intl/Collator/implicithan.js")
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
(delete-file "non262/Intl/Collator/big5han-gb2312han.js")
;; Since 128:
;; FIXME: got (void 0), expected "GMT"
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZoneName-matches-format.js")
;; FIXME: got 7, expected 9: parts count mismatch
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZone-offset.js")
(delete-file "non262/Intl/DateTimeFormat/formatRange-timeZoneName.js"))))))))
(inputs
(list icu4c-73 readline zlib))))
(define-public mozjs-115
(package
(inherit mozjs)
(version "115.26.0")
(source (origin
(method url-fetch)
(uri (string-append "https://archive.mozilla.org/pub/firefox"
"/releases/" version "esr/source/firefox-"
version "esr.source.tar.xz"))
(sha256
(base32
"0xvwk3vkbxnybpi3gwk48nxffg44lbv58mbk2xq6cz50ffq0k5k2"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(delete "--enable-rust-simd" #$flags))
((#:phases phases)
#~(modify-phases #$phases
(replace 'adjust-tests
(lambda _
(with-directory-excursion "../js/src/tests"
;; The test suite expects a lightly patched ICU. Disable tests
;; that do not work with the system version. See
;; "intl/icu-patches" for clues.
;; See <https://unicode-org.atlassian.net/browse/ICU-20992> and
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=1636984> and
;; related patch for why this is failing.
(delete-file "non262/Intl/DateTimeFormat/\
fractional-second-digits-append-item.js")
;; FIXME: got "0 \u251CAM/PM: noon\u2524", expected "0 (AM/PM: noon)"
(delete-file "non262/Intl/DateTimeFormat/day-period-hour-cycle.js")
;; FIXME: got "en-US-posix", expected "en-US-POSIX".
(delete-file "non262/Intl/available-locales-supported.js")
;; FIXME: got "en-US", expected "en-US-POSIX"
(delete-file "non262/Intl/available-locales-resolved.js")
;;; Since 115:
;; Mismatching array lengths
(delete-file "non262/Intl/supportedValuesOf-timeZones-canonical.js")
;; FIXME: got "America/Santa_Isabel", expected "America/Tijuana":
;; America/Santa_Isabel -> America/Tijuana
(delete-file "non262/Intl/DateTimeFormat/timeZone_backward_links.js")
;; TODO: tzdata 2024a expected find a way to regenerate
;; these generated tests
(delete-file "non262/Intl/DateTimeFormat/timeZone_version.js")
;; FIXME: got "\uD840\uDDF2", expected "\u5047"
(delete-file "non262/Intl/Collator/implicithan.js")
;; FIXME: got "\uD840\uDDF2", expected "\u3467"
(delete-file "non262/Intl/Collator/big5han-gb2312han.js"))))
(replace 'pre-check
(lambda _
(with-directory-excursion "../js/src/tests"
(substitute* "shell/os.js"
;; FIXME: Why does the killed process have an exit status?
((".*killed process should not have exitStatus.*")
""))
;; XXX: Delete all tests that test time zone functionality,
;; because the test suite uses /etc/localtime to figure out
;; the offset from the hardware clock, which does not work
;; in the build container. See <tests/non262/Date/shell.js>.
(delete-file-recursively "non262/Date")
(delete-file "non262/Intl/DateTimeFormat/tz-environment-variable.js")
(setenv "JSTESTS_EXTRA_ARGS"
(string-join
(list
;; Do not run tests marked as "random".
"--exclude-random"
;; Exclude web platform tests.
"--wpt=disabled"
;; Respect the daemons configured number of jobs.
(string-append "--worker-count="
(number->string
(parallel-job-count)))))))))))))
(inputs
(list icu4c-73 readline zlib))))
;;; TEMPORARY old version of icecat-source for use by icedove until it is updated.
(define %icecat-140.9.1-base-version "140.9.1")
(define %icecat-140.9.1-version (string-append %icecat-140.9.1-base-version "-gnu1"))
+20 -32
View File
@@ -578,10 +578,7 @@ This package provides the core library and elements.")
(substitute* "tests/check/meson.build"
;; This test causes nondeterministic failures (see:
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/895>).
((".*'elements/appsrc.c'.*") "")
;; This one is flaky (see:
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/work_items/5016>).
((".*'elements/inputselector.c'.*") ""))
((".*'elements/appsrc.c'.*") ""))
;; Some other tests fail on other architectures.
#$@(cond
((target-x86-32?)
@@ -769,8 +766,7 @@ model to base your own plug-in on, here it is.")
(build-system meson-build-system)
(arguments
(list
#:configure-flags #~(list "-Dgpl=enabled"
"-Dsctp-internal-usrsctp=disabled"
#:configure-flags #~(list "-Dsctp-internal-usrsctp=disabled"
;; TODO: Figure out why audiovisualizer test
;; fails on riscv64-linux.
#$@(if (target-riscv64?)
@@ -780,15 +776,6 @@ model to base your own plug-in on, here it is.")
#:phases
#~(modify-phases %standard-phases
#$@%common-gstreamer-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "ext/resindvd/resindvdsrc.c"
;; `g_module_open' is a wrapper above dlopen; pass it the
;; absolute file name of the library to ensure it is always
;; found.
(("\"libdvdcss\"")
(format #f "~s"
(search-input-file inputs "lib/libdvdcss.so"))))))
(add-after 'unpack 'adjust-tests
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(let ((gst-plugins-good (assoc-ref (or native-inputs inputs)
@@ -802,18 +789,18 @@ model to base your own plug-in on, here it is.")
;; The 'elements_shm.test_shm_live' test sometimes times out
;; (see:
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/790>).
;; https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/790).
((".*'elements/shm\\.c'.*") "")
;; The 'elements_curlhttpsrc' test sometimes times out.
((".*'elements/curlhttpsrc\\.c'.*") "")
;; The 'mxfdemux' test fails for unknown reasons (see:
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3921>).
;; https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3921).
((".*'elements/mxfdemux.c'.*") "")
;; Unexpected critical/warning, see
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/792>
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3000>
((".*'elements/netsim\\.c'.*") "")
;; TODO: Figure out why this test fails on riscv64-linux.
@@ -822,19 +809,30 @@ model to base your own plug-in on, here it is.")
"'elements/viewfinderbin.c'], true, ],"))
'())
;; This test is flaky.
;; This test is flaky on at least some architectures.
;; https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1244
(("'elements/camerabin\\.c'\\].*],")
"'elements/camerabin.c'], true, ],")
#$@(if (member (%current-system)
'("aarch64-linux" "riscv64-linux"))
`((("'elements/camerabin\\.c'\\].*],")
"'elements/camerabin.c'], true, ],"))
'())
;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1412
((".*elements/dtls\\.c.*") "")
;; https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3921
((".*elements/mxfdemux\\.c.*") "")
;; Unable to create pipeline 'bin.
;; ( vulkanupload ! vulkancolorconvert ! vulkandownload )':
;; no element "vulkanupload"
((".*elements/vkcolorconvert\\.c.*") "")
((".*elements/vkupload\\.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.
((".*\"EAN_13\".*")
"")))))
(add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
@@ -1164,19 +1162,9 @@ after their category.")
(build-system meson-build-system)
(arguments
(list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
#:configure-flags #~(list "-Dgpl=enabled")
#:phases
#~(modify-phases %standard-phases
#$@%common-gstreamer-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "ext/dvdread/dvdreadsrc.c"
;; `g_module_open' is a wrapper above dlopen; pass it the
;; absolute file name of the library to ensure it is always
;; found.
(("\"libdvdcss\"")
(format #f "~s"
(search-input-file inputs "lib/libdvdcss.so"))))))
(add-before 'check 'pre-check
(lambda _
;; Tests require a running X server.
+38 -44
View File
@@ -24,7 +24,7 @@
;;; Copyright © 2019 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020-2026 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2021 Simon Streit <simon@netpanic.org>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
@@ -387,7 +387,7 @@ applications.")
(define-public pango
(package
(name "pango")
(version "1.57.1")
(version "1.56.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -396,7 +396,7 @@ applications.")
(file-name (git-file-name name version))
(sha256
(base32
"0dfvlag7jhf4fzraxwhx4s016h2z7igq3knza9vfklkss8igs00a"))))
"0jnmydds9dmdah4fjj5rr5gmf1imxlxjc0w98if642n98vmsdf67"))))
(build-system meson-build-system)
(arguments
(list
@@ -647,7 +647,7 @@ highlighting and other features typical of a source code editor.")
(define-public gdk-pixbuf
(package
(name "gdk-pixbuf")
(version "2.44.5")
(version "2.44.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -655,7 +655,7 @@ highlighting and other features typical of a source code editor.")
name "-" version ".tar.xz"))
(sha256
(base32
"0s5b010jlinmki5iidbj2yip8n2sxc6xc0qmcvpc104v2c4kxfb9"))
"05xxpl3sd37lsp5qqy01m0w9c14dqfi84x9rawsffyj2y71sm8ck"))
(patches
(search-patches
"gdk-pixbuf-honor-GUIX_GDK_PIXBUF_MODULE_FILES.patch"))))
@@ -781,7 +781,7 @@ images.")
(hidden-package
(package
(name "at-spi2-core")
(version "2.60.0")
(version "2.52.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -789,7 +789,7 @@ images.")
name "-" version ".tar.xz"))
(sha256
(base32
"16fb2hv12k2vzh462gbd4qf8ipvnb2ijrc5d7w56dzfqjwd0rrc0"))))
"1azmbzik0gl2s03c9lq3dff3h1iql1zvlwn28yhizl68421zrhqa"))))
(build-system meson-build-system)
(arguments
(list
@@ -987,7 +987,7 @@ application suites.")
(package
(inherit gtk+-2)
(name "gtk+")
(version "3.24.52")
(version "3.24.51")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -996,11 +996,10 @@ application suites.")
(file-name (git-file-name name version))
(sha256
(base32
"197w1mb5vqm5d07sgdqkg54can7f1p4yjh42zx0y8z6m9p43shck"))
"07vw0rani9d65px36fzzj7sprv5r48shyjdgzipkihzqaldd98yh"))
(patches (search-patches
"gtk3-respect-GUIX_GTK3_PATH.patch"
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"
"gtk3-treeview-test-fix.patch"))))
"gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
;; There is no "doc" output, because adding gtk-doc here would introduce a
;; dependency cycle with itself.
(outputs '("out" "bin"))
@@ -1076,20 +1075,22 @@ application suites.")
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda _
(substitute* "testsuite/gtk/meson.build"
((".*\\['defaultvalue'],.*") "")
((".*\\['objects-finalize',.*") ""))
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
;; fail for unknown reasons (see:
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
(substitute* "testsuite/reftests/meson.build"
((" 'flipping-icons.ui',.*") "")
((" 'gtk-icontheme-sizing.ui',.*") ""))
;; This test fails just on i686-linux, for unknown reasons.
#$@(if (target-x86-32?)
#~((substitute* "testsuite/reftests/meson.build"
((" 'linear-gradient.ui',.*") "")))
#~())))
;; These tests fail only in the containerized environment, for
;; unknown reasons.
(substitute* "testsuite/gtk/meson.build"
((".*\\['defaultvalue'],.*") "")
((".*\\['objects-finalize',.*") ""))
;; The 'flipping-icons.ui' and 'gtk-icontheme-sizing.ui' tests
;; fail for unknown reasons (see:
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/7679>).
(substitute* "testsuite/reftests/meson.build"
((" 'flipping-icons.ui',.*") "")
((" 'gtk-icontheme-sizing.ui',.*") ""))
;; This test fails just on i686-linux, for unknown reasons.
#$@(if (target-x86-32?)
#~((substitute* "testsuite/reftests/meson.build"
((" 'linear-gradient.ui',.*") "")))
#~())))
(add-after 'unpack 'generate-gdk-pixbuf-loaders-cache-file
(assoc-ref glib-or-gtk:%standard-phases
'generate-gdk-pixbuf-loaders-cache-file))
@@ -1113,13 +1114,13 @@ application suites.")
"/share/applications")))))))
(native-search-paths
(list (search-path-specification
(variable "GUIX_GTK3_PATH")
(files '("lib/gtk-3.0")))))))
(variable "GUIX_GTK3_PATH")
(files '("lib/gtk-3.0")))))))
(define-public gtk
(package
(name "gtk")
(version "4.22.1")
(version "4.20.3")
(source
(origin
(method url-fetch)
@@ -1127,11 +1128,9 @@ application suites.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1z2mkmazc2d51jbg3qwwdycycqiwswm88nhw6bxscz8j86f5lyyd"))
(base32 "0ly1gqc6ybxv5f2a9hvjp5k6l9mfzy2yv8iy2xqnr9l8628g4wr8"))
(patches
(search-patches "gtk4-demo-reproducible.patch"
"gtk4-needs-udmabuf.patch"
"gtk4-respect-GUIX_GTK4_PATH.patch"))
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))
(modules '((guix build utils)))))
(build-system meson-build-system)
(outputs '("out" "bin" "doc"))
@@ -1199,9 +1198,6 @@ application suites.")
(("[ \t]*'empty-text.node',") "")
(("[ \t]*'testswitch.node',") "")
(("[ \t]*'widgetfactory.node',") "")
;; The gtklistitemmanager test is flaky (see:
;; <https://gitlab.gnome.org/GNOME/gtk/-/issues/6547>).
((".*'gtklistitemmanager.c',.*") "")
;; XXX: Figure out why this fails and report upstream.
((".*'memorytexture',.*") "")
((".*'yuv-matrix-dmabuf',.*") ""))
@@ -1258,10 +1254,8 @@ application suites.")
(setenv "XDG_CACHE_HOME" (getcwd))))
(add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; Tests require a running X server. The '-noreset' option is
;; necessary to avoid spurious "Failed to open display" test
;; errors.
(system "Xvfb :1 +extension GLX -screen 0 1024x768x24 -noreset &")
;; Tests require a running X server.
(system "Xvfb :1 +extension GLX &")
(setenv "DISPLAY" ":1")
;; Tests write to $HOME.
(setenv "HOME" (getcwd))
@@ -1304,7 +1298,6 @@ application suites.")
docbook-xsl
gettext-minimal
`(,glib "bin")
glibc-utf8-locales ;some tests require en_US.UTF-8
gobject-introspection ;for building introspection data
graphene
gtk-doc/stable ;for building documentation
@@ -1328,6 +1321,7 @@ application suites.")
(inputs
(list colord ;for color printing support
cups ;for CUPS print-backend
ffmpeg ;for ffmpeg media-backend
fribidi
gi-docgen
gstreamer ;for gstreamer media-backend
@@ -1371,8 +1365,8 @@ application suites.")
(native-search-paths
(list
(search-path-specification
(variable "GUIX_GTK4_PATH")
(files '("lib/gtk-4.0")))))
(variable "GUIX_GTK4_PATH")
(files '("lib/gtk-4.0")))))
(search-paths native-search-paths)
(home-page "https://www.gtk.org/")
(synopsis "Cross-platform widget toolkit")
@@ -2211,7 +2205,7 @@ information.")
(define-public gtk-doc
(package
(name "gtk-doc")
(version "1.35.1")
(version "1.34.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -2219,7 +2213,7 @@ information.")
name "-" version ".tar.xz"))
(sha256
(base32
"1qi5bgqca1chdcfw7v4h3sw8jg661nmp77d7x658mn6nxlj9y731"))
"0746lwxgybc5ss3hzdd0crjjghk0ck0x9jbmz73iig405arp42xj"))
(patches
(search-patches "gtk-doc-respect-xml-catalog.patch"
"gtk-doc-mkhtml-test-fix.patch"))))
+43
View File
@@ -340,6 +340,49 @@ more.")
currently does not do much, but it might in the future.")
(license license:gpl3+)))
(define-public guile-arguments
(package
(name "guile-arguments")
(version "0.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/fishinthecalculator/arguments")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1r71l6099afk017a3ck5mpp2xhb3bm45s6nga24lhby52rxbkayl"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'generate-api-reference
(lambda _
(invoke "scripts/generate_api_reference.sh")))
(add-after 'build 'build-html-manual
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke `("make" "html" ,@make-flags))))
(add-after 'install 'install-html-manual
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke `("make" "install-html" ,@make-flags)))))))
(native-inputs
(list autoconf
automake
guile-documenta
pkg-config
texinfo))
(inputs (list guile-3.0))
(synopsis "Parse command line arguments into structured objects")
(description "This package provides a Guile library to parse command line
arguments into structured objects. It allows declaring arguments through a
small @acronym{DSL, Domain Specific Language}, then call a procedure to parse the
command line into a structured object.")
(home-page "https://codeberg.org/fishinthecalculator/arguments")
(license license:gpl3+)))
(define-public guile-oauth
(package
(name "guile-oauth")
+7 -7
View File
@@ -467,15 +467,15 @@ without requiring the source code to be rewritten.")
(native-search-paths
(list (search-path-specification
(variable "GUILE_LOAD_PATH")
(files '("share/guile/site/3.0")))
(variable "GUILE_LOAD_PATH")
(files '("share/guile/site/3.0")))
(search-path-specification
(variable "GUILE_LOAD_COMPILED_PATH")
(files '("lib/guile/3.0/site-ccache"
"share/guile/site/3.0")))
(variable "GUILE_LOAD_COMPILED_PATH")
(files '("lib/guile/3.0/site-ccache"
"share/guile/site/3.0")))
(search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files '("lib/guile/3.0/extensions")))))))
(variable "GUILE_EXTENSIONS_PATH")
(files '("lib/guile/3.0/extensions")))))))
(define-public guile-3.0.11
(package
+2 -2
View File
@@ -414,7 +414,7 @@ much more.")
(define-public bvi
(package
(name "bvi")
(version "1.4.2")
(version "1.5.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -422,7 +422,7 @@ much more.")
"/bvi-" version ".src.tar.gz"))
(sha256
(base32
"1wllrvs8r8bdm11sx01095j8cj4drjmw0dlkjfdkm5lnnk11dfjb"))))
"1jvldfxdpgf044hnhjhxi24a9bkbn8adl22icc8rfarv39m72h35"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; no check target
(inputs
+61 -5
View File
@@ -334,6 +334,61 @@ Hurd-minimal package which are needed for both glibc and GCC.")
(define %add-to-hurd-subdirs
(list "libmachdevdde" "libddekit"))
(define-public libacpica
(let ((commit "0c3593e27947ef0734a070143caadaed28438354")
(revision "0"))
(package
(name "libacpica")
(home-page "https://salsa.debian.org/hurd-team/libacpica")
(version (git-version "20220331" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit commit)))
(sha256
(base32
"0hyfg4w2ch6a833kkxjcsddqq2712gqlbvrl6zv5yzvallpfzh7d"))
(file-name (git-file-name name version))))
(arguments
(list
#:tests? #f ;no tests
#:modules '((srfi srfi-26)
(ice-9 rdelim)
(guix build utils)
(guix build gnu-build-system))
#:make-flags #~`(,(string-append "CC=" #$(cc-for-target))
,(string-append "PREFIX=" #$output))
;; As we are using the Debian package as upstream, we follow their
;; build:
;; * apply patches in debian/patches taken from the
;; debian/patches/series file
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'apply-patches
(lambda* (#:key target #:allow-other-keys)
(let* ((patch-directory "debian/patches/")
(series (string-append patch-directory "series"))
(text (with-input-from-file series read-string))
(lines (string-split (string-trim-right text) #\newline))
(patches (filter (negate (cute string-prefix? "#" <>))
lines))
(patch-files (map
(cute string-append patch-directory <>)
patches)))
(for-each
(cute invoke "patch" "--force" "-p1" "-i" <>)
patch-files)))))))
(inputs (list libirqhelp
libpciaccess))
(build-system gnu-build-system)
(supported-systems %hurd-systems)
(synopsis "ACPICA as a library")
(description "libacpica provides ACPICA as a library.")
(license (list bsd-3
gpl2)))))
(define-public hurd
(package
(name "hurd")
@@ -588,7 +643,8 @@ exec ${system}/rc \"$@\"
"CFLAGS=-fcommon")))
(build-system gnu-build-system)
(inputs
`(("libgcrypt" ,libgcrypt) ;for /hurd/random
`(("libacpica" ,libacpica) ;for hurd/acpi.static
("libgcrypt" ,libgcrypt) ;for /hurd/random
("libdaemon" ,libdaemon) ;for /bin/console --daemonize
("libxcrypt" ,libxcrypt) ;for password hashing
("unifont" ,unifont)
@@ -739,11 +795,11 @@ in userland processes thanks to the DDE layer.")
(license gpl2))))
(define-public rumpkernel
(let ((commit "2aad456903b2dc2232fa18c7f286cea6d77b570f")
(revision "0"))
(let ((commit "debian/0_20250111-6")
(revision "1"))
(package
(name "rumpkernel")
(version (git-version "0-20250111" revision commit))
(version (git-version "0-20250111" revision (substring commit 7)))
;; This uses the Debian Salsa rumpkernel package git as upstream as that
;; is where development happens. Once things have stabilized, upstream
;; may change to the NetBSD git from where Debian takes their snapshots.
@@ -754,7 +810,7 @@ in userland processes thanks to the DDE layer.")
(commit commit)))
(sha256
(base32
"14fiv2llvd5s1vi9gigmi1vi0b9yvg2zqyc9xg67ffxl1phv7p8j"))
"1pvd54k06rlgvppfbzl1d0qqcjc0kshamw1iw40s3apabh87pw1i"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
+3 -3
View File
@@ -89,14 +89,14 @@
(define-public ibus-minimal
(package
(name "ibus")
(version "1.5.34-rc2")
(version "1.5.32")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ibus/ibus")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32 "1x05dwhi79s1mqgs34srdr2d5fvkyvihqvcnw91630xyf4r76b1h"))))
(sha256 (base32 "1rn2xpzi6x57n01rjin4a2h8yy1wdmvadgnglw0p6bdnc31q17a6"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "doc"))
(arguments
@@ -204,7 +204,7 @@
wayland
xmodmap))
(native-inputs
(list autoconf-2.72
(list autoconf
automake
docbook-xml-4.1.2
`(,glib "bin") ;for glib-genmarshal
+2 -2
View File
@@ -2854,7 +2854,7 @@ Format) file format decoder and encoder.")
(define-public libjxl
(package
(name "libjxl")
(version "0.11.2")
(version "0.11.1")
(outputs (list "out" "pixbuf-loader"))
(source
(origin
@@ -2865,7 +2865,7 @@ Format) file format decoder and encoder.")
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1c7d0mlxmmjby00hzgwqfyr6nb6lqcgcjsqcdmg2l10rmxiw33rg"))
(base32 "1wfxzrhj8a19z6x47ib1qbmgyg56jsxjs955xcvqhdkrx8l2271r"))
(modules '((guix build utils)))
(snippet
;; Delete the bundles that will not be used.
+34 -8
View File
@@ -233,7 +233,12 @@ This package is part of the KDE multimedia module.")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; testsqlscanmanager fails, even when run manually.
(invoke "ctest" "-E" "testsqlscanmanager")))))))
(invoke "ctest" "-E" "testsqlscanmanager"))))
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/amarok")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(native-inputs
(list extra-cmake-modules
googletest
@@ -898,8 +903,16 @@ autoloading of subtitle files for use while playing video.")
qtdeclarative
qtwayland))
(arguments
(list #:qtbase qtbase
#:tests? #f))
(list
#:qtbase qtbase
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/kamoso")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(home-page "https://apps.kde.org/kamoso/")
(synopsis "Take pictures and videos out of your webcam")
(description "Kamoso is a simple and friendly program to use your
@@ -1246,14 +1259,27 @@ APIs. It can also play videos from PeerTube sources.")
"0iaandlbv2v4a6wsdxk19ynj77axd3kc72nw28bvbsfb0kqc0mai"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
#:tests? #f)) ;no tests
(list
#:qtbase qtbase
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/rattlesnake")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(native-inputs
(list extra-cmake-modules))
(inputs
(list kirigami qtdeclarative qtmultimedia qtwayland))
(propagated-inputs
(list gstreamer gst-plugins-base gst-plugins-good))
(list gst-plugins-base
gst-plugins-good
gstreamer
kirigami
kirigami-addons
qtdeclarative
qtmultimedia
qtwayland))
(home-page "https://invent.kde.org/multimedia/rattlesnake")
(synopsis "Metronome")
(description "Rattlesnake is a metronome app.")
+2 -2
View File
@@ -219,14 +219,14 @@ resolution, asynchronous file system operations, and threading primitives.")
(package
(inherit libuv)
(name "libuv")
(version "1.43.0")
(version "1.44.2")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"194kwq3jfj9s628kzkchdca534rikjw0xiyas0cjbphqmsvjpmwh"))))
"1d1wy1061cf2mfygr2j6jbm0da2mhsf0l9yq4rjkqrsmijbdrz6c"))))
(properties '((hidden? . #t)))))
(define-public perl-anyevent
+395 -488
View File
File diff suppressed because it is too large Load Diff
+10 -2
View File
@@ -29424,7 +29424,7 @@ running into parallelism problems when having to change directory.")
(define-public sbcl-simple-matrix
(package
(name "sbcl-simple-matrix")
(version "3.15")
(version "3.16")
(source
(origin
(method git-fetch)
@@ -29433,7 +29433,7 @@ running into parallelism problems when having to change directory.")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-simple-matrix" version))
(sha256
(base32 "1lpmqp1mcnzkpxi0zfsd4n85c6gr6d01hlf8yka8068kyypbhkvg"))))
(base32 "1yfh40kvpgjaq0vlm5lqnfpll9swl7gzcxnd0qlk6hshhqyc373q"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-fiveam))
(synopsis "Matrix library for Common Lisp")
@@ -32061,6 +32061,14 @@ a simple-array ensuring that the resulting array is still a simple-array.")
(arguments
`(#:phases
(modify-phases %standard-phases
;; sbcl 2.6.4 is too smart, and figures out the test will trigger a
;; division by zero at compile time and refuse to compile the file. It
;; looks like the test already tries to avoid compile time checks, so
;; we go a step further and EVAL parts of the expression.
(add-after 'unpack 'circumvent-compile-time-check
(lambda _
(substitute* "test/tests.lisp"
(("\\(expt 1024 0\\)") "(eval '(expt 1024 0))"))))
(add-after 'check 'delete-test-results
(lambda* (#:key outputs #:allow-other-keys)
(let ((test-results (string-append (assoc-ref outputs "out")
+78 -2
View File
@@ -109,6 +109,7 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages readline)
#:use-module (gnu packages sdl)
#:use-module (gnu packages stb)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
@@ -892,13 +893,16 @@ interface to the Tk widget system.")
(arguments
(list #:make-flags
#~(list
(string-append "DESTDIR=" #$output)
(string-append "PREFIX=")
(string-append "PREFIX=" #$output)
(string-append "CC=" #$(cc-for-target)))
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure))))
(native-search-paths
(list (search-path-specification
(variable "JANET_PATH")
(files (list "lib/janet")))))
(home-page "https://janet-lang.org/")
(synopsis "Functional, imperative and embeddable programming language")
(description
@@ -999,6 +1003,78 @@ tool and its main uses are installing dependencies, compiling C/C++ to native
libraries, and other management tasks for Janet projects.")
(license license:expat)))
(define-public janet-spork
(package
(name "janet-spork")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/janet-lang/spork")
(commit (string-append "v" version))))
(modules '((guix build utils)))
(snippet #~(for-each
delete-file-recursively
'("deps/miniz" "deps/stb")))
(file-name (git-file-name name version))
(sha256
(base32 "0c9f54wl8g7zazrqk5f6nhp9lp38pymkxmcipagrip915i8ks0v8"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(delete 'check)
(add-after 'unpack 'fixes
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("test/suite-cjanet.janet")
(("\\(end-jit\\)" all)
(simple-format #f "(setdyn :cc ~s)\n~a"
#$(cc-for-target) all)))
(substitute* '("src/zip.c")
(("\"\\.\\./deps/miniz/miniz\\.h\"") "<miniz/miniz.h>"))
(let ((stb (dirname (search-input-file inputs "stb_image.h"))))
(substitute* '("project.janet")
(("\"deps/miniz/miniz\\.c\"") "")
((":headers @\\[\"deps/miniz/miniz\\.h\"\\]")
":ldflags @[\"-lminiz\"]")
(("\"-Ideps/stb\"") (string-append "\"-I" stb "\""))))))
(replace 'build
(lambda _
(invoke "janet" "-l" "./bundle" "-e" "(build)")))
(replace 'install
(lambda _
(let* ((janet-path (string-append #$output "/lib/janet")))
(mkdir-p janet-path)
(setenv "JANET_PATH" janet-path))
(invoke "janet" "--install" ".")))
(add-after 'install 'fix-output
(lambda _
(let* ((inc (string-append #$output "/include/janet/spork"))
(bin (string-append #$output "/lib/janet/bin"))
(man (string-append #$output "/lib/janet/man")))
(mkdir-p inc)
(rename-file
(string-append #$output "/lib/janet/tarray.h")
(string-append inc "/tarray.h"))
(rename-file bin (string-append #$output "/bin"))
(mkdir-p (string-append #$output "/share"))
(rename-file man (string-append #$output "/share/man")))))
(add-after 'fix-output 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "janet" "-l" "./bundle" "-e" "(check)")))))))
(inputs (list janet miniz stb))
(home-page "https://github.com/janet-lang/spork")
(synopsis "Extended standard library for Janet")
(description
"Spork is a utility library for Janet. It contains small modules
that should be useful for general programming in Janet but are not included
in the standard library.")
(license license:expat)))
(define-public lisp-repl-core-dumper
(package
(name "lisp-repl-core-dumper")
+3 -4
View File
@@ -1821,7 +1821,7 @@ multiple local rocks trees.")
(define-public fennel
(package
(name "fennel")
(version "1.6.0")
(version "1.6.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1830,11 +1830,10 @@ multiple local rocks trees.")
(file-name (git-file-name name version))
(sha256
(base32
"09gky2w8z83qqv0n9vx8jqsfldni14kjr6l7y5k44lq5i30i0fsv"))))
"0n58410gmxfnmgggdw6ap12fa68z5s7f83487b2apim52a8wpd9h"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags #~(list (string-append "PREFIX="
(assoc-ref %outputs "out")))
(list #:make-flags #~(list (string-append "PREFIX=" #$output))
#:test-target "test"
#:phases #~(modify-phases %standard-phases
(delete 'configure)
+19 -14
View File
@@ -450,7 +450,7 @@ programming languages.")
(define-public cvc5
(package
(name "cvc5")
(version "1.3.3")
(version "1.3.4")
(source
(origin
(method git-fetch)
@@ -458,10 +458,8 @@ programming languages.")
(url "https://github.com/cvc5/cvc5/")
(commit (string-append "cvc5-" version))))
(file-name (git-file-name name version))
(patches (search-patches "cvc5-reproducible-build.patch"
"cvc5-symfpu-compatibility.patch"))
(sha256
(base32 "0ynz7di4dyyiiydgmf0z9dc2jl7nm44xi0amch29rcgznwr4wy5m"))))
(base32 "1xix197pyd45jakk10apam3bhl38nk14zjk0fzr9rj4knh10x5rx"))))
(build-system cmake-build-system)
(arguments
(list
@@ -3691,7 +3689,7 @@ script files.")
;; 'Automated Testing System', which may be accessed after
;; installation via the draw.sh script. draw.sh is located in
;; the bin directory. For details see:
;; https://www.opencascade.com/doc/occt-7.3.0/overview/html/\
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
;; occt_dev_guides__tests.html
#:tests? #f
#:configure-flags
@@ -3700,7 +3698,7 @@ script files.")
"-DUSE_FREEIMAGE:BOOL=ON"
"-DUSE_RAPIDJSON:BOOL=ON"
"-DUSE_TBB:BOOL=ON"
"-DUSE_VTK:BOOL=OFF"
"-DUSE_VTK:BOOL=ON"
"-DBUILD_DOC_Overview:BOOL=OFF"
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
@@ -3718,9 +3716,10 @@ script files.")
onetbb
rapidjson
tcl
tk))
tk
vtk))
;; TODO: build Overview documentation and add 'doc' output.
(home-page "https://www.opencascade.com")
(home-page "https://dev.opencascade.org")
(synopsis "Libraries for 3D modeling and numerical simulation")
(description
"Open CASCADE is a set of libraries for the development of applications
@@ -3790,7 +3789,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
;; 'Automated Testing System', which may be accessed after
;; installation via the draw.sh script. draw.sh is located in
;; the bin directory. For details see:
;; https://www.opencascade.com/doc/occt-7.3.0/overview/html/\
;; https://dev.opencascade.org/doc/occt-7.3.0/overview/html/\
;; occt_dev_guides__tests.html
#:tests? #f
;; Configure without freeimage: attempting to link against the
@@ -3800,7 +3799,7 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
(list "-DCMAKE_CXX_FLAGS=-fpermissive" ;from unsigned char* to char*
"-DUSE_FREEIMAGE:BOOL=OFF"
"-DUSE_TBB:BOOL=ON"
"-DUSE_VTK:BOOL=OFF"
"-DUSE_VTK:BOOL=ON"
"-DBUILD_DOC_Overview:BOOL=OFF"
"-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
"-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
@@ -3816,9 +3815,10 @@ This is the certified version of the Open Cascade Technology (OCCT) library.")
mesa
tbb-2020
tcl
tk))
tk
vtk))
;; TODO: build Overview documentation and add 'doc' output.
(home-page "https://www.opencascade.com")
(home-page "https://dev.opencascade.org")
(synopsis "Libraries for 3D modeling and numerical simulation")
(description
"Open CASCADE is a set of libraries for the development of applications
@@ -7941,7 +7941,7 @@ set.")
"doc")) ;12 MiB of documentation
(native-inputs
(list doc++
doxygen
doxygen-1.16
ghostscript
python
python-breathe
@@ -7967,13 +7967,16 @@ set.")
texlive-jknapltx
texlive-latexmk
texlive-listofitems
texlive-ltablex
texlive-multirow
texlive-natbib
texlive-needspace
texlive-newunicodechar
texlive-ninecolors
texlive-parskip
texlive-sectsty
texlive-stackengine
texlive-tabularray
texlive-tabulary
texlive-tex-gyre
texlive-titlesec
@@ -7985,6 +7988,7 @@ set.")
texlive-wasysym
texlive-wrapfig
texlive-xcolor
texlive-xltabular
texlive-xypic))))
(inputs
(list openblas))
@@ -8067,7 +8071,8 @@ problems.")
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~`("--with-MPI" ,@(delete "--without-MPI" #$flags)))
#~`("--with-MPI" ,@(delete "--without-MPI"
#$flags)))
((#:phases phases)
#~(modify-phases #$phases
(add-before 'check 'mpi-setup
+6 -5
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023, 2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2024, 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2024-2026 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -27,6 +27,7 @@
#:use-module (guix build-system trivial)
#:use-module (gnu packages base)
#:use-module (gnu packages c)
#:use-module (gnu packages crypto)
#:use-module (gnu packages digest)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages tls)
@@ -36,7 +37,7 @@
(define-public mold
(package
(name "mold")
(version "2.40.4")
(version "2.41.0")
(source
(origin
(method git-fetch)
@@ -45,14 +46,14 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05prkdr3v8wb8l99qrri9r27yar5yl8aiv1ns41b556ckdjdw8q6"))
(base32 "1r4mvgwh652klhns1q45qy5axi54jx904ss0s428y98a9qk4brrp"))
(modules '((guix build utils)))
(snippet
#~(begin
(for-each
(lambda (x)
(delete-file-recursively (string-append "third-party/" x)))
'("mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
'("blake3" "mimalloc" "tbb" "xxhash" "zlib" "zstd"))))))
(build-system cmake-build-system)
(arguments
(list
@@ -86,7 +87,7 @@
(if (target-64bit?)
(list mimalloc)
'())
(list onetbb xxhash zlib `(,zstd "lib"))))
(list libblake3 onetbb xxhash zlib `(,zstd "lib"))))
(home-page "https://github.com/rui314/mold")
(synopsis "Fast linker")
(description
+11 -17
View File
@@ -45,7 +45,7 @@
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Thomas Albers Raviola <thomas@thomaslabs.org>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022, 2023, 2024 Sughosha <sughosha@disroot.org>
;;; Copyright © 2022, 2023, 2024, 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2022, 2025, 2026 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2022, 2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
@@ -818,7 +818,7 @@ Winamp/XMMS skins.")
(define-public strawberry
(package
(name "strawberry")
(version "1.2.14")
(version "1.2.19")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -827,17 +827,7 @@ Winamp/XMMS skins.")
(file-name (git-file-name name version))
(sha256
(base32
"0sli0wm1l34ca8y6m3rfa604v1bbzbaiala13kzndcqqwnrsh66f"))
(modules '((guix build utils)))
;; Unbundle and disable discord-rpc.
(snippet
'(begin
(delete-file-recursively "3rdparty")
(substitute* "CMakeLists.txt"
((".*3rdparty\\/discord-rpc.*") "")
((".*src/discord.*") "")
((".*:discord-rpc.*") "")
(("DISCORD_RPC ON") "DISCORD_RPC OFF"))))))
"1bxrqqi2xi057v9qaz73dl44jyyhpqvi51pjs6pzprfiqgy1gi11"))))
(build-system qt-build-system)
(arguments
(list
@@ -968,7 +958,7 @@ many input formats and provides a customisable Vi-style user interface.")
(define-public ctune
(package
(name "ctune")
(version "1.3.4")
(version "1.3.10")
(source
(origin
(method git-fetch)
@@ -976,11 +966,15 @@ many input formats and provides a customisable Vi-style user interface.")
(url "https://github.com/An7ar35/ctune")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(patches (search-patches "ctune-cmake-disable-git-clone.patch"))
(sha256
(base32 "05gs1a1pc303qrnd1bz0z0wkzxkpm310hqznnq6zz7nl4vs3b9nz"))))
(base32 "0g7a2yz5nnhd4dln07hiax5701hc4b7sn97c36jgvm8pq6ap2bd4"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no check target
(arguments
(list
#:tests? #f ;no check target
;; We do not have the headers of ncurses inside 'ncursesw' subdirectory.
#:configure-flags
#~(list "-DNO_NCURSESW=ON")))
(native-inputs (list pkg-config
json-c
ffmpeg-6
+21 -23
View File
@@ -591,7 +591,7 @@ Android, and ChromeOS.")
(define-public libnice
(package
(name "libnice")
(version "0.1.23")
(version "0.1.22")
(source
(origin
(method git-fetch)
@@ -601,7 +601,7 @@ Android, and ChromeOS.")
(file-name (git-file-name name version))
(sha256
(base32
"0zqnqhcm1rx5axbzd448yi6j4bq4kykiqb4wihs2p8h1k49nkyjh"))))
"0ik45q1qlr04llr2ssm6zb73840dmn31q303k3qrcpgj0jp578hg"))))
(build-system meson-build-system)
(outputs '("out" "doc"))
(arguments
@@ -614,25 +614,23 @@ Android, and ChromeOS.")
(add-after 'unpack 'disable-failing-tests
(lambda _
(substitute* "tests/meson.build"
;; This test is flaky (see:
;; <https://gitlab.freedesktop.org/libnice/libnice/-/work_items/210>).
((".*'test-send-recv',.*") "")
;; test-set-port-range.c:66:main: assertion failed:
;; (nice_agent_gather_candidates (agent, stream1))
(("'test-set-port-range'" all)
(string-append "# " all))
;; The following test is disabled as it fails in a
;; nondeterministic fashion (see:
;; <https://gitlab.freedesktop.org/libnice/libnice/-/issues/151>).
;; https://gitlab.freedesktop.org/libnice/libnice/-/issues/151).
(("'test-bsd'" all)
(string-append "# " all))
;; This test uses getaddrinfo, which cannot resolve in the
;; build environment.
((".*'test-slow-resolving',.*") ""))
;; The test-new-trickle fails with GLib 2.83.0 (see:
;; https://gitlab.freedesktop.org/libnice/libnice/-/issues/198).
(("'test-new-trickle'" all)
(string-append "# " all)))
(substitute* "stun/tests/meson.build"
;; test-bind.c:234: bad_responses: Assertion `len >= 20'
;; failed (see:
;; <https://gitlab.freedesktop.org/libnice/libnice/-/issues/150>).
;; https://gitlab.freedesktop.org/libnice/libnice/-/issues/150).
(("'bind', ")
""))))
(add-after 'install 'move-docs
@@ -1996,7 +1994,7 @@ and up to 1 Mbit/s downstream.")
(define-public whois
(package
(name "whois")
(version "5.6.5")
(version "5.6.6")
(source
(origin
(method git-fetch)
@@ -2005,7 +2003,7 @@ and up to 1 Mbit/s downstream.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "145lp72347vmr1ipai8rz10bqi6lkjx104g3rq2dmdi2ygfqq9nc"))))
(base32 "05549a8r7qr6rv26i7kwg4h6ciwa4cc8dsd5zhfprjrjk909ga24"))))
(build-system gnu-build-system)
(arguments
(list
@@ -2950,7 +2948,7 @@ that block port 22.")
(define-public iperf
(package
(name "iperf")
(version "3.19.1")
(version "3.21")
(source
(origin
(method git-fetch)
@@ -2959,7 +2957,7 @@ that block port 22.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1kj2p3dprxv1r77whd5g1wak2k71c7khhrkkx60lcnkf70qy5q67"))))
(base32 "1r4873czw1hyq2g0z1dfxpbsdxcf6i2iizyvqaz24z8dshr2kdmi"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -3399,7 +3397,7 @@ to test using multiple servers in a single run.")
(define-public atftp
(package
(name "atftp")
(version "0.8.0")
(version "0.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3407,7 +3405,7 @@ to test using multiple servers in a single run.")
(commit (string-append "v" version))))
(sha256
(base32
"019qrh2wpvr577ksvs3s82q6kiqm5i6869aj7qba326b59lhkxrc"))
"1pj0270r87iv84vrlrrbp66vkzdmaa4ramhx34b151hclkiv3c8j"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -4157,7 +4155,7 @@ never see any machines other than the one Dante is running on.")
(base32 "15j09x36i6zj6innl0w1mfzlc56qmjwrs82my8dsagqa2ikd08ya"))))
(build-system cmake-build-system)
(inputs
(list asio catch-framework openssl))
(list asio-1.28 catch-framework openssl))
(arguments
`(;; Running parallel tests results in "bind: Address already in use" error
;; in test service_status_feature_test_suite.
@@ -5491,22 +5489,22 @@ and IP address registration information in JSON format over HTTP.")
(define-public wireproxy
(package
(name "wireproxy")
(version "1.0.10")
(version "1.1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/whyvl/wireproxy")
(url "https://github.com/windtf/wireproxy")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ypk9migx1l7xwcxr542pcdy8q2bm33wp03bqzgav0hp1fsrmi8p"))))
(base32 "0nzs3xzvq3rhqg808qgazymmwdx9p3nw669wl3r5xclhvibbyla7"))))
(build-system go-build-system)
(arguments
(list
#:install-source? #f
#:import-path "github.com/pufferffish/wireproxy/cmd/wireproxy"
#:unpack-path "github.com/pufferffish/wireproxy"
#:import-path "github.com/windtf/wireproxy/cmd/wireproxy"
#:unpack-path "github.com/windtf/wireproxy"
#:test-subdirs #~(list "../../..."))) ;to test the whole module
(native-inputs
(list go-github-com-akamensky-argparse
@@ -5517,7 +5515,7 @@ and IP address registration information in JSON format over HTTP.")
go-golang-org-x-net
go-golang-zx2c4-com-wireguard
go-suah-dev-protect))
(home-page "https://github.com/whyvl/wireproxy")
(home-page "https://github.com/windtf/wireproxy")
(synopsis "Wireguard client that exposes itself as a socks5 proxy")
(description
"wireproxy is a completely userspace application that connects to a
+21 -43
View File
@@ -276,24 +276,28 @@ HTTP.Agent instances from a function.")
(package
(name "node-balanced-match")
(version "1.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments (list
#:tests? #f ; FIXME Tests require 'tape'.
#:phases #~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json
(delete-dev-dependencies)))))))
(arguments
(list
#:tests? #f ;FIXME Tests require 'tape'.
#:phases
#~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json (delete-dev-dependencies)))))))
(synopsis "Match balanced character pairs, like { and }")
(description "Match balanced string pairs, like { and } or <b> and </b>. Supports\
regular expressions as well!")
(description
"Match balanced string pairs, like { and } or <b> and </b>. Supports
regular expressions as well!")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
@@ -344,7 +348,7 @@ addons in a wide array of potential locations.")
(lambda _
(modify-json (delete-dev-dependencies)))))))
(inputs
(list node-balanced-match-1 node-concat-map))
(list node-balanced-match node-concat-map))
(home-page "https://github.com/juliangruber/brace-expansion")
(synopsis "Brace expansion for JavaScript")
(description "This package provides brace expansion as known from
@@ -376,32 +380,6 @@ sh/bash, for JavaScript.")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
(define-public node-balanced-match-1
(package
(name "node-balanced-match")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments
'(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'patch-dependencies 'delete-dev-dependencies
(lambda _
(modify-json (delete-dev-dependencies)))))))
(home-page "https://github.com/juliangruber/balanced-match")
(synopsis "Match balanced string pairs in JavaScript")
(description "This package provides a way to match balanced string pairs.")
(license license:expat)))
(define-public node-buffer-crc32
(package
(name "node-buffer-crc32")
+101 -148
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2026 Daniel Patrick Fahey <dpf@helmcontrol.ltd>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -18,6 +19,7 @@
(define-module (gnu packages opencog)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages databases)
@@ -25,8 +27,12 @@
#:use-module (gnu packages language)
#:use-module (gnu packages linux)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages networking)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages serialization)
#:use-module (gnu packages tls)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -37,8 +43,8 @@
(define-public cogutil
;; The last release was in 2016. Other OpenCog packages require a later
;; version.
(let ((commit "b07b41b2eaf01627c78b27f1f28bb09ef7086f8e")
(revision "1"))
(let ((commit "64dca9083dcfa485dcb70fd6fe7ba1f80e0f4082")
(revision "2"))
(package
(name "cogutil")
(version (git-version "2.0.3" revision commit))
@@ -50,10 +56,13 @@
(file-name (git-file-name name version))
(sha256
(base32
"1ymmcrinp0prlxsmxmwdjjl4kgaj7wzq39d5b1q2apgg94yfdhqb"))))
"01rr39sq9wakw1wnfzg7m4zl7g8qh3d35ww6q39irx19d6nq66h9"))))
(build-system cmake-build-system)
(arguments
(list
;; Skip ldconfig, which requires root and is unnecessary in Guix.
#:configure-flags
#~(list "-DSKIP_LDCONF=ON")
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -69,7 +78,7 @@
(invoke file))
(find-files "tests" "UTest$"))))))))
(inputs
(list boost-1.83))
(list boost))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
@@ -82,9 +91,9 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
(license (list license:agpl3 license:asl2.0)))))
(define-public atomspace
;; The last release was in 2016 and doesn't build with our Boost package.
(let ((commit "86c848dfc7135b3c47deb581f8da54a60f6711c9")
(revision "1"))
;; The last release was in 2016.
(let ((commit "c8d633bf272b838c2132c21b7c8ddf169a18dd22")
(revision "2"))
(package
(name "atomspace")
(version (git-version "5.0.3" revision commit))
@@ -96,15 +105,20 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
(file-name (git-file-name name version))
(sha256
(base32
"0vxzhszb0z8081li38hid07a5axzxyflsmq1mcn4b1k4z1j8ggch"))))
"0fdqmskjh9d7363ldwmh3zhwal847shm15nhb2nan4g4aqdmckrz"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache")
(string-append "-DPYTHON_INSTALL_PREFIX=" #$output
"/lib/python3.11/site-packages"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -117,15 +131,15 @@ utilities use for typical programming tasks in multiple OpenCog projects.")
#:tests? tests? #:test-target "tests" args)
;; Failing tests.
(for-each delete-file
'("tests/matrix/VectorAPIUTest"
"tests/scm/MultiAtomSpaceUTest"))
'("tests/scm/MultiAtomSpaceUTest"))
(setenv "GUILE_LOAD_PATH" ".:opencog/scm")
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list boost cogutil gmp guile-2.2 postgresql))
(list boost cogutil gmp guile-3.0-latest postgresql))
(native-inputs
`(("cxxtest" ,cxxtest)
("python-cython" ,python-cython)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/atomspace/")
@@ -138,10 +152,59 @@ ordinary distributed (graph) databases, providing a large variety of advanced
features not otherwise available.")
(license license:agpl3))))
(define-public atomspace-storage
;; Storage backends for AtomSpace.
(let ((commit "ecd88d673258e51f65cc0605400003affdf4d694")
(revision "0"))
(package
(name "atomspace-storage")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/atomspace-storage")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"12ssnc313cm5n8bc6zw53dkjm9crrry90lpsknzxafnm61mzcgx3"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list atomspace boost cogutil gmp guile-3.0-latest))
(native-inputs
(list cxxtest pkg-config python-minimal))
(home-page "https://github.com/opencog/atomspace-storage")
(synopsis "Storage backends for AtomSpace")
(description "AtomSpace-Storage provides various storage backends
for the AtomSpace hypergraph database.")
(license license:agpl3))))
(define-public cogserver
;; There are no releases.
(let ((commit "ec5f3b9590db0f6a085b5d0320f5d3710e0f1635")
(revision "2"))
(let ((commit "3c4da0bd786262bd69a8306f9da88b13f0add1f2")
(revision "3"))
(package
(name "cogserver")
(version (git-version "0" revision commit))
@@ -153,15 +216,21 @@ features not otherwise available.")
(file-name (git-file-name name version))
(sha256
(base32
"1h0vcxb6n5dc654xqinqcxc7dxwcs6bsywgir8rhrqiykk760mzl"))))
"0hfz9z44wpzrabs9fgxhv02jzn0i40di2ncbiizn03g7gccawds5"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;tests start network server and hang
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
#~(list "-DSKIP_LDCONF=ON"
(string-append "-DGUILE_INCLUDE_DIR=" #$guile-3.0.11
"/include/guile/3.0/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
"/share/guile/site/3.0/")
(string-append "-DGUILE_CCACHE_DIR=" #$output
"/lib/guile/3.0/site-ccache")
(string-append "-DPYTHON_INSTALL_PREFIX=" #$output
"/lib/python3.11/site-packages"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
@@ -177,10 +246,13 @@ features not otherwise available.")
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list atomspace boost cogutil gmp guile-2.2))
(list asio atomspace atomspace-storage boost cogutil
gmp guile-3.0-latest jsoncpp openssl))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
("netcat" ,netcat-openbsd)
("python" ,python)
("python-cython" ,python-cython)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/cogserver/")
(synopsis "OpenCog network server")
@@ -188,129 +260,11 @@ features not otherwise available.")
OpenCog framework.")
(license license:agpl3))))
(define-public attention
;; There are no releases.
(let ((commit "87d43679280ce486cd6757765d2e1df6d502991d")
(revision "1"))
(package
(name "attention")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/attention")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0sndslphicv6w9qpag168rqkxq5sf71l5qbfx6zhsd5bzlf5fhwv"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
;; Failing tests.
(for-each delete-file
'("tests/attention/AttentionParamQueryUTest"
"tests/attention/HebbianCreationModuleUTest"
"tests/attention/ImportanceDiffusionUTest"))
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
(list atomspace
boost
cogserver
cogutil
gmp
guile-2.2))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/attention/")
(synopsis "OpenCog attention allocation subsystem")
(description "Attention Allocation is an OpenCog subsystem meant to
control the application of processing and memory resources to specific
tasks.")
(license license:agpl3))))
(define-public opencog
;; There are no recent releases.
(let ((commit "ceac90507610cb2d0ee98f97a2086865292b1204")
(revision "1"))
(package
(name "opencog")
(version (git-version "0.1.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opencog/opencog")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1j8wv910fvrmph370wv5pv2f4bc2s9vl6i7bw3pkmwbdhxkhjbhm"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list (string-append "-DGUILE_INCLUDE_DIR=" #$guile-2.2
"/include/guile/2.2/")
(string-append "-DGUILE_SITE_DIR=" #$output
"/share/guile/site/2.2/"))
#:modules '((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys #:rest args)
(when tests?
(apply (assoc-ref gnu:%standard-phases 'check)
#:tests? tests? #:test-target "tests" args)
(for-each invoke
(find-files "tests" "UTest$"))))))))
(inputs
`(("attention" ,attention)
("atomspace" ,atomspace)
("boost" ,boost)
("cogserver" ,cogserver)
("cogutil" ,cogutil)
("gmp" ,gmp)
("guile" ,guile-2.2)
("libuuid" ,util-linux "lib")
("link-grammar" ,link-grammar)))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
("pkg-config" ,pkg-config)))
(home-page "https://github.com/opencog/attention/")
(synopsis "Framework for integrated artificial intelligence")
(description "OpenCog is a framework for developing AI systems,
especially appropriate for integrative multi-algorithm systems, and artificial
general intelligence systems. It currently contains a functional core
framework, and a number of cognitive agents at varying levels of completion,
some already displaying interesting and useful functionalities alone and in
combination.")
(license license:agpl3))))
(define-public agi-bio
;; There are no releases.
(let ((commit "b5c6f3d99e8cca3798bf0cdf2c32f4bdb8098efb")
(revision "1"))
(let ((commit "2f723ad79afc38df9dce73d340ee24c38efb2199")
(revision "2"))
(package
(name "agi-bio")
(version (git-version "0" revision commit))
@@ -322,7 +276,7 @@ combination.")
(file-name (git-file-name name version))
(sha256
(base32
"0c3q0nhmd03nvqm1ih10y28n596cjvfhkcfvzw2fmz1sn3ywdah4"))))
"1gqmwjbqdjr0qz4wpsxh0k8wam59fvd3pnjxhfswdpvapcl9syk0"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are none
@@ -330,10 +284,10 @@ combination.")
(list
(string-append "-DGUILE_INCLUDE_DIR="
(assoc-ref %build-inputs "guile")
"/include/guile/2.2/")
"/include/guile/3.0/")
(string-append "-DGUILE_SITE_DIR="
(assoc-ref %outputs "out")
"/share/guile/site/2.2/"))
"/share/guile/site/3.0/"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-unqualified-load
@@ -342,10 +296,9 @@ combination.")
(("\\(load \"bioscience/types/bioscience_types.scm\"\\)")
(format #f "(load \"~a/bioscience/types/bioscience_types.scm\")"
(string-append (assoc-ref outputs "out")
"/share/guile/site/2.2/opencog"))))
#t)))))
"/share/guile/site/3.0/opencog")))))))))
(inputs
(list atomspace cogutil gmp guile-2.2))
(list atomspace cogutil gmp guile-3.0-latest))
(native-inputs
`(("cxxtest" ,cxxtest)
("python" ,python-minimal)
+2 -2
View File
@@ -767,7 +767,7 @@ which are indicated in the file name.")
(define-public guix-modules
(package
(name "guix-modules")
(version "0.3.0")
(version "0.4.0")
(home-page "https://codeberg.org/guix-science/guix-modules")
(source (origin
(method git-fetch)
@@ -776,7 +776,7 @@ which are indicated in the file name.")
(file-name (string-append "guix-modules-" version "-checkout"))
(sha256
(base32
"1cdpxmhrbbazr4z53rpk6ssk3clpv4j16ivha7lr4nqg48mxha9q"))))
"1zmbd04y69gcak43rnizk8vjgpxhv5m67k3z4fk9cyiymcs872ky"))))
(build-system guile-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
+82 -68
View File
@@ -3,6 +3,7 @@
;;; Copyright © 2023 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2023, 2024 altadil <Altadil@protonmail.com>
;;; Copyright © 2024 jgart <jgart@dismail.de>
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -51,7 +52,7 @@
(define-public granite
(package
(name "granite")
(version "7.3.0")
(version "7.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -60,13 +61,19 @@
(file-name (git-file-name name version))
(sha256
(base32
"0pyvkif2kin5dskh7adadsh4r96mvx12y7cs6gnm0ml733q548dj"))))
"01s37b6ssfhawbzxzq5yyjcxq9m2qf16q0h4g4vfhj1c6f4l8khy"))))
(build-system meson-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(setenv "DESTDIR" "/"))))))
(list
#:configure-flags
#~(list "-Ddemo=false") ;requires libshumate
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")))))))
(inputs (list sassc))
(propagated-inputs (list glib libgee gtk)) ;required in .pc file
(native-inputs (list gettext-minimal
@@ -96,12 +103,21 @@ in apps built for the Pantheon desktop.")
(sha256
(base32
"0ilslmg63hh2x7h5rvs3mhzw1y9ixhhkqnn1j1lzwm12v2iidkaq"))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags _ '())
#~'())
((#:phases phases)
#~(modify-phases #$phases
(replace 'disable-icon-cache
(lambda _
(setenv "DESTDIR" "/")))))))
(propagated-inputs (list glib libgee gtk+))))
(define-public pantheon-calculator
(package
(name "pantheon-calculator")
(version "8.0.0")
(version "8.0.1")
(source
(origin
(method git-fetch)
@@ -111,7 +127,7 @@ in apps built for the Pantheon desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"1as5rxd0b6z3lnh8my36szr056rxxqwkjzvaiylspx5g2kg3qjs0"))))
"157a2xryp9013m5grr3brfrs6hqz2ndg0ys8h0184am5zvg9w4sw"))))
(build-system meson-build-system)
(arguments
(list
@@ -142,7 +158,7 @@ desktop.")
(define-public pantheon-calendar
(package
(name "pantheon-calendar")
(version "8.0.0")
(version "8.0.1")
(source
(origin
(method git-fetch)
@@ -152,7 +168,7 @@ desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"1bynv5gnfs4sdr5ngd1c8jh42fkiw4gl5064fb579hws2jniy540"))))
"0344wr5ka2cfkr46vrclh1w9nhrrznn0jbb5g95dfww2czrp6iwj"))))
(build-system meson-build-system)
(arguments
(list
@@ -161,12 +177,13 @@ desktop.")
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false"))))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
(let* ((bin (string-append #$output
"/bin/io.elementary.calendar"))
(link (string-append #$output "/bin/pantheon-calendar")))
@@ -200,7 +217,7 @@ elementary OS.")
(define-public pantheon-icons
(package
(name "pantheon-icons")
(version "8.1.0")
(version "8.2.0")
(source
(origin
(method git-fetch)
@@ -209,7 +226,7 @@ elementary OS.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1yvjisvcjdpgibnc5l5cm16rw53zffinp1pvknlllz8wcdylqnss"))))
(base32 "04x8r1kknm7iswlg71da24aqqgrs494mivdx3jx1wz1jz5wzxnwy"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "-Dvolume_icons=false"
@@ -217,7 +234,7 @@ elementary OS.")
(native-inputs (list gettext-minimal ;for msgfmt
librsvg
xcursorgen))
(propagated-inputs (list hicolor-icon-theme))
(propagated-inputs (list adwaita-icon-theme))
(synopsis "Named, vector icons for the pantheon desktop")
(description
"pantheon-icons is an original set of vector icons designed
@@ -228,7 +245,7 @@ for elementary OS and its desktop environment: Pantheon.")
(define-public pantheon-photos
(package
(name "pantheon-photos")
(version "8.0.0")
(version "8.0.1")
(source
(origin
(method git-fetch)
@@ -237,18 +254,20 @@ for elementary OS and its desktop environment: Pantheon.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1z3b582y093x6pb3bl7zs4w97vg88rflyhwxfaycxw0rv8pcshhi"))))
(base32 "15ppxzbj882i2hpm88nn5azijhmgjc9js07i3wdpick2ciw83apr"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-schema-cache-generation
(lambda _
(setenv "DESTDIR" "/")))
(add-after 'unpack 'disable-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false"))))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
(let* ((bin (string-append #$output
"/bin/io.elementary.photos"))
(link (string-append #$output "/bin/pantheon-photos")))
@@ -290,7 +309,7 @@ also be used on others.")
(define-public pantheon-screenshot
(package
(name "pantheon-screenshot")
(version "8.0.1")
(version "8.0.4")
(source
(origin
(method git-fetch)
@@ -299,7 +318,7 @@ also be used on others.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1h3xv0pckkkgvqkk6fxssydq9gmncapaf1hx4n7j19jcvhwx65da"))))
(base32 "0ib6g47pykpscfazd12gssxv6in0v4jlcn8lfp0i1g0i4ap36ml5"))))
(build-system meson-build-system)
(arguments
(list
@@ -309,7 +328,7 @@ also be used on others.")
(add-after 'unpack 'disable-schema-cache-generation
(lambda _ (setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
(let* ((bin (string-append #$output
"/bin/io.elementary.screenshot"))
(link (string-append #$output
@@ -336,7 +355,7 @@ the Pantheon desktop environment.")
(define-public pantheon-stylesheet
(package
(name "pantheon-stylesheet")
(version "8.1.0")
(version "8.2.2")
(source
(origin
(method git-fetch)
@@ -345,7 +364,7 @@ the Pantheon desktop environment.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1h8k75m9jrqxwq0py8hrqrsc83myrwpmnrwx05aljdyr6sys06k6"))))
(base32 "065zzv1b39i0j775kc60cywiwizw2rckg2kildfhs4mp81yswdv6"))))
(build-system meson-build-system)
(native-inputs (list gettext-minimal)) ;for msgfmt
(inputs (list sassc))
@@ -358,7 +377,7 @@ desktop environment (originally from elementary OS).")
(define-public pantheon-terminal
(package
(name "pantheon-terminal")
(version "6.3.1")
(version "8.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -367,7 +386,7 @@ desktop environment (originally from elementary OS).")
(file-name (git-file-name name version))
(sha256
(base32
"142nwx2jc7ks529dk8dqhgs39gdqh6bc7gv9b10qdfm81bwqjkjv"))))
"0kldk74rmifgbf2wq9qbzv414dl4mgf94mzr5a4i2cags4rxlci3"))))
(build-system meson-build-system)
(arguments
(list
@@ -375,10 +394,6 @@ desktop environment (originally from elementary OS).")
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append #$output
@@ -393,12 +408,13 @@ desktop environment (originally from elementary OS).")
pkg-config
vala
xvfb-run))
(inputs (list granite-6
gtk+
(inputs (list granite
gtk
libadwaita
libgee
libhandy
pcre2
vte/gtk+-3))
vte))
(synopsis "Terminal emulator from elementaryOS")
(description "pantheon-terminal is a lightweight, beautiful and simple
terminal. It comes with sane defaults, browser-class tabs, sudo paste
@@ -410,7 +426,7 @@ terminal in the Pantheon desktop.")
(define-public sideload
(package
(name "sideload")
(version "6.2.1")
(version "6.3.1")
(source
(origin
(method git-fetch)
@@ -420,42 +436,40 @@ terminal in the Pantheon desktop.")
(file-name (git-file-name name version))
(sha256
(base32
"0vrj91899f13cvzpycqy3y74hmixsffjbzsj29da7n370fa3ci86"))))
"0hn9gnzr25i0k6b81ia6c73lqmr43grfdwn18sfp8xhjiqlqqmlq"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
(list
#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-before 'install 'set-environment-variables
(lambda _
;; Disable compiling schemas and updating desktop databases
(setenv "DESTDIR" "/")))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin/io.elementary.sideload"))
(link (string-append out "/bin/sideload")))
(symlink bin link)))))))
#~(modify-phases %standard-phases
(add-after 'install 'install-symlinks
(lambda _
(let ((bin (string-append #$output
"/bin/io.elementary.sideload"))
(link (string-append #$output "/bin/sideload")))
(symlink bin link)))))))
(inputs
`(("flatpak" ,flatpak)
("glib" ,glib)
("granite" ,granite)
("gtk" ,gtk+)
("hicolor-icon-theme" ,hicolor-icon-theme)
("libgee" ,libgee)
("libhandy" ,libhandy)
("libostree" ,libostree)
("libxml2" ,libxml2)))
(list flatpak
glib
granite
gtk+
hicolor-icon-theme
libgee
libhandy
libostree
libxml2))
(propagated-inputs
;; Sideload needs these in the environment to fetch data securely from
;; Flatpak remotes.
(list gnupg gpgme))
(native-inputs
`(("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("vala" ,vala)))
(list desktop-file-utils ;for update-desktop-database
gettext-minimal
`(,glib "bin")
gobject-introspection
pkg-config
vala))
(home-page "https://github.com/elementary/sideload")
(synopsis "Graphical application to side-load Flatpaks")
(description "Sideload handles flatpakref files, like those you might find
@@ -466,7 +480,7 @@ download.")
(define-public pantheon-wallpapers
(package
(name "pantheon-wallpapers")
(version "7.0.0")
(version "8.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -474,7 +488,7 @@ download.")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"0km3h52kapbm8ymwxdxasz80qbgzkfni7981pdyf740wjp7linwb"))))
"163y98x0vc8icmd5prrjja7sp3clp8apvx0ha2shiaymxnprifm9"))))
(build-system meson-build-system)
(native-inputs (list gettext-minimal)) ; for msgfmt
(inputs (list libexif))
@@ -1,84 +0,0 @@
origin patch from nixos.
see: https://raw.githubusercontent.com/NixOS/nixpkgs/d916df777523d75f7c5acca79946652f032f633e/pkgs/by-name/ct/ctune/cmake_disable_git_clone.patch
diff --git a/CMakeLists.txt.orig b/CMakeLists.txt
index ac0488e..a3724bc 100644
--- a/CMakeLists.txt.orig
+++ b/CMakeLists.txt
@@ -50,14 +50,6 @@ include(FetchContent)
set(CMAKE_VERBOSE_MAKEFILE ON)
-#========================================== PRE-CHECKS ============================================#
-include(FindGit)
-find_package(Git)
-
-if (NOT Git_FOUND)
- message(FATAL_ERROR "Required package 'Git' not found on system.")
-endif ()
-
#======================================== LIB IMPORTS =============================================#
# ======= #
# OpenSSL #
@@ -65,40 +57,17 @@ endif ()
find_package(OpenSSL REQUIRED)
include_directories(${OPENSSL_INCLUDE_DIR})
-# ============== #
-# JSON-C library #
-# ============== #
-set(JSONC_DOWNLOAD_PATH "${TEMP_DIR_PATH}/libjsonc")
-set(JSONC_INSTALL_PATH "${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}")
-
-add_custom_target(make-jsonc-install-dir ALL
- COMMAND ${CMAKE_COMMAND} -E make_directory ${JSONC_INSTALL_PATH}
-)
-
-ExternalProject_Add(libjsonc
- PREFIX "${JSONC_DOWNLOAD_PATH}"
- SOURCE_DIR "${JSONC_DOWNLOAD_PATH}/src/libjsonc-build"
- GIT_REPOSITORY "https://github.com/json-c/json-c.git"
- GIT_TAG "json-c-0.18-20240915"
- CMAKE_ARGS "-DBUILD_STATIC_LIBS=ON"
- "-DBUILD_SHARED_LIBS=OFF"
- "-DCMAKE_INSTALL_PREFIX:PATH=${JSONC_INSTALL_PATH}"
- "-DHAVE_ARC4RANDOM=OFF"
- "-DCMAKE_BUILD_TYPE=release"
- "-DCMAKE_POLICY_VERSION_MINIMUM=3.5"
-)
-
-set(JSONC_LIBRARIES
- ${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/lib/libjson-c.a
-# bsd
-)
-
# ============ #
# Curl library #
# ============ #
find_package(CURL REQUIRED)
include_directories(${CURL_INCLUDE_DIR})
+find_package(PkgConfig REQUIRED)
+pkg_check_modules(JSONC REQUIRED json-c)
+include_directories(${JSONC_INCLUDE_DIRS})
+
+
# ================================ #
# nCurses - for the user interface #
# ================================ #
@@ -410,7 +379,7 @@ add_subdirectory(docs)
#endforeach()
add_executable(ctune ${SOURCE_FILES})
-add_dependencies(ctune ctune_logger libjsonc)
+add_dependencies(ctune ctune_logger)
include_directories(${CMAKE_EXTERNAL_OUTPUT_DIRECTORY}/include)
add_dependencies(ctune ${CTUNE_PLUGIN_LIST_AUDIO_PLAYER})
@@ -450,4 +419,4 @@ if(TARGET uninstall)
add_custom_target(uninstall
COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_SOURCE_DIR}/CMakeUninstall.cmake)
-endif()
\ No newline at end of file
+endif()
@@ -1,26 +0,0 @@
This makes the cvc5 build reproducible.
See: https://github.com/cvc5/cvc5/pull/12580
diff --git a/src/options/mkoptions.py b/src/options/mkoptions.py
index 5bd9f0da1..d1fc2e6fa 100644
--- a/src/options/mkoptions.py
+++ b/src/options/mkoptions.py
@@ -281,7 +281,7 @@ def generate_public_includes(modules):
headers.add(format_include("<unordered_map>"))
for _, option in all_options(modules):
headers.update([format_include(x) for x in option.includes])
- return '\n'.join(headers)
+ return '\n'.join(sorted(headers))
def generate_option_enum_and_table(modules):
@@ -307,7 +307,7 @@ def generate_option_enum_and_table(modules):
for module, option in all_options(modules, True):
if not option.long:
continue
- for name in option.names:
+ for name in sorted(option.names):
res.append(' {{ \"{}\", OptionEnum::{} }},'
.format(name, option.enum_name()))
res.append('};')
@@ -1,165 +0,0 @@
Ensures that cvc5 is compatible with our version of SymFPU.
Taken from: https://github.com/cvc5/cvc5/commit/2ed457049cf52bd0f21a6332c1be487d82bf5678
diff --git a/cmake/FindSymFPU.cmake b/cmake/FindSymFPU.cmake
index 765ee8d36..05a86e9ee 100644
--- a/cmake/FindSymFPU.cmake
+++ b/cmake/FindSymFPU.cmake
@@ -29,8 +29,8 @@ if(NOT SymFPU_FOUND_SYSTEM)
include(ExternalProject)
include(deps-helper)
- set(SymFPU_COMMIT "e6ac3af9c2c574498ea171c957425b407625448b")
- set(SymFPU_CHECKSUM "823aa663fcc2f6844ae5e9ea83ceda4ed393cdb3dadefce9b3c7c41cd0f4f702")
+ set(SymFPU_COMMIT "227a7246b8ce513b393cc2645d6d65d3490ea1de")
+ set(SymFPU_CHECKSUM "ff22e37dbc133120ada5760878974811737bec65b12a8883f92b1ed9e3f96e99")
ExternalProject_Add(
SymFPU-EP
diff --git a/src/theory/fp/fp_word_blaster.cpp b/src/theory/fp/fp_word_blaster.cpp
index 7f2086c35..3efb0eeed 100644
--- a/src/theory/fp/fp_word_blaster.cpp
+++ b/src/theory/fp/fp_word_blaster.cpp
@@ -119,6 +119,23 @@ CVC5_SYM_ITE_DFN(traits::ubv);
#undef CVC5_SYM_ITE_DFN
+#define CVC5_SYM_ITE_BOOL_DFN(T) \
+ template <> \
+ struct ite<bool, T> \
+ { \
+ static const T iteOp(const bool& cond, const T& l, const T& r) \
+ { \
+ return cond ? l : r; \
+ } \
+ }
+
+CVC5_SYM_ITE_BOOL_DFN(traits::rm);
+CVC5_SYM_ITE_BOOL_DFN(traits::prop);
+CVC5_SYM_ITE_BOOL_DFN(traits::sbv);
+CVC5_SYM_ITE_BOOL_DFN(traits::ubv);
+
+#undef CVC5_SYM_ITE_BOOL_DFN
+
template <>
traits::ubv orderEncode<traits, traits::ubv>(const traits::ubv& b)
{
@@ -564,6 +581,13 @@ symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularAdd(
return *this + op;
}
+template <bool isSigned>
+symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularSubtract(
+ const symbolicBitVector<isSigned>& op) const
+{
+ return *this - op;
+}
+
template <bool isSigned>
symbolicBitVector<isSigned> symbolicBitVector<isSigned>::modularNegate() const
{
diff --git a/src/theory/fp/fp_word_blaster.h b/src/theory/fp/fp_word_blaster.h
index 6ce365382..8179ceb32 100644
--- a/src/theory/fp/fp_word_blaster.h
+++ b/src/theory/fp/fp_word_blaster.h
@@ -242,6 +242,8 @@ class symbolicBitVector : public nodeWrapper
symbolicBitVector<isSigned> modularDecrement() const;
symbolicBitVector<isSigned> modularAdd(
const symbolicBitVector<isSigned>& op) const;
+ symbolicBitVector<isSigned> modularSubtract(
+ const symbolicBitVector<isSigned>& op) const;
symbolicBitVector<isSigned> modularNegate() const;
/*** Comparisons ***/
diff --git a/src/util/floatingpoint_literal_symfpu_traits.cpp b/src/util/floatingpoint_literal_symfpu_traits.cpp
index af56c2b87..181069427 100644
--- a/src/util/floatingpoint_literal_symfpu_traits.cpp
+++ b/src/util/floatingpoint_literal_symfpu_traits.cpp
@@ -223,6 +223,13 @@ wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularAdd(
return *this + op;
}
+template <bool isSigned>
+wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularSubtract(
+ const wrappedBitVector<isSigned>& op) const
+{
+ return *this - op;
+}
+
template <bool isSigned>
wrappedBitVector<isSigned> wrappedBitVector<isSigned>::modularNegate() const
{
diff --git a/src/util/floatingpoint_literal_symfpu_traits.h b/src/util/floatingpoint_literal_symfpu_traits.h
index 78fc69a18..b49ef3a2a 100644
--- a/src/util/floatingpoint_literal_symfpu_traits.h
+++ b/src/util/floatingpoint_literal_symfpu_traits.h
@@ -199,6 +199,8 @@ class wrappedBitVector : public BitVector
wrappedBitVector<isSigned> modularDecrement() const;
wrappedBitVector<isSigned> modularAdd(
const wrappedBitVector<isSigned>& op) const;
+ wrappedBitVector<isSigned> modularSubtract(
+ const wrappedBitVector<isSigned>& op) const;
wrappedBitVector<isSigned> modularNegate() const;
/** Bit-vector equality. */
diff --git a/test/regress/cli/CMakeLists.txt b/test/regress/cli/CMakeLists.txt
index 915a19e09..35ff58bc7 100644
--- a/test/regress/cli/CMakeLists.txt
+++ b/test/regress/cli/CMakeLists.txt
@@ -949,12 +949,15 @@ set(regress_0_tests
regress0/fp/issue6164.smt2
regress0/fp/issue7002.smt2
regress0/fp/issue7569.smt2
+ regress0/fp/issue9505.smt2
regress0/fp/issue9854.smt2
regress0/fp/issue9858.smt2
regress0/fp/issue9864.smt2
regress0/fp/issue9966.smt2
regress0/fp/issue9972.smt2
regress0/fp/issue9972-2.smt2
+ regress0/fp/issue11139.smt2
+ regress0/fp/issue12335.smt2
regress0/fp/issuepr650.smt2
regress0/fp/proj-issue329-prereg-context.smt2
regress0/fp/proj-issue477-fp-set-comprehension.smt2
diff --git a/test/regress/cli/regress0/fp/issue11139.smt2 b/test/regress/cli/regress0/fp/issue11139.smt2
new file mode 100644
index 000000000..f4c00360e
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue11139.smt2
@@ -0,0 +1,9 @@
+; COMMAND-LINE: --check-models
+; EXPECT: sat
+(set-logic QF_FP)
+(declare-const FP_VAR_a (_ FloatingPoint 11 53))
+(declare-const FP_VAR_b (_ FloatingPoint 11 53))
+(assert ( = (fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)
+(fp.div RTN (fp.fma RTP FP_VAR_a FP_VAR_a
+(fp #b0 #b00000000000 #b0000000000000000000000000000000000000000000000000000)) FP_VAR_b)))
+(check-sat)
diff --git a/test/regress/cli/regress0/fp/issue12335.smt2 b/test/regress/cli/regress0/fp/issue12335.smt2
new file mode 100644
index 000000000..bc2580a89
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue12335.smt2
@@ -0,0 +1,7 @@
+; EXPECT: sat
+(set-logic FP)
+(declare-const x Float32)
+(declare-const a Float32)
+(assert (forall ((V Float32) (A Float32)) (or (not (fp.lt V x)) (not (fp.eq a a)) (not (fp.gt A (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)))) (not (fp.eq (fp.div RNE A V) (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)))))))
+(assert (fp.geq a (fp (_ bv0 1) (_ bv0 8) (_ bv0 23))))
+(check-sat)
diff --git a/test/regress/cli/regress0/fp/issue9505.smt2 b/test/regress/cli/regress0/fp/issue9505.smt2
new file mode 100644
index 000000000..05674b8ff
--- /dev/null
+++ b/test/regress/cli/regress0/fp/issue9505.smt2
@@ -0,0 +1,6 @@
+; COMMAND-LINE: --fp-exp
+; EXPECT: sat
+(set-logic QF_FP)
+(declare-fun m () (_ FloatingPoint 4 12))
+(assert (fp.eq (fp (_ bv0 1) (_ bv0 8) (_ bv0 23)) ((_ to_fp 8 24) roundNearestTiesToEven (fp.rem m (fp (_ bv0 1) (_ bv9 4) (_ bv1536 11))))))
+(check-sat)
File diff suppressed because it is too large Load Diff
@@ -1,3 +1,6 @@
Pretend that stat's mtime is broken, so that the fontconfig cache does not
depend upon modification time to determine if a cache is stale.
diff --git a/src/fcstat.c b/src/fcstat.c
index 9b54e2b4..76d7780e 100644
--- a/src/fcstat.c
@@ -7,6 +10,6 @@ index 9b54e2b4..76d7780e 100644
FcIsFsMtimeBroken (const FcChar8 *dir)
{
+ return FcTrue;
int fd = FcOpen ((const char *)dir, O_RDONLY);
int fd = FcOpen ((const char *) dir, O_RDONLY);
if (fd != -1) {
if (fd != -1)
@@ -0,0 +1,173 @@
For bootstrapping gdc.
The change for gcc/config/i386/t-linux is to fix the libdir on
x86_64-gnu. It is based on the 'pre-x86-configure phase for gcc-14.
The main part is gcc commit 5f8950b403f6351f125d8281d2e7430a43e7d125
rebased for gcc 11.5.
From 5f8950b403f6351f125d8281d2e7430a43e7d125 Mon Sep 17 00:00:00 2001
From: Flavio Cruz <flaviocruz@gmail.com>
Date: Thu, 26 Jan 2023 22:45:27 -0500
Subject: [PATCH] Add support for x86_64-*-gnu-* targets to build x86_64
gnumach/hurd
Tested by building a toolchain and compiling gnumach for x86_64 [1].
This is the basic version without unwind support which I think is only
required to implement exceptions.
[1]
https://github.com/flavioc/cross-hurd/blob/master/bootstrap-kernel.sh.
gcc/ChangeLog:
* config.gcc: Recognize x86_64-*-gnu* targets and include
i386/gnu64.h.
* config/i386/gnu64.h: Define configuration for new target
including ld.so location.
libgcc/ChangeLog:
* config.host: Recognize x86_64-*-gnu* targets.
* config/i386/gnu-unwind.h: Update to handle __x86_64__ with a
TODO for now.
Signed-off-by: Flavio Cruz <flaviocruz@gmail.com>
---
gcc/config.gcc | 5 ++++-
gcc/config/i386/gnu64.h | 40 +++++++++++++++++++++++++++++++++
libgcc/config.host | 8 ++++++-
libgcc/config/i386/gnu-unwind.h | 10 +++++++++
4 files changed, 61 insertions(+), 2 deletions(-)
create mode 100644 gcc/config/i386/gnu64.h
Index: gcc-11.5.0/gcc/config.gcc
===================================================================
--- gcc-11.5.0.orig/gcc/config.gcc
+++ gcc-11.5.0/gcc/config.gcc
@@ -2020,7 +2020,7 @@ i[34567]86-*-linux* | i[34567]86-*-kfree
;;
esac
;;
-x86_64-*-linux* | x86_64-*-kfreebsd*-gnu)
+x86_64-*-linux* | x86_64-*-kfreebsd*-gnu | x86_64-*-gnu*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h gnu-user.h glibc-stdint.h \
i386/x86-64.h i386/gnu-user-common.h i386/gnu-user64.h"
case ${target} in
@@ -2031,6 +2031,9 @@ x86_64-*-linux* | x86_64-*-kfreebsd*-gnu
x86_64-*-kfreebsd*-gnu)
tm_file="${tm_file} kfreebsd-gnu.h i386/kfreebsd-gnu64.h"
;;
+ x86_64-*-gnu*)
+ tm_file="${tm_file} gnu.h i386/gnu64.h"
+ ;;
esac
tmake_file="${tmake_file} i386/t-linux64"
x86_multilibs="${with_multilib_list}"
Index: gcc-11.5.0/gcc/config/i386/gnu64.h
===================================================================
--- /dev/null
+++ gcc-11.5.0/gcc/config/i386/gnu64.h
@@ -0,0 +1,40 @@
+/* Configuration for an x86_64 running GNU with ELF as the target machine. */
+
+/*
+Copyright (C) 2023 Free Software Foundation, Inc.
+
+This file is part of GCC.
+
+GCC is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#define GNU_USER_LINK_EMULATION32 "elf_i386"
+#define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+#define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+#undef GNU_USER_DYNAMIC_LINKER
+#define GNU_USER_DYNAMIC_LINKER32 "/lib/ld.so.1"
+#define GNU_USER_DYNAMIC_LINKER64 "/lib/ld-x86-64.so.1"
+#define GNU_USER_DYNAMIC_LINKERX32 "/lib/ld-x32.so.1"
+
+#undef STARTFILE_SPEC
+#if defined HAVE_LD_PIE
+#define STARTFILE_SPEC \
+ "%{!shared: %{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};pie:Scrt1.o%s;static:crt0.o%s;:crt1.o%s}} \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#else
+#define STARTFILE_SPEC \
+ "%{!shared: %{pg|p|profile:%{static:gcrt0.o%s;:gcrt1.o%s};static:crt0.o%s;:crt1.o%s}} \
+ crti.o%s %{static:crtbeginT.o%s;shared|pie:crtbeginS.o%s;:crtbegin.o%s}"
+#endif
Index: gcc-11.5.0/libgcc/config.host
===================================================================
--- gcc-11.5.0.orig/libgcc/config.host
+++ gcc-11.5.0/libgcc/config.host
@@ -788,6 +788,12 @@ x86_64-*-kfreebsd*-gnu)
tmake_file="${tmake_file} i386/t-crtpc t-crtfm i386/t-crtstuff t-dfprules"
tm_file="${tm_file} i386/elf-lib.h"
;;
+x86_64-*-gnu*)
+ extra_parts="$extra_parts crtprec32.o crtprec64.o crtprec80.o crtfastmath.o"
+ tmake_file="${tmake_file} i386/t-crtpc t-crtfm i386/t-crtstuff t-dfprules"
+ tm_file="${tm_file} i386/elf-lib.h"
+ md_unwind_header=i386/gnu-unwind.h
+ ;;
i[34567]86-pc-msdosdjgpp*)
;;
i[34567]86-*-lynxos*)
@@ -1561,7 +1567,7 @@ esac
case ${host} in
i[34567]86-*-linux* | x86_64-*-linux* | \
i[34567]86-*-kfreebsd*-gnu | x86_64-*-kfreebsd*-gnu | \
- i[34567]86-*-gnu*)
+ i[34567]86-*-gnu* | x86_64-*-gnu*)
tmake_file="${tmake_file} t-tls i386/t-linux i386/t-msabi t-slibgcc-libgcc"
if test "$libgcc_cv_cfi" = "yes"; then
tmake_file="${tmake_file} t-stack i386/t-stack-i386"
Index: gcc-11.5.0/libgcc/config/i386/gnu-unwind.h
===================================================================
--- gcc-11.5.0.orig/libgcc/config/i386/gnu-unwind.h
+++ gcc-11.5.0/libgcc/config/i386/gnu-unwind.h
@@ -30,6 +30,14 @@ see the files COPYING3 and COPYING.RUNTI
#include <signal.h>
+#ifdef __x86_64__
+
+/*
+ * TODO: support for 64 bits needs to be implemented.
+ */
+
+#else /* ifdef __x86_64__ */
+
#define MD_FALLBACK_FRAME_STATE_FOR x86_gnu_fallback_frame_state
static _Unwind_Reason_Code
@@ -138,4 +146,6 @@ x86_gnu_fallback_frame_state
return _URC_NO_REASON;
}
+#endif /* ifdef __x86_64__ */
+
#endif /* ifndef inhibit_libc */
Index: gcc-11.5.0/gcc/config/i386/t-linux64
===================================================================
--- gcc-11.5.0.orig/gcc/config/i386/t-linux64
+++ gcc-11.5.0/gcc/config/i386/t-linux64
@@ -33,6 +33,6 @@
comma=,
MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
-MULTILIB_OSDIRNAMES = m64=../lib64$(call if_multiarch,:x86_64-linux-gnu)
+MULTILIB_OSDIRNAMES = m64=../lib$(call if_multiarch,:x86_64-linux-gnu)
MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:i386-linux-gnu)
MULTILIB_OSDIRNAMES+= mx32=../libx32$(call if_multiarch,:x86_64-linux-gnux32)
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
@@ -1,35 +0,0 @@
Some udmapbuf relying tests were still selected despite using --no-suite=needs-udmabuf.
Upstream-status: Patch prepared by upstream, not yet committed.
diff --git a/testsuite/gsk/meson.build b/testsuite/gsk/meson.build
index 0118304bf8..6bf4d4bb93 100644
--- a/testsuite/gsk/meson.build
+++ b/testsuite/gsk/meson.build
@@ -275,6 +275,16 @@ compare_render_tests = [
'zero-length-path-stroke',
]
+# These tests use dmabufs and fail in testrunners that have
+# dmabuf support but no access to /dev/udmabuf.
+# For that purpose we add them to the 'needs-udmabuf' suite
+# with this list
+needs_udmabuf = [
+ 'yuv-matrix-dmabuf-nv12',
+ 'yuv-matrix-dmabuf-rgba',
+ 'yuv-matrix-dmabuf-yuyv',
+]
+
# These tests are either slow or need lots of memory.
# So we don't run them in parallel with other such tests to not
# cause CI failures
@@ -386,6 +396,9 @@ foreach renderer : renderers
if test_xfails.contains(variant) or (renderer_name == 'cairo' and variant == 'clip')
extra_suites += ['failing']
endif
+ if needs_udmabuf.contains(testname)
+ extra_suites += ['needs-udmabuf']
+ endif
test('compare ' + renderer_name + ' ' + testname + ' ' + variant, compare_render,
protocol: 'tap',
args: [
@@ -1,67 +0,0 @@
From 8fb3557bce1fdf9e2c4146e89b43753688d64455 Mon Sep 17 00:00:00 2001
From: Alessandro Astone <alessandro.astone@canonical.com>
Date: Mon, 23 Mar 2026 15:48:20 +0100
Subject: [PATCH] testsuite/a11y: Fixup treeview test after focus policy
changes
Since commit
fbc28541f0 ("a11y: Don't send focus-related events for unfocused treeview")
the window must have focus in order for the treeview to have focus and emit
the signal we want to test for.
Part-of: <https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/9716>
---
testsuite/a11y/tree-relationships.c | 26 +++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)
diff --git a/testsuite/a11y/tree-relationships.c b/testsuite/a11y/tree-relationships.c
index 34f45b690a5..a1cc1f38288 100644
--- a/testsuite/a11y/tree-relationships.c
+++ b/testsuite/a11y/tree-relationships.c
@@ -223,6 +223,24 @@ process_pending_idles ()
g_main_loop_run (loop);
}
+static void
+on_window_focus (GObject *obj,
+ GParamSpec *pspec,
+ gpointer data)
+{
+ GMainLoop *loop = data;
+ g_main_loop_quit (loop);
+}
+
+
+static void
+wait_window_focus (GtkWidget *window)
+{
+ GMainLoop *loop = g_main_loop_new (NULL, FALSE);
+ g_signal_connect (window, "notify::is-active", G_CALLBACK (on_window_focus), loop);
+ g_main_loop_run (loop);
+}
+
static void
test_a11y_tree_focus (void)
{
@@ -243,13 +261,15 @@ test_a11y_tree_focus (void)
window = builder_get_toplevel (builder);
g_assert (window);
- populate_tree (builder);
+ gtk_widget_show (window);
+ gtk_window_present (GTK_WINDOW (window));
+ wait_window_focus (window);
+ populate_tree (builder);
tv = (GtkTreeView *)gtk_builder_get_object (builder, "treeview1");
gtk_tree_view_expand_all (tv);
- gtk_widget_show (window);
-
+ gtk_widget_grab_focus (GTK_WIDGET (tv));
gtk_tree_view_get_cursor (tv, &path, &focus_column);
gtk_tree_path_down (path);
data.count = 0;
--
GitLab
@@ -1,79 +0,0 @@
Upstream-status: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/9675
diff --git a/demos/gtk-demo/geninclude.py b/demos/gtk-demo/geninclude.py
index 2ebfaeb625..5864a608f5 100755
--- a/demos/gtk-demo/geninclude.py
+++ b/demos/gtk-demo/geninclude.py
@@ -2,19 +2,20 @@
# -*- coding: utf-8 -*-
import sys
-import re
-import os
from collections import *
+
def add_quotes(s):
return "\"" + s.lower() + "\""
+
def wordify(s):
return s.strip().rstrip(".,;:")
+
def is_keyword(s):
if s == "GTK":
- return False
+ return False
elif s.startswith(("Gtk", "Gdk", "Pango")):
return True
elif s.startswith("G") and s[1].isupper():
@@ -22,6 +23,7 @@ def is_keyword(s):
else:
return False
+
out_file = sys.argv[1]
in_files = sys.argv[2:]
@@ -82,6 +84,10 @@ for demo in demos:
parent_index = parent_index + 1
+# Sort demos by title
+demos = sorted(demos, key=lambda x: x[1])
+
+
# For every child with a parent, generate a list of child demos
i = 0
for parent in parents:
@@ -91,15 +97,12 @@ for parent in parents:
for child in demos:
if child[1].startswith(parent + "/"):
title = child[1][child[1].rfind('/') + 1:]
- file_output += " { \"" + child[0] + "\", \"" + title + "\", " + "(const char*[]) {" + ", ".join(list(map(add_quotes, child[2])) + ["NULL"]) + " }, \"" + child[3] + "\", " + child[4] + ", NULL },\n"
+ file_output += " { \"" + child[0] + "\", \"" + title + "\", " + "(const char*[]) {" + ", ".join(list(map(add_quotes, sorted(child[2]))) + ["NULL"]) + " }, \"" + child[3] + "\", " + child[4] + ", NULL },\n"
file_output += " { NULL }\n};\n"
i = i + 1
-# Sort demos by title
-demos = sorted(demos, key=lambda x: x[1])
-
file_output += "\nDemoData gtk_demos[] = {\n"
for demo in demos:
# Do not generate one of these for demos with a parent demo
@@ -118,10 +121,10 @@ for demo in demos:
if demo[5] != -1:
child_array = "child" + str(demo[5])
- file_output += " { " + name + ", " + title + ", " + "(const char*[]) {" + ", ".join(list(map(add_quotes, keywords)) + ["NULL"]) + " }, " + file + ", " + demo[4] + ", " + child_array + " },\n"
+ file_output += " { " + name + ", " + title + ", " + "(const char*[]) {" + ", ".join(list(map(add_quotes, sorted(keywords))) + ["NULL"]) + " }, " + file + ", " + demo[4] + ", " + child_array + " },\n"
-file_output += " { NULL }\n};\n"
+file_output += " { NULL }\n};\n"
ofile = open(out_file, "w")
ofile.write(file_output)
ofile.close()
@@ -1,35 +0,0 @@
Some udmapbuf relying tests were still selected despite using --no-suite=needs-udmabuf.
Upstream-status: Patch prepared by upstream, not yet committed.
diff --git a/testsuite/gsk/meson.build b/testsuite/gsk/meson.build
index 0118304bf8..6bf4d4bb93 100644
--- a/testsuite/gsk/meson.build
+++ b/testsuite/gsk/meson.build
@@ -275,6 +275,16 @@ compare_render_tests = [
'zero-length-path-stroke',
]
+# These tests use dmabufs and fail in testrunners that have
+# dmabuf support but no access to /dev/udmabuf.
+# For that purpose we add them to the 'needs-udmabuf' suite
+# with this list
+needs_udmabuf = [
+ 'yuv-matrix-dmabuf-nv12',
+ 'yuv-matrix-dmabuf-rgba',
+ 'yuv-matrix-dmabuf-yuyv',
+]
+
# These tests are either slow or need lots of memory.
# So we don't run them in parallel with other such tests to not
# cause CI failures
@@ -386,6 +396,9 @@ foreach renderer : renderers
if test_xfails.contains(variant) or (renderer_name == 'cairo' and variant == 'clip')
extra_suites += ['failing']
endif
+ if needs_udmabuf.contains(testname)
+ extra_suites += ['needs-udmabuf']
+ endif
test('compare ' + renderer_name + ' ' + testname + ' ' + variant, compare_render,
protocol: 'tap',
args: [
@@ -1,29 +0,0 @@
This patch provides a correct library path when shared libraries referenced by
typelibs are installed in a subdirectory of lib/ rather than directly
underneath it. It works in combination with the
gobject-introspection-absolute-shlib-path.patch patch that adds the
'--fallback-library-path' option to its 'g-ir-scanner' command.
Retrieved-from: <https://raw.githubusercontent.com/NixOS/nixpkgs/refs/heads/master/pkgs/by-name/me/meson/004-gir-fallback-path.patch>
diff --git a/mesonbuild/modules/gnome.py b/mesonbuild/modules/gnome.py
index 1c6952df7..9466a0b7d 100644
--- a/mesonbuild/modules/gnome.py
+++ b/mesonbuild/modules/gnome.py
@@ -923,6 +923,16 @@ class GnomeModule(ExtensionModule):
if fatal_warnings:
scan_command.append('--warn-error')
+ if len(set(girtarget.get_custom_install_dir()[0] for girtarget in girtargets if girtarget.get_custom_install_dir())) > 1:
+ raise MesonException('generate_gir tries to build multiple libraries with different install_dir at once: {}'.format(','.join([str(girtarget) for girtarget in girtargets])))
+
+ if girtargets[0].get_custom_install_dir():
+ fallback_libpath = girtargets[0].get_custom_install_dir()[0]
+ else:
+ fallback_libpath = None
+ if fallback_libpath is not None and isinstance(fallback_libpath, str) and len(fallback_libpath) > 0 and fallback_libpath[0] == "/":
+ scan_command += ['--fallback-library-path=' + fallback_libpath]
+
generated_files = [f for f in libsources if isinstance(f, (GeneratedList, CustomTarget, CustomTargetIndex))]
scan_target = self._make_gir_target(state, girfile, scan_command, generated_files, depends, kwargs)
@@ -1,25 +0,0 @@
This patch provides a roundabout way of keeping "$prefix/..", i.e. the store
directory, in DT_RPATH/DT_RUNPATH. See <https://issues.guix.gnu.org/70349>
for motivation.
Upstream-Status: Not submitted.
--- a/mesonbuild/build.py
+++ b/mesonbuild/build.py
@@ -1826,6 +1826,7 @@ class BuildTarget(Target):
def rpaths_for_non_system_absolute_shared_libraries(self, exclude_system: bool = True) -> ImmutableListProtocol[str]:
paths: OrderedSet[str] = OrderedSet()
srcdir = self.environment.get_source_dir()
+ vicinity = os.path.dirname(self.prefix)
system_dirs = set()
if exclude_system:
@@ -1840,7 +1841,7 @@ class BuildTarget(Target):
if dep.type_name not in {'library', 'pkgconfig', 'cmake'}:
continue
for libpath in dep.link_args:
- if libpath.startswith('-'):
+ if libpath.startswith('-') or libpath.startswith(vicinity):
continue
# For all link args that are absolute paths to a library file, add RPATH args
if not os.path.isabs(libpath):
-27
View File
@@ -1,27 +0,0 @@
Retrieved-from: <https://src.fedoraproject.org/rpms/mozjs140/raw/49492baa47bc1d7b7d5bc738c4c81b4661302f27/f/9aa8b4b051dd539e0fbd5e08040870b3c712a846.patch>
Upstream-status: https://bugzilla.mozilla.org/show_bug.cgi?id=1973994
From 9aa8b4b051dd539e0fbd5e08040870b3c712a846 Mon Sep 17 00:00:00 2001
From: Philip Chimento <philip.chimento@gmail.com>
Date: Wed, 16 Jul 2025 22:50:50 -0700
Subject: [PATCH] Bug 1973994 - mozjs-140.pc does not contain -DXP_UNIX on
Linux
Temporary fix.
---
js/src/js-config.h.in | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/js/src/js-config.h.in b/js/src/js-config.h.in
index 8372623586..498ea968ba 100644
--- a/js/src/js-config.h.in
+++ b/js/src/js-config.h.in
@@ -68,4 +68,8 @@
#undef MOZJS_MAJOR_VERSION
#undef MOZJS_MINOR_VERSION
+/* Controls API in UniquePtrExtensions.h. */
+#undef XP_UNIX
+#undef XP_WIN
+
#endif /* js_config_h */
+64
View File
@@ -0,0 +1,64 @@
From e2d65597896089a8bd06992a4b83e3d14176b02c Mon Sep 17 00:00:00 2001
From: Yelninei <yelninei@tutamail.com>
Date: Tue, 24 Mar 2026 19:46:30 +0000
Subject: [PATCH] phobos: Fixes for GNU/Hurd.
---
Makefile | 2 +-
std/datetime/timezone.d | 1 +
std/math/algebraic.d | 1 +
std/process.d | 2 ++
4 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/Makefile b/Makefile
index 4fa51299e..a9d4789f6 100644
--- a/Makefile
+++ b/Makefile
@@ -305,7 +305,7 @@ else
endif
# build with shared library support (defaults to true on supported platforms)
-SHARED=$(if $(findstring $(OS),linux freebsd),1,)
+SHARED=$(if $(findstring $(OS),linux freebsd hurd),1,)
TESTS_EXTRACTOR=$(ROOT)/tests_extractor$(DOTEXE)
PUBLICTESTS_DIR=$(ROOT)/publictests
diff --git a/std/datetime/timezone.d b/std/datetime/timezone.d
index 7461fcaa3..05c2999d3 100644
--- a/std/datetime/timezone.d
+++ b/std/datetime/timezone.d
@@ -338,6 +338,7 @@ public:
else version (linux) enum utcZone = "UTC";
else version (Darwin) enum utcZone = "UTC";
else version (Solaris) enum utcZone = "UTC";
+ else version (Hurd) enum utcZone = "UTC";
else static assert(0, "The location of the UTC timezone file on this Posix platform must be set.");
auto tzs = [testTZ("America/Los_Angeles", "PST", "PDT", dur!"hours"(-8), dur!"hours"(1)),
diff --git a/std/math/algebraic.d b/std/math/algebraic.d
index f96f24f15..05bf08b9c 100644
--- a/std/math/algebraic.d
+++ b/std/math/algebraic.d
@@ -631,6 +631,7 @@ else version (FreeBSD) version = GenericPosixVersion;
else version (OpenBSD) version = GenericPosixVersion;
else version (Solaris) version = GenericPosixVersion;
else version (DragonFlyBSD) version = GenericPosixVersion;
+else version (Hurd) version = GenericPosixVersion;
private real polyImpl(real x, in real[] A) @trusted pure nothrow @nogc
{
diff --git a/std/process.d b/std/process.d
index d359ca0ba..dc981c5e5 100644
--- a/std/process.d
+++ b/std/process.d
@@ -1031,6 +1031,8 @@ private Pid spawnProcessPosix(scope const(char[])[] args,
import core.sys.freebsd.unistd : closefrom;
else version (OpenBSD)
import core.sys.openbsd.unistd : closefrom;
+ else version (Hurd)
+ import core.sys.hurd.unistd : closefrom;
static if (!__traits(compiles, closefrom))
{
--
2.52.0
@@ -214,85 +214,6 @@ Signed-off-by: Matt Jolly <kangie@gentoo.org>
if (is_apple) {
cflags_objc = [ "-Wimplicit-retain-self" ]
cflags_objcc = [ "-Wimplicit-retain-self" ]
@@ -2848,7 +2684,8 @@ config("default_stack_frames") {
# [0]: https://pinpoint-dot-chromeperf.appspot.com/job/147634a8be0000
# [1]: https://pinpoint-dot-chromeperf.appspot.com/job/132bc772be0000
# [2]: https://crrev.com/c/5447532
-config("optimize") {
+config("optimize") { }
+config("xoptimize") {
if (is_win) {
# clang-cl's /O2 corresponds to clang's -O3, and really want -O2 for
# consistency with the other platforms.
@@ -2897,7 +2734,8 @@ config("optimize") {
}
# Turn off optimizations.
-config("no_optimize") {
+config("no_optimize") { }
+config("xno_optimize") {
if (is_win) {
cflags = [
"/Od", # Disable optimization.
@@ -2932,7 +2770,8 @@ config("no_optimize") {
# Turns up the optimization level. Used to explicitly enable -O2 instead of
# -Os for select targets on platforms that use optimize_for_size. No-op
# elsewhere.
-config("optimize_max") {
+config("optimize_max") { }
+config("xoptimize_max") {
ldflags = common_optimize_on_ldflags
if (is_win) {
# Favor speed over size, /O2 must be before the common flags.
@@ -2953,7 +2792,8 @@ config("optimize_max") {
#
# TODO(crbug.com/41259697) - rework how all of these configs are related
# so that we don't need this disclaimer.
-config("optimize_speed") {
+config("optimize_speed") { }
+config("xoptimize_speed") {
ldflags = common_optimize_on_ldflags
if (is_win) {
# Favor speed over size, /O2 must be before the common flags.
@@ -2970,7 +2810,8 @@ config("optimize_speed") {
rustflags = [ "-Copt-level=3" ]
}
-config("optimize_fuzzing") {
+config("optimize_fuzzing") { }
+config("xoptimize_fuzzing") {
cflags = [ "-O1" ] + common_optimize_on_cflags
rustflags = [ "-Copt-level=1" ]
ldflags = common_optimize_on_ldflags
@@ -3115,7 +2956,8 @@ config("split_dwarf") {
}
# Full symbols.
-config("symbols") {
+config("symbols") { }
+config("xsymbols") {
rustflags = []
configs = []
if (is_win) {
@@ -3275,7 +3117,8 @@ config("symbols") {
# Minimal symbols.
# This config guarantees to hold symbol for stack trace which are shown to user
# when crash happens in unittests running on buildbot.
-config("minimal_symbols") {
+config("minimal_symbols") { }
+config("xminimal_symbols") {
configs = []
rustflags = []
if (is_win) {
@@ -3355,7 +3198,8 @@ config("minimal_symbols") {
# This configuration contains function names only. That is, the compiler is
# told to not generate debug information and the linker then just puts function
# names in the final debug information.
-config("no_symbols") {
+config("no_symbols") { }
+config("xno_symbols") {
if (is_win) {
ldflags = [ "/DEBUG" ]
--
2.52.0
@@ -1,299 +0,0 @@
From c8896801dfbfe03b56f85c1533abc077ff74a533 Mon Sep 17 00:00:00 2001
From: Reilly Brogan <reilly@reillybrogan.com>
Date: Tue, 19 Aug 2025 14:47:03 -0500
Subject: [PATCH 1/2] Fix build with abseil-cpp 202508
---
webrtc/api/audio/audio_processing.h | 12 +++++++++
webrtc/api/make_ref_counted.h | 13 ++++++++++
webrtc/api/scoped_refptr.h | 15 +++++++++++
.../aec_dump/aec_dump_factory.h | 15 +++++++++++
.../aec_dump/null_aec_dump_factory.cc | 25 +++++++++++++++++++
.../audio_processing/audio_processing_impl.cc | 9 +++++++
.../audio_processing/audio_processing_impl.h | 9 +++++++
7 files changed, 98 insertions(+)
diff --git a/webrtc/api/audio/audio_processing.h b/webrtc/api/audio/audio_processing.h
index dca75f2..4580ba9 100644
--- a/webrtc/api/audio/audio_processing.h
+++ b/webrtc/api/audio/audio_processing.h
@@ -28,6 +28,7 @@
#include <string>
#include <utility>
+#include "absl/base/config.h"
#include "absl/base/nullability.h"
#include "absl/strings/string_view.h"
#include "api/array_view.h"
@@ -632,6 +633,7 @@ class RTC_EXPORT AudioProcessing : public RefCountInterface {
// return value of true indicates that the file has been
// sucessfully opened, while a value of false indicates that
// opening the file failed.
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
virtual bool CreateAndAttachAecDump(
absl::string_view file_name,
int64_t max_log_size_bytes,
@@ -640,6 +642,16 @@ class RTC_EXPORT AudioProcessing : public RefCountInterface {
absl::Nonnull<FILE*> handle,
int64_t max_log_size_bytes,
absl::Nonnull<TaskQueueBase*> worker_queue) = 0;
+#else
+ virtual bool CreateAndAttachAecDump(absl::string_view file_name,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull
+ worker_queue) = 0;
+ virtual bool CreateAndAttachAecDump(FILE* absl_nonnull handle,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull
+ worker_queue) = 0;
+#endif
// TODO(webrtc:5298) Deprecated variant.
// Attaches provided webrtc::AecDump for recording debugging
diff --git a/webrtc/api/make_ref_counted.h b/webrtc/api/make_ref_counted.h
index b5f4e99..080023a 100644
--- a/webrtc/api/make_ref_counted.h
+++ b/webrtc/api/make_ref_counted.h
@@ -13,6 +13,7 @@
#include <type_traits>
#include <utility>
+#include "absl/base/config.h"
#include "absl/base/nullability.h"
#include "api/ref_count.h"
#include "api/scoped_refptr.h"
@@ -86,7 +87,11 @@ template <
typename std::enable_if<std::is_convertible_v<T*, RefCountInterface*> &&
std::is_abstract_v<T>,
T>::type* = nullptr>
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<scoped_refptr<T>> make_ref_counted(Args&&... args) {
+#else
+absl_nonnull scoped_refptr<T> make_ref_counted(Args&&... args) {
+#endif
return scoped_refptr<T>(new RefCountedObject<T>(std::forward<Args>(args)...));
}
@@ -99,7 +104,11 @@ template <
!std::is_convertible_v<T*, RefCountInterface*> &&
webrtc_make_ref_counted_internal::HasAddRefAndRelease<T>::value,
T>::type* = nullptr>
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<scoped_refptr<T>> make_ref_counted(Args&&... args) {
+#else
+absl_nonnull scoped_refptr<T> make_ref_counted(Args&&... args) {
+#endif
return scoped_refptr<T>(new T(std::forward<Args>(args)...));
}
@@ -113,7 +122,11 @@ template <
!webrtc_make_ref_counted_internal::HasAddRefAndRelease<T>::value,
T>::type* = nullptr>
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<scoped_refptr<FinalRefCountedObject<T>>> make_ref_counted(
+#else
+absl_nonnull scoped_refptr<FinalRefCountedObject<T>> make_ref_counted(
+#endif
Args&&... args) {
return scoped_refptr<FinalRefCountedObject<T>>(
new FinalRefCountedObject<T>(std::forward<Args>(args)...));
diff --git a/webrtc/api/scoped_refptr.h b/webrtc/api/scoped_refptr.h
index c6fb560..8c441ff 100644
--- a/webrtc/api/scoped_refptr.h
+++ b/webrtc/api/scoped_refptr.h
@@ -66,6 +66,7 @@
#include <cstddef>
#include <utility>
+#include "absl/base/config.h"
#include "absl/base/nullability.h"
namespace webrtc {
@@ -73,13 +74,19 @@ namespace webrtc {
template <class T>
class ABSL_NULLABILITY_COMPATIBLE scoped_refptr {
public:
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
using absl_nullability_compatible = void;
+#endif
using element_type = T;
scoped_refptr() : ptr_(nullptr) {}
scoped_refptr(std::nullptr_t) : ptr_(nullptr) {} // NOLINT(runtime/explicit)
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
explicit scoped_refptr(absl::Nullable<T*> p) : ptr_(p) {
+#else
+ explicit scoped_refptr(T* absl_nullable p) : ptr_(p) {
+#endif
if (ptr_)
ptr_->AddRef();
}
@@ -122,7 +129,11 @@ class ABSL_NULLABILITY_COMPATIBLE scoped_refptr {
return retVal;
}
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
scoped_refptr<T>& operator=(absl::Nullable<T*> p) {
+#else
+ scoped_refptr<T>& operator=(T* absl_nullable p) {
+#endif
// AddRef first so that self assignment should work
if (p)
p->AddRef();
@@ -152,7 +163,11 @@ class ABSL_NULLABILITY_COMPATIBLE scoped_refptr {
return *this;
}
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
void swap(absl::Nonnull<T**> pp) noexcept {
+#else
+ void swap(T** absl_nonnull pp) noexcept {
+#endif
T* p = ptr_;
ptr_ = *pp;
*pp = p;
diff --git a/webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h b/webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h
index 0d258a9..14d8b39 100644
--- a/webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h
+++ b/webrtc/modules/audio_processing/aec_dump/aec_dump_factory.h
@@ -29,6 +29,7 @@ class RTC_EXPORT AecDumpFactory {
// The AecDump takes responsibility for `handle` and closes it in the
// destructor. A non-null return value indicates that the file has been
// sucessfully opened.
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
static absl::Nullable<std::unique_ptr<AecDump>> Create(
FileWrapper file,
int64_t max_log_size_bytes,
@@ -41,6 +42,20 @@ class RTC_EXPORT AecDumpFactory {
absl::Nonnull<FILE*> handle,
int64_t max_log_size_bytes,
absl::Nonnull<TaskQueueBase*> worker_queue);
+#else
+ static absl_nullable std::unique_ptr<AecDump> Create(
+ FileWrapper file,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue);
+ static absl_nullable std::unique_ptr<AecDump> Create(
+ absl::string_view file_name,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue);
+ static absl_nullable std::unique_ptr<AecDump> Create(
+ FILE* absl_nonnull handle,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue);
+#endif
};
} // namespace webrtc
diff --git a/webrtc/modules/audio_processing/aec_dump/null_aec_dump_factory.cc b/webrtc/modules/audio_processing/aec_dump/null_aec_dump_factory.cc
index 63929af..658bcee 100644
--- a/webrtc/modules/audio_processing/aec_dump/null_aec_dump_factory.cc
+++ b/webrtc/modules/audio_processing/aec_dump/null_aec_dump_factory.cc
@@ -16,6 +16,7 @@
namespace webrtc {
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nullable<std::unique_ptr<AecDump>> AecDumpFactory::Create(
FileWrapper file,
int64_t max_log_size_bytes,
@@ -37,3 +38,27 @@ absl::Nullable<std::unique_ptr<AecDump>> AecDumpFactory::Create(
return nullptr;
}
} // namespace webrtc
+#else
+absl_nullable std::unique_ptr<AecDump> AecDumpFactory::Create(
+ FileWrapper file,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue) {
+ return nullptr;
+}
+
+absl_nullable std::unique_ptr<AecDump> AecDumpFactory::Create(
+ absl::string_view file_name,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue) {
+ return nullptr;
+}
+
+absl_nullable std::unique_ptr<AecDump> AecDumpFactory::Create(
+ FILE* absl_nonnull handle,
+ int64_t max_log_size_bytes,
+ TaskQueueBase* absl_nonnull worker_queue) {
+ return nullptr;
+}
+} // namespace webrtc
+
+#endif
diff --git a/webrtc/modules/audio_processing/audio_processing_impl.cc b/webrtc/modules/audio_processing/audio_processing_impl.cc
index a1cba51..1dfe26d 100644
--- a/webrtc/modules/audio_processing/audio_processing_impl.cc
+++ b/webrtc/modules/audio_processing/audio_processing_impl.cc
@@ -19,6 +19,7 @@
#include <type_traits>
#include <utility>
+#include "absl/base/config.h"
#include "absl/base/nullability.h"
#include "absl/strings/match.h"
#include "absl/strings/string_view.h"
@@ -1787,7 +1788,11 @@ void AudioProcessingImpl::UpdateRecommendedInputVolumeLocked() {
bool AudioProcessingImpl::CreateAndAttachAecDump(
absl::string_view file_name,
int64_t max_log_size_bytes,
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<TaskQueueBase*> worker_queue) {
+#else
+ TaskQueueBase* absl_nonnull worker_queue) {
+#endif
std::unique_ptr<AecDump> aec_dump =
AecDumpFactory::Create(file_name, max_log_size_bytes, worker_queue);
if (!aec_dump) {
@@ -1801,7 +1806,11 @@ bool AudioProcessingImpl::CreateAndAttachAecDump(
bool AudioProcessingImpl::CreateAndAttachAecDump(
FILE* handle,
int64_t max_log_size_bytes,
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<TaskQueueBase*> worker_queue) {
+#else
+ TaskQueueBase* absl_nonnull worker_queue) {
+#endif
std::unique_ptr<AecDump> aec_dump =
AecDumpFactory::Create(handle, max_log_size_bytes, worker_queue);
if (!aec_dump) {
diff --git a/webrtc/modules/audio_processing/audio_processing_impl.h b/webrtc/modules/audio_processing/audio_processing_impl.h
index ecdc055..51a2bfb 100644
--- a/webrtc/modules/audio_processing/audio_processing_impl.h
+++ b/webrtc/modules/audio_processing/audio_processing_impl.h
@@ -20,6 +20,7 @@
#include <string>
#include <vector>
+#include "absl/base/config.h"
#include "absl/base/nullability.h"
#include "absl/strings/string_view.h"
#include "api/array_view.h"
@@ -74,11 +75,19 @@ class AudioProcessingImpl : public AudioProcessing {
bool CreateAndAttachAecDump(
absl::string_view file_name,
int64_t max_log_size_bytes,
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<TaskQueueBase*> worker_queue) override;
+#else
+ TaskQueueBase* absl_nonnull worker_queue) override;
+#endif
bool CreateAndAttachAecDump(
FILE* handle,
int64_t max_log_size_bytes,
+#if defined(ABSL_LTS_RELEASE_VERSION) && ABSL_LTS_RELEASE_VERSION < 20250512
absl::Nonnull<TaskQueueBase*> worker_queue) override;
+#else
+ TaskQueueBase* absl_nonnull worker_queue) override;
+#endif
// TODO(webrtc:5298) Deprecated variant.
void AttachAecDump(std::unique_ptr<AecDump> aec_dump) override;
void DetachAecDump() override;
--
GitLab
@@ -0,0 +1,32 @@
https://bugs.gentoo.org/917493
https://sources.debian.org/src/webrtc-audio-processing/1.0-0.2/debian/patches/Add-generic-byte-order-and-pointer-size-detection.patch/
Description: Add generic byte order and pointer size detection
Author: Than <than@redhat.com>
Origin: https://bugs.freedesktop.org/show_bug.cgi?id=95738#c4
Last-Update: 2022-02-01
---
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/webrtc/rtc_base/system/arch.h
+++ b/webrtc/rtc_base/system/arch.h
@@ -58,7 +58,19 @@
#define WEBRTC_ARCH_32_BITS
#define WEBRTC_ARCH_LITTLE_ENDIAN
#else
-#error Please add support for your architecture in rtc_base/system/arch.h
+/* instead of failing, use typical unix defines... */
+#if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
+#define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
+#define WEBRTC_ARCH_BIG_ENDIAN
+#else
+#error __BYTE_ORDER__ is not defined
+#endif
+#if defined(__LP64__)
+#define WEBRTC_ARCH_64_BITS
+#else
+#define WEBRTC_ARCH_32_BITS
+#endif
#endif
#if !(defined(WEBRTC_ARCH_LITTLE_ENDIAN) ^ defined(WEBRTC_ARCH_BIG_ENDIAN))
@@ -1,48 +0,0 @@
From e9c78dc4712fa6362b0c839ad57b6b46dce1ba83 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20Laignel?= <francois@centricular.com>
Date: Mon, 14 Apr 2025 16:48:19 +0200
Subject: [PATCH] Fix compilation with gcc-15
This commit fixes compilation errors with gcc-15 (default for Fedora 42).
From [1]:
> Common C++ headers (like <memory>) in GCC 15.0.0 (combined with libstdc++)
> don't transitively include uint64_t anymore.
See also [2].
[1]: https://github.com/ROCm/rocm_smi_lib/pull/198
[2]: https://github.com/root-project/root/issues/17444
---
.../audio_processing/aec3/multi_channel_content_detector.h | 1 +
webrtc/rtc_base/trace_event.h | 1 +
2 files changed, 2 insertions(+)
diff --git a/webrtc/modules/audio_processing/aec3/multi_channel_content_detector.h b/webrtc/modules/audio_processing/aec3/multi_channel_content_detector.h
index 2b2f3b8..feb29fd 100644
--- a/webrtc/modules/audio_processing/aec3/multi_channel_content_detector.h
+++ b/webrtc/modules/audio_processing/aec3/multi_channel_content_detector.h
@@ -12,6 +12,7 @@
#define MODULES_AUDIO_PROCESSING_AEC3_MULTI_CHANNEL_CONTENT_DETECTOR_H_
#include <stddef.h>
+#include <cstdint>
#include <memory>
#include <optional>
diff --git a/webrtc/rtc_base/trace_event.h b/webrtc/rtc_base/trace_event.h
index 2aee713..f88a68e 100644
--- a/webrtc/rtc_base/trace_event.h
+++ b/webrtc/rtc_base/trace_event.h
@@ -28,6 +28,7 @@
#if !defined(RTC_USE_PERFETTO)
#include <string>
+#include <cstdint>
#include "rtc_base/event_tracer.h"
--
GitLab
@@ -0,0 +1,13 @@
https://bugs.gentoo.org/921140
https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/issues/5
--- a/webrtc/rtc_base/system/arch.h
+++ b/webrtc/rtc_base/system/arch.h
@@ -34,7 +34,7 @@
#else
#define WEBRTC_ARCH_32_BITS
#endif
-#elif defined(_M_IX86) || defined(__i386__)
+#elif defined(__SSE__) && (defined(_M_IX86) || defined(__i386__))
#define WEBRTC_ARCH_X86_FAMILY
#define WEBRTC_ARCH_X86
#define WEBRTC_ARCH_32_BITS
+36
View File
@@ -39,6 +39,42 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg))
(define-public 9pfs
(package
(name "9pfs")
(version "0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ftrvxmtrx/9pfs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1fxyrny1alsbg1dr2pav3sz85s3amxiizklj8p3wsfmw08hjhgrm"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(delete 'configure)) ;no configure script
#:make-flags
#~(list
"DESTDIR="
(string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
(list pkg-config))
(inputs
(list fuse-2))
(synopsis "Mounts a 9P server's files into the file system")
(home-page "https://github.com/ftrvxmtrx/9pfs")
(description
"@command{9pfs} mounts a file system using the @acronym{9P protocol, Plan 9
Filesystem Protocol}. It is a replacement for @command{9pfuse} from
@code{plan9port}.")
(license (list license:isc license:expat))))
(define-public diod
(package
(name "diod")
+2 -2
View File
@@ -237,7 +237,7 @@ it.")
(define-public trealla
(package
(name "trealla")
(version "2.94.20")
(version "2.97.0")
(source
(origin
(method git-fetch)
@@ -246,7 +246,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
(base32 "15qqs0iy50g3caqjbyhsdkfmbv0rlg541lcpdj9ajv7lwmpxm2ba"))
(base32 "1342xcpjmryn0l3v8wmg7w6pjvsk42c84cr9xbah36dwhj8s354z"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
+2 -2
View File
@@ -173,7 +173,7 @@ rates.")
(define-public pulseaudio
(package
(name "pulseaudio")
(version "17.0")
(version "16.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -181,7 +181,7 @@ rates.")
name "-" version ".tar.xz"))
(sha256
(base32
"1dc7xdfbn5rknwsvv5m2ijfwnqrap208liwyhiykjghsczb98dq5"))
"1r2aa0g7al9jhrrbrnih6i3bfznd73kkbafrbzwpjyflj7735vwf"))
(modules '((guix build utils)))
(snippet
;; Disable console-kit support by default since it's deprecated
+106 -7
View File
@@ -180,6 +180,7 @@
;;; Copyright © 2025 Isidor Zeuner <guix@quidecco.pl>
;;; Copyright © 2025 Andy Tai <atai@atai.org>
;;; Copyright © 2026 Daniel Khodabakhsh <d@niel.khodabakh.sh>
;;; Copyright © 2026 Akiyoshi Suda <code@akiyoshisuda.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2600,6 +2601,74 @@ well-formed Roman numerals.")
reused when throttling user interactions with a resource (e.g., an API).")
(license license:expat)))
(define-public python-rustworkx
(package
(name "python-rustworkx")
(version "0.17.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Qiskit/rustworkx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0sr0wrfb9wzxcljhb7swwgk2hdxqjfmcfj785jq624mx14kqc4k8"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags #~(list "--test-path" "tests")
#:imported-modules (append %cargo-build-system-modules
%pyproject-build-system-modules)
#:modules '(((guix build cargo-build-system)
#:prefix cargo:)
(guix build pyproject-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:cargo-target #$(cargo-triplet) args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums))))
(add-before 'check 'pre-check
(lambda _
;; Delete the source directory to avoid interference.
(delete-file-recursively "rustworkx")
;; Matplotlib needs to be able to write its configuration file
;; somewhere.
(setenv "MPLCONFIGDIR" "/tmp")
;; For fontconfig.
(setenv "XDG_CACHE_HOME" "/tmp"))))))
(propagated-inputs (list python-numpy))
(native-inputs
(append (list graphviz
python-matplotlib
python-networkx
python-pillow
python-setuptools
python-setuptools-rust
python-stestr
rust
`(,rust "cargo"))
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(inputs (cargo-inputs 'python-rustworkx))
(home-page "https://www.rustworkx.org")
(synopsis "High performance graph library for Python")
(description
"@code{rustworkx} is a Python package for working with graphs and complex
networks. It enables the creation, interaction with, and study of graphs and
networks.")
(license license:asl2.0)))
(define-public python-safety-schemas
(package
(name "python-safety-schemas")
@@ -16986,11 +17055,12 @@ the @code{sendfile(2)} system call.")
(arguments
(list
#:test-flags
#~(list
"-k" "not TestCommandLineParser"
;; These contains flaky tests.
"--deselect=pyftpdlib/test/test_functional.py"
"--deselect=pyftpdlib/test/test_functional_ssl.py")))
#~(list "-k" "not TestCommandLineParser"
#$@(if (target-aarch64?)
;; TimeoutError: timed out
'((string-append "--deselect=pyftpdlib/test/test_functional.py"
"::TestTimeouts::test_idle_data_timeout2"))
'()))))
(native-inputs
(list python-psutil
python-pytest
@@ -21072,8 +21142,7 @@ into 22 character URL-safe base64 slug representation.")
(sha256
(base32 "0zwjry4ylqncqvxrywp0km96jng4f288dgz8kz5vymk7nr2z21m1"))))
(build-system pyproject-build-system)
;; The test_brokenpipeerror is flaky.
(arguments (list #:test-flags #~(list "-k" "not test_brokenpipeerror")))
;; tests: 856 passed, 24 skipped
(native-inputs
(list python-poetry-core
python-pytest
@@ -40983,6 +41052,36 @@ files.")
(define-deprecated-package python-xdg
python-xdg-base-dirs)
(define-public python-xkbcommon
(package
(name "python-xkbcommon")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sde1000/python-xkbcommon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0r9fknyys2mr5fl9hbyp8n9izf27553yf49krzinzksnfr9b6c7s"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-cffi))
(native-inputs (list libxkbcommon python-setuptools))
(arguments
(list
#:test-backend
#~'unittest
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'cleanup
(lambda _
(delete-file-recursively "xkbcommon"))))))
(home-page "https://github.com/sde1000/python-xkbcommon")
(synopsis "Bindings for libxkbcommon using cffi")
(description "Bindings for libxkbcommon using cffi.")
(license license:expat)))
(define-public python-xlib
(package
(name "python-xlib")
+3
View File
@@ -768,6 +768,9 @@ def contents() -> str:
" test_threading"
" test_asyncio"
" test_shutdown"
,@(if (target-ppc32?)
'(" test_ssl")
'())
,@(if (system-hurd?)
'(" test_posix" ;multiple errors
" test_time"
+4 -13
View File
@@ -1093,16 +1093,11 @@ tst_qt_cmake_create.cpp"
;; See https://bugreports.qt.io/browse/QTBUG-113371
;; Adding glibc-utf8-locales to native-inpus is no help.
;; TODO: when core-updates is merged, check again.
"tst_selftests"
;; The qsqldatabase test is flaky (see:
;; <https://qt-project.atlassian.net/browse/QTBUG-145385>).
"tst_qsqldatabase"
;; The 'tst_qtimer' test has a propensity to hang and
;; fail (see:
;; <https://qt-project.atlassian.net/browse/QTBUG-145261>).
"tst_qtimer_no_glib"
;; The 'tst_qsqlthread' test sometimes fails.
"tst_qsqlthread"
;; The 'tst_qthread' test is also flaky, despite the
;; patch applied that promised to fix it.
@@ -1201,11 +1196,7 @@ tst_qt_cmake_create.cpp"
;; This test may fail non-deterministically as reported
;; in Guix bug#73233 and upstream at
;; https://bugreports.qt.io/browse/QTBUG-119321.
"tst_qsharedmemory"
;; This test fails deterministically on a non-privileged
;; daemon.
"tst_qstandardpaths")
"tst_qsharedmemory")
#$@(cond
((target-ppc64le?)
#~((list
-15
View File
@@ -101,18 +101,3 @@ file, without requiring the old and new versions to both be present at the
sending end. The library uses a \"streaming\" design similar to that of zlib
with the aim of allowing it to be embedded into many different applications.")
(license license:lgpl2.1+)))
(define-public librsync-0.9
(package
(inherit librsync)
(version "0.9.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/librsync/librsync/"
version "/librsync-" version ".tar.gz"))
(sha256
(base32
"1mj1pj99mgf1a59q9f2mxjli2fzxpnf55233pc1klxk2arhf8cv6"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--enable-shared")))
(inputs '())))
+2 -2
View File
@@ -1079,14 +1079,14 @@ highlighting tool to ease code review from your terminal.")
(define-public difftastic
(package
(name "difftastic")
(version "0.68.0")
(version "0.69.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "difftastic" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "012h76wx5jv6czc9j4awfan7vhrc6g5fdgnxrjmzg5q27wn99hn6"))))
(base32 "1wa2vhp26vbim8qp3rlahxmf65lzgacc5p6czc4hqsl3gglg0fs5"))))
(build-system cargo-build-system)
(arguments
(list
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -1736,18 +1736,18 @@ and runtime for AI-assisted coding.")
(define-public rust-glycin-3
(package
(name "rust-glycin")
(version "3.1.0")
(version "3.0.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/GNOME/glycin.git")
;; Rust library version is different from the tagged version.
(commit "2.1.1")))
(commit "2.0.7")))
(file-name (git-file-name name version))
(sha256
(base32
"1mrv733xhbxydww4szskv7jc0hif908aavh8h4kjcxp0zgy13blf"))
"0v6szxk5h8a4b28xb0lrhqrq6b4vka2ha4qgpdp35f6c49v9pdyp"))
(patches (search-patches "glycin-sandbox-Adapt-bwrap-invocation.patch"))))
(build-system cargo-build-system)
(arguments
+7 -3
View File
@@ -133,7 +133,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(define-public fish
(package
(name "fish")
(version "4.6.0")
(version "4.7.0")
(source
(origin
(method url-fetch)
@@ -141,7 +141,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
"releases/download/" version "/"
"fish-" version ".tar.xz"))
(sha256
(base32 "1ak12wpjllckv566k9jjy59si25whsib3j8ip8yqmqm06gvnb4gw"))
(base32 "1nx9m8kis1v4w27mdzzpj9l9mpnz0w7n1v7kaajd9lv5ny63njn5"))
;; TODO: Unbundle corrosion.
(patches (search-patches "corrosion-honor-CARGO_BUILD_TARGET.patch"))))
(build-system cmake-build-system)
@@ -218,9 +218,11 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
;; "Found existing zombie processes. Clean up zombies before running this test."
;; Disabling parallel tests does not reliably prevent it.
(delete-file "tests/checks/jobs.fish")
;; This one needs to chdir successfully.
;; These ones need to chdir successfully.
(substitute* "tests/checks/vars_as_commands.fish"
(("/usr/bin") "/tmp"))
(substitute* "tests/checks/cd.fish"
(("cd bin") "cd tmp"))
;; shebangless scripts don't work
(delete-file "tests/checks/noshebang.fish")
;; This doesn't work
@@ -236,6 +238,8 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(("/usr/bin/e\"") (string-append coreutils "/bin/e\""))
(("\"/bin") "\"/tmp")
(("\"/usr") "\"/tmp"))
(substitute* "tests/checks/colon-delimited-var.fish"
(("/usr/bin:a:.:b") "/tmp/bin:a:.:b"))
(substitute* "tests/test_driver.py"
(("\"cc\"") "\"gcc\"")))))
;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish.
+71 -34
View File
@@ -36,6 +36,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages wxwidgets)
@@ -65,45 +66,71 @@
(define-public plover
(package
(name "plover")
(version "4.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0d7vkxdz7g9jvlrn5wx9502yqcdyqmalk4yn7lkla0am9hzqp14l"))))
(version "5.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1dx5afcfqskwzkf6zfpii704f2b21z6al3d0g2h4xwza82cmknnl"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "-p" "pytest-qt"
"-p" "xvfb"
;; FIXME: Ignore failing test.
"--ignore" "test/gui_qt/test_dictionaries_widget.py"
"test")
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "pytest"
"-p" "pytest-qt"
"-p" "xvfb"
"test"
;; FIXME: Ignore failing test.
"--ignore" "test/gui_qt/test_dictionaries_widget.py"))))
;; FIXME: adjust after packaging pyside-6-tools.
(add-after 'unpack 'set-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "plover_build_utils/setup.py"
(("\"pyside6-(rcc|uic)\"" all prog)
(simple-format #f "~s, \"-g\", \"python\""
(search-input-file
inputs (string-append "/lib/qt6/libexec/" prog)))))))
;; FIXME: test_i18n_files_up_to_date would not pass
;; if the phase is run after build.
(add-after 'build 'update-i18n-catalog-for-tests
(lambda _
(invoke "python" "setup.py" "extract_messages" "update_catalog")))
;; Ensure that icons are found at runtime.
(add-after 'wrap 'wrap-executable
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/plover")
`("QT_PLUGIN_PATH" prefix
(,(search-input-directory inputs "/lib/qt5/plugins/")))
(,(string-append #$(this-package-input "qtwayland")
"/lib/qt6/plugins/")
,(string-append #$(this-package-input "qtsvg")
"/lib/qt6/plugins/")
,(string-append #$(this-package-input "python-pyside-6")
"/lib/qt6/plugins/")))
`("LD_LIBRARY_PATH" prefix
(,(string-append #$(this-package-input "dbus") "/lib"))))))
(add-after 'install 'install-desktop
(lambda _
(install-file "plover/assets/plover.png"
(string-append
#$output "/share/icons/hicolor/128x128/apps"))
(let ((desktop
(string-append
#$output "/share/applications/plover.desktop")))
(install-file "linux/plover.desktop" (dirname desktop))
(substitute* desktop
(("Exec=plover")
(string-append "Exec=" #$output "/bin/plover"))))))
(add-after 'install 'install-udev-rules
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(rules (string-append out "/lib/udev/rules.d")))
(mkdir-p rules)
(call-with-output-file
(string-append rules "/99-plover-uinput.rules")
(lambda _
(let* ((dir (string-append #$output "/lib/udev/rules.d"))
(file (string-append dir "/99-plover-uinput.rules")))
(mkdir-p dir)
(call-with-output-file file
(lambda (port)
(display
(string-append
@@ -112,26 +139,37 @@
port)))))))))
(native-inputs
(list python-babel
python-evdev
python-mock
python-pytest
python-pytest-qt
python-pytest-xvfb
python-wheel))
python-setuptools))
(inputs
(list bash-minimal
dbus
python-appdirs
qtbase
qtsvg
qtwayland
xhost))
(propagated-inputs
(list python-appdirs
python-dbus-1.2
python-evdev
python-hidapi
python-packaging
python-pkginfo
python-plover-stroke
python-pyqt
python-psutil
python-pygments
python-pyserial
python-pyside-6
python-readme-renderer
python-requests-cache
python-requests-futures
python-rtf-tokenize
python-wcwidth
python-xlib
qtsvg-5
xhost))
python-xkbcommon
python-xlib))
(home-page "https://www.openstenoproject.org/plover/")
(synopsis "Stenography engine")
(description
@@ -139,4 +177,3 @@
allows anyone to use stenography to write on their computer, up to
speeds of 200WPM and beyond.")
(license license:gpl2+)))
+25 -12
View File
@@ -416,8 +416,8 @@ which will be used as a snippet in origin."
(define-public tree-sitter-c
(tree-sitter-grammar
"c" "C"
"1vw7jd3wrb4vnigfllfmqxa8fwcpvgp1invswizz0grxv249piza"
"0.23.5"))
"19yc4g5fdibfqbn49ggywk9k2by78s8lrsjp1cx2lagb1dvxnv42"
"0.24.1"))
(define-public tree-sitter-cairo
(tree-sitter-grammar
@@ -1148,7 +1148,7 @@ which will be used as a snippet in origin."
#:repository-url
"https://github.com/benwilliamgraham/tree-sitter-llvm")))
(define-public tree-sitter-lua
(define-public tree-sitter-lua-0.4
(tree-sitter-grammar
"lua" "Lua"
"082hc274h96sa98n3vxicjmjvnbdhrpjaimxsh002xl69rdl80jm"
@@ -1161,6 +1161,19 @@ which will be used as a snippet in origin."
(delete-file-recursively "test/highlight") ;FIXME
#$(tree-sitter-delete-generated-files grammar-directories)))))
(define-public tree-sitter-lua
(tree-sitter-grammar
"lua" "Lua"
"1mhlwpj4ajqajgjw99l9xhiqnyg9hwn7zdgvdw037vk3k8vrldjp"
"0.5.0"
#:repository-url "https://github.com/tree-sitter-grammars/tree-sitter-lua"
#:get-cleanup-snippet
(lambda (grammar-directories)
#~(begin
(use-modules (guix build utils))
(delete-file-recursively "test/highlight") ;FIXME
#$(tree-sitter-delete-generated-files grammar-directories)))))
(define-public tree-sitter-luadoc
(let ((version "1.1.0")
(commit "818acda56809f994274de64a42f97f509b3c0ad2")
@@ -1192,7 +1205,7 @@ which will be used as a snippet in origin."
"1.2.0"
#:repository-url
"https://github.com/tree-sitter-grammars/tree-sitter-luau"
#:inputs (list tree-sitter-lua)
#:inputs (list tree-sitter-lua-0.4)
#:get-cleanup-snippet
(lambda (grammar-directories)
#~(begin
@@ -1224,8 +1237,8 @@ which will be used as a snippet in origin."
(define-public tree-sitter-markdown
(tree-sitter-grammar
"markdown" "Markdown (CommonMark Spec v0.30)"
"0r8jlmyr1bnyqqipmpmxxw4qw81c9n0l29xdfkz2n2zmjqps5v9r"
"0.4.1"
"0vz9r1dbbdj8vwf45izmbajhjbl98ww2dvlk1faqy33kx7plsiar"
"0.5.3"
#:repository-url "https://github.com/MDeiml/tree-sitter-markdown"
#:grammar-directories '("tree-sitter-markdown"
"tree-sitter-markdown-inline")
@@ -1586,8 +1599,8 @@ which will be used as a snippet in origin."
(package
(inherit (tree-sitter-grammar "query"
"Query"
"0fbqwg7km4yqjq8p2fkj9hpy0sfnijnf1hsk34wsirlp3af3hc67"
"0.7.0"
"1m7w05228ky26ph4k9vfwjwkhghppnpvci2i45iwncjanrni6byk"
"0.8.0"
#:repository-url
"https://github.com/tree-sitter-grammars/tree-sitter-query"))
(synopsis "Tree-sitter grammar for Tree-sitter's query language")
@@ -2074,15 +2087,15 @@ files.")))
(define-public tree-sitter-vim
(tree-sitter-grammar "vim"
"Vimscript"
"0wr0sijh3vpka0gysbf0ki8zkvwfg8r5lvhi3xbwmkbyszjzgrqw"
"0.7.0"
"1myz19yimx179gzd6w64zyshfb4hbxp7qfrdf6nvf9a2w8bc2wij"
"0.8.1"
#:repository-url "https://github.com/tree-sitter-grammars/tree-sitter-vim"))
(define-public tree-sitter-vimdoc
(tree-sitter-grammar "vimdoc"
"Vimdoc"
"1gi16hmh4vk9hdfkg9kvwxd7m4rq8r6vymk7fgxqqrbyrks9f0mw"
"4.0.0"
"18f1dr3j79axg6yqrvm0fc2w4cil403al9xifc4h4vkkp6hg6y9b"
"4.1.0"
#:repository-url
"https://github.com/neovim/tree-sitter-vimdoc"
#:license license:expat))
+2 -2
View File
@@ -96,7 +96,7 @@ also use Valgrind to build new tools.")
(define-public valgrind
(package
(inherit valgrind/pinned)
(version "3.26.0")
(version "3.27.0")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/pub/valgrind"
@@ -105,7 +105,7 @@ also use Valgrind to build new tools.")
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
"1mvbc6x0w6blkv8wn5fh7pcm6bk9p4m81bxd99jg21li08bwfm4d"))))))
"1vsv47wkmz2yd15alzd03839ikmd26bip9wfd58qzvjphbg3fnav"))))))
(define-public valgrind/interactive
(package/inherit valgrind
+2 -10
View File
@@ -1184,7 +1184,7 @@ provides an integration with GitHub and GitLab.")
(define-public got
(package
(name "got")
(version "0.123")
(version "0.124")
(source (origin
(method url-fetch)
(uri
@@ -1193,7 +1193,7 @@ provides an integration with GitHub and GitLab.")
version ".tar.gz"))
(sha256
(base32
"09l55364d8lga34gq8h6y9rs8r3xka57d1dzjr34zvp20dgpkbjk"))))
"0i4w1njqggdqdxw3mismyqy0kjhnr4gsrd9b2p2awhwk1ac8xwwg"))))
(inputs
(list libevent
`(,util-linux "lib")
@@ -1316,14 +1316,6 @@ other git-like projects such as @code{libgit2}.")
"-DREGEX_BACKEND=pcre2"
"-DUSE_HTTP_PARSER=http-parser"
"-DUSE_SSH=ON" ; cmake fails to find libssh if this is missing
,@(if (%current-target-system)
`((string-append
"-DPKG_CONFIG_EXECUTABLE="
(search-input-file
%build-inputs
(string-append "/bin/" ,(%current-target-system)
"-pkg-config"))))
'())
;; See https://github.com/libgit2/libgit2/issues/7169
,@(if (target-32bit?)
'("-DCMAKE_C_FLAGS=-D_FILE_OFFSET_BITS=64")
+46 -42
View File
@@ -50,7 +50,7 @@
;;; Copyright © 2021 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2021, 2022, 2023 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2021 David Wilson <david@daviwil.com>
;;; Copyright © 2021-2026 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
@@ -3573,33 +3573,22 @@ soon as it starts.")
(define-public libbluray
(package
(name "libbluray")
(version "1.4.1")
(version "1.3.4")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/videolan/"
name "/" version "/"
name "-" version ".tar.xz"))
name "-" version ".tar.bz2"))
(sha256
(base32
"0jglp44wsjpp5k3mrxskfj9b488ksn7cj2dhxfjdqa3z150drdbn"))))
(build-system meson-build-system)
"0aszpsz3pc7p7z6yahlib4na585m6pqbg2d9dkpyipgml1lgv3s7"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags #~(list "--disable-bdjava-jar" "--disable-static")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-dlopen-paths
(lambda* (#:key inputs #:allow-other-keys)
(define (lib/no.so library)
(let ((found (search-input-file inputs library)))
(substring found 0 (- (string-length found)
(string-length ".so")))))
(substitute* "src/libbluray/disc/aacs.c"
(("\"libaacs\"")
(string-append "\"" (lib/no.so "lib/libaacs.so") "\"")))
(substitute* "src/libbluray/disc/bdplus.c"
(("\"libbdplus\"")
(string-append "\"" (lib/no.so "lib/libbdplus.so") "\"")))))
(add-after 'install 'move-packages-to-libs
(add-after 'unpack 'move-packages-to-libs
;; Avoid the need to propagate libxml2 et al. by referring to them
;; directly.
(lambda* (#:key inputs #:allow-other-keys)
@@ -3607,17 +3596,27 @@ soon as it starts.")
(dirname
(search-input-file inputs
(string-append "lib/lib" lib ".so"))))
(substitute* (string-append #$output
"/lib/pkgconfig/libbluray.pc")
(("^Requires.private.*") "")
(substitute* "src/libbluray.pc.in"
(("@PACKAGES@") "")
(("^Libs.private:" field)
(string-append field
" -L" (search-input-vicinity "xml2")
" -L" (search-input-vicinity "freetype")
" -L" (search-input-vicinity "fontconfig")
" -lxml2 -lfreetype -lfontconfig"))))))))
" -lxml2 -lfreetype -lfontconfig")))))
(add-before 'build 'fix-dlopen-paths
(lambda* (#:key inputs #:allow-other-keys)
(define (lib/no.so library)
(let ((found (search-input-file inputs library)))
(substring found 0 (- (string-length found)
(string-length ".so")))))
(substitute* "src/libbluray/disc/aacs.c"
(("\"libaacs\"")
(string-append "\"" (lib/no.so "lib/libaacs.so") "\""))
(("\"libbdplus\"")
(string-append "\"" (lib/no.so "lib/libbdplus.so") "\""))))))))
(native-inputs (list pkg-config))
(inputs (list fontconfig freetype libaacs libbdplus libudfread libxml2))
(inputs (list fontconfig freetype libaacs libbdplus libxml2))
(home-page "https://www.videolan.org/developers/libbluray.html")
(synopsis "Blu-Ray Disc playback library")
(description
@@ -3628,18 +3627,22 @@ players, like VLC or MPlayer.")
(define-public libdvdread
(package
(name "libdvdread")
(version "7.0.1")
(version "6.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/videolan/"
"libdvdread/" version "/"
"libdvdread-" version ".tar.xz"))
"libdvdread-" version ".tar.bz2"))
(sha256
(base32
"01ylalrr9lw6x7fz7z030243kln1hfd1pbh3m9ikjp610nih8gif"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
(propagated-inputs (list libdvdcss))
"0sakl4c8y2kkp09km0b5353w66pvfc72y8wi1vjwn252jx4ladff"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-libdvdcss=yes")))
(native-inputs
(list pkg-config))
(propagated-inputs
(list libdvdcss))
(home-page "http://dvdnav.mplayerhq.hu/")
(synopsis "Library for reading video DVDs")
(description
@@ -3703,16 +3706,16 @@ MPEG-2 stream containing VOB packets.")
(define-public libdvdnav
(package
(name "libdvdnav")
(version "7.0.0")
(version "6.1.1")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/videolan/"
"libdvdnav/" version "/"
"libdvdnav-" version ".tar.xz"))
"libdvdnav-" version ".tar.bz2"))
(sha256
(base32
"07i2gdj4nfah4lwlc6hl14xjbyh6b12bc1lipxs3q4vdsdd8z8d2"))))
(build-system meson-build-system)
"0j4ds6c4xl34dijkfpw805vj7s0vzg095kw0fvzj7ls7b53sg4f1"))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
(propagated-inputs (list libdvdread)) ;in 'Requires.private' of dvdnav.pc
(home-page "http://dvdnav.mplayerhq.hu/")
@@ -3733,16 +3736,16 @@ encapsulated.")
(define-public libdvdcss
(package
(name "libdvdcss")
(version "1.5.0")
(version "1.4.3")
(source (origin
(method url-fetch)
(uri (string-append "https://download.videolan.org/pub/"
name "/" version "/"
name "-" version ".tar.xz"))
name "-" version ".tar.bz2"))
(sha256
(base32
"16f3lnwcldy0ssq2yah97qsb0b8scsvhsivfbhpgizmys7j6752j"))))
(build-system meson-build-system)
"0y800y33spblb20s1lsjbaiybknmwwmmiczmjqx5s760blpwjg13"))))
(build-system gnu-build-system)
(home-page "https://www.videolan.org/developers/libdvdcss.html")
(synopsis "Library for accessing DVDs as block devices")
(description
@@ -5191,18 +5194,19 @@ specifications.")
(define-public libaacs
(package
(name "libaacs")
(version "0.11.1")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://ftp.videolan.org/pub/videolan/libaacs/"
version "/libaacs-" version ".tar.bz2"))
(sha256
(base32 "0f8ax9dp49mrm1484bl2df659b34xyrjmngzmvvpg2n9wkms12m8"))))
(inputs (list libgcrypt))
(native-inputs (list bison flex))
(base32 "11skjqjlldmbjkyxdcz4fmcn6y4p95r1xagbcnjy4ndnzf0l723d"))))
(inputs
(list libgcrypt))
(native-inputs
(list bison flex))
(build-system gnu-build-system)
(arguments (list #:configure-flags #~(list "--disable-static")))
(home-page "https://www.videolan.org/developers/libaacs.html")
(synopsis "Library for decrypting certain Blu-Ray discs")
(description "libaacs is a library which implements the Advanced Access
+2 -2
View File
@@ -10117,7 +10117,7 @@ week, a month) and then browse/organise it while staying disconnected.")
(define-public uriparser
(package
(name "uriparser")
(version "1.0.0")
(version "1.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -10126,7 +10126,7 @@ week, a month) and then browse/organise it while staying disconnected.")
(file-name (git-file-name name version))
(sha256
(base32
"05y33g80wgf155lm6ir21kw2an59fgf3q4w26iaarc8zi75m324k"))))
"1a4032wn6p9mv5lizh5rpg5gwvq69bk7zfqix7vjv5cap1zqvk84"))))
(build-system cmake-build-system)
(native-inputs (list googletest doxygen graphviz))
(arguments (if (%current-target-system)
+9 -6
View File
@@ -3289,7 +3289,7 @@ resources and provides animations for switching between backgrounds.")
(define-public swaynotificationcenter
(package
(name "swaynotificationcenter")
(version "0.10.1")
(version "0.12.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3297,7 +3297,7 @@ resources and provides animations for switching between backgrounds.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0cx3ql7qb2wajck1vip9sm2a122jv9x8g2r0bnw4rrxd91yca7a9"))))
(base32 "0zg599v36ljd8561rpw1rzhacxms2x9gma6r19636cajd0gyr62k"))))
(build-system meson-build-system)
(arguments
(list
@@ -3324,13 +3324,16 @@ resources and provides animations for switching between backgrounds.")
scdoc
vala))
(inputs
(list json-glib
(list blueprint-compiler
json-glib
glib
granite-6
gtk+
gtk-layer-shell
granite
gtk
gtk4-layer-shell
libadwaita
libhandy
libgee
libshumate
pulseaudio
wayland-protocols))
(synopsis "Notification daemon with a graphical interface")
+61 -1
View File
@@ -1542,6 +1542,66 @@ the user shall be removed when the user fully logs out.")
'#$(elogind-configuration-system-shutdown-hook-files
config))))))
(define (elogind-dbus-service config)
"Return a @file{org.freedesktop.login1.service} file that tells D-Bus how to
\"start\" elogind. In practice though, our elogind is started when booting by
shepherd. Thus, the @code{Exec} line of this @file{.service} file does not
explain how to start elogind; instead, it spawns a wrapper that waits for the
@code{elogind} shepherd service. This avoids a race condition where both
@command{shepherd} and @command{dbus-daemon} would attempt to start elogind."
;; For more info on the elogind startup race, see
;; <https://issues.guix.gnu.org/55444>.
(define elogind
(elogind-configuration-elogind config))
(define wrapper
(program-file "elogind-dbus-shepherd-sync"
(with-imported-modules '((gnu services herd))
#~(begin
(use-modules (gnu services herd)
(srfi srfi-34))
(guard (c ((service-not-found-error? c)
(format (current-error-port)
"no elogind shepherd service~%")
(exit 1))
((shepherd-error? c)
(format (current-error-port)
"elogind shepherd service not \
started~%")
(exit 2)))
(wait-for-service 'elogind))))))
(define build
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils)
(ice-9 match))
(define service-directory
"/share/dbus-1/system-services")
(mkdir-p (dirname (string-append #$output service-directory)))
(copy-recursively (string-append #$elogind service-directory)
(string-append #$output service-directory))
(symlink (string-append #$elogind "/etc") ;for etc/dbus-1
(string-append #$output "/etc"))
;; Also expose the D-Bus policy configurations (.conf) files, now
;; installed under '/share' instead of the legacy '/etc' prefix.
(symlink (string-append #$elogind "/share/dbus-1/system.d")
(string-append #$output "/share/dbus-1/system.d"))
;; Replace the "Exec=" line of the 'org.freedesktop.login1.service'
;; file with one that refers to WRAPPER instead of elogind.
(match (find-files #$output "\\.service$")
((file)
(substitute* file
(("Exec[[:blank:]]*=.*" _)
(string-append "Exec=" #$wrapper "\n"))))))))
(list (computed-file "elogind-dbus-service-wrapper" build)))
(define (pam-extension-procedure config)
"Return an extension for PAM-ROOT-SERVICE-TYPE that ensures that all the PAM
services use 'pam_elogind.so', a module that allows elogind to keep track of
@@ -1589,7 +1649,7 @@ of the service's configuration files."
(name 'elogind)
(extensions
(list (service-extension dbus-root-service-type
(compose list elogind-configuration-elogind))
elogind-dbus-service)
(service-extension udev-service-type
(compose list elogind-configuration-elogind))
(service-extension polkit-service-type
+54
View File
@@ -0,0 +1,54 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu services firmware)
#:use-module (gnu packages firmware)
#:use-module (gnu services)
#:use-module (gnu services base)
#:use-module (gnu services configuration)
#:use-module (gnu services dbus)
#:use-module (guix packages)
#:use-module (guix gexp)
#:export (fwupd-configuration
fwupd-configuration?
fwupd-configuration-fields
fwupd-configuration-fwupd
fwupd-service-type))
(define-configuration/no-serialization fwupd-configuration
(fwupd
(package fwupd)
"The fwupd package that will be installed in the system profile."))
(define fwupd-service-type
(service-type
(name 'fwupd)
(extensions
(list
(service-extension profile-service-type
(compose list fwupd-configuration-fwupd))
(service-extension dbus-root-service-type
(compose list fwupd-configuration-fwupd))
(service-extension udev-service-type
(compose list fwupd-configuration-fwupd))
(service-extension polkit-service-type
(compose list fwupd-configuration-fwupd))))
(default-value (fwupd-configuration))
(description
"This service runs the fwupd daemon on the Guix System.")))
+10 -1
View File
@@ -532,7 +532,16 @@ avoid potential infinite waits blocking libvirt."))
(string-append
"LINUX_MODULE_DIRECTORY="
"/run/booted-system/kernel/lib/modules"))))
(stop #~(make-kill-destructor))))))
(stop #~(make-kill-destructor))
(actions
(list (shepherd-signal-action
'reload SIGHUP
#:documentation "Send a @code{SIGHUP} signal
to @command{libvirtd} to reload its configuration (both its configuration file,
and the content of @file{/etc/libvirtd}, in which live the XML files
that define e.g. the VMs and their network)."
#:message "Service libvirtd has been asked \
to reload its configuration.")))))))
(define (/etc/qemu/firmware config)
(let ((firmwares (libvirt-configuration-firmwares config)))
+9 -3
View File
@@ -10,7 +10,7 @@
;;; Copyright © 2020, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020, 2022, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020, 2023, 2026 Janneke Nieuwenhuizen <jannek@gnu.org>
;;; Copyright © 2020, 2022, 2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 raid5atemyhomework <raid5atemyhomework@protonmail.com>
@@ -1033,7 +1033,7 @@ LOGO=guix-icon
HOME_URL=\"https://guix.gnu.org\"
DOCUMENTATION_URL=\"https://guix.gnu.org/en/manual\"
SUPPORT_URL=\"https://guix.gnu.org/en/help\"
BUG_REPORT_URL=\"https://lists.gnu.org/mailman/listinfo/bug-guix\"
BUG_REPORT_URL=\"https://codeberg.org/guix/guix/issues\"
"))
(define* (operating-system-etc-service os)
@@ -1537,9 +1537,14 @@ a list of <menu-entry>, to populate the \"old entries\" menu."
"pci-arbiter"
"--host-priv-port='${host-port}'"
"--device-master-port='${device-port}'"
"--next-task='${disk-task}'"
"--next-task='${acpi-task}'"
"'$(pci-task=task-create)'"
"'$(task-resume)'"))
(acpi-command
(list (file-append hurd "/hurd/acpi.static")
"acpi"
"--next-task='${disk-task}'"
"'$(acpi-task=task-create)'"))
(rumpdisk-command
(list (file-append hurd "/hurd/rumpdisk.static")
"rumpdisk"
@@ -1570,6 +1575,7 @@ a list of <menu-entry>, to populate the \"old entries\" menu."
(list (file-append hurd "/hurd/exec.static") "exec"
"'$(exec-task=task-create)'")))
(list pci-arbiter-command
acpi-command
rumpdisk-command
root-file-system-command
exec-server-command)))
+3 -2
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2023, 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +37,7 @@
#:use-module (gnu packages hurd)
#:use-module (gnu packages less)
#:use-module (gnu packages linux)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages texinfo)
#:use-module (gnu services)
#:use-module (gnu services base)
@@ -72,7 +73,7 @@
diffutils patch gawk tar gzip bzip2 xz lzip zstd
guile-3.0-latest guile-colorized guile-readline
net-base nss-certs inetutils less procps shadow sudo which
info-reader))
info-reader pciutils))
(define %base-services/hurd
(append (list (service hurd-console-service-type
+2 -4
View File
@@ -26,8 +26,7 @@
#:use-module (guix monads)
#:use-module (guix search-paths)
#:use-module ((guix build glib-or-gtk-build-system)
#:select (%gdk-pixbuf-loaders-cache-file
%gdk-pixbuf-loaders-directory))
#:select (%gdk-pixbuf-loaders-cache-file))
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
#:use-module (guix packages)
@@ -36,8 +35,7 @@
glib-or-gtk-build
glib-or-gtk-cross-build
glib-or-gtk-build-system)
#:re-export (%gdk-pixbuf-loaders-cache-file
%gdk-pixbuf-loaders-directory)) ;for convenience
#:re-export (%gdk-pixbuf-loaders-cache-file)) ;for convenience
;; Commentary:
;;
+2 -6
View File
@@ -30,7 +30,6 @@
#:use-module (srfi srfi-26)
#:export (%standard-phases
%gdk-pixbuf-loaders-cache-file
%gdk-pixbuf-loaders-directory
generate-gdk-pixbuf-loaders-cache
glib-or-gtk-build))
@@ -208,8 +207,6 @@ if needed."
;; `generate-gdk-pixbuf-loaders-cache' build phase defined below.
(define %gdk-pixbuf-loaders-cache-file
"lib/gdk-pixbuf-2.0/2.10.0/loaders.cache")
(define %gdk-pixbuf-loaders-directory
"lib/gdk-pixbuf-2.0/2.10.0/loaders")
(define (generate-gdk-pixbuf-loaders-cache directories outputs)
"Generate the loaders.cache file used by gdk-pixbuf to locate the available
@@ -217,9 +214,8 @@ loaders among DIRECTORIES, and set the GDK_PIXBUF_MODULE_FILE environment
variable. The cache file is installed under OUTPUTS. Return the first cache
file name if one was created else #f."
(let* ((loaders (append-map
(lambda (dir)
(find-files (in-vicinity dir %gdk-pixbuf-loaders-directory) "^.*.so$"))
directories))
(cut find-files <> "^libpixbufloader-.*\\.so$")
(delete-duplicates directories)))
(outputs* (map (cut string-append <> "/"
%gdk-pixbuf-loaders-cache-file)
outputs))
+2 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2018, 2020-2022, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2018, 2020-2022, 2025-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2012, 2015 Free Software Foundation, Inc.
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -149,6 +149,7 @@ Raise an '&http-get-error' condition if downloading fails."
(response-code resp)))
(case code
((200)
(set-port-filename! data (uri->string uri))
(values data resp))
((301 ; moved permanently
302 ; found (redirection)
+2 -1
View File
@@ -927,7 +927,8 @@ from the alist META, which was derived from the R package's DESCRIPTION file."
(inputs (cran-package-inputs meta repository
#:download-source download-source))
(substitutable? (and substitutable? (not git?) (not hg?)
(not (source-size-too-big? source-url))))
(not (false-if-exception
(source-size-too-big? source-url)))))
(package
`(package
(name ,(cran-guix-name name))

Some files were not shown because too many files have changed in this diff Show More