1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-08 18:14:06 +02:00

Compare commits

..

113 Commits

Author SHA1 Message Date
Vagrant Cascadian f0a4f6d214 gnu: linux-libre: Update default version to 7.0.
* gnu/packages/linux.scm (linux-libre-version, linux-libre-gnu-revision,
linux-libre-pristine-source, linux-libre-source, linux-libre,
linux-libre-arm64-mnt-reform): Update to 7.0.
2026-05-27 12:30:54 -07:00
luca da69abdca1 gnu: evince: Update to 48.4.
* gnu/packages/gnome.scm (evince): Update to 48.4.

Change-Id: I2638b0ce644f680a1361b2ff3e9e233eb8131fa3
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 20:27:45 +02:00
orahcio f4b0275610 gnu: sway: Update to 1.12.
* gnu/packages/wm.scm (sway): Update to 1.12.
[inputs]: Replace wlroots-0.19 with wlroots-0.20.

Change-Id: I66a9c7f4ddf6f84daf0ce239cbb44933ba9dfd3a
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 20:25:43 +02:00
Cayetano Santos 50454dab4a gnu: Add python-udapi.
* gnu/packages/python-xyz.scm (python-udapi): New variable.

Change-Id: I9e7679c0030ac1fb281f638b286182bb2736a242
2026-05-27 20:04:12 +02:00
Yappaholic 89747ea3ac gnu: mangowm: Update to 0.13.1.
* gnu/packages/wm.scm (mangowm): Update to 0.13.1.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 19:42:06 +02:00
Zhu Zihao 41111228d5 gnu: 7zip: Update to 26.01 [security-fixes].
Contains Fixes for:
CVE-2026-48095: 7-Zip Heap Buffer Overflow Can Lead to Code Execution

* gnu/packages/compression.scm (7zip): Update to 26.01.

Change-Id: I352bb1669438acd11d68a9cabc638c6c403b169b
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 18:39:26 +02:00
Reepca Russelstein f519ddf733 daemon: Allow ADDR_NO_RANDOMIZE to be omitted if `--allow-aslr'.
Docker's default seccomp filter prevents use of the ADDR_NO_RANDOMIZE flag
with the personality system call.  It causes personality to return EPERM.  In
general, we assume that any result other than the only documented one, EINVAL,
is caused by seccomp.  If we detect that ADDR_NO_RANDOMIZE is blocked, and the
--allow-aslr option was passed, we simply don't use it.

This allows guix-daemon to continue to work even in these containers, without
any implicit weakening of reproducibility.

Since it is presumably desirable to be able to build guix itself in such an
environment, also pass --allow-aslr to guix-daemon in test-env.

* nix/libstore/globals.hh (Settings::allowASLR): new field.
* nix/nix-daemon/guix-daemon.cc (options): add --allow-aslr option.
  (parse_opt): use it to set Settings::allowASLR.
* nix/libstore/build.cc (DerivationGoal::startBuilder): detect when
  ADDR_NO_RANDOMIZE is blocked and --allow-aslr is passed and don't use it in
  that case.
* doc/guix.texi: document --allow-aslr in "Invoking guix-daemon".
* build-aux/test-env.in: always pass --allow-aslr.

Fixes: guix/guix#3917
Change-Id: I51c5899a9559e161f9e107c2e6a36df395ab3134
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
Merges: #4616
2026-05-27 18:25:16 +02:00
Ludovic Courtès 4ac91ee39c gnu: gdb: Update to 17.2.
* gnu/packages/gdb.scm (gdb-17): Update to 17.2.

Change-Id: Ib3e905ab04a8562a5ca9ddf0a6959e6bc30c7b6a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8806
2026-05-27 18:25:16 +02:00
Ludovic Courtès 752d3c0a52 gnu: lout: Update to 3.43.4.
* gnu/packages/lout.scm (lout): Update to 3.43.4.

Change-Id: I3bf469b427411706ba5b3ef1cdb056174d94a0f0
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8805
2026-05-27 18:25:16 +02:00
Ludovic Courtès de20eed853 gnu: man-pages: Update to 6.18.
* gnu/packages/man.scm (man-pages): Update to 6.18.

Change-Id: If778879c9faed3123400b43a2d48a593283ed789
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8808
2026-05-27 18:25:16 +02:00
Ludovic Courtès 9b755bfffd gnu: xdot: Update to 1.6.
* gnu/packages/graphviz.scm (xdot): Update to 1.6.

Change-Id: Id4eac906640421f8651b3a37e87daaf0ea7466c4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8807
2026-05-27 18:25:15 +02:00
Ludovic Courtès bcfe9dba35 ci: (Cross-)build the architecture-specific Linux-libre packages.
* gnu/ci.scm (core-packages): In ‘target-linux?’ case, add the
linux-libre-*-generic architecture-specific kernel packages.

Change-Id: Ie9579b5b77160e57e563542a03fdd6e563fcc193
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #8776
2026-05-27 18:25:15 +02:00
André Batista fe11a2a2e9 gnu: mullvadbrowser: Update to 15.0.14.
Fixes CVEs: 2026-8388, 2026-8391, 2026-8401, 2026-8946, 2026-8947,
2026-8949, 2026-8950, 2026-8953, 2026-8954, 2026-8955, 2026-8956,
2026-8957, 2026-8958, 2026-8959, 2026-8961, 2026-8962, 2026-8968,
2026-8970, 2026-8974 and 2026-8975.

See:
<https://www.mozilla.org/en-US/security/advisories/mfsa2026-48/> for
details.

* gnu/packages/tor-browsers.scm (%mullvadbrowser-build-date): Update to
20260518170000.
(%mullvadbrowser-version): Update to 15.0.14.
(%mullvadbrowser-firefox-version): Update to 140.11.0esr-15.0-1-build2.
(mullvadbrowser-translation-base): Update to 6749f7ce29.

Change-Id: I854d2d3db669920c67abc18c624288bc9091e979
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 17:48:54 +02:00
André Batista 79f8ab94ab gnu: torbrowser: Update to 15.0.14.
Fixes CVEs: 2026-8388, 2026-8391, 2026-8401, 2026-8946, 2026-8947,
2026-8949, 2026-8950, 2026-8953, 2026-8954, 2026-8955, 2026-8956,
2026-8957, 2026-8958, 2026-8959, 2026-8961, 2026-8962, 2026-8968,
2026-8970, 2026-8974 and 2026-8975.

See:
<https://www.mozilla.org/en-US/security/advisories/mfsa2026-48/> for
details.

* gnu/packages/tor-browsers.scm (%torbrowser-build-date): Update to
20260518170000.
(%torbrowser-version): Update to 15.0.14.
(%torbrowser-firefox-version): Update to 140.11.0esr-15.0-1-build3.
(torbrowser-translation-base): Update to 6749f7ce29.
(torbrowser-translation-specific): Update to a2e92e2c255.

Change-Id: I4737675dabde352c2f9602efe9c82d43aaf7c66c
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-05-27 17:48:34 +02:00
Andreas Enge b8d0488032 gnu: Remove packagekit-qt5.
* gnu/packages/qt.scm (packagekit-qt5): Delete variable.

Fixes: guix/guix#8056
Change-Id: I6adb8a34b6339d5be2b9e61d91865465b0e2378d
2026-05-27 17:41:34 +02:00
Andreas Enge 56d9e3e9ce gnu: packagekit-qt6: Disinherit from packagekit-qt5.
* gnu/packages/qt.scm (packagekit-qt6)[inherit]: Drop field.
(version, source, build-system, home-page, license): Copy-paste from
packagekit-qt5.
(arguments, inputs): Rewrite.

Change-Id: I89656a7a03df716d3035096675f2c689bca8b2d5
2026-05-27 17:41:29 +02:00
Andreas Enge 5a90fd6df0 gnu: Remove qcoro-qt5.
* gnu/packages/qt.scm (qcoro-qt5): Delete variable.

Change-Id: I8e35406e3291564ae85de7a87514857b0e0b0bef
2026-05-27 17:41:27 +02:00
Andreas Enge 233640eb06 gnu: qcoro-qt6: Disinherit from qcoro-qt5.
* gnu/packages/qt.scm (qcoro-qt6)[inherit]: Drop field.
[version, source, build-system, native-inputs, home-page, description,
license]: Copy-paste from qcoro-qt5.
[arguments, inputs]: Rewrite.

Change-Id: Ib2dd82f3c28600cfdbec1ff7c02f5e185c05a349
2026-05-27 17:41:24 +02:00
Andreas Enge c276bb2d89 gnu: Remove libqaccessibilityclient-qt5.
* gnu/packages/kde-frameworks.scm (libqaccessibilityclient-qt5): Delete variable.

Change-Id: I2bba01ac7b92b3381f9b37d3aa48b80f13ca5426
2026-05-27 17:41:23 +02:00
Andreas Enge c88cd7fcae gnu: Remove qxlsx-qt5.
* gnu/packages/qt.scm (qxlsx-qt5): Delete variable.

Change-Id: Id271d638c2e30bf374f801dc82e10ad6782c43ce
2026-05-27 17:41:21 +02:00
Andreas Enge d7b397aa91 gnu: Add guile-with-gmp.
This variant compiles with GMP instead of the built-in mini-gmp.

* gnu/packages/guile.scm (guile-with-gmp): New variable.

Change-Id: I82f7d52452fef3817566645cadb7df0f48465cdd
2026-05-27 17:36:52 +02:00
jgart 19da15f871 gnu: trealla: Update to 2.100.10.
* gnu/packages/prolog.scm (trealla): Update to 2.100.10.

Change-Id: I0fe95d759a16d00370d89dd2ae3b15dad97b7580
2026-05-27 09:04:10 -04:00
luca 8e871e15a5 gnu: kcachegrind: Update to 26.04.1.
* gnu/packages/kde-sdk.scm (kcachegrind): Update to 26.04.1.

Change-Id: I4cfde19a7d03d50e20231d5263d2cc7373cf7845
2026-05-27 18:01:12 +05:30
Efraim Flashner bf3c923f6d gnu: openshadinglanguage: Don't use custom check phase.
* gnu/packages/graphics.scm (openshadinglanguage)[arguments]: Add
test-exclude keyword. Remove custom 'check phase.

Change-Id: Ie53ba6e148be22ce0fe75d0d86aa839427b5624b
2026-05-27 11:52:57 +03:00
Efraim Flashner 6c7c1a4b28 gnu: Remove rust-pipewire-0.8.0.fd3d8f7.
* gnu/packages/rust-sources.scm (rust-pipewire-0.8.0.fd3d8f7): Remove
variable.

Change-Id: I1154b5d6b530d5e78855925b89aac2e51a090b8e
2026-05-27 11:52:57 +03:00
Efraim Flashner 646ade357a gnu: keepassxc: Don't use custom check phase.
* gnu/packages/password-utils.scm (keepassxc)[arguments]: Add
test-exclude keyword. Remove custom 'check phase.

Change-Id: Id05c6ae14932c79e3df39ce926da57d0f62a0ca5
2026-05-27 11:52:53 +03:00
luca 91c5e436f6 gnu: ninja: Move to build-tools.
* gnu/packages/build-tools.scm (ninja, ninja/pinned, samurai)
  (samu-as-ninja-wrapper): Move to here...
* gnu/packages/ninja.scm (ninja, ninja/pinned, samurai)
  (samu-as-ninja-wrapper): ...from here.  New deprecated variables.
* guix/build-system/cmake.scm (default-ninja):
  Switch to loading from build-tools module.
* guix/build-system/meson.scm (default-ninja): Likewise.

Change-Id: Ia32fb258159cfcc9a0f1ef91c335c71c25a6d7ef
Closes: https://codeberg.org/guix/guix/issues/3595
Merges: https://codeberg.org/guix/guix/pulls/4329
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-27 16:55:34 +09:00
bdunahu 47deb7a819 gnu: Add font-medieval-sharp.
* gnu/packages/fonts.scm (font-medieval-sharp): New variable.

Change-Id: Icfd91104d0f5d66d8db4fa084463c76484bb3a7f
Merges: https://codeberg.org/guix/guix/pulls/7479
Reviewed-by: moksh <mysticmoksh@riseup.net>
Reviewed-by: kestrel <kestrel.w@proton.me>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-27 16:42:00 +09:00
bdunahu 3cb2f74b0d gnu: pantalaimon: Switch to python-dbus.
Since ef6d874c33 ("gnu: python-notify2: Switch to python-dbus."),
python-notify2 propagates python-dbus rather than python-dbus-1.2.
Because pantalaimon propagates python-notify2 as well as
python-dbus-1.2, we have a collision.

python-dbus-1.2 was specified as an input to pantalaimon
in commit 1f9e47518b ("gnu: python-dbus: Rename to python-dbus-1.2 "),
to adapt the reference, so there should be no compatibility reasons
to use the older version.

* gnu/packages/matrix.scm (pantalaimon)[propagated-inputs]:
  Replace python-dbus-1.2 with python-dbus.

Change-Id: I8da0bfab0d0eb25c00625ca3c1674d41a84caed9
Fixes: https://codeberg.org/guix/guix/issues/8839
Merges: https://codeberg.org/guix/guix/issues/8855
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-27 15:35:26 +09:00
Vagrant Cascadian c1b36b6524 gnu: linux-libre 5.10: Update to 5.10.257.
* gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.257.
(linux-libre-5.10-pristine-source): Update hash.
2026-05-26 20:41:41 -07:00
Vagrant Cascadian e7c2bd4d49 gnu: linux-libre 5.15: Update to 5.15.208.
* gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.208.
(linux-libre-5.15-pristine-source): Update hash.
2026-05-26 20:41:38 -07:00
Vagrant Cascadian 0345a20749 gnu: linux-libre 6.1: Update to 6.1.174.
* gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.174.
(linux-libre-6.1-pristine-source): Update hash.
2026-05-26 20:41:36 -07:00
Vagrant Cascadian 573e9a2f4d gnu: linux-libre 6.6: Update to 6.6.141.
* gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.141.
(linux-libre-6.6-pristine-source): Update hash.
2026-05-26 20:41:33 -07:00
Maxim Cournoyer 17960b2313 doc: Add missing menu entry for volunteer run mirrors.
* doc/guix.texi (Substitutes): Add missing menu entry.

Change-Id: Ia2e6e516ddff3f836b51c34fd8441350793c352d
2026-05-27 09:21:17 +09:00
Anderson Torres 2f6fb22400 gnu: os-prober: Update to 1.84.
* gnu/packages/bootloaders.scm (os-prober): Update to 1.84.
[source]: use git-fetch.

Change-Id: I3b994c8801616df00248858d9f7d8560be1aced6
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
Co-Authored-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-26 15:57:14 -07:00
Anderson Torres 63e7c1b4ed gnu: os-prober: Cleanup.
* gnu/packages/bootloaders.scm (os-prober): Cleanup.
[arguments]: Use gexps.
[home-page]: Fix redirect.

Change-Id: I81d0112b198f2176768be58fac220e87f8921310
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-26 15:56:32 -07:00
Ron Nazarov cf1c24736e gnu: Add ectool.
* gnu/packages/coreboot.scm (ectool): New variable.

Change-Id: I0fbde5f3c55fc7f43577a73462336859ab48b632
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-26 15:12:59 -07:00
Denis 'GNUtoo' Carikli 87ab0daf6b gnu: Add bucts.
* gnu/packages/coreboot.scm (bucts): New variable.

Co-authored-by: Ron Nazarov <ron@noisytoot.org>
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Change-Id: I5964f138c3947298f047afb16dd30b54c396018b
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-05-26 15:12:48 -07:00
Ricardo Wurmus bfc2d9c69b gnu: python-google-pasta: Fix tests.
* gnu/packages/python-xyz.scm (python-google-pasta)[arguments]: Add phase
'fix-tests to patch procedure name.

Change-Id: Id85b61cc827269b7c38dc1159b197d2de8dd37d9
2026-05-26 20:52:52 +02:00
Sören Tempel b433486c7d gnu: mtr: Remove dependency on libcap.
This is only needed so that mtr can call setcap(8) from its Makefile,
which we don't want it to do.

See https://codeberg.org/guix/guix/issues/8614

* gnu/packages/networking.scm (mtr)[inputs]: Remove libcap.

Change-Id: I0c532cc4772ed2336bf3251aa5dc4b857b47fe7e
2026-05-26 19:44:18 +02:00
Sören Tempel 9609336829 services: web: Add system tests for gunicorn.
* gnu/tests/web.scm (%gunicorn-os): New variable.
(run-gunicorn-test): New variable.
(%test-gunicorn): New variable.

Change-Id: I1ee3fd4c29c7c44aa9c271c6775f953790ca60c3
2026-05-26 18:43:22 +02:00
Sören Tempel 056de157b2 services: gunicorn: Allow configuration of control-socket.
Since gunicorn is run in its own Linux namespace, where $HOME is
read-only, creating that control-socket fails and prevents gunicorn
from starting by default.  Therefore, this patch disables it by
default but allows supplying a custom path via a newly added
configuration field.

* gnu/services/web.scm (gunicorn-app): Add gunicorn-app-control-socket.
(gunicorn-shepherd-services): Respect gunicorn-app-control-socket.
* doc/guix.texi (gunicorn-app): Document it.

Change-Id: I648079b630293a47801713425728a4d602c8088c
2026-05-26 18:43:22 +02:00
Sören Tempel 5b4c715e2a services: gunicorn: Fix usage with non-uri listening addresses.
If the provided unix-socket? parameter is not an URI uri->string returns
to be raised.  For example, on inputs such as "0.0.0.0:8080".  This is
fixed in this commit by first checking if the input parameter is a valid
URI, before calling uri-scheme.

* gnu/tests/web.scm (unix-socket?): Check URI before calling uri-scheme.

Change-Id: Icd9cb1e215a09b1f5dcbec4630e7df3256cde4aa
2026-05-26 18:43:16 +02:00
Nicolas Goaziou 04eaafe0dc gnu: texlive-neoschool: Update to 2026.1-79141.
* gnu/packages/tex.scm (texlive-neoschool): Update to 2026.1-79141.

Change-Id: Iaeb2ad32d983ad49ab2470bdbcfa88eac2dab5dd
2026-05-26 18:36:00 +02:00
jgart 72ad38a46f gnu: trealla: Update to 2.100.9.
* gnu/packages/prolog.scm (trealla): Update to 2.100.9.

Change-Id: Id312720718da7db981122662793384bae95091a6
2026-05-26 12:19:37 -04:00
Anderson Torres 3116440b9a gnu: Remove emacs-4clojure.
Since 2025-12-30 the repository is archived.  Further, the 4clojure site
itself is down for good.

* gnu/packages/emacs-xyz.scm (emacs-4clojure): Delete variable.

Closes guix/guix#7841
Fixes guix/guix!8583

Change-Id: Idd3c12f8a2bf328ff5a35cb63039176d80274fe5
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-26 18:15:05 +02:00
Nguyễn Gia Phong d12594eb54 Revert "gnu: qtile: Update to 0.36.0."
This reverts commit 8709675a51.
2026-05-27 00:09:10 +09:00
Cayetano Santos 47dffdc2f6 gnu: nvc: Update to 1.21.0.
* gnu/packages/electronics.scm (nvc): Update to 1.21.0.

Change-Id: I05d41216badd2369722be1ce3ba4b3d8e3138589
2026-05-26 15:13:22 +02:00
Roman Scherer 567d2bc7ea gnu: gtk: Disable svg suite on aarch64.
* gnu/packages/gtk.scm (gtk)[#:configure-flags]: If target-aarch64?,
add “--no-suite=svg”.

Change-Id: Ife603e82bcdacc7034e25e4831dc39a4ad793d3b
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-26 15:03:07 +02:00
bdunahu 3a264df1ee gnu: Add angband-sdl2.
* gnu/packages/games.scm (angband-sdl2): New variable.

Change-Id: I855fe78d1157dedf1aa80475f016eced0582883c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-26 15:03:07 +02:00
bdunahu 895f880ac7 gnu: angband: Only delete nonfree assets from checkout.
These changes allow for future graphical versions of this package.

* gnu/packages/patches/angband-remove-nonfree-tile-options.patch: New file.
* gnu/local.mk: (dist_patch_DATA): Register it.
* gnu/packages/games.scm (angband)[source]: Apply it.  Selectively snip out nonfree tilesets.  Do not delete makefiles which enable graphics…
[#:phases]<disable-graphics-and-sounds>: …but do delete them here.
[#:configure-flags]: Add ‘--disable-x11’.

Change-Id: I5cdfcf63747b13ba7763e43fbbf56bfe126a440b
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-05-26 15:03:06 +02:00
Nguyễn Gia Phong 948bac0f46 guix: packages: origin-actual-file-name: Support Fossil.
This fixes the file-name false positive in guix lint.
If an origin-file-name is not specified, fossil-fetch computes one
from the repository's URI and check-in hash.

* guix/fossil-download.scm: Export <fossil-reference> record name.
* guix/packages.scm (origin-actual-file-name): Add support for Fossil.

Change-Id: I740af495c8e624caa947c667c6cbe379ddf033c8
2026-05-26 21:37:17 +09:00
Patrick Norton 8c95d6364a gnu: Add git-quick-stats.
* gnu/packages/version-control.scm (git-quick-stats): New variable.

Merges guix/guix!8748

Change-Id: Icfd4c133491a4faa4e234dd962571b5a4dde8f33
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-05-26 11:28:02 +02:00
Maxim Cournoyer 21898c0a1a Revert "gnu: openresolv: Update to 3.17.4."
This reverts commit 094e50ffc5.  It broke
NetworkManager's name resolution.

Fixes: #8813
2026-05-26 16:07:53 +09:00
Maxim Cournoyer dc4db2273a service: dnsmasq: Expose new options for authoritative operation.
* gnu/services/dns.scm (<dnsmasq-configuration>)
[authoritative-servers, authoritative-zones, host-records]: New fields.
(dnsmasq-shepherd-service): Use them.
* doc/guix.texi (DNS Services): Add a new example and document the new fields.

Change-Id: Ib26c3f59e90b2a9997ecdac03c5564ae02b6754e
Reviewed-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 16:07:53 +09:00
Maxim Cournoyer 7d9b4b7bb7 service: dnsmasq: Add 'locals' configuration option.
* gnu/services/dns.scm (<dnsmasq-configuration>)
[locals]: New field.
(dnsmasq-shepherd-service): Use it.
* doc/guix.texi (DNS Services): Document it.

Change-Id: I1c2bc86c1636aa82451d1a38959380c3791fd8d4
2026-05-26 16:07:53 +09:00
Maxim Cournoyer 185b9f4f19 service: dnsmasq: Add ipv4? and ipv6? configuration options.
* gnu/services/dns.scm (<dnsmasq-configuration>) [ipv4?, ipv6?]: New fields.
(dnsmasq-shepherd-service): Use them.
* doc/guix.texi (DNS Services): Document them.

Change-Id: I50a4e407cea9e55295c9cfff081b7678ab7e061c
2026-05-26 16:07:53 +09:00
Nguyễn Gia Phong 663293331b teams: Nguyễn Gia Phong: Add to the Lua team.
* etc/teams.scm ("Nguyễn Gia Phong"): Add lua to the team list.

Change-Id: I9fe8ce6ac20bb327228473f1217a86905104778a
Merges: https://codeberg.org/guix/guix/pulls/8819
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
2026-05-26 16:02:18 +09:00
Nguyễn Gia Phong 9b8833ea6e gnu: libfossil: Remove explicit source file name.
* gnu/packages/version-control.scm (libfossil)[source]:
  Remove explicit file-name, which is the same as the default one.

Change-Id: I763d9c4553108e10aa0e4fad18cf5a22a6cbe3ea
2026-05-26 15:59:58 +09:00
luca 664f30f290 gnu: btop: Update to 1.4.7.
* gnu/packages/admin.scm (btop): Update to 1.4.7.

Change-Id: I836386740842fe2127db210b3a55d73d5e1eb2d5
Reviewed-by: Sughosha <sughosha@disroot.org>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 13:13:46 +09:00
Spencer King 3375afec60 gnu: Add python-islenska.
* gnu/packages/language.scm (arnastofnun-dim)
  (python-islenska-bootstrap, python-islenska): New variables.

Change-Id: I2ccb8cdfa02dc419dffbff4a5b1af81c6af107ce
Merges: https://codeberg.org/guix/guix/pulls/7237
Modified-by: Nguyễn Gia Phong <cnx@loang.net>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 11:42:50 +09:00
Vagrant Cascadian 74180388ea gnu: linux-libre 6.12: Update to 6.12.91.
* gnu/packages/linux.scm (linux-libre-6.12-version): Update to 6.12.91.
(linux-libre-6.12-pristine-source): Update hash.
2026-05-25 17:05:01 -07:00
Vagrant Cascadian d401b80857 gnu: linux-libre 6.18: Update to 6.18.33.
* gnu/packages/linux.scm (linux-libre-6.18-version): Update to 6.18.33.
(linux-libre-6.18-pristine-source): Update hash.
2026-05-25 17:04:45 -07:00
Vagrant Cascadian 1fb10e0469 gnu: linux-libre 7.0: Update to 7.0.10.
* gnu/packages/linux.scm (linux-libre-7.0-version): Update to 7.0.10.
(linux-libre-7.0-pristine-source): Update hash.
2026-05-25 17:04:42 -07:00
Sharlatan Hellseher d40667e9d9 gnu: packages/python-science: Sort python-[am] variables.
* gnu/packages/python-science.scm (9python-dvc-data, python-dvc-objects,
python-einops, python-fbpca): Sort variables alphabetically.

Change-Id: I19e296bfcc2360e81ceaa81fd44688645113c1a4
2026-05-25 23:57:00 +01:00
Spencer King 5b5ed99030 gnu: Add python-autoray.
* gnu/packages/python-science.scm (python-autoray): New variable.

Merges: guix/guix!8810
Change-Id: I1393870b5e3881cb1e28154361b8c7f7853514eb
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:47:07 +01:00
Sharlatan Hellseher 18a2f2a0ab gnu: go-github-com-sigstore-rekor: Enable more tests.
* gnu/packages/golang-web.scm (go-github-com-sigstore-rekor):
[arguments] <embed-files>: Embed JSON files.
<test-subdirs>: Activate more.
[propagated-inputs]: Add go-github-com-google-rpmpack.

Change-Id: Iaa9b1a367b516af9b37b52f3888ee9b4873cfbbd
2026-05-25 23:37:19 +01:00
Sharlatan Hellseher 5331378604 gnu: Add nfpm.
* gnu/packages/golang-xyz.scm (nfpm): New variable.

Change-Id: I30d402d707048fbb560fa92737940c344331e19e
2026-05-25 23:37:19 +01:00
Sharlatan Hellseher 2126ca5961 gnu: Add chglog.
* gnu/packages/golang-xyz.scm (chglog): New variable.

Change-Id: Ifec35d44fff2eaab6b845fb6e5323db1060480f8
2026-05-25 23:37:14 +01:00
Sharlatan Hellseher 7afcbac09f gnu: Add kubernetes-crd-ref-docs.
* gnu/packages/kubernetes.scm (kubernetes-crd-ref-docs): New variable.

Change-Id: I6fe2b3330fd17a028d855eb78655cdacacc02c38
2026-05-25 23:37:14 +01:00
Sharlatan Hellseher 565f4e8743 gnu: Add kubernetes-controller-tools.
* gnu/packages/kubernetes.scm (kubernetes-controller-tools): New variable.

Change-Id: I91a40a9d0cfed25ecfb262a96739e6b18a5bc77b
2026-05-25 23:37:14 +01:00
Patrick Norton f3e194d6eb gnu: Add go-github-com-goreleaser-nfpm-v2.
* gnu/packages/golang-xyz.scm (go-github-com-goreleaser-nfpm-v2): New
variable.

Change-Id: Ic286a05ce6f67f48e826210d8717ca203706b899
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Modified-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>

Change-Id: If2f29158facd446048c5ebb8b808da901d33bfdc
2026-05-25 23:36:57 +01:00
Arthur Rodrigues 2cdc7e23c1 gnu: Add go-github-com-sassoftware-go-rpmutils.
* gnu/packages/golang-compression.scm (go-github-com-sassoftware-go-rpmutils): New variable.

Change-Id: I2ea6bf9f1a288dff3bdaa0749e914d172e3eda06
Relates-to: guix/guix!5417
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:11:16 +01:00
Arthur Rodrigues d21ee40ae8 gnu: Add go-github-com-muesli-mango-cobra.
* gnu/packages/golang-xyz.scm (go-github-com-muesli-mango-cobra): New variable.

Change-Id: I540ab25006c6f798a4c593af7ac4d90293fc6df0
Relates-to: #5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:29 +01:00
Arthur Rodrigues de8efe86b3 gnu: Add go-github-com-muesli-mango-pflag.
* gnu/packages/golang-xyz.scm (go-github-com-muesli-mango-pflag): New variable.

Change-Id: I450410eb6a38e9659672a7cd7258f317f372c702
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:29 +01:00
Arthur Rodrigues a30abf4690 gnu: Add go-github-com-muesli-mango.
* gnu/packages/golang-xyz.scm (go-github-com-muesli-mango): New variable.

Change-Id: I76a4cf2583ef083b7cc83c498cd4cb7307ea7cf8
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:29 +01:00
Arthur Rodrigues b7e563cffe gnu: Add go-github-com-muesli-roff.
* gnu/packages/golang-xyz.scm (go-github-com-muesli-roff): New variable.

Change-Id: Id1be530cc9bbcf0422aa6330fd625297c841e489
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:29 +01:00
Arthur Rodrigues 1dfc621cde gnu: Add go-github-com-caarlos0-go-version.
* gnu/packages/golang-xyz.scm (go-github-com-caarlos0-go-version): New variable.

Change-Id: I2ff3528e6ee2d23f093996c25d00c3b5d2b6fee8
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:29 +01:00
Arthur Rodrigues a9db71dae5 gnu: Add go-github-com-invopop-jsonschema.
* gnu/packages/golang-web.scm (go-github-com-invopop-jsonschema): New variable.

Change-Id: Ie1f596c1f9e7e82518cd3697b947306942571d4b
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Arthur Rodrigues f8c27ee084 gnu: Add go-github-com-pb33f-ordered-map-v2.
* gnu/packages/golang-xyz.scm (go-github-com-pb33f-ordered-map-v2): New variable.

Change-Id: I1e1124f9b39a4159caad01e2cb2ddeb09dd16e51
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton c95418302e gnu: Add go-github-com-goreleaser-chglog.
* gnu/packages/golang-xyz.scm (go-github-com-goreleaser-chglog): New
variable.

Change-Id: Iba81e76b9897fcf90c3ef2434f14034a5db461f8
Relates-to: #5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>

Change-Id: Ib3f02cfa70c89c4763c867405385c11e2706678c
2026-05-25 23:08:28 +01:00
Patrick Norton 79243efc4a gnu: Add go-gitlab-com-digitalxero-go-conventional-commit.
* gnu/packages/golang-vcs.scm
(go-gitlab-com-digitalxero-go-conventional-commit): New variable.

Change-Id: Ia366ebed43a75ee741f2355106f4e7555e3f9375
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton 2908ff30dd gnu: Add go-github-com-google-rpmpack.
* gnu/packages/golang-compression.scm (go-github-com-google-rpmpack): New
variable.

Change-Id: I2a7ebd61aaa2e8384c5a9a64f7feefe75dddc57b
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton 5ae5ced182 gnu: Add go-github-com-cavaliergopher-cpio.
* gnu/packages/golang-compression.scm (go-github-com-cavaliergopher-cpio): New
variable.

Change-Id: I55faf4a19bd29ca16e73540517570518dc3bbf88
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton dc192b2c3c gnu: Add go-github-com-ccojocar-zxcvbn-go.
* gnu/packages/golang-xyz.scm (go-github-com-ccojocar-zxcvbn-go): New
variable.

Change-Id: I50f943a27db405b04eff54a4485f41b4cc0f5453
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton b5c159c14d gnu: Add go-github-com-blakesmith-ar.
* gnu/packages/golang-compression.scm (go-github-com-blakesmith-ar): New
variable.

Change-Id: I0ba5b6617100ae919687193c1ca4c9e97aeadfe5
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton b634112df9 gnu: Add go-github-com-aleksi-pointer.
* gnu/packages/golang-xyz.scm (go-github-com-aleksi-pointer): New
variable.

Change-Id: I05e3fdbade711af55fd51ae9f37c8180ba14f44e
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:28 +01:00
Patrick Norton eaafc8f38d gnu: Add go-github-com-elastic-crd-ref-docs.
* gnu/packages/kubernetes.scm (go-github-com-elastic-crd-ref-docs): New variable.

Change-Id: I1d1caae7803946550d0009bb1e207dcb73ee1090
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>

Change-Id: I7cc15ba804ac36fefd3e3f59a480e6e7cf33bc98
2026-05-25 23:08:27 +01:00
Patrick Norton 01cbcb4ee4 gnu: Add go-github-com-tcnksm-go-httpstat.
* gnu/packages/golang-web.scm (go-github-com-tcnksm-go-httpstat): New
variable.

Change-Id: I408ca9bd82cf5f525459108a563457d5f8417e2b
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:27 +01:00
Patrick Norton c61cab0077 gnu: Add go-github-com-toqueteos-webbrowser.
* gnu/packages/golang-web.scm (go-github-com-toqueteos-webbrowser): New variable.

Change-Id: I7a9ae128062dcb3015eed65ac4bdc3fb9e7b40c1
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:27 +01:00
Patrick Norton 4a28c0c638 gnu: Add go-sigs-k8s-io-controller-tools.
* gnu/packages/kubernetes.scm (go-sigs-k8s-io-controller-tools): New
variable.

Change-Id: Iea8c614f484076374a7cf6b9a730bb494d303c03
Relates-to: guix/guix!5417
Reviewed-by: Arthur Rodrigues <arthurhdrodrigues@proton.me>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:27 +01:00
Arthur Rodrigues ba62c285a3 gnu: Add go-github-com-gobuffalo-flect.
* gnu/packages/golang-xyz.scm (go-github-com-gobuffalo-flect): New variable.

Change-Id: I80a9882d9441e758fd9793c08a27965b88935ddc
Relates-to: guix/guix!5417
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 23:08:24 +01:00
Sharlatan Hellseher d1b4f8e8ad gnu: go-jsonnet: Update to 0.22.0.
* gnu/packages/golang-apps.scm (go-jsonnet): Update to 0.22.0.

Change-Id: Ic7bf26e20846644ddd653e612541b3c631f338e1
2026-05-25 21:47:16 +01:00
Sharlatan Hellseher eccf44b2d1 gnu: go-fxlint: Update to 1.24.0.
* gnu/packages/golang-apps.scm (go-fxlint): Update to 1.24.0.

Change-Id: Ib5e1ffbad1de673e55edd7660e04ff7ebf7064ae
2026-05-25 21:46:35 +01:00
Sharlatan Hellseher 616ef76552 gnu: go-chroma: Update to 2.24.1.
* gnu/packages/golang-apps.scm (go-chroma): Update to 2.24.1.

Change-Id: Ic4cccd700c5241319ea931b3b76b7e3d9f3acede
2026-05-25 21:43:59 +01:00
Ankit Gadiya 8b0bee2a97 gnu: gopls: Update to 0.22.0.
* gnu/packages/golang-apps.scm (gopls): Update to 0.22.0.
[arguments]: Use go-1.26.
[native-inputs]: Remove go-golang-org-x-sys; add
go-github-com-fsnotify-fsnotify, go-github.com-google-jsonschema-go,
go-github-com-modelcontextprotocol-go-sdk.

Merges: guix/guix!8825
Change-Id: I28049d4faf92f54dc382abb64d2a2ff0570caccf
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-05-25 21:43:59 +01:00
Cayetano Santos 37592835c4 doc: Add agitjo under the ’perfect setup’ section.
This is a complement to the AGit workflow included in "Submitting
Patches".

* doc/guix.texi: Mention ‘emacs-agitjo’ in the ’Emacs’ subsection.

Merges guix/guix!8445

Change-Id: Ia49a0da71e8b08e252ff4dd996c414173920ecac
2026-05-25 19:57:33 +02:00
Hugo Buddelmeijer 6f6dc2286c gnu: valgrind/interactive: Fix shebangs by adding python as input.
* gnu/packages/valgrind.scm (valgrind/interactive): Fix shebangs.
  [inputs]: Add python.

Change-Id: Idc8590bfe5ed529046cb41f365de759c1c07effd
Merges: https://codeberg.org/guix/guix/pulls/8611
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:43:54 +09:00
Ashish SHUKLA b48412b52f gnu: got: Update to 0.125
* gnu/packages/version-control.scm (got): Update to 0.125.

Change-Id: I08867461d0c70cbceadcb82defc191fe1e45e7e7
Merges: https://codeberg.org/guix/guix/pulls/8677
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:38:12 +09:00
Foster Hangdaan 8709675a51 gnu: qtile: Update to 0.36.0.
* gnu/packages/wm.scm (qtile): Update to 0.36.0.

Change-Id: I6d91026ed7462a76f8c4fa87885ed591f6bdbac7
Merges: https://codeberg.org/guix/guix/pulls/8817
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:32:45 +09:00
Zhu Zihao 59e74d19f3 time-machine: Use accurate word for time travel in command help.
Time travel works in both directions, as mentioned in
info "(guix) Invoking guix time-machine".

* guix/scripts/time-machine.scm (show-help): Amend 'in an older version'
  with 'in a different version'.

Change-Id: I5da267e58e64381de86d6711dcd104592c30ef6c
Merges: https://codeberg.org/guix/guix/pulls/1163
Reviewed-by: Andreas Enge <andreas@enge.fr>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:23:01 +09:00
Nemin 31566995dc doc: Mention the volunteer run mirrors.
* doc/guix.texi (Volunteer Run Mirrors): New subsection.
* doc/guix.texi (Official Substitution Servers):
  Rephrase due to new subsection.

Change-Id: I6e0861b632a78b705ce7ed8615a423c6d370f4c9
Merges: https://codeberg.org/guix/guix/pulls/6272
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:20:52 +09:00
Yappaholic 4d65795173 gnu: Add lua-5.5.
* gnu/packages/lua.scm (lua-5.5): New variable.

Merges: https://codeberg.org/guix/guix/pulls/8515
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:13:16 +09:00
Phillip Davis 781c25ada9 tests: import: gem: Add test for mixed valid and gibberish licenses.
Verifies that when only one of multiple license strings is recognized,
the resulting list has the correct license followed by one instance
of the symbol 'unknown-license!

* tests/import/gem.scm (test-mixed-licenses-json): New fixture.
  ("gem->guix-package with mixed valid and gibberish licenses"):
  New test.

Change-Id: I33a003d50ba20d30360b52c448ae28ad9d37233b
Merges: https://codeberg.org/guix/guix/pulls/8276
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:09:55 +09:00
Phillip Davis 514b17c58a tests: import: gem: Add test for unrecognized license identifiers.
Exercises the map in 4f78d33f0 where every license
string is unrecognized, so the resulting package should have
(license (list unknown-license! unknown-license!)).

* tests/import/gem.scm (test-gibberish-licenses-json): New fixture.
  ("gem->guix-package with gibberish license identifiers"): New test.

Change-Id: I85cbb0574f9393749a84f4cf5818d4c1083a8476
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:09:43 +09:00
Phillip Davis 3df17cb25a import: gem: Use spdx-string->license for license lookup.
Similar to what was done for the crate importer in 263a267b75.

* guix/import/gem.scm (string->license): Try spdx-string->license first,
  returning symbols instead of license objects.  Fall back
  to the existing hardcoded table for non-SPDX strings.
  (make-gem-sexp): Remove license->symbol calls;
  licenses are now symbols directly.
* tests/import/gem.scm (test-spdx-json): New fixture.
  ("gem->guix-package with SPDX license identifiers"): New test.

Change-Id: I5fa0ebdfd3a3393eab5ef0554ed09887a89bc107
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:09:12 +09:00
Phillip Davis abbf03a2ef import: gem: Fix null at home-page.
The RubyGems API returns "homepage_uri": null for gems with no homepage.
guile-json parses JSON null as the Guile symbol 'null', which passes
through into the generated package sexp as (home-page null)—an unbound
variable error at evaluation time.

* tests/import/gem.scm (test-no-homepage-json): New fixture.
  ("gem->guix-package, bald homepage_uri"): New test.
* guix/import/gem.scm (non-empty-string-or-false): New procedure.
  (<gem>)[home-page]: Use it.
* guix/import/utils.scm (non-empty-string-or-false):
  New exported procedure, moved to here...
* guix/import/gem.scm (non-empty-string-or-false): ...from here...
* guix/import/pypi.scm (non-empty-string-or-false): ...and here.

Change-Id: If8f2ca32834d762c753797067ef87937503ff9f9
Reviewed-by: Carlo Zancanaro <carlo@zancanaro.id.au>
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:08:11 +09:00
Roman Scherer 5bad9d084c gnu: inkscape: Disable geom-pathstroke-test on non-x68.
* gnu/packages/inkscape.scm (inkscape)[arguments]<#:phases>:
  Add disable-geom-pathstroke-test on non-x68.

Change-Id: Ifbd4429d55fd3a66796b7f0219c1b4f1bb00be14
Merges: https://codeberg.org/guix/guix/pulls/8812
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:04:28 +09:00
Roman Scherer a066241c22 gnu: lib2geom: Disable failing polynomial-test on non-x68.
* gnu/packages/graphics.scm (lib2geom)[arguments]<#:phases>:
  Add disable-polynomial-test on non-x86.

Change-Id: If8fea8381d9ad4e31719463aa6a78efc8ef24efb
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-26 00:04:28 +09:00
Nguyễn Gia Phong a12284aeba teams: Nguyễn Gia Phong: Remove from the Python team.
* etc/teams.scm ("Nguyễn Gia Phong"): Remove python from the team list.

Change-Id: Ia0b43321b756ec45c8d8b215da57c824c5670dc8
Merges: https://codeberg.org/guix/guix/pulls/8792
2026-05-25 23:40:29 +09:00
Sughosha 1ebc547b5a gnu: Add skcms.
* gnu/packages/graphics.scm (skcms): New variable.

Change-Id: I9aba6db9a09f22d91f9b45ef3ac9913c701c6ff5
Merges: https://codeberg.org/guix/guix/pulls/8719
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-25 22:54:42 +09:00
Sughosha 192806899f gnu: Add sjpeg.
* gnu/packages/image.scm (sjpeg): New variable.

Change-Id: I4eaba610e73848116ab0f5f106dc92e126b0209e
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-25 22:54:42 +09:00
Sughosha 7c23908791 gnu: Add openjph.
* gnu/packages/image.scm (openjph): New variable.

Change-Id: Id1f082e887672e854d23191efd3cfe47630d0c49
Signed-off-by: Nguyễn Gia Phong <cnx@loang.net>
2026-05-25 22:54:42 +09:00
94 changed files with 3082 additions and 1629 deletions
+1
View File
@@ -120,6 +120,7 @@ running 'guix-daemon $extra_options'" >&2
"@abs_top_builddir@/pre-inst-env" \
"@abs_top_builddir@/guix-daemon" \
$extra_options \
--allow-aslr \
--substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" &
daemon_pid=$!
+27
View File
@@ -618,6 +618,33 @@ enhance @code{scheme-mode} and Geiser. @xref{Introduction,,,
emacs-guix, Emacs-Guix Reference Manual}, to make sure you don't miss
out!
@unnumberedsubsubsec Submitting Pull Requests Following the AGit Workflow
@cindex AGit workflow, for pull requests (Emacs).
@url{https://codeberg.org/halvin/agitjo, Agitjo} is a helper to ease
AGit workflow based patch submission (@pxref{Submitting Patches}).
Install it with:
@example
guix install emacs-agitjo
@end example
Assuming your local checkout is on the branch containing the changes you
would like to submit for inclusion in the @code{master} branch, use
@command{M-x agitjo-push} then:
@itemize
@item
Set options like the title @option{-t} and the session identifier
@option{-s}.
@item
Invoke one of the push commands to execute a @command{git push} operation.
@end itemize
When creating a new pull request, a dedicated buffer will open for
drafting a description. The force-push option @option{-f} is enabled to
push changes to the existing pull request.
@unnumberedsubsubsec Taming Boilerplate with Templates
@cindex code snippets
+112 -7
View File
@@ -152,6 +152,7 @@ Copyright @copyright{} 2026 David Elsing@*
Copyright @copyright{} 2026 Nguyễn Gia Phong@*
Copyright @copyright{} 2026 Yarl Baudig@*
Copyright @copyright{} 2026 Joan Vilardaga Castro@*
Copyright @copyright{} 2026 Nemin@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -305,6 +306,7 @@ Package Management
Substitutes
* Official Substitute Servers:: One particular source of substitutes.
* Volunteer Run Mirrors:: Additional, regional sources of substitutes.
* Substitute Server Authorization:: How to enable or disable substitutes.
* Getting Substitutes from Other Servers:: Substitute diversity.
* Substitute Authentication:: How Guix verifies substitutes.
@@ -1779,6 +1781,21 @@ user namespaces is missing (@pxref{Build Environment Setup}). Use at
your own risk!
@end quotation
@cindex ASLR (address space layout randomization), for builds
@cindex address space layout randomization (ASLR), for builds
@cindex Docker, running @command{guix-daemon}
@cindex @command{guix-daemon}, running under Docker
@item --allow-aslr
Allow builds to start even if @acronym{ASLR, Address Space Layout
Randomization} cannot be disabled on Linux systems. This is normally
done so as to increase reproducibility, but some environments, such as
those affected by Docker's default seccomp policy, don't permit
disabling ASLR. Passing this option will allow builds to start with
reduced reproducibility regardless.
Note that passing this option doesn't ensure that ASLR is enabled, it
only allows builds to start even when disabling it is blocked.
@item --isolate-host-loopback
Prevent fixed-output chroot builds from accessing the host loopback.
When this is used, fixed-output builds will have their own loopback
@@ -3936,6 +3953,7 @@ also result from derivation builds, can be available as substitutes.
@menu
* Official Substitute Servers:: One particular source of substitutes.
* Volunteer Run Mirrors:: Additional, regional sources of substitutes.
* Substitute Server Authorization:: How to enable or disable substitutes.
* Getting Substitutes from Other Servers:: Substitute diversity.
* Substitute Authentication:: How Guix verifies substitutes.
@@ -3966,13 +3984,54 @@ could use the information gathered to determine, for instance, whether
your system has unpatched security vulnerabilities.
Substitutes from the official build farms are enabled by default when
using Guix System (@pxref{GNU Distribution}). However,
they are disabled by default when using Guix on a foreign distribution,
unless you have explicitly enabled them via one of the recommended
installation steps (@pxref{Installation}). The following paragraphs
describe how to enable or disable substitutes for the official build
farm; the same procedure can also be used to enable substitutes for any
other substitute server.
using Guix System (@pxref{GNU Distribution}). However, they are
disabled by default when using Guix on a foreign distribution, unless
you have explicitly enabled them via one of the recommended installation
steps (@pxref{Installation}). Please @pxref{Substitute Server
Authorization} on how to enable or disable substitutes for the official
build farm; the same procedure can also be used to enable substitutes
for any other substitute server.
@node Volunteer Run Mirrors
@subsection Volunteer Run Mirrors
@cindex substitutes
@cindex mirrors
Beyond the two official substitute servers, there are additionally
volunteer run mirrors. These mirrors do not build their own
substitutes, but rather copy them from the official build farm and
distribute them to users. Enabling a mirror may be beneficial in case
the official servers are temporarily unavailable or provide inadequate
bandwidth at the user's location.
@quotation Note
Mirrored substitutes are signed by the original builder, not the mirror.
This means that mirror operators @strong{cannot} add or modify binaries,
as long as you trust only the official substitute servers,
@pxref{Substitute Server Authorization}.
@end quotation
List of volunteer run mirrors, grouped by location (with the build farm
they mirror in parentheses):
@table @asis
@item Germany
@itemize
@item @code{https://hydra-guix-129.guix.gnu.org} (bordeaux.guix.gnu.org)
@end itemize
@item People's Republic of China
@itemize
@item @code{https://mirrors.sjtug.sjtu.edu.cn/guix} (ci.guix.gnu.org)
@item @code{https://mirrors.sjtug.sjtu.edu.cn/guix-bordeaux} (bordeaux.guix.gnu.org)
@end itemize
@item Russia
@itemize
@item @code{https://mirror.yandex.ru/mirrors/guix/} (bordeaux.guix.gnu.org)
@end itemize
@end table
To enable receiving substitutions from these mirrors, please @pxref{Getting
Substitutes from Other Servers}.
@node Substitute Server Authorization
@subsection Substitute Server Authorization
@@ -36234,6 +36293,10 @@ Launch the app as this group (it must be an existing group).
A list of sockets (as path strings) which gunicorn will be listening
on. This list must contain at least one socket.
@item @code{control-socket} (default: #f) (type: string)
If set, creates a gunicorn control-socket at the given path. Note that,
the control socket should refer to a path listed in @code{mappings}.
@item @code{socket-user} (default: @code{user}) (type: string)
Owner of the directory containing the socket (must be an existing user).
@@ -38069,6 +38132,21 @@ This is the type of the dnsmasq service, whose value should be a
(servers '("192.168.1.1"))))
@end lisp
The following example shows a slightly more complex configuration that
defines an authoritative DNS server on a given subdomain.
@lisp
(service dnsmasq-service-type
(dnsmasq-configuration
(listen-addresses '("10.1.1.1"))
(no-resolv? #t)
(no-hosts? #t)
(authoritative-servers '("vpn.example.com")) ;self
(authoritative-zones '("vpn.example.com"))
(host-records '("some-service.vpn.example.com,10.1.1.1"))))
@end lisp
For more examples, refer to @samp{man 8 dnsmasq.}
@code{dnsmasq-service-type} provides two actions:
@table @code
@@ -38158,12 +38236,33 @@ ie a subnet for which an interface exists on the server.
@item @code{listen-addresses} (default: @code{'()})
Listen on the given IP addresses.
@item @code{ipv4?} (default: @code{#t})
Whether to include A records in answers.
@item @code{ipv6?} (default: @code{#t})
Whether to include AAAA records in answers.
@item @code{resolv-file} (default: @code{"/etc/resolv.conf"})
The file to read the IP address of the upstream nameservers from.
@item @code{no-resolv?} (default: @code{#f})
When true, don't read @var{resolv-file}.
@item @code{authoritative-servers} (default: @code{'()})
A list of strings corresponding to valid @option{--auth-server} values,
such as a domain name. This is useful to make @command{dnsmasq}
authoritative for a given domain name or interface.
@item @code{authoritative-zones} (default: @code{'()})
A list of strings corresponding to valid @option{--auth-zone} values,
such as a domain name. This is useful to make @command{dnsmasq}
authoritative for a given domain name. Note that this must be used in
conjunction with the @code{authoritative-servers} option.
@item @code{host-records} (default: @code{'()})
A list of strings corresponding to valid @option{--host-record} values,
for example @code{'("some-service.example.com,10.1.1.1")}.
@item @code{forward-private-reverse-lookup?} (default: @code{#t})
When false, all reverse lookups for private IP ranges are answered with
"no such domain" rather than being forwarded upstream.
@@ -38172,6 +38271,12 @@ When false, all reverse lookups for private IP ranges are answered with
When true, dnsmasq queries the servers in the same order as they appear
in @var{servers}.
@item @code{locals} (default: @code{'()})
Specify domain name @emph{patterns} which should be treated as local,
that is, for which there should be no delegation to upstream servers.
Provided pattern values should be of the form
@code{'("/vpn.example.com/")}.
@item @code{servers} (default: @code{'()})
Specify IP address of upstream servers directly.
+1 -1
View File
@@ -1577,7 +1577,7 @@ the \"texlive\" importer."
(define-member (person "Nguyễn Gia Phong"
"cnx@loang.net"
"cnx")
build-tools python qa-packages sysadmin vcs)
build-tools lua qa-packages sysadmin vcs)
(define-member (person "Lilah Tascheter"
"lilah@lunabee.space"
+10 -1
View File
@@ -173,7 +173,16 @@ SYSTEM."
(define (core-packages system)
"Return the 'core' package set suitable for SYSTEM, which might be a system
type or a GNU triplet."
(cond ((target-linux? system) (append %core-packages %linux-packages))
(cond ((target-linux? system)
(append %core-packages
%linux-packages
(cond ((target-arm32? system)
(list linux-libre-arm-generic))
((target-aarch64? system)
(list linux-libre-arm64-generic))
((target-riscv64? system)
(list linux-libre-riscv64-generic))
(else '()))))
((target-hurd? system) (append %core-packages %hurd-packages))
((target-mingw? system) %core-packages-for-mingw)
(else '())))
+2
View File
@@ -1006,6 +1006,7 @@ dist_patch_DATA = \
%D%/packages/patches/alure-dumb-2.patch \
%D%/packages/patches/amd-smi-newer-libdrm.patch \
%D%/packages/patches/amd-smi-python.patch \
%D%/packages/patches/angband-remove-nonfree-tile-options.patch \
%D%/packages/patches/ibus-anthy-fix-tests.patch \
%D%/packages/patches/ibus-table-paths.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
@@ -1880,6 +1881,7 @@ dist_patch_DATA = \
%D%/packages/patches/lua-5.4-pkgconfig.patch \
%D%/packages/patches/lua-5.4-liblua-so.patch \
%D%/packages/patches/lua-5.4-search-paths.patch \
%D%/packages/patches/lua-5.5-search-paths.patch \
%D%/packages/patches/lua-5.x-search-path-helpers.patch \
%D%/packages/patches/lua-lgi-fix-pango.patch \
%D%/packages/patches/lua-lgi-fix-ref.patch \
+2 -2
View File
@@ -1084,7 +1084,7 @@ console.")
(define-public btop
(package
(name "btop")
(version "1.4.6")
(version "1.4.7")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1093,7 +1093,7 @@ console.")
(file-name (git-file-name name version))
(sha256
(base32
"1nj58dbv3c0rj8fngldkyrmdmacmjnbg8ch1c07ik97kqnnzd3l7"))))
"0d3cr5l6gpcwhxgnrizny5b5kg6fys2hy9a58bc68w4n2hc040fy"))))
(build-system gnu-build-system)
(native-inputs (list lowdown))
(arguments
-1
View File
@@ -137,7 +137,6 @@
#:use-module (gnu packages music)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages perl)
+56 -51
View File
@@ -48,6 +48,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages disk)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@@ -65,7 +66,6 @@
#:use-module (gnu packages man)
#:use-module (gnu packages mtools)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@@ -1815,63 +1815,68 @@ For more information, refer to
(define-public os-prober
(package
(name "os-prober")
(version "1.81")
(version "1.84")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://debian/pool/main/o/os-prober/os-prober_"
version ".tar.xz"))
(method git-fetch)
(uri (git-reference
(url "https://salsa.debian.org/installer-team/os-prober.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "10w8jz6mqhp0skdcam9mpgv79vx1sv7lkpra3rqjg0jkhvn2in9g"))))
(base32 "1bji3w6nbqaz8zqrbmy8b1j5dph9xn7bdh1cd2z8ia1q125i6mgp"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build gnu-build-system)
(list
#:tests? #f ; No tests.
#:modules '((guix build gnu-build-system)
(guix build utils)
(ice-9 regex) ; for string-match
(srfi srfi-26)) ; for cut
#:make-flags
(list ,(string-append "CC=" (cc-for-target)))
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* (find-files ".")
(("/usr") (assoc-ref outputs "out")))
(substitute* (find-files "." "50mounted-tests$")
(("mkdir") "mkdir -p"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(define (find-files-non-recursive directory)
(find-files directory
(lambda (file stat)
(string-match (string-append "^" directory "/[^/]*$")
file))
#:directories? #t))
(ice-9 regex) ; string-match
(srfi srfi-26)) ; cut
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda _
(substitute* (find-files ".")
(("/usr") #$output))
(substitute* (find-files "." "50mounted-tests$")
(("mkdir") "mkdir -p -v"))))
(replace 'install
(lambda _
(define (find-files-non-recursive directory)
(find-files directory
(lambda (file stat)
(string-match (string-append "^" directory "/[^/]*$")
file))
#:directories? #t))
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(lib (string-append out "/lib"))
(share (string-append out "/share")))
(for-each (cut install-file <> bin)
(list "linux-boot-prober" "os-prober"))
(install-file "newns" (string-append lib "/os-prober"))
(install-file "common.sh" (string-append share "/os-prober"))
(install-file "os-probes/mounted/powerpc/20macosx"
(string-append lib "/os-probes/mounted"))
(for-each
(lambda (directory)
(for-each
(lambda (file)
(let ((destination (string-append lib "/" directory
"/" (basename file))))
(mkdir-p (dirname destination))
(copy-recursively file destination)))
(append (find-files-non-recursive (string-append directory "/common"))
(find-files-non-recursive (string-append directory "/x86")))))
(list "os-probes" "os-probes/mounted" "os-probes/init"
"linux-boot-probes" "linux-boot-probes/mounted"))))))))
(home-page "https://joeyh.name/code/os-prober")
(let ((bin (string-append #$output "/bin"))
(lib (string-append #$output "/lib"))
(share (string-append #$output "/share")))
(for-each (cut install-file <> bin)
(list "linux-boot-prober" "os-prober"))
(install-file "newns" (string-append lib "/os-prober"))
(install-file "common.sh" (string-append share "/os-prober"))
(install-file "os-probes/mounted/powerpc/20macosx"
(string-append lib "/os-probes/mounted"))
(for-each
(lambda (directory)
(for-each
(lambda (file)
(let ((destination (string-append lib "/" directory
"/" (basename file))))
(mkdir-p (dirname destination))
(copy-recursively file destination)))
(append (find-files-non-recursive (string-append directory "/common"))
(find-files-non-recursive (string-append directory "/x86")))))
(list "linux-boot-probes"
"linux-boot-probes/mounted"
"os-probes"
"os-probes/init"
"os-probes/mounted"))))))))
(home-page "https://joeyh.name/code/os-prober/")
(synopsis "Detect other operating systems")
(description "os-prober probes disks on the system for other operating
systems so that they can be added to the bootloader. It also works out how to
+114 -2
View File
@@ -64,7 +64,6 @@
#:use-module (gnu packages logging)
#:use-module (gnu packages lua)
#:use-module (gnu packages man)
#:use-module (gnu packages ninja)
#:use-module (gnu packages package-management)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
@@ -77,6 +76,7 @@
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages re2c)
#:use-module (gnu packages regex)
#:use-module (gnu packages rpc)
#:use-module (gnu packages serialization)
@@ -104,7 +104,8 @@
#:use-module (guix packages)
#:use-module (guix search-paths)
#:use-module (guix utils)
#:use-module (ice-9 optargs))
#:use-module (ice-9 optargs)
#:use-module (srfi srfi-1))
(define-public acr
(package
@@ -1483,3 +1484,114 @@ Features:
@item Support for languages outside C/C++ (e.g. Go, Rust, Zig).
@end itemize")
(license license:asl2.0)))
(define-public ninja/pinned
(hidden-package
(package
(name "ninja")
(version "1.13.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ninja-build/ninja")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0lp9dmxbjyjwv089i8mgq3nvnhpbnsn01ifm05m9s47w7cifrl8g"))))
(build-system gnu-build-system)
(inputs (list python-wrapper re2c))
(arguments
'(; Tests now require googletest, which is a circular dependency.
#:tests? #f
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(substitute* "src/subprocess-posix.cc"
(("/bin/sh") (which "sh")))
(substitute* "src/subprocess_test.cc"
(("/bin/echo") (which "echo")))))
(replace 'build
(lambda _
(invoke "./configure.py" "--bootstrap")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./configure.py")
(invoke "./ninja" "ninja_test")
(invoke "./ninja_test"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/ninja")))
(install-file "ninja" bin)
(install-file "doc/manual.asciidoc" doc)))))))
(home-page "https://ninja-build.org/")
(synopsis "Small build system")
(description
"Ninja is a small build system with a focus on speed. It differs from
other build systems in two major respects: it is designed to have its input
files generated by a higher-level build system, and it is designed to run
builds as fast as possible.")
(license license:asl2.0))))
(define-public ninja
(package/inherit ninja/pinned
(properties (alist-delete 'hidden? (package-properties ninja/pinned)))))
(define-public samurai
(package
(name "samurai")
(version "1.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/michaelforney/samurai")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"04iw18hgkm72yrl83a2xh1jc47w9rilpb95kwick0j37b4q3gxj4"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no test suite
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-/bin/sh
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "build.c"
(("/bin/sh")
(search-input-file inputs "bin/sh")))))
(delete 'configure))))
(inputs (list bash-minimal))
(home-page "https://github.com/michaelforney/samurai")
(synopsis "Ninja-compatible build tool written in C")
(description "@code{samurai} is a ninja-compatible build tool written in
C99 with a focus on simplicity, speed, and portability. It is
feature-complete and supports most of the same options as ninja. This package
provides the command @command{samu}. For a @command{ninja} command
replacement, use the @code{samu-as-ninja-wrapper} package.")
(license (list license:asl2.0 ;for the most part
license:expat)))) ;htab.h, htab.c and tree.c
(define-public samu-as-ninja-wrapper
(package/inherit samurai
(name "samu-as-ninja-wrapper")
(build-system trivial-build-system)
(arguments
(list #:builder
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(let ((bindir (string-append #$output "/bin"))
(samu (string-append #$(this-package-input "samurai")
"/bin/samu")))
(mkdir-p bindir)
(symlink samu (string-append bindir "/ninja")))))))
(inputs (list samurai))
(description "This package provides the @command{ninja} command,
implemented as a symbolic link to the @command{samu} command of @code{samurai}
package.")))
-1
View File
@@ -53,7 +53,6 @@
#:use-module (gnu packages llvm)
#:use-module (gnu packages kerberos)
#:use-module (gnu packages maths)
#:use-module (gnu packages ninja)
#:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages pciutils)
+2 -2
View File
@@ -1475,7 +1475,7 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
(define-public 7zip
(package
(name "7zip")
(version "26.00")
(version "26.01")
(source
(origin
(method git-fetch)
@@ -1483,7 +1483,7 @@ for most inputs, but the resulting compressed files are anywhere from 20% to
(url "https://github.com/ip7z/7zip")
(commit version)))
(sha256
(base32 "1fvgl9qp2pl5c0jmvgbdx6qig3qd80mhxvml42yby8y412x65sh7"))
(base32 "0qwzn9pz1m6f8q20cqgmfqp1qx6s7959xnyikpr60n1v8c1mj98q"))
(file-name (git-file-name name version))
(modules '((guix build utils)
(ice-9 regex)))
+70
View File
@@ -127,6 +127,76 @@ formats:
It also comes with example files generated by bincfg.")
(license license:gpl3+)))
(define-public bucts
(package
(name "bucts")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no tests
#:make-flags #~(list (string-append "CC=" #$(cc-for-target)))
#:phases #~(modify-phases %standard-phases
(delete 'configure) ;no configure script
(add-after 'unpack 'enter-source
(lambda _
(chdir "util/bucts")))
(add-after 'enter-source 'set-version
(lambda _
(substitute* "Makefile"
(("^VERSION:=*")
#$(string-append "VERSION:=" version)))))
;; no install target
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(doc (string-append #$output "/share/doc/bucts/"))
(licenses (string-append #$output
"/share/licenses/bucts/")))
(install-file "bucts" bin)
(install-file "readme.md" doc)
(install-file "../../COPYING" licenses)))))))
(inputs (list pciutils))
(home-page "https://coreboot.org")
(synopsis "Tool to swap the BIOS bootblock and backup bootblock on the
Intel I945 chipsets")
(description
"The @command{bucts} command can flip a bit in the BUC.TS register of the
Intel I945 chipsets and show the register status. When the bit is set, it
swaps the bootblock location. Because the bootblock region is often set
read-only by the default BIOS, this enables to bypass that restriction and is
used as part of a procedure to replace the nonfree BIOS with free software on
various computers (Lenovo X60, X60s, X60T, T60, probably more).")
(license license:gpl2)))
(define-public ectool
(package
(name "ectool")
(version %coreboot-version)
(source %coreboot-origin)
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no test suite
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
"INSTALL=install"
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "util/ectool")))
(delete 'configure)))) ; no configure script
(home-page "https://doc.coreboot.org/util.html")
(synopsis "Tool to dump and modify @acronym{EC, Embedded Controller} RAM
on computers such as laptops")
(description "This package provides @command{ectool}, a program to dump
and modify the contents of @acronym{EC, Embedded Controller} RAM
on mobile computers.")
(license license:gpl2)))
(define-public ifdtool
(package
(name "ifdtool")
-1
View File
@@ -77,7 +77,6 @@
#:use-module (gnu packages mail)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
-1
View File
@@ -105,7 +105,6 @@
#:use-module (gnu packages libbsd)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-web)
+1 -1
View File
@@ -41,6 +41,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
@@ -48,7 +49,6 @@
#:use-module (gnu packages gdb)
#:use-module (gnu packages libedit)
#:use-module (gnu packages llvm)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+2 -2
View File
@@ -1425,7 +1425,7 @@ and TCP-capable recursive DNS server for finding domains on the internet.")
(define-public openresolv
(package
(name "openresolv")
(version "3.17.4")
(version "3.13.2")
(source
(origin
(method git-fetch)
@@ -1435,7 +1435,7 @@ and TCP-capable recursive DNS server for finding domains on the internet.")
(file-name (git-file-name name version))
(sha256
(base32
"1lawj50qhr2yj7fy3p8x4m3kqz4lbvghnjc4jlqnxp484hg83ki3"))
"03m8n0j0kxxm5kpl66gz4lxr1qqgrp8zlkaq9j8fz27fih0g75xf"))
(patches
(search-patches "openresolv-restartcmd-guix.patch"))))
(build-system gnu-build-system)
+2 -2
View File
@@ -2521,7 +2521,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
(define-public nvc
(package
(name "nvc")
(version "1.20.1")
(version "1.21.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2530,7 +2530,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
(file-name (git-file-name name version))
(sha256
(base32
"1b38x2ch468s4p6mrq6c8s0d95vb84p6w4v8in79l4w7sfy8jnr0"))))
"00hnrzk9dw88srfmjxxb9xkgnd5n26pmqlcw1bff1y0bckblsr38"))))
(build-system gnu-build-system)
(arguments
(list #:out-of-source? #t
-28
View File
@@ -15526,34 +15526,6 @@ underlying library functionality for performing various activities related to
the game of chess.")
(license license:gpl3+)))
(define-public emacs-4clojure
;; There is no release. Base version is extracted from Version keyword in
;; the main file.
(let ((commit "4eccf8c7d4341a36c269451838114b27836699f9")
(revision "1"))
(package
(name "emacs-4clojure")
(version (git-version "0.2.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacsorphanage/4clojure")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "19x653lzc1dxil4ix257hciidbdmbhaxhs6qhlkwi9ygjrlrgvnk"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-request))
(home-page "https://github.com/emacsorphanage/4clojure/")
(synopsis "Open and evaluate 4clojure questions in Emacs")
(description "Emacs 4clojure interacts with
@url{http://www.4clojure.com, 4clojure} problems. You can open a specific
question and move to the next or previous one. You can also verify your
answers.")
(license license:gpl3+))))
(define-public emacs-base16-theme
(package
(name "emacs-base16-theme")
+1 -1
View File
@@ -68,6 +68,7 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
@@ -107,7 +108,6 @@
#:use-module (gnu packages music)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages parallel)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
-1
View File
@@ -129,7 +129,6 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl)
#:use-module (gnu packages pdf)
+27
View File
@@ -74,6 +74,7 @@
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Joan Vilardaga Castro <codeberg-hn80@joanvc.cat>
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2026 bdunahu <bdunahu@operationnull.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2817,6 +2818,32 @@ family.")
(define-deprecated-package font-adobe-source-serif-pro
font-adobe-source-serif)
(define-public font-medieval-sharp
;; No releases, use newest commit.
(let ((commit "ee7510b6b13854fd340e7d2e44c218780f672cd1")
(revision "1"))
(package
(name "font-medieval-sharp")
;; From FONTLOG.txt.
(version (git-version "3.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/wmk69/Medieval-Sharp")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1r300591pra4nxpm5kppl5q3ihsp01wk2zh24f9pvv0jgf1ik87x"))))
(build-system font-build-system)
(home-page "https://github.com/wmk69/Medieval-Sharp")
(synopsis "Font based on gothic letters")
(description
"Medieval Sharp is a font created for inscriptions on stone, based on
gothic letters.")
(license license:silofl1.1))))
(define-public font-microsoft-cascadia
(package
(name "font-microsoft-cascadia")
+1 -1
View File
@@ -47,6 +47,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages datastructures)
@@ -69,7 +70,6 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages man)
#:use-module (gnu packages mc)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+69 -17
View File
@@ -98,6 +98,7 @@
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Nikita Alkhovik <forgoty13@gmail.com>
;;; Copyright © 2026 bdunahu <bdunahu@operationnull.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -200,7 +201,6 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages opencl)
@@ -3988,27 +3988,26 @@ that beneath its ruins lay buried an ancient evil.")
(base32 "0hgzdvlh0j42w4q9kch9xvhnbvcrypac01xhpksw35gj9my887cp"))
(modules '((guix build utils)))
(snippet
;; So, some of the sounds/graphics/tilesets are under different
;; licenses... some of them even nonfree! This is a console-only
;; version of this package so we just remove them.
;; In the future, if someone tries to make a graphical variant of
;; this package, they can deal with that mess themselves. :)
'(begin
(for-each (lambda (subdir)
(let ((lib-subdir (string-append "lib/" subdir)))
(delete-file-recursively lib-subdir)))
'("fonts" "icons" "sounds" "tiles"))
(substitute* "lib/Makefile"
;; And don't try to invoke makefiles in the directories we removed.
(("gamedata customize help screens fonts tiles sounds icons user")
"gamedata customize help screens user"))
;; Remove nonfree .dll files too.
(delete-file-recursively "src/win")))))
(for-each delete-file-recursively
'("lib/tiles/shockbolt" ;nonfree
"src/win")) ;contains .dlls!
;; Don't build the shockbolt directory either.
(substitute* "lib/tiles/Makefile"
(("shockbolt") ""))))
(patches (search-patches "angband-remove-nonfree-tile-options.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append "--bindir=" %output "/bin"))
`(#:configure-flags (list (string-append "--bindir=" %output "/bin")
"--disable-x11")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-graphics-and-sounds
(lambda _
(substitute* "lib/Makefile"
;; Do not build any graphics for this version.
(("gamedata customize help screens fonts tiles sounds icons user")
"gamedata customize help screens user"))))
(add-before 'build 'fix-infinite-loop-on-sighup
;; XXX Release 4.2.6 has a major bug where sending the process a
;; SIGHUP when closing the terminal causes it to infinite loop
@@ -4058,6 +4057,59 @@ the depths below Angband, seeking riches, fighting monsters, and preparing to
fight Morgoth, the Lord of Darkness.")
(license license:gpl2)))
(define-public angband-sdl2
(package
(inherit angband)
(name "angband-sdl2")
(arguments
(substitute-keyword-arguments
(package-arguments angband)
((#:configure-flags flags)
#~(cons* "--enable-sdl2" #$flags))
((#:phases phases)
#~(modify-phases #$phases
(delete 'disable-graphics-and-sounds)
(add-after 'unpack 'patch-sdl-wrapper-headers
(lambda _
(with-directory-excursion "src"
(substitute* '("snd-sdl.c"
"main-sdl2.c"
"sdl2/pui-win.h")
(("\"SDL_image.h\"") "\"SDL2/SDL_image.h\"")
(("\"SDL_mixer.h\"") "\"SDL2/SDL_mixer.h\"")
(("\"SDL_ttf.h\"") "\"SDL2/SDL_ttf.h\"")))))
(add-after 'unpack 'patch-desktop-file
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "lib/icons/angband-sdl2.desktop"
(("Exec=angband" _)
(string-append "Exec=" #$output "/bin/angband-sdl2"))))))
(add-after 'install 'rename-binary
(lambda _
(with-directory-excursion #$output
;; allows parallel installation with angband
(rename-file "bin/angband"
"bin/angband-sdl2"))))))))
(inputs
(modify-inputs inputs
(prepend sdl2
sdl2-image
sdl2-mixer
sdl2-ttf)))
(description "Angband is a Classic dungeon exploration roguelike. Explore
the depths below Angband, seeking riches, fighting monsters, and preparing to
fight Morgoth, the Lord of Darkness.
This version includes the SDL2 frontend, providing tilesets and sounds which
can be enabled through in-game options.")
;; XXX: fonts and adam bolt tileset are free but being clarified:
;; https://github.com/angband/angband/issues/6608
;; For the rest, see:
;; https://github.com/angband/angband/blob/master/docs/copying.rst
(license (list license:gpl2 ;code, nomad+old tilesets
license:cc-by-sa3.0 ;david gervais tileset
license:cc-by-sa4.0)))) ;sounds
(define-public pingus
;; Latest release is from 2021-12-24.
(let ((commit "7d65221e1cd1026053c8a5a08ad911fbdd13d3ed")
+2 -2
View File
@@ -80,14 +80,14 @@
(define-public gdb-17
(package
(name "gdb")
(version "17.1")
(version "17.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gdb/gdb-"
version ".tar.xz"))
(sha256
(base32
"0xnqqv3j463r5rnfmblj3zwhf0l0lyy4bp1zaid8zxn9fignz68l"))))
"1312lccryan1jfkjwkbw9mpxgyfnmlr8dj4lbkxx3cz4f86nq0qw"))))
(build-system gnu-build-system)
(outputs '("out" "debug"))
(arguments
-1
View File
@@ -128,7 +128,6 @@
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages pcre)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
+2 -2
View File
@@ -2529,7 +2529,7 @@ forgotten when the session ends.")
(define-public evince
(package
(name "evince")
(version "48.1")
(version "48.4")
(source
(origin
(method url-fetch)
@@ -2537,7 +2537,7 @@ forgotten when the session ends.")
(version-major version) "/"
"evince-" version ".tar.xz"))
(sha256
(base32 "047s8d4qh9jijk1kp4kfzy4afwwcd0kr11a8j1dkypd0ldprm2vx"))))
(base32 "0s46prlb55ghnz136ra8whmrirydmz08lzjrrpa3arl8cb3cb5pj"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
+17 -14
View File
@@ -2,8 +2,9 @@
;;; Copyright © 2023 JOULAUD François <Francois.JOULAUD@radiofrance.com>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Tomas Volf <~@wolfsden.cz>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025-2026 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;; Copyright © 2026 Ankit Gadiya <git@argp.in>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -48,7 +49,7 @@
(define-public go-chroma
(package
(name "go-chroma")
(version "2.20.0")
(version "2.24.1")
(source
(origin
(method git-fetch)
@@ -57,7 +58,7 @@
(commit (string-append "v" version ))))
(file-name (git-file-name name version))
(sha256
(base32 "05w4hnfcxqdlsz7mkc0m3jbp1aj67wzyhq5jh8ldfgnyjnlafia3"))))
(base32 "0kww0yhwqzzgl8n3alislf0136rk7kh507bbvr32a30wmk5dzi81"))))
(build-system go-build-system)
(arguments
(list
@@ -83,17 +84,16 @@ translators for Pygments lexers and styles.")
(define-public go-fxlint
(package
(name "go-fxlint")
(version "0.0.0-20251227140935-d5da5b04ac90")
(version "1.24.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uber-go/fx")
(commit (go-version->git-ref version
#:subdir "tools"))))
(commit (string-append "v" version ))))
(file-name (git-file-name name version))
(sha256
(base32 "0yw9x95v82dcxh0zf13inz8c3q7p2hmzqzgja360b1yifi01rvrc"))))
(base32 "0iifq4gjd873l444qh32x2zzsz2yinrvpjsdfphxsfk1h0cyk4q9"))))
(build-system go-build-system)
(arguments
(list
@@ -115,7 +115,7 @@ that handle none of the event types.")
(define-public go-jsonnet
(package
(name "go-jsonnet")
(version "0.21.0")
(version "0.22.0")
(source
(origin
(method git-fetch)
@@ -124,7 +124,7 @@ that handle none of the event types.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0d05f16qxabfhaj0l3da3x7zl5g8jbvkcyn39bidd2a278sb3p97"))))
(base32 "1c7h14rvavgadvbsyfa9j4rchsgxb5j363f53rhcvghvmblzddiv"))))
(build-system go-build-system)
(arguments
(list
@@ -276,19 +276,20 @@ import of a 3rd party package at runtime).")
(name "gopls")
;; XXX: Starting from 0.14.0 gppls needs golang.org/x/telemetry, which
;; needs to be discussed if it may be included in Guix.
(version "0.19.1")
(version "0.22.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://go.googlesource.com/tools")
(commit (go-version->git-ref version #:subdir "gopls"))))
(url "https://go.googlesource.com/tools")
(commit (go-version->git-ref version #:subdir "gopls"))))
(file-name (git-file-name name version))
(sha256
(base32 "1dihdw4nzp21hlbwxf6qyhyfgavi1a55lmlyk36czd85v0jcp6a0"))))
(base32 "0n5ixvk6c8hww5z9lvf74dx6p4j573bq3ssvp77n6033l0fcbv94"))))
(build-system go-build-system)
(arguments
(list
#:go go-1.26
#:install-source? #f
#:import-path "golang.org/x/tools/gopls"
#:unpack-path "golang.org/x/tools"
@@ -311,11 +312,13 @@ import of a 3rd party package at runtime).")
(setenv "GODEBUG" "gotypesalias=1"))))))
(native-inputs
(list go-github-com-fatih-gomodifytags
go-github-com-fsnotify-fsnotify
go-github-com-google-go-cmp
go-github-com-google-jsonschema-go
go-github-com-jba-templatecheck
go-github-com-modelcontextprotocol-go-sdk
go-golang-org-x-mod
go-golang-org-x-sync
go-golang-org-x-sys
go-golang-org-x-telemetry
go-golang-org-x-text
go-golang-org-x-tools
+115
View File
@@ -150,6 +150,31 @@ the @code{c2go} tool at
@url{https://github.com/andybalholm/c2go,https://github.com/andybalholm/c2go}.")
(license license:expat)))
(define-public go-github-com-blakesmith-ar
(package
(name "go-github-com-blakesmith-ar")
(version "0.0.0-20190502131153-809d4375e1fb")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/blakesmith/ar")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "00fxkc04b9cb53xxzw5gdqqpwlqv9n5kk0yn2lb5w4rgj5gm8ph1"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/blakesmith/ar"
#:test-flags #~(list "-vet=off")))
(home-page "https://github.com/blakesmith/ar")
(synopsis "Golang archive file reader")
(description
"This package provides a Golang file reader for archive files generated
with @code{ar}.")
(license license:expat)))
(define-public go-github-com-bodgit-sevenzip
(package
(name "go-github-com-bodgit-sevenzip")
@@ -221,6 +246,31 @@ blocks allowing it to only read the compressed blocks required.")
(license (list license:bsd-3
license:expat))))
(define-public go-github-com-cavaliergopher-cpio
(package
(name "go-github-com-cavaliergopher-cpio")
(version "1.0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cavaliergopher/cpio")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0b1ix8z9kwfpwqi0q08ivcfcimlqk781jbzbfw7qbqavh702w3m2"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/cavaliergopher/cpio"))
(home-page "https://github.com/cavaliergopher/cpio")
(synopsis "Readers and writers for CPIO archives")
(description
"This package provides readers and writers for CPIO archives. Currently,
only the SVR4 (New ASCII) format is supported, both with and without
checksums.")
(license license:bsd-3)))
(define-public go-github-com-containerd-stargz-snapshotter-estargz
(package
(name "go-github-com-containerd-stargz-snapshotter-estargz")
@@ -385,6 +435,37 @@ Implements the XFLATE format, an random-access extension to DEFLATE.
compression format.")
(license license:bsd-3)))
(define-public go-github-com-google-rpmpack
(package
(name "go-github-com-google-rpmpack")
(version "0.7.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/rpmpack")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17h2s1g191cvbs16fnclkpb42d9mx6mdmhd04kxzv8bss7m59pr4"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/google/rpmpack"))
(native-inputs
(list go-github-com-google-go-cmp))
(propagated-inputs
(list go-github-com-cavaliergopher-cpio
go-github-com-klauspost-compress
go-github-com-klauspost-pgzip
go-github-com-ulikunitz-xz))
(home-page "https://github.com/google/rpmpack")
(synopsis "Pack files to rpm files")
(description
"Package rpmpack packs files to rpm files. It is designed to be simple
to use and deploy, not requiring any filesystem access to create rpm files.")
(license license:asl2.0)))
(define-public go-github-com-hhrutter-lzw
(package
(name "go-github-com-hhrutter-lzw")
@@ -884,6 +965,40 @@ format's \"Extra Fields\". The intention is to eventually support and provide
a low-level API for the majority of PKWARE's and Info-ZIP's extra fields.")
(license license:expat)))
(define-public go-github-com-sassoftware-go-rpmutils
(package
(name "go-github-com-sassoftware-go-rpmutils")
(version "0.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sassoftware/go-rpmutils")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06ymwjn6xvc4cpxcsh5achwgma4i075ikbzq8jm143m0pck4pmfi"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/sassoftware/go-rpmutils"))
(native-inputs
(list go-github-com-stretchr-testify
go-go-uber-org-goleak))
(propagated-inputs
(list go-github-com-datadog-zstd
go-github-com-klauspost-compress
go-github-com-protonmail-go-crypto
go-github-com-ulikunitz-xz
go-github-com-xi2-xz
go-golang-org-x-sys))
(home-page "https://github.com/sassoftware/go-rpmutils")
(synopsis "Parse RPM packages in Golang")
(description
"This package provides some Golang interfaces for handling RPM packages,
such extracting RPM header and CPIO content.")
(license license:asl2.0)))
(define-public go-github-com-sorairolake-lzip-go
(package
(name "go-github-com-sorairolake-lzip-go")
+24
View File
@@ -607,6 +607,30 @@ Actions} locally.")
It's a static checker for GitHub Actions workflow files.")
(license license:expat)))
(define-public go-gitlab-com-digitalxero-go-conventional-commit
(package
(name "go-gitlab-com-digitalxero-go-conventional-commit")
(version "1.0.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/digitalxero/go-conventional-commit.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1191j3k9ma5sv8w2zsw8gb1407561zll0ca8hwy0dja6s0b3z0xy"))))
(build-system go-build-system)
(arguments
(list
#:import-path "gitlab.com/digitalxero/go-conventional-commit"))
(home-page "https://gitlab.com/digitalxero/go-conventional-commit")
(synopsis "Go parser for conventional commits")
(description
"This package provides a Go parser for conventional-commit messages
@url{https://www.conventionalcommits.org/}.")
(license license:expat)))
(define-public go-github-com-xanzy-go-gitlab
(package
(name "go-github-com-xanzy-go-gitlab")
+85 -4
View File
@@ -10796,6 +10796,33 @@ dhcpv6 and dhcpv4
@end itemize")
(license license:bsd-3)))
(define-public go-github-com-invopop-jsonschema
(package
(name "go-github-com-invopop-jsonschema")
(version "0.14.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/invopop/jsonschema")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0y881agfaycn5l5qn2y2jmiskchi0cvn5v602hna4ljy9rv5jxw2"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/invopop/jsonschema"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-pb33f-ordered-map-v2))
(home-page "https://github.com/invopop/jsonschema")
(synopsis "Go JSON Schema Reflection")
(description
"Package jsonschema uses reflection to generate JSON Schemas from Go types.")
(license license:expat)))
(define-public go-github-com-ipfs-go-cid
(package
(name "go-github-com-ipfs-go-cid")
@@ -16985,9 +17012,11 @@ kinds of referrer URLs (search, social, ...).")
(list
#:skip-build? #t
#:import-path "github.com/sigstore/rekor"
;; XXX: Remove when all inputs are packaged.
#:embed-files #~(list ".*\\.json")
;; ;; XXX: Remove when all inputs are packaged.
#:test-subdirs
#~(list "pkg/events/newentry"
#~(list "pkg/client"
"pkg/events/newentry"
"pkg/indexstorage/mysql"
"pkg/pki/minisign"
"pkg/pki/pgp"
@@ -16995,7 +17024,10 @@ kinds of referrer URLs (search, social, ...).")
"pkg/pki/tuf"
"pkg/pki/x509"
"pkg/pubsub/gcp"
"pkg/util")))
"pkg/tle"
"pkg/types"
"pkg/util"
"pkg/verify")))
(native-inputs
(list go-github-com-asaskevich-govalidator
go-github-com-data-dog-go-sqlmock
@@ -17023,6 +17055,7 @@ kinds of referrer URLs (search, social, ...).")
go-github-com-go-openapi-validate
go-github-com-go-sql-driver-mysql
go-github-com-go-viper-mapstructure-v2
go-github-com-google-rpmpack
go-github-com-google-trillian
go-github-com-grpc-ecosystem-go-grpc-middleware
go-github-com-hashicorp-go-cleanhttp
@@ -17066,7 +17099,6 @@ kinds of referrer URLs (search, social, ...).")
;; go-github-com-adamkorcz-go-fuzz-headers-1
;; go-github-com-cavaliercoder-go-rpm
;; go-github-com-go-redis-redismock-v9
;; go-github-com-google-rpmpack
;; go-github-com-sassoftware-relic
;; go-github-com-sassoftware-relic-v7
;; go-go-step-sm-crypto
@@ -18549,6 +18581,31 @@ Tailscale for access control.")
Tailscale.")
(license license:bsd-3)))
(define-public go-github-com-tcnksm-go-httpstat
(package
(name "go-github-com-tcnksm-go-httpstat")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tcnksm/go-httpstat")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18jn40ra97waxx1mf23pkh6rq46y0nqd7vi3zcx9cwc39zqaf9bc"))))
(build-system go-build-system)
(arguments
(list
#:tests? #f ;Tests require network connection
#:import-path "github.com/tcnksm/go-httpstat"))
(home-page "https://github.com/tcnksm/go-httpstat")
(synopsis "Trace HTTP latency information in Go")
(description
"Package httpstat traces HTTP latency infomation, such as DNSLookup and
TCP Connection, on any Golang HTTP request with no big code modification.")
(license license:expat)))
(define-public go-github-com-tdewolff-minify-v2
(package
(name "go-github-com-tdewolff-minify-v2")
@@ -19080,6 +19137,30 @@ caching protocol. It provides support to programmatically store and retrieve
build caches, instead of relying on the standard actions/cache YAML step.")
(license license:expat)))
(define-public go-github-com-toqueteos-webbrowser
(package
(name "go-github-com-toqueteos-webbrowser")
(version "1.2.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/toqueteos/webbrowser")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0bnn02zcfc9xkxc2qvv4q6wy5sipcwc0hwmx7hdhvv3lsw177flw"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/toqueteos/webbrowser"))
(home-page "https://github.com/toqueteos/webbrowser")
(synopsis "Simple API for opening web pages")
(description
"This package provides a simple API for opening web pages on your default
browser.")
(license license:expat)))
(define-public go-github-com-transparency-dev-tessera
(package
(name "go-github-com-transparency-dev-tessera")
+372
View File
@@ -114,6 +114,7 @@
#:use-module (gnu packages golang-compression)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-maths)
#:use-module (gnu packages golang-vcs)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages graph)
#:use-module (gnu packages imagemagick)
@@ -1761,6 +1762,30 @@ strings for a safe use as command line arguments in the most common POSIX
shells.")
(license license:expat)))
(define-public go-github-com-aleksi-pointer
(package
(name "go-github-com-aleksi-pointer")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AlekSi/pointer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rncmanv62wwy7ihvjhvb695mkvy4kdzhgnn90zygs9yrfzzk0wk"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/AlekSi/pointer"))
(home-page "https://github.com/AlekSi/pointer")
(synopsis "Helper Go library to convert between pointers and values")
(description
"This package provides helpers to convert between pointers and values of
built-in and, with generics, of any types.")
(license license:expat)))
(define-public go-github-com-alexflint-go-filemutex
(package
(name "go-github-com-alexflint-go-filemutex")
@@ -4409,6 +4434,29 @@ information for Golang.")
variables into structs.")
(license license:expat)))
(define-public go-github-com-caarlos0-go-version
(package
(name "go-github-com-caarlos0-go-version")
(version "0.2.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/caarlos0/go-version")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0kp78am3yzffz8r70f1skq0m2vms0wk37f76hqbfg1r29hay1ban"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/caarlos0/go-version"))
(home-page "https://github.com/caarlos0/go-version")
(synopsis "Fetch Go module version")
(description
"Package goversion provides utilities to get the Go module version information.")
(license license:expat)))
(define-public go-github-com-calebcase-tmpfile
(package
(name "go-github-com-calebcase-tmpfile")
@@ -4461,6 +4509,36 @@ color palette} for Go applications. Catppuccin is a community-driven pastel
theme with four flavors: Latte, Frappe, Macchiato, and Mocha.")
(license license:expat)))
(define-public go-github-com-ccojocar-zxcvbn-go
(package
(name "go-github-com-ccojocar-zxcvbn-go")
(version "1.0.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ccojocar/zxcvbn-go")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0dlrd6afpfwnpj6cbbvjhwbf33ldr0nzffl8p43jrmn62mwf7cn7"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/ccojocar/zxcvbn-go"))
(native-inputs
(list go-github-com-stretchr-testify))
(home-page "https://github.com/ccojocar/zxcvbn-go")
(synopsis "Password-strength generator in Go")
(description
"This package provides a password strength generators written in Golang.
It attempts to give sound password advice through pattern matching and
conservative entropy calculations. It finds 10k common passwords, common
American names and surnames, common English words, and common patterns like
dates, repeats (aaa), sequences (abcd), and QWERTY patterns. It's an active
fork of @url{https://github.com/nbutton23/zxcvbn-go}.")
(license license:expat)))
(define-public go-github-com-cention-sany-utf7
(package
(name "go-github-com-cention-sany-utf7")
@@ -11726,6 +11804,33 @@ native Go structure.")
(description "Package yaml implements YAML support for the Go language.")
(license license:asl2.0)))
(define-public go-github-com-gobuffalo-flect
(package
(name "go-github-com-gobuffalo-flect")
(version "1.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gobuffalo/flect")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0lyb1876byv9q52y6dlq17aahwl108mhp67cmxykckjpxxykb442"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/gobuffalo/flect"))
(native-inputs
(list go-github-com-stretchr-testify))
(home-page "https://github.com/gobuffalo/flect")
(synopsis "Inflection engine for Golang")
(description
"This package provides a new inflection engine to replace
@url{https://github.com/markbates/inflect,} designed to be more modular,
readable, and easier to fix issues on than the original.")
(license license:expat)))
(define-public go-github-com-gobwas-glob
(package
(name "go-github-com-gobwas-glob")
@@ -12569,6 +12674,41 @@ color (24-bit, RGB)
@end itemize")
(license license:expat)))
(define-public go-github-com-goreleaser-chglog
(package
(name "go-github-com-goreleaser-chglog")
(version "0.7.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/goreleaser/chglog")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "09ni4y644zhp3bf9nwy9qc9wkxrn2hla6nczg3zpn0ls8qaxjd40"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/goreleaser/chglog"))
(native-inputs
(list go-github-com-go-git-go-billy-v5
go-github-com-google-go-cmp
go-github-com-smartystreets-goconvey
go-github-com-spf13-cobra
go-github-com-spf13-viper))
(propagated-inputs
(list go-github-com-go-git-go-git-v5
go-github-com-masterminds-semver-v3
go-github-com-masterminds-sprig-v3
go-gitlab-com-digitalxero-go-conventional-commit
go-go-yaml-in-yaml-v3))
(home-page "https://github.com/goreleaser/chglog")
(synopsis "Changelog management Go library")
(description
"This package provides Go functions to manage changelogs.")
(license license:expat)))
(define-public go-github-com-goreleaser-fileglob
(package
(name "go-github-com-goreleaser-fileglob")
@@ -12599,6 +12739,66 @@ underneath and returns only matching files or directories, depending on the
configuration.")
(license license:expat)))
(define-public go-github-com-goreleaser-nfpm-v2
(package
(name "go-github-com-goreleaser-nfpm-v2")
(version "2.44.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/goreleaser/nfpm")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "17dmzkvy3ihjjaxi10l9xc1mcg9vmlr2v1xc4a361fa22aqigz0v"))))
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "github.com/goreleaser/nfpm/v2"
#:unpack-path "github.com/goreleaser/nfpm/v2"
;; Tests fail due to read-only filesystem when trying to manipulate mode
;; of the files.
#:test-flags
#~(list "-skip" "TestPrepareForPackager|TestDeepPathsWithGlobAndUmask")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda* (#:key unpack-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" unpack-path)
(substitute* "rpm/rpm_test.go"
(("/bin/bash") (which "bash")))))))))
(native-inputs
(list go-github-com-caarlos0-go-version
go-github-com-invopop-jsonschema
go-github-com-muesli-mango-cobra
go-github-com-muesli-roff
go-github-com-sassoftware-go-rpmutils
go-github-com-stretchr-testify))
(propagated-inputs
(list go-dario-cat-mergo
go-github-com-aleksi-pointer
go-github-com-blakesmith-ar
go-github-com-google-rpmpack
go-github-com-goreleaser-chglog
go-github-com-goreleaser-fileglob
go-github-com-klauspost-compress
go-github-com-klauspost-pgzip
go-github-com-masterminds-semver-v3
go-github-com-protonmail-go-crypto
go-github-com-protonmail-gopenpgp-v2
go-github-com-spf13-cobra
go-github-com-ulikunitz-xz
go-gopkg-in-yaml-v3))
(home-page "https://github.com/goreleaser/nfpm")
(synopsis "Go library to package programs in various Linux formats")
(description
"nFPM is Not FPM -- provides ways to package programs in popular Linux
packaging formats, such as @code{deb}, @code{rpm}, @code{apk}, @code{ipk} and
Arch.")
(license license:expat)))
(define-public go-github-com-gorhill-cronexpr
(package
(name "go-github-com-gorhill-cronexpr")
@@ -20520,6 +20720,90 @@ for any given struct and a set of its potential member values. This can be
used to generate extensive test matrixes among other things.")
(license license:expat)))
(define-public go-github-com-muesli-mango
(package
(name "go-github-com-muesli-mango")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/muesli/mango")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16d0sga6cbdxzlqkibcgw0civkw11fpkcjpgv21i0q5j9mjbsjw4"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/muesli/mango"))
(propagated-inputs
(list go-github-com-muesli-roff))
(home-page "https://github.com/muesli/mango")
(synopsis "Golang man-page generator")
(description
"This package provides a man-page generator for the Go flag, pflag, cobra, coral,
and kong packages. It extracts commands, flags, and arguments from the target
program and enables it to self-document.")
(license license:expat)))
(define-public go-github-com-muesli-mango-cobra
(package
(name "go-github-com-muesli-mango-cobra")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/muesli/mango-cobra")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "11vvm3f2mq8yaqbfrjbzdcyvkn9f75rp4kygxyvqwc5jsw1kdwal"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/muesli/mango-cobra"))
(propagated-inputs
(list go-github-com-muesli-mango
go-github-com-muesli-mango-pflag
go-github-com-muesli-roff
go-github-com-spf13-cobra))
(home-page "https://github.com/muesli/mango-cobra")
(synopsis "Cobra adapter for mango")
(description
"This package provides a cobra adapter for the
@url{https://github.com/muesli/mango,mango} man-page generator.")
(license license:expat)))
(define-public go-github-com-muesli-mango-pflag
(package
(name "go-github-com-muesli-mango-pflag")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/muesli/mango-pflag")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k4m88i9shs36a8n86k3a1vlxmdf5vwavkih2f2j3xj718hnhpw0"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/muesli/mango-pflag"))
(propagated-inputs
(list go-github-com-muesli-mango
go-github-com-muesli-roff
go-github-com-spf13-pflag))
(home-page "https://github.com/muesli/mango-pflag")
(synopsis "Pflag adapter for mango")
(description
"This package provides a pflag adapter for the
@url{https://github.com/muesli/mango, mango} man-page generator.")
(license license:expat)))
(define-public go-github-com-muesli-reflow
(package
(name "go-github-com-muesli-reflow")
@@ -20547,6 +20831,32 @@ used to generate extensive test matrixes among other things.")
helping you to transform blocks of text.")
(license license:expat)))
(define-public go-github-com-muesli-roff
(package
(name "go-github-com-muesli-roff")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/muesli/roff")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0l263rqwq2ccr1lpamsvs48dddsr70xim8mv6rsj2x9y3prcq3yh"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/muesli/roff"
;; Expected title heading, got:
;; .TH TITLE 1 "2026-05-22" "Title" "A short description"
#:test-flags #~(list "-skip" "TestTitleHeading")))
(home-page "https://github.com/muesli/roff")
(synopsis "Write roff documents in Go")
(description "This package provides tools to write @code{roff}
documents in Golang.")
(license license:expat)))
(define-public go-github-com-muesli-termenv
(package
(name "go-github-com-muesli-termenv")
@@ -22506,6 +22816,36 @@ expiration times, it doesn't need to serialize or transmit its contents over
the network.")
(license license:expat)))
(define-public go-github-com-pb33f-ordered-map-v2
(package
(name "go-github-com-pb33f-ordered-map-v2")
(version "2.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pb33f/ordered-map")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1k4r1rvlziddaszm1jvgz27nkrk1jfka0zik16f4b3gmhdnmd9vc"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/pb33f/ordered-map/v2"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-bahlo-generic-list-go
go-github-com-buger-jsonparser
go-go-yaml-in-yaml-v4))
(home-page "https://github.com/pb33f/ordered-map")
(synopsis "Ordered maps in Golang")
(description
"This package provides a Golang implementation of an ordered map, which
is a map that also keeps track of the order in which keys were inserted.")
(license license:asl2.0)))
(define-public go-github-com-pbnjay-memory
(let ((commit "7b4eea64cf580186c0eceb10dc94ba3a098af46c")
(revision "2"))
@@ -33637,6 +33977,22 @@ library.")
;;; Executables:
;;;
(define-public chglog
(package/inherit go-github-com-goreleaser-chglog
(name "chglog")
(arguments
(substitute-keyword-arguments arguments
((#:tests? _ #t) #f)
((#:install-source? _ #t) #f)
((#:import-path _) "github.com/goreleaser/chglog/cmd/chglog")
((#:unpack-path _ "") "github.com/goreleaser/chglog")))
(native-inputs
(append
(package-native-inputs go-github-com-goreleaser-chglog)
(package-propagated-inputs go-github-com-goreleaser-chglog)))
(inputs '())
(propagated-inputs '())))
(define-public containers-storage
(package/inherit go-github-com-containers-storage
(name "containers-storage")
@@ -34177,6 +34533,22 @@ various modes for analyzing and transforming YAML data.")))
(propagated-inputs '())
(inputs '())))
(define-public nfpm
(package/inherit go-github-com-goreleaser-nfpm-v2
(name "nfpm")
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "github.com/goreleaser/nfpm/v2/cmd/nfpm")
((#:install-source? _ #t) #f)
((#:tests? _ #t) #f)
((#:unpack-path _ "") "github.com/goreleaser/nfpm/v2")))
(native-inputs
(append
(package-native-inputs go-github-com-goreleaser-nfpm-v2)
(package-propagated-inputs go-github-com-goreleaser-nfpm-v2)))
(inputs '())
(propagated-inputs '())))
(define-public oci-runtime-tool
(package/inherit go-github-com-opencontainers-runtime-tools
(name "oci-runtime-tool")
+89 -19
View File
@@ -111,7 +111,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mp3)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ninja)
#:use-module (gnu packages opencl)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages pciutils)
@@ -998,24 +997,17 @@ baking tools to produce normal maps.")
(string-append "-DLLVM_BC_GENERATOR="
#$(this-package-native-input "clang")
"/bin/clang++"))
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke
"ctest" "--exclude-regex"
(string-join
(list
"osl-imageio" ; file does not exist
"osl-imageio.opt" ; file does not exist
"osl-imageio.opt.rs_bitcode" ; file does not exist
"texture-udim" ; file does not exist
"texture-udim.opt" ; file does not exist
"texture-udim.opt.rs_bitcode" ; file does not exist
"example-deformer" ; could not find OSLConfig
"python-oslquery") ; no module oslquery
"|"))))))))
#:test-exclude (string-join
(list
"osl-imageio" ; file does not exist
"osl-imageio.opt" ; file does not exist
"osl-imageio.opt.rs_bitcode" ; file does not exist
"texture-udim" ; file does not exist
"texture-udim.opt" ; file does not exist
"texture-udim.opt.rs_bitcode" ; file does not exist
"example-deformer" ; could not find OSLConfig
"python-oslquery") ; no module oslquery
"|")))
(native-inputs
(list bison
clang
@@ -1347,6 +1339,19 @@ basic geometries.")
(file-name (git-file-name name version))
(sha256
(base32 "0gfgzwm5s50caj5s6l7irgmlifpmypd0fnm6ckzli1fdziwjgdwi"))))
(arguments
;; https://gitlab.com/inkscape/lib2geom/-/work_items/82
(if (or (target-aarch64?)
(target-riscv64?)
(target-ppc64le?))
(substitute-keyword-arguments arguments
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-after 'unpack 'disable-polynomial-test
(lambda _
(substitute* "tests/CMakeLists.txt"
(("polynomial-test") "")))))))
arguments))
(properties '((hidden? . #f)))))
(define-public pstoedit
@@ -2392,6 +2397,71 @@ and engineering community.")
(define-deprecated coin3D-4 coin3d)
(export coin3D-4)
(define-public skcms
;; No tags are available.
(let ((commit "a7a3b15f06355692d86a3b8373c579a521598f4c")
(revision "0"))
(package
(name "skcms")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://skia.googlesource.com/skcms")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ylrsm7cinw59ilgbffazbgifax81kkya5cxq8q8wybnxx6z6ps6"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-includes
(lambda _
(substitute* "skcms.h"
(("src\\/skcms_public\\.h") "skcms/skcms_public.h"))))
(delete 'configure)
(replace 'build
(lambda _
;; Some CPUs may not support these features.
(let ((cflags (append '("-DSKCMS_DISABLE_HSW=1"
"-DSKCMS_DISABLE_SKX=1")
(if #$(target-mingw?)
'("-DSKCMS_HAS_MUSTTAIL=0")
'())))
(ldflags '("-lstdc++")))
(apply invoke #$(cc-for-target)
`("-O2" "-g" "-fPIC" ,@cflags
"skcms.cc"
"src/skcms_TransformBaseline.cc"
"src/skcms_TransformHsw.cc"
"src/skcms_TransformSkx.cc"
"-shared" ,@ldflags
"-o" "libskcms.so"))
(apply invoke #$(cc-for-target)
`(,@cflags
"tests.c" "test_only.c"
"-Wl,-rpath=." "-L." "-lskcms" ,@ldflags
"-o" "tests")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./tests"))))
(replace 'install
(lambda _
(install-file "libskcms.so" (string-append #$output "/lib"))
(install-file "skcms.h" (string-append #$output "/include"))
(install-file "src/skcms_public.h"
(string-append #$output "/include/skcms")))))))
(native-inputs (list ninja))
(home-page "https://skia.org/")
(synopsis "Color management engine")
(description
"skcms is the color management engine. It is a part of @code{skia}.")
(license license:bsd-3))))
(define-public skia
;; Releases follow those of Chromium, about every 6 weeks. The release
;; version can be found on this page:
+2 -2
View File
@@ -341,7 +341,7 @@ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(srcdir)/predicates_init.c \
(define-public xdot
(package
(name "xdot")
(version "1.4")
(version "1.6")
(source
(origin
;; PyPI tarball is missing some test files.
@@ -351,7 +351,7 @@ $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) $(srcdir)/predicates_init.c \
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1l34ahvcz90j3j7aspp9wqvxpq10mzgq7l0sanrj142ihdnbahvy"))))
(base32 "0gg54k6zhdviz17aa3harc82f7bx4mpwnj292q066dzamvr87svq"))))
(build-system pyproject-build-system)
(arguments
(list
+2 -1
View File
@@ -1173,7 +1173,8 @@ application suites.")
'("--no-suite=gsk-compare-gl"
"--no-suite=gsk-compare-cairo"
"--no-suite=gsk-compare-ngl"
"--no-suite=gsk-compare-vulkan")
"--no-suite=gsk-compare-vulkan"
"--no-suite=svg")
'()))
#:phases
#~(modify-phases %standard-phases
+11
View File
@@ -529,6 +529,17 @@ without requiring the source code to be rewritten.")
;;; (security or else) and this deprecation could be removed.
(define-deprecated/public-alias guile-3.0/fixed guile-3.0/pinned)
(define-public guile-with-gmp
(package/inherit guile-3.0-latest
(name "guile-with-gmp")
(propagated-inputs
(modify-inputs propagated-inputs
(append gmp)))
(arguments
(substitute-keyword-arguments arguments
((#:configure-flags flags #~'())
#~(delete "--enable-mini-gmp" #$flags))))))
(define-public guile-3.0/pinned
;; A package of Guile that's rarely changed. It is the one used in the
;; `base' module, and thus changing it entails a full rebuild.
+105
View File
@@ -45,6 +45,7 @@
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;; Copyright © 2025 Hugo Buddelmeijer <hugo@buddelmeijer.nl>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Sughosha <sughosha@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1104,6 +1105,53 @@ images of initially unknown height.")
(license (list license:isc ; pbmtools/p?m.5
license:gpl2+)))) ; the rest
(define-public sjpeg
;; No tags available.
(let ((commit "46da5aec5fce05faabf1facf0066e36e6b1c4dff")
(revision "0"))
(package
(name "sjpeg")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/webmproject/sjpeg")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0r496mp2ylisspwxl4883pzbl0l8qpscd1x9l7sb5nnmknawr868"))))
(build-system cmake-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
;; Enable building shared libraries.
(substitute* "CMakeLists.txt"
(("add_library\\(sjpeg " all)
(string-append all "SHARED ")))))
(add-before 'check 'patch-tests
(lambda _
(with-directory-excursion "../source/tests"
(substitute* '("test_cmd.sh" "test_png_jpg.sh")
(("\\.\\./examples") "../../build")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "../source/tests"
(invoke "./test_cmd.sh")
(invoke "./test_png_jpg.sh"))))))))
(inputs (list freeglut libjpeg-turbo libpng zlib))
(home-page "https://github.com/webmproject/sjpeg")
(synopsis "Simple JPEG encoder")
(description
"sjpeg is a simple encoding library for encoding baseline JPEG files.
It is also a command-line tool that takes PNG or JPEG images as input to
produce JPEG files.")
(license license:asl2.0))))
(define-public openjpeg-data
(package
(name "openjpeg-data")
@@ -1180,6 +1228,63 @@ JPEG 2000 Reference Software.")
(home-page "https://github.com/uclouvain/openjpeg")
(license license:bsd-2)))
(define jp2k-test-codestreams
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aous72/jp2k_test_codestreams")
(commit "eda0844b9f3be47d9b64194bcea5eb1ac2285e39")))
(sha256
(base32 "1sci4a4dvgrgmrf942zdf0hqhcx30a5lffwfy6r3hya35l3q8q8f"))))
(define-public openjph
(package
(name "openjph")
(version "0.27.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aous72/OpenJPH")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1knygwn4bf6n53qr12w05yava7464x3c70rf5r20sz8adjcfccvx"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(if #$(%current-target-system)
'()
'("-DOJPH_BUILD_TESTS=ON"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
(substitute* "tests/CMakeLists.txt"
(("^FetchContent_MakeAvailable\\(googletest\\)")
#$(if (%current-target-system)
""
"find_package(GTest REQUIRED)"))
(("^FetchContent_MakeAvailable\\(jp2k_test_codestreams\\).*")
""))))
#$@(if (%current-target-system)
#~()
#~((add-before 'check 'unpack-jp2k-test-codestreams
(lambda _
(copy-recursively #$jp2k-test-codestreams
"tests/jp2k_test_codestreams"))))))))
(native-inputs (if (%current-target-system)
'()
(list googletest)))
(inputs (list libtiff))
(home-page "https://github.com/aous72/OpenJPH")
(synopsis "JPEG2000 Part-15 (or JPH or HTJ2K) implementation")
(description
"OpenJPH is an implementation of @acronym{HTJ2K, High-throughput JPEG2000},
also known as JPH, JPEG2000 Part 15, ISO/IEC 15444-15, and ITU-T T.814.")
(license license:bsd-2)))
(define-public openslide
(package
(name "openslide")
+9
View File
@@ -379,6 +379,15 @@ as the native format.")
;; Re-instate the tests disabled in inkscape/pinned, now that
;; their ImageMagick requirement is satisfied.
#~((replace 'check (assoc-ref gnu:%standard-phases 'check))))
#$@(if (or (target-aarch64?)
(target-ppc64le?)
(target-riscv64?))
'((add-after 'unpack 'disable-geom-pathstroke-test
(lambda _
;; https://gitlab.com/inkscape/lib2geom/-/work_items/80
(substitute* "testfiles/CMakeLists.txt"
((" geom-pathstroke-test") "")))))
'())
(replace 'wrap-program
;; Ensure Python is available at runtime.
(lambda _
-7
View File
@@ -326,13 +326,6 @@ surveys")
accessibility clients such as screen readers.")
(license license:lgpl2.1+)))
(define-public libqaccessibilityclient-qt5
(package
(inherit libqaccessibilityclient)
(name "libqaccessibilityclient-qt5")
(inputs (modify-inputs inputs
(replace "qtbase" qtbase-5)))))
(define-public qca
(package
(name "qca")
+2 -2
View File
@@ -189,14 +189,14 @@ structure. It features:
(define-public kcachegrind
(package
(name "kcachegrind")
(version "25.12.3")
(version "26.04.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kcachegrind-" version ".tar.xz"))
(sha256
(base32
"1lpgx3i2h3iq99nsssgwjpsvsn6izy4sp5l8rh7984lbd06wqsp9"))))
"1krd0zbssj5q9shwdpmsnzpah2p6insl0sdh3x6dbrwnlyqaydbv"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules perl python qttools kdoctools))
+172
View File
@@ -35,6 +35,50 @@
;;; Libraries:
;;;
(define-public go-github-com-elastic-crd-ref-docs
(package
(name "go-github-com-elastic-crd-ref-docs")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/elastic/crd-ref-docs")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0vg3zjcgcq04cbqc8sk638q9v5r62w8r8x22yl7g9blbbr13sj7s"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - github.com/elastic/crd-ref-docs/test
(delete-file-recursively "test")))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:import-path "github.com/elastic/crd-ref-docs"))
(native-inputs
(list go-github-com-stretchr-testify))
(propagated-inputs
(list go-github-com-goccy-go-yaml
go-github-com-masterminds-sprig-v3
go-github-com-spf13-cobra
go-golang-org-x-tools
go-go-uber-org-zap
go-k8s-io-apimachinery
go-sigs-k8s-io-controller-runtime
;; go-sigs-k8s-io-gateway-api
go-sigs-k8s-io-controller-tools))
(home-page "https://github.com/elastic/crd-ref-docs")
(synopsis "Kubernetes CRD reference documentation generator")
(description
"This package generates API reference documentation by scanning a source
tree for exported @acronym{CustomResourceDefinition, CRD} types.")
(license license:asl2.0)))
(define-public go-go-etcd-io-etcd-client-v3
(package
(name "go-go-etcd-io-etcd-client-v3")
@@ -615,6 +659,95 @@ controllers that manipulate both Kubernetes CRDs and aggregated/built-in
Kubernetes APIs.")
(license license:asl2.0)))
(define-public go-sigs-k8s-io-controller-tools
(package
(name "go-sigs-k8s-io-controller-tools")
(version "0.19.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kubernetes-sigs/controller-tools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n6vc681bhhk972l1ijg7m01xy3zvi5i17y6fhac1m7bs7rrgz1l"))
(modules '((guix build utils)))
(snippet
#~(begin
;; Submodules with their own go.mod files and packaged separately:
;;
;; - github.com/google/cel-go/codelab
(for-each delete-file-recursively
(list "pkg/crd/testdata"
"pkg/loader/testmod"
"pkg/webhook/testdata"
"pkg/deepcopy/testdata"
"pkg/schemapatcher/testdata"
"pkg/applyconfiguration/testdata/cronjob"))))))
(build-system go-build-system)
(arguments
(list
#:skip-build? #t
#:test-flags
#~(list "-skip" (string-join
;; Expected success, but got an error:
;; <*fs.PathError | 0xc000314a20>:
;; chdir ./testdata: no such file or directory
;; {
;; Op: "chdir",
;; Path: "./testdata",
;; Err: <syscall.Errno>0x2,
;; }
;; 0 Passed | 1 Failed
(list "TestObjectGeneration"
;; 23 Passed | 19 Failed
"TestCRDGeneration"
;; validation_test.go:118:
;; failed to create validator:
;; open ./testdata/testdata.kubebuilder.io_oneofs.yaml:
;; no such file or directory
"TestOneOfConstraints"
;; 3 Passed | 8 Failed
"TestLoader"
;; 0 Passed | 2 Failed
"TestInPlaceCRDSchemaGeneration"
;; 0 Passed | 11 Failed
"TestWebhookGeneration"
;; 1 Passed | 1 Failed
"TestVersioning")
"|"))
#:import-path "sigs.k8s.io/controller-tools"
#:embed-files
#~(list "authoring.tmpl")))
(native-inputs
(list go-github-com-google-go-cmp
go-github-com-onsi-ginkgo
go-github-com-onsi-gomega))
(propagated-inputs
(list go-github-com-fatih-color
go-github-com-gobuffalo-flect
go-github-com-spf13-cobra
go-github-com-spf13-pflag
go-golang-org-x-tools
go-golang-org-x-tools-go-packages-packagestest
go-gopkg-in-yaml-v2
go-gopkg-in-yaml-v3
go-k8s-io-api
go-k8s-io-apiextensions-apiserver
go-k8s-io-apimachinery
go-k8s-io-apiserver
go-k8s-io-code-generator
go-k8s-io-gengo-v2
go-k8s-io-utils
go-sigs-k8s-io-yaml))
(home-page "https://sigs.k8s.io/controller-tools")
(synopsis "Kubernetes controller-tools Project")
(description
"The Kubernetes controller-tools Project is a set of go libraries for building
Controllers.")
(license license:asl2.0)))
;;;
;;; Executables:
@@ -687,6 +820,45 @@ api-status.csv files
functions
@end itemize")))
(define-public kubernetes-controller-tools
(package/inherit go-sigs-k8s-io-controller-tools
(name "kubernetes-controller-tools")
(arguments
(substitute-keyword-arguments arguments
((#:import-path _) "sigs.k8s.io/controller-tools/cmd/...")
((#:install-source? #t #t) #f)
((#:skip-build? #t #t) #f)
((#:tests? #t #t) #f)
((#:unpack-path _ "") "sigs.k8s.io/controller-tools")))
(native-inputs
(package-propagated-inputs go-sigs-k8s-io-controller-tools))
(propagated-inputs '())
(inputs '())
(description
"This package provides helper commands to work with Kubernetes (k8s):
@itemize:
@item @command{controller-gen} - generates Kubernetes API extension resources
and code
@item @command{helpgen} - generates marker help using @command{godoc}, based
on the presence of a particular marker
@item @command{type-scaffold} - scaffolds out basic bits of a Kubernetes type
@end itemize
For the Go library, refer to go-sigs-k8s-io-controller-tools package.")))
(define-public kubernetes-crd-ref-docs
(package/inherit go-github-com-elastic-crd-ref-docs
(name "kubernetes-crd-ref-docs")
(arguments
(substitute-keyword-arguments arguments
((#:install-source? #t #t) #f)
((#:skip-build? #t #t) #f)
((#:tests? #t #t) #f)))
(native-inputs
(package-propagated-inputs go-github-com-elastic-crd-ref-docs))
(propagated-inputs '())
(inputs '())))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above in alphabetic order:
+105 -1
View File
@@ -15,6 +15,7 @@
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Nguyễn Gia Phong <cnx@loang.net>
;;; Copyright © 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,6 +38,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages audio)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cmake)
#:use-module (gnu packages dbm)
@@ -50,6 +52,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages ibus)
#:use-module (gnu packages java)
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages man)
@@ -88,7 +91,8 @@
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix modules)
#:use-module (guix utils))
#:use-module (guix utils)
#:use-module (srfi srfi-1))
(define-public nimf
(package
@@ -1109,6 +1113,106 @@ for longer text sequences. As it relies on dictionaries,
if a word is missing or mispelled, the detection will fail.")
(license license:agpl3)))
;; This package provides the database files created by
;; The Árni Magnússon Institute for Icelandic Studies which
;; are needed for building certain packages.
;; This package is not intended to be installed directly.
(define arnastofnun-dim
(let ((version "May2026"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/spencerking/DIM-mirror")
(commit version)))
(file-name (git-file-name "arnastofnun-dim" version))
(sha256
(base32 "1ribxkdj9clafdqa572bp0qh73spv4wagyx49jqdivq8r3b631n6")))))
(define-public python-islenska-bootstrap
(hidden-package
(package
(name "python-islenska-bootstrap")
(version "1.1.1")
;; Use the git source since this should not include database files.
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mideind/BinPackage")
(commit version)))
(file-name (git-file-name "python-islenska" version))
(sha256
(base32 "1wgv2k41m1jmsqr1sdlj92kw5v3d5r9cg2268vfh8308pncn1fya"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
;; Add two new phases to ensure that the database resource files
;; are included in the installed package. This is necessary for
;; running the bundled build scripts (tools/binpack.py and
;; tools/dawgbuilder.py) when bootstrapping.
#~(modify-phases %standard-phases
(add-after 'unpack 'create-manifest-in
(lambda* (#:key inputs #:allow-other-keys)
(with-output-to-file "MANIFEST.in"
(lambda ()
(display "graft src/islenska/resources")))))
(add-after 'unpack 'patch-setup-py
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "setup.py"
(("(.*)cffi_modules=.*" cffi indent)
(string-append
cffi
indent "package_data={'islenska':['src/resources/*']},\n"
indent "include_package_data=True,\n"))))))
;; Tests will fail since database files have not been bootstrapped yet.
#:tests? #f))
(propagated-inputs (list python-cffi python-typing-extensions))
(native-inputs (list python-cffi python-pytest python-setuptools))
(home-page "https://github.com/mideind/BinPackage")
(synopsis
"The vocabulary of modern Icelandic, encapsulated in a Python package")
(description
"Islenska is a Python package that embeds the vocabulary of the Database
of Icelandic Morphology and offers various lookups and queries of the data.
The database contains over 6.5 million entries, over 3.1 million unique word
forms, and about 300,000 distinct lemmas.")
(license license:expat))))
(define-public python-islenska
(package/inherit python-islenska-bootstrap
(name "python-islenska")
(arguments
(list
#:phases
#~(modify-phases %standard-phases
;; Delete the phases added for python-islenska-bootstrap.
(delete 'create-manifest-in)
(delete 'patch-setup-py)
;; Copy KRISTINsnid.csv to the expected directory
;; for the build scripts.
(add-after 'unpack 'unpack-resources
(lambda* (#:key inputs #:allow-other-keys)
(install-file
(search-input-file inputs "KRISTINsnid.csv/KRISTINsnid.csv")
"src/islenska/resources")))
;; Run the build scripts
(add-before 'build 'build-databases
(lambda _
(invoke "python" "tools/binpack.py")
(invoke "python" "tools/dawgbuilder.py"))))
#:tests? #t))
(native-inputs (list arnastofnun-dim
python-cffi
python-islenska-bootstrap
python-pytest
python-setuptools
unzip))
(license (list license:cc-by4.0 ;resource files
license:expat))
(properties
(alist-delete 'hidden? (package-properties python-islenska-bootstrap)))))
(define-public python-sacremoses
(package
(name "python-sacremoses")
+22 -22
View File
@@ -530,7 +530,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "mainline" kernel.
(define-public linux-libre-7.0-version "7.0.8")
(define-public linux-libre-7.0-version "7.0.10")
(define-public linux-libre-7.0-gnu-revision "gnu")
(define deblob-scripts-7.0
(linux-libre-deblob-scripts
@@ -540,7 +540,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 "08nbdmgy4bbpmjzkh6n4v3shksvxpcxhy8biv5w7qkwz5jrayi8r")))
(hash (base32 "1p1j9s0b4qv9m0pm6vj477rqgyd1b0lsk0gy74cks3n2cbmpfj89")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-7.0)))
@@ -563,7 +563,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.31")
(define-public linux-libre-6.18-version "6.18.33")
(define-public linux-libre-6.18-gnu-revision "gnu")
(define deblob-scripts-6.18
(linux-libre-deblob-scripts
@@ -573,7 +573,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 "1djqya5jlgg0q0ra5mvqdfcsbf13vxffhgxyqvy9qh2x91nvi850")))
(hash (base32 "10mp1ypsdz42jr26g1xxbw806mvpy0n35418fhsgxxlr4lqgy5kg")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.18)))
@@ -582,7 +582,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.89")
(define-public linux-libre-6.12-version "6.12.91")
(define-public linux-libre-6.12-gnu-revision "gnu")
(define deblob-scripts-6.12
(linux-libre-deblob-scripts
@@ -592,12 +592,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 "184r0wji02qw2n7ncx0jrf382yk20nnf79fvafim6a4x9a0gsnjq")))
(hash (base32 "0sbrb612b653w64g5jkpbf68y0fka2sgnwblam41k7wz2sgapwhg")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.12)))
(define-public linux-libre-6.6-version "6.6.138")
(define-public linux-libre-6.6-version "6.6.141")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
@@ -607,12 +607,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 "03x8ald0sjzdb6kpzrw8adnc78r3mdxrx8mzbxbpwp35vdgnpl5d")))
(hash (base32 "1qbzxgqs7q9gyqfrf0j7p0pgjxnjj5mibamhm280mf9anqp6bhiv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
(define-public linux-libre-6.1-version "6.1.172")
(define-public linux-libre-6.1-version "6.1.174")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@@ -622,12 +622,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 "16dlfdzjcsc21m5sfbhamg8y3ay54rz8a0qqvqrmxq691mhjwrzi")))
(hash (base32 "0vp07x4v82qnmc1pifv3ynp2ab5mvlbfnpqvs5893bi3yrnk927d")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.206")
(define-public linux-libre-5.15-version "5.15.208")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@@ -637,12 +637,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 "07z6lla7xpnn4sn3l4zw3x7m8ih8w6h54k71qrxrf5zv9i7wxijz")))
(hash (base32 "0wmi50q8vgblhbh77d1a4sw4snymr6srqd22bxcjg9i7wcv70gdm")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.255")
(define-public linux-libre-5.10-version "5.10.257")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@@ -652,7 +652,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 "19v6g2fq4nqv38irlcd9x14s6d398c56mxzpyc03q4xmpy3v6mir")))
(hash (base32 "1lghcrxc1fqarvym03jrcda2a3labc887ci9yjqgbmv3nphzvc88")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@@ -1218,6 +1218,12 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-7.0-version)
(define-public linux-libre-gnu-revision linux-libre-7.0-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-7.0-pristine-source)
(define-public linux-libre-source linux-libre-7.0-source)
(define-public linux-libre linux-libre-7.0)
(define-public linux-libre-6.19
(make-linux-libre* linux-libre-6.19-version
linux-libre-6.19-gnu-revision
@@ -1234,12 +1240,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-version linux-libre-6.18-version)
(define-public linux-libre-gnu-revision linux-libre-6.18-gnu-revision)
(define-public linux-libre-pristine-source linux-libre-6.18-pristine-source)
(define-public linux-libre-source linux-libre-6.18-source)
(define-public linux-libre linux-libre-6.18)
(define-public linux-libre-6.12
(make-linux-libre* linux-libre-6.12-version
linux-libre-6.12-gnu-revision
@@ -1979,6 +1979,8 @@ 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 linux-libre-arm64-mnt-reform-7.0)
(define-public linux-libre-arm64-mnt-reform-6.19
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
@@ -2315,8 +2317,6 @@ 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 linux-libre-arm64-mnt-reform-6.18)
(define-public linux-libre-arm64-mnt-reform-6.12
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
+1 -1
View File
@@ -76,6 +76,7 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages bdw-gc)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
@@ -102,7 +103,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages notcurses)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages perl)
+2 -2
View File
@@ -27,7 +27,7 @@
(define-public lout
(package
(name "lout")
(version "3.43.2")
(version "3.43.4")
;; The original version at <https://savannah.nongnu.org/projects/lout/> is
;; effectively abandoned, not receiving build fixes and the likes, and
@@ -41,7 +41,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"0lvk1ffzgydgj4csaclrh3a9nwla061clgf8lda6n47masg12qzi"))))
"09s6mcimvhw96i3vncqa8cz04xcq9x3qir8m1nzqfny8vdwyz35n"))))
(build-system gnu-build-system) ; actually, just a makefile
(outputs '("out" "doc"))
(native-inputs
+16 -1
View File
@@ -74,7 +74,6 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages rdf)
@@ -151,6 +150,22 @@ automatic memory management with incremental garbage collection, making it ideal
for configuration, scripting, and rapid prototyping.")
(license license:x11)))
(define-public lua-5.5
(package (inherit lua)
(version "5.5.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.lua.org/ftp/lua-"
version ".tar.gz"))
(sha256
(base32 "0gcbsr00difm2s82pflxg28zcnjka9048lncbfvwl1fhpcmw7k2p"))
;; Note: Some lua-5.4 patches seem to apply without issues
(patches (search-patches "lua-5.4-pkgconfig.patch"
"lua-5.4-liblua-so.patch"
"lua-5.x-search-path-helpers.patch"
"lua-5.5-search-paths.patch"))))
(native-search-paths (lua-search-paths "5.5"))))
(define-public lua-5.4
(package (inherit lua)
(version "5.4.8")
-1
View File
@@ -96,7 +96,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages oneapi)
+2 -2
View File
@@ -328,7 +328,7 @@ PostScript, and PDF. Additional tools include the @command{man} viewer, and
(define-public man-pages
(package
(name "man-pages")
(version "6.16")
(version "6.18")
(source
(origin
(method url-fetch)
@@ -338,7 +338,7 @@ PostScript, and PDF. Additional tools include the @command{man} viewer, and
(string-append "mirror://kernel.org/linux/docs/man-pages/Archive/"
"man-pages-" version ".tar.xz")))
(sha256
(base32 "18yp64vb8br49d44jmq47dc901n7p20nqs88zsf8106dfnypl94f"))))
(base32 "1l949fvqikf88qjxbp1wny185prd3mcgcd3s49l8qx2rigfgld69"))))
(build-system gnu-build-system)
(arguments
(list
+1 -1
View File
@@ -125,6 +125,7 @@
#:use-module (gnu packages benchmark)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages calendar)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
@@ -176,7 +177,6 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages oneapi)
+1 -1
View File
@@ -184,7 +184,7 @@ asyncio_mode = auto")))))
python-attrs
python-cachetools
python-click
python-dbus-1.2
python-dbus
python-janus
python-keyring
python-logbook
+1 -1
View File
@@ -3687,7 +3687,7 @@ can be whipped up with little effort.")
(build-system gnu-build-system)
(native-inputs (list pkg-config))
(inputs
(list jansson libcap ncurses))
(list jansson ncurses))
(arguments
`(#:tests? #f)) ; tests require network access
(home-page "https://www.bitwizard.nl/mtr/")
+11 -120
View File
@@ -5,6 +5,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2026 Luca Kredel <luca.kredel@web.de>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,127 +23,17 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages ninja)
#:use-module ((guix licenses) #:select (asl2.0 expat))
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
#:use-module (gnu packages python)
#:use-module (gnu packages re2c)
#:use-module (srfi srfi-1))
#:use-module (gnu packages build-tools)
#:use-module (guix deprecation))
(define-public ninja/pinned
(hidden-package
(package
(name "ninja")
(version "1.13.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ninja-build/ninja")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0lp9dmxbjyjwv089i8mgq3nvnhpbnsn01ifm05m9s47w7cifrl8g"))))
(build-system gnu-build-system)
(inputs (list python-wrapper re2c))
(arguments
'(; Tests now require googletest, which is a circular dependency.
#:tests? #f
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(substitute* "src/subprocess-posix.cc"
(("/bin/sh") (which "sh")))
(substitute* "src/subprocess_test.cc"
(("/bin/echo") (which "echo")))))
(replace 'build
(lambda _
(invoke "./configure.py" "--bootstrap")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./configure.py")
(invoke "./ninja" "ninja_test")
(invoke "./ninja_test"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/ninja")))
(install-file "ninja" bin)
(install-file "doc/manual.asciidoc" doc)))))))
(home-page "https://ninja-build.org/")
(synopsis "Small build system")
(description
"Ninja is a small build system with a focus on speed. It differs from
other build systems in two major respects: it is designed to have its input
files generated by a higher-level build system, and it is designed to run
builds as fast as possible.")
(license asl2.0))))
(define-deprecated/public-alias ninja/pinned
(@ (gnu packages build-tools) ninja/pinned))
(define-public ninja
(package/inherit ninja/pinned
(properties (alist-delete 'hidden? (package-properties ninja/pinned)))))
(define-deprecated/public-alias ninja
(@ (gnu packages build-tools) ninja))
(define-public samurai
(package
(name "samurai")
(version "1.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/michaelforney/samurai")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"04iw18hgkm72yrl83a2xh1jc47w9rilpb95kwick0j37b4q3gxj4"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no test suite
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-/bin/sh
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "build.c"
(("/bin/sh")
(search-input-file inputs "bin/sh")))))
(delete 'configure))))
(inputs (list bash-minimal))
(home-page "https://github.com/michaelforney/samurai")
(synopsis "Ninja-compatible build tool written in C")
(description "@code{samurai} is a ninja-compatible build tool written in
C99 with a focus on simplicity, speed, and portability. It is
feature-complete and supports most of the same options as ninja. This package
provides the command @command{samu}. For a @command{ninja} command
replacement, use the @code{samu-as-ninja-wrapper} package.")
(license (list asl2.0 ;for the most part
expat)))) ;htab.h, htab.c and tree.c
(define-deprecated/public-alias samurai
(@ (gnu packages build-tools) samurai))
(define-public samu-as-ninja-wrapper
(package/inherit samurai
(name "samu-as-ninja-wrapper")
(build-system trivial-build-system)
(arguments
(list #:builder
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(let ((bindir (string-append #$output "/bin"))
(samu (string-append #$(this-package-input "samurai")
"/bin/samu")))
(mkdir-p bindir)
(symlink samu (string-append bindir "/ninja")))))))
(inputs (list samurai))
(description "This package provides the @command{ninja} command,
implemented as a symbolic link to the @command{samu} command of @code{samurai}
package.")))
(define-deprecated/public-alias samu-as-ninja-wrapper
(@ (gnu packages build-tools) samu-as-ninja-wrapper))
-1
View File
@@ -109,7 +109,6 @@
#:use-module (gnu packages markup)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages patchutils)
+7 -11
View File
@@ -304,6 +304,12 @@ human.")
ruby-asciidoctor/minimal))
#~'()
#~(list "-DWITH_XC_DOCS=NO")))
;; Entries have recently become sorted per the locale, and
;; causes testentrymodel to fail when using the C locale (see:
;; https://github.com/keepassxreboot/keepassxc/issues/11813).
;; testClip runs 'xclip', which hangs in the container,
;; perhaps because it lacks a TTY.
#:test-exclude "testentrymodel|testcli"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'record-clipboard-programs
@@ -327,17 +333,7 @@ human.")
"\")")))
(substitute* "src/gui/Clipboard.cpp"
(("\"wl-copy\"")
(format #f "~s" (search-input-file inputs "bin/wl-copy"))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Entries have recently become sorted per the locale, and
;; causes testentrymodel to fail when using the C locale (see:
;; https://github.com/keepassxreboot/keepassxc/issues/11813).
;; testClip runs 'xclip', which hangs in the container,
;; perhaps because it lacks a TTY.
(invoke "ctest" "--exclude-regex"
"testentrymodel|testcli")))))))
(format #f "~s" (search-input-file inputs "bin/wl-copy")))))))))
(native-inputs
(append
(list qttools-5)
@@ -0,0 +1,26 @@
Remove nonfree tile data.
Note this does not remove the directories; ensure they are snippeted out separately.
Patch by bdunahu <bdunahu@operationnull.com>.
diff --git a/lib/tiles/list.txt b/lib/tiles/list.txt
index 3677ba45e..eb2592c9f 100644
--- a/lib/tiles/list.txt
+++ b/lib/tiles/list.txt
@@ -54,15 +48,3 @@
size:16:16:8x16.png
pref:graf-nmd.prf
extra:0:0:0
-
-name:5:Shockbolt Dark
-directory:shockbolt
-size:64:64:64x64.png
-pref:graf-shb-dark.prf
-extra:1:27:31
-
-name:6:Shockbolt Light
-directory:shockbolt
-size:64:64:64x64.png
-pref:graf-shb-light.prf
-extra:1:27:31
@@ -0,0 +1,50 @@
Change Lua to use GUIX_LUA_PATH and GUIX_LUA_CPATH to construct the default
LUA_PATH and LUA_CPATH, instead of using hard-coded paths that Guix doesn't
populate.
These paths don't use Lua's usual '?' path wildcard, and thus are compatible
with Guix's search-paths mechanism.
This patch uses functions defined in lua-5.x-search-path-helpers.patch.
--- a/src/loadlib.c
+++ b/src/loadlib.c
@@ -280,7 +280,9 @@
if (path == NULL) /* no versioned environment variable? */
path = getenv(envname); /* try unversioned name */
if (path == NULL || noenv(L)) /* no environment variable? */
- lua_pushexternalstring(L, dft, strlen(dft), NULL, NULL); /* use default */
+ /* Copy our constructed default string onto the Lua stack.
+ * Otherwise the location might be reused for another string and case us problems! */
+ lua_pushstring(L, dft); /* use default */
else if ((dftmark = strstr(path, LUA_PATH_SEP LUA_PATH_SEP)) == NULL)
lua_pushstring(L, path); /* nothing to change */
else { /* path contains a ";;": insert default path in its place */
@@ -721,14 +729,25 @@
}
+#include "./guixpaths.c"
+
+
LUAMOD_API int luaopen_package (lua_State *L) {
luaL_getsubtable(L, LUA_REGISTRYINDEX, CLIBS); /* create CLIBS table */
lua_pop(L, 1); /* will not use it now */
luaL_newlib(L, pk_funcs); /* create 'package' table */
createsearcherstable(L);
+
/* set paths */
+ /* Calculate default LUA_PATH and LUA_CPATH values from their
+ corresponding GUIX_ environment variables */
+ const char* default_path = guix_path(L); // push default_path
+ const char* default_cpath = guix_cpath(L); // push default_cpath
+ lua_pushvalue(L, -3); // copy the old head of the stack back to the top
- setpath(L, "path", LUA_PATH_VAR, LUA_PATH_DEFAULT);
- setpath(L, "cpath", LUA_CPATH_VAR, LUA_CPATH_DEFAULT);
+ setpath(L, "path", LUA_PATH_VAR, default_path);
+ setpath(L, "cpath", LUA_CPATH_VAR, default_cpath);
+ lua_pop(L, 3); // pop our three working values back off the stack
+
/* store config information */
lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATH_SEP "\n" LUA_PATH_MARK "\n"
LUA_EXEC_DIR "\n" LUA_IGMARK "\n");
-1
View File
@@ -98,7 +98,6 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages man)
#:use-module (gnu packages markup)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages ocr)
-1
View File
@@ -47,7 +47,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages noweb)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
-1
View File
@@ -55,7 +55,6 @@
#:use-module (gnu packages llvm)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pkg-config)
+2 -2
View File
@@ -237,7 +237,7 @@ it.")
(define-public trealla
(package
(name "trealla")
(version "2.100.6")
(version "2.100.10")
(source
(origin
(method git-fetch)
@@ -246,7 +246,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
(base32 "0iy8477l9sf8p2jks8dlk5irssh1m4yyj7rflwvirbv19maaaghg"))
(base32 "09aqszk3kwjb8qznaywzvhir3nxkf6mkib68mkyn4f7siswb3apg"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs
+2 -2
View File
@@ -41,7 +41,7 @@
;;; Copyright © 2025 Matthew Elwin <elwin@northwestern.edu>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
;;; Copyright © 2025 Zheng Junjie <z572@z572.online>
;;; Copyright © 2025 Zheng Junjie <z572@z572.online>
;;; Copyright © 2026 Nguyễn Gia Phong <cnx@loang.net>
;;; Copyright © 2026 bdunahu <bdunahu@operationnull.com>
;;;
@@ -66,6 +66,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages cmake)
#:use-module (gnu packages nss)
#:use-module (gnu packages check)
@@ -77,7 +78,6 @@
#:use-module (gnu packages jupyter)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ninja)
#:use-module (gnu packages openstack)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
+1 -1
View File
@@ -40,13 +40,13 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (gnu packages)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages libffi)
#:use-module (gnu packages compression)
#:use-module (gnu packages cmake)
#:use-module (gnu packages check)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
#:use-module (gnu packages ninja)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
+194 -158
View File
@@ -40,6 +40,7 @@
;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2026 Reza Housseini <reza@housseini.me>
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -87,7 +88,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
@@ -535,6 +535,42 @@ setting up, manipulating, running, visualizing and analyzing atomistic
simulations.")
(license license:lgpl2.1+)))
(define-public python-autoray
(package
(name "python-autoray")
(version "0.8.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jcmgray/autoray")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gqfkpdng09l804xm9r1r098w10gr1bc5ax2xmhrpz9niybv71f5"))))
(build-system pyproject-build-system)
;; tests: 1758 passed, 1483 skipped, 96 xfailed, 4 warnings
(native-inputs
(list python-hatch-vcs
python-hatchling
python-pytest))
(propagated-inputs
(list python-dask
python-matplotlib
python-networkx
python-numpy
python-opt-einsum
python-scipy
python-sparse))
(home-page "https://github.com/jcmgray/autoray")
(synopsis "Library for abstracting tensor operations")
(description
"This package provides a lightweight Python library for
abstracting tensor operations. It provides an automatic dispatch mechanism
that means you can write backend agnostic code that works for any library
that provides a @code{numpy} compatible API.")
(license license:asl2.0)))
(define-public python-baycomp
(package
(name "python-baycomp")
@@ -1115,6 +1151,93 @@ computing in Python. It extends both the @code{concurrent.futures} and
@code{dask} APIs to moderate sized clusters.")
(license license:bsd-3)))
(define-public python-dvc-data
(package
(name "python-dvc-data")
(version "3.16.12")
(home-page "https://github.com/iterative/dvc-data")
(source (origin
(method url-fetch)
(uri (pypi-uri "dvc_data" version))
(sha256
(base32
"156iwdn7v5jhwbpwz92n28qiasgcbmcqv9vxg8xbvdfxzlzw0b7r"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-attrs
python-dictdiffer
python-diskcache
python-dvc-objects
python-fsspec
python-funcy-1.14
python-orjson
python-pygtrie
python-sqltrie
python-tqdm))
(native-inputs
(list python-click
python-pytest
python-pytest-benchmark
python-pytest-mock
;; python-pytest-servers is not packaged in Guix yet
python-setuptools
python-setuptools-scm
python-typer
python-wheel))
(arguments
(list
#:test-flags
;; TODO: package python-pytest-server with its transitive dependencies
#~(list "--ignore=tests/hashfile/test_db.py"
"--ignore=tests/hashfile/test_db_index.py"
"--ignore=tests/hashfile/test_obj.py"
"--ignore=tests/index/test_build.py"
"--ignore=tests/index/test_checkout.py"
"--ignore=tests/index/test_fs.py"
"--ignore=tests/index/test_index.py"
"--ignore=tests/index/test_storage.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-pyproject
(lambda _
;; setuptools cannot handle both license and license-files
(substitute* "pyproject.toml"
(("^license = .*") "license = {text = \"Apache-2.0\"}\n")
(("^license-files = .*") "")))))))
(synopsis "DVC's data management subsystem")
(description "Dvc data is DVC's data management subsystem.")
(license license:asl2.0)))
(define-public python-dvc-objects
(package
(name "python-dvc-objects")
(version "5.1.1")
(home-page "https://github.com/iterative/dvc-objects")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dvc_objects" version))
(sha256
(base32 "1amx5z8k2v2hbsajg0dcd5dxmmlv9bnbchpas95s8sj86cm8yc4y"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-fsspec
python-funcy-1.14))
(native-inputs
(list python-mypy
python-pytest
python-pytest-asyncio
python-pytest-benchmark
python-pytest-mock
python-pytest-sugar
python-reflink
python-setuptools
python-setuptools-scm
python-wheel))
(synopsis "Filesystem and object-db level abstractions for DVC")
(description "Dvc objects provides a filesystem and object-db level
abstractions to use in dvc and dvc-data.")
(license license:asl2.0)))
(define-public python-ecos
(package
(name "python-ecos")
@@ -1161,6 +1284,47 @@ numerical software for solving convex second-order cone programs (SOCPs).")
which uncovers hidden structures in categorical data")
(license license:expat)))
(define-public python-einops
(package
(name "python-einops")
(version "0.8.1")
(source
(origin
(method git-fetch) ;PyPI misses .ipynb files required for tests
(uri (git-reference
(url "https://github.com/arogozhnikov/einops")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "07xd5a4sya3mr003f17hxykcbq3zf3mnr51qagv7fy55qcnbkn97"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; Skip optional dependency on Jupyter during tests.
#~(list "--ignore=scripts/test_notebooks.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-backend
(lambda _
;; Einops supports different backends, but we test
;; only NumPy for availability and simplicity.
(setenv "EINOPS_TEST_BACKENDS" "numpy"))))))
(native-inputs
(list python-hatchling
python-nbconvert
python-nbformat
python-parameterized
python-pytest))
(propagated-inputs
(list python-numpy))
(home-page "https://einops.rocks/")
(synopsis "Tensor operations for different backends")
(description
"Einops provides a set of tensor operations for NumPy and multiple deep
learning frameworks.")
(license license:expat)))
(define-public python-fast-histogram
(package
(name "python-fast-histogram")
@@ -1233,6 +1397,35 @@ clustering schemes efficiently. The package is made with two interfaces to
standard software: R and Python.")
(license license:bsd-2)))
;; XXX: Not maintained since 2019. The project was archived by the owner on
;; Nov 2, 2020. It is now read-only.
(define-public python-fbpca
(package
(name "python-fbpca")
(version "1.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "fbpca" version))
(sha256
(base32
"1lbjqhqsdmqk86lb86q3ywf7561zmdny1dfvgwqkyrkr4ij7f1hm"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; TypeError: 'dia_matrix' object is not subscriptable
#~(list "--deselect=fbpca.py::TestPCA::test_sparse"
"fbpca.py")))
(native-inputs (list python-pytest python-setuptools))
(propagated-inputs
(list python-numpy python-scipy))
(home-page "https://fbpca.readthedocs.io/")
(synopsis "Functions for principal component analysis and accuracy checks")
(description
"This package provides fast computations for @dfn{principal component
analysis} (PCA), SVD, and eigendecompositions via randomized methods")
(license license:bsd-3)))
(define-public python-fgivenx
(package
(name "python-fgivenx")
@@ -4627,76 +4820,6 @@ changed, it made sense to abstract away the nuisance of having to re-learn
them.")
(license license:bsd-3)))
;; XXX: Not maintained since 2019. The project was archived by the owner on
;; Nov 2, 2020. It is now read-only.
(define-public python-fbpca
(package
(name "python-fbpca")
(version "1.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "fbpca" version))
(sha256
(base32
"1lbjqhqsdmqk86lb86q3ywf7561zmdny1dfvgwqkyrkr4ij7f1hm"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; TypeError: 'dia_matrix' object is not subscriptable
#~(list "--deselect=fbpca.py::TestPCA::test_sparse"
"fbpca.py")))
(native-inputs (list python-pytest python-setuptools))
(propagated-inputs
(list python-numpy python-scipy))
(home-page "https://fbpca.readthedocs.io/")
(synopsis "Functions for principal component analysis and accuracy checks")
(description
"This package provides fast computations for @dfn{principal component
analysis} (PCA), SVD, and eigendecompositions via randomized methods")
(license license:bsd-3)))
(define-public python-einops
(package
(name "python-einops")
(version "0.8.1")
(source
(origin
(method git-fetch) ;PyPI misses .ipynb files required for tests
(uri (git-reference
(url "https://github.com/arogozhnikov/einops")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "07xd5a4sya3mr003f17hxykcbq3zf3mnr51qagv7fy55qcnbkn97"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; Skip optional dependency on Jupyter during tests.
#~(list "--ignore=scripts/test_notebooks.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-backend
(lambda _
;; Einops supports different backends, but we test
;; only NumPy for availability and simplicity.
(setenv "EINOPS_TEST_BACKENDS" "numpy"))))))
(native-inputs
(list python-hatchling
python-nbconvert
python-nbformat
python-parameterized
python-pytest))
(propagated-inputs
(list python-numpy))
(home-page "https://einops.rocks/")
(synopsis "Tensor operations for different backends")
(description
"Einops provides a set of tensor operations for NumPy and multiple deep
learning frameworks.")
(license license:expat)))
(define-public python-uhi
(package
(name "python-uhi")
@@ -6267,93 +6390,6 @@ well as key metadata and SIRENE database containing data on all French
compagnies.")
(license license:expat)))
(define-public python-dvc-objects
(package
(name "python-dvc-objects")
(version "5.1.1")
(home-page "https://github.com/iterative/dvc-objects")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dvc_objects" version))
(sha256
(base32 "1amx5z8k2v2hbsajg0dcd5dxmmlv9bnbchpas95s8sj86cm8yc4y"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-fsspec
python-funcy-1.14))
(native-inputs
(list python-mypy
python-pytest
python-pytest-asyncio
python-pytest-benchmark
python-pytest-mock
python-pytest-sugar
python-reflink
python-setuptools
python-setuptools-scm
python-wheel))
(synopsis "Filesystem and object-db level abstractions for DVC")
(description "Dvc objects provides a filesystem and object-db level
abstractions to use in dvc and dvc-data.")
(license license:asl2.0)))
(define-public python-dvc-data
(package
(name "python-dvc-data")
(version "3.16.12")
(home-page "https://github.com/iterative/dvc-data")
(source (origin
(method url-fetch)
(uri (pypi-uri "dvc_data" version))
(sha256
(base32
"156iwdn7v5jhwbpwz92n28qiasgcbmcqv9vxg8xbvdfxzlzw0b7r"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-attrs
python-dictdiffer
python-diskcache
python-dvc-objects
python-fsspec
python-funcy-1.14
python-orjson
python-pygtrie
python-sqltrie
python-tqdm))
(native-inputs
(list python-click
python-pytest
python-pytest-benchmark
python-pytest-mock
;; python-pytest-servers is not packaged in Guix yet
python-setuptools
python-setuptools-scm
python-typer
python-wheel))
(arguments
(list
#:test-flags
;; TODO: package python-pytest-server with its transitive dependencies
#~(list "--ignore=tests/hashfile/test_db.py"
"--ignore=tests/hashfile/test_db_index.py"
"--ignore=tests/hashfile/test_obj.py"
"--ignore=tests/index/test_build.py"
"--ignore=tests/index/test_checkout.py"
"--ignore=tests/index/test_fs.py"
"--ignore=tests/index/test_index.py"
"--ignore=tests/index/test_storage.py")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-pyproject
(lambda _
;; setuptools cannot handle both license and license-files
(substitute* "pyproject.toml"
(("^license = .*") "license = {text = \"Apache-2.0\"}\n")
(("^license-files = .*") "")))))))
(synopsis "DVC's data management subsystem")
(description "Dvc data is DVC's data management subsystem.")
(license license:asl2.0)))
(define-public python-pyqtgraph
(package
(name "python-pyqtgraph")
+33 -1
View File
@@ -268,7 +268,6 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages openstack)
@@ -17627,6 +17626,14 @@ should be stored on various operating systems.")
(sha256
(base32 "0vm1r1jlaiagj0l9yf7j6zn9w3733dr2169911c0svgrr3gwiwn9"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
(substitute* "pasta/augment/inline_test.py"
(("assertRaisesRegexp") "assertRaisesRegex")))))))
(propagated-inputs (list python-six))
(native-inputs (list python-pytest python-setuptools))
(home-page "https://github.com/google/pasta")
@@ -39748,6 +39755,31 @@ progress, among other things.")
for linkify-it-py projects.")
(license license:expat)))
(define-public python-udapi
(package
(name "python-udapi")
(version "0.5.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/udapi/udapi-python")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1z9nyj0jmd2yk58c5kag4fkfb7y478di859xi56xc7fhvmyjf7nj"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest python-setuptools))
(propagated-inputs
(list python-colorama python-termcolor))
(home-page "http://udapi.readthedocs.io")
(synopsis "Framework for processing Universal Dependencies data")
(description
"This package is a Python library providing an API for processing
Universal Dependencies data.")
(license license:gpl3+)))
(define-public python-ujson
(package
(name "python-ujson")
+17 -49
View File
@@ -74,6 +74,7 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages crypto)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
@@ -112,7 +113,6 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages markup)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages pciutils)
@@ -179,9 +179,9 @@ official project.")
(home-page "https://github.com/oclero/qtappinstancemanager")
(license license:expat)))
(define-public qcoro-qt5
(define-public qcoro-qt6
(package
(name "qcoro-qt5")
(name "qcoro-qt6")
(version "0.11.0")
(source
(origin
@@ -194,31 +194,18 @@ official project.")
(base32 "0g9laaw1mkp5ynpp3c7aingndcmgncbacslq3p6bzwjisdd6xr5m"))))
(build-system qt-build-system)
(arguments
(list #:configure-flags
(list #:qtbase qtbase
#:configure-flags
#~(list "-DCMAKE_CXX_FLAGS=-fPIC"
(string-append "-DUSE_QT_VERSION="
#$(version-major
(package-version
(this-package-input "qtbase")))))))
"-DUSE_QT_VERSION=6")))
(native-inputs (list dbus)) ;for tests
(inputs (list qtbase-5 qtdeclarative-5 qtwebsockets-5))
(inputs (list qtdeclarative qtwebsockets libxkbcommon))
(home-page "https://qcoro.dvratil.cz/")
(synopsis "C++ Coroutine Library for Qt5")
(synopsis "C++ Coroutine Library for Qt6")
(description "QCoro is a C++ library that provide set of tools to make use
of C++20 coroutines in connection with certain asynchronous Qt actions.")
(license license:expat)))
(define-public qcoro-qt6
(package
(inherit qcoro-qt5)
(name "qcoro-qt6")
(synopsis "C++ Coroutine Library for Qt6")
(inputs (modify-inputs inputs
(replace "qtbase" qtbase)
(replace "qtdeclarative" qtdeclarative)
(replace "qtwebsockets" qtwebsockets)
(append libxkbcommon)))))
(define-public qlementine
(package
(name "qlementine")
@@ -1674,13 +1661,6 @@ from within Qt 5.")))
XLSX document format.")
(license license:expat)))
(define-public qxlsx-qt5
(package/inherit qxlsx
(name "qxlsx-qt5")
(inputs
(list qtbase-5))
(synopsis "Qt5 build for the qxlsx library")))
(define-public qtxmlpatterns-5
(package (inherit qtsvg-5)
(name "qtxmlpatterns")
@@ -6465,9 +6445,9 @@ handles the authentication process of an account and securely stores the
credentials and service-specific settings.")
(license license:lgpl2.1+)))
(define-public packagekit-qt5
(define-public packagekit-qt6
(package
(name "packagekit-qt5")
(name "packagekit-qt6")
(version "1.1.2")
(source (origin
(method git-fetch)
@@ -6479,29 +6459,17 @@ credentials and service-specific settings.")
(base32
"1nx8xfhz9v4pc0mz1ir0pq47skpc3w3yj8wqa4m5yky87ib5xcxc"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no test suite
(native-inputs (list pkg-config))
(inputs (list packagekit qtbase-5))
(arguments
(list
#:tests? #f ;no test suite
#:configure-flags #~(list "-DBUILD_WITH_QT6=ON")))
(inputs (list packagekit qtbase))
(home-page "https://www.freedesktop.org/software/PackageKit/pk-intro.html")
(synopsis "Qt5 bindings for PackageKit")
(description "Provides Qt5 bindings to PackageKit which is a DBUS
abstraction layer that allows the session user to manage packages in
a secure way.")
(license license:lgpl2.1+)))
(define-public packagekit-qt6
(package
(inherit packagekit-qt5)
(name "packagekit-qt6")
(arguments (substitute-keyword-arguments arguments
((#:configure-flags flags #~'())
#~(cons "-DBUILD_WITH_QT6=ON" #$flags))))
(inputs (modify-inputs inputs
(replace "qtbase" qtbase)))
(synopsis "Qt6 bindings for PackageKit")
(description "Provides Qt6 bindings to PackageKit which is a DBUS
abstraction layer that allows the session user to manage packages in
a secure way.")))
a secure way.")
(license license:lgpl2.1+)))
;; fork for support qt6
(define-public signond-qt6
+2 -3
View File
@@ -116,7 +116,6 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages shells)
#:use-module (gnu packages ssh)
#:use-module (gnu packages pcre)
@@ -4212,14 +4211,14 @@ background agent taking care of maintaining the necessary state.")
(define-public rust-cargo-c
(package
(name "rust-cargo-c")
(version "0.10.22+cargo-0.96.0")
(version "0.10.20+cargo-0.94.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "cargo-c" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1j5122hla12v6xjpvsvzv10gzvm80dbf65b2cy6669kcpjvlk1v0"))))
(base32 "0q1198xlkcd50nxx722s18lpm6hacnvzqqacb0xdld8ll9z3m5ay"))))
(build-system cargo-build-system)
(arguments (list #:install-source? #f))
(native-inputs
File diff suppressed because it is too large Load Diff
-34
View File
@@ -576,40 +576,6 @@ for Rust.")
UTF-32 support.")
(license (list license:expat license:unlicense)))))
(define-public rust-pipewire-0.8.0.fd3d8f7
(let ((commit "fd3d8f7861a29c2eeaa4c393402e013578bb36d9")
(revision "0"))
(hidden-package
(package
(name "rust-pipewire")
(version (git-version "0.8.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/pipewire/pipewire-rs.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1hzyhz7xg0mz8a5y9j6yil513p1m610q3j9pzf6q55vdh5mcn79v"))))
(build-system cargo-build-system)
(arguments
(list #:skip-build? #t
#:cargo-package-crates
''("libspa-sys" "libspa" "pipewire-sys" "pipewire")
#:phases
#~(modify-phases %standard-phases
;; Avoid circular dependency.
(add-after 'unpack 'remove-dev-dependencies
(lambda _
(substitute* "libspa/Cargo.toml"
(("^pipewire.*") "")))))))
(inputs (cargo-inputs 'rust-pipewire-0.8.0.fd3d8f7))
(home-page "https://pipewire.org/")
(synopsis "Rust bindings for PipeWire")
(description "This package provides Rust bindings for PipeWire.")
(license license:expat)))))
;; Workspace dependency of zed.
;;
;; Cargo side: Cargo unifies dependency versions across zed's
+61 -130
View File
@@ -127,15 +127,11 @@
(arguments
(substitute-keyword-arguments (package-arguments base-rust)
((#:disallowed-references _ '())
(list (this-package-native-input "rust")
;; Refer to cargo as #$rustc:cargo.
(gexp-input (this-package-native-input "rust") "cargo")))))
(list (this-package-native-input "rustc-bootstrap")))))
(native-inputs
(list pkg-config
python-minimal-wrapper
python-setuptools-bootstrap
base-rust
`(,base-rust "cargo")))))
(modify-inputs native-inputs
(replace "rustc-bootstrap" base-rust)
(replace "cargo-bootstrap" (list base-rust "cargo"))))))
;;; Note: mrustc's only purpose is to be able to bootstrap Rust; it's designed
;;; to be used in source form.
@@ -604,33 +600,40 @@ safety and thread safety guarantees.")
(setenv "PATH" (string-append "/tmp/bin:" (getenv "PATH")))))
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(call-with-output-file "config.toml"
(lambda (port)
(display (string-append "
(let* ((out (assoc-ref outputs "out"))
(gcc (assoc-ref inputs "gcc"))
(python (assoc-ref inputs "python"))
(binutils (assoc-ref inputs "binutils"))
(rustc (assoc-ref inputs "rustc-bootstrap"))
(cargo (assoc-ref inputs "cargo-bootstrap"))
(llvm (assoc-ref inputs "llvm")))
(call-with-output-file "config.toml"
(lambda (port)
(display (string-append "
[llvm]
[build]
cargo = \"" (search-input-file inputs "bin/cargo") "\"
rustc = \"" (search-input-file inputs "bin/rustc") "\"
cargo = \"" cargo "/bin/cargo" "\"
rustc = \"" rustc "/bin/rustc" "\"
docs = false
python = \"" (search-input-file inputs "bin/python") "\"
python = \"" python "/bin/python" "\"
vendor = true
submodules = false
[install]
prefix = \"" (assoc-ref outputs "out") "\"
prefix = \"" out "\"
sysconfdir = \"etc\"
[rust]
debug=false
jemalloc=false
default-linker = \"" (search-input-file inputs "bin/gcc") "\"
default-linker = \"" gcc "/bin/gcc" "\"
channel = \"stable\"
rpath = true
[target." ,(platform-rust-target (lookup-platform-by-system (%current-system))) "]
llvm-config = \"" (search-input-file inputs "bin/llvm-config") "\"
cc = \"" (search-input-file inputs "bin/gcc") "\"
cxx = \"" (search-input-file inputs "bin/g++") "\"
ar = \"" (search-input-file inputs "bin/ar") "\"
llvm-config = \"" llvm "/bin/llvm-config" "\"
cc = \"" gcc "/bin/gcc" "\"
cxx = \"" gcc "/bin/g++" "\"
ar = \"" binutils "/bin/ar" "\"
[dist]
") port)))))
") port))))))
(replace 'build
;; The standard library source location moved in this release.
(lambda* (#:key parallel-build? #:allow-other-keys)
@@ -691,15 +694,15 @@ ar = \"" (search-input-file inputs "bin/ar") "\"
`("LIBRARY_PATH" ":"
suffix (,(string-append libc "/lib"))))))))))
(native-inputs
(list pkg-config
python-minimal-wrapper
python-setuptools-bootstrap
rust-bootstrap-1.54
`(,rust-bootstrap-1.54 "cargo")))
`(("pkg-config" ,pkg-config)
("python" ,python-minimal-wrapper)
("python-setuptools" ,python-setuptools-bootstrap)
("rustc-bootstrap" ,rust-bootstrap-1.54)
("cargo-bootstrap" ,rust-bootstrap-1.54 "cargo")))
(inputs
(list bash-minimal
llvm-13
openssl))
`(("bash" ,bash-minimal)
("llvm" ,llvm-13)
("openssl" ,openssl)))
;; rustc invokes gcc, so we need to set its search paths accordingly.
(native-search-paths
%gcc-search-paths)
@@ -1152,11 +1155,9 @@ safety and thread safety guarantees.")
(package-arguments base-rust)))
(native-inputs
(if (supported-package? rust-bootstrap-1.74)
(list pkg-config
python-minimal-wrapper
python-setuptools-bootstrap
rust-bootstrap-1.74
(list rust-bootstrap-1.74 "cargo"))
(modify-inputs native-inputs
(replace "cargo-bootstrap" (list rust-bootstrap-1.74 "cargo"))
(replace "rustc-bootstrap" rust-bootstrap-1.74))
(package-native-inputs base-rust)))
(inputs (modify-inputs inputs
(replace "llvm" llvm-17))))))
@@ -1173,8 +1174,8 @@ safety and thread safety guarantees.")
(delete 'add-cc-shim-to-path))))))))
(define-public rust-1.77
(let ((base-rust (rust-bootstrapped-package rust-1.76 "1.77.2"
"1hrq2r9brhwl77qv18qk4pqrzfgnn9w6fwf7vgykhrjrizpmf566")))
(let ((base-rust (rust-bootstrapped-package rust-1.76 "1.77.1"
"18d4ncdzp0nfimmw029xdf7vv1hgh82v30mjnnixnllzar66w47f")))
(package
(inherit base-rust)
(arguments
@@ -1621,8 +1622,8 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(define-public rust-1.91
(let ((base-rust
(rust-bootstrapped-package
rust-1.90 "1.91.1"
"08sp8idsymyrqj70sxhfjz5zx7nfl4vl4i7hc495fqczsc2y5p1q")))
rust-1.90 "1.91.0"
"12iysk87bmhlcdcbr939y8cdfcx0an4z9ixjlbq16c3ma60m4zrj")))
(package
(inherit base-rust)
(source
@@ -1771,8 +1772,8 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(define-public rust-1.93
(let ((base-rust
(rust-bootstrapped-package
rust-1.92 "1.93.1"
"07z02gq7x54sdbisbzcigk95h01qz0ckg52hz77g7jfrnd20l8sc")))
rust-1.92 "1.93.0"
"01d7a1mvyvqmq9khyw5cbnwyngzgb4pxpdwhqgzl669j7kc2n4b9")))
(package
(inherit base-rust)
(source
@@ -1915,67 +1916,6 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(copy-recursively "stage2/lib"
(string-append out "/lib")))))))))))))
(define-public rust-1.95
(let ((base-rust
(rust-bootstrapped-package
rust-1.94 "1.95.0"
"05d53hj717ildhvm3rln7821r08nzbbfk72nqcvpb5j67sl856za")))
(package
(inherit base-rust)
(source
(origin
(inherit (package-source base-rust))
(snippet
'(begin
(for-each delete-file-recursively
'("src/llvm-project"
"vendor/curl-sys-0.4.79+curl-8.12.0/curl"
"vendor/curl-sys-0.4.83+curl-8.15.0/curl"
"vendor/curl-sys-0.4.84+curl-8.17.0/curl"
"vendor/jemalloc-sys-0.5.3+5.3.0-patched/jemalloc"
"vendor/jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
"vendor/libffi-sys-4.1.0/libffi"
"vendor/libmimalloc-sys-0.1.44/c_src/mimalloc"
"vendor/libz-sys-1.1.21/src/zlib"
"vendor/libz-sys-1.1.23/src/zlib"
"vendor/openssl-src-111.28.2+1.1.1w/openssl"
"vendor/openssl-src-300.5.0+3.5.0/openssl"
"vendor/openssl-src-300.5.4+3.5.4/openssl"
"vendor/tikv-jemalloc-sys-0.5.4+5.3.0-patched/jemalloc"
"vendor/tikv-jemalloc-sys-0.6.1+5.3.0-1-\
ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
;; Remove vendored dynamically linked libraries.
;; find . -not -type d -executable -exec file {} \+ | grep ELF
;; Also remove the bundled (mostly Windows) libraries.
(for-each delete-file
(find-files "vendor" "\\.(a|dll|exe|lib)$"))
;; Use the packaged nghttp2.
(for-each
(lambda (ver)
(let ((vendored-dir
(format #f "vendor/libnghttp2-sys-~a/nghttp2" ver))
(build-rs
(format #f "vendor/libnghttp2-sys-~a/build.rs" ver)))
(delete-file-recursively vendored-dir)
(delete-file build-rs)
(call-with-output-file build-rs
(lambda (port)
(format port "fn main() {~@
println!(\"cargo:rustc-link-lib=nghttp2\");~@
}~%")))))
'("0.1.11+1.64.0"))
;; Adjust vendored dependency to explicitly use rustix with libc
;; backend.
(substitute* '("vendor/tempfile-3.14.0/Cargo.toml"
"vendor/tempfile-3.16.0/Cargo.toml"
"vendor/tempfile-3.19.1/Cargo.toml"
"vendor/tempfile-3.20.0/Cargo.toml"
"vendor/tempfile-3.21.0/Cargo.toml"
"vendor/tempfile-3.23.0/Cargo.toml"
"vendor/tempfile-3.24.0/Cargo.toml")
(("features = \\[\"fs\"" all)
(string-append all ", \"use-libc\""))))))))))
(define (make-ignore-test-list strs)
"Function to make creating a list to ignore tests a bit easier."
(map (lambda (str)
@@ -1990,7 +1930,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
;;; Here we take the latest included Rust, make it public, and re-enable tests
;;; and extra components such as rustfmt.
(define-public rust
(let ((base-rust rust-1.95))
(let ((base-rust rust-1.93))
(package
(inherit base-rust)
(properties (append
@@ -2002,21 +1942,15 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(substitute-keyword-arguments
(strip-keyword-arguments '(#:tests?)
(package-arguments base-rust))
((#:disallowed-references _ '())
(list (this-package-native-input "rustc-bootstrap")
;; Refer to cargo-bootstrap as #$rustc-bootstrap:cargo.
(gexp-input (this-package-native-input "rustc-bootstrap")
"cargo")))
((#:modules modules)
(cons '(srfi srfi-26) modules))
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'patch-shebangs-in-tests
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion
"src/tools/rust-analyzer/crates/parser/test_data"
(substitute* '("lexer/ok/shebang_frontmatter.rast"
"parser/inline/ok/frontmatter.rast")
(("/usr/bin/env cargo")
(search-input-file inputs "bin/cargo")))
(substitute* "lexer/ok/single_line_comments.rast"
(("/usr/bin/env bash")
(search-input-file inputs "bin/bash"))))))
(add-after 'unpack 'disable-tests-requiring-git
(lambda _
(substitute* "src/tools/cargo/tests/testsuite/publish_lockfile.rs"
@@ -2108,13 +2042,15 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(lambda* (#:key inputs #:allow-other-keys)
(mkdir-p "src/llvm-project/compiler-rt")
(copy-recursively
(search-input-directory inputs "/compiler-rt")
(string-append (assoc-ref inputs "clang-source")
"/compiler-rt")
"src/llvm-project/compiler-rt")))
(add-after 'unpack 'unpack-libunwind
(lambda* (#:key inputs #:allow-other-keys)
(mkdir-p "src/llvm-project/libunwind")
(copy-recursively
(search-input-directory inputs "/libunwind")
(string-append (assoc-ref inputs "clang-source")
"/libunwind")
"src/llvm-project/libunwind")))
(replace 'patch-cargo-checksums
(lambda _
@@ -2156,7 +2092,6 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
"library/std" ;rustc
"src/tools/cargo"
"src/tools/clippy"
"src/tools/llvm-bitcode-linker"
"src/tools/rust-analyzer"
"src/tools/rustfmt"))))
(replace 'check
@@ -2176,10 +2111,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(replace 'install
;; Phase overridden to also install more tools.
(lambda* (#:key outputs #:allow-other-keys)
;; Install rustc, std, and llvm-bitcode-linker.
;; rust-src is handled separately in 'install-rust-src'.
(invoke "./x.py" "install" "compiler/rustc" "library/std"
"llvm-bitcode-linker")
(invoke "./x.py" "install")
(substitute* "config.toml"
;; Adjust the prefix to the 'cargo' output.
(("prefix = \"[^\"]*\"")
@@ -2227,7 +2159,7 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(with-directory-excursion
(string-append (assoc-ref outputs "rust-src")
"/lib/rustlib/src/rust/src/tools/")
(substitute* (find-files "." "\\.(rs|rast)$")
(substitute* (find-files "." "\\.rs$")
(("#!.*/bin/cargo")
(string-append "#!" (assoc-ref outputs "cargo")
"/bin/cargo"))))))
@@ -2246,15 +2178,14 @@ exec -a \"$0\" \"~a\" \"$@\""
"/lib/rustlib/src/rust/library")
(string-append bin "/.rust-analyzer-real"))))
(chmod (string-append bin "/rust-analyzer") #o755))))))))
(native-inputs
(modify-inputs (package-native-inputs base-rust)
(prepend
;; Keep in sync with the llvm used to build rust.
(package-source clang-runtime-21)
;; Add test inputs.
gdb/pinned
git-minimal/pinned
procps)))
(native-inputs (cons*
;; Keep in sync with the llvm used to build rust.
`("clang-source" ,(package-source clang-runtime-21))
;; Add test inputs.
`("gdb" ,gdb/pinned)
`("git-minimal" ,git-minimal/pinned)
`("procps" ,procps)
(package-native-inputs base-rust)))
(native-search-paths
(cons*
;; For HTTPS access, Cargo reads from a single-file certificate
+1 -1
View File
@@ -25,6 +25,7 @@
#:use-module (guix build-system cmake)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
@@ -34,7 +35,6 @@
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+2 -2
View File
@@ -31008,7 +31008,7 @@ dissertation in LaTeX.")
(license license:lppl1.2+)))
(define-public texlive-neoschool
(let ((revision 79027)) ;release 1.3.7
(let ((revision 79141)) ;release 1.3.9
(package
(name "texlive-neoschool")
(version (string-append "2026.1-" (number->string revision)))
@@ -31022,7 +31022,7 @@ dissertation in LaTeX.")
"tex/latex/neoschool/"))))
(file-name (git-file-name name version))
(sha256
(base32 "08rv34syx6r4j3cfsfhd9409fhqfvh35vp4jb3ixmd1f03idzmmx"))))
(base32 "1jafxp187i2y8wci0b8rsa661l57b71pyf41xrsfz41c7ky7m0gs"))))
(outputs '("out" "doc"))
(build-system texlive-build-system)
(home-page "https://ctan.org/pkg/neoschool")
+16 -16
View File
@@ -115,16 +115,16 @@ Firefox locales.")
;; We copy the official build id, which is defined at
;; tor-browser-build/rbm.conf (browser_release_date).
(define %torbrowser-build-date "20260507142516")
(define %torbrowser-build-date "20260518170000")
;; To find the last version, look at https://www.torproject.org/download/.
(define %torbrowser-version "15.0.13")
(define %torbrowser-version "15.0.14")
;; To find the last Firefox version, browse
;; https://archive.torproject.org/tor-package-archive/torbrowser/<%torbrowser-version>
;; There should be only one archive that starts with
;; "src-firefox-tor-browser-".
(define %torbrowser-firefox-version "140.10.2esr-15.0-1-build1")
(define %torbrowser-firefox-version "140.11.0esr-15.0-1-build3")
;; See tor-browser-build/rbm.conf for the list.
(define %torbrowser-locales (list "ar" "be" "bg" "ca" "cs" "da" "de" "el" "es-ES" "fa"
@@ -139,11 +139,11 @@ Firefox locales.")
(method git-fetch)
(uri (git-reference
(url "https://gitlab.torproject.org/tpo/translation.git")
(commit "bca639ef183dba065e6f9dc0bab86aedb03f9335")))
(commit "6749f7ce29126312167aee8e07cd45a4aa4acb9d")))
(file-name "translation-base-browser")
(sha256
(base32
"0h1vp8qkbbydkii7a1hfgrgzyyrfax4gkv24g50xrx34r7qjhjcl"))))
"1ancjf85is34yi2zbpdmasfyfin6pfmiqlmcnjqqqbk5k6zj2scy"))))
;; See tor-browser-build/projects/translation/config.
(define torbrowser-translation-specific
@@ -151,11 +151,11 @@ Firefox locales.")
(method git-fetch)
(uri (git-reference
(url "https://gitlab.torproject.org/tpo/translation.git")
(commit "56f475a6c10e509aaff0657b9d864463d387cea7")))
(commit "a2e92e2c255377898a72be2fc0d073766a7ee4ed")))
(file-name "translation-tor-browser")
(sha256
(base32
"1g723zzdl23lgfbik3pzhyqznzg7csn32n2ndra4bvnrbnrvm39y"))))
"1y0x4wgy5prz0q817mdvs7pdbr8k14ap55jikyv8nyx3an13vhhp"))))
(define torbrowser-assets
;; This is a prebuilt Torbrowser from which we take the assets we need.
@@ -171,7 +171,7 @@ Firefox locales.")
version "/tor-browser-linux-x86_64-" version ".tar.xz"))
(sha256
(base32
"09a9mnbbq01l4j7c0r3qbmzdwwn40c4nvwihbgvzh42s5az6jvdz"))))
"03pmcdriwnb1azrn0jsxl453x947yq088c0cjhzwrfxbnqv6s54k"))))
(arguments
(list
#:install-plan
@@ -212,7 +212,7 @@ Browser.")
".tar.xz"))
(sha256
(base32
"1xnd4s0m66q9ij3xf1n5lym4k0pvgd8m4lrj5dn30g7pfzjgwnss"))))
"0wmrq1w5kmxm6ganr7ppf0rblcpi18gsk8fv68nf65sjpxk0gf6w"))))
(build-system mozilla-build-system)
(inputs
(list lyrebird
@@ -789,17 +789,17 @@ attacks on the privacy of Tor users.")
;; We copy the official build id, which can be found there:
;; https://cdn.mullvad.net/browser/update_responses/update_1/release.
(define %mullvadbrowser-build-date "20260506160000")
(define %mullvadbrowser-build-date "20260518170000")
;; To find the last version, look at
;; https://mullvad.net/en/download/browser/linux.
(define %mullvadbrowser-version "15.0.12")
(define %mullvadbrowser-version "15.0.14")
;; To find the last Firefox version, browse
;; https://archive.torproject.org/tor-package-archive/mullvadbrowser/<%mullvadbrowser-version>
;; There should be only one archive that starts with
;; "src-firefox-mullvad-browser-".
(define %mullvadbrowser-firefox-version "140.10.2esr-15.0-1-build1")
(define %mullvadbrowser-firefox-version "140.11.0esr-15.0-1-build2")
;; See tor-browser-build/projects/translation/config.
(define mullvadbrowser-translation-base
@@ -807,11 +807,11 @@ attacks on the privacy of Tor users.")
(method git-fetch)
(uri (git-reference
(url "https://gitlab.torproject.org/tpo/translation.git")
(commit "bca639ef183dba065e6f9dc0bab86aedb03f9335")))
(commit "6749f7ce29126312167aee8e07cd45a4aa4acb9d")))
(file-name "translation-base-browser")
(sha256
(base32
"0h1vp8qkbbydkii7a1hfgrgzyyrfax4gkv24g50xrx34r7qjhjcl"))))
"1ancjf85is34yi2zbpdmasfyfin6pfmiqlmcnjqqqbk5k6zj2scy"))))
;; See tor-browser-build/projects/translation/config.
(define mullvadbrowser-translation-specific
@@ -839,7 +839,7 @@ attacks on the privacy of Tor users.")
version "/mullvad-browser-linux-x86_64-" version ".tar.xz"))
(sha256
(base32
"0qd285awd2pslw8q05s0mqfjclcjmwra0bcs5bvbpqdazpsxm9sf"))))
"02f6hcp7391s7vcqvqngidrj0zmz9aqhmm0bi0hw26ckfz0vdyhk"))))
(arguments
(list
#:install-plan
@@ -882,7 +882,7 @@ Mullvad Browser.")
%mullvadbrowser-firefox-version ".tar.xz"))
(sha256
(base32
"0nwbcdqcyr5a9w233gmfjy0ych8frhx5am1zszyl84i7miykqads"))))
"0y4qx3hvizm5zigdq9c17l6kzs2h74hyi22syjm9bh1cfpvl2pym"))))
(arguments
(substitute-keyword-arguments arguments
((#:phases phases)
+5 -2
View File
@@ -36,7 +36,8 @@
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages gdb)
#:use-module (gnu packages perl))
#:use-module (gnu packages perl)
#:use-module (gnu packages python))
(define-public valgrind/pinned
(package
@@ -111,5 +112,7 @@ also use Valgrind to build new tools.")
(package/inherit valgrind
(inputs
;; GDB is needed to provide a sane default for `--db-command'.
(list gdb `(,(canonical-package (libc-for-target)) "debug")))
(list gdb
`(,(canonical-package (libc-for-target)) "debug")
python)) ;for cg_* shebangs
(properties '())))
+48 -3
View File
@@ -1180,7 +1180,7 @@ provides an integration with GitHub and GitLab.")
(define-public got
(package
(name "got")
(version "0.124")
(version "0.125")
(source (origin
(method url-fetch)
(uri
@@ -1189,7 +1189,7 @@ provides an integration with GitHub and GitLab.")
version ".tar.gz"))
(sha256
(base32
"0i4w1njqggdqdxw3mismyqy0kjhnr4gsrd9b2p2awhwk1ac8xwwg"))))
"1b5saas4ywfknsxski52w34x1h36ib2pns41xcm3fr3k2201kmmd"))))
(inputs
(list libevent
`(,util-linux "lib")
@@ -3533,7 +3533,6 @@ modification time.")
(uri (fossil-reference
(uri "https://fossil.wanderinghorse.net/r/libfossil")
(check-in version)))
(file-name (fossil-file-name name version))
(sha256
(base32 "0haaczpjnjpkiikf0q70nfabm2csdk6dl9rh80j0sh90wfvkyqwm"))
(modules '((guix build utils)
@@ -4845,6 +4844,52 @@ git commands for repository metrics and summarization, commit and log editing,
developer workflow, and project and release management.")
(license license:expat)))
(define-public git-quick-stats
(package
(name "git-quick-stats")
(version "2.11.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/git-quick-stats/git-quick-stats")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sx6idfl0s88xx5wd39cg1540hzkh7p6yad0l56qnf9v2i38hra1"))))
(build-system gnu-build-system)
(arguments
(list
#:test-target "test"
#:tests? #f ;Tests require interactive terminal
#:make-flags #~(list (string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/git-quick-stats")
'("PATH" ":" prefix
#$(map (lambda (x)
(file-append (cadr x) "/bin"))
(package-inputs this-package)))))))))
(native-inputs (list which))
(inputs (list bash-minimal
coreutils-minimal
gawk
git-minimal/pinned
grep
ncurses
util-linux))
(home-page "https://git-quick-stats.sh")
(synopsis "Access various statistics in git repositories")
(description
"Any git repository may contain tons of information about commits,
contributors, and files. Extracting this information is not always trivial,
mostly because there are a gazillion options to a gazillion git commands.
This package provides a cleaner interface to access this information.")
(license license:expat)))
(define-public hut
(package
(name "hut")
+47 -44
View File
@@ -196,7 +196,6 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocr)
#:use-module (gnu packages openkinect)
#:use-module (gnu packages pcre)
@@ -4235,7 +4234,7 @@ be used for realtime video capture via Linux-specific APIs.")
"-DENABLE_QSV11=OFF"
"-DENABLE_NVENC=OFF"
;; Requires a custom version of websocketpp in inputs, that's
;; patched to be compatible with recent versions of Boost
;; patched to be compatible with recent versions of Boost
"-DENABLE_WEBSOCKET=ON"
;; Browser plugin requires cef, but it is not packaged yet.
;; <https://bitbucket.org/chromiumembedded/cef/src/master/>
@@ -6503,7 +6502,7 @@ and audio capture, network stream playback, and many more.")
(define-public dav1d
(package
(name "dav1d")
(version "1.5.3")
(version "1.5.1")
(source
(origin
(method git-fetch)
@@ -6512,7 +6511,7 @@ and audio capture, network stream playback, and many more.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0x19r721gf91a37xqm70j7qcpadyd3m9lcf1lasxq73wnby5lxqk"))))
(base32 "1n0b5m4srdjsqg15plc9fng5kjv14ygqahjxy8863fbzhr13vjx9"))))
(build-system meson-build-system)
(native-inputs
(if (target-x86?)
@@ -6794,59 +6793,63 @@ result in several formats:
(define-public rav1e
(package
(name "rav1e")
(version "0.8.1")
(version "0.7.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "rav1e" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0axk3ji3jmlr81svmsy5zvj8shmhpp8lz5nyghkq752xx1bdvdj3"))))
(base32 "1sawva6nmj2fvynydbcirr3nb7wjyg0id2hz2771qnv6ly0cx1yd"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:modules '((guix build cargo-build-system)
(guix build utils)
(ice-9 match))
`(#:install-source? #f
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "cargo" "cinstall" "--release"
;; Only build the dynamic library.
"--library-type" "cdylib"
(string-append "--prefix=" out)))))
(add-after 'install 'install-completions
(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/rav1e")
(in-vicinity #$output "bin/rav1e"))))
(with-output-to-file (in-vicinity #$output path)
(lambda _
(invoke binary
"-" "-o"
"-" "advanced"
"--completion" shell))))))
'(("bash" . "share/bash-completion/completions/rav1e")
("elvish" . "share/elvish/lib/rav1e")
("fish" . "share/fish/vendor_completions.d/rav1e.fish")
;; This one currently fails to build.
;("zsh" . "share/zsh/site-functions/_rav1e")
)))))))
(modify-phases %standard-phases
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "cargo" "cinstall" "--release"
;; Only build the dynamic library.
"--library-type" "cdylib"
(string-append "--prefix=" out)))))
(add-after 'install 'install-completions
(lambda* (#:key native-inputs outputs #:allow-other-keys)
(unless ,(%current-target-system)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share"))
(bash-completions-dir
(string-append out "/etc/bash_completion.d"))
(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"))
(rav1e (string-append out "/bin/rav1e"))
(common-flags '("-" "-o" "-" "advanced" "--completion")))
(mkdir-p bash-completions-dir)
(with-output-to-file
(string-append bash-completions-dir "/rav1e")
(lambda _ (apply invoke rav1e (append common-flags '("bash")))))
(mkdir-p zsh-completions-dir)
;; This one currently fails to build.
;(with-output-to-file
; (string-append zsh-completions-dir "/_rav1e")
; (lambda _ (apply invoke rav1e (append common-flags '("zsh")))))
(mkdir-p fish-completions-dir)
(with-output-to-file
(string-append fish-completions-dir "/rav1e.fish")
(lambda _ (apply invoke rav1e (append common-flags '("fish")))))
(mkdir-p elvish-completions-dir)
(with-output-to-file
(string-append elvish-completions-dir "/rav1e")
(lambda _
(apply invoke rav1e (append common-flags '("elvish"))))))))))))
(native-inputs
(append (if (target-x86?)
(list nasm)
'())
(if (%current-target-system)
(list this-package)
'())
(list pkg-config rust-cargo-c)))
(inputs
(cons* libgit2-1.9 zlib (cargo-inputs 'rav1e)))
-1
View File
@@ -140,7 +140,6 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages ninja)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages package-management)
+5 -6
View File
@@ -186,7 +186,6 @@
#:use-module (gnu packages mpd)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages music)
#:use-module (gnu packages ninja)
#:use-module (gnu packages pantheon)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
@@ -2537,7 +2536,7 @@ limited size and a few external dependencies. It is configurable via
(define-public mangowm
(package
(name "mangowm")
(version "0.13.0")
(version "0.13.1")
(source
(origin
(method git-fetch)
@@ -2546,7 +2545,7 @@ limited size and a few external dependencies. It is configurable via
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sh1hcr3c74ac8cxd45mnjw1zpb2i22bsfz02cb409rw6dwiy524"))))
(base32 "0szzssar8h80wqh46vxrh87znqnq8rmwrl1a01rg4ww4in0ni20y"))))
(build-system meson-build-system)
(arguments
(list
@@ -3016,7 +3015,7 @@ narrow the items to those matching the tokens in the input.")
(define-public sway
(package
(name "sway")
(version "1.11")
(version "1.12")
(source
(origin
(method git-fetch)
@@ -3025,7 +3024,7 @@ narrow the items to those matching the tokens in the input.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1a7f7jgf87dm4hxg9nylqsyy7cc7dk49c800pjkl30p9a32xxjn4"))))
(base32 "1ngc8cdrqzaq145k1xibq67bki6bwad9y3wh6ghm7147wf67ph9r"))))
(build-system meson-build-system)
(arguments
(list
@@ -3053,7 +3052,7 @@ narrow the items to those matching the tokens in the input.")
pcre2
swaybg
wayland
wlroots-0.19))
wlroots-0.20))
(native-inputs
(cons* linux-pam mesa pkg-config scdoc wayland-protocols
(if (%current-target-system)
+35 -3
View File
@@ -4,6 +4,7 @@
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Remco van 't Veer <remco@remworks.net>
;;; Copyright © 2024 Sören Tempel <soeren@soeren-tempel.net>
;;; Copyright © 2026 Maxim Cournoyer <maxim@guixotic.coop>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,10 +65,14 @@
dnsmasq-configuration-port
dnsmasq-configuration-local-service?
dnsmasq-configuration-listen-address
dnsmasq-configuration-ipv4?
dnsmasq-configuration-ipv6?
dnsmasq-configuration-resolv-file
dnsmasq-configuration-no-resolv?
dnsmasq-configuration-authoritative-zones
dnsmasq-configuration-forward-private-reverse-lookup?
dnsmasq-configuration-query-servers-in-order?
dnsmasq-configuration-locals
dnsmasq-configuration-servers
dnsmasq-configuration-servers-file
dnsmasq-configuration-addresses
@@ -793,16 +798,28 @@ cache.size = 100 * MB
(default #t)) ;boolean
(listen-addresses dnsmasq-configuration-listen-address
(default '())) ;list of string
(ipv4? dnsmasq-configuration-ipv4?
(default #t))
(ipv6? dnsmasq-configuration-ipv6?
(default #t))
(resolv-file dnsmasq-configuration-resolv-file
(default "/etc/resolv.conf")) ;string
(no-resolv? dnsmasq-configuration-no-resolv?
(default #f)) ;boolean
(authoritative-servers dnsmasq-configuration-authoritative-servers
(default '())) ;list of strings
(authoritative-zones dnsmasq-configuration-authoritative-zones
(default '())) ;list of strings
(host-records dnsmasq-configuration-host-records
(default '())) ;list of strings
(forward-private-reverse-lookup?
dnsmasq-configuration-forward-private-reverse-lookup?
(default #t)) ;boolean
(query-servers-in-order?
dnsmasq-configuration-query-servers-in-order?
(default #f)) ;boolean
(locals dnsmasq-configuration-locals
(default '()))
(servers dnsmasq-configuration-servers
(default '())) ;list of string
(servers-file dnsmasq-configuration-servers-file
@@ -859,10 +876,11 @@ cache.size = 100 * MB
shepherd-requirement
pid-file
no-hosts?
port local-service? listen-addresses
port local-service? listen-addresses ipv4? ipv6?
resolv-file no-resolv?
authoritative-servers authoritative-zones host-records
forward-private-reverse-lookup? query-servers-in-order?
servers addresses servers-file
locals servers addresses servers-file
cache-size negative-cache?
cpe-id
tftp-enable? tftp-no-fail?
@@ -891,10 +909,22 @@ cache.size = 100 * MB
'())
#$@(map (cut format #f "--listen-address=~a" <>)
listen-addresses)
#$@(if (not ipv4?)
'("--filter-A")
'())
#$@(if (not ipv6?)
'("--filter-AAAA")
'())
#$(format #f "--resolv-file=~a" resolv-file)
#$@(if no-resolv?
'("--no-resolv")
'())
'())
#$@(map (cut format #f "--auth-server=~a" <>)
authoritative-servers)
#$@(map (cut format #f "--auth-zone=~a" <>)
authoritative-zones)
#$@(map (cut format #f "--host-record=~a" <>)
host-records)
#$@(if forward-private-reverse-lookup?
'()
'("--bogus-priv"))
@@ -904,6 +934,8 @@ cache.size = 100 * MB
#$@(if servers-file
(list #~(string-append "--servers-file=" #$servers-file))
'())
#$@(map (cut format #f "--local=~a" <>)
locals)
#$@(map (cut format #f "--server=~a" <>)
servers)
#$@(map (cut format #f "--address=~a" <>)
+9 -1
View File
@@ -181,6 +181,7 @@
gunicorn-app-mappings
gunicorn-app-name
gunicorn-app-package
gunicorn-app-control-socket
gunicorn-app-sockets
gunicorn-app-timeout
gunicorn-app-user
@@ -1073,6 +1074,8 @@ renewed TLS certificates, or @code{include}d files.")
(thunked))
(socket-mode gunicorn-app-socket-mode
(default #o750))
(control-socket gunicorn-app-control-socket
(default #f))
(sockets gunicorn-app-sockets
(default (list (string-append "unix:/var/run/gunicorn/"
(gunicorn-app-name this-gunicorn-app)
@@ -1092,7 +1095,8 @@ renewed TLS certificates, or @code{include}d files.")
(define (unix-socket? string)
"Whether STRING indicates a Unix socket."
(eq? 'unix (uri-scheme (string->uri string))))
(let ((uri (string->uri string)))
(and uri (eq? 'unix (uri-scheme uri)))))
(define (socket-dir string)
"Return the socket directory."
@@ -1179,6 +1183,10 @@ renewed TLS certificates, or @code{include}d files.")
#:namespaces (delq 'net %namespaces))
"--workers" #$(number->string (gunicorn-app-workers app))
"--timeout" #$(number->string (gunicorn-app-timeout app))
#$(let ((ctrl-socket (gunicorn-app-control-socket app)))
(if ctrl-socket
(string-append "--control-socket=" ctrl-socket)
"--no-control-socket"))
(list
#$@(append
(append-map (lambda (socket)
+84
View File
@@ -42,6 +42,7 @@
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages patchutils)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (guix packages)
@@ -59,6 +60,7 @@
%test-hpcguix-web
%test-anonip
%test-go-webdav
%test-gunicorn
%test-patchwork
%test-sogogi
%test-agate
@@ -625,6 +627,88 @@ HTTP-PORT, along with php-fpm."
(description "Test that go-webdav can handle HTTP requests.")
(value (run-webserver-test name %go-webdav-os))))
;;;
;;; gunicorn
;;;
(define %gunicorn-os
(simple-operating-system
(service dhcpcd-service-type)
(service gunicorn-service-type
(gunicorn-configuration
(apps
(list (gunicorn-app
(name "werkzeug")
(package python-werkzeug)
(wsgi-app-module "werkzeug.testapp:test_app")
(sockets (list "0.0.0.0:8080"))
(user "root")
(group "users"))))))))
(define (run-gunicorn-test)
(define os
(marionette-operating-system
%gunicorn-os
#:imported-modules '((gnu services herd))))
(define forwarded-port 8080)
(define vm
(virtual-machine
(operating-system os)
(memory-size 1024)
(port-forwardings `((8080 . ,forwarded-port)))))
(define test
(with-imported-modules '((gnu build marionette))
#~(begin
(use-modules (srfi srfi-11) (srfi srfi-64)
(gnu build marionette)
(web uri)
(web client)
(web response))
(define marionette
(make-marionette (list #$vm)))
(test-runner-current (system-test-runner #$output))
(test-begin "gunicorn")
(test-assert "service is running"
(marionette-eval
'(begin
(use-modules (gnu services herd))
(match (start-service 'gunicorn-werkzeug)
(#f #f)
(('service response-parts ...)
(match (assq-ref response-parts 'running)
((#t) #t)
((pid) pid)))))
marionette))
(test-assert "HTTP port ready"
(wait-for-tcp-port #$forwarded-port marionette))
(test-assert "get index page"
(let-values
(((response text)
(http-get #$(simple-format
#f "http://localhost:~A/" forwarded-port)
#:decode-body? #t)))
(and (equal? (response-code response) 200)
(string-contains text "WSGI Information"))))
(test-end))))
(gexp->derivation "gunicorn-test" test))
(define %test-gunicorn
(system-test
(name "gunicorn")
(description "Test that gunicorn can serve the Werkzeug testapp.")
(value (run-gunicorn-test))))
;;;
;;; Patchwork
+1 -2
View File
@@ -110,8 +110,7 @@
(define (default-ninja)
"Return the default ninja package."
;; Lazily resolve the binding to avoid a circular dependency.
(let ((module (resolve-interface '(gnu packages ninja))))
(module-ref module 'ninja/pinned)))
(@* (gnu packages build-tools) ninja/pinned))
(define* (lower name
#:key source inputs native-inputs outputs system target
+1 -1
View File
@@ -148,7 +148,7 @@ TRIPLET."
(define (default-ninja)
"Return the default ninja package, resolved lazily."
(@* (gnu packages ninja) ninja/pinned))
(@* (gnu packages build-tools) ninja/pinned))
(define (default-meson)
"Return the default meson package, resolved lazily."
+1 -11
View File
@@ -390,20 +390,10 @@ directory = '" vendor-dir "'") port)
(for-each
(lambda (crate)
(invoke "tar" "xzf" crate "-C" vendor-dir))
(map (lambda (f) (string-append "target/package/" f))
(scandir "target/package"
(lambda (f) (string-suffix? ".crate" f)))))
(find-files "target/package" "\\.crate$"))
(patch-cargo-checksums #:vendor-dir vendor-dir))
cargo-package-crates))
;; Cargo creates target/package/tmp-crate/ as scratch space during
;; packaging and leaves .crate file copies there after uplifting them
;; to target/package/. Delete it so the repacking scandir does not
;; pick the tmp-crate directory instead of the extracted crate
;; directory when crate names sort after "tmp-crate" alphabetically.
(when (file-exists? "target/package/tmp-crate")
(delete-file-recursively "target/package/tmp-crate"))
;; Then unpack the crate, reset the timestamp of all contained files, and
;; repack them. This is necessary to ensure that they are reproducible.
(with-directory-excursion "target/package"
+2 -1
View File
@@ -36,7 +36,8 @@
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (web uri)
#:export (fossil-reference
#:export (<fossil-reference>
fossil-reference
fossil-reference?
fossil-reference-uri
fossil-reference-check-in
+14 -12
View File
@@ -63,7 +63,8 @@
(info gem-info)
(sha256 gem-sha256 "sha" ;bytevector
base16-string->bytevector)
(home-page gem-home-page "homepage_uri") ;string
(home-page gem-home-page "homepage_uri" ;string | #f
non-empty-string-or-false)
(dependencies gem-dependencies "dependencies" ;<gem-dependencies>
json->gem-dependencies))
@@ -137,8 +138,8 @@ VERSION, HASH, HOME-PAGE, DESCRIPTION, DEPENDENCIES, and LICENSES."
(home-page ,home-page)
(license ,(match licenses
(() #f)
((license) (license->symbol license))
(_ `(list ,@(map license->symbol licenses)))))))
((license) license)
(_ `(list ,@licenses))))))
(define* (gem->guix-package package-name #:key (repo 'rubygems) version
#:allow-other-keys)
@@ -182,15 +183,16 @@ package on RubyGems."
(substring source-url 31 (string-rindex source-url #\-))))
(define (string->license str)
"Convert the string STR into a license object."
(match str
("GNU LGPL" license:lgpl2.0)
("GPL" license:gpl3)
((or "BSD" "BSD License") license:bsd-3)
((or "MIT" "MIT license" "Expat license") license:expat)
("Public domain" license:public-domain)
((or "Apache License, Version 2.0" "Apache 2.0") license:asl2.0)
(_ #f)))
"Convert the string STR into a license symbol."
(or (spdx-string->license str)
(match str
("GNU LGPL" 'license:lgpl2.0)
("GPL" 'license:gpl3)
((or "BSD" "BSD License") 'license:bsd-3)
((or "MIT" "MIT license" "Expat license") 'license:expat)
("Public domain" 'license:public-domain)
((or "Apache License, Version 2.0" "Apache 2.0") 'license:asl2.0)
(_ 'unknown-license!))))
(define gem-package?
(url-prefix-predicate "https://rubygems.org/downloads/"))
-6
View File
@@ -98,12 +98,6 @@
"pytest-isort" "pytest-flake8" "pytest-cov" "pytest-black" ; variants
"pytest-pep8" "pytest-mypy" "pytest-pep8" "pre-commit")) ;
(define non-empty-string-or-false
(match-lambda
("" #f)
((? string? str) str)
((or 'null #f) #f)))
;; PyPI project.
(define-json-mapping <pypi-project> make-pypi-project pypi-project?
json->pypi-project
+7
View File
@@ -97,6 +97,7 @@
spdx-string->license
license->symbol
non-empty-string-or-false
snake-case
beautify-description
beautify-synopsis
@@ -470,6 +471,12 @@ object is bound to in the (guix licenses) module, such as 'license:gpl3+, or
(resolve-interface '(guix licenses) #:prefix 'license:)))
(assoc-ref licenses license))
(define non-empty-string-or-false
(match-lambda
("" #f)
((? string? str) str)
((or 'null #f) #f)))
(define (snake-case str)
"Return a downcased version of the string STR where underscores and periods
are replaced with dashes."
+3
View File
@@ -46,6 +46,7 @@
#:use-module (guix deprecation)
#:use-module ((guix diagnostics)
#:select (formatted-message define-with-syntax-properties))
#:use-module (guix fossil-download)
#:autoload (guix licenses) (license?)
#:use-module (guix i18n)
#:use-module (ice-9 match)
@@ -389,6 +390,8 @@ name of its URI."
(uri->file-name head))
((? string? uri)
(uri->file-name uri))
(($ <fossil-reference> uri check-in)
(fossil-file-name (basename uri) check-in))
(else
;; git, svn, cvs, etc. reference
#f))))
+1 -1
View File
@@ -53,7 +53,7 @@
(define (show-help)
(display (G_ "Usage: guix time-machine [OPTION] [-- COMMAND ARGS...]
Execute COMMAND ARGS... in an older version of Guix.
Execute COMMAND ARGS... in a different version of Guix.
If COMMAND is not provided, print path to the time-machine profile.\n"))
(display (G_ "
+23 -2
View File
@@ -2526,8 +2526,29 @@ void DerivationGoal::startBuilder()
ctx.persona |= 0x0020000; /* == UNAME26 */
}
/* Disable address space randomization for improved determinism. */
ctx.persona |= ADDR_NO_RANDOMIZE;
/* Check whether we can set ADDR_NO_RANDOMIZE, some container seccomp
policies block it. */
int currentPersonality = personality(0xffffffff);
if (currentPersonality == -1)
throw SysError("unable to get current personality");
if (personality(currentPersonality | ADDR_NO_RANDOMIZE) == -1) {
if (errno == EINVAL)
throw SysError("unexpectedly unable to add ADDR_NO_RANDOMIZE to personality");
/* Some other, unexpected errno; seccomp is probably behind it. */
if (!settings.allowASLR)
throw SysError("ADDR_NO_RANDOMIZE appears blocked and `--allow-aslr' was not passed, refusing to weaken reproducibility by default");
printMsg(lvlInfo, "the ADDR_NO_RANDOMIZE personality flag appears to be blocked, not using it");
}
else {
/* It worked, now first restore the original personality. */
if (personality(currentPersonality) == -1)
throw SysError("unable to restore personality after testing for availability of ADDR_NO_RANDOMIZE");
/* Disable address space randomization for improved determinism. */
ctx.persona |= ADDR_NO_RANDOMIZE;
}
#endif
+1
View File
@@ -53,6 +53,7 @@ Settings::Settings()
showTrace = false;
useHostLoopback = true;
slirp4netns = SLIRP4NETNS;
allowASLR = false;
}
+4
View File
@@ -213,6 +213,10 @@ struct Settings {
/* The filename to use for executing slirp4netns when it is needed. */
Path slirp4netns;
/* Whether to proceed without the ADDR_NO_RANDOMIZE personality flag if
* its use is blocked. */
bool allowASLR;
private:
SettingsMap settings;
+12
View File
@@ -85,6 +85,7 @@ builds derivations on behalf of its clients.");
#define GUIX_OPT_LOG_COMPRESSION 20
#define GUIX_OPT_DISCOVER 21
#define GUIX_OPT_ISOLATE_HOST_LOOPBACK 22
#define GUIX_OPT_ALLOW_ASLR 23
static const struct argp_option options[] =
{
@@ -157,6 +158,14 @@ to live outputs") },
n_("produce debugging output") },
{ "isolate-host-loopback", GUIX_OPT_ISOLATE_HOST_LOOPBACK, 0, 0,
n_("do not allow fixed-output chroot builds to access the host loopback") },
{ "allow-aslr", GUIX_OPT_ALLOW_ASLR, 0,
#ifdef HAVE_SYS_PERSONALITY_H
0,
#else
OPTION_HIDDEN,
#endif
n_("allow builds to start even if address space layout \
randomization (ASLR) cannot be disabled")},
{ 0, 0, 0, 0, 0 }
};
@@ -292,6 +301,9 @@ parse_opt (int key, char *arg, struct argp_state *state)
case GUIX_OPT_ISOLATE_HOST_LOOPBACK:
settings.useHostLoopback = false;
break;
case GUIX_OPT_ALLOW_ASLR:
settings.allowASLR = true;
break;
default:
return (error_t) ARGP_ERR_UNKNOWN;
}
+161
View File
@@ -112,6 +112,58 @@
\"licenses\": [\"MIT\"]
}")
(define test-no-homepage-json
"{
\"name\": \"no-homepage\",
\"version\": \"1.0.0\",
\"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
\"info\": \"A gem with no homepage\",
\"homepage_uri\": null,
\"dependencies\": {
\"runtime\": []
},
\"licenses\": [\"MIT\"]
}")
(define test-spdx-json
"{
\"name\": \"spdx-gem\",
\"version\": \"1.0.0\",
\"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
\"info\": \"A gem with SPDX licenses\",
\"homepage_uri\": \"https://example.com\",
\"dependencies\": {
\"runtime\": []
},
\"licenses\": [\"Ruby\", \"BSD-2-Clause\"]
}")
(define test-gibberish-licenses-json
"{
\"name\": \"gibberish-license-gem\",
\"version\": \"1.0.0\",
\"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
\"info\": \"A gem with gibberish licenses\",
\"homepage_uri\": \"https://example.com\",
\"dependencies\": {
\"runtime\": []
},
\"licenses\": [\"foo\", \"bar\"]
}")
(define test-mixed-licenses-json
"{
\"name\": \"mixed-license-gem\",
\"version\": \"1.0.0\",
\"sha\": \"f3676eafca9987cb5fe263df1edf2538bf6dafc712b30e17be3543a9680547a8\",
\"info\": \"A gem with one valid and one gibberish license\",
\"homepage_uri\": \"https://example.com\",
\"dependencies\": {
\"runtime\": []
},
\"licenses\": [\"MIT\", \"nonsense\"]
}")
(test-begin "gem")
(test-assert "gem->guix-package"
@@ -306,4 +358,113 @@
(list (upstream-source-urls source)
(upstream-source-inputs source)))))
(test-assert "gem->guix-package, bald homepage_uri"
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v1/gems/no-homepage.json"
(values (open-input-string test-no-homepage-json)
(string-length test-no-homepage-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem->guix-package "no-homepage")
(`(package
(name "ruby-no-homepage")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "no-homepage" version))
(sha256
(base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
(build-system ruby-build-system)
(synopsis "A gem with no homepage")
(description "This package provides a gem with no homepage.")
(home-page #f)
(license license:expat))
#t)
(x
(pk 'fail x #f)))))
(test-assert "gem->guix-package with SPDX license identifiers"
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v1/gems/spdx-gem.json"
(values (open-input-string test-spdx-json)
(string-length test-spdx-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem->guix-package "spdx-gem")
(`(package
(name "ruby-spdx-gem")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "spdx-gem" version))
(sha256
(base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
(build-system ruby-build-system)
(synopsis "A gem with SPDX licenses")
(description "This package provides a gem with SPDX licenses.")
(home-page "https://example.com")
(license (list license:ruby license:bsd-2)))
#t)
(x
(pk 'fail x #f)))))
(test-assert "gem->guix-package with gibberish license identifiers"
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v1/gems/gibberish-license-gem.json"
(values (open-input-string test-gibberish-licenses-json)
(string-length test-gibberish-licenses-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem->guix-package "gibberish-license-gem")
(`(package
(name "ruby-gibberish-license-gem")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "gibberish-license-gem" version))
(sha256
(base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
(build-system ruby-build-system)
(synopsis "A gem with gibberish licenses")
(description "This package provides a gem with gibberish licenses.")
(home-page "https://example.com")
(license (list unknown-license! unknown-license!)))
#t)
(x
(pk 'fail x #f)))))
(test-assert "gem->guix-package with mixed valid and gibberish licenses"
(mock ((guix http-client) http-fetch
(lambda (url . rest)
(match url
("https://rubygems.org/api/v1/gems/mixed-license-gem.json"
(values (open-input-string test-mixed-licenses-json)
(string-length test-mixed-licenses-json)))
(_ (error "Unexpected URL: " url)))))
(match (gem->guix-package "mixed-license-gem")
(`(package
(name "ruby-mixed-license-gem")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "mixed-license-gem" version))
(sha256
(base32
"1a270mlajhrmpqbhxcqjqypnvgrq4pgixpv3w9gwp1wrrapnwrzk"))))
(build-system ruby-build-system)
(synopsis "A gem with one valid and one gibberish license")
(description "This package provides a gem with one valid \
and one gibberish license.")
(home-page "https://example.com")
(license (list license:expat unknown-license!)))
#t)
(x
(pk 'fail x #f)))))
(test-end "gem")