1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-07 04:54:09 +02:00

Compare commits

...

240 Commits

Author SHA1 Message Date
Liliana Marie Prikler 804c8104a3 gnu: emacs: Add lexical binding cookies.
* gnu/packages/emacs.scm (emacs-minimal)[#:phases]<install-c-source>
<install-site-start>: Add “;; -*- lexical-binding: t; -*-” at the top of the
generated files.
* gnu/packages/aux-files/emacs/comp-integrity.el: Likewise.
2026-05-12 09:58:30 +02:00
bdunahu 9492cfa45b gnu: emacs: Fix ‘alpha-background’ frame parameter.
* gnu/packages/emacs.scm (emacs)[inputs]: Add libxrender and libxt.

Change-Id: If0726a04956683e32747524b11656f5c267be8a4
Co-authored-by: Sviatoslav Bulbakha <mail@ssbb.me>
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Fixes: guix/guix#6490 (alpha-background frame parameter does nothing)
Fixes: https://issues.guix.gnu.org/71627 (likewise)
2026-05-12 09:58:30 +02:00
Liliana Marie Prikler ea5bccd423 build: emacs-build-system: Respect “Package-Version”.
Unlike the builtin ‘package-buffer-info’, the ‘write-pkg-file’ procedure
previously ignored the “Package-Version” header, leading to wrongly reported
version numbers when an actual version would have been available.

* guix/build/emacs-build-system.scm (ensure-package-description): Check for
“package-version” header before invoking ‘lm-version’.

Fixes: guix/guix#5462 (‘emacs-build-system’ generates wrong package versions)
2026-05-12 09:58:30 +02:00
Patrick Norton 9abc0a2288 gnu: Add mps.
* gnu/packages/c.scm (mps): New variable.

Change-Id: I1dfc6bdc37c252a9488b412f06970890222a453d
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-12 09:40:24 +02:00
Danny Milosavljevic 2a210ec364 gnu: Add accerciser.
* gnu/packages/gnome.scm (accerciser): New variable.

Change-Id: I5cad3737920881d3c5f73b116f2f2e18fc587ea6
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-12 09:40:18 +02:00
Sughosha 78c8ab5782 gnu: Add jolt-physics.
* gnu/packages/game-development.scm (jolt-physics): New variable.

Change-Id: Ib9393401acd973199d0f2559760a8d07220cdc82
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-12 09:40:06 +02:00
Nicolas Graves 4fca464f91 gnu: ganeti: Update to 3.1.0.
* gnu/packages/patches/ganeti-openssh-test-fix.patch: Delete file.
* gnu/packages/patches/ganeti-procps-compat.patch: Likewise.
* gnu/packages/patches/ganeti-pyyaml-compat.patch: Likewise.
* gnu/packages/patches/ganeti-relax-dependencies.patch: Likewise
* gnu/packages/patches/ganeti-reorder-arbitrary-definitions.patch:
  Likewise.
* gnu/packages/patches/ganeti-sphinx-import.patch: Likewise.
* gnu/packages/patches/ganeti-template-haskell-2.17.patch: Likewise.
* gnu/packages/patches/ganeti-template-haskell-2.18.patch: Likewise.
* gnu/local.mk: Unregister them.
* gnu/packages/virtualization.scm (ganeti): Update to 3.1.0.
  [source]<patches>: Drop the above patches.
  [arguments]<#:imported-modules, #:modules>:
  Drop haskell build-system modules.
  <#:phases>{configure-haskell, do-not-use-GHC_PACKAGE_PATH}:
  Delete phases.
  {patch-absolute-file-names, adjust-tests, pre-check}
  {install-bash-completions}.  Refresh file names.
  Use srfi-26's cut when adequate.
  [native-inputs]: Drop input labels.
  [inputs]: Add ghc-case-insensitive, ghc-monad-control, ghc-parallel,
  ghc-random, ghc-transformers-base.  Remove ghc-psqueue.

Merges: https://codeberg.org/guix/guix/pulls/8330
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-12 14:08:40 +09:00
Ashish SHUKLA 204baea3ef gnu: ugrep: Update to 7.8.1
* gnu/packages/search.scm (ugrep): Update to 7.8.1.

Change-Id: I867832cd5a75df5c80b9f74ad0fdda141f03fbf5
Merges: https://codeberg.org/guix/guix/pulls/8333
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-12 14:07:30 +09:00
Jelle Licht 911271ca56 gnu: emacs-apheleia: Include formatter scripts.
* gnu/packages/emacs-xyz.scm (emacs-apheleia)[arguments]<#:include>:
  Install formatter scripts directory.
  <#:exclude>: Filter out minified JavaScript file.
  [source, home-page]: Update to radian-software URL.

Change-Id: Ib7186efb178fd7001b68d2f8b5bce269afb714ab
Reviewed-by: Cayetano Santos <csantosb@inventati.org>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-12 14:05:24 +09:00
Spencer King 3d2b6612b3 gnu: Add julia-quantuminterface.
* gnu/packages/julia-xyz.scm (julia-quantuminterface): New variable.

Change-Id: I40159a4f5a085e5a0637fa51b2f89cd4b6a299ab
Merges: https://codeberg.org/guix/guix/pulls/5923
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-12 13:36:27 +09:00
Noé Lopez d6cca68094 gnu: cdrdao: Update to 1.2.6.
* gnu/packages/cdrom.scm (cdrdao): Update to 1.2.6.
[arguments]: Switch to list of g-exps style.
<#:configure-flags>: Enable building gcdmaster.
<#:phases>: Remove 'fix-configure.ac phase.
[build-system]: Switch to glib-or-gtk build system for gcdmaster.
[native-inputs]: Switch to more recent autoconf.
[inputs]: Add gtkmm-3 and libsigc++-2.

Change-Id: I921ca030ef42e2b00f9d35710475ba3450753f9d
Signed-off-by: Sughosha <sughosha@disroot.org>
2026-05-12 09:09:50 +05:30
Maxim Cournoyer 7b478ce184 gnu: emacs-fj: Update to 0.37.
* gnu/packages/emacs-xyz.scm (emacs-fj): Update to 0.37.
[#:test-command]: Add 'CASK=' to command.
[#:phases]: Delete.

Change-Id: I4c9cb0fc1afb40e6480fb55747379dabd1fdeb23
2026-05-12 12:16:42 +09:00
Efraim Flashner 4dc59ee36b gnu: rust-crates: Remove some rust crates.
These crates were mentioned specifically by cargo audit.

* gnu/packages/rust-crates.scm: Remove some unused crates.

Change-Id: I6e847a1373811c15eae222ddbcde1649e5349267
2026-05-11 19:47:44 +03:00
Efraim Flashner 0efd01162f gnu: python-bed-reader: Update rust dependencies.
Addresses rust security advisories.

* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[python-bed-reader]:
Update entry.

Change-Id: I0d4e1415040a32f65542c3bb01ed64119166ac65
2026-05-11 19:47:44 +03:00
Efraim Flashner 76b3f5be20 gnu: rust-cargo-edit: Update to 0.13.10.
* gnu/packages/rust-apps.scm (rust-cargo-edit): Update to 0.13.10.
[inputs]: Remove libgit2-1.8, add libgit2-1.9.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[rust-cargo-edit]:
Update entry.

Change-Id: I666c6c74ca4c1d9b16dbf90e2267c867cb863877
2026-05-11 19:47:44 +03:00
Efraim Flashner 5e2ce939a5 gnu: pastel: Install shell-completions, man-pages.
* gnu/packages/rust-apps.scm (pastel)[arguments]: Add a phase to install
the shell completions and the man-pages.

Change-Id: Ia2e144dc0d54ff46adc65feebc9ac101e72eb32c
2026-05-11 19:47:44 +03:00
Efraim Flashner f3939bbcd1 gnu: pastel: Update to 0.12.0.
* gnu/packages/rust-apps.scm (pastel): Update to 0.12.0.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[pastel]: Update
entry.

Change-Id: Ie88725741f157202a47440d8b41da390deccb3a8
2026-05-11 19:47:44 +03:00
Efraim Flashner 61065a5384 gnu: evil-helix: Update rust dependencies.
Addresses rust security advisories.

* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[evil-helix]: Update
entry.

Change-Id: Ifbc2fe12628652c46a0cdb0f96eae1831d9650f0
2026-05-11 19:47:44 +03:00
Efraim Flashner 698559a3aa gnu: helix: Update rust dependencies.
Addresses rust security advisories.

* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[helix]: Update
entry.

Change-Id: I594f2e1a976223dfe91c9fc7d13c3599fdbd76b2
2026-05-11 19:47:44 +03:00
Yappaholic 5f5d345f53 gnu: Add xmake.
* gnu/packages/build-tools.scm (xmake): New variable.

Change-Id: I3a84e5be66635c745c3ae9f52c109af10dfec742
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8360
2026-05-11 17:49:11 +02:00
Ludovic Courtès 2cbe77f480 doc: cookbook: Add links from “Packaging Tutorial” to the manual.
* doc/guix-cookbook.texi (A ``Hello World'' package): Add link to “origin
Reference” and adjust markup.
(Extended example): Link to “origin Reference”.  Fix markup.  Link to
“Packages with Multiple Outputs”, “Build Systems”, “Build Phases”, and
“G-Expressions”.  Adjust reference to the Guile manual.
(Inheritance): Link to “Defining Package Variants”.
(References): Use @xref to reference the manual.

Change-Id: Ifa605adc1c91f2735b66005c8a7412f60cdb4484
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8392
2026-05-11 17:49:11 +02:00
Nox 1ddcd976a0 gnu: rmpc: Update to 0.11.0.
* gnu/packages/mpd.scm (rmpc): Update to 0.11.0.
[home-page]: Update to new URI.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[rmpc]: Update entry.

Change-Id: I8f509a2019d699a8271e50de7b92c7934904d2af
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-11 18:01:52 +03:00
Efraim Flashner 8fc4664f0e gnu: sequoia: Update to 2.3.0.
Addresses rust security advisories, including CVE-2026-42783,
CVE-2026-42784.

* gnu/packages/sequoia.scm (sequoia): Update to 2.3.0.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)
[sequoia-chameleon-gnupg, sequoia-sq, sequioa-sqv, sequoia-wot-tools]:
Update entries.

Change-Id: Ic53219aae620e7405a43f5d17cecdebf35179b62
2026-05-11 17:20:20 +03:00
Efraim Flashner b56f9d2271 gnu: stalwart: Update rust dependencies.
Addresses rust security advisories.

* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[stalwart]: Update
entry.

Change-Id: Ib4d6444dea06b71dec5fa36a1baecd6fa7389607
2026-05-11 17:05:57 +03:00
Andreas Enge 5bb8ff2edd services: bffe-shepherd-services: Fix detection of guile.
This partially reverts commit 3b53789393 .

* gnu/services/guix.scm (bffe-shepherd-services): Use the package,
not the variable name.

Change-Id: I3bd34b369528e72f08ee3d5833b30bf073b585d2
2026-05-11 14:31:03 +02:00
Zheng Junjie 295db2baea gnu: Add vaultwarden.
* gnu/packages/password-utils.scm (vaultwarden): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Add vaultwarden.

Change-Id: I950a3b5044221bb8b3aa8a56a9b8b367b09cfc6f
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-11 14:54:46 +03:00
Maxim Cournoyer eb9379c682 doc: Regenerate menus.
* doc/guix.texi: Regenerate menus.

Change-Id: If0394687ad607c7b869147733d38d609767a125e
2026-05-11 20:31:38 +09:00
Maxim Cournoyer 54e92a3c05 machine: hetzner: Refine installation with bind mount in rescue.
This reverts commit 3e1befe1d8 ("machine: hetzner: Fix deployment."),
adopting a simpler/correct alternative.

* gnu/machine/hetzner.scm (hetzner-machine-rescue-install-os): Bind mount
/gnu, not /gnu/store.

Change-Id: I09ffb4db8a39b4bcd5e7645aee63427c6bc969a0
Suggested-by: Rutherther <rutherther@ditigal.xyz>
2026-05-11 20:31:36 +09:00
Zheng Junjie 436aeea0bf gnu: stalwart-cli: Update to 1.0.5.
* gnu/packages/mail.scm (stalwart-cli): Update to 1.0.5.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update stalwart-cli inputs.

Change-Id: Ie3979a947a93170669ae7d20092793adf307cc63
2026-05-11 13:37:11 +03:00
Zheng Junjie a310d46cdd gnu: stalwart: Update to 0.16.4.
* gnu/packages/mail.scm (stalwart): Update to 0.16.4.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update stalwart inputs.

Change-Id: Ic005264588844f54efd01716ed35516a95c6d761
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-05-11 13:36:24 +03:00
Efraim Flashner 25632f9412 gnu: py-spy: Adjust custom phase.
* gnu/packages/rust-apps.scm (py-spy)[arguments]: Rewrite the phase to
install the shell completions.

Change-Id: I3cd2bc1a68a351e621282ed7a5d13358886ad313
2026-05-11 13:13:59 +03:00
Efraim Flashner 97731feda5 gnu: py-spy: Update to 0.4.2.
* gnu/packages/rust-apps.scm (py-spy): Update to 0.4.2.
[arguments]: Add cargo-test-flags.
[inputs]: Remove libunwind.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[py-spy]: Update
entry.

Change-Id: I039d888012ced431e73a4209d9cabffa8178db37
2026-05-11 13:13:51 +03:00
Efraim Flashner 0bef017001 gnu: embree: Limit architecture support.
* gnu/packages/graphics.scm (embree)[supported-architectures]: New field.

Change-Id: If5c18e44d41050d1879140dc273ad76db019315d
2026-05-11 10:50:29 +03:00
Efraim Flashner cf7adf3954 gnu: embree: Adjust configure-flags.
* gnu/packages/graphics.scm (embree)[arguments]: Adjust the
configure-flags to be appropriate per-architecture.

Change-Id: I03eaa53802198fcea012c68a68e7490d61101757
2026-05-11 10:50:26 +03:00
Efraim Flashner 892a857130 gnu: embree-3: Fix version number.
This is the number reported by the code and the hash matches.

* gnu/packages/graphics.scm (embree-3)[version]: Set to 3.13.5.

Change-Id: I4b4d28101a501e778a11a1ed6f5cc91c5a22cb2e
2026-05-11 10:50:23 +03:00
Tomas Volf 3ef72f23e6 gnu: crun: Update to 1.27.1.
* gnu/packages/containers.scm (crun): Update to 1.27.1.

Change-Id: If2c1efe17b919da5e20f1ad5d98f08dc225de17e
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 15:54:03 +09:00
Tomas Volf 432508202f gnu: buildah: Update to 1.43.1.
* gnu/packages/containers.scm (buildah): Update to 1.43.1.

Change-Id: Ib6552cf1638cf12629355a96d322f2783315e820
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 15:54:03 +09:00
Tomas Volf ce87998b2c gnu: cni-plugins: Update to 1.9.1.
* gnu/packages/containers.scm (cni-plugins): Update to 1.9.1.

Change-Id: I0cf52e807c2925c341271dd165bd2b047600129a
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 15:53:55 +09:00
Anderson Torres 5c20c167b8 news: Add 'pt' translation.
* etc/news.scm: Add Portuguese translation for most recent entry.

Change-Id: I8a8327c0c5253cf37808e5bfc675bdfab2ebbbda
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2026-05-11 08:29:05 +02:00
Nguyễn Gia Phong 3e30ec4255 gnu: Remove efilinux.
* gnu/packages/efi.scm (efilinux): Delete variable.

Change-Id: I742bc3bcc36984f69dddd3c527aa077b07ee5aa0
Closes: https://codeberg.org/guix/guix/issues/7806
2026-05-11 15:10:49 +09:00
Nguyễn Gia Phong b4ef2bb4ac gnu: Remove musl-cross.
* gnu/packages/heads.scm (musl-cross): Delete variable.

Change-Id: I8de2a5f025f95d035377031d15c7b0d26ff1438e
Closes: https://codeberg.org/guix/guix/issues/6504
2026-05-11 15:10:34 +09:00
Akiyoshi Suda bce3de8c33 gnu: Add python-constraint2.
* gnu/packages/maths.scm (python-constraint2): New variable.

Change-Id: I436a0e664c0fae31efb18915246c6bfc2137f118
Merges: https://codeberg.org/guix/guix/pulls/8315
Reviewed-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 14:39:36 +09:00
Nigko Yerden 5b47e87694 gnu: tor: Update to 0.4.9.8.
* gnu/packages/tor.scm (tor): Update to 0.4.9.8.

Change-Id: I78dc84c9ba19d6aaf3b5c09f8c1a418944707a63
Merges: https://codeberg.org/guix/guix/pulls/8490
Reviewed-by: André Batista <nandre@riseup.net>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 14:25:44 +09:00
moksh 79eb796cc6 gnu: seer-gdb: Update to 2.7.
* gnu/packages/debug.scm (seer-gdb): Update to 2.7.
  [arguments]: Use gexps.  [source]: Indent.
  <uri>: Drop .git suffix. <file-name>: Use git-file-name.
  [inputs]: Switch to Qt6 versions of inputs.  Add qtsvg and gdb.

Change-Id: I324ff5d1a19b6f5267c7b83e8e88cd66ef0c8639
Merges: https://codeberg.org/guix/guix/pulls/8324
Reviewed-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-11 13:46:07 +09:00
Artyom V. Poptsov 0f6b97e1a8 gnu: go-github-com-syncthing-notify: Fix tests.
* gnu/packages/golang-xyz.scm (go-github-com-syncthing-notify): Fix tests.
[arguments]<#:phases>: Disable "TestRecreated" test as it sometimes fails due
to timeout.

Change-Id: I2cf2bf5c9822540ef05878edb43e7e82da88c140
2026-05-11 07:06:41 +03:00
Artyom V. Poptsov c47216bede gnu: go-github-com-zmap-zcertificate: Fix whitespace issues.
* gnu/packages/golang-crypto.scm (go-github-com-zmap-zcertificate): Fix
whitespace issues.

Change-Id: I86feb8107d5378419961fe5f2d2d8611275c868a
2026-05-11 07:05:48 +03:00
Artyom V. Poptsov bd98d33841 gnu: go-github-com-melbahja-goph: Update to 1.5.0.
* gnu/packages/golang-crypto.scm (go-github-com-melbahja-goph): Update to 1.5.0.

Change-Id: Iea660b767a56b275dc3538c5fb1b1f1eb5211c2b
2026-05-11 06:17:57 +03:00
Florian Pelz 6094799db8 news: Add 'de' translation.
* etc/news.scm: Add German translation for channel files entry.

Change-Id: I2e3883c52ac2b67f7a7ec084249e9d4887a78f91
2026-05-11 00:35:11 +02:00
Thanos Apollo fc27102e8a gnu: emacs-cider: Update to 1.21.0.
* gnu/packages/emacs-xyz.scm (emacs-cider): Update to 1.21.0.
[source]: Update hash.
[arguments]<#:lisp-directory>: Add; source moved to lisp/.
<#:include>: Remove; lein.sh and clojure.sh no longer exist.
<#:phases>: Replace 'check with directory excursion to project
root for eldev test discovery.

Merges guix/guix!8347

Change-Id: I698027569489a8a87d8097787a39dfb9d6b29e4d
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-10 19:00:41 +02:00
Thanos Apollo fcd85e7ca8 gnu: emacs-transient: Update to 0.13.2.
* gnu/packages/emacs-xyz.scm (emacs-transient): Update to 0.13.2.

Merges guix/guix!8347

Change-Id: Ie9d5417aaa5b0b241f11dda0e0781fe7ecd57853
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-10 19:00:33 +02:00
Thanos Apollo a9b4d9dab2 gnu: emacs-ellama: Update to 1.17.1.
* gnu/packages/emacs-xyz.scm (emacs-ellama): Update to 1.17.1.

Merges guix/guix!8347

Change-Id: I52c786f23e7b4405d53168049479078a38326e3a
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-10 19:00:24 +02:00
Thanos Apollo 6f8ebeb67c gnu: emacs-spinner: Switch to git-fetch.
* gnu/packages/emacs-xyz.scm (emacs-spinner)[source]: Switch to
git-fetch.

Merges guix/guix!8347

Change-Id: I078f9de7684758f2a4ab6a804dae67bd94559a94
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-10 19:00:04 +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
135 changed files with 9516 additions and 6804 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)
+26 -11
View File
@@ -646,9 +646,11 @@ This field contains a description of the source code origin. The
@enumerate
@item The method, here @code{url-fetch} to download via HTTP/FTP, but other methods
exist, such as @code{git-fetch} for Git repositories.
exist, such as @code{git-fetch} for Git repositories. @xref{origin
Reference,,, guix, GNU Guix Reference Manual}, for more info on the
available download methods.
@item The URI, which is typically some @code{https://} location for @code{url-fetch}. Here
the special `mirror://gnu` refers to a set of well known locations, all of
the special @code{mirror://gnu} refers to a set of well known locations, all of
which can be used by Guix to fetch the source, should some of them fail.
@item The @code{sha256} checksum of the requested file. This is essential to ensure
the source is not corrupted. Note that Guix works with base32 strings,
@@ -1116,7 +1118,8 @@ Let's discuss those fields in depth.
@subsubsection @code{git-fetch} method
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
a Git repository and a commit. The commit can be any Git reference such as
a Git repository and a commit (@pxref{origin Reference,,, guix, GNU Guix
Reference Manual}). The commit can be any Git reference such as
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
"v" version))}.
@@ -1162,7 +1165,7 @@ Snippets might need additional Guile modules which can be imported from the
There are 3 different input types. In short:
@table @asis
@table @code
@item native-inputs
Required for building but not runtime -- installing a package
through a substitute won't install these inputs.
@@ -1230,9 +1233,14 @@ It's advised to separate outputs only when you've shown it's worth it: if the
output size is significant (compare with @code{guix size}) or in case the package is
modular.
@xref{Packages with Multiple Outputs,,, guix, GNU Guix Reference
Manual}, for more info.
@subsubsection Build system arguments
The @code{arguments} is a keyword-value list used to configure the build process.
The @code{arguments} is a keyword-value list used to configure the build
process; these arguments are passed to the @dfn{build system}
(@pxref{Build Systems,,, guix, GNU Guix Reference Manual}).
The simplest argument @code{#:tests?} can be used to disable the test suite when
building the package. This is mostly useful when the package does not feature
@@ -1248,7 +1256,7 @@ following flags
"CC=gcc")
@end lisp
translate into
translate into:
@example
$ make CC=gcc prefix=/gnu/store/...-<out>
@@ -1268,7 +1276,9 @@ Similarly, it's possible to set the configure flags:
The @code{%build-inputs} variable is also generated in scope. It's an association
table that maps the input names to their store directories.
The @code{phases} keyword lists the sequential steps of the build system. Typically
The @code{phases} keyword lists the sequential steps of the build
system. @xref{Build Phases,,, guix, GNU Guix Reference Manual}, for
details; in a nutshell,
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
more about those phases, you need to work out the appropriate build system
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
@@ -1383,10 +1393,12 @@ Its return value is ignored.
@subsubsection Code staging
The astute reader may have noticed the quasi-quote and comma syntax in the
The astute reader may have noticed the hash-tilde and hash-dollar syntax in the
argument field. Indeed, the build code in the package declaration should not be
evaluated on the client side, but only when passed to the Guix daemon. This
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
@xref{G-Expressions,,, guix, GNU Guix Reference Manual}, for info on the
this mechanism, which is called @dfn{g-expressions}.
@subsubsection Utility functions
@@ -1395,7 +1407,7 @@ equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.)@: com
regular ``Unix-style'' installations.
Some like @code{chmod} are native to Guile.
@xref{,,, guile, Guile reference manual} for a complete list.
@xref{File System,,, guile, Guile reference manual} for a complete list.
Guix provides additional helper functions which prove especially handy in the
context of package management.
@@ -1575,7 +1587,9 @@ noticed that a significant number of them have a @code{inherit} field:
All unspecified fields are inherited from the parent package. This is very
convenient to create alternative packages, for instance with different source,
version or compilation options.
version or compilation options. @xref{Defining Package Variant,,, guix,
GNU Guix Reference Manual}, for a discussion of inheritance and of other
ways to create package variants.
@node Getting help
@subsection Getting help
@@ -1616,7 +1630,8 @@ hopefully we will see your contributions soon!
@itemize
@item
The @uref{https://guix.gnu.org/manual/en/html_node/Defining-Packages.html, package reference in the manual}
@xref{Defining Packages,,, guix, GNU Guix Reference Manual}, for the
@code{package} reference in the manual.
@item
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotrs hacking guide to GNU Guix}
+286 -62
View File
@@ -264,6 +264,7 @@ Setting Up the Daemon
* Build Environment Setup:: Preparing the isolated build environment.
* Daemon Offload Setup:: Offloading builds to remote machines.
* SELinux Support:: Using an SELinux policy for the daemon.
* AppArmor Support:: Using an AppArmor profile for the daemon.
System Installation
@@ -480,12 +481,14 @@ Home Services
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
* Backup: Backup Home Services. Services for backing up User's files.
* Backup: Backup Home Services. Services for backing up User's files.
* Fonts: Fonts Home Services. Services for managing User's fonts.
* Sound: Sound Home Services. Dealing with audio.
* Mail: Mail Home Services. Services for managing mail.
* Messaging: Messaging Home Services. Services for managing messaging.
* Media: Media Home Services. Services for managing media.
* mpv Media Player::
* Niri: Niri window manager. Setting up the Niri.
* Sway: Sway window manager. Setting up the Sway configuration.
* Networking: Networking Home Services. Networking services.
* Secrets: Secrets Home Services. Services for storing secrets.
@@ -4780,14 +4783,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 +5002,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 +5109,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 +5899,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 +5914,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 +14838,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 +16170,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 +16236,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 +16313,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 +20905,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 +46415,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 +49433,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 +51493,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
@@ -52205,12 +52428,13 @@ services)}.
* GPG: GNU Privacy Guard. Setting up GPG and related tools.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
* Backup: Backup Home Services. Services for backing up User's files.
* Backup: Backup Home Services. Services for backing up User's files.
* Fonts: Fonts Home Services. Services for managing User's fonts.
* Sound: Sound Home Services. Dealing with audio.
* Mail: Mail Home Services. Services for managing mail.
* Messaging: Messaging Home Services. Services for managing messaging.
* Media: Media Home Services. Services for managing media.
* mpv Media Player::
* Niri: Niri window manager. Setting up the Niri.
* Sway: Sway window manager. Setting up the Sway configuration.
* Networking: Networking Home Services. Networking services.
+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" "$@"
+127
View File
@@ -43,6 +43,133 @@
(channel-news
(version 0)
(entry (commit "c9dcd203e5356f13b736d5be121fd61874be1a93")
(title
(en "@command{pull} and @command{time-machine} can download channel
files")
(de "@command{pull} und @command{time-machine} können Kanaldateien
herunterladen")
(fr "@command{pull} et @command{time-machine} peuvent télécharger des
fichiers canaux")
(pt "@command{pull} e @command{time-machine} podem baixar arquivos de canal"))
(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.")
(de "Den Befehlen @command{guix pull} und @command{guix time-machine}
kann jetzt eine URL mit der Option @option{-C} (oder @option{--channels})
übergeben werden. Zum Beispiel lädt der folgende Befehl vom neuesten
erfolgreich ausgewerteten Commit des @code{master}-Branches herunter:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Als Alternative kann man auch eine @uref{https://swhid.org, SWHID} angeben, die
auf eine Kanaldatei verweist:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Damit das möglich ist, werden Kanaldateien jetzt in einer isolierten Umgebung
ausgewertet (einer @dfn{Sandbox}), wodurch sie keinen beliebigen Code mehr
ausführen können. Wenn Sie in bestehenden Dateien solche über den Standard
hinausgehenden Funktionen benutzt haben, kann dazu jetzt verlangt werden, dass
Sie @option{--unsafe-channel-evaluation} übergeben, um sie auszuwerten. Des
Weiteren dürfen Kanäle aus heruntergeladenen Dateien nur als
@dfn{vertrauenswürdig} markierte Kanäle verwenden, die Sie in
@file{~/.config/guix/trusted-channels.scm} angeben.
Siehe @samp{info \"(guix.de) Aufruf von guix pull\"} für mehr Informationen.")
(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.")
(pt "Os comandos @command{guix pull} e @command{guix time-machine}
podem receber uma URL como opção para @option{-C} (or @option{--channels}).
Por exemplo, o comando abaixo busca do commit mais recente evaluado com
sucesso do ramo @code{master}:
@example
guix pull \\
-C https://ci.guix.gnu.org/eval/latest/channels.scm?spec=master
@end example
Alternativamente, pode-se também especificar uma @uref{https://swhid.org,
SWHID} que aponta para um arquivo de canal:
@example
guix time-machine \\
-C swh:1:cnt:ae02d8ba3538a385ee799e61cdd0dfc5e14a8d1b \\
-- ...
@end example
Para tornar isso possível, arquivos de canal agora são evaluados em um
ambiente isolado (uma caixinha de areia, vulgo @dfn{sandbox}), o que os impede
de evaluar código arbitrário; se você tem arquivos de canal que dependem de
recursos \"não padrão\", pode ser necessário que você passe a opção
@option{--unsafe-channel-evaluation} para evaluá-los. Além disso, quando se
buscam canais de um arquivo baixado, somente @dfn{canais confiáveis} são
permitidos---é possível especificá-los em
@file{~/.config/guix/trusted-channels.scm}.
Veja @samp{info \"(guix.pt_BR)Invocando guix pull\"} para mais informação.")))
(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)
+6 -13
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 \
@@ -1366,16 +1364,8 @@ dist_patch_DATA = \
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
%D%/packages/patches/ganeti-haskell-pythondir.patch \
%D%/packages/patches/ganeti-lens-compat.patch \
%D%/packages/patches/ganeti-openssh-test-fix.patch \
%D%/packages/patches/ganeti-pyyaml-compat.patch \
%D%/packages/patches/ganeti-procps-compat.patch \
%D%/packages/patches/ganeti-reorder-arbitrary-definitions.patch \
%D%/packages/patches/ganeti-relax-dependencies.patch \
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
%D%/packages/patches/ganeti-shepherd-support.patch \
%D%/packages/patches/ganeti-sphinx-import.patch \
%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/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
@@ -1515,6 +1505,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 +1658,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 +1977,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 +2007,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 \
@@ -2287,8 +2281,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 +2614,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 \
+5 -7
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)
@@ -587,9 +585,9 @@ chmod 600 /mnt/root/.ssh/authorized_keys
# Small instance don't have much disk space. Bind mount the store of the
# rescue system to the tmp directory of the new Guix system.
mkdir -p /mnt/tmp/gnu/store
mkdir -p /gnu/store
mount --bind /mnt/tmp/gnu/store /gnu/store
mkdir -p /mnt/tmp/gnu
mkdir -p /gnu
mount --bind /mnt/tmp/gnu /gnu
wget -O /tmp/guix-install.sh https://guix.gnu.org/guix-install.sh
chmod +x /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
@@ -1,3 +1,4 @@
;; -*- lexical-binding: t; -*-
(require 'ert)
(eval-when-compile
@@ -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")
+33
View File
@@ -1452,3 +1452,36 @@ It is an alternative to e.g. @command{make(1)} and @command{redo(1)}. Features:
@end itemize
")
(license license:wtfpl2)))
(define-public xmake
(package
(name "xmake")
(version "3.0.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/xmake-io/xmake.git")
(commit (string-append "v" version))
;; Requires some dependencies from "xmake-core-*" repos
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1pdjz52w9lzfbcpx9wmzy0bsjg7i19xz43f63czk7jz9v0xba6gi"))))
(build-system gnu-build-system)
(arguments
(list
;; No check rule in make
;; TODO: find how to run Lua tests in "test" directory
#:tests? #f))
(home-page "https://xmake.io/")
(synopsis "Cross-platform build utility based on Lua")
(description "@command{xmake} is a cross-platform build utility based on Lua.
Features:
@itemize
@item Built-in caching and parallel compilation,
@item Concise Lua syntax,
@item Custom rules, plugins and modules,
@item Support for C++20 modules and compile_commands.json,
@item Support for languages outside C/C++ (e.g. Go, Rust, Zig).
@end itemize")
(license license:asl2.0)))
+43 -19
View File
@@ -81,6 +81,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages gettext)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml))
@@ -1327,25 +1328,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")
@@ -1519,6 +1501,48 @@ Telemetry Transport (MQTT) publish-subscribe messaging protocol.")
(home-page "https://microsoft.github.io/mimalloc/")
(license license:expat)))
(define-public mps
(package
(name "mps")
(version "1.118.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Ravenbrook/mps")
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "078iv3fsz0dnfwb7g63apkvcksczbqfxrxm73k80jwnwca6pgafy"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-cflags
;; The recursive make call in the test suite doesn't pass CFLAGS
;; down properly so we need to do it ourselves
(lambda _
(substitute* "Makefile.in"
(("CFLAGS=\"(.*)\"" _ flags)
(string-append "CFLAGS=\"" flags " $(CFLAGS)\""))))))
#:parallel-build? #f ;Parallel build fails
#:test-target "test"
#:make-flags
#~(list "CFLAGS=-Wno-error=dangling-pointer -Wno-maybe-uninitialized"
;; These flags are needed for the recursive make calls in testing
(string-append "CC=" #$(cc-for-target)) "-j" "1")))
(inputs (list sqlite))
(home-page "http://www.ravenbrook.com/project/mps")
(synopsis "Memory pool system")
(description
"This package provides a cross-platform memory management system. It
permits the flexible combination of memory management techniques, supporting
manual and automatic memory management, in-line allocation, finalization,
weakness, and multiple concurrent co-operating incremental generational
garbage collections. It also includes a library of memory pool classes
implementing specialized memory management policies.")
(license license:bsd-2)))
;;; The package is named orangeduck-mpc to differentiate it from GNU mpc.
(define-public orangeduck-mpc
;; The last release lacks an 'install' target.
+10 -22
View File
@@ -337,7 +337,7 @@ reconstruction capability.")
(define-public cdrdao
(package
(name "cdrdao")
(version "1.2.5")
(version "1.2.6")
(source
(origin
(method git-fetch)
@@ -347,30 +347,18 @@ reconstruction capability.")
(string-append "rel_" (string-replace-substring version "." "_")))))
(file-name (git-file-name name version))
(sha256
(base32 "1hh1lm4wr1vhsq2brczn94h88h3bppvjidj9cfqkl20jhaj38968"))))
(build-system gnu-build-system)
(base32 "0hb8dfb88zk01yk5nfl8m5hsg4x2scb2899pxb717zywznr8jijw"))))
(build-system glib-or-gtk-build-system)
(arguments
'(#:configure-flags
(list
;; GCDMaster depends on obsolete libgnomeuimm, see
;; <https://github.com/cdrdao/cdrdao/issues/3>.
"--without-gcdmaster"
;; Use the native SCSI interface.
"--without-scglib")
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'fix-configure.ac
(lambda _
;; Remove references to missing macros.
(substitute* "configure.ac"
(("^AM_GCONF_SOURCE_2.*") "")
;; This was introduced in autoconf-2.70, but is described
;; as usually not needed in the autoconf documentation.
(("^AC_CHECK_INCLUDES_DEFAULT") "")))))))
(list
#:configure-flags
#~(list
;; Use the native SCSI interface.
"--without-scglib")))
(native-inputs
(list autoconf automake pkg-config))
(list autoconf-2.72 automake `(,glib "bin") pkg-config))
(inputs
(list ao lame libmad libvorbis))
(list ao gtkmm-3 lame libmad libsigc++-2 libvorbis))
(home-page "https://cdrdao.sourceforge.net")
(synopsis "Read and write CDs in disk-at-once mode")
(description "cdrdao records audio or data CDs in disk-at-once (DAO) mode,
+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)
+6 -6
View File
@@ -150,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
(define-public crun
(package
(name "crun")
(version "1.26")
(version "1.27.1")
(source
(origin
(method url-fetch)
@@ -160,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
"/crun-" version ".tar.gz"))
(sha256
(base32
"1hdwk5dpsz9danxiyfli07b7sqid6hr34qmhs5qjl2dcc00is89j"))))
"1w782s95f3xvw3fb66l2ciqkqsg4bk7n9ph31jmvn669ap272ymy"))))
(build-system gnu-build-system)
(arguments
(list
@@ -545,7 +545,7 @@ Layer-4 sockets.")
(define-public cni-plugins
(package
(name "cni-plugins")
(version "1.9.0")
(version "1.9.1")
(source
(origin
(method git-fetch)
@@ -554,7 +554,7 @@ Layer-4 sockets.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
(base32 "12z6w2jk6xgfiwdxys7skpkxldz1cgaa7scgfcr90lsghay59s6w"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "vendor")))))
@@ -885,7 +885,7 @@ being rootless and not requiring any daemon to be running.")
(define-public buildah
(package
(name "buildah")
(version "1.43.0")
(version "1.43.1")
(source
(origin
(method git-fetch)
@@ -893,7 +893,7 @@ being rootless and not requiring any daemon to be running.")
(url "https://github.com/containers/buildah")
(commit (string-append "v" version))))
(sha256
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
(base32 "00x4ja5n49jmkmiv54mmkihks9pnjnna7s7py57in6pc9g85xj2y"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
+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")
+18 -17
View File
@@ -978,26 +978,27 @@ engineering.")
(define-public seer-gdb
(package
(name "seer-gdb")
(version "1.16")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/epasveer/seer.git")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0jdvyg2jab1pvf36pvkyrfsg2wyy8zp1qx0v2ksclgrnr1hja6k6"))))
(version "2.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/epasveer/seer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1szfqybqr5z982vian4f0hpsagiqapzys3axwibyjyg5whjswva1"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ; Those are strangely manual
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "src"))))))
(list
#:tests? #f ;tests are strangely manual
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "src"))))))
(inputs
(list qtbase-5 qtcharts-5 qtwayland-5))
(list gdb qtbase qtcharts qtsvg qtwayland))
(synopsis "GUI frontend for GDB")
(description "This package provides a frontend to GDB, the GNU debugger.")
(home-page "https://github.com/epasveer/seer")
+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
+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")
-45
View File
@@ -204,48 +204,3 @@ and EFI variable management.")
;; Library routines (in lib/) are under LGPL 2.1.
;; Compiling/linking/using OpenSSL is permitted.
(license (list license:gpl2 license:lgpl2.1))))
(define-public efilinux
(package
(name "efilinux")
(version "1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mfleming/efilinux")
(commit (string-append "efilinux-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0b4nxzr3wl5v4b52r79iw1arfgasz26xb38r2blw9v2qz2s1q9w2"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(list "CC=gcc"
,@(match (%current-system)
("aarch64-linux"
'("ARCH=aarch64"))
("armhf-linux"
'("ARCH=arm"))
(_ '()))
(string-append "INCDIR=" (assoc-ref %build-inputs "gnu-efi")
"/include")
(string-append "LIBDIR=" (assoc-ref %build-inputs "gnu-efi")
"/lib"))
#:tests? #f ; No tests exist.
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(install-file "efilinux.efi"
(string-append (assoc-ref outputs "out")
"/libexec"))
#t)))))
(inputs
(list gnu-efi))
(synopsis "Minimal Linux loader for UEFI")
(description "This package provides a minimal Linux loader as an UEFI
program.")
(home-page "https://github.com/mfleming/efilinux")
(license license:bsd-2)))
+320 -121
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")
@@ -7160,7 +7204,7 @@ that the binary uses instead of the actual binary contents.")
(define-public emacs-ellama
(package
(name "emacs-ellama")
(version "1.17.0")
(version "1.17.1")
(source
(origin
(method git-fetch)
@@ -7170,7 +7214,7 @@ that the binary uses instead of the actual binary contents.")
(file-name (git-file-name name version))
(sha256
(base32
"03y4hyrsmq6m7si191r3ndp06x5w53adpig272ymm0i4v9gnzlr9"))))
"1ibqmhp6mszr85lfb6fwfx9npn46kzcb26vqprrla61w8nrplx97"))))
(build-system emacs-build-system)
(arguments
(list
@@ -9280,14 +9324,16 @@ This mode supports Apache HTTP Server 2.4 and major modules.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/raxod502/apheleia")
(url "https://github.com/radian-software/apheleia")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1vs532hjkwj19laigqvvk11r0gwhv5vd8v6wh5598dzmfw3yh4bm"))))
(build-system emacs-build-system)
(arguments (list #:include #~(cons "^scripts/formatters/" %default-include)
#:exclude #~(cons "\\.js$" %default-exclude)))
(native-inputs (list emacs-buttercup))
(home-page "https://github.com/raxod502/apheleia")
(home-page "https://github.com/radian-software/apheleia")
(synopsis "Reformat buffer stably")
(description
"This package allows for a buffer to be reformatted without moving point,
@@ -11904,22 +11950,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")
@@ -18100,11 +18146,14 @@ Application Programming Interface}}, a free and open-source quotations
(name "emacs-spinner")
(version "1.7.4")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/spinner-"
version ".tar"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/Malabarba/spinner.el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "140kss25ijbwf8hzflbjz67ry76w2cyrh02axk95n6qcxv7jr7pv"))))
(base32
"1m872dj1n05mkvgfyiqsbri489vmff5zdmv4xx5qj2s91sp046rl"))))
(build-system emacs-build-system)
(home-page "https://github.com/Malabarba/spinner.el")
(synopsis "Emacs mode-line spinner for operations in progress")
@@ -20389,7 +20438,7 @@ implementation.")
(define-public emacs-cider
(package
(name "emacs-cider")
(version "1.20.0")
(version "1.21.0")
(source
(origin
(method git-fetch)
@@ -20398,26 +20447,30 @@ implementation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "08hd281ybskkhir170hr3xpga1b1hwpph7rd0fk6fvm0ngdgxazs"))))
(base32 "19wx9mc488qipm08s7hc0zrfmiylw577lmf3jpvqcjq7amx14jgc"))))
(build-system emacs-build-system)
(arguments
(list
#:include #~(cons* "^lein\\.sh$" "^clojure\\.sh$" %default-include)
#:exclude ;don't exclude 'cider-test.el'
#~(list "^\\.dir-locals\\.el$" "^test/")
#:lisp-directory "lisp"
#:test-command
#~(list "eldev" "--use-emacsloadpath" "-dtT" "-p" "test")
#:exclude
#~(list "^\\.dir-locals\\.el$" "^test/")
#:phases
;; XXX: file "test/cider-tests.el" contains a bogus "/bin/command"
;; string, and `patch-el-files' phase chokes on it (even though the
;; file is excluded from installation). Remove the phase altogether
;; since there is no "/bin/executable" to replace in the code base
;; anyway.
#~(modify-phases %standard-phases
(delete 'patch-el-files)
(add-before 'check 'skip-failing-tests
(lambda _ ;; Require network.
(delete-file "test/cider-jar-tests.el"))))))
(add-after 'unpack 'remove-network-tests
(lambda _
(delete-file "../test/cider-jar-tests.el")))
(replace 'check
(lambda* (#:key test-command tests?
#:allow-other-keys)
(when tests?
(with-directory-excursion ".."
(setenv "EMACSLOADPATH"
(string-append (getcwd) ":"
(getenv "EMACSLOADPATH")))
(apply invoke test-command))))))))
(native-inputs (list emacs-buttercup emacs-eldev))
(propagated-inputs
(list emacs-clojure-mode
@@ -22682,7 +22735,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 +22744,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 +22763,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 +25425,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 +25434,7 @@ with Eglot.")
(file-name (git-file-name name version))
(sha256
(base32
"1v1a09h6ndqhkwyn44cnx1b0l4p155a09mfjrfmg62li50hvw1zm"))))
"0d0rl5rhx73safq95212c4qlmds3sa1mc79ji4p2v974m43x9d89"))))
(build-system emacs-build-system)
(arguments
(list
@@ -25402,16 +25456,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 +25491,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 +32214,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 +35270,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 +35678,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 +35687,7 @@ and comments.")
(commit version)))
(sha256
(base32
"0zvbfwxq3dx14ynpafpvv1swg7hbg3k9avir9b7cymf4r5hrjnx3"))
"0phlcmf54f2wih7rksazf8k2jz4i31siqzd4gb7x3d6zddk2rs97"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@@ -35617,7 +35702,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 +38116,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 +38125,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
@@ -38652,7 +38737,7 @@ as Emacs Lisp.")
(define-public emacs-transient
(package
(name "emacs-transient")
(version "0.13.1")
(version "0.13.2")
(source
(origin
(method git-fetch)
@@ -38661,7 +38746,7 @@ as Emacs Lisp.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "161drbhzdp9fn0xkc0aza992g9h8prml513y8byyxvi6lqbqn8x4"))))
(base32 "0c5kdzs55xzn4ksrxlm94s4w4mbamh7l5ycjnq9pvgqvggzijqng"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #f ;no test suite
@@ -41177,6 +41262,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")
@@ -41867,7 +41985,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
(define-public emacs-fj
(package
(name "emacs-fj")
(version "0.36")
(version "0.37")
(source
(origin
(method git-fetch)
@@ -41876,17 +41994,9 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "10v79lxnaya8h8qkdpvr7ns8330nrrl2h5mz4wh15blcp87ha37l"))))
(base32 "09ff20am16ysjpbqx7b92qgmvyar9b6blm32flkvzqxccqqinxya"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command #~(list "make" "tests")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'remove-cask
(lambda _
(substitute* "Makefile"
(("cask ") "")))))))
(arguments (list #:test-command #~(list "make" "tests" "CASK=")))
(native-inputs
(list emacs-el-mock emacs-exemplify-ert emacs-exemplify-eval))
(propagated-inputs (list emacs-fedi emacs-magit emacs-tp emacs-transient))
@@ -41896,6 +42006,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 +45934,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")
+7 -3
View File
@@ -387,6 +387,7 @@
(lambda ()
(display
(string-append
";; -*- lexical-binding: t; -*-\n"
"(setq find-function-C-source-directory \"" dest "\")\n\n"
"(provide 'guix-emacs-c-source)")))))))
(add-after 'install 'install-site-start
@@ -413,6 +414,7 @@
(lambda ()
(display
(string-append
";; -*- lexical-binding: t; -*-\n"
"(when (require 'guix-emacs nil t)\n"
" (guix-emacs-autoload-packages 'no-reload)\n"
" (advice-add 'package-load-all-descriptors"
@@ -630,6 +632,8 @@ editor (console only)")
libx11
libxft
libxpm
libxrender
libxt
libwebp
pango
poppler)))))
@@ -702,8 +706,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 +721,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")
+41
View File
@@ -2391,6 +2391,47 @@ games.")
(home-page "https://openmw.org")
(license license:gpl3)))
(define-public jolt-physics
(package
(name "jolt-physics")
(version "5.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jrouwe/JoltPhysics")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0dzqi4mxrzg5cyf5k8rdlb078939ib849n7gs6014d3ljymf839r"))
(modules '((guix build utils)))
;; Unbundle Roboto font.
(snippet
'(begin
(delete-file-recursively "Assets/Fonts")
(substitute* "TestFramework/TestFramework.cmake"
((".*Roboto-Regular\\.ttf.*") ""))))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DBUILD_SHARED_LIBS=ON")
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'change-directory
(lambda _
(chdir "Build")))
(add-after 'install 'change-directory
(lambda _
(chdir ".."))))))
(home-page "https://github.com/jrouwe/JoltPhysics")
(synopsis "Rigid body physics and collision detection library")
(description
"Jolt Physics is a multi core friendly rigid body physics and collision
detection library, written in C++. It is suitable for games and VR
applications.")
(license license:expat)))
(define-public godot-lts
(package
(name "godot")
+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
+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
+65
View File
@@ -11564,6 +11564,71 @@ accessibility infrastructure.")
(license license:lgpl2.0)
(properties '((upstream-name . "pyatspi")))))
(define-public accerciser
(package
(name "accerciser")
(version "3.48.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/GNOME/accerciser.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1ddh466im0hxqx0ncxglrif72jfwcdl1ayarw874mp1464wkbc4m"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#: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))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gnome-post-install
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))))
(add-after 'install 'wrap-python
(assoc-ref py:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-program
(lambda _
(let ((typelib-path (getenv "GI_TYPELIB_PATH")))
(wrap-program (string-append #$output "/bin/accerciser")
`("GI_TYPELIB_PATH" ":" prefix (,typelib-path)))))))))
(native-inputs
(list (list glib "bin")
gettext-minimal
gobject-introspection
pkg-config
yelp-tools))
(inputs
(list appstream
appstream-glib
at-spi2-core
bash-minimal
gdk-pixbuf
glib
gtk+
python
python-dbus
python-pyatspi
python-pycairo
python-pygobject
python-pyxdg))
(synopsis "Accessibility explorer")
(description "This package provides an interactive accessibility explorer
for the GNOME desktop.")
(home-page "https://gitlab.gnome.org/GNOME/accerciser")
(license license:bsd-3)))
(define-public orca
(package
(name "orca")
+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.
+3 -3
View File
@@ -2073,7 +2073,7 @@ the Go standard library's TLS 1.3 implementation.")
(define-public go-github-com-melbahja-goph
(package
(name "go-github-com-melbahja-goph")
(version "1.4.0")
(version "1.5.0")
(source
(origin
(method git-fetch)
@@ -2082,7 +2082,7 @@ the Go standard library's TLS 1.3 implementation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1w6sn6m3bsh60flp0fdbv70c2d1ky12mpj09100qf64w0v1d32k0"))))
(base32 "1ncvs9pbjg7m8yp3h8wbhxvzvks1g06a5qcjrkw2k515m2yqhg8k"))))
(build-system go-build-system)
(arguments
(list
@@ -3900,7 +3900,7 @@ is an extremely fast non-cryptographic hash algorithm.")
;; XXX: Source only, to break cycle with
;; go-github-com-zmap-zcrypto. Addintional inputs requaired only to
;; build CLI:
;;
;;
;; - github.com/sirupsen/logrus
;; - github.com/zmap/zcrypto
;; - github.com/zmap/zlint/v3
+12 -2
View File
@@ -47,7 +47,7 @@
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2023 conses <contact@conses.eu>
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024, 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024 Brian Kubisiak <brian@kubisiak.com>
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
@@ -25544,7 +25544,17 @@ suffix comparison, rather than the string-based or tree-based approaches.")
(arguments
(list
#:parallel-tests? #f
#:import-path "github.com/syncthing/notify"))
#:import-path "github.com/syncthing/notify"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(substitute* "notify_test.go"
;; XXX: Sometimes this test fails due to timeout.
;; Increasing the timeout from 5s to 10s does not help.
;; See <https://github.com/rjeczalik/notify/issues/227>
(("TestRecreated") "OffTestRecreated"))))))))
(propagated-inputs
(list go-golang-org-x-sys))
(home-page "https://github.com/syncthing/notify")
+15 -4
View File
@@ -628,9 +628,17 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
#:configure-flags
(list
"-DEMBREE_ISPC_SUPPORT=OFF"
;; They SAY that that's the default--but it isn't
;; (that would be AVX512--and that segfaults GCC (!)).
"-DEMBREE_MAX_ISA=AVX2")))
,@(cond
((target-x86-64?)
;; They SAY that that's the default--but it isn't
;; (that would be AVX512--and that segfaults GCC (!)).
`("-DEMBREE_MAX_ISA=AVX2"))
((target-aarch64?)
`("-DEMBREE_ARM=ON"
"-DEMBREE_IGNORE_CMAKE_CXX_FLAGS=OFF"
"-DCMAKE_CXX_FLAGS=-flax-vector-conversions"))
(else
'())))))
(inputs
(list glfw onetbb))
(home-page "https://www.embree.org/")
@@ -639,13 +647,16 @@ with the @command{autotrace} utility or as a C library, @code{libautotrace}.")
"Embree is a collection of high-performance ray tracing kernels.
Embree is meant to increase performance of photo-realistic rendering
applications.")
;; From the README: Embree requires at least an x86 CPU with support for
;; SSE2 or an Apple M1 CPU.
(supported-systems '("x86_64-linux" "aarch64-linux"))
(license license:asl2.0)))
(define-public embree-3
(package
(inherit embree)
(name "embree")
(version "3.3.15")
(version "3.13.5")
(source (origin
(method git-fetch)
(uri (git-reference
+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
-117
View File
@@ -49,123 +49,6 @@
#:use-module ((guix build utils) #:select (alist-replace))
#:use-module (srfi srfi-1))
(define-public musl-cross
(let ((revision "3")
(commit "a8a66490dae7f23a2cf5e256f3a596d1ccfe1a03"))
(package
(name "musl-cross")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/GregorR/musl-cross")
(commit commit)))
(file-name "musl-cross-checkout")
(sha256
(base32
"1xvl9y017wb2qaphy9zqh3vrhm8hklr8acvzzcjc35d1jjhyl58y"))
(patches (search-patches "musl-cross-locale.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests in main project.
#:modules
((guix build utils)
(guix build gnu-build-system)
(srfi srfi-1)) ; drop
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(setenv "SHELL" "bash")
(setenv "CONFIG_SHELL" "bash")
#t))
(add-after 'unpack 'unpack-dependencies
(lambda* (#:key inputs outputs #:allow-other-keys)
(define (install-file* source-key destination-directory
destination-suffix)
(let* ((source-file (assoc-ref inputs source-key))
(source-basename (basename source-file))
(source-parts (string-split source-basename #\-))
(destination-file
(string-join (drop source-parts 1) "-")))
(copy-file source-file
(string-append destination-directory "/"
destination-file destination-suffix))))
(for-each (lambda (name)
(install-file* name "tarballs" ""))
'("binutils" "target-gcc-5" "linux-headers" "musl"))
(copy-file (string-append (assoc-ref inputs "config.sub")
"/share/automake-1.16/config.sub")
"tarballs/config.sub;hb=3d5db9ebe860")
(copy-file (string-append (assoc-ref inputs "config.sub")
"/share/automake-1.16/config.guess")
"tarballs/config.guess;hb=3d5db9ebe860")
(substitute* "config.sh"
(("^CC_BASE_PREFIX=.*")
(string-append "CC_BASE_PREFIX=" (assoc-ref outputs "out")
"/crossgcc\n")))
;; Note: Important: source/gcc-5.3.0/gcc/exec-tool.in
;; Note: Important: source/kernel-headers-3.12.6-5/tools/install.sh
;; Note: Important: move-if-change (twice)
;; Make sure that shebangs are patched after new extractions.
(substitute* "defs.sh"
(("touch \"[$]2/extracted\"")
(string-append "touch \"$2/extracted\"
for s in mkinstalldirs move-if-change compile depcomp callprocs configure \\
mkdep compile libtool-ldflags config.guess install-sh missing config.sub \\
config.rpath progtest.m4 lib-ld.m4 acx.m4 gen-fixed.sh mkheader.sh ylwrap \\
merge.sh godeps.sh lock-and-run.sh print-sysroot-suffix.sh mkconfig.sh \\
genmultilib exec-tool.in install.sh
do
find . -name $s -exec sed -i -e 's;!/bin/sh;!" (assoc-ref inputs "bash")
"/bin/sh;' '{}' ';'
find . -name $s -exec sed -i -e 's; /bin/sh; " (assoc-ref inputs "bash")
"/bin/sh;' '{}' ';'
done
" )))
#t))
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(invoke "./build.sh")))
(delete 'install))))
(native-inputs
`(("config.sub" ,automake)
("bash" ,bash)
("flex" ,flex)
("gmp" ,gmp)
("mpfr" ,mpfr)
("mpc" ,mpc)
("binutils"
,(origin
(method url-fetch)
(uri "https://ftpmirror.gnu.org/gnu/binutils/binutils-2.27.tar.bz2")
(sha256
(base32 "125clslv17xh1sab74343fg6v31msavpmaa1c1394zsqa773g5rn"))))
("target-gcc-5"
,(origin
(method url-fetch)
(uri "https://ftpmirror.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.bz2")
(sha256
(base32 "1ny4smkp5bzs3cp8ss7pl6lk8yss0d9m4av1mvdp72r1x695akxq"))))
("linux-headers"
,(origin
(method url-fetch)
(uri "http://ftp.barfooze.de/pub/sabotage/tarballs/linux-headers-4.19.88.tar.xz")
(sha256
(base32 "1srgi2nqw892jb6yd4kzacf2xzwfvzhsv2957xfh1nvbs7varwyk"))))
("musl"
,(origin
(method url-fetch)
(uri "http://www.musl-libc.org/releases/musl-1.1.24.tar.gz")
(sha256
(base32 "18r2a00k82hz0mqdvgm7crzc7305l36109c0j9yjmkxj2alcjw0k"))))))
(supported-systems (remove target-hurd? %supported-systems))
(home-page "https://github.com/osresearch/heads")
(synopsis "Cross gcc 5 toolchain")
(description "Musl-cross toolchain: binutils, gcc 5 and musl.")
(license license:isc))))
;; This package provides a "dev.cpio" file usable as a base for booting Heads.
(define-public heads-dev-cpio
(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?
+23 -1
View File
@@ -5,7 +5,7 @@
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2024, 2025 Spencer King <spencer.king@geneoscopy.com>
;;; Copyright © 2024-2026 Spencer King <spencer.king@wustl.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -5592,6 +5592,28 @@ arbitrary normed vector spaces (e.g. matrix-valued integrands).")
format.")
(license license:expat)))
(define-public julia-quantuminterface
(package
(name "julia-quantuminterface")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/qojulia/QuantumInterface.jl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05792hkhjghlpm919ip8hzbhwv8xcngmyyks2nr8bln6qa8f8r9i"))))
(build-system julia-build-system)
(native-inputs (list julia-safetestsets))
(home-page "https://github.com/qojulia/QuantumInterface.jl")
(synopsis "Lightweight interface for Quantum Physics related packages")
(description
"This package provides a lightweight interface for Quantum Physics
related packages.")
(license license:expat)))
(define-public julia-quaternions
(package
(name "julia-quaternions")
+34 -8
View File
@@ -233,7 +233,12 @@ This package is part of the KDE multimedia module.")
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; testsqlscanmanager fails, even when run manually.
(invoke "ctest" "-E" "testsqlscanmanager")))))))
(invoke "ctest" "-E" "testsqlscanmanager"))))
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/amarok")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(native-inputs
(list extra-cmake-modules
googletest
@@ -898,8 +903,16 @@ autoloading of subtitle files for use while playing video.")
qtdeclarative
qtwayland))
(arguments
(list #:qtbase qtbase
#:tests? #f))
(list
#:qtbase qtbase
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/kamoso")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(home-page "https://apps.kde.org/kamoso/")
(synopsis "Take pictures and videos out of your webcam")
(description "Kamoso is a simple and friendly program to use your
@@ -1246,14 +1259,27 @@ APIs. It can also play videos from PeerTube sources.")
"0iaandlbv2v4a6wsdxk19ynj77axd3kc72nw28bvbsfb0kqc0mai"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
#:tests? #f)) ;no tests
(list
#:qtbase qtbase
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/rattlesnake")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(native-inputs
(list extra-cmake-modules))
(inputs
(list kirigami qtdeclarative qtmultimedia qtwayland))
(propagated-inputs
(list gstreamer gst-plugins-base gst-plugins-good))
(list gst-plugins-base
gst-plugins-good
gstreamer
kirigami
kirigami-addons
qtdeclarative
qtmultimedia
qtwayland))
(home-page "https://invent.kde.org/multimedia/rattlesnake")
(synopsis "Metronome")
(description "Rattlesnake is a metronome app.")
+2 -2
View File
@@ -219,14 +219,14 @@ resolution, asynchronous file system operations, and threading primitives.")
(package
(inherit libuv)
(name "libuv")
(version "1.43.0")
(version "1.44.2")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.libuv.org/dist/v" version
"/libuv-v" version ".tar.gz"))
(sha256
(base32
"194kwq3jfj9s628kzkchdca534rikjw0xiyas0cjbphqmsvjpmwh"))))
"1d1wy1061cf2mfygr2j6jbm0da2mhsf0l9yq4rjkqrsmijbdrz6c"))))
(properties '((hidden? . #t)))))
(define-public perl-anyevent
+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)
+4 -4
View File
@@ -3919,7 +3919,7 @@ on the fly. Both programs are written in C and are very fast.")
(define-public stalwart
(package
(name "stalwart")
(version "0.16.3")
(version "0.16.4")
(source
(let ((upstream-source
(origin
@@ -3930,7 +3930,7 @@ on the fly. Both programs are written in C and are very fast.")
(file-name (git-file-name name version))
(sha256
(base32
"1wcs9inwv8iv4qrayp9730wzmmpp4bna6jnpdz29ygb5c0lf2b29")))))
"0r3p4g09012ranm4x4crhqa3p7i1m3w7xpy182c3ii74a131f5z1")))))
(origin
(method computed-origin-method)
(file-name (git-file-name name version))
@@ -3998,7 +3998,7 @@ CalDAV, CardDAV and WebDAV support and a wide range of modern features.")
(define-public stalwart-cli
(package
(name "stalwart-cli")
(version "1.0.4")
(version "1.0.5")
(source
(origin
(method git-fetch)
@@ -4007,7 +4007,7 @@ CalDAV, CardDAV and WebDAV support and a wide range of modern features.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rbhzd8m48fm5q8vlzkla5zxrypkbvsi8i1bplkm1ndp0bwiqdvz"))))
(base32 "1dnmv730bd4p4vhxw5m4jazbzyvwm9bf4rdsr8g84yriv51zbz6a"))))
(build-system cargo-build-system)
(arguments
(list #:install-source? #f))
+59 -14
View File
@@ -75,6 +75,7 @@
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2026 Luca Alloatti <luca-guix@f-si.org>
;;; Copyright © 2026 Akiyoshi Suda <code@akiyoshisuda.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -450,7 +451,7 @@ programming languages.")
(define-public cvc5
(package
(name "cvc5")
(version "1.3.3")
(version "1.3.4")
(source
(origin
(method git-fetch)
@@ -458,10 +459,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 +3690,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 +3699,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 +3717,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 +3790,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 +3800,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 +3816,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
@@ -4574,6 +4575,45 @@ primes and prime k-tuplets up to 264.")
self-contained C-extension for Python.")
(license license:bsd-3)))
(define-public python-constraint2
(package
(name "python-constraint2")
(version "2.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/python-constraint/python-constraint")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1y62jvgb5dm91abgfs3cy260y1lxiwpvirs378a3lj4mrlmrqdsm"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "--ignore=tests/test_toml_file.py" ;release information tests
"--ignore=tests/test_util_benchmark.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-pytest-config
(lambda _
;; Drop test coverage requirements
(substitute* "pyproject.toml"
(("--cov(-[^ ]*)?([ =][^ \"]*)?") "")))))))
(native-inputs
(list python-cython
python-poetry-core ;actual build backend
python-pytest
python-setuptools)) ;required for cythonization
(home-page "https://python-constraint.github.io/python-constraint")
(synopsis "Constraint satisfaction problem resolver for Python")
(description
"The @code{python-constraint} module offers efficient solvers for
@url{https://en.wikipedia.org/wiki/Constraint_satisfaction_problem, constraint
satisfaction problems} over finite domains in an accessible Python package.")
(license license:bsd-3)))
(define-public python-cvxopt
(package
(name "python-cvxopt")
@@ -7941,7 +7981,7 @@ set.")
"doc")) ;12 MiB of documentation
(native-inputs
(list doc++
doxygen
doxygen-1.16
ghostscript
python
python-breathe
@@ -7967,13 +8007,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 +8028,7 @@ set.")
texlive-wasysym
texlive-wrapfig
texlive-xcolor
texlive-xltabular
texlive-xypic))))
(inputs
(list openblas))
@@ -8067,7 +8111,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
+3 -3
View File
@@ -754,14 +754,14 @@ Daemon (MPD).")
(define-public rmpc
(package
(name "rmpc")
(version "0.9.0")
(version "0.11.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "rmpc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "00a8z3b4wqf1j6v0ws2fckj452w46vgj1v2n446bv4ngrk7wnf06"))))
(base32 "0j2jahbm49jl1116cdl9f47pi0rmi6h4qy5gajwswr9dnld36803"))))
(build-system cargo-build-system)
(arguments
(list
@@ -787,7 +787,7 @@ Daemon (MPD).")
("target/completions/_rmpc" .
"share/zsh/site-functions/_rmpc"))))))))
(inputs (cargo-inputs 'rmpc))
(home-page "https://mierak.github.io/rmpc/")
(home-page "https://rmpc.mierak.dev/")
(synopsis "Configurable TUI client for MPD")
(description
"rmpc is a terminal based Music Player Daemon client heavily inspired by
+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
+21 -43
View File
@@ -276,24 +276,28 @@ HTTP.Agent instances from a function.")
(package
(name "node-balanced-match")
(version "1.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments (list
#:tests? #f ; FIXME Tests require 'tape'.
#:phases #~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json
(delete-dev-dependencies)))))))
(arguments
(list
#:tests? #f ;FIXME Tests require 'tape'.
#:phases
#~(modify-phases %standard-phases
(add-before 'patch-dependencies 'modify-package
(lambda _
(modify-json (delete-dev-dependencies)))))))
(synopsis "Match balanced character pairs, like { and }")
(description "Match balanced string pairs, like { and } or <b> and </b>. Supports\
regular expressions as well!")
(description
"Match balanced string pairs, like { and } or <b> and </b>. Supports
regular expressions as well!")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
@@ -344,7 +348,7 @@ addons in a wide array of potential locations.")
(lambda _
(modify-json (delete-dev-dependencies)))))))
(inputs
(list node-balanced-match-1 node-concat-map))
(list node-balanced-match node-concat-map))
(home-page "https://github.com/juliangruber/brace-expansion")
(synopsis "Brace expansion for JavaScript")
(description "This package provides brace expansion as known from
@@ -376,32 +380,6 @@ sh/bash, for JavaScript.")
(home-page (git-reference-url (origin-uri source)))
(license license:expat)))
(define-public node-balanced-match-1
(package
(name "node-balanced-match")
(version "1.0.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juliangruber/balanced-match")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0977r6hv9fyv6f8wvn31vcncxwhffnn05y0h4hmpkg8p2vs9ip0b"))))
(build-system node-build-system)
(arguments
'(#:tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'patch-dependencies 'delete-dev-dependencies
(lambda _
(modify-json (delete-dev-dependencies)))))))
(home-page "https://github.com/juliangruber/balanced-match")
(synopsis "Match balanced string pairs in JavaScript")
(description "This package provides a way to match balanced string pairs.")
(license license:expat)))
(define-public node-buffer-crc32
(package
(name "node-buffer-crc32")
+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))
+74
View File
@@ -47,6 +47,7 @@
;;; Copyright © 2026 John Dawson <dawson.john.andrew@gmail.com>
;;; Copyright © 2026 Ivan Vilata i Balaguer <ivan@selidor.net>
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2026 Zheng Junjie <z572@z572.online>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -65,6 +66,7 @@
(define-module (gnu packages password-utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
@@ -91,6 +93,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages digest)
#:use-module (gnu packages docbook)
#:use-module (gnu packages dotnet)
@@ -133,6 +136,7 @@
#:use-module (gnu packages ruby)
#:use-module (gnu packages ruby-xyz)
#:use-module (gnu packages security-token)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages suckless)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
@@ -776,6 +780,76 @@ age, and PGP.")
convert SSH @code{ed25519} keys to @code{age} keys.")
(license license:expat)))
(define-public vaultwarden
(package
(name "vaultwarden")
(version "1.36.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dani-garcia/vaultwarden")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1lipk99gqfivg95yqg80b8q0a220vwn9nmq0f4syawxnhvn9zkcd"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:features '(list "sqlite_system" "s3" "postgresql")
;; The build.rs script mandates the activation of a DB backend.
#:cargo-test-flags
'(list
"--features"
"sqlite_system,s3,postgresql"
"--")
#:cargo-install-paths ''(".")))
(inputs
(cons* openssl
postgresql
sqlite
`(,zstd "lib")
(cargo-inputs 'vaultwarden)))
(native-inputs (list pkg-config))
(home-page "https://github.com/dani-garcia/vaultwarden")
(synopsis
"Alternative implementation of the Bitwarden server API")
(description
"Vaultwarden is an unofficial Bitwarden server implementation written in
Rust. It is compatible with the official Bitwarden clients, and is ideal for
self-hosted deployments where running the official resource-heavy service is
undesirable.
Supported features are:
@itemize
@item Personal vault support
@item Organization vault support
@item Groups
@item Event Logs
@item Password sharing and access control
@item Collections
@item File attachments
@item Folders
@item Favorites
@item Website icons
@item Bitwarden Authenticator (TOTP)
@item Bitwarden Send
@item Emergency Access
@item Trash (soft delete, you can configure the days for automatic deletion)
@item Master password re-prompt
@item Personal API key
@item Two-step login via email, Duo, YubiKey, and FIDO2 WebAuthn
@item Username generator integration
@item Directory Connector support
@item Account Recovery (this requires mail to be enabled)
@item Live sync (WebSocket only) for desktop/browser clients/extensions
@item Live sync (push notifications) for mobile clients (Android/iOS)
@item Single Sign-On (SSO)
@end itemize
")
(license license:agpl3)))
(define-public yapet
(package
(name "yapet")
@@ -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)
@@ -1,46 +0,0 @@
From 8a06656acf8f6e3dfa907bea77bd57a469a8d3fb Mon Sep 17 00:00:00 2001
From: codefritzel <pascal-pf@hotmail.de>
Date: Thu, 11 Jul 2024 23:10:41 +0200
Subject: replace dsa with rsa in TestUpdateSshRoot
DSA to be deactivated in OpenSSH from 2025. Since version 7.0 dsa is
marked as deprecated.
The TestUpdateSshRoot uses DSA, which will fail in the future with newer
OpenSSH versions.
fixes #1752
Signed-off-by: codefritzel <pascal-pf@hotmail.de>
diff --git a/test/py/ganeti.tools.prepare_node_join_unittest.py b/test/py/ganeti.tools.prepare_node_join_unittest.py
index fe7efdf8c..fe029b8f2 100755
--- a/test/py/ganeti.tools.prepare_node_join_unittest.py
+++ b/test/py/ganeti.tools.prepare_node_join_unittest.py
@@ -229,20 +229,20 @@ class TestUpdateSshRoot(unittest.TestCase):
def testUpdate(self):
data = {
constants.SSHS_SSH_ROOT_KEY: [
- (constants.SSHK_DSA, "privatedsa", "ssh-dss pubdsa"),
+ (constants.SSHK_RSA, "privatersa", "ssh-rsa pubrsa"),
],
- constants.SSHS_SSH_KEY_TYPE: "dsa",
- constants.SSHS_SSH_KEY_BITS: 1024,
+ constants.SSHS_SSH_KEY_TYPE: "rsa",
+ constants.SSHS_SSH_KEY_BITS: 2048,
}
prepare_node_join.UpdateSshRoot(data, False,
_homedir_fn=self._GetHomeDir)
self.assertEqual(os.listdir(self.tmpdir), [".ssh"])
self.assertEqual(sorted(os.listdir(self.sshdir)),
- sorted(["authorized_keys", "id_dsa", "id_dsa.pub"]))
- self.assertTrue(utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa"))
+ sorted(["authorized_keys", "id_rsa", "id_rsa.pub"]))
+ self.assertTrue(utils.ReadFile(utils.PathJoin(self.sshdir, "id_rsa"))
is not None)
- pub_key = utils.ReadFile(utils.PathJoin(self.sshdir, "id_dsa.pub"))
+ pub_key = utils.ReadFile(utils.PathJoin(self.sshdir, "id_rsa.pub"))
self.assertTrue(pub_key is not None)
self.assertEqual(utils.ReadFile(utils.PathJoin(self.sshdir,
"authorized_keys")),
@@ -1,45 +0,0 @@
Fix compatibility with procps 4.
Negative UIDs are no longer allowed. Use a very high one instead.
Taken from upstream:
https://github.com/ganeti/ganeti/commit/9cd67e6a81c66ed326d68ea8c3241d14eea6550b
diff --git a/test/py/ganeti.uidpool_unittest.py b/test/py/ganeti.uidpool_unittest.py
index b2f5bc5cf2..2d9227cbf5 100755
--- a/test/py/ganeti.uidpool_unittest.py
+++ b/test/py/ganeti.uidpool_unittest.py
@@ -106,23 +106,24 @@ def testRequestUnusedUid(self):
# Check with a single, known unused user-id
#
- # We use "-1" here, which is not a valid user-id, so it's
- # guaranteed that it's unused.
- uid = uidpool.RequestUnusedUid(set([-1]))
- self.assertEqualValues(uid.GetUid(), -1)
+ # We use 2^30+42 here, which is a valid UID, but unlikely to be used on
+ # most systems (even as a subuid).
+ free_uid = 2**30 + 42
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
+ self.assertEqualValues(uid.GetUid(), free_uid)
# Check uid-pool exhaustion
#
- # uid "-1" is locked now, so RequestUnusedUid is expected to fail
+ # free_uid is locked now, so RequestUnusedUid is expected to fail
self.assertRaises(errors.LockError,
uidpool.RequestUnusedUid,
- set([-1]))
+ set([free_uid]))
# Check unlocking
uid.Unlock()
# After unlocking, "-1" should be available again
- uid = uidpool.RequestUnusedUid(set([-1]))
- self.assertEqualValues(uid.GetUid(), -1)
+ uid = uidpool.RequestUnusedUid(set([free_uid]))
+ self.assertEqualValues(uid.GetUid(), free_uid)
if __name__ == "__main__":
@@ -1,41 +0,0 @@
Add Loader argument to 'yaml.load' invocations as required by PyYAML 6.0.
Submitted upstream:
https://github.com/ganeti/ganeti/pull/1668
diff --git a/qa/qa_utils.py b/qa/qa_utils.py
index da485df48..27428e685 100644
--- a/qa/qa_utils.py
+++ b/qa/qa_utils.py
@@ -450,7 +450,7 @@ def GetObjectInfo(infocmd):
master = qa_config.GetMasterNode()
cmdline = utils.ShellQuoteArgs(infocmd)
info_out = GetCommandOutput(master.primary, cmdline)
- return yaml.load(info_out)
+ return yaml.load(info_out, Loader=yaml.SafeLoader)
def UploadFile(node, src):
diff --git a/test/py/ganeti.cli_unittest.py b/test/py/ganeti.cli_unittest.py
index 9cc980afa..242aac9fd 100755
--- a/test/py/ganeti.cli_unittest.py
+++ b/test/py/ganeti.cli_unittest.py
@@ -1141,14 +1141,15 @@ class TestFormatPolicyInfo(unittest.TestCase):
self._RenameDictItem(minmax, key, keyparts[0])
self.assertTrue(constants.IPOLICY_DTS in parsed)
parsed[constants.IPOLICY_DTS] = yaml.load("[%s]" %
- parsed[constants.IPOLICY_DTS])
+ parsed[constants.IPOLICY_DTS],
+ Loader=yaml.SafeLoader)
@staticmethod
def _PrintAndParsePolicy(custom, effective, iscluster):
formatted = cli.FormatPolicyInfo(custom, effective, iscluster)
buf = StringIO()
cli._SerializeGenericInfo(buf, formatted, 0)
- return yaml.load(buf.getvalue())
+ return yaml.load(buf.getvalue(), Loader=yaml.SafeLoader)
def _PrintAndCheckParsed(self, policy):
parsed = self._PrintAndParsePolicy(policy, NotImplemented, True)
@@ -1,28 +0,0 @@
Relax version constraints to work with Stackage LTS 19.
Taken from upstream:
https://github.com/ganeti/ganeti/commit/4f8d61ea0101721eae1c6f43be8430d819e5e611
diff --git a/cabal/ganeti.template.cabal b/cabal/ganeti.template.cabal
index bb4ff8053..98491dd9f 100644
--- a/cabal/ganeti.template.cabal
+++ b/cabal/ganeti.template.cabal
@@ -63,14 +63,14 @@ library
, unix >= 2.5.1.0
, utf8-string >= 0.3.7
- , attoparsec >= 0.10.1.1 && < 0.14
- , base64-bytestring >= 1.0.0.1 && < 1.2
+ , attoparsec >= 0.10.1.1 && < 0.15
+ , base64-bytestring >= 1.0.0.1 && < 1.3
, case-insensitive >= 0.4.0.1 && < 1.3
, curl >= 1.3.7 && < 1.4
, hinotify >= 0.3.2 && < 0.5
, hslogger >= 1.1.4 && < 1.4
, json >= 0.5 && < 1.0
- , lens >= 3.10 && < 5.0
+ , lens >= 3.10 && < 6.0
, lifted-base >= 0.2.0.3 && < 0.3
, monad-control >= 0.3.1.3 && < 1.1
, parallel >= 3.2.0.2 && < 3.3
@@ -1,90 +0,0 @@
Fix ordering of Arbitrary definitions for GHC 9 compatibility.
Taken from upstream:
https://github.com/ganeti/ganeti/commit/feab8faa8fe055c89205497e4f277ae4c7b8caad
diff --git a/test/hs/Test/Ganeti/Objects.hs b/test/hs/Test/Ganeti/Objects.hs
index 97ceb36dca..8d80be9e80 100644
--- a/test/hs/Test/Ganeti/Objects.hs
+++ b/test/hs/Test/Ganeti/Objects.hs
@@ -93,8 +93,14 @@ instance Arbitrary (Container DataCollectorConfig) where
instance Arbitrary BS.ByteString where
arbitrary = genPrintableByteString
+instance Arbitrary a => Arbitrary (Private a) where
+ arbitrary = Private <$> arbitrary
+
$(genArbitrary ''PartialNDParams)
+instance Arbitrary (Container J.JSValue) where
+ arbitrary = return $ GenericContainer Map.empty
+
instance Arbitrary Node where
arbitrary = Node <$> genFQDN <*> genFQDN <*> genFQDN
<*> arbitrary <*> arbitrary <*> arbitrary <*> genFQDN
@@ -297,10 +303,6 @@ genDisk = genDiskWithChildren 3
-- validation rules.
$(genArbitrary ''PartialISpecParams)
--- | FIXME: This generates completely random data, without normal
--- validation rules.
-$(genArbitrary ''PartialIPolicy)
-
$(genArbitrary ''FilledISpecParams)
$(genArbitrary ''MinMaxISpecs)
$(genArbitrary ''FilledIPolicy)
@@ -309,6 +311,10 @@ $(genArbitrary ''FilledNDParams)
$(genArbitrary ''FilledNicParams)
$(genArbitrary ''FilledBeParams)
+-- | FIXME: This generates completely random data, without normal
+-- validation rules.
+$(genArbitrary ''PartialIPolicy)
+
-- | No real arbitrary instance for 'ClusterHvParams' yet.
instance Arbitrary ClusterHvParams where
arbitrary = return $ GenericContainer Map.empty
@@ -331,18 +337,12 @@ instance Arbitrary OsParams where
instance Arbitrary Objects.ClusterOsParamsPrivate where
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
-instance Arbitrary a => Arbitrary (Private a) where
- arbitrary = Private <$> arbitrary
-
instance Arbitrary ClusterOsParams where
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
instance Arbitrary ClusterBeParams where
arbitrary = (GenericContainer . Map.fromList) <$> arbitrary
-instance Arbitrary IAllocatorParams where
- arbitrary = return $ GenericContainer Map.empty
-
$(genArbitrary ''Cluster)
instance Arbitrary ConfigData where
diff --git a/test/hs/Test/Ganeti/Query/Language.hs b/test/hs/Test/Ganeti/Query/Language.hs
index 04fb8c3898..fa50196f00 100644
--- a/test/hs/Test/Ganeti/Query/Language.hs
+++ b/test/hs/Test/Ganeti/Query/Language.hs
@@ -59,6 +59,9 @@ import Ganeti.Query.Language
instance Arbitrary (Filter FilterField) where
arbitrary = genFilter
+instance Arbitrary FilterRegex where
+ arbitrary = genName >>= mkRegex -- a name should be a good regex
+
-- | Custom 'Filter' generator (top-level), which enforces a
-- (sane) limit on the depth of the generated filters.
genFilter :: Gen (Filter FilterField)
@@ -97,9 +100,6 @@ $(genArbitrary ''QueryTypeLuxi)
$(genArbitrary ''ItemType)
-instance Arbitrary FilterRegex where
- arbitrary = genName >>= mkRegex -- a name should be a good regex
-
$(genArbitrary ''ResultStatus)
$(genArbitrary ''FieldType)
@@ -1,12 +0,0 @@
diff --git a/lib/build/sphinx_ext.py b/lib/build/sphinx_ext.py
index ca8b8216e..017f52343 100644
--- a/lib/build/sphinx_ext.py
+++ b/lib/build/sphinx_ext.py
@@ -45,7 +45,6 @@ import docutils.parsers.rst
from docutils.parsers.rst import Directive
import sphinx.errors
-import sphinx.util.compat
import sphinx.roles
import sphinx.addnodes
@@ -1,69 +0,0 @@
Handle GHC 9 changes in a backwards compatible manner.
Taken from upstream:
https://github.com/ganeti/ganeti/commit/b279fa738fd5b30320584f79f4d2f0e894315aab
diff --git a/src/Ganeti/THH.hs b/src/Ganeti/THH.hs
index 818c11f84..9ab93d5e3 100644
--- a/src/Ganeti/THH.hs
+++ b/src/Ganeti/THH.hs
@@ -884,7 +884,7 @@ genLoadOpCode opdefs fn = do
) $ zip mexps opdefs
defmatch = Match WildP (NormalB fails) []
cst = NoBindS $ CaseE (VarE opid) $ mpats++[defmatch]
- body = DoE [st, cst]
+ body = mkDoE [st, cst]
-- include "OP_ID" to the list of used keys
bodyAndOpId <- [| $(return body)
<* tell (mkUsedKeys . S.singleton . T.pack $ opidKey) |]
@@ -1541,7 +1541,7 @@ loadExcConstructor inname sname fields = do
[x] -> BindS (ListP [VarP x])
_ -> BindS (TupP (map VarP f_names))
cval = appCons name $ map VarE f_names
- return $ DoE [binds read_args, NoBindS (AppE (VarE 'return) cval)]
+ return $ mkDoE [binds read_args, NoBindS (AppE (VarE 'return) cval)]
{-| Generates the loadException function.
diff --git a/src/Ganeti/THH/Compat.hs b/src/Ganeti/THH/Compat.hs
index d29e30d18..1f51e49d7 100644
--- a/src/Ganeti/THH/Compat.hs
+++ b/src/Ganeti/THH/Compat.hs
@@ -40,9 +40,11 @@ module Ganeti.THH.Compat
, extractDataDConstructors
, myNotStrict
, nonUnaryTupE
+ , mkDoE
) where
import Language.Haskell.TH
+import Language.Haskell.TH.Syntax
-- | Convert Names to DerivClauses
--
@@ -61,7 +63,11 @@ derivesFromNames names = map ConT names
--
-- Handle TH 2.11 and 2.12 changes in a transparent manner using the pre-2.11
-- API.
+#if MIN_VERSION_template_haskell(2,17,0)
+gntDataD :: Cxt -> Name -> [TyVarBndr ()] -> [Con] -> [Name] -> Dec
+#else
gntDataD :: Cxt -> Name -> [TyVarBndr] -> [Con] -> [Name] -> Dec
+#endif
gntDataD x y z a b =
#if MIN_VERSION_template_haskell(2,12,0)
DataD x y z Nothing a $ derivesFromNames b
@@ -114,3 +120,12 @@ nonUnaryTupE es = TupE $ map Just es
#else
nonUnaryTupE es = TupE $ es
#endif
+
+-- | DoE is now qualified with an optional ModName
+mkDoE :: [Stmt] -> Exp
+mkDoE s =
+#if MIN_VERSION_template_haskell(2,17,0)
+ DoE Nothing s
+#else
+ DoE s
+#endif
@@ -1,179 +0,0 @@
Fix compatibility with Template Haskell 2.18 and GHC 9.2.
diff --git a/src/Ganeti/BasicTypes.hs b/src/Ganeti/BasicTypes.hs
index 10d0426cd..d68bc7d5b 100644
--- a/src/Ganeti/BasicTypes.hs
+++ b/src/Ganeti/BasicTypes.hs
@@ -206,12 +206,12 @@ instance MonadTrans (ResultT a) where
instance (MonadIO m, Error a) => MonadIO (ResultT a m) where
liftIO = ResultT . liftIO
. liftM (either (failError . show) return)
- . (try :: IO a -> IO (Either IOError a))
+ . (try :: IO α -> IO (Either IOError α))
instance (MonadBase IO m, Error a) => MonadBase IO (ResultT a m) where
liftBase = ResultT . liftBase
. liftM (either (failError . show) return)
- . (try :: IO a -> IO (Either IOError a))
+ . (try :: IO α -> IO (Either IOError α))
instance (Error a) => MonadTransControl (ResultT a) where
#if MIN_VERSION_monad_control(1,0,0)
diff --git a/src/Ganeti/Lens.hs b/src/Ganeti/Lens.hs
index faa5900ed..747366e6a 100644
--- a/src/Ganeti/Lens.hs
+++ b/src/Ganeti/Lens.hs
@@ -93,14 +93,14 @@ makeCustomLenses' name lst = makeCustomLensesFiltered f name
-- Most often the @g@ functor is @(,) r@ and 'traverseOf2' is used to
-- traverse an effectful computation that also returns an additional output
-- value.
-traverseOf2 :: Over (->) (Compose f g) s t a b
- -> (a -> f (g b)) -> s -> f (g t)
+-- traverseOf2 :: Over (->) (Compose f g) s t a b
+-- -> (a -> f (g b)) -> s -> f (g t)
traverseOf2 k f = getCompose . traverseOf k (Compose . f)
-- | Traverses over a composition of a monad and a functor.
-- See 'traverseOf2'.
-mapMOf2 :: Over (->) (Compose (WrappedMonad m) g) s t a b
- -> (a -> m (g b)) -> s -> m (g t)
+-- mapMOf2 :: Over (->) (Compose (WrappedMonad m) g) s t a b
+-- -> (a -> m (g b)) -> s -> m (g t)
mapMOf2 k f = unwrapMonad . traverseOf2 k (WrapMonad . f)
-- | A helper lens over sets.
diff --git a/src/Ganeti/THH.hs b/src/Ganeti/THH.hs
index 9ab93d5e3..9a10a9a07 100644
--- a/src/Ganeti/THH.hs
+++ b/src/Ganeti/THH.hs
@@ -996,8 +996,8 @@ buildAccessor fnm fpfx rnm rpfx nm pfx field = do
f_body = AppE (VarE fpfx_name) $ VarE x
return $ [ SigD pfx_name $ ArrowT `AppT` ConT nm `AppT` ftype
, FunD pfx_name
- [ Clause [ConP rnm [VarP x]] (NormalB r_body) []
- , Clause [ConP fnm [VarP x]] (NormalB f_body) []
+ [ Clause [myConP rnm [VarP x]] (NormalB r_body) []
+ , Clause [myConP fnm [VarP x]] (NormalB f_body) []
]]
-- | Build lense declartions for a field.
@@ -1037,10 +1037,10 @@ buildLens (fnm, fdnm) (rnm, rdnm) nm pfx ar (field, i) = do
(ConE cdn)
$ zip [0..] vars
let setterE = LamE [VarP context, VarP var] $ CaseE (VarE context)
- [ Match (ConP fnm [ConP fdnm . set (element i) WildP
+ [ Match (myConP fnm [myConP fdnm . set (element i) WildP
$ map VarP vars])
(body (not isSimple) fnm fdnm) []
- , Match (ConP rnm [ConP rdnm . set (element i) WildP
+ , Match (myConP rnm [myConP rdnm . set (element i) WildP
$ map VarP vars])
(body False rnm rdnm) []
]
@@ -1098,9 +1098,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
$ JSON.showJSON $(varE x) |]
let rdjson = FunD 'JSON.readJSON [Clause [] (NormalB read_body) []]
shjson = FunD 'JSON.showJSON
- [ Clause [ConP (mkName real_nm) [VarP x]]
+ [ Clause [myConP (mkName real_nm) [VarP x]]
(NormalB show_real_body) []
- , Clause [ConP (mkName forth_nm) [VarP x]]
+ , Clause [myConP (mkName forth_nm) [VarP x]]
(NormalB show_forth_body) []
]
instJSONdecl = gntInstanceD [] (AppT (ConT ''JSON.JSON) (ConT name))
@@ -1121,9 +1121,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
(fromDictWKeys $(varE xs)) |]
todictx_r <- [| toDict $(varE x) |]
todictx_f <- [| ("forthcoming", JSON.JSBool True) : toDict $(varE x) |]
- let todict = FunD 'toDict [ Clause [ConP (mkName real_nm) [VarP x]]
+ let todict = FunD 'toDict [ Clause [myConP (mkName real_nm) [VarP x]]
(NormalB todictx_r) []
- , Clause [ConP (mkName forth_nm) [VarP x]]
+ , Clause [myConP (mkName forth_nm) [VarP x]]
(NormalB todictx_f) []
]
fromdict = FunD 'fromDictWKeys [ Clause [VarP xs]
@@ -1136,9 +1136,9 @@ buildObjectWithForthcoming sname field_pfx fields = do
let forthPredDecls = [ SigD forthPredName
$ ArrowT `AppT` ConT name `AppT` ConT ''Bool
, FunD forthPredName
- [ Clause [ConP (mkName real_nm) [WildP]]
+ [ Clause [myConP (mkName real_nm) [WildP]]
(NormalB $ ConE 'False) []
- , Clause [ConP (mkName forth_nm) [WildP]]
+ , Clause [myConP (mkName forth_nm) [WildP]]
(NormalB $ ConE 'True) []
]
]
@@ -1412,9 +1412,9 @@ savePParamField fvar field = do
normalexpr <- saveObjectField actualVal field
-- we have to construct the block here manually, because we can't
-- splice-in-splice
- return $ CaseE (VarE fvar) [ Match (ConP 'Nothing [])
+ return $ CaseE (VarE fvar) [ Match (myConP 'Nothing [])
(NormalB (ConE '[])) []
- , Match (ConP 'Just [VarP actualVal])
+ , Match (myConP 'Just [VarP actualVal])
(NormalB normalexpr) []
]
@@ -1440,9 +1440,9 @@ fillParam sname field_pfx fields = do
-- due to apparent bugs in some older GHC versions, we need to add these
-- prefixes to avoid "binding shadows ..." errors
fbinds <- mapM (newName . ("f_" ++) . nameBase) fnames
- let fConP = ConP name_f (map VarP fbinds)
+ let fConP = myConP name_f (map VarP fbinds)
pbinds <- mapM (newName . ("p_" ++) . nameBase) pnames
- let pConP = ConP name_p (map VarP pbinds)
+ let pConP = myConP name_p (map VarP pbinds)
-- PartialParams instance --------
-- fillParams
let fromMaybeExp fn pn = AppE (AppE (VarE 'fromMaybe) (VarE fn)) (VarE pn)
@@ -1462,7 +1462,7 @@ fillParam sname field_pfx fields = do
memptyClause = Clause [] (NormalB memptyExp) []
-- mappend
pbinds2 <- mapM (newName . ("p2_" ++) . nameBase) pnames
- let pConP2 = ConP name_p (map VarP pbinds2)
+ let pConP2 = myConP name_p (map VarP pbinds2)
-- note the reversal of 'l' and 'r' in the call to <|>
-- as we want the result to be the rightmost value
let altExp = zipWith (\l r -> AppE (AppE (VarE '(<|>)) (VarE r)) (VarE l))
@@ -1575,9 +1575,9 @@ genLoadExc tname sname opdefs = do
opdefs
-- the first function clause; we can't use [| |] due to TH
-- limitations, so we have to build the AST by hand
- let clause1 = Clause [ConP 'JSON.JSArray
- [ListP [ConP 'JSON.JSString [VarP exc_name],
- VarP exc_args]]]
+ let clause1 = Clause [myConP 'JSON.JSArray
+ [ListP [myConP 'JSON.JSString [VarP exc_name],
+ VarP exc_args]]]
(NormalB (CaseE (AppE (VarE 'JSON.fromJSString)
(VarE exc_name))
(str_matches ++ [defmatch]))) []
diff --git a/src/Ganeti/THH/Compat.hs b/src/Ganeti/THH/Compat.hs
index 1f51e49d7..9b07c47ef 100644
--- a/src/Ganeti/THH/Compat.hs
+++ b/src/Ganeti/THH/Compat.hs
@@ -41,6 +41,7 @@ module Ganeti.THH.Compat
, myNotStrict
, nonUnaryTupE
, mkDoE
+ , myConP
) where
import Language.Haskell.TH
@@ -129,3 +130,11 @@ mkDoE s =
#else
DoE s
#endif
+
+-- | ConP is now qualified with an optional [Type].
+myConP :: Name -> [Pat] -> Pat
+myConP n patterns = ConP n
+#if MIN_VERSION_template_haskell(2,18,0)
+ []
+#endif
+ patterns
@@ -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 '())))
+64 -49
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
@@ -2726,59 +2726,51 @@ choice. Supported launchers are: dmenu, fuzzel, rofi, walker and custom.")
(define-public py-spy
(package
(name "py-spy")
(version "0.4.0")
(version "0.4.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "py-spy" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0fvdmrqp4qand1zb9cwks8hpkysdqajrdh9y7ks15c78985k1x64"))))
(base32 "15vccm4q0lqgpq0q9vrzriz58dcrxj2bqf9ac9s4n2bvdxy5f0va"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:modules
'((guix build cargo-build-system)
(guix build utils)
(ice-9 match))
#:cargo-test-flags
;; python-numpy isn't in the build environment
''("--" "--skip=test_local_vars")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-shell-completions
(lambda* (#:key native-inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share"))
(bash-completions-dir
(string-append out "/share/bash-completion/completions"))
(zsh-completions-dir
(string-append share "/zsh/site-functions"))
(fish-completions-dir
(string-append share "/fish/vendor_completions.d"))
(elvish-completions-dir
(string-append share "/elvish/lib"))
(py-spy (if #$(%current-target-system)
(search-input-file native-inputs "/bin/py-spy")
(string-append out "/bin/py-spy"))))
(for-each mkdir-p
(list bash-completions-dir
zsh-completions-dir
fish-completions-dir
elvish-completions-dir))
(with-output-to-file
(string-append bash-completions-dir "/py-spy")
(lambda _ (invoke py-spy "completions" "bash")))
(with-output-to-file
(string-append zsh-completions-dir "/_py-spy")
(lambda _ (invoke py-spy "completions" "zsh")))
(with-output-to-file
(string-append fish-completions-dir "/py-spy.fish")
(lambda _ (invoke py-spy "completions" "fish")))
(with-output-to-file
(string-append elvish-completions-dir "/py-spy")
(lambda _ (invoke py-spy "completions" "elvish")))))))))
(lambda* (#:key native-inputs #:allow-other-keys)
(for-each
(match-lambda
((shell . path)
(mkdir-p (in-vicinity #$output (dirname path)))
(let ((binary
(if #$(%current-target-system)
(search-input-file native-inputs "bin/py-spy")
(in-vicinity #$output "bin/py-spy"))))
(with-output-to-file (in-vicinity #$output path)
(lambda _
(invoke binary "completions" shell))))))
'(("bash" . "share/bash-completion/completions/py-spy")
("elvish" . "share/elvish/lib/py-spy")
("fish" . "share/fish/vendor_completions.d/py-spy.fish")
("zsh" . "share/zsh/site-functions/_py-spy"))))))))
(native-inputs
(append
(if (%current-target-system)
(list this-package)
'())
(list python-minimal-wrapper)))
(inputs (cons libunwind (cargo-inputs 'py-spy)))
(inputs (cargo-inputs 'py-spy))
(home-page "https://github.com/benfred/py-spy")
(synopsis "Sampling profiler for Python programs")
(description
@@ -3047,24 +3039,24 @@ browsers.")
(define-public rust-cargo-edit
(package
(name "rust-cargo-edit")
(version "0.13.2")
(version "0.13.10")
(source (origin
(method url-fetch)
(uri (crate-uri "cargo-edit" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1y3pa7qdq2r13ya9qfiw0lb8xm0qbs6q64pj548q6c0hdcxw2mdm"))))
"0m0bbrkk8lpliwji19cd7jxzgv7i7fcdimbv52icqyr9nl0xlnba"))))
(build-system cargo-build-system)
(arguments
`(#:install-source? #f
;; Not all files included.
#:cargo-test-flags '("--" "--skip=::case")))
(list #:install-source? #f
;; Not all files included.
#:cargo-test-flags ''("--" "--skip=::case")))
(native-inputs
(list pkg-config))
(inputs
(cons* curl
libgit2-1.8
libgit2-1.9
libssh2
openssl
zlib
@@ -3115,18 +3107,41 @@ rebase.")
(define-public pastel
(package
(name "pastel")
(version "0.10.0")
(version "0.12.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "pastel" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1mwy4nx3jn74sr1q8ap98faja5wp7hz51yqga8l050xz645kb8wj"))))
(base32 "0rcvas6xcjdl9whhjzbvj3pmr7q86masn5vnvc2bmn1c3788mh30"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f))
#:install-source? #f
#:imported-modules (append %copy-build-system-modules
%cargo-build-system-modules)
#:modules '((guix build cargo-build-system)
((guix build copy-build-system) #:prefix copy:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'pre-build
(lambda _
(setenv "SHELL_COMPLETIONS_DIR" "target")))
(add-after 'install 'install-extras
(lambda args
(apply (assoc-ref copy:%standard-phases 'install)
#:install-plan
'(("target/pastel.bash"
"share/bash-completion/completions/pastel")
("target/pastel.fish"
"share/fish/vendor_completions.d/")
("target/_pastel"
"share/zsh/site-functions/")
("target/" "share/man/man1/"
#:include-regexp ("\\.1$")))
args))))))
(inputs (cargo-inputs 'pastel))
(home-page "https://github.com/sharkdp/pastel")
(synopsis
@@ -3360,7 +3375,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 +3384,7 @@ command.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "02yy57pa4p53vrhpgc8xf737dnqiifnnnjinh49yq1345kd3287j"))
(base32 "0404jgzfcbmjvr1zl9jgw49nqs1s182cbvdzwh92i76qd2cpg166"))
(modules '((guix build utils)))
(snippet
'(begin
+5176 -3670
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -674,14 +674,14 @@ document and bibtex retrieval.")
(define-public ugrep
(package
(name "ugrep")
(version "7.8.0")
(version "7.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Genivia/ugrep")
(commit (string-append "v" version))))
(sha256
(base32 "0968cws0bvfgip7yh9vkhxfmr70dl1jr681yzgzhpn0xdv6iqg94"))
(base32 "04vdvyf81881zqfvsyd4zwbgj9ian6grz55lcj4vbvmqk86anf90"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
+2 -1
View File
@@ -303,10 +303,11 @@ This Guix package is built to use the nettle cryptographic library.")
;;
;; This package follows the version of the sequoia-openpgp crate.
(define-public sequoia
(package
(name "sequoia")
(version "2.2.0")
(version "2.3.0")
(source #f)
(build-system trivial-build-system)
(arguments
+7 -3
View File
@@ -133,7 +133,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(define-public fish
(package
(name "fish")
(version "4.6.0")
(version "4.7.0")
(source
(origin
(method url-fetch)
@@ -141,7 +141,7 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
"releases/download/" version "/"
"fish-" version ".tar.xz"))
(sha256
(base32 "1ak12wpjllckv566k9jjy59si25whsib3j8ip8yqmqm06gvnb4gw"))
(base32 "1nx9m8kis1v4w27mdzzpj9l9mpnz0w7n1v7kaajd9lv5ny63njn5"))
;; TODO: Unbundle corrosion.
(patches (search-patches "corrosion-honor-CARGO_BUILD_TARGET.patch"))))
(build-system cmake-build-system)
@@ -218,9 +218,11 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
;; "Found existing zombie processes. Clean up zombies before running this test."
;; Disabling parallel tests does not reliably prevent it.
(delete-file "tests/checks/jobs.fish")
;; This one needs to chdir successfully.
;; These ones need to chdir successfully.
(substitute* "tests/checks/vars_as_commands.fish"
(("/usr/bin") "/tmp"))
(substitute* "tests/checks/cd.fish"
(("cd bin") "cd tmp"))
;; shebangless scripts don't work
(delete-file "tests/checks/noshebang.fish")
;; This doesn't work
@@ -236,6 +238,8 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
(("/usr/bin/e\"") (string-append coreutils "/bin/e\""))
(("\"/bin") "\"/tmp")
(("\"/usr") "\"/tmp"))
(substitute* "tests/checks/colon-delimited-var.fish"
(("/usr/bin:a:.:b") "/tmp/bin:a:.:b"))
(substitute* "tests/test_driver.py"
(("\"cc\"") "\"gcc\"")))))
;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish.
+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+)))
+2 -2
View File
@@ -71,14 +71,14 @@
(define-public tor
(package
(name "tor")
(version "0.4.9.6")
(version "0.4.9.8")
(source (origin
(method url-fetch)
(uri (string-append "https://dist.torproject.org/tor-"
version ".tar.gz"))
(sha256
(base32
"05vh1bcsr0gx2xwl7r94drmqlzp0dgag43dlajk6769f0nbvm6m8"))))
"1ph5dpwz1dnrkzxxzbx67kz64rp8v788z4kxs9vhiayj5m73j7xc"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
+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))

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