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

Compare commits

..

192 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
λx.x 54a3afc52b gnu: emacs-elastic-modes: Improve style.
* gnu/packages/emacs-xyz.scm (emacs-elastic-modes): Run guix style.

Change-Id: Ia95b70433c2cbbab4ea4d09cb979ce6ac9058cca
Merges: https://codeberg.org/guix/guix/pulls/7264
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 00:32:22 +09:00
λx.x 185b816ed9 gnu: emacs-elastic-modes: Update to 1.0.0-3.13c2b94.
* gnu/packages/emacs-xyz.scm (emacs-elastic-modes):
  Update 1.0.0-3.13c2b94.

Change-Id: I011bf309ed0d12bc7eb167fcb02a0a4341e4b4ca
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 00:31:05 +09:00
Luis Guilherme Coelho 98062e0c27 gnu: Add xdg-desktop-portal-termfilechooser.
* gnu/packages/freedesktop (xdg-desktop-portal-termfilechooser):
  New variable.

Change-Id: Ic4e8842d4a4316cdf0f90685f972662d8bed0dad
Merges: https://codeberg.org/guix/guix/pulls/6353
Reviewed-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-06 00:29:20 +09:00
Sören Tempel 1d855b34f6 machine: hetzner: Use dhcpcd-service-type.
Guix 1.5.0 supports dhcpcd-service-type; therefore, (assuming hetzner
already has a Guix 1.5.0 image), it should no longer be necessary to
use dhcp-client-service-type here.  This is one of the few remaining
users of dhcp-client-service-type changing this here will allow to
remove this deprecated service in a future pull request.

* gnu/machine/hetzner.scm (hetzner-machine-bootstrap-os-form): Use
dhcpcd-service-type.

Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-05-05 23:48:45 +09:00
Maxim Cournoyer 3b05b9d7ac machine: hetzner: Fix default value for hetzner-configuration-delete?
#f is to keep the failed provisioned server intact for debugging. The
documented default is #t, so adjust the code accordingly.

* gnu/machine/hetzner.scm (<hetzner-configuration>)
[delete?]: Change default to #t to match documentation.

Change-Id: Iabee105cbf5f5e31e8a8f5cb5db99439a168f174
2026-05-05 23:48:45 +09:00
Gábor Udvari 3e1befe1d8 machine: hetzner: Fix deployment.
* gnu/machine/hetzner.scm (hetzner)
[hetzner-machine-rescue-install-os]: Fix deployment.

Reported-by: Sylvain Bellemare (https://codeberg.org/gluonix)
Fixes: #6585
Change-Id: Ie16ee541ad5b81d5014b825ad0e35deddd2e497e
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-05-05 23:48:44 +09:00
Maxim Cournoyer c8f53f4b2e services: mysql: Extend system profile with mysql package.
* gnu/services/databases.scm (mysql-service-type): Add profile-service-type
extension.

Change-Id: Ib4748c5faa2368713427c299396501d3516cf990
2026-05-05 23:48:31 +09:00
bdunahu eea9711889 gnu: quickjs-ng: Update to 0.14.0.
* gnu/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch:
  Remove file.
* gnu/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch:
  Remove file.
* gnu/local.mk: Deregister them.
* gnu/packages/javascript.scm (quickjs-ng): Update to 0.14.0.
  [source]: Remove deregistered patch files.
  [#:phases]: Add 'skip-failing-tests.
  (test262-source): Update to the latest commit pinned by quickjs-ng.

Change-Id: Ia19f54fef1851e82bae1a2f4bf79e48cc507fd6d
Merges: d9076445c0a2f5b0fb60e38269efe45ccbba6584
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-05 17:32:45 +09:00
Daniel Littlewood c1e2c71598 gnu: jfs_fsck/static: Improve style.
* gnu/packages/file-systems.scm (jfs_fsck/static)[inputs]:
  Remove input labels.  [arguments]: Switch to gexp and simplify.
  [description]: Break line.

Change-Id: I8fc9ee2a0bf8e93ef8084dad764d811176fb0717
Merges: https://codeberg.org/guix/guix/pulls/8077
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-05 17:27:07 +09:00
Daniel Littlewood f2f6164edb gnu: fbida: Improve style.
* gnu/packages/pdf.scm (fbida)[inputs]: Remove input labels.
  [arguments]: Switch to gexp.

Change-Id: I94f098dd56544338da85ae93d15b071d2e2178f9
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-05 17:27:07 +09:00
Cayetano Santos 2c161c4c52 gnu: emacs-gptel: Fix curl path.
* gnu/packages/emacs-xyz.scm (emacs-gptel)[arguments]: Fix
’use-appropriate-curl #:phase.

Change-Id: I0b996c801e5328dbfb9397ce2268445978d2834b
2026-05-05 10:16:47 +02:00
Sughosha a986f9176e gnu: Add lmms-next-with-vst.
* gnu/packages/music.scm (lmms-next-with-vst): New variable.

Change-Id: I533eb30e76e40776fd6adef0748ac68340d31caf
2026-05-05 13:38:04 +05:30
Sughosha b68966fde5 gnu: Add lmms-next.
* gnu/packages/music.scm (lmms-next): New variable.

Change-Id: I03d42d1dc53b461d5056298072a8c28b9418ee14
2026-05-05 13:38:04 +05:30
Sughosha 104d503e0c gnu: carla-2.6: Update to 2.6.0-1.294a801.
* gnu/packages/audio.scm (carla-2.6): Update to 2.6.0-1.294a801.
[inputs]: Replace python-pyqt with python-pyqt-6, qtbase-5 with qtbase, and
qtwayland-5 with qtwayland.

Change-Id: Ibcbb19a3d225a1d7d14b094f2a89e505f48575d7
2026-05-05 13:38:04 +05:30
Sughosha e4f9aaba79 gnu: carla: Fix lint warnings.
* gnu/packages/audio.scm (carla)[inputs]: Add bash-minimal.

Change-Id: If7e2c9441d6501b300a96352dfb9e01171699c02
2026-05-05 13:38:03 +05:30
Sughosha 0861076552 gnu: Add ringbuffer.
* gnu/packages/cpp.scm (ringbuffer): New variable.

Change-Id: Ic253a4870a1caa526f7107a9cc215699dd7a0e0c
2026-05-05 13:38:03 +05:30
Sughosha ba3368fcc7 gnu: Add hiir.
* gnu/packages/audio.scm (hiir): New variable.

Change-Id: I0187592634abd4d5079399a69b29812c8a8086cb
2026-05-05 13:38:03 +05:30
Sughosha 39acd8021b gnu: Add adplug.
* gnu/packages/audio.scm (adplug): New variable.

Change-Id: I7bc0d6600a7620f90f8b24cb5f2b931a4d65c637
2026-05-05 13:38:03 +05:30
Sughosha 48dda27f41 gnu: Add libbinio.
* gnu/packages/cpp.scm (libbinio): New variable.

Change-Id: Iacb0532f7f9fcce7e554297f1718c735332a17c9
2026-05-05 13:38:03 +05:30
Andy Tai f3145603c8 gnu: parted: Update to 3.7.
* gnu/packages/disk.scm (parted): Update to 3.7.
  [native-inputs]: Add pkg-config.

Change-Id: I6df17b84d9b00684a382862c837363cb536036a4
Merges: https://codeberg.org/guix/guix/pulls/7812
Reviewed-by: moksh <mysticmoksh@riseup.net>
Reviewed-by: Yelninei <yelninei@tutamail.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-05 16:59:34 +09:00
Cayetano Santos 4393dbcfd5 gnu: emacs-gptel: Update to 0.9.9.5.
* gnu/packages/emacs-xyz.scm (emacs-gptel): Update to 0.9.9.5.
[arguments]: Simplify ’unpack-tests #:phase.
[native-inputs]: Update emacs-gptel-test-files.

Change-Id: I5b7ca55859dbd93ef02aa1a6ee608fd739b9ddb4
2026-05-05 09:17:00 +02:00
Yappaholic a11eeeaf63 gnu: lua-luv: Update to 1.44.2-0
* gnu/packages/lua.scm (make-lua-luv): Update to 1.44.2-0.

Merges: https://codeberg.org/guix/guix/pulls/8251
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-05 15:59:13 +09:00
Junker 49613fb544 gnu: Add wp-notifyd.
* gnu/packages/audio.scm (wp-notifyd): New variable.

Change-Id: I2bb54497c84659b200cce6d1760979b2ddf85191
Signed-off-by: Sughosha <sughosha@disroot.org>
2026-05-04 21:52:03 +05:30
jgart 3612d6f692 gnu: trealla: Update to 2.94.20.
* gnu/packages/prolog.scm (trealla): Update to 2.94.20.

Change-Id: I02892bfe840be002e9566a9099970aa9563de24a
2026-05-04 10:34:34 -04:00
Christian Birk Sørensen 4939bcf4bb gnu: multitail: Update to 7.1.5
* gnu/packages/logging.scm (multitail): Update to 7.1.5.
  [source]<uri>: Switch back to the original repository.
  [build-system]: Change to cmake-build-system.
  [arguments]<#:phases>: Remove fix-broken-build.

Change-Id: I3164f57341940fc5a49a2713f73557090724be7c
Merges: https://codeberg.org/guix/guix/pulls/4248
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-04 22:14:10 +09:00
Ashish SHUKLA 2dfd0bd450 gnu: sqlite-next: Update to 3.53.0
* gnu/packages/sqlite.scm (sqlite-next): Update to 3.53.0.

Change-Id: Ic623915c7e41236b84b39edf5acf576c6269f4c7
Merges: https://codeberg.org/guix/guix/pulls/7848
Reviewed-by: Nicolas Graves <ngraves@ngraves.fr>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-04 22:03:10 +09:00
Liliana Marie Prikler dde0466984 gnu: komikku-servers: Update to 50.3.0.
* gnu/packages/gnome-circle.scm (komikku-servers): Update to 50.3.0.

Signed-off-by: Noé Lopez <noelopez@free.fr>
2026-05-04 12:17:40 +02:00
Liliana Marie Prikler f8a599ff88 gnu: komikku: Update to 50.3.0.
* gnu/packages/gnome-circle.scm (komikku): Update to 50.3.0.

Signed-off-by: Noé Lopez <noelopez@free.fr>
2026-05-04 12:17:39 +02:00
Andreas Enge 0ebdc92afc gnu: Remove pcl.
* gnu/packages/c.scm (pcl): Delete variable.

Fixes: guix/guix#7663
Change-Id: Ie64583263e88044283c6ca3cf11700cfd4c5af38
2026-05-04 10:38:27 +02:00
Andreas Enge 23356f4011 gnu: Remove discrover.
* gnu/packages/bioinformatics.scm (discrover): Delete variable.

Fixes: guix/guix#7640
Change-Id: Ic8588831d80485d42e4927a47b2174180a906043
2026-05-04 10:37:05 +02:00
Sughosha ed63b0a031 gnu: ring-racers: Unbundle more third party libraries.
* gnu/packages/games.scm (ring-racers)[source]: Rewrite snippet to also
unbundle discord-rpc, fmt, nlohmann-json, libyuv, stb, tcbrindle_span, vma,
volk, vulkan-headers, and xmp-lite.
[arguments]<#:configure-flags>: Add “-DSRB2_CONFIG_ENABLE_DISCORDRPC=OFF”.
<#:phases>: Add ‘copy-stb_vorbis.c’.
[native-inputs]: Add (package-source stb).
[inputs]: Add fmt, libxmp, nlohmann-json, stb-rect-pack, tcbrindle-span,
vulkan-headers, vulkan-memory-allocator, and vulkan-volk.

Change-Id: I842b5bdd60941ac7c0b003a2456b4fb0addace68
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-04 08:55:25 +02:00
Sughosha 7714e0bfb5 gnu: Add tcbrindle-span.
* gnu/packages/cpp.scm (tcbrindle-span): New variable.

Change-Id: I3d439358a4460765f945390ce509e897713cf69b
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-04 08:55:25 +02:00
Sughosha acc8f821c8 gnu: ring-racers: Fix lint warnings and reorder inputs.
* gnu/packages/games.scm (ring-racers)[inputs]: Reorder.  Add bash-minimal.
[home-page]: Fix permanent redirect.
[description]: Update as per texinfo conventions.

Change-Id: I28808bd4f2139a5f94aa7d2582afdaebe764bb2c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-04 08:55:25 +02:00
Sughosha e1c5af77b2 gnu: ring-racers: Fix wrapping the binary file.
* gnu/packages/games.scm (ring-racers)[#:phases]<wrap-rpogram>: Use the
“bin/ringracers” located in #$output.

Change-Id: If2c8aca4eef1c4ed622c33abcbdbbd435b1bd0fe
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-04 08:55:25 +02:00
Anderson Torres 2756e884dd gnu: emacs-dired-launch: Update to 0.2-0.97eb002.
* gnu/packages/emacs-xyz.scm(emacs-dired-launch): Update to 0.2-0.97eb002.
[source]: Use git repository.
[#:tests?]: Set as #f.
(emacs-dired-launch-superseded-version): New dummy variable.

Change-Id: Iffe69604cf549b7a7e800d012529c4947d1f85ff
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-04 08:55:25 +02:00
Patrick Norton c1fd1e40f6 gnu: gitlogue: Update to 0.9.0.
* gnu/packages/rust-apps (gitlogue): Update to 0.9.0.
* gnu/packages/rust-crates (lookup-cargo-inputs)[gitlogue]: Update
dependencies.

Change-Id: I12a47c93df6f8ed9d37db891fa2289231092d1da
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-04 08:20:47 +03:00
Yappaholic c1897da250 gnu: wasm-bindgen-cli: Update to 0.2.120.
* gnu/packages/rust-apps.scm (wasm-bindgen-cli): Update to 0.2.120.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[wasm-bindgen-cli]:
Update entry.

Change-Id: I3367a2dce9d472d10b1cc57688e33d726e4d9440
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-04 08:14:04 +03:00
Efraim Flashner 6c666986e8 gnu: rust-crates: Adjust indentation.
* gnu/packages/rust-crates.scm: Standardize the indentation.

Change-Id: Idd3206b67763609549811ff4e71eea183c0b0f74
2026-05-04 08:09:08 +03:00
Zhu Zihao 43833afaa1 doc: Document the GUIX_DISTRO_AGE_WARNING environment variable.
* doc/guix.texi: (Invoking guix pull): Add document for the outdate warning.
(GUIX_DISTRO_AGE_WARNING): New environment variable.

Change-Id: Icb4537d59640fd92c0f552a57ba1f5a35d8ebb3d
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-05-04 11:36:58 +09:00
Patrick Norton 0ce84291ef gnu: openttd-jgrpp: Update to 0.72.0.
* gnu/packages/games.scm (openttd-jgrpp): Update to 0.72.0.

Change-Id: I07b2679f8380c7dccfa3dc4ddab3e56b8d7fc810
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-03 22:51:58 +02:00
Danylo Kondratiev e270413295 gnu: gradia: Update to 1.13.0.
* gnu/packages/image.scm (gradia): Update to 1.13.0.
Run guix style.
[arguments]<#:imported-modules>: Use meson and pyproject modules.
[arguments]<#:modules>: Import meson, pyproject build systems and
modules guix build utils module.
[arguments]<#:phases>: Add python-and-gi-wrap phase and
set-tesseract-and-tessdata-path phase.
[native-inputs]: Add desktop-file-utils, gobject-introspection.
[inputs]: Add bash-minimal, gtksourceview, libportal, libsoup,
python-pillow, python-pycairo, python-pytesseract, tesseract-ocr,
webp-pixbuf-loader.

Change-Id: Ida677975e326d3a2b3f8189c9144d5106326d0d0
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8145
2026-05-03 22:45:54 +02:00
Danylo Kondratiev 58c844a1ec gnu: Add python-pytesseract.
* gnu/packages/ocr.scm (python-pytesseract): New variable.

Change-Id: Ie07b76be499b96038d0aac104adb0e237bb8c7f8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-05-03 22:45:54 +02:00
Ludovic Courtès 47919d9f99 doc: Fix typo.
This is a followup to 0e18caf221.

* doc/guix.texi (Bootloader Configuration): Change “logo” to singular.

Reported-by: Maxim Cournoyer <maxim@guixotic.coop>
Change-Id: I98c46746e33c0e7a14ebb90919fc28567780aa63
2026-05-03 22:45:54 +02:00
Yelninei c0d0ba76e5 services: syslog: Add pid file option.
Alternative syslogd implementations use a different pid file.

* gnu/services/base.scm: Export all syslog-configuration accessors.
(syslog-configuration): Add pid-file field.
(syslog-shepherd-service-type): Use it.
* doc/guix.texi (syslog-configuration): Document it.

Change-Id: I9be9fc741d98d4f49a37fbcbb2c644db859cadc1
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6096
2026-05-03 22:45:53 +02:00
Charles Roelli 9d0bb1ef26 build: Fix out-of-tree make.
* doc/local.mk (lang_to_texinfo): Refer to .texi files using srcdir.
(xref_command): Reference pre-inst-env using builddir.
($(srcdir)/%D%/guix.%.texi):
($(srcdir)/%D%/guix-cookbook.%.texi):
($(srcdir)/%D%/contributing.%.texi): Refer to source files using srcdir.
* nix/local.mk (etc/guix-gc.timer): Use the name of the prerequisite,
not just its file name.

Change-Id: I247bcd873c8355d0eae07870ec849d2eb8cfa6c5
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8267
2026-05-03 22:45:53 +02:00
Ludovic Courtès 2b94e23e7c gnu: ucx, libfabric, openmpi: Remove ROCm support from the default variants.
* gnu/packages/fabric-management.scm (ucx)[inputs]: Remove ‘rocr-runtime’.
[arguments]: Make ‘--with-rocm’ flag conditional.
(ucx-rocm): New variable.
* gnu/packages/linux.scm (libfabric)[inputs]: Remove ‘rocr-runtime’.
(libfabric-rocm): New variable.
* gnu/packages/mpi.scm (openmpi-rocm): Modify the inherited arguments rather
than those of ‘openmpi-5’.  Replace ‘ucx’ and ‘libfabric’ with their ‘-rocm’
variant.

Fixes: guix/guix#7225
Change-Id: I355f38083313680058511f87a7a5d9068134f162
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8188
2026-05-03 22:45:48 +02:00
Patrick Norton a3373301a8 gnu: waybar: Update to 0.15.0.
* gnu/packages/wm.scm (waybar): Update to 0.15.0.

Change-Id: Iaac44d28ceca7f164f4b1c309fafd2e06c0f67c1
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-03 22:35:39 +02:00
Patrick Norton 05424e9633 gnu: sgt-puzzles: Update to 20260308.
* gnu/packages/games.scm (sgt-puzzles): Update to 20260308.

Change-Id: Ib106d60cf05a3884c699b4801d02d40c52db6236
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-03 22:22:03 +02:00
Johannes Christ 4f73e5570d gnu: openttd: Update to 15.3.
* gnu/packages/games.scm (openttd-engine): Update to 15.3.

Change-Id: Ib32b20bcbad797e6a880e17a4aec32090b4eb13b
Signed-off-by: Noé Lopez <noelopez@free.fr>
2026-05-03 19:49:37 +02:00
Vivien Kraus 589f02e0c5 gnu: speech-dispatcher: Wrap spd-conf.
* gnu/packages/speech.scm (gnu): Import (gnu packages freedesktop).
(speech-dispatcher)[arguments]: Add #:imported-modules and #:modules.
[#:phases]: Add 'wrap-spd-conf.
[inputs]: Remove python-xdg-base-dirs.  Add python-pyxdg.  Upstream always
mentioned PyXDG since version 0.8, and never xdg-base-dirs.

Change-Id: I3eb8e27e9ed5fa9e98d1d6fe3555658a42b50917
Signed-off-by: Noé Lopez <noelopez@free.fr>
2026-05-03 19:46:06 +02:00
117 changed files with 22694 additions and 4617 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)
+280 -60
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,
@@ -4922,6 +4999,17 @@ information.
In addition, @command{guix pull} supports all the common build options
(@pxref{Common Build Options}).
Every time the user invokes a Guix command, Guix detects if the current
installation has exceeded a certain duration (7 days by default) and
alerts the user to update with @command{guix pull} if necessary.
The duration can be configured with the following environment variable:
@defvr {Environment Variable} GUIX_DISTRO_AGE_WARNING
This environment variable, if set, should be a string representing a
duration. If the current Guix installation exceeds the duration, Guix
will raise a warning for outdated installation.
@end defvr
@node Invoking guix time-machine
@section Invoking @command{guix time-machine}
@@ -5018,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,
@@ -5752,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))
@@ -5766,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
@@ -14675,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
@@ -15983,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:
@@ -16090,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
@@ -16136,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
@@ -20705,6 +20902,9 @@ The syslog configuration file to use.
@xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more
information on the configuration file syntax.
@item @code{pid-file} (default: @code{"/var/run/syslog.pid"})
The pid file for @command{syslogd}.
@item @code{extra-options} (default: @code{'()})
List of extra command-line options for @command{syslog}.
@@ -46212,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
@@ -49210,7 +49430,7 @@ Return the default GRUB theme used by the operating system if no
record.
It comes with a fancy background image displaying the Guix
logos.
logo.
@end deffn
For example, to override the default resolution, you may use something
@@ -51270,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
+11 -11
View File
@@ -30,7 +30,7 @@ COOKBOOK_LANGUAGES = de es fr it ko pt_BR ru sk sv ta zh_CN
# Arg1: A list of languages codes.
# Arg2: The file name stem.
lang_to_texinfo = $(foreach lang,$(1),%D%/$(2).$(lang).texi)
lang_to_texinfo = $(foreach lang,$(1),$(srcdir)/%D%/$(2).$(lang).texi)
# Automake does not understand GNU Make non-standard extensions,
# unfortunately, so we cannot use the above patsubst-based function here.
@@ -104,7 +104,7 @@ MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI) $(TRANSLATED_INFO)
# reference is not translated, which means it references a section that does not
# exist.
define xref_command
$(top_srcdir)/pre-inst-env $(GUILE) --no-auto-compile \
$(top_builddir)/pre-inst-env $(GUILE) --no-auto-compile \
"$(top_srcdir)/build-aux/convert-xref.scm" \
$@.tmp $<
endef
@@ -116,21 +116,21 @@ dummy_pot = $(shell mktemp --suffix=.pot)
$(srcdir)/%D%/guix.%.texi: po/doc/guix-manual.%.po $(srcdir)/%D%/contributing.%.texi guix/build/po.go
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="%D%/guix.texi" \
--variable master="$(srcdir)/%D%/guix.texi" \
--variable po="$<" \
--variable pot=$(dummy_pot) \
po/doc/po4a.cfg
$(srcdir)/po/doc/po4a.cfg
-sed -i "s|guix\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
$(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="%D%/guix-cookbook.texi" \
--variable po="$<" \
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="$(srcdir)/%D%/guix-cookbook.texi" \
--variable po="$<" \
--variable pot=$(dummy_pot) \
po/doc/po4a.cfg
$(srcdir)/po/doc/po4a.cfg
-sed -i "s|guix-cookbook\.info|$$(basename "$@" | sed 's|texi$$|info|')|" "$@.tmp"
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
@@ -138,10 +138,10 @@ $(srcdir)/%D%/guix-cookbook.%.texi: po/doc/guix-cookbook.%.po guix/build/po.go
$(srcdir)/%D%/contributing.%.texi: po/doc/guix-manual.%.po guix/build/po.go
-$(AM_V_PO4A)$(PO4A) --no-update \
--variable localized="$@.tmp" \
--variable master="%D%/contributing.texi" \
--variable master="$(srcdir)/%D%/contributing.texi" \
--variable po="$<" \
--variable pot=$(dummy_pot) \
po/doc/po4a.cfg
$(srcdir)/po/doc/po4a.cfg
-$(AM_V_POXREF)LC_ALL=en_US.UTF-8 $(xref_command)
-mv "$@.tmp" "$@"
+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)
+11 -5
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 \
@@ -1667,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 \
@@ -1985,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 \
@@ -2014,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 \
@@ -2096,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 \
@@ -2287,8 +2294,6 @@ dist_patch_DATA = \
%D%/packages/patches/qtbase-5-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
%D%/packages/patches/quagga-reproducible-build.patch \
%D%/packages/patches/quickjs-ng-64-bits-precision-on-i686.patch \
%D%/packages/patches/quickjs-ng-fix-atomics.pause-on-32-bit.patch \
%D%/packages/patches/quilt-grep-compat.patch \
%D%/packages/patches/qmk-firmware-fix-hacker-dvorak.patch \
%D%/packages/patches/qtwayland-update-wayland-xml.patch \
@@ -2622,6 +2627,7 @@ dist_patch_DATA = \
%D%/packages/patches/webrtc-audio-processing-big-endian.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 \
+10 -4
View File
@@ -202,7 +202,7 @@ Have you run 'guix archive --generate-key'?")
(build-locally? hetzner-configuration-build-locally? ; boolean
(default #t))
(delete? hetzner-configuration-delete? ; boolean
(default #f))
(default #t))
(labels hetzner-configuration-labels ; list of strings
(default '()))
(location hetzner-configuration-location ; #f | string
@@ -395,9 +395,7 @@ Available locations:~%~%~a~%~%For more details, see: ~a")
(type ,root-fs-type))
%base-file-systems))))
(services
;; guix 1.4.0 does not have dhcpcd-service-type,
;; so we use dhcp-client-service-type here.
(cons* (service dhcp-client-service-type)
(cons* (service dhcpcd-service-type)
(service openssh-service-type
(openssh-configuration
(openssh openssh-sans-x)
@@ -592,6 +590,14 @@ mkdir -p /gnu/store
mount --bind /mnt/tmp/gnu/store /gnu/store
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
# Modify the install script to point the systemd unit of the /gnu/store
# mountpoint to the same /mnt/tmp/gnu/store which was introduced above.
store_fix=\"sed -i 's#Where=/gnu/store#Where=/mnt/tmp/gnu/store#'
~~root/.config/guix/current/lib/systemd/system/gnu-store.mount\"
sed -i \"s@install_unit gnu-store.mount\"\\
\"@$(printf \"%q \" $store_fix)\\ninstall_unit gnu-store.mount@\" /tmp/guix-install.sh
chmod +x /tmp/guix-install.sh
set +o pipefail # avoid hangup on 'yes' killing this script
yes '' | /tmp/guix-install.sh
+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
+113 -4
View File
@@ -51,7 +51,7 @@
;;; Copyright © 2024 Nikita Domnitskii <nikita@domnitskii.me>
;;; Copyright © 2024 Roman Scherer <roman@burningswell.com>
;;; Copyright © 2024 Sughosha <sughosha@disroot.org>
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;; Copyright © 2025, 2026 Junker <dk@junkeria.club>
;;; Copyright © 2025 Sughosha <sughosha@disroot.org>
;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com>
;;; Copyright © 2025 Kjartan Oli Agustsson <kjartanoli@outlook.com>
@@ -127,6 +127,7 @@
#:use-module (gnu packages linphone)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages logging)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
@@ -194,6 +195,45 @@
#:use-module (srfi srfi-26)
#:use-module (ice-9 match))
(define-public adplug
(package
(name "adplug")
(version "2.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/adplug/adplug")
(commit (string-append "adplug-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0l31ya42g3q7ry2m0y5djgjb9ax8ciy8jn86252vdjkjswwqgscd"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON")
#:modules
'((guix build cmake-build-system)
(guix build utils)
(srfi srfi-26)) ;for cute
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-headers
(lambda _
(for-each (cute install-file <>
(string-append #$output "/include/adplug"))
(find-files "../source/src" "\\.h$")))))))
(propagated-inputs
(list libbinio))
(home-page "https://adplug.github.io/")
(synopsis "AdLib sound player library")
(description
"AdPlug is a hardware independent AdLib sound player library, mainly
written in C++. AdPlug plays sound data, originally created for the AdLib
(OPL2/3) audio board, on top of an OPL2/3 emulator or by using the real
hardware. No OPL2/3 chips are required for playback.")
(license license:lgpl2.1+)))
(define-public opensles
(package
(name "opensles")
@@ -4465,6 +4505,33 @@ This includes device enumeration and initialization, file loading, and
streaming.")
(license license:expat)))
(define-public wp-notifyd
(package
(name "wp-notifyd")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LDAP/wp-notifyd")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1nkndz0li15maf0dc9x631p0dr8085wzz5358552wljv7chywrza"))))
(build-system meson-build-system)
(arguments
(list #:tests? #f)) ;there are no tests
(inputs (list libnotify
wireplumber-minimal
pipewire
spdlog))
(native-inputs (list pkg-config))
(home-page "https://github.com/LDAP/wp-notifyd")
(synopsis "Notification daemon for Wireplumber")
(description "@command{wp-notifyd} is a lightweight notification daemon for
@dfn{WirePlumber} (the session and policy manager for PipeWire).")
(license license:expat)))
(define-public pa-notify
(package
(name "pa-notify")
@@ -4869,6 +4936,42 @@ using Guix System.")
;; GNU Library (not Lesser) General Public License.
(license license:lgpl2.0+)))
(define-public hiir
(let ((commit "4a9a1e67fa6f8ce7688e1c0c8a2b017cecd206a3")
(revision "0"))
(package
(name "hiir")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LostRobotMusic/hiir")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1wzlg0di768mzcik6fij4pd6dnpmbw8q236h478c057d10qfp44g"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~`(("." "/include/hiir"))))
(home-page "https://github.com/LostRobotMusic/hiir")
(synopsis "Header-only version of Laurent de Soras's HIIR 1.40 library")
(description
"This package provides a header-only version of the
@uref{http://ldesoras.free.fr/prod.html#src_hiir, HIIR library by Laurent De
Soras}, updated to version 1.40. HIIR is a C++ library for changing the
sampling rate of a signal by a factor two, in both directions (upsampling and
downsampling), obtaining two signals with a π/2 phase difference (Hilbert
transform). It is made of a two-path polyphase IIR filter, implemented with
FPU, 3DNow!, SSE, SSE2, AVX, AVX-512 and NEON instruction sets.
This package contains the same as the original library, except with the
contents of one source file moved into a header file (and set as inline) to
make the library header-only, and with the test folder removed.")
(license license:wtfpl2))))
(define-public redumper
(package
(name "redumper")
@@ -7265,6 +7368,7 @@ as is the case with audio plugins.")
(find-files "bin")))))))))
(inputs
(list alsa-lib
bash-minimal
ffmpeg
fluidsynth
file
@@ -7322,8 +7426,8 @@ default and preferred audio driver but also supports native drivers like ALSA.")
;;; This package variant tracks the latest in-development 2.6 release.
(define-public carla-2.6
(let ((commit "aa400535b31c67f4b6c1b28e6e20e4d4f82111a3")
(revision "0"))
(let ((commit "294a80145e39c0755ab9073d90fd8b9524fbfc84")
(revision "1"))
(package
(inherit carla)
(name "carla")
@@ -7337,7 +7441,12 @@ default and preferred audio driver but also supports native drivers like ALSA.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0cnj2sgr60f5h6wdfmihc214wf3n74686sipl3iyzmylqrcyhbjn")))))))
(base32 "053yfwf9l9vqvq95c354by6nm8ym0wgkv3fr1434x5w9n1344z0z"))))
(inputs
(modify-inputs (package-inputs carla)
(replace "python-pyqt" python-pyqt-6)
(replace "qtbase" qtbase)
(replace "qtwayland" qtwayland))))))
;; This source is a fork of vst3sdk with the documentation and VSTGUI
;; submodules removed and a dummy `meson.build` file that just lists all
@@ -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
-72
View File
@@ -7651,78 +7651,6 @@ reads at a typical sensitivity of 90-99% relative to BLAST depending on the
data and settings.")
(license license:gpl3+)))
(define-public discrover
(package
(name "discrover")
(version "1.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/maaskola/discrover")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"173fwi2vb6a5kp406hm3jj6j7v4whww796f2qcygp4rpvamh307y"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-force-source-date
;; for reproducible dates, texlive needs this to respect
;; SOURCE_DATE_EPOCH
(lambda _
(setenv "FORCE_SOURCE_DATE" "1")))
(add-before 'build 'use-writable-texmfvar
;; Use writable TEXMFVAR to generate fonts.
(lambda _
(setenv "TEXMFVAR" "/tmp")))
(add-after 'unpack 'fix-latex-errors
(lambda _
(with-fluids ((%default-port-encoding #f))
(substitute* "doc/references.bib"
(("\\{S\\}illanp[^,]+,")
"{S}illanp{\\\"a}{\\\"a},")))
;; XXX: I just can't get pdflatex to not complain about these
;; characters. They end up in the manual via the generated
;; discrover-cli-help.txt.
(substitute* "src/hmm/cli.cpp"
(("µ") "mu")
(("η") "eta")
(("≤") "<="))
;; This seems to be a syntax error.
(substitute* "doc/discrover-manual.tex"
(("theverbbox\\[t\\]") "theverbbox"))))
(add-after 'unpack 'add-missing-includes
(lambda _
(substitute* "src/executioninformation.hpp"
(("#define EXECUTIONINFORMATION_HPP" line)
(string-append line "\n#include <random>")))
(substitute* "src/plasma/fasta.hpp"
(("#define FASTA_HPP" line)
(string-append line "\n#include <random>"))))))))
(inputs
(list boost cairo rmath-standalone))
(native-inputs
(list (texlive-local-tree
(list texlive-doi
texlive-etoolbox
texlive-examplep
texlive-forloop
texlive-listofitems
texlive-natbib
texlive-pgf ;tikz
texlive-readarray
texlive-verbatimbox))
imagemagick))
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
(synopsis "Discover discriminative nucleotide sequence motifs")
(description "Discrover is a motif discovery method to find binding sites
of nucleic acid binding proteins.")
(license license:gpl3+)))
(define-public eddylab-squid
(package
(name "eddylab-squid")
-19
View File
@@ -1327,25 +1327,6 @@ for the @acronym{AWS,Amazon Web Services} SDK.")
(home-page "https://github.com/awslabs/aws-c-sdkutils")
(license license:asl2.0)))
(define-public pcl
(package
(name "pcl")
(version "1.12")
(source
(origin
(method url-fetch)
(uri (string-append
"http://www.xmailserver.org/pcl-" version ".tar.gz"))
(sha256
(base32
"06ly65rq4iyj2p4704i215c8y4rgspwl8sxfaifmf4ahfr30bcz7"))))
(build-system gnu-build-system)
(home-page "http://www.xmailserver.org/libpcl.html")
(synopsis "Portable Coroutine Library")
(description "The @acronym{PCL, Portable Coroutine Library} implements the
low level functionality for coroutines.")
(license license:gpl2+)))
(define-public aws-c-http
(package
(name "aws-c-http")
+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)
+107
View File
@@ -134,6 +134,7 @@
#:use-module (gnu packages sdl)
#:use-module (gnu packages tls)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages web)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xdisorg)
@@ -1672,6 +1673,38 @@ maintained anymore.")
concurrent queue for C++11.")
(license license:bsd-2)))
(define-public ringbuffer
(package
(name "ringbuffer")
(version "0.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/JohannesLorenz/ringbuffer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1c57hj6zyvcjpcbwrq8c1hj5brk1bnh69ayd88ny1p0gx031sjpk"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~(list "-DCMAKE_CXX_FLAGS=-Wno-error=array-bounds"
(string-append "-DINSTALL_LIB_DIR=" #$output "/lib"))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-export-header
(lambda _
(install-file "src/lib/ringbuffer_export.h"
(string-append #$output
"/include/ringbuffer")))))))
(home-page "https://github.com/JohannesLorenz/ringbuffer")
(synopsis "Lock-free multi-reader ringbuffer")
(description
"@code{ringbuffer} is a library containing a ringbuffer. It is lock-free
(using atomics only), and allows multiple readers, but only one writer.")
(license license:gpl3+)))
(define-public spscqueue
(package
(name "spscqueue")
@@ -3668,6 +3701,39 @@ computing Fast Fourier transformations. It supports multidimensional arrays,
different floating point sizes and complex transformations.")
(license license:bsd-3))))
(define-public libbinio
;; The latest tagged version does not support CMake build. This commit has
;; builds with CMake and has updated CMake version support.
(let ((commit "e88dad086265e179ab6aef7f479e19f3917c7a98")
(revision "0"))
(package
(name "libbinio")
(version (git-version "1.5" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/adplug/libbinio")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0rb33jl6gpxb88zymzl996m43b7r6wyw4lq0ib3626kna3baqnha"))))
(native-inputs
(list autoconf automake libtool texinfo))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no tests
#:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON")))
(home-page "http://adplug.github.io/libbinio/")
(synopsis "Binary I/O stream class library")
(description
"This binary I/O stream class library presents a platform-independent
way to access binary data streams in C++. The library is hardware independent
in the form that it transparently converts between the different forms of
machine-internal binary data representation.")
(license license:lgpl2.1+))))
(define-public priocpp
;; Latest release is from 2022-08-14.
(let ((commit "ea15402adcd0d9191dc29ca6f7e4dd0bff67b9b5")
@@ -4494,6 +4560,47 @@ meta data function.")
;; or the CECILL-C license:
(license (list license:lgpl3 license:cecill-c))))
(define-public tcbrindle-span
(let ((commit "836dc6a0efd9849cb194e88e4aa2387436bb079b")
(revision "0"))
(package
(name "tcbrindle-span")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tcbrindle/span")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1v3x1mj4if8jrr7cmrcbhv8n8ygla0liqb0dic6g6ji7px2pr6jf"))
(modules '((guix build utils)))
;; Unbundle catch.
(snippet
'(with-directory-excursion "test"
(delete-file "catch.hpp")
(substitute* (find-files "." "\\.cpp$")
(("\"catch\\.hpp\"") "<catch.hpp>"))))))
(build-system cmake-build-system)
(native-inputs (list catch-framework))
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'install
(lambda _
(mkdir-p (string-append #$output))
(copy-recursively "../source/include"
(string-append #$output "/include")))))))
(home-page "https://github.com/tcbrindle/span")
(synopsis "Implementation of C++20's @code{std::span} for older compilers")
(description
"This package provides a single-header implementation of C++20's
@code{std::span}, conforming to the C++20 committee draft. It is compatible
with C++11, but will use newer language features if they are available.")
(license license:boost1.0))))
(define-public tsl-hopscotch-map
(package
(name "tsl-hopscotch-map")
+1 -1
View File
@@ -9232,7 +9232,7 @@ similar rank-based tests for equal probability distributions due to Neuhauser
(("^PKG_LIBS=.*")
(string-append "PKG_LIBS="
(assoc-ref inputs "libnode")
"/lib/libnode.so.137\n")))
"/lib/libnode.so.127\n")))
(setenv "INCLUDE_DIR"
(string-append
(assoc-ref inputs "libnode")
+3 -2
View File
@@ -266,14 +266,14 @@ tmpfs/ramfs filesystems.")
(define-public parted
(package
(name "parted")
(version "3.6")
(version "3.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/parted/parted-"
version ".tar.xz"))
(sha256
(base32
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
"0yzga4cjq3yplqs47dl9714vwc3v3v8nxrj80rdc5wx4c5syb380"))))
(build-system gnu-build-system)
(arguments
(list
@@ -296,6 +296,7 @@ tmpfs/ramfs filesystems.")
(,util-linux "lib")))
(native-inputs
(list gettext-minimal
pkg-config
;; For the tests.
e2fsprogs
+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")
+285 -87
View File
@@ -1005,7 +1005,7 @@ e.g. emacs-geiser-guile for Guile.")
(define-public emacs-gptel
(package
(name "emacs-gptel")
(version "0.9.9.4")
(version "0.9.9.5")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1014,7 +1014,7 @@ e.g. emacs-geiser-guile for Guile.")
(file-name (git-file-name name version))
(sha256
(base32
"1ffh2mwy9znjd0v9mh065lv122xg4nlnkbxwjfrsaqn1j1q2xc0c"))))
"1bf7xynmrm859471nxc56sv028i039qnqhhmkhzkhf76mwac6cx8"))))
(build-system emacs-build-system)
(arguments
(list
@@ -1025,8 +1025,7 @@ e.g. emacs-geiser-guile for Guile.")
(lambda _
(copy-recursively
#$(this-package-native-input "emacs-gptel-test-files")
"test")
(invoke "chmod" "--recursive" "u+w" "test")))
"test")))
;; gptel-pkg.el produces an error during the check phase.
(add-before 'check 'rename-pkg
(lambda _ (rename-file "gptel-pkg.el" "gptel-pkg.el_")))
@@ -1035,16 +1034,9 @@ e.g. emacs-geiser-guile for Guile.")
(add-after 'unpack 'use-appropriate-curl
(lambda* (#:key inputs #:allow-other-keys)
;; These two alternatives error on the substitution.
;; (emacs-substitute-variables "gptel-openai.el"
;; ("gptel-use-curl"
;; (search-input-file inputs "/bin/curl")))
;; (emacs-substitute-sexps "gptel-openai.el"
;; ("(defvar gptel-use-curl"
;; (search-input-file inputs "/bin/curl")))
(substitute* "gptel-openai.el"
(("defvar gptel-use-curl")
(format #f "defvar gptel-use-curl \"~a\""
(search-input-file inputs "/bin/curl")))))))))
(emacs-substitute-variables "gptel-request.el"
("gptel-use-curl"
(search-input-file inputs "/bin/curl"))))))))
(inputs (list curl))
(propagated-inputs (list emacs-compat emacs-transient))
(native-inputs
@@ -1053,11 +1045,11 @@ e.g. emacs-geiser-guile for Guile.")
(method git-fetch)
(uri (git-reference
(url "https://github.com/karthink/gptel-test")
(commit "318c9dda9e6dbb3e61311cf4de23f124c4d2960a")))
(commit "c62e2f78d843f3454e068eb7ec6bb8d6001b0649")))
(file-name "emacs-gptel-test-files")
(sha256
(base32
"1368qrxxrw5zd2i0gx55r7yvi5xjma1khs8p5f2w76m7c6ms83yg")))))
"1xixi1fa2iwixi6f0wdva2pyisxb8myljwbx2v5nxd3v0i3fbgq9")))))
(home-page "https://github.com/karthink/gptel")
(synopsis "GPTel is a simple ChatGPT client for Emacs")
(description
@@ -2086,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))
@@ -2099,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))
@@ -2872,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")
@@ -6183,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")
@@ -11904,22 +11948,22 @@ not hang at all.")
(license license:gpl3+)))
(define-public emacs-elastic-modes
(let ((commit "c577e8921a4d9bd77742729707152bc557fae3e2")
(revision "2"))
(let ((commit "13c2b94a994717bb1517af0c19b10de33b29a94b")
(revision "3"))
(package
(name "emacs-elastic-modes")
(version (git-version "1.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/elastic-modes")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0r40g7zgz9072x74qbnv8lmql0gajsz2p8b8jckmgyniakmln69v"))))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/elastic-modes")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1fb7hy65ax288zqc2y1qjmkja1ksdslvsjbz3jzw7cjcb4yvfkpc"))))
(build-system emacs-build-system)
(arguments (list #:tests? #false)) ;no tests
(arguments (list #:tests? #f)) ;no tests
(propagated-inputs (list emacs-dash))
(home-page "https://github.com/jyp/elastic-modes")
(synopsis "Text and code alignment for variable-width fonts")
@@ -22682,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)
@@ -22691,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
@@ -22709,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
@@ -25371,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
@@ -25380,7 +25425,7 @@ with Eglot.")
(file-name (git-file-name name version))
(sha256
(base32
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
(build-system emacs-build-system)
(arguments
(list
@@ -25402,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
@@ -25447,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
@@ -32170,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")
@@ -35200,21 +35261,36 @@ customisation options to control its behaviour.")
(license license:gpl3+)))
(define-public emacs-dired-launch
(let ((commit "97eb002a2090518df86182e9f1db703850534fb7")
(revision "0"))
(package
(name "emacs-dired-launch")
(version (git-version "0.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/thomp/dired-launch")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1rnjp0fb0rakaky7pa6vdpz8cpf2dg5k9zsvxl8h6lcc9b7qa61c"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; No tests
(home-page "https://codeberg.org/thomp/dired-launch")
(synopsis "Extra command to launch external programs")
(description
"This package provides a method to open entries in external programs from dired.")
(license license:gpl3+))))
(define-public emacs-dired-launch-superseded-version
(package
(name "emacs-dired-launch")
(inherit emacs-dired-launch)
(version "20240809.1910")
(source (origin
(method url-fetch)
(uri (string-append "https://melpa.org/packages/dired-launch-"
version ".tar"))
(sha256
(base32
"1zgs1hzy04pywpcgn5r8s7aah2bv1p5x5lmlcqg9yranxj8a9k6d"))))
(build-system emacs-build-system)
(synopsis "Extra command to launch external programs")
(description "This package provides a method to open entries in external programs from dired.")
(home-page "https://codeberg.org/thomp/dired-launch")
(license license:gpl3+)))
(properties (list (cons 'superseded emacs-dired-launch)))))
(define-public emacs-dired-rsync
(package
@@ -35593,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)
@@ -35602,7 +35678,7 @@ and comments.")
(commit version)))
(sha256
(base32
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@@ -35617,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
@@ -38031,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)
@@ -38040,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
@@ -41177,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")
@@ -41896,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")
@@ -45734,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"
+18 -4
View File
@@ -2,7 +2,7 @@
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2023, 2026 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -226,15 +226,19 @@ testing InfiniBand networks.")
(string-append "--with-rdmacm="
#$(this-package-input "rdma-core"))
(string-append "--with-rocm="
#$(this-package-input "rocr-runtime")))
#$@(if (this-package-input "rocr-runtime")
#~((string-append "--with-rocm="
#$(this-package-input
"rocr-runtime")))
#~()))
;; Be verbose so that compiler flags are displayed.
#:make-flags #~'("V=1")))
(native-inputs
(list autoconf automake libtool pkg-config))
(inputs
(list numactl rdma-core rocr-runtime))
(list numactl rdma-core))
(synopsis "Optimized communication layer for message passing in HPC")
(description
"Unified Communication X (UCX) provides an optimized communication layer
@@ -250,3 +254,13 @@ memory mechanisms for efficient intra-node communication.")
;; and x86_64 as supported.
(supported-systems '("x86_64-linux" "aarch64-linux" "powerpc64le-linux"
"riscv64-linux"))))
;; Note: ROCm support is kept separate to avoid a significant increase in
;; closure size: <https://codeberg.org/guix/guix/issues/7225>.
(define-public ucx-rocm
(package/inherit ucx
(name "ucx-rocm")
(inputs (modify-inputs inputs
(append rocr-runtime)))
(synopsis "Optimized communication layer for message passing in HPC (with
ROCm support)")))
+15 -19
View File
@@ -20,6 +20,7 @@
;;; Copyright © 2025 45mg <45mg.writes@gmail.com>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1138,28 +1139,23 @@ transaction log.
(source #f)
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils)
(ice-9 ftw)
(srfi srfi-26))
(let* ((jfsutils (assoc-ref %build-inputs "jfsutils"))
(fsck "jfs_fsck")
(out (assoc-ref %outputs "out"))
(sbin (string-append out "/sbin")))
(mkdir-p sbin)
(with-directory-excursion sbin
(install-file (string-append jfsutils "/sbin/" fsck)
".")
(remove-store-references fsck)
(chmod fsck #o555))
#t))))
(list
#:modules '((guix build utils))
#:builder
#~(begin
(use-modules (guix build utils))
(let* ((sbin (string-append #$output "/sbin"))
(fsck (string-append sbin "/jfs_fsck")))
(install-file (search-input-file %build-inputs "sbin/jfs_fsck")
sbin)
(remove-store-references fsck)
(chmod fsck #o555)))))
(inputs
`(("jfsutils" ,jfsutils/static)))
(list jfsutils/static))
(home-page (package-home-page jfsutils))
(synopsis "Statically-linked jfs_fsck command from jfsutils")
(description "This package provides statically-linked jfs_fsck command taken
(description
"This package provides statically-linked jfs_fsck command taken
from the jfsutils package. It is meant to be used in initrds.")
(license (package-license jfsutils))))
+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")
+40
View File
@@ -44,6 +44,7 @@
;;; Copyright © 2025 wvlab <me@wvlab.xyz>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3475,6 +3476,45 @@ remote-desktop @code{xdg-desktop-portal} interfaces for wlroots based
compositors.")
(license license:expat)))
(define-public xdg-desktop-portal-termfilechooser
(package
(name "xdg-desktop-portal-termfilechooser")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wvmwl678fr5pxz7x248pm5v4jd3bycz8nqa2q87akys5b9d1xpd"))))
(build-system meson-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'install 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((sed (search-input-file inputs "/bin/sed")))
(substitute* (find-files #$output "-wrapper\\.sh")
((" sed") (string-append " " sed)))))))))
(native-inputs
(list cmake-minimal
pkg-config
scdoc))
(inputs
(list basu
libinih
sed))
(home-page "https://github.com/hunkyburrito/xdg-desktop-portal-termfilechooser")
(synopsis "@code{xdg-desktop-portal} backend for choosing files with your
favorite terminal file chooser")
(description
"This package provides a backend implementation for xdg-desktop-portal that
allows using your preferred terminal file manager as file chooser in other
applications.")
(license license:expat)))
(define-public poweralertd
(package
(name "poweralertd")
+86 -32
View File
@@ -227,6 +227,7 @@
#:use-module (gnu packages shells)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages squirrel)
#:use-module (gnu packages stb)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
#:use-module (gnu packages terminals)
@@ -1234,11 +1235,11 @@ original rogue game found on 4.2BSD.")
(license license:bsd-3)))
(define-public sgt-puzzles
(let ((commit "28032bd5a0d3dc409eb225b8bdb23fd0b18a28d7")
(let ((commit "06e37f1e334d85c7c779f79ef9e484ff2f708269")
(revision "0"))
(package
(name "sgt-puzzles")
(version (git-version "20251120" revision commit))
(version (git-version "20260308" revision commit))
(source
(origin
(method git-fetch)
@@ -1247,7 +1248,7 @@ original rogue game found on 4.2BSD.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0533fzzagmi7g7sw1fdgpzy6gjpif77gxf3avz1qnjsma5gq7f2l"))))
(base32 "141d57s1va2ng7nxjzdgmsqh5mdb0mpy3yiqaj4rplya8xlhm34h"))))
(build-system cmake-build-system)
(arguments
(list
@@ -5348,36 +5349,78 @@ also available.")
(sha256
(base32 "05aj09rm50xb6910zx6imarj8k728x9bpvpa7ydwgb4sj1nypil8"))
(modules '((guix build utils)))
(snippet '(begin
(with-directory-excursion "thirdparty"
(delete-file-recursively "glm")
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(glm\\)")
"find_package(glm REQUIRED)")))
(with-directory-excursion "src"
(substitute* "CMakeLists.txt"
(("glm::glm")
"glm")))
;; Rename the icon to match with the executable file.
(rename-file "srb2.png" "ringracers.png")))))
(snippet
'(begin
(with-directory-excursion "thirdparty"
;; Delete third party ibraries, except these libraries:
;; glad: header file is not available in the system glad package.
;; imgui: configured with "srb2_imconfig.h".
;; libwebm: Not available in Guix.
;; renamenoise: Not available in Guix.
;; tracy: header files are not available in the system tracy
;; package.
(for-each delete-file-recursively
'("discord-rpc"
"glm"
"nlohmann-json"
"overlay-ports/libyuv"
"tcbrindle_span"
"vma"
"volk"
"vulkan-headers"
"xmp-lite"))
;; Unbundle stb.
(with-directory-excursion "stb"
(for-each delete-file
'("include/stb_rect_pack.h"
"stb_vorbis.c"))
(substitute* "stb_rect_pack.c"
(("\"include\\/stb_rect_pack\\.h\"") "<stb_rect_pack.h>"))
(substitute* "CMakeLists.txt"
(("include\\/stb_rect_pack\\.h ") "")))
;; Find third party libraries from the system and do not add the
;; deleted directories.
(substitute* "CMakeLists.txt"
(("add_subdirectory\\((glm|discord-rpc|xmp-lite|fmt|volk)\\)"
_ keep)
(string-append "find_package(" keep " REQUIRED)"))
(("xmp-lite") "libxmp")
((".*nlohmann-json.*") "")
((".*tcbrindle_span.*") "")
((".*vulkan-headers.*") "")
((".*vma.*") "")))
(with-directory-excursion "src"
;; Link the system libraries instead of the unbundled ones.
(substitute* "CMakeLists.txt"
((".*tcbrindle::span.*") "")
(("glm::glm") "glm")
(("xmp-lite::xmp-lite") "xmp")
(("fmt::fmt-header-only") "fmt")
((".*nlohmann_json::nlohmann_json.*") "")))
;; Rename the icon to match with the executable file.
(rename-file "srb2.png" "ringracers.png")))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ;There are no tests.
#:configure-flags
#~(list "-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
#~(list "-DSRB2_CONFIG_ENABLE_DISCORDRPC=OFF"
"-DCMAKE_C_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'"
"-DCMAKE_CXX_FLAGS_RELWITHDEBINFO='-O3 -g -DNDEBUG'")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-stb_vorbis.c
(lambda* (#:key inputs #:allow-other-keys)
(install-file (search-input-file inputs "/stb_vorbis.c")
"thirdparty/stb")))
(replace 'install
(lambda _
(install-file "bin/ringracers" (string-append #$output "/bin"))
(install-file "../source/ringracers.png"
(string-append #$output "/share/pixmaps"))))
(add-after 'install 'wrap-program
;; Install executable to $out/bin.
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program "bin/ringracers"
(wrap-program (string-append #$output "/bin/ringracers")
`("RINGRACERSWADDIR" =
(,(assoc-ref inputs "ring-racers-data"))))))
(add-after 'wrap-program 'create-desktop-entry
@@ -5393,26 +5436,37 @@ also available.")
#:exec (string-append #$output "/bin/ringracers")
#:startup-notify #f
#:categories '("Application" "Game"))))))))
(native-inputs (list pkg-config))
(inputs (list glm
(native-inputs
(list pkg-config
(package-source stb)))
(inputs (list bash-minimal
curl
fmt
glm
libogg
libpng
libvorbis
libvpx
libxmp
libyuv
nlohmann-json
opus
ring-racers-data
sdl2
zlib
curl))
(home-page "https://kartkrew.org")
stb-rect-pack
tcbrindle-span
vulkan-headers
vulkan-memory-allocator
vulkan-volk
zlib))
(home-page "https://www.kartkrew.org/")
(synopsis "Technical kart racing game")
(description
"Dr. Robotnik's Ring Racers is a kart racing game drawing inspiration from
``anti-gravity'' racers, fighting games, and traditional-style kart racing.
Ring Racers is designed with an emphasis on player agency in the face of highly
technical game-play challenges in both single-player and online multiplayer
modes.")
"Dr.@: Robotnik's Ring Racers is a kart racing game drawing inspiration
from \"anti-gravity\" racers, fighting games, and traditional-style kart
racing. Ring Racers is designed with an emphasis on player agency in the face
of highly technical game-play challenges in both single-player and online
multiplayer modes.")
(license license:gpl2+)))
(define-public unknown-horizons
@@ -5743,14 +5797,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
(define-public openttd-engine
(package
(name "openttd-engine")
(version "15.2")
(version "15.3")
(source
(origin (method url-fetch)
(uri (string-append "https://cdn.openttd.org/openttd-releases/"
version "/openttd-" version "-source.tar.xz"))
(sha256
(base32
"0xpzschcf562giqh3p8jj9gbi8chqrikdwgqqipabyn0nwbvd6nj"))))
"1rrvjxsr2dp9zr6b35ifiw41c0dwqqcaq90r0x18misrgpm1x8jy"))))
(build-system cmake-build-system)
(inputs
(list allegro
@@ -5984,7 +6038,7 @@ Transport Tycoon Deluxe.")
(package
(inherit openttd)
(name "openttd-jgrpp")
(version "0.71.2")
(version "0.72.0")
(source
(origin
(method git-fetch)
@@ -5993,7 +6047,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "jgrpp-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gb5gickmf1d1wkzqny5ryapvw32a2g94f77iq0102xhyyw8g8s0"))))
(base32 "0xbnnx03y8vhbgi6s7hsxhiqhsy6rhj7fypq6dfqh0z74m5bldkf"))))
(inputs (modify-inputs inputs
(append zstd harfbuzz)))
(arguments
+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
+4 -4
View File
@@ -682,7 +682,7 @@ and a high score table.")
(define-public komikku
(package
(name "komikku")
(version "50.1.0")
(version "50.3.0")
(source
(origin
(method git-fetch)
@@ -692,7 +692,7 @@ and a high score table.")
(file-name (git-file-name name version))
(sha256
(base32
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
(build-system meson-build-system)
(arguments
(list
@@ -780,7 +780,7 @@ developed with the aim of being used with the Librem 5 phone.")
(define-public komikku-servers
(package
(name "komikku-servers")
(version "50.1.0")
(version "50.3.0")
(source
(origin
(method git-fetch)
@@ -790,7 +790,7 @@ developed with the aim of being used with the Librem 5 phone.")
(file-name (git-file-name name version))
(sha256
(base32
"0q858zvpqy32nb2lxdfy1k6fgal46kp634534fg983192fyk1pqp"))))
"0hm1infvdsms193g2yp7qw7lrsxjsx5zziib8hgch34y6dbhfhf1"))))
(build-system copy-build-system)
(arguments
(list
+5 -5
View File
@@ -605,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'
@@ -627,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)
@@ -640,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.
+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
+73 -27
View File
@@ -71,11 +71,12 @@
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
#:use-module (gnu packages compression)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
@@ -96,10 +97,11 @@
#:use-module (gnu packages mcrypt)
#:use-module (gnu packages mp3)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ocr)
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
#:use-module (gnu packages popt)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
@@ -115,7 +117,6 @@
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages fonts)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
@@ -183,36 +184,81 @@ convert images in more than 100 different formats.")
(define-public gradia
(package
(name "gradia")
(version "1.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AlexanderVanhee/Gradia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "07hal4h3kkjf7la02nqmqgw19sa6hkd130bkfmgwjimkv9zi8z2i"))))
(version "1.13.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AlexanderVanhee/Gradia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00s6xj9crj5gkh233q98fmq67f41y877xgrn49cycwb3kybp237n"))))
(build-system meson-build-system)
(arguments
(list #:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false")))))))
(inputs (list gtk libadwaita python python-pygobject))
(native-inputs
(list blueprint-compiler gettext-minimal `(,glib "bin") pkg-config))
(list
#:imported-modules (append %meson-build-system-modules
%pyproject-build-system-modules)
#:modules '((guix build meson-build-system)
((guix build pyproject-build-system)
#:prefix py:)
(guix build utils))
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))))
(add-after 'unpack 'set-tesseract-and-tessdata-path
(lambda _
(let* ((tesseract #$(this-package-input "tesseract-ocr"))
(tesseract-bin (string-append tesseract "/bin/tesseract"))
(tessdata (string-append tesseract "/share/tessdata")))
(substitute* "meson.build"
(("OCR_TESSERACT_CMD = '/app/bin/tesseract'")
(format #f "OCR_TESSERACT_CMD = '~a'" tesseract-bin))
(("OCR_ORIGINAL_TESSDATA_DIR = '/app/share/tessdata'")
(format #f "OCR_ORIGINAL_TESSDATA_DIR = '~a'" tessdata))))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/gradia")
`("GUIX_PYTHONPATH" =
(,(getenv "GUIX_PYTHONPATH") ,(py:site-packages inputs
outputs)))
`("GI_TYPELIB_PATH" =
(,(getenv "GI_TYPELIB_PATH")))
`("GDK_PIXBUF_MODULE_FILE" =
(,(getenv "GDK_PIXBUF_MODULE_FILE")))))))))
(inputs (list bash-minimal
gtk
gtksourceview
libadwaita
libportal
libsoup
python
python-pillow
python-pycairo
python-pygobject
python-pytesseract
tesseract-ocr
webp-pixbuf-loader))
(native-inputs (list blueprint-compiler
desktop-file-utils
gettext-minimal
`(,glib "bin")
gobject-introspection
pkg-config))
(home-page "https://github.com/AlexanderVanhee/Gradia")
(synopsis "Edit screenshots")
(description "Gradia is a GTK 4 application for enhancing and preparing
(description
"Gradia is a GTK 4 application for enhancing and preparing
screenshots for blogs, social media, and documentation. It supports background
customization, annotation tools (pen, arrow, text, highlight, stamp), padding,
cropping, and various export formats.")
cropping, @acronym{OCR, optical character recognition} and various export formats.")
(license license:gpl3+)))
(define-public iqa
+21 -8
View File
@@ -1088,9 +1088,9 @@ wrappers.")
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/tc39/test262")
(commit "a5e69a1534de88d1eb29b76657d84c8541b72df7")))
(commit "a6f387de323eb9ae56448bdb71c5d315df631ce4")))
(file-name "test262")
(sha256 (base32 "078a7nim0n9x36q7q8yvjwhk4ig29p25b03rr4l7g2b545cky66l"))
(sha256 (base32 "09avg4f75rzbmh3hcybdvjij7hbl2m79x6xp1hgl6h8ihfbn33l0"))
(modules '((guix build utils)))
(snippet #~(begin
(for-each delete-file
@@ -1100,7 +1100,7 @@ wrappers.")
(define-public quickjs-ng
(package
(name "quickjs-ng")
(version "0.11.0")
(version "0.14.0")
(source
(origin
(method git-fetch)
@@ -1109,11 +1109,7 @@ wrappers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mfk32zvvh6c9a9plp6ad07888g795lhdmal3jyaclyn2k5iig9i"))
;; Remove these patches on next release as they will be included.
(patches (search-patches
"quickjs-ng-64-bits-precision-on-i686.patch"
"quickjs-ng-fix-atomics.pause-on-32-bit.patch"))))
(base32 "05k8niswh0ly5sx0129jdhiinqs84s86b7sv29ff68v3546dl04i"))))
(arguments
(list
#:configure-flags
@@ -1146,6 +1142,23 @@ wrappers.")
"")
(("BUILD_DIR=build")
"BUILD_DIR=../build"))))
;; XXX: Unknown test failures in quickjs-ng 1.4.0.
;; Remove for future versions.
(add-before 'configure 'skip-failing-tests
(lambda* (#:key inputs #:allow-other-keys)
(let* ((test262 (assoc-ref inputs "test262"))
(lang-path (in-vicinity test262 "test/language")))
(substitute* "test262.conf"
(("# list excluded tests and directories here" all)
(string-join
(cons* all
(map (lambda (f)
(in-vicinity lang-path f))
'(;; export 'foo' in module /gnu/store is ambiguous
"module-code/ambiguous-export-bindings/"
;; Could not find export 'default'
"import/import-attributes/text-self.js")))
"\n"))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
+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.")
+4 -4
View File
@@ -164,14 +164,14 @@ resolution, asynchronous file system operations, and threading primitives.")
(package
(inherit libuv)
(name "libuv")
(version "1.51.0")
(version "1.49.2")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"1szqivvs7izbhw1a3nd1ipbk012yvqqkjg0sjmqxw1hi1fwmf1az"))))
"1a75p8wp4l43y2ffj1szs1ssm6nzjad7k51bqi2r04ngs9mp044c"))))
(properties '((hidden? . #t)))))
(define-public libuv-for-r-httpuv
@@ -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
+385 -479
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2021, 2021-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2021, 2021-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
@@ -531,7 +531,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "mainline" kernel.
(define-public linux-libre-7.0-version "7.0.3")
(define-public linux-libre-7.0-version "7.0.5")
(define-public linux-libre-7.0-gnu-revision "gnu")
(define deblob-scripts-7.0
(linux-libre-deblob-scripts
@@ -541,7 +541,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0a7572zw5y3k4gs4p3h5w0s9bhd63pdjxz6vxbr96sq6r8b6k02n")))
(define-public linux-libre-7.0-pristine-source
(let ((version linux-libre-7.0-version)
(hash (base32 "074zjl0v901a9hafgpcxyyd395qs7y4kr4fcpgg3ssc8ayzsvv8b")))
(hash (base32 "0g5c732144ig8rk2nrlsbwdh88q5ghi3n1n6c3y9jlv7q6hv0pwn")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-7.0)))
@@ -564,7 +564,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(%upstream-linux-source version hash)
deblob-scripts-6.19)))
(define-public linux-libre-6.18-version "6.18.26")
(define-public linux-libre-6.18-version "6.18.28")
(define-public linux-libre-6.18-gnu-revision "gnu")
(define deblob-scripts-6.18
(linux-libre-deblob-scripts
@@ -574,7 +574,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0qlih8w8wg4v5cwbmd34rbhb6mjgbx69i9rx3s2vxw7h42q9l0ai")))
(define-public linux-libre-6.18-pristine-source
(let ((version linux-libre-6.18-version)
(hash (base32 "1v5h0w3s8p5m22jxg992x1jfpwyi80ia70cdgiv47q3n6xfjyxsk")))
(hash (base32 "0x3vsz25ci192zcv1vmi1lnbdmpafvzbzcja1fighv2qhfa7hq7k")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.18)))
@@ -583,7 +583,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.12-version "6.12.85")
(define-public linux-libre-6.12-version "6.12.87")
(define-public linux-libre-6.12-gnu-revision "gnu")
(define deblob-scripts-6.12
(linux-libre-deblob-scripts
@@ -593,12 +593,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1x48hpmvajz7v5wn1vdd7l5r14mq4ngzh5npz3pj81z4f1g61i0a")))
(define-public linux-libre-6.12-pristine-source
(let ((version linux-libre-6.12-version)
(hash (base32 "1v8a0z6znmr2m26l4744wndaimsh24zz6q4d7m4p8s0ayjcwjnp3")))
(hash (base32 "0c4qidff0qs2x0mvba83cw3ksaz2af3xwabvc839xvsc9djaf4nc")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.12)))
(define-public linux-libre-6.6-version "6.6.137")
(define-public linux-libre-6.6-version "6.6.138")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
@@ -608,12 +608,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0xp9b2vkrb0g0rn4i33b59rhp4sgh1dbwzk28vwz7kwac6l5rcpi")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
(hash (base32 "1i2npnsnhk41a88vimr521rxg77kljbkqmlyk1zrv7z4ic6ykwcj")))
(hash (base32 "03x8ald0sjzdb6kpzrw8adnc78r3mdxrx8mzbxbpwp35vdgnpl5d")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
(define-public linux-libre-6.1-version "6.1.170")
(define-public linux-libre-6.1-version "6.1.172")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@@ -623,12 +623,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1w5pfws6l39dpc3lzazs1n6r4m96f6rdf6vb2scy5fhmrd933ldc")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "0i29gilsvl7vx7p6vqg0bc0d40ir1b968hyfjhdfms55g4pr2y5m")))
(hash (base32 "16dlfdzjcsc21m5sfbhamg8y3ay54rz8a0qqvqrmxq691mhjwrzi")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.204")
(define-public linux-libre-5.15-version "5.15.206")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@@ -638,12 +638,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1s6km2r2mad0wpf7nqn4rqsykw1lm386l1yskmil24239fbva1f1")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "1kfvfvzhdgjcj1pa2aqks3iah00ilfpp1i9bmbwjr3na0crlrzcv")))
(hash (base32 "07z6lla7xpnn4sn3l4zw3x7m8ih8w6h54k71qrxrf5zv9i7wxijz")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.252")
(define-public linux-libre-5.10-version "5.10.255")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@@ -653,7 +653,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1hgza8fsps7bkjf4i0f2xgvrh1r183z3i6lxrr2nr8qbi5d13qs7")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "1yqa4zmvi5ihf50kxcff06abfi6xw0b9ajzagvy6gdzfr7igpcrl")))
(hash (base32 "19v6g2fq4nqv38irlcd9x14s6d398c56mxzpyc03q4xmpy3v6mir")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@@ -1493,6 +1493,48 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
("CONFIG_VHOST_VDPA" . m))
(default-extra-linux-options linux-libre-lts-version))))
(define-public reform-debian-packages-for-7.0
(package
(name "reform-debian-packages")
(version "2023-07-10-559-gced99e4") ;from git describe
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://source.mnt.re/reform/reform-debian-packages.git")
(commit "ced99e4f4b1fa7294823ac57f1561490d5d4e1f1")))
(file-name (git-file-name name version))
(sha256
(base32 "1rnk22dg0xrljpfzhc0lvlksd2zpddwhivvph3q6kgbac4afwv9r"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("linux/patches7.0/" "/patches7.0")
("linux/" "/dts/amlogic"
#:include-regexp ("meson.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("imx8.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("fsl.*\\.dts$"))
("linux/" "/dts/rockchip"
#:include-regexp ("rk3588.*\\.dts$"))
("linux/config" "config"))))
(home-page "https://source.mnt.re/reform/reform-debian-packages")
(synopsis
"Linux kernel patches and device-trees used for MNT Reform systems")
(description
"Linux kernel patches and device-trees used for the MNT Reform systems")
(license (list
(license:fsf-free "file://filter-output"
"https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html")
license:bsd-2
license:expat
license:gpl2
license:gpl2+
license:gpl3
license:x11))))
(define-public reform-debian-packages-for-6.19
(package
(name "reform-debian-packages")
@@ -1619,6 +1661,317 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
license:gpl3
license:x11))))
(define (mnt-reform-kernel-options version)
`(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . m)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_VIDEO_DW100" . m)
("CONFIG_IMX_AIPSTZ" . m)
("CONFIG_IMX_DSP" . m)
("CONFIG_IMX_REMOTEPROC" . m)
("CONFIG_IMX_DSP_REMOTEPROC" . m)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m)
,@(if (version>=? version "6.18")
'(("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true))
;; 6.12 or older gets this instead:
'(("CONFIG_ROCKCHIP_INNO_HDMI" . #true)
("CONFIG_ROCKCHIP_LVDS" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI" . #true)))))
(define-public linux-libre-arm64-mnt-reform-7.0
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
(let ((base (make-linux-libre* linux-libre-7.0-version
linux-libre-7.0-gnu-revision
linux-libre-7.0-source
'("aarch64-linux")
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append (mnt-reform-kernel-options
linux-libre-7.0-version)
(default-extra-linux-options
linux-libre-7.0-version)))))
(package
(inherit base)
(inputs (list reform-debian-packages-for-7.0))
(synopsis (string-append (package-synopsis base)
" for MNT/Reform systems"))
(description (string-append (package-description base)
" Configuration options and patches have been applied for use with MNT/Reform systems."))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'apply-reform-patches
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (patch)
(invoke "patch" "-p1" "-i"
(search-input-file inputs
(string-append
"patches7.0/" patch))))
(list
"imx8mp-mnt-pocket-reform/2ghz/0001-imx8mp-2ghz-clk.patch"
"imx8mp-mnt-pocket-reform/2ghz/0002-imx8mp-2ghz-opp.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0001-sdhci-add-no-sd-uhs-sdr104-devicetree-property.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0002-During-the-card-init-the-host-side-sometimes-may-nee.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0003-USDHC-IP-has-one-limitation-the-tuning-circuit-can-t.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0001-v5-add-multi-display-panel-driver.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0002-pocket-panel-fix-sleep-add-orientation.patch"
"imx8mp-mnt-reform2/0001-sn65dsi86-use-hs-clock-of-samsung-dsim-host-directly.patch"
"imx8mp-mnt-reform2/0002-lcdif-dont-exceed-desired-pixel-clock.patch"
"imx8mq-mnt-reform2/0001-imx8mq-mnt-reform2.dts-multiple-fixes-for-display-wi.patch"
"imx8mq-mnt-reform2/0001-nwl-dsi-fixup-mode-only-for-LCDIF-input-not-DCSS.patch"
"imx8mq-mnt-reform2/0002-Revert-drm-bridge-nwl-dsi-Use-vsync-hsync-polarity-f.patch"
"imx8mq-mnt-reform2/0003-lcdif-fix-pcie-interference.patch"
"imx8mq-mnt-reform2/0004-mnt4002-imx-gpcv2-wake-smccc.patch.patch"
"imx8mq-mnt-reform2/0005-pci-imx6-add-support-for-internal-refclk-imx8mq.patch"
"imx8mq-mnt-reform2/0006-imx8mq-import-HDMI-driver-and-make-DCSS-compatible-w.patch"
"ls1028a-mnt-reform2/0000-dtsi-add-hdptx.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0001-a311d-viu-fifo-lines-config.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0002-a311d-viu-fifo-lines-config-header.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0003-tlv320aic31xx-add-1228800hz-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-Revert-drm-bridge-synopsys-dw-mipi-dsi-enable-EoTp-b.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-meson-g12b-bananapi-cm4-mnt-reform2.dts-fix-audio-an.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0011-dw-mipi-dsi-phy-stop-wait-time.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0012-innolux-n125hce-gn1-timing-tweaks.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0013-meson-viu-hold-fifo-lines.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0014-meson-venc-sync.patch.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0015-meson-dw-mipi-dsi-sync-invert.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0016-sn65dsi86-burst-mode-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0018-sn65dsi86-never-turn-off.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0020-LOCAL-ALSA-Assign-internal-PCM-chmap-ELD-IEC958-kctl.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0021-HACK-of-partial-revert-of-fdt.c-changes.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0022-add-bt-and-eth-resets.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0023-sdio-pullups.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0024-sdio-improve-wifi-speed.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0030-WORKAROUND-meson-plane-disable-afbc-32x8.patch"
"rk3588-mnt-reform2/0024-math.h-add-DIV_ROUND_UP_NO_OVERFLOW.patch"
"rk3588-mnt-reform2/0025-clk-divider-Fix-divisor-masking-on-64-bit-platforms.patch"
"rk3588-mnt-reform2/0026-clk-composite-replace-open-coded-abs_diff.patch"
"rk3588-mnt-reform2/0029-PCI-dw-rockchip-Restore-vpcie3v3-regulator-handle.patch"
"rk3588-mnt-reform2/0030-mfd-rk8xx-Fix-shutdown-handler.patch"
"rk3588-mnt-reform2/0031-dt-bindings-display-vop2-Add-VP-clock-resets.patch"
"rk3588-mnt-reform2/0032-drm-rockchip-vop2-Add-clock-resets-support.patch"
"rk3588-mnt-reform2/0033-arm64-dts-rockchip-Add-VOP-clock-resets-for-rk3588s.patch"
"rk3588-mnt-reform2/0035-drm-rockchip-vop2-Add-core-reset-support.patch"
"rk3588-mnt-reform2/0062-PCI-dw-rockchip-Move-devm_phy_get-out-of-phy_init.patch"
"rk3588-mnt-reform2/0063-PCI-dw-rockchip-Add-helper-function-for-enhanced-LTS.patch"
"rk3588-mnt-reform2/0064-PCI-dw-rockchip-Add-helper-function-for-controller-m.patch"
"rk3588-mnt-reform2/0065-PCI-dw-rockchip-Add-helper-function-for-DDL-indicato.patch"
"rk3588-mnt-reform2/0066-PCI-dw-rockchip-Add-pme_turn_off-support.patch"
"rk3588-mnt-reform2/0067-PCI-dw-rockchip-Add-system-PM-support.patch"
"rk3588-mnt-reform2/0078-PCI-dw-rockchip-Fix-LTSSM-set-functions.patch"
"rk3588-mnt-reform2/0079-RFC-PCI-dw-rockchip-port-some-suspend-code-from-vend.patch"
"rk3588-mnt-reform2/0089-DEBUG-phy-rockchip-samsung-hdptx-Add-verbose-logging.patch"
"rk3588-mnt-reform2/0092-drm-rockchip-dw_hdmi_qp-Do-not-send-HPD-events-for-a.patch"
"rk3588-mnt-reform2/0093-drm-Add-CRTC-background-color-property.patch"
"rk3588-mnt-reform2/0094-drm-rockchip-vop2-Support-setting-custom-background-.patch"
"rk3588-mnt-reform2/0095-drm-bridge-Add-detect_ctx-hook-and-drm_bridge_detect.patch"
"rk3588-mnt-reform2/0096-drm-bridge-connector-Switch-to-using-detect_ctx-hook.patch"
"rk3588-mnt-reform2/0097-drm-bridge-dw-hdmi-qp-Add-high-TMDS-clock-ratio-and-.patch"
"rk3588-mnt-reform2/0098-WIP-YUV420-drm-rockchip-vop2-Add-YUV420-output-forma.patch"
"rk3588-mnt-reform2/0099-WIP-YUV420-drm-rockchip-dw_hdmi_qp-Add-YUV420-output.patch"
"rk3588-mnt-reform2/0103-WIP-FRL-arm64-dts-rockchip-Assign-ACLK_VOP-to-750-MH.patch"
"rk3588-mnt-reform2/0104-WIP-FRL-drm-connector-hdmi-Handle-FRL-in-hdmi_clock_.patch"
"rk3588-mnt-reform2/0105-WIP-FRL-drm-bridge-dw-hdmi-qp-Add-HDMI-2.1-FRL-suppo.patch"
"rk3588-mnt-reform2/0106-WIP-FRL-drm-rockchip-dw_hdmi_qp-Add-HDMI-2.1-FRL-sup.patch"
"rk3588-mnt-reform2/0107-WIP-FRL-drm-rockchip-vop2-Add-HDMI-2.1-FRL-support.patch"
"rk3588-mnt-reform2/0108-dt-bindings-phy-rockchip-usbdp-add-improved-ports-sc.patch"
"rk3588-mnt-reform2/2001-drm-bridge-dw-hdmi-qp-Return-0-in-audio-prepare-when.patch"
"rk3588-mnt-reform2/2003-drm-bridge-synopsys-Do-not-warn-about-audio-params-c.patch"
"rk3588-mnt-reform2/5200-drm-rockchip-Set-dma-mask-to-64-bit.patch"))))
(add-after 'apply-reform-patches 'copy-reform-dts-files
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (dts)
(copy-file (search-input-file inputs
(string-append
"/dts/" dts))
(string-append "arch/arm64/boot/dts/"
dts)))
(list
"amlogic/meson-g12b-bananapi-cm4-mnt-pocket-reform.dts"
"freescale/fsl-ls1028a-mnt-reform2.dts"
"freescale/imx8mp-mnt-pocket-reform.dts"
"freescale/imx8mp-mnt-reform2.dts"
"freescale/imx8mq-mnt-reform2-hdmi.dts"
"rockchip/rk3588-mnt-desktop-reform.dts"
"rockchip/rk3588-mnt-pocket-reform.dts"
"rockchip/rk3588-mnt-reform-next.dts"
"rockchip/rk3588-mnt-reform2.dts"
"rockchip/rk3588-mnt-reform2-dsi.dts"
))))
(add-after 'apply-reform-patches 'adjust-makefiles-with-new-dtb
(lambda _
(substitute* "arch/arm64/boot/dts/amlogic/Makefile"
(("meson-g12b-bananapi-cm4-mnt-reform2.dtb")
"meson-g12b-bananapi-cm4-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-bananapi-cm4-mnt-pocket-reform.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("fsl-ls1028a-rdb.dtb")
"fsl-ls1028a-rdb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-mnt-reform2.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("imx8mq-mnt-reform2.dtb")
"imx8mq-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-pocket-reform.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-mnt-reform2-hdmi.dtb"))
(substitute* "arch/arm64/boot/dts/rockchip/Makefile"
(("rk3588-mnt-reform2.dtb")
"rk3588-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-desktop-reform.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform2-dsi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform-next.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
(define-public linux-libre-arm64-mnt-reform-6.19
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
@@ -1629,163 +1982,8 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . m)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_VIDEO_DW100" . m)
("CONFIG_IMX_AIPSTZ" . m)
("CONFIG_IMX_DSP" . m)
("CONFIG_IMX_REMOTEPROC" . m)
("CONFIG_IMX_DSP_REMOTEPROC" . m)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(append (mnt-reform-kernel-options
linux-libre-6.19-version)
(default-extra-linux-options
linux-libre-6.19-version)))))
(package
@@ -1946,158 +2144,8 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . #true)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(append (mnt-reform-kernel-options
linux-libre-6.18-version)
(default-extra-linux-options
linux-libre-6.18-version)))))
(package
@@ -2279,158 +2327,8 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_INNO_HDMI" . #true)
("CONFIG_ROCKCHIP_LVDS" . #true)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . m)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(append (mnt-reform-kernel-options
linux-libre-6.12-version)
(default-extra-linux-options
linux-libre-6.12-version)))))
(package
@@ -2805,7 +2703,7 @@ This package provides the @command{corefreqd} data collection daemon, the
(define-public tuxedo-keyboard
(package
(name "tuxedo-keyboard")
(version "4.15.4")
(version "4.22.2")
(source
(origin
(method git-fetch)
@@ -2814,7 +2712,7 @@ This package provides the @command{corefreqd} data collection daemon, the
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mimgcbp57gp3smd439g8040sl80qqnfzmh2vhs2qv1kwyxs75sq"))))
(base32 "0akjyz8nhhpcr4y4xmhghd4253mndzhhi5qggr2z315vpxfr7rl4"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f)) ; no test suite
@@ -10460,7 +10358,6 @@ known as Slingshot.")
(cons package extra)
'()))))
(append (list rdma-core libnl)
(if-supported rocr-runtime)
(if-supported psm)
(if-supported psm2)
(if-supported libcxi curl json-c))))
@@ -10504,6 +10401,15 @@ applications deal with directly. It works in conjunction with provider
libraries, which are often integrated directly into libfabric.")
(license (list license:bsd-2 license:gpl2)))) ;dual
;; Note: ROCm support is kept separate to avoid a significant increase in
;; closure size: <https://codeberg.org/guix/guix/issues/7225>.
(define-public libfabric-rocm
(package/inherit libfabric
(name "libfabric-rocm")
(inputs (modify-inputs inputs
(append rocr-runtime)))
(synopsis "Open Fabric Interfaces (with ROCm support)")))
(define-public libfabric-1 ;needed by Open MPI 4.x
(package
(inherit libfabric)
+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")
+16 -33
View File
@@ -229,42 +229,25 @@ provides some unique features such as CSV log format and wide string support.")
(define-public multitail
(package
(name "multitail")
(version "6.5.2")
(version "7.1.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/halturin/multitail")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17hg5qpangyx4m7hp2x4h56mp6w3wsaslg1il39qcpwsffh1rihc"))))
(build-system gnu-build-system)
(method git-fetch)
(uri (git-reference
(url "https://github.com/folkertvanheusden/multitail")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "11kkd2rg3qc7ck5iyha0f8l5lqc1bvwypn80di0h77h7p106blvk"))))
(build-system cmake-build-system)
(arguments
`(#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))
"SYSCONFDIR=$(PREFIX)/etc")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-broken-build
;; With some luck, you might be able to remove this when updating…
(lambda _
(substitute* "Makefile"
((" \\*\\.txt") "")
((".*CONFIG_DIR.*") "")
(("^install: .*" match)
(string-append match
"\t$(INSTALL_DIR) $(DESTDIR)$(SYSCONFDIR)\n")))
(substitute* "version"
(("(VERSION=).*" _ assign)
(string-append assign ,version)))))
(add-after 'unpack 'patch-curses-headers
(lambda _
(substitute* "mt.h"
(("ncursesw/") ""))))
(delete 'configure)) ; no configure script
#:tests? #f)) ; no test suite (make check just runs cppcheck)
(list
#:tests? #f ;no test suite
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-curses-headers
(lambda _
(substitute* "mt.h"
(("ncursesw/") "")))))))
(inputs (list ncurses))
(home-page "https://vanheusden.com/multitail/")
(synopsis "Monitor multiple log files")
+5 -6
View File
@@ -1129,7 +1129,7 @@ Grammars (PEGs).")
(define (make-lua-luv name lua)
(package
(name name)
(version "1.43.0-0")
(version "1.44.2-0")
(source (origin
;; The release tarball includes the sources of libuv but does
;; not include the pkg-config files.
@@ -1140,7 +1140,7 @@ Grammars (PEGs).")
(file-name (git-file-name name version))
(sha256
(base32
"1yzi4bm845vl84wyv2qw4z1n1v285lgwm681swmp84brfy2s7czp"))))
"0jdvsznzha290gnzd66vscsdacd5dapq0scwy4zj64d9wnsv39p7"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ; there are none
@@ -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
+5 -3
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
@@ -432,7 +432,7 @@ software vendors, application developers and computer science researchers.")
(package/inherit openmpi-5
(name "openmpi-rocm")
(arguments
(substitute-keyword-arguments (package-arguments openmpi-5)
(substitute-keyword-arguments arguments
((#:configure-flags flags '())
#~(cons* (string-append "--with-rocm="
#$(this-package-input "rocm-hip-runtime"))
@@ -440,7 +440,9 @@ software vendors, application developers and computer science researchers.")
(inputs (modify-inputs (package-inputs openmpi-5)
;; XXX: This might break openmpi-5 for architectures where ROCm
;; is not supported.
(append rocm-hip-runtime)))
(append rocm-hip-runtime)
(replace "ucx" ucx-rocm)
(replace "libfabric" libfabric-rocm)))
(synopsis "MPI-3 implementation (with ROCm support)")))
(define-public openmpi-c++
+139 -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>
@@ -171,6 +171,7 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages messaging)
#:use-module (gnu packages mp3)
#:use-module (gnu packages mpd)
@@ -224,6 +225,7 @@
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (gnu packages wine)
#:use-module ((srfi srfi-1) #:select (last)))
(define-public alsa-scarlett-gui
@@ -816,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
@@ -825,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
@@ -966,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)
@@ -974,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
@@ -5355,6 +5351,132 @@ includes instruments based on audio samples and various soft sythesizers. It
can receive input from a MIDI keyboard.")
(license license:gpl2+)))
;; This version tracks the latest commit from master branch.
(define-public lmms-next
(let ((commit "83313e737d3137f7939f3daa9063a94a1ac01f7c")
(revision "0"))
(package/inherit lmms
(name "lmms-next")
(version (git-version "1.3.0-alpha.1" revision commit))
(source
(origin
(inherit (package-source lmms))
(uri (git-reference
(url "https://github.com/LMMS/lmms")
(commit commit)
;; Clone recursively only for the optional plugins. The 3rd
;; party libraries will be deleted by the snippet.
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1mpp449rvn9f10bcxhpmxfinvj3jdv4s6qjhlp0sj9l783pv3h69"))
(modules '((guix build utils)))
(snippet
'(begin
;; Delete the bundled 3rd party libraries.
(for-each delete-file-recursively
(list "plugins/CarlaBase/carla"
"plugins/OpulenZ/adplug"
"plugins/Xpressive/exprtk"
"src/3rdparty"))
;; Do not check submodules.
(substitute* "CMakeLists.txt"
((".*CheckSubmodules.*") "")
;; Do not use the bundled weakjack.
(("JACK libraries\" ON") "JACK libraries\" OFF"))
(substitute* "src/CMakeLists.txt"
;; Do not add 3rd party libraries.
((".*3rdparty.*") "")
;; Use adplug and ringbuffer from the system.
(("\\$\\{EXTRA_LIBRARIES\\}" all)
(string-append all
"\n\tadplug"
"\n\tringbuffer")))
(with-directory-excursion "plugins"
;; Use carla from the system.
(substitute* "CarlaBase/Carla.h"
(("#include <CarlaDefines")
"#include <carla/includes/CarlaDefines")
(("#include <CarlaNative")
"#include <carla/includes/CarlaNative")
(("#include <CarlaBackend") "#include <carla/CarlaBackend")
(("#include <CarlaUtils") "#include <carla/CarlaUtils"))
(with-directory-excursion "OpulenZ"
;; Do not use the bundled adplug.
(substitute* "CMakeLists.txt"
((".*adplug .*") "")
((".*adplug/.*") "")
(("^\\)") "")
(("\\.png\"") ".png\"\n)"))
;; Use adplug from the system.
(substitute* "OpulenZ.cpp"
(("<opl\\.h>") "<adplug/opl.h>")
(("<temuopl\\.h>") "<adplug/temuopl.h>")
(("<mididata\\.h>") "<adplug/mididata.h>")))
;; Do not use the bundled hiir.
(substitute* "SlewDistortion/CMakeLists.txt"
(("TARGET_LINK_LIBRARIES\\(slewdistortion hiir\\)") ""))
;; Do not use the bundled exprtk.
(substitute* "Xpressive/CMakeLists.txt"
((".*\\(exprtk .*") "")
((".*xpressive exprtk.*") "")))
;; Avoid "invalid conversion from 'const unsigned char*' to
;; 'unsigned char*'" error.
(substitute* "plugins/OpulenZ/OpulenZ.cpp"
(("unsigned char \\*inst") "const unsigned char *inst"))))))
(arguments
(substitute-keyword-arguments arguments
((#:qtbase _ #f) qtbase)
((#:configure-flags flags)
#~(cons* "-DWANT_QT6=ON" (delete "-DWANT_QT5=ON" #$flags)))
((#:phases phases)
#~(modify-phases #$phases
(delete 'unpack-rpmalloc)
(replace 'fix-carla-export
;; Taken from NixOS package definition.
(lambda _
(substitute* "plugins/CarlaBase/Carla.h"
(("CARLA_EXPORT")
"CARLA_API_EXPORT"))))))))
(native-inputs
(modify-inputs native-inputs
(delete "rpmalloc")
(replace "qttools" qttools)))
(inputs
(modify-inputs inputs
(delete "qtx11extras")
(replace "carla" carla-2.6)
(replace "qtwayland" qtwayland)
(replace "sdl12-compat" sdl2)
(append adplug
exprtk
hiir
libxml2
lilv
lv2
perl
perl-list-moreutils
perl-xml-parser
qtsvg
ringbuffer
suil)))
(native-search-paths
(list (search-path-specification
(variable "LV2_PATH")
(files '("lib/lv2"))))))))
(define-public lmms-next-with-vst
(package/inherit lmms-next
(name "lmms-next-with-vst")
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags)
#~(cons* (string-append "-DWINE_LOCATIONS=" #$(wine-for-system))
(delete "-DWANT_VST=OFF" #$flags)))))
(inputs
(modify-inputs inputs
(append (wine-for-system))))))
(define-public stargate
(package
(name "stargate")
+13 -13
View File
@@ -1994,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)
@@ -2003,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
@@ -2948,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)
@@ -2957,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
@@ -3397,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
@@ -3405,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
@@ -4155,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.
@@ -5489,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
@@ -5515,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
+23 -45
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")
@@ -2324,7 +2302,7 @@ a string consisting of a number and a time unit is converted to milliseconds.")
(define-public node-nan
(package
(name "node-nan")
(version "2.26.2")
(version "2.22.0")
(source
(origin
(method git-fetch)
@@ -2333,7 +2311,7 @@ a string consisting of a number and a time unit is converted to milliseconds.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18xv0m40jgy3sc4pldw95w6p72ms5a5h0x2sm2mimlwlmxmrjlmb"))))
(base32 "02gqm23x26glffvyxrnk610hy3hg0kwh2v58dhnb032l0jhjzqvp"))))
(build-system node-build-system)
(arguments
`(#:phases
+58 -48
View File
@@ -274,7 +274,7 @@
(lambda (file stat)
(executable-file? file))
#:stat lstat)))))
(add-after 'install 'fix-node-gyp-reference
(add-after 'install 'install-npmrc
;; Note: programs like node-gyp only receive these values if
;; they are started via `npm` or `npx`.
;; See: https://github.com/nodejs/node-gyp#npm-configuration
@@ -482,7 +482,7 @@ Node.js and web browsers.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nodejs/llparse-builder.git")
(url "https://github.com/indutny/llparse-builder.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -491,6 +491,10 @@ Node.js and web browsers.")
(modules '((guix build utils)))
(snippet
'(begin
;; FIXME: Unneeded runtime dependency.
;; https://github.com/indutny/llparse-builder/pull/2
(substitute* "package.json"
(("\"@types/debug.*,") ""))
;; Fix imports for esbuild.
;; https://github.com/evanw/esbuild/issues/477
(substitute* '("src/node/invoke.ts"
@@ -517,8 +521,7 @@ Node.js and web browsers.")
(add-after 'patch-dependencies 'delete-dependencies
(lambda _
(modify-json (delete-dependencies
`("@types/debug"
"@types/mocha"
`("@types/mocha"
"@types/node"
"mocha"
"ts-node"
@@ -536,7 +539,7 @@ Node.js and web browsers.")
(list node-binary-search-bootstrap node-debug-bootstrap))
(native-inputs
(list esbuild))
(home-page "https://github.com/nodejs/llparse-builder#readme")
(home-page "https://github.com/indutny/llparse-builder#readme")
(properties '((hidden? . #t)))
(synopsis "Graph builder for consumption by llparse")
(description "This package builds graphs for consumption by llparse.")
@@ -550,7 +553,7 @@ Node.js and web browsers.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nodejs/llparse-frontend.git")
(url "https://github.com/indutny/llparse-frontend.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -599,7 +602,7 @@ Node.js and web browsers.")
(list node-debug-bootstrap node-llparse-builder-bootstrap))
(native-inputs
(list esbuild))
(home-page "https://github.com/nodejs/llparse-frontend#readme")
(home-page "https://github.com/indutny/llparse-frontend#readme")
(properties '((hidden? . #t)))
(synopsis "Frontend for the llparse compiler")
(description "This package is a frontend for the llparse compiler.")
@@ -608,17 +611,17 @@ Node.js and web browsers.")
(define-public node-llparse-bootstrap
(package
(name "node-llparse")
(version "7.3.0")
(version "7.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nodejs/llparse.git")
(url "https://github.com/indutny/llparse.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"09hqjcynkz5iv7aydzdwgs42r7y2zylplv0ff7w0vkdsgb08j22a"))
"10da273iy2if88hp79cwms6c8qpsl1fkgzll6gmqyx5yxv5mkyp6"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -642,14 +645,10 @@ Node.js and web browsers.")
(add-after 'patch-dependencies 'delete-dependencies
(lambda args
(modify-json (delete-dependencies
`("@stylistic/eslint-plugin"
"@typescript-eslint/eslint-plugin"
"@typescript-eslint/parser"
"@types/debug"
`("@types/debug"
"@types/mocha"
"@types/node"
"esm"
"eslint"
"llparse-test-fixture"
"mocha"
"ts-node"
@@ -677,7 +676,7 @@ parser definition into a C output.")
(define-public llhttp-bootstrap
(package
(name "llhttp")
(version "9.3.0")
(version "9.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -686,7 +685,7 @@ parser definition into a C output.")
(file-name (git-file-name name version))
(sha256
(base32
"0yz4ys94pjq2fs2pihpqjvmxj2mbpm8k5prlm445z4qlajzlr4kb"))
"0mzg19aqb1am498gms0z75cwd5kmfg9p78b1hhxw67019nsjcbac"))
(patches (search-patches "llhttp-ponyfill-object-fromentries.patch"))
(modules '((guix build utils)))
(snippet
@@ -748,14 +747,14 @@ source files.")
(define-public node-lts
(package
(inherit node-bootstrap)
(version "24.14.1")
(version "22.14.0")
(source (origin
(method url-fetch)
(uri (string-append "https://nodejs.org/dist/v" version
"/node-v" version ".tar.gz"))
(sha256
(base32
"1cri5lp3a9jhh34dbd48hq2zyb7xjb9qs6zl36l3q2blawgwz642"))
"12msprh604s6qdsgwymxw4kl8ivaldbaydf4v37lbp02aznk2kkc"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -771,17 +770,13 @@ source files.")
"deps/icu-small"
"deps/nghttp2"
"deps/ngtcp2"
"deps/llhttp"
"deps/uv"
"deps/zlib"
"deps/zstd"))))))
"deps/zlib"))))))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags configure-flags)
''("--shared-cares"
"--shared-libuv"
"--shared-http-parser"
"--shared-http-parser-libname=llhttp"
"--shared-nghttp2"
"--shared-openssl"
"--shared-zlib"
@@ -789,7 +784,6 @@ source files.")
"--with-intl=system-icu"
"--shared-ngtcp2"
"--shared-nghttp3"
"--shared-zstd"
;;Needed for correct snapshot checksums
"--v8-enable-snapshot-compression"))
((#:phases phases)
@@ -852,11 +846,9 @@ source files.")
(for-each delete-file
'("test/parallel/test-https-agent-unref-socket.js"))
;; These tests are timing-sensitive, and fail sporadically on
;; This test is timing-sensitive, and fails sporadically on
;; slow, busy, or even very fast machines.
(for-each delete-file
'("test/parallel/test-fs-utimes.js"
"test/sequential/test-performance-eventloopdelay.js"))
(delete-file "test/parallel/test-fs-utimes.js")
;; FIXME: This test fails randomly:
;; https://github.com/nodejs/node/issues/31213
@@ -907,6 +899,18 @@ source files.")
"test/parallel/test-http2-invalid-last-stream-id.js")
(("client\\.connect\\(address\\)")
"client.connect(address.port)"))))
(add-after 'delete-problematic-tests 'replace-llhttp-sources
(lambda* (#:key inputs #:allow-other-keys)
;; Replace pre-generated llhttp sources
(let ((llhttp (assoc-ref inputs "llhttp")))
(copy-file (string-append llhttp "/src/llhttp.c")
"deps/llhttp/src/llhttp.c")
(copy-file (string-append llhttp "/src/api.c")
"deps/llhttp/src/api.c")
(copy-file (string-append llhttp "/src/http.c")
"deps/llhttp/src/http.c")
(copy-file (string-append llhttp "/include/llhttp.h")
"deps/llhttp/include/llhttp.h"))))
;; npm installs dependencies by copying their files over a tar
;; stream. A file with more than one hardlink is marked as a
;; "Link". pacote/lib/fetcher.js calls node-tar's extractor with a
@@ -931,22 +935,30 @@ source files.")
;; https://github.com/npm/pacote/issues/285
(add-after 'install 'ignore-number-of-hardlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((dir (string-append (assoc-ref outputs "out")
"/lib/node_modules/npm/node_modules"
"/tar/dist")))
(substitute*
(list (string-append dir "/esm/write-entry.js")
(string-append dir "/commonjs/write-entry.js"))
(let ((file (string-append (assoc-ref outputs "out")
"/lib/node_modules/npm/node_modules"
"/tar/lib/write-entry.js")))
(substitute* file
(("this.stat.nlink > 1") "false")))))
(replace 'fix-node-gyp-reference
(add-after 'install 'install-node-gyp-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(for-each
(lambda (spec)
(wrap-program (string-append out spec)
`("npm_package_config_node_gyp_nodedir" = (,out))))
'("/bin/npm"
"/bin/npx")))))))))
(let* ((out (assoc-ref outputs "out"))
(dir (string-append out "/lib/node_modules/npm/bin/node-gyp-bin"))
(file (string-append dir "/node-gyp")))
(mkdir-p dir)
;; See https://github.com/npm/cli/issues/6842
(call-with-output-file file
(lambda (port)
(format port "#!~a/bin/sh
if [ \"x$npm_config_node_gyp\" = \"x\" ]; then
~a/bin/node \"~a/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js\" \"$@\"
else
\"$npm_config_node_gyp\" \"$@\"
fi"
(assoc-ref inputs "bash")
out
out)))
(chmod file #o555))))))))
(native-inputs
(list ;; Runtime dependencies for binaries used as a bootstrap.
c-ares-for-node-lts
@@ -962,8 +974,7 @@ source files.")
pkg-config
procps
python
util-linux
gcc-14))
util-linux))
(inputs
(list bash-minimal
coreutils
@@ -976,8 +987,7 @@ source files.")
nghttp3
`(,nghttp2 "lib")
openssl-3.0
zlib
`(,zstd-1.5.7 "lib")))
zlib))
(supported-systems
(cons "riscv64-linux" (package-supported-systems node-bootstrap)))
(properties (alist-delete 'hidden? (package-properties node-bootstrap)))))
@@ -993,6 +1003,6 @@ source files.")
`(cons* "--shared" "--without-npm" ,flags))
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(delete 'fix-node-gyp-reference)
(delete 'install-npmrc)
(delete 'patch-nested-shebangs)
(delete 'ignore-number-of-hardlinks)))))))
+60 -2
View File
@@ -31,6 +31,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system qt)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
@@ -46,13 +47,16 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages scanner)
#:use-module (gnu packages xml)
#:use-module (gnu packages image))
#:use-module (gnu packages xml))
(define-public ocrad
(package
@@ -75,6 +79,60 @@ feature extraction method. It can read images in PBM, PGM or PPM formats and
it produces text in 8-bit or UTF-8 formats.")
(license license:gpl3+)))
(define-public python-pytesseract
(package
(name "python-pytesseract")
(version "0.3.13")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/madmaze/pytesseract")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16arn7ygk7ain5j5ayjcy10y6yhwfcc090i3r8q553m89rr1w0w1"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(map (lambda (name)
(string-append "--deselect=tests/pytesseract_test.py::" name))
;; These tests cannot find generated files
'("test_image_to_pdf_or_hocr[pdf]"
"test_run_and_get_multiple_output[extensions0]"
"test_run_and_get_multiple_output[extensions1]"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-tesseract-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "pytesseract/pytesseract.py"
(("tesseract_cmd = 'tesseract'")
(format #f "tesseract_cmd = '~a'"
(search-input-file inputs "/bin/tesseract"))))))
(add-before 'check 'set-tessdata-prefix
(lambda _
(setenv "TESSDATA_PREFIX"
;; needs "fra" language
(string-append #$(this-package-native-input
"tesseract-ocr-tessdata-fast")
"/share/tessdata")))))))
(native-inputs (list python-numpy
python-packaging
python-pandas
python-pytest
python-setuptools
tesseract-ocr
tesseract-ocr-tessdata-fast))
(inputs (list tesseract-ocr))
(propagated-inputs (list python-pandas python-pillow))
(home-page "https://github.com/madmaze/pytesseract")
(synopsis "Python wrapper for Google's Tesseract-OCR")
(description
"This package provides @command{pytesseract} and Python wrapper library
for Google's Tesseract-@acronym{OCR, optical character recognition}.")
(license license:asl2.0)))
(define-public tesseract-ocr-tessdata-fast
(package
(name "tesseract-ocr-tessdata-fast")
+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
@@ -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
+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
@@ -1,211 +0,0 @@
From bd4ee689a854252665fd607758f078d930fbc4c8 Mon Sep 17 00:00:00 2001
From: Ben Noordhuis <info@bnoordhuis.nl>
Date: Fri, 21 Nov 2025 11:56:28 +0100
Subject: [PATCH] Fix JS number rounding on x87 (#1244)
Disable 80-bits extended precision, use standard 64-bits precision.
The extra precision affects rounding and is user-observable, meaning
it causes test262 tests to fail.
The rounding mode is a per-CPU (or, more accurately, per-FPU) property,
and since quickjs is often used as a library, take care to tweak the FPU
control word before sensitive operations, and restore it afterwards.
Only affects x87. SSE is IEEE-754 conforming.
Fixes: https://github.com/quickjs-ng/quickjs/issues/1236
---
.github/workflows/ci.yml | 4 ++--
cutils.h | 19 +++++++++++++++++++
quickjs.c | 34 +++++++++++++++++++++++++++++-----
3 files changed, 50 insertions(+), 7 deletions(-)
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index d1efee1b9..c722b517d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -58,7 +58,7 @@ jobs:
- { os: ubuntu-latest, configType: asan+ubsan, runTest262: true }
- { os: ubuntu-latest, configType: msan }
- { os: ubuntu-latest, configType: tcc }
- - { os: ubuntu-latest, arch: x86 }
+ - { os: ubuntu-latest, arch: x86, runTest262: true }
- { os: ubuntu-latest, arch: riscv64 }
- { os: ubuntu-latest, arch: s390x }
@@ -97,7 +97,7 @@ jobs:
uses: jirutka/setup-alpine@v1
with:
arch: ${{ matrix.config.arch }}
- packages: "build-base make cmake"
+ packages: "build-base make cmake git"
- name: uname
run: uname -a
diff --git a/cutils.h b/cutils.h
index 5129c3cb2..f5d2a8bce 100644
--- a/cutils.h
+++ b/cutils.h
@@ -634,6 +634,25 @@ int js_thread_join(js_thread_t thrd);
#endif /* !defined(EMSCRIPTEN) && !defined(__wasi__) */
+// JS requires strict rounding behavior. Turn on 64-bits double precision
+// and disable x87 80-bits extended precision for intermediate floating-point
+// results. 0x300 is extended precision, 0x200 is double precision.
+// Note that `*&cw` in the asm constraints looks redundant but isn't.
+#if defined(__i386__) && !defined(_MSC_VER)
+#define JS_X87_FPCW_SAVE_AND_ADJUST(cw) \
+ unsigned short cw; \
+ __asm__ __volatile__("fnstcw %0" : "=m"(*&cw)); \
+ do { \
+ unsigned short t = 0x200 | (cw & ~0x300); \
+ __asm__ __volatile__("fldcw %0" : /*empty*/ : "m"(*&t)); \
+ } while (0)
+#define JS_X87_FPCW_RESTORE(cw) \
+ __asm__ __volatile__("fldcw %0" : /*empty*/ : "m"(*&cw))
+#else
+#define JS_X87_FPCW_SAVE_AND_ADJUST(cw)
+#define JS_X87_FPCW_RESTORE(cw)
+#endif
+
#ifdef __cplusplus
} /* extern "C" { */
#endif
diff --git a/quickjs.c b/quickjs.c
index 3970bb247..7900c5e3d 100644
--- a/quickjs.c
+++ b/quickjs.c
@@ -13395,12 +13395,17 @@ static int js_is_array(JSContext *ctx, JSValueConst val)
static double js_math_pow(double a, double b)
{
+ double d;
+
if (unlikely(!isfinite(b)) && fabs(a) == 1) {
/* not compatible with IEEE 754 */
- return NAN;
+ d = NAN;
} else {
- return pow(a, b);
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
+ d = pow(a, b);
+ JS_X87_FPCW_RESTORE(fpcw);
}
+ return d;
}
JSValue JS_NewBigInt64(JSContext *ctx, int64_t v)
@@ -13820,11 +13825,15 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
}
break;
case OP_div:
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_number((double)v1 / (double)v2);
+ JS_X87_FPCW_RESTORE(fpcw);
return 0;
case OP_mod:
if (v1 < 0 || v2 <= 0) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_number(fmod(v1, v2));
+ JS_X87_FPCW_RESTORE(fpcw);
return 0;
} else {
v = (int64_t)v1 % (int64_t)v2;
@@ -13888,6 +13897,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
if (JS_ToFloat64Free(ctx, &d2, op2))
goto exception;
handle_float64:
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
switch(op) {
case OP_sub:
dr = d1 - d2;
@@ -13907,6 +13917,7 @@ static no_inline __exception int js_binary_arith_slow(JSContext *ctx, JSValue *s
default:
abort();
}
+ JS_X87_FPCW_RESTORE(fpcw);
sp[-2] = js_float64(dr);
}
return 0;
@@ -14023,7 +14034,9 @@ static no_inline __exception int js_add_slow(JSContext *ctx, JSValue *sp)
}
if (JS_ToFloat64Free(ctx, &d2, op2))
goto exception;
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(d1 + d2);
+ JS_X87_FPCW_RESTORE(fpcw);
}
return 0;
exception:
@@ -17998,8 +18011,10 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(JS_VALUE_GET_FLOAT64(op1) +
JS_VALUE_GET_FLOAT64(op2));
+ JS_X87_FPCW_RESTORE(fpcw);
sp--;
} else {
add_slow:
@@ -18066,8 +18081,10 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
sp[-2] = js_float64(JS_VALUE_GET_FLOAT64(op1) -
JS_VALUE_GET_FLOAT64(op2));
+ JS_X87_FPCW_RESTORE(fpcw);
sp--;
} else {
goto binary_arith_slow;
@@ -18098,7 +18115,9 @@ static JSValue JS_CallInternal(JSContext *caller_ctx, JSValueConst func_obj,
sp[-2] = js_int32(r);
sp--;
} else if (JS_VALUE_IS_BOTH_FLOAT(op1, op2)) {
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
d = JS_VALUE_GET_FLOAT64(op1) * JS_VALUE_GET_FLOAT64(op2);
+ JS_X87_FPCW_RESTORE(fpcw);
mul_fp_res:
sp[-2] = js_float64(d);
sp--;
@@ -52277,7 +52296,9 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
int yi, mi, i;
int64_t days;
volatile double temp; /* enforce evaluation order */
+ double d = NAN;
+ JS_X87_FPCW_SAVE_AND_ADJUST(fpcw);
/* emulate 21.4.1.15 MakeDay ( year, month, date ) */
y = fields[0];
m = fields[1];
@@ -52287,7 +52308,7 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
if (mn < 0)
mn += 12;
if (ym < -271821 || ym > 275760)
- return NAN;
+ goto out;
yi = ym;
mi = mn;
@@ -52319,14 +52340,17 @@ static double set_date_fields(double fields[minimum_length(7)], int is_local) {
/* emulate 21.4.1.16 MakeDate ( day, time ) */
tv = (temp = day * 86400000) + time; /* prevent generation of FMA */
if (!isfinite(tv))
- return NAN;
+ goto out;
/* adjust for local time and clip */
if (is_local) {
int64_t ti = tv < INT64_MIN ? INT64_MIN : tv >= 0x1p63 ? INT64_MAX : (int64_t)tv;
tv += getTimezoneOffset(ti) * 60000;
}
- return time_clip(tv);
+ d = time_clip(tv);
+out:
+ JS_X87_FPCW_RESTORE(fpcw);
+ return d;
}
static JSValue get_date_field(JSContext *ctx, JSValueConst this_val,
@@ -1,26 +0,0 @@
From c211485e6f6c9fcd0ea9f5aa1943f8c95fdd186b Mon Sep 17 00:00:00 2001
From: Ben Noordhuis <info@bnoordhuis.nl>
Date: Sun, 9 Nov 2025 21:28:14 +0100
Subject: [PATCH] Fix Atomics.pause on 32 bits platforms
Use JS_VALUE_GET_NORM_TAG to get the type tag, not JS_VALUE_GET_TAG.
The latter doesn't work correctly with NaN boxing.
Refs: https://github.com/quickjs-ng/quickjs/issues/986#issuecomment-3508547332
---
quickjs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/quickjs.c b/quickjs.c
index 4fb9f95b7..3970bb247 100644
--- a/quickjs.c
+++ b/quickjs.c
@@ -57112,7 +57112,7 @@ static JSValue js_atomics_pause(JSContext *ctx, JSValueConst this_obj,
double d;
if (argc > 0) {
- switch (JS_VALUE_GET_TAG(argv[0])) {
+ switch (JS_VALUE_GET_NORM_TAG(argv[0])) {
case JS_TAG_FLOAT64: // accepted if and only if fraction == 0.0
d = JS_VALUE_GET_FLOAT64(argv[0]);
if (isfinite(d))
@@ -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
+33 -32
View File
@@ -31,6 +31,7 @@
;;; Copyright © 2024 Aaron Covrig <aaron.covrig.us@ieee.org>
;;; Copyright © 2025 Jussi Timperi <jussi.timperi@iki.fi>
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Daniel Littlewood <dan@danielittlewood.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1611,41 +1612,41 @@ information for every pixel as the input.")
"0f242mix20rgsqz1llibhsz4r2pbvx6k32rmky0zjvnbaqaw1dwm"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-FHS-file-names
(lambda _
(substitute* "mk/Autoconf.mk"
(("/bin/echo") "echo")
(("/sbin/ldconfig -p") "echo lib")) #t))
(add-before 'build 'set-fcommon
(lambda _
(setenv "CFLAGS" "-fcommon")))
(delete 'configure))
#:tests? #f
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out")))))
(inputs `(("libjpeg" ,libjpeg-turbo)
("curl" ,curl)
("libtiff" ,libtiff)
("libudev" ,eudev)
("libwebp" ,libwebp)
("libdrm" ,libdrm)
("giflib" ,giflib)
("glib" ,glib)
("cairo-xcb" ,cairo-xcb)
("freetype" ,freetype)
("fontconfig" ,fontconfig)
("libexif" ,libexif)
("mesa" ,mesa)
("libepoxy" ,libepoxy)
("libpng" ,libpng)
("poppler" ,poppler)))
(list
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-FHS-file-names
(lambda _
(substitute* "mk/Autoconf.mk"
(("/bin/echo") "echo")
(("/sbin/ldconfig -p") "echo lib"))))
(add-before 'build 'set-fcommon
(lambda _
(setenv "CFLAGS" "-fcommon")))
(delete 'configure))
#:tests? #f
#:make-flags #~(list (string-append "CC=" #+(cc-for-target))
(string-append "prefix=" #$output))))
(inputs
(list cairo-xcb
curl
eudev
fontconfig
freetype
giflib
glib
libdrm
libepoxy
libexif
libjpeg-turbo
libpng
libtiff
libwebp
mesa
poppler))
(native-inputs (list pkg-config))
(synopsis "Framebuffer and drm-based image viewer")
(description
"fbida contains a few applications for viewing and editing images on
"fbida contains a few applications for viewing and editing images on
the framebuffer.")
(license license:gpl2+)))
+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.12")
(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 "0mpzpc69agcnp2dnay08z7xjx0zq2b77ddd2kds1w6qlh2fc36s9"))
(base32 "1342xcpjmryn0l3v8wmg7w6pjvsk42c84cr9xbah36dwhj8s354z"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
+99
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")
@@ -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"
-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 '())))
+6 -6
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
@@ -1509,7 +1509,7 @@ defaults for 80% of the use cases.")
(define-public gitlogue
(package
(name "gitlogue")
(version "0.8.0")
(version "0.9.0")
(source
(origin
(method git-fetch)
@@ -1519,7 +1519,7 @@ defaults for 80% of the use cases.")
(file-name (git-file-name name version))
(sha256
(base32
"007sf2b605jkjk4qyxar1bq7fh71yvv9ixsxfqrs3hzschyj3m2g"))
"008cqcc4kjandfi6pqrnr689xb11d6fdhcb48kbv0227v3f5gvn3"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -3360,7 +3360,7 @@ command.")
(define-public wasm-bindgen-cli
(package
(name "wasm-bindgen-cli")
(version "0.2.118")
(version "0.2.120")
(source
(origin
(method git-fetch)
@@ -3369,7 +3369,7 @@ command.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "02yy57pa4p53vrhpgc8xf737dnqiifnnnjinh49yq1345kd3287j"))
(base32 "0404jgzfcbmjvr1zl9jgw49nqs1s182cbvdzwh92i76qd2cpg166"))
(modules '((guix build utils)))
(snippet
'(begin
+2588 -2347
View File
File diff suppressed because it is too large Load Diff
+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.
+14 -2
View File
@@ -48,6 +48,7 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages emacs)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
@@ -272,13 +273,24 @@ efficiency through the use of a compact vector representation of n-grams.")
;; Disable support for proprietary TTS engines.
"--with-voxin=no" "--with-ibmtts=no"
"--with-kali=no" "--with-baratinoo=no")
#:imported-modules ,%pyproject-build-system-modules
#:modules ((guix build gnu-build-system)
((guix build pyproject-build-system)
#:prefix python:)
(guix build utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-bin-bash
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/modules/generic.c"
(("/bin/bash")
(search-input-file inputs "/bin/bash"))))))))
(search-input-file inputs "/bin/bash")))))
(add-after 'install 'wrap-spd-conf
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (search-input-file outputs "bin/spd-conf")
`("GUIX_PYTHONPATH" =
(,(getenv "GUIX_PYTHONPATH")
,(python:site-packages inputs outputs)))))))))
(native-inputs
(list autoconf
automake
@@ -297,7 +309,7 @@ efficiency through the use of a compact vector representation of n-grams.")
pipewire
pulseaudio
python
python-xdg-base-dirs))
python-pyxdg))
(synopsis "Common interface to speech synthesizers")
(description "The Speech Dispatcher project provides a high-level
device independent layer for access to speech synthesis through a simple,
+3 -3
View File
@@ -118,13 +118,13 @@ is in the public domain.")
(define-public sqlite-next
(package
(inherit sqlite)
(version "3.51.0")
(version "3.53.0")
(source (origin
(method url-fetch)
(uri (sqlite-uri version 2025))
(uri (sqlite-uri version 2026))
(sha256
(base32
"19bc2inw7f9fn0y6j3b57w4mk6bzi2q8hp5yn6qyd8kav7ynvqj2"))))
"0ninfc6kh0idcslsdlcv7l6261pswxjsdfp0cnmcxqig34w9n7l5"))))
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #f)
+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")
+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)
+11 -8
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")
@@ -3358,7 +3361,7 @@ compository, supporting the following features:
(define-public waybar
(package
(name "waybar")
(version "0.14.0")
(version "0.15.0")
(source
(origin
(method git-fetch)
@@ -3367,7 +3370,7 @@ compository, supporting the following features:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1b1783382y38mzzrzw53p20lwpfs0n2npqbs91j9ddgg6xk82s4q"))))
(base32 "1ify8zywlq6zrmbzp293q72pnzy3czkvrb4zia2xnsvsmy04mmp3"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "--wrap-mode=nodownload")))
+1 -1
View File
@@ -116,7 +116,7 @@ knowledge of the Z-Wave protocol.")
(lambda _
(substitute* "binding.gyp"
(("std=c\\+\\+11")
"std=c++20"))))
"std=c++17"))))
(replace 'build
;; For some reason, `npm install` doesn't build
;; the addon automatically, so we do it explicitly here.
+7 -1
View File
@@ -216,6 +216,10 @@
syslog-configuration
syslog-configuration?
syslog-configuration-syslogd
syslog-configuration-config-file
syslog-configuration-pid-file
syslog-configuration-extra-options
syslog-service ; deprecated
syslog-service-type
%default-syslog.conf
@@ -1686,6 +1690,8 @@ mail.* -/var/log/maillog
(default (file-append inetutils "/libexec/syslogd")))
(config-file syslog-configuration-config-file
(default %default-syslog.conf))
(pid-file syslog-configuration-pid-file
(default "/var/run/syslog.pid"))
(extra-options syslog-configuration-extra-options
(default '())))
@@ -1721,7 +1727,7 @@ reload its settings file.")))
"-f" #$syslog.conf
#$@(syslog-configuration-extra-options config))
#:file-creation-mask #o137
#:pid-file "/var/run/syslog.pid"))
#:pid-file #$(syslog-configuration-pid-file config)))
(stop #~(make-kill-destructor))))
(define %default-syslog-files
+3 -1
View File
@@ -801,7 +801,9 @@ port=" (number->string port) "
(list (service-extension account-service-type
(const %mysql-accounts))
(service-extension shepherd-root-service-type
mysql-shepherd-services)))
mysql-shepherd-services)
(service-extension profile-service-type
(compose list mysql-configuration-mysql))))
(default-value (mysql-configuration))
(description "Run the MySQL or MariaDB database server,
@command{mysqld}.")))
+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
+7 -13
View File
@@ -30,16 +30,10 @@
#:use-module (guix search-paths)
#:use-module (guix build-system)
#:use-module (guix build-system gnu)
#:export (%default-lockfiles
%node-build-system-modules
#:export (%node-build-system-modules
node-build
node-build-system))
(define %default-lockfiles
(list "package-lock.json"
"yarn.lock"
"npm-shrinkwrap.json"))
(define %node-build-system-modules
;; Build-side modules imported by default.
`((guix build node-build-system)
@@ -53,10 +47,6 @@
"Return the default Node package, resolved lazily."
(@* (gnu packages node) node-lts))
(define (default-guile-json)
"Return the default guile-json package, resolved lazily."
(@* (gnu packages guile) guile-json-4))
(define* (lower name
#:key source inputs native-inputs outputs system target
(node (default-node))
@@ -88,12 +78,17 @@
(build node-build)
(arguments (strip-keyword-arguments private-keywords arguments)))))
(define (default-guile-json)
"Return the default guile-json package."
;; Lazily resolve the binding to avoid a circular dependency.
(let ((mod (resolve-interface '(gnu packages guile))))
(module-ref mod 'guile-json-4)))
(define* (node-build name inputs
#:key
source
(npm-flags ''())
(test-target "test")
(lockfiles %default-lockfiles)
(tests? #t)
(phases '%standard-phases)
(outputs '("out"))
@@ -115,7 +110,6 @@
#:system #$system
#:npm-flags #$npm-flags
#:test-target #$test-target
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:phases #$phases
#:outputs #$(outputs->gexp outputs)
-4
View File
@@ -105,7 +105,6 @@
source
(phases '%standard-phases)
(grammar-directories '("."))
(lockfiles %default-lockfiles)
(tests? #t)
(outputs '("out" "js"))
(search-paths '())
@@ -124,7 +123,6 @@
#:source #+source
#:system #$system
#:phases #$phases
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:grammar-directories '#$grammar-directories
#:outputs #$(outputs->gexp outputs)
@@ -147,7 +145,6 @@
guile source
(phases '%standard-phases)
(grammar-directories '("."))
(lockfiles %default-lockfiles)
(tests? #t)
(outputs '("out" "js"))
(search-paths '())
@@ -182,7 +179,6 @@
#:build #$build
#:target #$target
#:phases #$phases
#:lockfiles '#$lockfiles
#:tests? #$tests?
#:grammar-directories '#$grammar-directories
#:outputs #$(outputs->gexp outputs)
+116 -78
View File
@@ -5,7 +5,6 @@
;;; Copyright © 2021, 2022 Philip McGrath <philip@philipmcgrath.com>
;;; Copyright © 2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2024 Daniel Khodabakhsh <d.khodabakhsh@gmail.com>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,7 +29,6 @@
#:use-module (ice-9 match)
#:use-module (json)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-71)
#:export (%standard-phases
delete-dependencies
@@ -42,6 +40,34 @@
replace-fields
with-atomic-json-file-replacement))
(define* (assoc-ref* alist key #:optional default)
"Like assoc-ref, but return DEFAULT instead of #f if no value exists."
(match (assoc key alist)
(#f default)
((_ . value) value)))
(define* (alist-pop alist key #:optional (= equal?))
"Return two values, the first pair in ALIST with key KEY, and the other
elements. Equality calls are made as (= KEY ALISTCAR)."
(define (found? pair)
(= key (car pair)))
(let ((before after (break found? alist)))
(if (pair? after)
(values (car after) (append before (cdr after)))
(values #f before))))
(define* (alist-update alist key proc #:optional (= equal?))
"Return an association list like ALIST, but with KEY mapped to the result of
PROC applied to the first value found under the comparison (= KEY ALISTCAR).
If no such value exists, return the list unchanged.
Unlike acons, this removes the previous association of KEY (assuming it is
unique), but the result may still share storage with ALIST."
(let ((pair rest (alist-pop alist key =)))
(if (pair? pair)
(acons key (proc (cdr pair)) rest)
alist)))
;;;
;;; package.json modification procedures
;;;
@@ -80,19 +106,23 @@ listed in 'dependencies-to-remove', a list of strings naming npm packages.
To prevent the deleted dependencies from being reintroduced, use this function
only after the 'patch-dependencies' phase."
(let ((predicate (lambda (dependency)
(member (car dependency) dependencies-to-remove)))
(dependency? (cut member <> (list "devDependencies"
"dependencies"
"peerDependencies"
"optionalDependencies"))))
(lambda (pkg-meta)
(map (match-lambda
(((? dependency? key) . dependencies)
(cons key (remove predicate dependencies)))
(otherwise
otherwise))
pkg-meta))))
(lambda (pkg-meta)
(fold
(lambda (dependency-key pkg-meta)
(alist-update
pkg-meta
dependency-key
(lambda (dependencies)
(remove
(lambda (dependency)
(member (car dependency) dependencies-to-remove))
dependencies))))
pkg-meta
(list
"devDependencies"
"dependencies"
"peerDependencies"
"optionalDependencies"))))
(define* (modify-json-fields
fields
@@ -206,7 +236,8 @@ only after the 'patch-dependencies' phase."
(begin
(mkdir dir)
(setenv "HOME" (string-append (getcwd) "/" dir))
(format #t "set HOME to ~s~%" (getenv "HOME"))))))))
(format #t "set HOME to ~s~%" (getenv "HOME")))))))
#t)
(define (module-name module)
(let* ((package.json (string-append module "/package.json"))
@@ -226,65 +257,67 @@ only after the 'patch-dependencies' phase."
(for-each (lambda (dir)
(let ((nm (string-append dir "/lib/node_modules")))
(for-each (lambda (module)
(hash-set! index (module-name module)
(string-append "file://" module)))
(hash-set! index (module-name module) module))
(list-modules nm))))
input-paths)
index))
(define* (patch-dependencies #:key inputs #:allow-other-keys)
"Replace versions by paths when found among INPUTS in `package.json'."
(define resolve-dependencies
(let ((index (index-modules (map cdr inputs))))
(cut map
(match-lambda
((dependency . version)
(cons dependency (hash-ref index dependency version))))
<>)))
(define index (index-modules (map cdr inputs)))
(define (resolve key getter)
(define (resolve-dependencies dependencies)
(map
(match-lambda
((dependency . version)
(cons dependency (hash-ref index dependency version))))
dependencies))
(with-atomic-json-file-replacement
(lambda (pkg-meta)
(assoc-set! pkg-meta key
(resolve-dependencies (getter pkg-meta)))))
(fold
(lambda (proc pkg-meta) (proc pkg-meta))
pkg-meta
(list
(lambda (pkg-meta)
(alist-update pkg-meta "devDependencies" resolve-dependencies))
(lambda (pkg-meta)
(assoc-set!
pkg-meta
"dependencies"
(resolve-dependencies
; Combined "peerDependencies" and "dependencies" dependencies
; with "dependencies" taking precedent.
(fold
(lambda (dependency dependencies)
(assoc-set! dependencies (car dependency) (cdr dependency)))
(assoc-ref* pkg-meta "peerDependencies" '())
(assoc-ref* pkg-meta "dependencies" '())))))))))
#t)
(modify-json
(resolve "devDependencies"
(lambda (pkg-meta)
(or (assoc-ref pkg-meta "devDependencies") '())))
(resolve "dependencies"
;; Combined "peerDependencies" and "dependencies" dependencies
;; with "dependencies" taking precedent.
(lambda (pkg-meta)
(fold
(lambda (dependency dependencies)
(assoc-set! dependencies
(car dependency) (cdr dependency)))
(or (assoc-ref pkg-meta "peerDependencies") '())
(or (assoc-ref pkg-meta "dependencies") '()))))))
(define* (delete-lockfiles #:key lockfiles #:allow-other-keys)
"Delete LOCKFILES if they exist."
(define* (delete-lockfiles #:key inputs #:allow-other-keys)
"Delete 'package-lock.json', 'yarn.lock', and 'npm-shrinkwrap.json', if they
exist."
(for-each (lambda (pth)
(when (file-exists? pth)
(delete-file pth)))
lockfiles))
'("package-lock.json"
"yarn.lock"
"npm-shrinkwrap.json"))
#t)
(define* (configure #:key inputs #:allow-other-keys)
(define* (configure #:key outputs inputs #:allow-other-keys)
(let ((npm (string-append (assoc-ref inputs "node") "/bin/npm")))
(invoke npm "--offline"
"--ignore-scripts"
"--install-links"
"--no-audit"
"install")))
(invoke npm "--offline" "--ignore-scripts" "--install-links" "install")
#t))
(define* (build #:key inputs #:allow-other-keys)
(let* ((package-meta (call-with-input-file "package.json" json->scm))
(scripts (assoc-ref package-meta "scripts")))
(if (and scripts (assoc-ref scripts "build"))
(let ((package-meta (call-with-input-file "package.json" json->scm)))
(if (assoc-ref* (assoc-ref* package-meta "scripts" '()) "build" #f)
(let ((npm (string-append (assoc-ref inputs "node") "/bin/npm")))
(invoke npm "run" "build"))
(format #t "there is no build script to run~%"))))
(format #t "there is no build script to run~%"))
#t))
(define* (check #:key tests? inputs test-target #:allow-other-keys)
"Run 'npm run TEST-TARGET' if TESTS?"
@@ -301,7 +334,8 @@ only after the 'patch-dependencies' phase."
"--owner=0"
"--group=0"
"--numeric-owner"
"-czf" "../package.tgz" "."))
"-czf" "../package.tgz" ".")
#t)
(define* (install #:key outputs inputs #:allow-other-keys)
"Install the node module to the output store item."
@@ -313,7 +347,8 @@ only after the 'patch-dependencies' phase."
"--loglevel" "info"
"--production"
"--install-links"
"install" "../package.tgz")))
"install" "../package.tgz")
#t))
(define* (avoid-node-gyp-rebuild #:key outputs #:allow-other-keys)
"Adjust the installed 'package.json' to remove an 'install' script that
@@ -341,25 +376,28 @@ would try to run 'node-gyp rebuild'."
;; For further details, see:
;; - https://docs.npmjs.com/cli/v8/configuring-npm/package-json#default-values
;; - https://docs.npmjs.com/cli/v8/using-npm/scripts#best-practices
(let* ((installed-package.json
(search-input-file outputs (string-append "/lib/node_modules/"
(module-name ".")
"/package.json")))
;; We don't want to use an atomic replacement here, because we often
;; don't even need to overwrite this file. Therefore, let's use some
;; helpers that we'd otherwise not need.
(pkg-meta (call-with-input-file installed-package.json json->scm))
(scripts (or (assoc-ref pkg-meta "scripts") '())))
(when (equal? "node-gyp rebuild" (assoc-ref scripts "install"))
(call-with-output-file installed-package.json
(lambda (out)
(scm->json
(assoc-set! pkg-meta
"scripts"
(assoc-set! scripts
"install"
"echo Guix: avoiding node-gyp rebuild"))
out))))))
(define installed-package.json
(search-input-file outputs (string-append "/lib/node_modules/"
(module-name ".")
"/package.json")))
;; We don't want to use an atomic replacement here, because we often don't
;; even need to overwrite this file. Therefore, let's use some helpers
;; that we'd otherwise not need.
(define pkg-meta
(call-with-input-file installed-package.json json->scm))
(define scripts
(assoc-ref* pkg-meta "scripts" '()))
(when (equal? "node-gyp rebuild" (assoc-ref* scripts "install" #f))
(call-with-output-file installed-package.json
(lambda (out)
(scm->json
(assoc-set! pkg-meta
"scripts"
(assoc-set! scripts
"install"
"echo Guix: avoiding node-gyp rebuild"))
out)))))
(define %standard-phases
(modify-phases gnu:%standard-phases
+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))
+4 -4
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2024, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
@@ -703,7 +703,7 @@ values.")))))))))
(loop tail 'regular
(append (append-map
for-type
(ensure-list (load* file (make-user-module '()))))
(ensure-list (load* file '())))
result))))
(('manifest . manifest)
;; Otherwise '--system' is ignored.
@@ -715,8 +715,8 @@ values.")))))))))
(manifest-entries
(ensure-manifest
(load* manifest
(make-user-module '((guix profiles)
(gnu))))
'((guix profiles)
(gnu)))
manifest)))
result))))
(('expression . str)
+4 -4
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 David Thompson <davet@gnu.org>
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.org>
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020-2022, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2024 Richard Sent <richard@freakingpenguin.com>
;;; Copyright © 2025 Arun Isaac <arunisaac@systemreboot.net>
;;;
@@ -120,9 +120,9 @@ Perform the deployment specified by FILE.\n"))
"Load FILE as a user module."
(let* ((guix-path (dirname (search-path %load-path "guix.scm")))
(environment-modules (scheme-modules* guix-path "gnu/machine"))
(module (make-user-module (append '((gnu) (gnu machine))
environment-modules))))
(load* file module)))
(modules (append '((gnu) (gnu machine))
environment-modules)))
(load* file modules)))
(define* (show-what-to-deploy machines #:key (dry-run? #f) (roll-back? #f))
"Show the list of machines in MACHINES to deploy or roll back."
+4 -5
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2018 David Thompson <davet@gnu.org>
;;; Copyright © 2015-2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Mike Gerwitz <mtg@gnu.org>
;;; Copyright © 2022, 2023 John Kehayias <john.kehayias@protonmail.com>
;;;
@@ -319,8 +319,8 @@ use '--preserve' instead~%"))
(define (load-manifest file) ;TODO: factorize
"Load the user-profile manifest (Scheme code) from FILE and return it."
(let ((user-module (make-user-module '((guix profiles) (gnu)))))
(load* file user-module)))
(let ((modules '((guix profiles) (gnu))))
(load* file modules)))
(define (options/resolve-packages store opts)
"Return OPTS with package specification strings replaced by manifest entries
@@ -369,8 +369,7 @@ for the corresponding packages."
(packages->outputs (read/eval str) mode))
(('load mode file)
;; Add all the outputs of the package defined in FILE.
(let ((module (make-user-module '())))
(packages->outputs (load* file module) mode)))
(packages->outputs (load* file '()) mode))
(('manifest . file)
(manifest-entries (load-manifest file)))
(('nesting? . #t)

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