Compare commits

...

394 Commits

Author SHA1 Message Date
Efraim Flashner
d979b1b459 gnu: Register missing patch.
This is a follow-up to f380c63da4.

* gnu/local.mk (dist_patch_DATA): Register hwloc-add-with-opencl.patch.

Change-Id: I4f1850659fc56049e93b1723f599e0713ba42da6
2026-03-16 11:33:41 +02:00
Luca Cirrottola
de90188eea gnu: openblas: Correctly pass make flags, switch tests on.
* gnu/packages/maths.scm (openblas)[build-system]: Use gnu-build-system.
[arguments] Fix compiler optimization options.
[phases] Skip configure phase (build from Makefile).

Merges guix/guix!7010

Change-Id: Ifbb46feeb7564e56ab66d598afda9cbcab31b5f6
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:40 +01:00
Cayetano Santos
60b6df6b04 gnu: %opencl-version: Update to 2025.07.22.
* gnu/packages/opencl.scm (opencl-headers)[source]: Update sha256.
(opencl-clhpp)[source]: Update sha256.
(opencl-icd-loader)[source]: Update sha256.
(%opencl-version): Update.

Merges guix/guix!1879

Change-Id: If65cc4b4d5283a4a769a7d7c2d2c528e06bfc36b
2026-03-16 10:16:40 +01:00
Cayetano Santos
f422f735b2 gnu: Add opencl-headers-2022.
* gnu/packages/opencl.scm (opencl-headers-2022): New variable.
* gnu/packages/machine-learning.scm (tvm)[inputs]: Add
opencl-headers-2022; delete opencl-headers.

Merges guix/guix!1879

Change-Id: Ib4d73ad530e374669e34b4ea6744eeab8b8ef668
2026-03-16 10:16:40 +01:00
Cayetano Santos
a7f560f3b2 gnu: Add %opencl-version.
* gnu/packages/opencl.scm (%opencl-version): New variable.
(opencl-headers)[version]: Use %opencl-version.
(opencl-clhpp)[version]: Use %opencl-version.
(opencl-icd-loader)[version]: Use %opencl-version.

Tie together all opencl related packages.

Merges guix/guix!1879

Change-Id: If86e9a79ef04d758b73bf3cf8711502a43a62256
2026-03-16 10:16:40 +01:00
Cayetano Santos
0b6aa1b1c6 gnu: rocm-cmake: Fix dependency on julia.
At this point, git depends on julia, which is broken, see #6577.

Merges guix/guix!6578

* gnu/packages/rocm.scm (rocm-cmake)[native-inputs]: Remove git; add
git-minimal/pinned.

Change-Id: I32402d3a5015520eb2021d0ac4895709b589f169
2026-03-16 10:16:40 +01:00
Romain GARBAGE
1205f53f8d gnu: Add openmpi-rocm, an Open MPI variant with ROCm support.
* gnu/packages/mpi.scm (openmpi-5): New variable.

Merges guix/guix!6032

Change-Id: I2ff58c0f76d861f4570b4d9dd60aefa747a73345
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:40 +01:00
Romain GARBAGE
af3900a316 gnu: openmpi-4: Don't mix quasiquotes with G-exps.
* gnu/packages/mpi.scm (openmpi-4): Don't mix quasiquotes with G-exps.

Merges guix/guix!6032

Change-Id: Ic989184bb25dc3519ea4281cf2c9cac1c18af7a9
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:40 +01:00
Romain GARBAGE
fb34cb983a gnu: hwloc-2: Enable ROCm support.
* gnu/packages/mpi.scm (hwloc-2): Enable ROCm support.

Merges guix/guix!6032

Change-Id: I68d57c377bf461dd32a2c7b7793ed85158683199
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:40 +01:00
Romain GARBAGE
f380c63da4 gnu: hwloc-2: Fix OpenCL linking error for dependents.
* gnu/packages/mpi.scm (hwloc-2)[origin]: Add patch adding a configure
flag for OpenCL.
[native-inputs]: Add dependencies required to generate configure. Remove
opencl-ic-loader...
[inputs]: ...and move it here.
[arguments]: Use new configure flag. Force configure script generation.

Merges guix/guix!6032

Change-Id: Idd31c6b6efbab9c87f83c5af750a0994518be69a
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:40 +01:00
Romain GARBAGE
cf5b8dce21 gnu: hwloc: Switch to G-expressions.
This commit updates both hwloc packages to use G-exps at the same time
as one inherits on the other and doing it in 2 steps would lead to a
commit with a broken state.

* gnu/packages/mpi.scm (hwloc-1, hwloc-2): Switch to G-expressions.

Merges guix/guix!6032

Change-Id: Ie59b12bb1fb9d7d800449afdbf8cfb44c08ec3e9
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Romain GARBAGE
7739b4dd8f gnu: ucx: Activate ROCm support.
* gnu/packages/fabric-management.scm (ucx): Activate ROCm support.

Merges guix/guix!6032

Change-Id: I011bc0c5f003ddc520557b702b972a3c3f7d3641
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Romain GARBAGE
db2a92f45a gnu: libfabric: Fix indentation.
* gnu/packages/linux.scm (libfabric): Fix indentation.

Merges guix/guix!6032

Change-Id: I80e48cb96c8c4ac11c467cf6b61187ef999f3be3
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Romain GARBAGE
6390a0c6ad gnu: libfabric: Activate ROCm support.
* gnu/packages/linux.scm (libfabric): Activate ROCm support.

Merges guix/guix!6032

Change-Id: I71761df0d4989dbe8ccf410f273486508b3575b5
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Cayetano Santos
ae909b7183 gnu: Add rocm-validationsuite.
* gnu/packages/rocm-libs.scm (rocm-validationsuite): New variable.

Merges guix/guix!6408

Change-Id: Id59bba55d34efcf401e70277de34f2c16d1f92be
2026-03-16 10:16:39 +01:00
Cayetano Santos
0f4c29ef1d gnu: hwloc-2: Add support for opencl, levelzero and libxml2.
* gnu/packages/mpi.scm (hwloc-2)[native-inputs]: Add opencl-headers and
opencl-icd-loader.
[inputs]: Add level-zero and libxml2.

Change-Id: I1af1921c848d8812848e453edac7701c9b1983d2
2026-03-16 10:16:39 +01:00
Philippe SWARTVAGHER
49c849438a gnu: hwloc-2: Update to 2.13.0.
* gnu/packages/mpi.scm (hwloc-2): Update to 2.13.0.

Merges guix/guix!6359

Change-Id: I020c86425dcbb83613365448356c7bec0e540b93
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Luca Cirrottola
fff3eb95b9 gnu: openblas: Use cmake build system.
* gnu/packages/maths.scm (openblas)[source]: Update url.
[build-system]: Switch to cmake-build-system.
[arguments]<#:test-target>: Delete.
<#:build-type>: Set.
<#:configure-flags>: Add.
<#:phases>: Restore ’configure.

Merges guix/guix!6178

Change-Id: Ieabb85ad797d70b8894e1f95937dc22af9b34210
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:39 +01:00
Cayetano Santos
78889d16fa gnu: vulkan-validationlayers: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (vulkan-validationlayers): Update to
1.4.335.0.

Merges guix/guix!6058

Change-Id: I91cb6699c4e2ef278b2fd295be03ac55fad4301c
2026-03-16 10:16:39 +01:00
Cayetano Santos
1f33c9bf11 gnu: Add spirv-tools-static.
* gnu/packages/vulkan.scm (spirv-tools-static): New variable.

Merges guix/guix!6058

Change-Id: I2d7a9a752d94d8059cbb71a3d172c551e92b225c
2026-03-16 10:16:39 +01:00
Cayetano Santos
9b6f14eb0e gnu: vulkan-tools: Update to 1.4.335.
* gnu/packages/vulkan.scm (vulkan-tools): Update to 1.4.335.

Change-Id: Iab08a8a9cd6b1ad708548b19eb7303f6c806e717
2026-03-16 10:16:39 +01:00
Cayetano Santos
6ea151888c gnu: spirv-headers: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (spirv-headers): Update to 1.4.335.0.

Change-Id: I503d737e711404ad61843aacca752ad83e442fb4
2026-03-16 10:16:39 +01:00
Cayetano Santos
baa79d6d09 gnu: spirv-tools: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (spirv-tools): Update to 1.4.335.0.

Change-Id: I9be0c58bffca7219d65b0657c0d4c9766222a33f
2026-03-16 10:16:39 +01:00
Cayetano Santos
8556b8ab61 gnu: spirv-cross: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (spirv-cross): Update to 1.4.335.0.

Change-Id: I8fc0218acca39f646581c72eead214a9174c7522
2026-03-16 10:16:39 +01:00
Cayetano Santos
75ed45e456 gnu: glslang: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (glslang): Update to 1.4.335.0.

Change-Id: Id89086d30036aeaea3923a8ae9ebd1184c23bac1
2026-03-16 10:16:39 +01:00
Cayetano Santos
c3f1306d64 gnu: vulkan-headers/no-loader: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (vulkan-headers/no-loader): Update to 1.4.335.0.

Change-Id: I43272436696ae3806c00751fab85459e07358280
2026-03-16 10:16:38 +01:00
Cayetano Santos
2e0f0de669 gnu: vulkan-loader: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (vulkan-loader): Update to 1.4.335.0.

Change-Id: Ie295240f6db85adb567e869057519bdc565d94a7
2026-03-16 10:16:38 +01:00
Cayetano Santos
758c9c6431 gnu: vulkan-volk: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (vulkan-volk): Update to 1.4.335.0.

Change-Id: Ia532978dab6f29e8483a88a49bdea552f2410fda
2026-03-16 10:16:38 +01:00
Cayetano Santos
bb66172a0b gnu: vulkan-utility-libraries: Update to 1.4.335.0.
* gnu/packages/vulkan.scm (vulkan-utility-libraries): Update to 1.4.335.0.

Change-Id: I1e4a99ccc7d3d823adedb0b7ad5da019c327ed07
2026-03-16 10:16:38 +01:00
Philippe SWARTVAGHER
36a29d4299 gnu: shaderc: Update to 2025.5.
* gnu/packages/vulkan.scm (shaderc): Update to 2025.5.

Closes guix/guix!4607

Change-Id: I406634f66ef8bab883f32cb489dd40285799cc19
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 10:16:38 +01:00
Romain GARBAGE
4024e13a98 maths: openblas: Update to 0.3.31.
* gnu/packages/maths.scm (openblas): Update to 0.3.31.

Change-Id: If22b461cf8977c4f33704de37225852d3382c662
2026-03-16 10:16:38 +01:00
Romain GARBAGE
3656139f7e maths: openblas: Enable OpenMP support.
* gnu/packages/maths.scm (openblas): Enable OpenMP support.

Change-Id: I72b8badb6d1d627854717ddcbdceab8302114eaf
2026-03-16 10:16:29 +01:00
Sughosha
9e17346b66 gnu: Add python-catppuccin.
* gnu/packages/python-xyz.scm (python-catppuccin): New variable.

Change-Id: I7c39321f3195deb64d5b6bf5553349d729cc5925
2026-03-16 14:28:11 +05:30
Spencer King
eb42e9b76c gnu: sameboy: Update to 1.0.3.
* gnu/packages/emulators.scm (sameboy): Update to 1.0.3.
[inputs]: Add libpng.

Closes: guix/guix#6970
Change-Id: I09eee96e72039ab48cbbe43ca0c5bc5a86ec4378
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2026-03-16 15:37:55 +08:00
Cayetano Santos
8887b63a70 teams: Add Nguyễn Gia Phong to vcs team.
* etc/teams.scm ("Nguyễn Gia Phong"): Add Ashish SHUKLA to cvs team.

Change-Id: Ic30a75ea76ed25ae2029227ca101dae9d8c12036
2026-03-16 08:20:24 +01:00
Nguyễn Gia Phong
a3bb442b03 teams: Add Ashish SHUKLA to vcs team.
* etc/teams.scm ("Ashish SHUKLA"): New person in vcs team.

Change-Id: I454b694fe9997717c0ab34fe2980f93276fc1ff2
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 08:20:13 +01:00
Nguyễn Gia Phong
7eae2b1f1b teams: Add Thanos Apollo to vcs team.
* etc/teams.scm ("Thanos Apollo"): New person in vcs team.

Change-Id: I7afd97b470a93fb9aad02cf493d3ab3b8df89668
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 08:19:45 +01:00
Nguyễn Gia Phong
fa67dd643e teams: Add Version control team.
* etc/teams.scm (vcs): New team.
* CODEOWNERS: Regenerate file.

Merges guix/guix!6165

Change-Id: I9f1edb67e52c08ad69199f991fc8fa42a334ddb8
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-16 08:19:28 +01:00
Foster Hangdaan
21dc3404be gnu: claws-mail: Update to 4.4.0.
* gnu/packages/mail.scm (claws-mail): Update to 4.4.0.
[inputs]: Remove dbus-glib since the codebase has migrated to GDBus.

Merges: https://codeberg.org/guix/guix/pulls/7031
Change-Id: Ic11306ff44b8f48b8249c8e8fd1bfd676978ef33
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-16 06:19:16 +01:00
Sughosha
58deaa03b5 gnu: polkit-kde-agent: Add missing input.
Fixes guix/guix#7053.

* gnu/packages/kde-plasma.scm (polkit-kde-agent)[inputs]: Add kirigami.

Change-Id: Ia548b7e045023ec3914047a1163c43f4d4138c12
2026-03-16 07:44:59 +05:30
Sughosha
a57edfd158 gnu: kdav: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdav): Update to 6.23.0.

Change-Id: I1c37aeda834492e600353e52cf976aa095576f37
2026-03-16 07:44:15 +05:30
Sughosha
8bdc83a0a9 gnu: kde-frameworkintegration: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kde-frameworkintegration): Update to 6.23.0.

Change-Id: I0b4ff28116b3bfa04d0204a480f52da452387f8c
2026-03-16 07:44:14 +05:30
Sughosha
4cd7e58dd9 gnu: ktextaddons: Update to 2.0.0.
* gnu/packages/kde-frameworks.scm (ktextaddons): Update to 2.0.0.
[inputs]: Add kiconthemes.

Co-authored-by: Andreas Enge <andreas@enge.fr>
Change-Id: Iff70ae6339a6be743f06834f460f1bd56ac563de
2026-03-16 07:44:14 +05:30
Sughosha
fce64471d8 gnu: purpose: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (purpose): Update to 6.23.0.

Change-Id: Ic71e5b045a4a615c53f70f42950bc782c78af5d6
2026-03-16 07:44:14 +05:30
Sughosha
cf01229e67 gnu: kxmlgui: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kxmlgui): Update to 6.23.0.

Change-Id: If06ca92b70c2f30a8ef1685dcbc23dcd9103ebfb
2026-03-16 07:44:13 +05:30
Sughosha
a079c0873c gnu: kwallet: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kwallet): Update to 6.23.0.

Change-Id: I2312b9c6f8cf6e21901e0a9fb5a96eb766db1310
2026-03-16 07:44:13 +05:30
Sughosha
6517a723f5 gnu: ktexttemplate: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ktexttemplate): Update to 6.23.0.

Change-Id: I03d5eda2e1cb66cfb7b61681cae0ade0387e90a4
2026-03-16 07:44:13 +05:30
Sughosha
f5443df2f3 gnu: ktextwidgets: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ktextwidgets): Update to 6.23.0.

Change-Id: If2eb1de1eadb004d6819d44b112a0243b6967c98
2026-03-16 07:44:13 +05:30
Sughosha
d56724d788 gnu: ktexteditor: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ktexteditor): Update to 6.23.0.

Change-Id: Id95987cf5dbf8ed1e5b91a4b93d19fd39a20fd64
2026-03-16 07:44:12 +05:30
Sughosha
11e8f8576b gnu: kstatusnotifieritem: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kstatusnotifieritem): Update to 6.23.0.

Change-Id: I4e016984763bbf0bf8fa002db20a763fd92899fe
2026-03-16 07:44:12 +05:30
Sughosha
6cb15b89f5 gnu: kservice: Update to 6.23.1.
* gnu/packages/kde-frameworks.scm (kservice): Update to 6.23.1.

Change-Id: I9524447f6684931fa25ce45a6a13a1a20481ff5b
2026-03-16 07:44:12 +05:30
Sughosha
8891803d94 gnu: krunner: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (krunner): Update to 6.23.0.

Change-Id: I329c408487d226eb11e27586de1ba5e505756efb
2026-03-16 07:44:11 +05:30
Sughosha
8bb962347b gnu: kpeople: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kpeople): Update to 6.23.0.

Change-Id: Ifc754428caafe8b1019f38d95a785996b0a7de6a
2026-03-16 07:44:11 +05:30
Sughosha
6b3c70ed3f gnu: kparts: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kparts): Update to 6.23.0.

Change-Id: Ia698ebeaffa5a1f49b4e6fe0364d0b9295cb4277
2026-03-16 07:44:11 +05:30
Sughosha
dd7a2adc5f gnu: knotifyconfig: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (knotifyconfig): Update to 6.23.0.

Change-Id: I2300a3ee131f3d7dd3ee745c475a451a12976262
2026-03-16 07:44:11 +05:30
Sughosha
2e6973a146 gnu: knewstuff: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (knewstuff): Update to 6.23.0.
[build-system]: Switch to qt-build-system.
[inputs]: Remove qtbase; add qtwayland.
[arguments]<#:qtbase>: Set to qtbase.
<phases>: In 'check-setup' phase, do not set QT_QPA_PLATFORM variable.

Change-Id: I0237f7ff9106d86979befbebaa520aee7c1e7219
2026-03-16 07:44:10 +05:30
Sughosha
68f2f89fb1 gnu: kirigami-addons: Update to 1.12.0.
* gnu/packages/kde-frameworks.scm (kirigami-addons): Update to 1.12.0.

Change-Id: I8591f19b6290a49ac2f048de1ad6f90cc1a0c5bf
2026-03-16 07:44:10 +05:30
Sughosha
3da63d5241 gnu: kio: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kio): Update to 6.23.0.
[build-system]: Switch to qt-build-system.
[inputs]: Remove qtbase; add qtwayland.
[arguments]<#:qtbase>: Set to qtbase.
<#:phases>: In 'check phase, do not set QT_QPA_PLATFORM and DBUS_FATAL_WARNINGS
variables.

Change-Id: I15185216d6a09c08be33574dccfb5d96121789e3
2026-03-16 07:44:10 +05:30
Sughosha
937fb5cfff gnu: kiconthemes: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kiconthemes): Update to 6.23.0.
[build-system]: Switch to qt-build-system.
[inputs]: Reorder; remove qtbase; add qtwayland.
[arguments]<#:qtbase>: Set to qtbase.
<#:phases>: In 'check-setup' phase, do not set QT_QPA_PLATFORM variable.

Change-Id: Ib475ffc8a9cd924d0d3ff21cd213f434d5f72558
2026-03-16 07:44:09 +05:30
Sughosha
6eef98e264 gnu: kglobalaccel: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kglobalaccel): Update to 6.23.0.

Change-Id: I2a84b54eca7c0df4b001aedfc5bf61ad85af6628
2026-03-16 07:44:09 +05:30
Sughosha
25cd0d36fd gnu: kdesu: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdesu): Update to 6.23.0.

Change-Id: I0c8d2c7e25f32e062d14b4850d34f81e7ae541be
2026-03-16 07:44:09 +05:30
Sughosha
d6e501952a gnu: kded: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kded): Update to 6.23.0.
[build-system]: Switch to qt-build-system.
[arguments]<#:qtbase>: Set to qtbase.
[inputs]: Remove qtbase; add qtwayland.

Change-Id: I87cde8fda01c6a226144330ef9c655a143864585
2026-03-16 07:44:09 +05:30
Sughosha
1990b69b6f gnu: kdeclarative: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdeclarative): Update to 6.23.0.

Change-Id: I314dd4033ae376784b3f57c9d78af781d3d6e426
2026-03-16 07:44:08 +05:30
Sughosha
cf6b2395c3 gnu: kconfigwidgets: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kconfigwidgets): Update to 6.23.0.

Change-Id: I60320de3615aba32435e2dc94df1312e7a100630
2026-03-16 07:44:08 +05:30
Sughosha
c8504a2461 gnu: kcmutils: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcmutils): Update to 6.23.0.
[build-system]: Switch to qt-build-system.
[inputs]: Reorder; remove qtbase; add qtwayland.
[arguments]<#:phases>: Remove argument.
<#:qtbase>: Set to qtbase.

Change-Id: Ie15e7672288a8bdfdd564e83234f6cb301cd7026
2026-03-16 07:44:08 +05:30
Sughosha
35015cf880 gnu: kbookmarks: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kbookmarks): Update to 6.23.0.

Change-Id: I2e5acaf0651311d45911c59670227cdb3ee97724
2026-03-16 07:44:07 +05:30
Sughosha
bcd8acfdd8 gnu: baloo: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (baloo): Update to 6.23.0.

Change-Id: I69cb9c4019a74ed990b42920988554ab675ede26
2026-03-16 07:44:07 +05:30
Sughosha
7021f1f783 gnu: syndication: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (syndication): Update to 6.23.0.

Change-Id: I98bc9c392e91bf8d8b31cac2592cf07d89608c52
2026-03-16 07:44:07 +05:30
Sughosha
4b82187b53 gnu: kunitconversion: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kunitconversion): Update to 6.23.0.

Change-Id: Ib171e74379e19c44e9db0d31781c49a6a0e9d4e0
2026-03-16 07:44:06 +05:30
Sughosha
d6bca986c8 gnu: kpty: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kpty): Update to 6.23.0.

Change-Id: I0177b29bed2e4822943943e34a6a4caf93b6f1dd
2026-03-16 07:44:06 +05:30
Sughosha
b159265810 gnu: kpackage: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kpackage): Update to 6.23.0.

Change-Id: I7a70712f22e902ac19de303a30618ed08fcf6948
2026-03-16 07:44:06 +05:30
Sughosha
deaec02d17 gnu: knotifications: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (knotifications): Update to 6.23.0.

Change-Id: I928426488386cc58c689aa750fb3c48b5f8c3fd1
2026-03-16 07:44:05 +05:30
Sughosha
3c89fa1fa3 gnu: kjobwidgets: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kjobwidgets): Update to 6.23.0.

Change-Id: I38b3fb4926b0c158326cf2bf6179d5f0a07f6c52
2026-03-16 07:44:05 +05:30
Sughosha
6cf55aefb4 gnu: kimageformats: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kimageformats): Update to 6.23.0.

Change-Id: Ifbb3348436feeb56b23e7ce63b87f8f1bdc67acb
2026-03-16 07:44:05 +05:30
Sughosha
130af24203 gnu: kfilemetadata: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kfilemetadata): Update to 6.23.0.

Change-Id: I42c8f057a5f67183f2736eea6ff9a6680c43a88f
2026-03-16 07:44:05 +05:30
Sughosha
50317dddac gnu: kdoctools: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdoctools): Update to 6.23.0.

Change-Id: I28f07da4c85d2c124cbb8b59b0da6e779c930bfb
2026-03-16 07:44:04 +05:30
Sughosha
b7d1f23b61 gnu: kcrash: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcrash): Update to 6.23.0.
[arguments]<#:phases>: Add 'check-setup' phase.

Change-Id: I6fb50aa612f3b0461671e783fa419cab4917e911
2026-03-16 07:44:04 +05:30
Sughosha
e47d90a075 gnu: kcontacts: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcontacts): Update to 6.23.0.

Change-Id: I37ca9796231275985bab70b31da5454ab639acfa
2026-03-16 07:44:04 +05:30
Sughosha
67aef8de6f gnu: kcompletion: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcompletion): Update to 6.23.0.

Change-Id: I47c912ec50a50d235f839517fe1cc8e5d19c980f
2026-03-16 07:44:03 +05:30
Sughosha
43b6555751 gnu: kauth: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kauth): Update to 6.23.0.

Change-Id: I53de18672b65167cea6dd1c80d5f0c90bbd3a78c
2026-03-16 07:44:03 +05:30
Sughosha
98afc8df18 gnu: threadweaver: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (threadweaver): Update to 6.23.0.

Change-Id: I90c02d6b2340adfc85ede27ced8aa65a310f0cbf
2026-03-16 07:44:03 +05:30
Sughosha
2e21984b91 gnu: sonnet: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (sonnet): Update to 6.23.0.

Change-Id: I9a71596f5cdc1ef41ff6b1850e004b1bc0330fdd
2026-03-16 07:44:03 +05:30
Sughosha
90214dcba7 gnu: solid: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (solid): Update to 6.23.0.

Change-Id: I94fcbe5c15651174c3856cc1061b3474354825e3
2026-03-16 07:44:02 +05:30
Sughosha
919a6ccb0b gnu: qqc2-desktop-style: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (qqc2-desktop-style): Update to 6.23.0.

Change-Id: I5ad8918c7a3053ca73f483fa8fd43a017c385dcd
2026-03-16 07:44:02 +05:30
Sughosha
f3d427b6a7 gnu: pulseaudio-qt: Update to 1.8.1.
* gnu/packages/kde-frameworks.scm (pulseaudio-qt): Update to 1.8.1.

Change-Id: I43d5de0f586a74fe521636558828544c483d073b
2026-03-16 07:44:01 +05:30
Sughosha
9b07deeaae gnu: prison: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (prison): Update to 6.23.0.

Change-Id: I51822f4484f3e0c8adfdf0b021cdbbd6a31565d3
2026-03-16 07:44:01 +05:30
Sughosha
402af4dd3b gnu: networkmanager-qt: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (networkmanager-qt): Update to 6.23.0.

Change-Id: I778256a8effe03ff15826d7d9920cd28c43dcdd9
2026-03-16 07:44:01 +05:30
Sughosha
ac5d3e0d83 gnu: modemmanager-qt: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (modemmanager-qt): Update to 6.23.0.

Change-Id: I21a2befeebb2659a6ca711d524b508b1a3285e5b
2026-03-16 07:44:01 +05:30
Sughosha
370b39965b gnu: kwindowsystem: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kwindowsystem): Update to 6.23.0.

Change-Id: Ibcc9e703985411caf7b000ef805b4c800affd4df
2026-03-16 07:44:00 +05:30
Sughosha
a97ab314bd gnu: kwidgetsaddons: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kwidgetsaddons): Update to 6.23.0.

Change-Id: I64041a98f47ed63069d1761ecef21d46f3d90791
2026-03-16 07:44:00 +05:30
Sughosha
98aac645f5 gnu: plasma-wayland-protocols: Update to 1.20.0.
* gnu/packages/kde-frameworks.scm (plasma-wayland-protocols): Update to 1.20.0.

Change-Id: I16899ce14ab77ac4203c858bcc804356c442791f
2026-03-16 07:44:00 +05:30
Sughosha
1c4d86c386 gnu: ksyntaxhighlighting: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ksyntaxhighlighting): Update to 6.23.0.

Change-Id: Ife2930e0865d87bac26bde47874688e03c9b5ae8
2026-03-16 07:44:00 +05:30
Sughosha
3cd537818e gnu: ksvg: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ksvg): Update to 6.23.0.

Change-Id: I35fa6b8cb4f3b9a8042cd6c2203f28a227bc89b7
2026-03-16 07:43:59 +05:30
Sughosha
cab50f0e21 gnu: kplotting: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kplotting): Update to 6.23.0.

Change-Id: I22003c01f597d02d2a9c2b5fc93882ba04925ee3
2026-03-16 07:43:59 +05:30
Sughosha
6c3b757d11 gnu: kitemviews: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kitemviews): Update to 6.23.0.

Change-Id: I8f8ed80e96fe1893a8b8ab84f048f51c0c9d552a
2026-03-16 07:43:59 +05:30
Sughosha
4027828f83 gnu: kitemmodels: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kitemmodels): Update to 6.23.0.

Change-Id: I3fa1e702af57e024c3501eb675b712c13f5bce33
2026-03-16 07:43:58 +05:30
Sughosha
ce3fda4b7d gnu: kirigami: Update to 6.23.1.
* gnu/packages/kde-frameworks.scm (kirigami): Update to 6.23.1.

Change-Id: I5c679be20fc4ec3848b9d3cc5404ec0238b057e7
2026-03-16 07:43:58 +05:30
Sughosha
cf48ac1285 gnu: kidletime: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kidletime): Update to 6.23.0.

Change-Id: Ifc8f6445b81c59658fded6305fd390fb3dc1669e
2026-03-16 07:43:58 +05:30
Sughosha
68016de92f gnu: ki18n: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (ki18n): Update to 6.23.0.

Change-Id: I65b0adaf0efb7c36f2da1382d88678c4e3171329
2026-03-16 07:43:58 +05:30
Sughosha
bc8153344c gnu: kholidays: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kholidays): Update to 6.23.0.

Change-Id: If14913d6ec2e31168aa5be8d9f27e13da490b6db
2026-03-16 07:43:57 +05:30
Sughosha
62737d710b gnu: kguiaddons: Update to 6.23.1.
* gnu/packages/kde-frameworks.scm (kguiaddons): Update to 6.23.1.

Change-Id: Ifa6a15395bf994561e84ac5030f6b9c0b253a918
2026-03-16 07:43:57 +05:30
Sughosha
d00dfed008 gnu: kdnssd: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdnssd): Update to 6.23.0.

Change-Id: Ifab54a07ee156d83b25844ecb11a68ffbd9b2d9a
2026-03-16 07:43:57 +05:30
Sughosha
88009ead99 gnu: kdbusaddons: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kdbusaddons): Update to 6.23.0.

Change-Id: I021ce08ecaf5672fff0c2e2e2446ab9e36d06b06
2026-03-16 07:43:57 +05:30
Sughosha
4a1f144efe gnu: kcoreaddons: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcoreaddons): Update to 6.23.0.

Change-Id: I3b1eff0deb98062f29f1dab43baa086c2554b690
2026-03-16 07:43:57 +05:30
Sughosha
40fafb239d gnu: kconfig: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kconfig): Update to 6.23.0.

Change-Id: Id07c5a1aaf5e2c4eb0e7450de3e3374d1271030a
2026-03-16 07:43:56 +05:30
Sughosha
2b610cb2e5 gnu: kcolorscheme: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcolorscheme): Update to 6.23.0.

Change-Id: I399c107f9903b9256a25a94259de5b405a180256
2026-03-16 07:43:56 +05:30
Sughosha
7b050f2731 gnu: kcodecs: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcodecs): Update to 6.23.0.

Change-Id: I1fd33b28654af7a983b1148f4811fd12ba0c13f0
2026-03-16 07:43:56 +05:30
Sughosha
6e4992fc2c gnu: kcalendarcore: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kcalendarcore): Update to 6.23.0.

Change-Id: If5f68c75160133f2c86957389a15637909e2d5a4
2026-03-16 07:43:56 +05:30
Sughosha
6e8df1ea1a gnu: karchive: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (karchive): Update to 6.23.0.

Change-Id: I4c9d7e0cf648ff52e89fa8a7d268e24a63e8c0d0
2026-03-16 07:43:55 +05:30
Sughosha
3fdbf2a2ce gnu: kapidox: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kapidox): Update to 6.23.0.
[arguments]<#:phases>: Add 'wrap-path'phase.
[inputs]: Add bash-minimal and coreutils.

Change-Id: Icea9bfb512839ccdc2d2600f33bf115df919976a
2026-03-16 07:43:55 +05:30
Sughosha
1ab8f3eb7f gnu: breeze-icons: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (breeze-icons): Update to 6.23.0.

Change-Id: Id21534c6a9b4248a197682d28c56ca3eebf83972
2026-03-16 07:43:55 +05:30
Sughosha
44d7bd0b78 gnu: bluez-qt: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (bluez-qt): Update to 6.23.0.

Change-Id: I98b63153471d7a234ec71fb2bbff424c9aa177c1
2026-03-16 07:43:55 +05:30
Sughosha
d2c923efd9 gnu: attica: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (attica): Update to 6.23.0.

Change-Id: Ifb44a9c5ea931c7d088303c7459b4ee7eb738ece
2026-03-16 07:43:54 +05:30
Sughosha
339ca3756b gnu: kquickcharts: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (kquickcharts): Update to 6.23.0.

Change-Id: I61a0c91269a836e66dbc2f00ede6d78a6d71f295
2026-03-16 07:43:54 +05:30
Sughosha
aa189d44fd gnu: extra-cmake-modules: Update to 6.23.0.
* gnu/packages/kde-frameworks.scm (extra-cmake-modules): Update to 6.23.0.

Change-Id: I69814dcdcb6c659821ef611cac72e0b343a64985
2026-03-16 07:43:53 +05:30
Cayetano Santos
f42c735aeb gnu: emacs-w3m: Update to 20251229-0.ec18c21.
* gnu/packages/emacs-xyz.scm (emacs-w3m): Update to 20251229-0.ec18c21.

Change-Id: I45d6a9381ed4e62385394cfdcbdff411336bc792
Signed-off-by: Ian Eure <ian@retrospec.tv>
2026-03-15 17:12:25 -07:00
Cayetano Santos
4ee924eff7 gnu: emacs-markdown-mode: Update to 2.8.
* gnu/packages/emacs-xyz.scm (emacs-markdown-mode): Update to 2.8.
[arguments]<#:tests?>: Delete.
<#:phases>: Add ’skip-failing-tests.

Change-Id: Ifb214c9292f6c73fb8ef98dba6f7eb1093019194
2026-03-15 21:11:26 +01:00
Cayetano Santos
6b188d65ee gnu: emacs-org-supertag: Update to 5.8.1.
* gnu/packages/emacs-xyz.scm (emacs-org-supertag): Update to 5.8.1.

Change-Id: Ic534c07ac7e4aef093152027e04b01369eb8287e
2026-03-15 21:07:21 +01:00
Noé Lopez
3abf9671be gnu: Add amberol.
* gnu/packages/gnome-circle.scm (amberol): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Add amberol.

Change-Id: I2ead9a6972482df774febde33cc18b22158fcb61
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 20:25:48 +02:00
Efraim Flashner
ce6dedf800 gnu: pueue: Install shell completions.
* gnu/packages/task-management.scm (pueue)[arguments]: Add a phase to
install the shell completions.
[native-inputs]: When cross-compiling add this package.

Change-Id: I36a61e699ba511bef92718feae65aa865782052e
2026-03-15 19:18:22 +02:00
SilverlightningY
72ac773a3e gnu: Add pueue.
* gnu/packages/task-management.scm (pueue): New variable.
* gnu/packages/rust-crates.scm: Add crates for pueue.

Change-Id: Ie780e190ce30c8c2bd9feed0dd2d45c171f8d1bd
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 19:18:18 +02:00
John Kehayias
9de0072f0d gnu: hyprland: Update to 0.54.2.
* gnu/packages/wm.scm (hyprland): Update to 0.54.2.

Change-Id: Ife9f150a49978c69c2fed59bd0cc81a416c38861
2026-03-15 12:49:25 -04:00
Artyom V. Poptsov
f0ba5b73a5 gnu: yggtray: Update to 0.1.15.
* gnu/packages/networking.scm (yggtray): Update to 0.1.15.

Change-Id: I6415858646f60e8e2f34f0c96cbe50ae40f1cee6
2026-03-15 16:45:17 +03:00
Roman Scherer
e320469cf0 gnu: ovmf-aarch64: Pad firmware to 64 MiB for QEMU compatibility.
QEMU's virt machine on AArch64 requires pflash devices to be exactly
64 MiB.  The raw QEMU_EFI.fd produced by EDK2 is only ~2 MiB, causing
GRUB EFI tests to fail with:

  cfi.pflash01 device requires 67108864 bytes, pflash0 block backend
  provides 2097152 bytes

Pad the firmware file to match, as Nix does.

* gnu/packages/firmware.scm (ovmf-aarch64)[arguments]: Pad
ovmf_aarch64.bin to 64 MiB with truncate-file.

Change-Id: I589325294f264b0af69a9a0261c35d9a862e03c5
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 14:49:06 +02:00
Ashish SHUKLA
8cc2c81735 gnu: got: Update to 0.123.
* gnu/packages/version-control.scm (got): Update to 0.123.

Change-Id: Ib6527f78122ac3c7c807cbbad0ce20173a7207bd
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 14:49:06 +02:00
Ashish SHUKLA
33d46b43ee gnu: foot: Update to 1.26.1.
* gnu/packages/terminals.scm (foot): Update to 1.26.1.

Change-Id: I389d1056113ce68c0bc6a3675f78f22ea3911ee7
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 14:49:06 +02:00
Ashish SHUKLA
1166412420 gnu: fossil: Update to 2.28.
* gnu/packages/version-control.scm (fossil): Update to 2.28.
[arguments]<#:phases>: Remove "disable-broken-test" phase.

Change-Id: I49197da22dbd0d9e65cd8dfda1ffa6c7f8340bd9
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-15 14:49:06 +02:00
moksh
82983217d0 gnu: Add rust-1.94.
* gnu/packages/rust.scm (rust-1.94): New variable.

Closes: guix/guix#6922
Change-Id: I7839ebae9d86f7855ea6dce7bdec2a023ba245a5
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-15 14:49:06 +02:00
Florian Pelz
0b3b7b05d9 gnu: g-golf-adw-1-examples: Update to 0.8.4.
* gnu/packages/guile-xyz.scm (g-golf-adw-1-examples)
[version, source]: Update.
[native-inputs]: Move glib:bin to ...
[inputs]: ... here, because version 0.8.4 compiles at run-time.
[arguments]<#:phases>{prepare-examples}: Do
not edit Makefile syntax; it got fixed upstream.
Adapt to run-time g-resources compilation.
{build}, {patch-scm-files}: Adapt.

Change-Id: Ifc5d1935d23aa1f73ed457941d1c741876e3b96d
Merges: #7081
2026-03-15 12:32:27 +01:00
Cayetano Santos
462e4f473f gnu: python-cocotbext-axi: Update to 0.1.28.
* gnu/packages/electronics.scm (python-cocotbext-axi): Update to 0.1.28.

Change-Id: I8a2491f15e2643b791e87ae429a740f5c0b10995
2026-03-15 11:37:22 +01:00
Efraim Flashner
45e45e1f79 gnu: rust-crates: Adjust indentation.
* gnu/packages/rust-crates.scm: Standardize the indentation.

Change-Id: Ibfcf69ddd8afebfcb44a79d66495a58168ae2585
2026-03-15 12:08:54 +02:00
Hugo Buddelmeijer
5533b916cb gnu: stiff: Compile with optimizations and debugging symbols.
This is a followup to a2cfd46081.

See <https://codeberg.org/guix/guix/pulls/7035#issuecomment-11634022>.

* gnu/packages/astronomy.scm (stiff): Add default configure flags.
[arguments]<#:configure-flags>: Add `-O2 -g`.

Merges guix/guix!7152

Change-Id: I8f819845793b63e2a9be59ffcd502fb29ea8ef9b
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-15 10:57:16 +01:00
Noé Lopez
c2b8e60f06 gnu: bluefish: Fix build.
* gnu/packages/gnome.scm (bluefish)[arguments]: Disable warning errors for
implicit function declarations.

Change-Id: I5adaaf81f2ea2498b8d4a3e564841b3160767844
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-15 07:14:15 +01:00
Noé Lopez
810513e4ef gnu: desktop-file-utils: Update to 0.28.
* gnu/packages/freedesktop.scm (desktop-file-utils):
Update to 0.28.
[build-system]: Switch to meson-build-system.

Change-Id: Id32870f4ed1d01728c44386ff796469f3b27c2bf
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-15 07:14:15 +01:00
James Smith
e0c13fc717 gnu: trenchbroom: Update to 2025.4.
* gnu/packages/game-development.scm: (trenchbroom): Update to 2025.4.
[arguments]<#:configure-flags>: Removed “-DFREEIMAGE_INCLUDE_PATH=…”
and “-DFREEIMAGE_LIBRARY=…”.
[inputs]: Replace catch2 with catch2-3.8, qtbase-5 with qtbase,
and qtsvg-5 with qtsvg.

Change-Id: I6e0cb3d2e6f4217c46f0e5287fb558cb22810659
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-15 07:14:13 +01:00
Ian Eure
906d4e7046 gnu: yt-dlp: Update to 2026.03.13.
* gnu/packages/video.scm (yt-dlp): Update to 2026.03.13.

Change-Id: I1de48cae0342b8f43a67046a135cc5ed3060e0dd
2026-03-14 21:17:38 -07:00
Anderson Torres
05bb40bc48 gnu: emacs-alchemist: Use Git, not MELPA.
* gnu/packages/emacs-xyz.scm (emacs-alchemist): Cleanup.
[source]: Use git-fetch.
[propagated-inputs]: Transpose right after arguments.
[arguments]<#:tests?>: Set as #f.
<#:phases>{install-server}: Delete alchemist-server/test before installing alchemist-server.

Change-Id: I1cf0a9906bff58c53cd4031ccb9d3806fcac9a31
Signed-off-by: Ian Eure <ian@retrospec.tv>
2026-03-14 20:51:52 -07:00
Anderson Torres
2d743846a3 gnu: emacs-js-comint: Use Git, not MELPA.
* gnu/packages/emacs-xyz.scm (emacs-js-comint): Use Git, not MELPA.
[source]: Use git repository
[arguments]<#:tests?>: Set as #f.

Change-Id: Id2fb37dbd786be464f48db467d827cf497d5e124
Signed-off-by: Ian Eure <ian@retrospec.tv>
2026-03-14 20:51:45 -07:00
Anderson Torres
7c7e8c2141 gnu: emacs-org-babel-eval-in-repl: Use Git, not MELPA.
* gnu/packages/emacs-xyz.scm (emacs-org-babel-eval-in-repl)[source]: Use git-fetch.

Change-Id: Ie693633f4359410ac1ecd61919cc2d6933fc970f
Signed-off-by: Ian Eure <ian@retrospec.tv>
2026-03-14 20:38:23 -07:00
Ian Eure
670c723676 gnu: librewolf: Update to 148.0.2-2 [security-fixes].
Contains fixes for:

CVE-2026-3845: Heap buffer overflow in the Audio/Video: Playback
               component in Firefox for Android
CVE-2026-3846: Same-origin policy bypass in the CSS Parsing and
               Computation component
CVE-2026-3847: Memory safety bugs fixed in Firefox 148.0.2

* gnu/packages/librewolf.scm (librewolf): Update to 148.0.2-2.

Change-Id: Id3868e10d38f5f111bd00bc140a9dc64f132caa9
2026-03-14 16:38:05 -07:00
Dariqq
3bfe96cc49 gnu: dmd: Fix tests on 32bit systems.
* gnu/packages/dlang.scm (dmd-bootstrap)[#:phases]: In 'patch-tests skip a
test on 32bit systems that tries to execute 64bit executable.

Change-Id: If87b95b63ac145865e7a8dcf2a219d6bd055981f
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 22:07:05 +01:00
Danny Milosavljevic
afa8b9ae47 gnu: Fix module cycle.
Fixes: guix/guix#7159

* gnu/packages/rust-sources.scm (codex, codex-acp): Move to...
* gnu/packages/codex.scm (codex, codex-acp): ...here.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add file.

Change-Id: Ic158d97cb9f97655a72ea58d16adb102dbe4d5ea
2026-03-14 21:51:16 +01:00
Ivan Vilata-i-Balaguer
ed9e734518 gnu: quodlibet: Add GObject native input for tests.
This avoids the error "Typelib file for namespace 'xlib', version '2.0'
not found" during the check phase.

* gnu/packages/music.scm (quodlibet)[native-inputs]:
Add gobject-introspection.

Change-Id: Ic54533860946ae4698747fab38a8c22a40f2dbc4
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 21:41:58 +01:00
Andreas Enge
358794b7d7 gnu: libmedfile: Switch to gexps.
* gnu/packages/engineering.scm (libmedfile)[arguments]: Switch to gexps.

Change-Id: If33051d047bc046a4e62f5fefdcbb7672a62069b
2026-03-14 21:38:53 +01:00
Andreas Enge
9cd60969f7 gnu: libmedfile: Update to 6.0.1.
* gnu/packages/engineering.scm (libmedfile): Update to 6.0.1.
[source]: Update URL.
[inputs]: Remove hdf5-1.10; add hdf5 and zlib.

Change-Id: I90592d780f3e58ca9bcc1de8c018a0369358b9fd
2026-03-14 21:35:25 +01:00
Laura Kirsch
d68439a78b gnu: Add jkqtplotter.
* gnu/packages/qt.scm (jkqtplotter): New variable.

Change-Id: I5a7e15242fdc43a30ab52fb2672342230baba5d6
Co-authored-by: Andreas Enge <andreas@enge.fr>
2026-03-14 21:09:22 +01:00
Andreas Enge
c2841810b9 gnu: Deprecate miniupnpc-next.
* gnu/packages/upnp.scm (miniupnpc-next): Deprecate package by miniupnpc.

Fixes: guix/guix#6688
Change-Id: I005e4546d33cff78d2065edec377434d04491696
2026-03-14 20:47:27 +01:00
Janneke Nieuwenhuizen
be7e3c6c67 gnu: guix: Update to 1.5.0-2.520785e315e.
* gnu/packages/package-management.scm (guix): Update to 1.5.0-2.520785e315e.

Change-Id: I940f277798c345a9b38ba82c1263f253b844f449
Fixes: #6947
2026-03-14 18:56:41 +01:00
Tomas Volf
9232ada7cd gnu: guile-irregex: Update to 0.9.12.
* gnu/packages/guile-xyz.scm (guile-irregex): Update to 0.9.12.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:43:50 +01:00
Tomas Volf
98d58347ee gnu: perl-finance-quote: Update to 1.68.
* gnu/packages/web.scm (perl-finance-quote): Update to 1.68.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:32:09 +01:00
Tomas Volf
d1776bd7ad gnu: conmon: Update to 2.2.1.
With the update we can now enable at least some of the upstream tests.

* gnu/packages/containers.scm (conmon): Update to 2.2.1.
[arguments]{#:tests?}: Do not set.
{#:phases}: Drop set-env, add prepare-tests.
[native-inputs]: Add bats, go-md2man, socat.

Change-Id: If8543c33965d250c6f0e8805e24b246b8ae469f9
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:25:15 +01:00
Tomas Volf
c934a69a96 services: apcupsd-event-handlers: Fix G-expressions.
There was one level of parentheses too much, leading to errors when the script
was invoked due to trying to apply e.g., 0 or #t.  So either use begin, or
strip one level, as appropriate.

* gnu/services/power.scm (apcupsd-event-handlers): Fix all G-expressions.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:19:45 +01:00
Tomas Volf
fe9340179b gnu: buildah: Update to 1.43.0.
* gnu/packages/containers.scm (buildah): Update to 1.43.0.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:18:22 +01:00
Leo Nikkilä
f4298f390b gnu: audit: Build with aarch64 and arm support.
* gnu/packages/admin.scm (audit)[arguments]<#:configure-flags>: Add
"--with-aarch64" when building for aarch64. Similarly for armhf.

Change-Id: I7577fb74f879cb560e21801cbe9e214ce3419e09
Co-authored-by: Andreas Enge <andreas@enge.fr>
2026-03-14 16:11:05 +01:00
Ludovic Courtès
29f630cb3e doc: Reintroduce mention of ‘bug-reference-mode’.
* doc/contributing.texi (Emacs): Add @unnumberedsubsubsec commands.  Add
“Referencing Bug Reports” section.

Change-Id: I21d7ecc022c00fc4d4cecf2273b1d46d8e770195
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6614
2026-03-14 16:07:35 +01:00
Ludovic Courtès
cb9f187cc1 doc: Document Emacs-Guix for development.
* doc/contributing.texi (Emacs): Document Emacs-Guix.

Change-Id: I921f77425706709e49094ee96b28e29e29ad6878
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-14 16:07:34 +01:00
Ludovic Courtès
8926bfb5d0 doc: Add references to “The Perfect Setup”.
* doc/guix.texi (Defining Packages, Using the Configuration System): Add cross
reference to “The Perfect Setup”.
* doc/guix-cookbook.texi (A Scheme Crash Course): Likewise.

Change-Id: If62960ffc01aadf9143b3816f4702f30b8052b90
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-14 16:07:34 +01:00
Ludovic Courtès
4e78643fa7 doc: Move “Guile Studio” and “Vim and NeoVim” under “The Perfect Setup”.
* doc/contributing.texi (The Perfect Setup): Add introduction.  Move former
body to …
(Emacs): … this.
(Alternative Setups): Remove.
(Guile Studio, Vim and NeoVim): Move under “The Perfect Setup”.  Change
judgmental sentence.

Change-Id: I149d418ac17a2283ad3452213b7425be4a8893f4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-14 16:07:34 +01:00
Ludovic Courtès
5b6b54c95c doc: Remove “Viewing Bugs within Emacs”.
This is a followup to d499253d47 and related
commits.

* doc/contributing.texi (Viewing Bugs within Emacs): Remove.
(Debbugs User Interfaces): Refer to the ‘debbugs-ug’ manual.

Change-Id: Idddff940302efe5689c8b459e0b141acaae74395
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-14 16:07:34 +01:00
Ludovic Courtès
c917ece6d9 remote: Print output and error stream in ‘remote-eval’.
Previously, anything written by the remote process to its output and error
ports was lost.  Now it’s properly transferred and displayed.

* guix/remote.scm (trampoline): Direct current output and error ports to a
string output port; return the port’s content in addition to the return value
of ‘primitive-load’.
(%remote-eval): Expect output/error string from ‘read-repl-response’ and
display it line by line.

Fixes: guix/guix#7088
Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I73bc81a08626b3204136b6f1568130f9895d56e3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7092
2026-03-14 16:07:34 +01:00
Reza Housseini
fd76b64acd gnu: Add python-simple-slurm.
* gnu/packages/parallel.scm (python-simple-slurm): New variable.

Change-Id: I60cbef2eb54d2fd667b866ee977ef34c095f0268
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
Merges: #3890
2026-03-14 16:07:34 +01:00
Anderson Torres
78291f7cc6 gnu: kmscon: Update to 9.3.0.
* gnu/packages/terminals.scm (kmscon): Update to 9.3.0.

Change-Id: I00525f29370ffa45ab568bd4ffb8058bfad037b0
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #5889
2026-03-14 16:07:34 +01:00
Anderson Torres
d1522cf229 gnu: libtsm: Update to 4.4.1.
* gnu/packages/terminals.scm (libtsm): Update to 4.4.1.

Change-Id: I456ae284223ae287f6cf6739c7c2ed340ea0fce6
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
2026-03-14 16:07:33 +01:00
Yelninei
d981460e43 gnu: texinfo-7: Actually fix cross compiling.
Followup to fdbe8b80a8.

* gnu/packages/texinfo.scm (texinfo-7)[#:configure-flags]: Disable perl
extension when cross-compiling.
[#:phases]: Remove 'build-native-tools phase.

Change-Id: I87a5025b2ce51aeeafc7011e877bc70aa858f6b2
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7086
2026-03-14 16:07:33 +01:00
Jake Coble
a0424a2955 gnu: Add ianny.
* gnu/packages/rust-apps.scm (ianny): New variable.
* gnu/packages/rust-crates.scm: Add crates for ianny.

Merges guix/guix!7094

Change-Id: I5c6e1ac1335cd26f122ebd64d974ac4ffc6b7fbf
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-14 16:05:24 +01:00
Sughosha
a863c41caf gnu: plasma: Move bolt, fwupd and packagekit to inputs.
They are only to be used by the plasa-desktop-service-type and does not need to
be in a profile.

* gnu/packages/kde-plasma.scm (plasma)[propagated-inputs]: Move bolt, fwupd and
packagekit to ...
[inputs]: ...here.

Change-Id: I8c624fb19037ef4be0faa8708df857feb802d495
2026-03-14 20:15:21 +05:30
Sughosha
249f30462b services: plasma-desktop: Enable udev configurations.
* gnu/services/desktop.scm (plasma-udev-configurations): New variable.
(plasma-desktop-service-type): Extend udev-service-type with it.

Change-Id: Ifcf08c731b1173c9c811b22744072538e4df7e36
2026-03-14 20:15:20 +05:30
Sughosha
4b58dad42b services: plasma-desktop: Adjust indentation.
* gnu/services/desktop.scm (plasma-polkit-settings): Reindent comments.
(plasma-dbus-service): Ditto.

Change-Id: I67677e34732faf3aa0954f183562a0fc210b5fcd
2026-03-14 20:15:19 +05:30
Ashish SHUKLA
a695af2308 gnu: weechat: Update to 4.8.2
* gnu/packages/irc.scm (weechat): Update to 4.8.2.

Change-Id: I1cf8c687e66423be1d5d2b2a2e2294353c55dbbd
2026-03-14 19:55:00 +05:30
Cayetano Santos
18ad7edfef gnu: lepton-eda: Refresh package details.
* gnu/packages/electronics.scm (lepton-eda)[synopsis, home-page]:
Update.

Change-Id: I173d65486a8b16a86267de7134d021e84e41f321
2026-03-14 14:05:44 +01:00
Cayetano Santos
cbf6f04a9a gnu: lepton-eda: Move to electronics.
* gnu/packages/engineering.scm (lepton-eda): Move from here ...
* gnu/packages/electronics.scm: ... to here.

Change-Id: I3f84d463073478956267132542398fba1b0d3c36
2026-03-14 14:00:01 +01:00
Cayetano Santos
12053f48d8 gnu: horizon-eda: Refresh package details.
* gnu/packages/electronics.scm (horizon-eda)[synopsis, home-page]:
Update.

Change-Id: Ic515cd0b9c50c9426f1d23932fc7c879d2054930
2026-03-14 13:26:56 +01:00
Cayetano Santos
8f229b8fa5 gnu: horizon-eda: Update to 2.7.2.
* gnu/packages/electronics.scm (horizon-eda): Update to 2.7.2.

Change-Id: I05be75fb1573b4bdfc2e0005d37fbd66c48f4ed7
2026-03-14 13:03:46 +01:00
Cayetano Santos
d5d7474992 gnu: horizon-eda: Move to electronics.
* gnu/packages/engineering.scm (horizon-eda): Move from here ...
* gnu/packages/electronics.scm: ... to here.

Change-Id: I8ec6ebcc5bf33dd69a0bb8d6aafcb5ba4031f150
2026-03-14 12:58:49 +01:00
Thomas Kramer
e15407fc8e gnu: Add charlib.
* gnu/packages/electronics.scm (charlib): New variable.

Merges guix/guix!5472

Change-Id: I97833d98181546422bd4578845f8d27a14110de3
Modified-by: Cayetano Santos <csantosb@inventati.org>
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-14 12:42:56 +01:00
Anderson Torres
a395def329 news: Add 'pt' translation.
* etc/news.scm: Add Portuguese translation for GNOME 48 entry.

Change-Id: I9ac3efe14a3025c0375aceabbf03321cdce31a0a
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2026-03-14 12:29:15 +01:00
Ludovic Courtès
650e69784d doc, gnu: Update URL of several packages formerly at notabug.org.
The URL change for these 5 packages was announced at
<https://lists.gnu.org/archive/html/guile-user/2026-03/msg00000.html>.

* doc/contributing.texi (Requirements): Update URLs.
* gnu/packages/gnupg.scm (guile-gcrypt)[home-page]: Update.
* gnu/packages/guile.scm (guile-sqlite3)[home-page]: Update.
(guile-zlib)[source]: Update URL and hash.
[home-page]: Update.
(guile-lzlib)[home-page]: Update.
(guile-zstd)[home-page]: Update.
* m4/guix.m4 (GUIX_CHECK_GUILE_SQLITE3): Update commit URL.

Merges guix/guix!7069

Change-Id: Ic587d3e2dcd931a44c007d9cdcd0b20e771be33b
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-14 12:14:49 +01:00
Danny Milosavljevic
6f3467de97 gnu: emacs-buttercup: Scope native-comp trampoline workaround to spy-on.
* gnu/packages/patches/emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch: New file.
* gnu/packages/emacs-build.scm (emacs-buttercup)[source]: Add it.
* gnu/local.mk (dist_patch_DATA): Add it.

Fixes: guix/guix#6927
Change-Id: I52d48090e16ce4e56839e151632d266848ec4073
2026-03-14 12:10:14 +01:00
Denis 'GNUtoo' Carikli
9390336775 gnu: vlc: add VNC support.
This enables VLC to view VNC sessions with 'vlc vnc://localhost:5900'.

* gnu/packages/video.scm (vlc)[inputs]: add libvnc.

Change-Id: Ia03fd6e6336cb893c0556f35460e4234a73dda6e
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-14 11:49:21 +01:00
Artyom V. Poptsov
cd29889ba4 gnu: portablexdr: Fix build.
* gnu/packages/gnome.scm (portablexdr): Fix build.
[native-inputs]: Add bison and flex.
[arguments] <#:phases>: Add patch-rpcgen-parse phase.

Change-Id: I011e403246a8ae8bcbb4805ce8b186f95b830420
2026-03-14 12:01:56 +03:00
Kjartan Oli Agustsson
5b4949858a gnu: emacs-calibre: Update to 1.5.2.
* gnu/packages/emacs-xyz.scm (emacs-calibre): Update to 1.5.2.

Merges guix/guix!7117

Change-Id: I44d146c714841f60ca48d2b639fd35f4505a2222
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-14 08:28:09 +01:00
Danny Milosavljevic
6e1866442e gnu: impass: Support sway.
* gnu/packages/password-utils.scm (impass)[inputs]: Add python-i3ipc.

Change-Id: Iab278b1da7af90923c6ab8acd1a2978f82c9a3a7
2026-03-14 05:21:12 +01:00
Ivan Vilata-i-Balaguer
89480bfd84 gnu: impass: Fix GTK and GObject inputs.
* gnu/packages/password-utils.scm (impass): Fix inputs.
[inputs] Replace gtk+ with gtk; add gobject-introspection.

Change-Id: I41c687e7ae0837afc27c4574e0c3bb176f25986c
2026-03-14 05:12:23 +01:00
Danny Milosavljevic
ad9ca26606 gnu: codex, codex-acp: Drop file_lock patches; enable network-proxy.
* gnu/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch,
gnu/packages/patches/rust-codex-0.98.0-core-file-lock.patch,
gnu/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Unregister them.
* gnu/packages/rust-sources.scm (rust-codex-0.0.0.785c0c43)[source]<patches>:
Remove file-lock patches.
(rust-codex-0.98.0)[source]<patches>: Likewise.
[arguments]<#:cargo-package-crates>: Add
codex-network-proxy.
* gnu/packages/rust-apps.scm (codex)[source]<patches>: Remove file-lock
patches.
[arguments]<#:cargo-install-paths>: Add network-proxy.
<#:cargo-package-crates>: Add codex-network-proxy.
(codex-acp)[arguments]<#:rust>: Delete.
<#:cargo-test-flags>: Remove override.
* gnu/packages/patches/codex-0.98.0-remove-patch-sections.patch: Stop
excluding network-proxy from workspace members.

Change-Id: Iabc65a4ca2e8cc5801933a74a2b53b9bce404102
2026-03-14 05:01:53 +01:00
Maxim Cournoyer
54225ed9ea gnu: vlc: Use latest ffmpeg.
* gnu/packages/video.scm (vlc) [inputs]: Replace ffmpeg-6 with ffmpeg.

Change-Id: I6ae22d7b19f4e88e92b25fc67bb3806289ccb36f
2026-03-14 12:05:51 +09:00
Simen Endsjø
60ba981d26 gnu: lisp-xyz: Shinmera repositories moved from GitHub to Codeberg.
* gnu/packages/lisp-xyz.scm: Change references from github.com and
github.io to codeberg.org and shinmera.com for Shinmeras repositories.

Change-Id: I636cb58250e0c144f6d11191609c1eb33afc62df
Signed-off-by: jgart <jgart@dismail.de>
2026-03-13 17:50:00 -04:00
Gabriel Wicki
f8e3115edc gnu: nicotine+: Fix build.
* gnu/packages/nicotine.scm (nicotine+) [arguments] {check}: Set $HOME
to a writable location.
[inputs] Replace python-pycairo with gobject-introspection.

Merges guix/guix!7115

Change-Id: I302224d423f9ae1fbc630433cc65ec7c598a01cc
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 21:17:00 +01:00
Gabriel Wicki
75ea9cb664 etc: snippets: Update python to pyproject build system.
The snippets still refer to the outdated python-build-system which
should not be encouraged to use anymore.

* etc/snippets/yas/scheme-mode/guix-package (build-system): Replace
python-build-system with pyproject-build-system.

Merges guix/guix!7100

Change-Id: Ic7d4b298c922fbea75b0e2ae341fee8a5ab0543c
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 20:50:13 +01:00
Cayetano Santos
706541d384 gnu: genimage: Move to flashing-tools.
* gnu/packages/genimage.scm: Remove.
* packages/patches/genimage-mke2fs-test.patch: Remove.
* gnu/local.mk (GNU_SYSTEM_MODULES): Unregister module.
(dist_patch_DATA): Unregister patch.
* po/packages/POTFILES.in: Unregister module.
* gnu/packages/flashing-tools.scm (genimage): Add variable.
* gnu/packages/image.scm: Update used module.

Merges guix/guix!7045

Change-Id: Iaeafca2b63bcd92f588894543316b968f45c577c
2026-03-13 19:29:31 +01:00
Cayetano Santos
2f61b27d36 .forgejo: pull_request_template: Fix empty line.
* .forgejo/issue_template/pull_request_template.md: Remove empty line.

Change-Id: I58cbb33aed8cd452800c22289f539e2c1968f908
2026-03-13 19:09:43 +01:00
Cayetano Santos
7d622d4ded .forgejo: pull_request_template: Refer to tests.
* .forgejo/issue_template/pull_request_template.md: Mention tests.

Change-Id: Ia53dda30adf33c26adf90551cc535452698f5b72
2026-03-13 19:05:02 +01:00
jgart
7db0b45720 gnu: trealla: Update to 2.91.5.
* gnu/packages/prolog.scm (trealla): Update to 2.91.5.

Change-Id: Ieb40be1e5466ae2480722f75d5edba4a02847ee7
2026-03-13 13:16:36 -04:00
Sharlatan Hellseher
3ec1e8297d Revert "gnu: Remove python-virtualenv-for-hatch."
This reverts commit b264415711.

Hatch still needs a lower version:

  ...checking requirements: ERROR: hatch==1.9.7
  ContextualVersionConflict(virtualenv
  20.29.1 (/gnu/store/<...>-python-virtualenv-20.29.1/lib/python3.11/site-packages),
  Requirement.parse('virtualenv<20.26.0'), {'hatch'})

Change-Id: I8da2372dc595bb62629581193540ef8bc17295e8
2026-03-13 15:46:31 +00:00
Andreas Enge
685d46774d gnu: wxwidgets: Update to 3.2.9.
* gnu/packages/wxwidgets.scm (wxwidgets): Update to 3.2.9.

Change-Id: I71b1974ed9653de5ee0f0b0eaa1da115d300b81b
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:43:38 +00:00
Andy Tai
a7ca954df5 gnu: units: Update to 2.26.
* gnu/packages/maths.scm (units): Update to 2.26.

Merges: https://codeberg.org/guix/guix/pulls/6835
Change-Id: I48946549f1938e51bc390c5e36a3546a1453966a
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:42:28 +00:00
Carlos Durán Domínguez
c2dcea8665 gnu: Update showmethekey to 1.21.0.
* gnu/packages/video.scm (showmethekey): Update to 1.21.0.

Merges: https://codeberg.org/guix/guix/pulls/7036
Change-Id: I0ccbe85e0028862c315ebb32fb8694a07bafed2d
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:41:10 +00:00
Hugo Buddelmeijer
61ba412769 gnu: grub: Fix build for the 64bit Hurd.
Patch is unnecessary after grub is upgraded to 2.14 in
https://codeberg.org/guix/guix/pulls/6457.

* gnu/packages/bootloaders.scm (grub)[arguments]: Remove patch.
* gnu/packages/patches/grub-hurd64.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Unregister it.

Fixes: guix/guix#7106
Merges: https://codeberg.org/guix/guix/pulls/7110
Change-Id: I288ae85f006e44e48e666123eb45cee9f1693026
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:27:38 +00:00
Jake Forster
07992d2593 gnu: orthanc-postgresql: Update to 10.0.
* gnu/packages/medical.scm (orthan-postgresql): Update to 10.0.

Change-Id: I60c0a418bf336f6ec6ec30ffeee5f7060b2f7676
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:22:13 +00:00
Jake Forster
f799b7fc1e gnu: orthanc: Update to 1.12.10.
* gnu/packages/medical.scm (orthanc): Update to 1.12.10.
[arguments]<#:phases>{remove-localtime-requirement}: Update substitution.
[inputs]: Replace boost-1.83 with boost.

Change-Id: I08f72fe6fe3f9dde590b791d5ed03684d081fea6
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:22:13 +00:00
Sharlatan Hellseher
3d270f4df2 gnu: gvisor-tap-vsock: Update to 0.8.8.
* gnu/packages/containers.scm (gvisor-tap-vsock): Update to 0.8.8.
[native-inputs]: Remove go-github-com-pkg-errors; add
go-github-com-foxcpp-go-mockdns, go-github-com-inetaf-tcpproxy, and
go-gopkg-in-yaml-v3.

Change-Id: I4faca7792df86c2dc32feff741eb77bbce150870
2026-03-13 15:16:52 +00:00
Sharlatan Hellseher
e416c65984 gnu: cni-plugins: Update to 1.9.0.
* gnu/packages/containers.scm (cni-plugins): Update to 1.9.0.
[arguments] <import-path>: Provide "..." to build all available commands
with default {build} phase.
<unpack-path>: Use it.
[phases]{build, install}: Use default phases.

Change-Id: I2cb217954b276925212fd676267bcf2ecdea6a9f
2026-03-13 15:08:44 +00:00
Foster Hangdaan
78b59a2e9d gnu: podman: Update to 5.8.1.
* gnu/packages/containers.scm (podman): Update to 5.8.1.

Merges: https://codeberg.org/guix/guix/pulls/7068
Change-Id: I5d20b0b2b92cb08c16c739e09c461a7c69a15d4f
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 15:08:40 +00:00
Sharlatan Hellseher
b264415711 gnu: Remove python-virtualenv-for-hatch.
* gnu/packages/python-xyz.scm (python-virtualenv-for-hatch): Delete variable.

Change-Id: I7fdf1e9c6062dda2dee0d825d1e5951b84e6eede
2026-03-13 13:37:08 +00:00
Hugo Buddelmeijer
2c43dcf299 gnu: stiff: Move to (gnu packages astronomy).
* gnu/packages/image-processing.scm (stiff): Move from here...
* gnu/packages/astronomy.scm: ...to here.

Change-Id: I6122cad526dbe0ef70cb489427ba2ef7cec344bb
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 12:26:17 +00:00
Hugo Buddelmeijer
a2cfd46081 gnu: stiff: Fix build by using CFLAGS=-fcommon.
* gnu/packages/image-processing.scm (stiff): Fix build.
[source]: Switch to git-fetch.
[arguments]<#:configure-flags>: Add CFLAGS=-fcommon.
[home-page]: Update redirect.

Merges: https://codeberg.org/guix/guix/pulls/7035
Change-Id: I344650f0b4b03a2101c790e483ff9afc54b4065c
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-13 12:25:50 +00:00
Sharlatan Hellseher
1a3f2eebcb gnu: python-simplesat: Move to maths.
* gnu/packages/python-xyz.scm (python-simplesat): Move from here ...
* gnu/packages/maths.scm: ... to here.

Change-Id: I3f2f832e3c9099705800aa88c07913a407c722b4
2026-03-13 12:23:20 +00:00
Sharlatan Hellseher
82467ac1cd gnu: python-zipfile2: Move to python-compression.
* gnu/packages/python-xyz.scm (python-zipfile2): Move from here ...
* gnu/packages/python-compression.scm: ... to here.

Change-Id: I70701db8244adc10b4c5777e55fed042bf3a06d5
2026-03-13 12:23:19 +00:00
Sharlatan Hellseher
665ad66134 gnu: packages/electronics: Sort used modules.
* gnu/packages/electronics.scm: Sort #:use-module alphabetically, remove
duplicated `(gnu packages maths)'

Change-Id: I8b68de277716c94576cf3b7f8e41a3fd8d18bfc5
2026-03-13 12:23:19 +00:00
Gabriel Wicki
7267c31058 gnu: electronics: Delete whitespace.
* gnu/packages/electronics.scm: Delete whitespace.

Change-Id: I698071a1422ea7c2c5b277965d73cf75af93d11b
Signed-off-by: Gabriel Wicki <gabriel@erlikon.ch>
2026-03-13 12:55:45 +01:00
Guillaume Le Vaillant
b272a19ad5 gnu: bitcoin-cash-node: Update to 29.0.0.
* gnu/packages/finance.scm (bitcoin-cash-node): Update to 29.0.0.

Change-Id: I392cdcd1264ce6bacc37a28e36ed81607a2560fc
2026-03-13 11:51:38 +01:00
Guillaume Le Vaillant
1d831f0d44 gnu: monero-gui: Update to 0.18.4.7.
* gnu/packages/finance.scm (monero-gui): Update to 0.18.4.7.

Change-Id: I708c062fce11f07629b847613582c6fa778c0d2a
2026-03-13 11:51:38 +01:00
Guillaume Le Vaillant
a13f9f1514 gnu: p2pool: Update to 4.14.
* gnu/packages/finance.scm (p2pool): Update to 4.14.

Change-Id: I4525e802f68a1c7a64dc85b25ae673209754cfd9
2026-03-13 11:51:38 +01:00
Nguyễn Gia Phong
c46d6a70b6 gnu: Remove arcan-wayland.
This package was deprecated in 2023.

References: e68581080e ("gnu: arcan-wayland: Deprecate in favor of arcan.")

* gnu/packages/arcan.scm (arcan-wayland): Delete variable.

Merges guix/guix!7095

Change-Id: I88bd4ea56ccc0291747e04e030ea714804bd1fee
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 11:45:08 +01:00
Nguyễn Gia Phong
cab232d5ac gnu: xarcan: Update to 0.7.1.
* gnu/packages/arcan.scm (xarcan): Update to 0.7.1.
[sources]: Update url.
[inputs]: Add xcb-util-image.
[description]: Fix mas column.

Fixes guix/guix#7054
Merges guix/guix!7095

Change-Id: I80d82b7550454493245c5a6e7a52e4389a223b21
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 11:45:08 +01:00
Nguyễn Gia Phong
08b8cb91fd gnu: durden: Update to 0.6.3.
* gnu/packages/arcan.scm (durden): Update to 0.6.3.
[sources]: Update url.

Fixes guix/guix#7054
Merges guix/guix!7095

Change-Id: I9ac1edc352b24a4cfdc441064681d58bf70bfa66
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 11:44:46 +01:00
Sergio Pastor Pérez
8143b0a37f gnu: imhex: Update to 1.38.1.
* gnu/packages/hexedit.scm (imhex): Update to 1.38.1.
[source]: Adjust snippet to not delete a submodule.
[arguments] <#:phases>: Adjust `fix-paths' phase.
[inputs]: Add libssh2, openssl and update glfw to version 3.4.

Merges guix/guix!7097

Change-Id: I21f71b3c56c4781b8121a51922824bf5534c2e46
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 11:38:23 +01:00
Wilko Meyer
14c46566c3 gnu: ddcui: Update to 0.6.0.
* gnu/packages/hardware.scm (ddcui): Update to 0.6.0.

Change-Id: I9bd33e4cc15c61660a3d8909ba6c7e3ef0f2a83e
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-13 11:27:59 +01:00
Wilko Meyer
06fccbd078 gnu: ddcutil: Update to 2.2.5.
* gnu/packages/hardware.scm (ddcutil): Update to 2.2.5.

Change-Id: I88cf29d689257235bf757253fb2a903b4901e548
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-13 11:27:57 +01:00
Danny Milosavljevic
d6567a6a17 gnu: emacs-org-contacts: Remove unused propagation.
Follow-up to fe1875c827

* gnu/packages/emacs-xyz.scm (emacs-org-contacts)[propagated-inputs]: Remove
emacs-org.

Change-Id: Ia20d7a57ac3931f58b9891c5996306f8b3fa61cb
2026-03-13 11:10:31 +01:00
Danny Milosavljevic
2a0428e3fc gnu: rust-codex@0.98.0: Add modules.
Follow-up to 279410efb8.

* gnu/packages/rust-sources.scm (rust-codex-0.98.0)[source]<#:modules>: Add.

Change-Id: Iaf5f8785d960023feb05886011620dba602c6ca9
2026-03-13 11:09:25 +01:00
Cayetano Santos
1220325857 gnu: python-burr: Update to 0.42.0.
* gnu/packages/machine-learning.scm (python-burr): Update to 0.42.0.

Change-Id: I63c16dcb5b42cdc898b411a71606acd9becd109a
2026-03-13 11:01:09 +01:00
Sergey Trofimov
fe1875c827 gnu: emacs-org-contacts: Update to 1.3.
* gnu/packages/emacs-xyz.scm (emacs-org-contacts): Update to 1.3.

Change-Id: I8229ad73b498b5f50c696cd8728d1805786c8a48
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2026-03-13 10:55:23 +01:00
Danny Milosavljevic
279410efb8 gnu: Add codex.
* gnu/packages/patches/codex-0.98.0-remove-patch-sections.patch: New file.
* gnu/packages/patches/rust-codex-0.98.0-test-shebangs.patch: New file.
* gnu/packages/patches/rust-codex-0.98.0-test-timeout.patch: New file.
* gnu/packages/patches/rust-codex-0.98.0-windows-sandbox-protocol-version.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add references to the patches.
* gnu/packages/rust-apps.scm (codex): New variable.
* gnu/packages/rust-crates.scm: Add crates.
* gnu/packages/rust-sources.scm (rust-codex-0.98.0): New variable.

Change-Id: Ic4af28034cbae83a7e212ee328cbdc25bce31ef0
2026-03-13 10:47:43 +01:00
Cayetano Santos
7986689cb6 gnu: ctranslate2: Update to 4.7.1.
* gnu/packages/machine-learning.scm (ctranslate2): Update to 4.7.1.

Change-Id: I8ddf3d1c860e2a56e0d4177fda951e7b19bbaab2
2026-03-13 10:44:47 +01:00
Andreas Enge
d86bff271a gnu: openfoam-org: Fix build.
* gnu/packages/simulation.scm (openfoam-org)[inputs]: Replace vtk by
vtk-9.5, which fixes the build; and fmt-11 by fmt, which are the same.

Merges guix/guix!7052
Fixes: guix/guix#3783

Change-Id: Ifac2256ce0f3541fb79a4d89c9affeee22d73fe1
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 10:05:40 +01:00
Andy Tai
007741a6f7 gnu: koboldcpp: Remove openblas from inputs.
* gnu/packages/machine-learning.scm (koboldcpp) [inputs]: Delete
openblas.

Merges guix/guix!7072

Change-Id: Id5f7ef7485f9e7458e6869f1ff78b12603294e07
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2026-03-13 08:56:18 +01:00
Maxim Cournoyer
6048910a4b gnu: grub-ieee1275: Limit supported systems to those where tests pass.
* gnu/packages/bootloaders.scm (grub-ieee1275)
[supported-systems]: Remove i686-linux, x86_64-linux, i586-gnu and x86_64-gnu.

Change-Id: Ibdc404da1865b2b063419190fdb5ce5d74792ee2
2026-03-13 14:58:44 +09:00
Danny Milosavljevic
9d131cf9ce gnu: grub-efi32: Fix cross-compilation.
* gnu/packages/bootloaders.scm (grub-efi32)[arguments]<#:phases>
{patch-ovmf-path}: Modify.

Change-Id: I43c4854c08f9e932c91b8f895878a1c1a95146cd
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-03-13 14:58:19 +09:00
Danny Milosavljevic
9a47c5f06a gnu: grub: Update to 2.14.
* gnu/packages/bootloaders.scm (make-grub): Update to 2.14.
[arguments]
<#:configure-flags>: Add -Wno-error to CFLAGS when building with clang.
<#:make-flags>: Add TARGET_IMG_BASE_LDOPT.
<#:phases>{patch-ovmf-path}: Fix OVMF paths.
[inputs]: Add libtasn1.
(grub-efi32)[arguments]<#:phases>
{patch-ovmf-path}: Adjust.
(grub-coreboot)[arguments]<#:phases>
{disable-broken-tests}: Add asn1_test.

Change-Id: I902c27ea2dd1be23560c64cd978226d94dfe72ff
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2026-03-13 14:58:19 +09:00
Maxim Cournoyer
61e11fdd91 gnu: make-grub: Streamline.
This hasn't been needed since ce362bc1f3.

* gnu/packages/bootloaders.scm (make-grub)
[native-inputs]: Do not provide a variant binutils for 32-bit systems.

Change-Id: I4a3f086ccf7e7e746c7a4d8290943b735f82779a
2026-03-13 14:58:19 +09:00
Maxim Cournoyer
66bdf01a27 gnu: qemu: Update to 10.2.1.
* gnu/packages/virtualization.scm (qemu): Update to 10.2.1.

Change-Id: I6d8f336dc4ca8c9fe43f9f804e91eba2809bb17c
2026-03-13 14:58:19 +09:00
Maxim Cournoyer
5c9626bb36 gnu: qemu-minimal: Fix build for systems lacking ipxe-qemu support.
* gnu/packages/virtualization.scm (qemu-minimal)
[#:phases] {dont-require-ipxe-firmware}: Adjust phase.

Change-Id: Id1aacebaea1f18cfa9106fe46e2f26719b48d68d
2026-03-13 14:58:19 +09:00
Noé Lopez
4966ea6de3 Add news entries for GNOME 48.
* etc/news.scm: Add news entry for GNOME update.
* NEWS: Mention GNOME update.

Merges: https://codeberg.org/guix/guix/pulls/7067
Change-Id: I6081f3aa703ba500ebf89c77be7807cd815913d8
Reviewed-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2026-03-13 03:48:46 +01:00
Noé Lopez
b52ce9041a GNOME 48 marker.
This is just a marker commit that the news entry can refer to.

Change-Id: I76cd2ff079f844cd4bd583fd4d8f8221a6a21219
Signed-off-by: Florian Pelz <pelzflorian@pelzflorian.de>
2026-03-13 03:39:23 +01:00
Sharlatan Hellseher
6ea5df94cf gnu: Add clasp-pathname-utils.
* gnu/packages/lisp-xyz.scm (clasp-pathname-utils): New variable.

Change-Id: I8c5a8bccf3348838128e1fc039995a8de1f5bd5b
2026-03-12 23:27:27 +00:00
Sharlatan Hellseher
c8f6f78e56 gnu: cl-radiance: Update to 2.1.2-4.8249b00.
* gnu/packages/lisp-xyz.scm (sbcl-radiance): Update to
8249b00388ffe1c7e516a148c8ea8e7d9bc4243c commit.
[source, home-page]: Project has been mibrated to CodeBerg.
[phases]{disable-quicklisp}: Remove phase.

Change-Id: Ifd7790664c214dc181152c5648d79c0fdc3605d3
2026-03-12 23:27:27 +00:00
Sharlatan Hellseher
9ee78c6796 gnu: cl-deploy: Update to 3.0.0-4.c9b869d.
* gnu/packages/lisp-xyz.scm (sbcl-deploy): Update to
c9b869d943d39fcddd8c4aa380995645bd2e3c0b commit.

Change-Id: Ib5ddd82be3d5b47bf9960017d0e70e2d74a16b67
2026-03-12 23:27:27 +00:00
Sharlatan Hellseher
b2ce49a331 gnu: cl-pathname-utils: Update to 1.1.0-5.c0aa51a.
* gnu/packages/lisp-xyz.scm (sbcl-pathname-utils): Update to
c0aa51ab78cb21581700d44deeed88a4743b6f13 commit.
[source, home-page]: Project has been mibrated to CodeBerg.

Change-Id: I186e6121ddae6bffeb108099609c516b6557fac3
2026-03-12 23:27:27 +00:00
Vagrant Cascadian
85c935291a gnu: linux-libre: Enable DMABUF kernel options.
* gnu/packages/linux.scm (default-extra-linux-options): Enable UDMABUF,
DMABUF_HEADS, DMABUF_HEAPS_SYSTEM and DMABUF_HEAPS_CMA.
2026-03-12 16:18:33 -07:00
Vagrant Cascadian
96f3b0e584 gnu: linux-libre-arm64-mnt-reform 6.19: New package.
* gnu/packages/linux.scm (linux-libre-arm64-mnt-reform-6.19): New variable.
2026-03-12 16:18:31 -07:00
Vagrant Cascadian
392e16605b gnu: Add reform-debian-packages-for-6.19.
* gnu/packages/linux.scm (reform-debian-packages-for-6.19): New variable.
2026-03-12 16:18:28 -07:00
Wilko Meyer
e5c98645a0 gnu: linux-libre-arm64-mnt-reform 6.12: Enable more FBCON options.
* gnu/packages/linux.scm (linux-libre-arm64-mnt-reform-6.12): Add kernel
configuration for FBCON rotation, CONFIG_FONTS, CONFIG_HIDRAW, and enable
fonts.

Change-Id: I55ad4fab0427c499097e98e17de04f1c2e6fe8b4
2026-03-12 16:18:26 -07:00
Wilko Meyer
4d2c9843f3 gnu: linux-libre-arm64-mnt-reform 6.18: Enable more FBCON options.
* gnu/packages/linux.scm (linux-libre-arm64-mnt-reform-6.18): Add kernel
configuration for FBCON rotation, CONFIG_FONTS, CONFIG_HIDRAW, and enable
fonts.

Change-Id: I62c7bd03e30d8cf8eb931e2999befb5acf8d1af2
2026-03-12 16:18:23 -07:00
Vagrant Cascadian
ae547c7606 gnu: linux-libre: Enable DMABUF kernel options.
* gnu/packages/linux.scm (default-extra-linux-options): Enable UDMABUF,
DMABUF_HEADS, DMABUF_HEAPS_SYSTEM and DMABUF_HEAPS_CMA as modules. Enable
DMABUF_MOVE_NOTIFY and DMABUF_HEAPS_CMA_LEGACY.
2026-03-12 16:18:20 -07:00
Wilko Meyer
df3dbf05e7 gnu: linux-libre 5.10: Update to 5.10.252.
* gnu/packages/linux.scm (linux-libre-5.10-version): Update to 5.10.252.
(linux-libre-5.10-pristine-source): Update hash.

Change-Id: I564813b80fca705cda0d27972d556261d12bb0a0
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:18 -07:00
Wilko Meyer
8d7155fcad gnu: linux-libre 5.15: Update to 5.15.202.
* gnu/packages/linux.scm (linux-libre-5.15-version): Update to 5.15.202.
(linux-libre-5.15-pristine-source): Update hash.

Change-Id: Ibbea707bace52b584d8d73283af9c1b1845a7700
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:15 -07:00
Wilko Meyer
23d9ea0275 gnu: linux-libre 6.1: Update to 6.1.166.
* gnu/packages/linux.scm (linux-libre-6.1-version): Update to 6.1.166.
(linux-libre-6.1-pristine-source): Update hash.

Change-Id: I86cc731cffa03915073446ce1f5a4ff6c6b4477b
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:12 -07:00
Wilko Meyer
5a9550f05f gnu: linux-libre 6.6: Update to 6.6.129.
* gnu/packages/linux.scm (linux-libre-6.6-version): Update to 6.6.129.
(linux-libre-6.6-pristine-source): Update hash.

Change-Id: Ief5f6695798d29b939a077bfaeced08a4d81db65
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:10 -07:00
Wilko Meyer
581031ba42 gnu: linux-libre 6.12: Update to 6.12.76.
* gnu/packages/linux.scm (linux-libre-6.12-version): Update to 6.12.76.
(linux-libre-6.12-pristine-source): Update hash.
(deblob-scripts-6.12): Update deblob-check hash.

Change-Id: I7fc23f29ef9ce4cacd55c9aa94fd8837845bb2a3
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:07 -07:00
Wilko Meyer
e81a4e7004 gnu: linux-libre 6.18: Update to 6.18.16.
* gnu/packages/linux.scm (linux-libre-6.18-version): Update to 6.18.16.
(linux-libre-6.18-pristine-source): Update hash.
(deblob-scripts-6.18): Update deblob-check hash.

Change-Id: I558ecc464b75507d02ce8c213caeaf65357f9836
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:05 -07:00
Wilko Meyer
08c22e8ae0 gnu: linux-libre 6.19: Update to 6.19.6.
* gnu/packages/linux.scm (linux-libre-6.19-version): Update to 6.19.6.
(linux-libre-6.19-pristine-source): Update hashes.
(deblob-scripts-6.19): Update deblob-check hash.

Change-Id: Ica2630c4a5faa07e6b87f0763a3291f0728a6cf7
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2026-03-12 16:18:01 -07:00
Foster Hangdaan
04637755e9 gnu: qtile: Downgrade to 0.33.0.
* gnu/packages/wm.scm (qtile): Downgrade to 0.33.0 which supports Python
3.11, the current Python version.

Merges: https://codeberg.org/guix/guix/pulls/6624
Change-Id: I7f9157e604512b3d03a54d60febded75c5c41c57
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-12 19:18:16 +00:00
Nicolas Graves
16a8b177f1 gnu: python-fastbencode: Update to 0.3.9.
* gnu/packages/python-xyz.scm (python-fastbencode): Update to 0.3.9.
[source]: Switch to git-fetch.
[arguments]<#:test-flags>: Refresh them.
<#:imported-modules, #:modules>: Use necessary modules.
<#:phases>: Add phase 'prepare-cargo-build-system.
[inputs]: Add maturin and bencode cargo-inputs.
[native-inputs]: Replace python-setuptools by python-setuptools-rust.
Add rust, rust:cargo, make-rust-sysroot.

* gnu/packages/rust-crates.scm: Record required crates.

Merges: https://codeberg.org/guix/guix/pulls/7057
Change-Id: Iedd3b3f90a4845b03ba18ffaad007ec3be16048b
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Reviewed-by: Efraim Flashner <efraim@flashner.co.il>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-12 19:18:15 +00:00
Evgeny Pisemsky
f3e14dfa74 gnu: python-mkdocs-material: Switch to git-fetch.
* gnu/packages/python-xyz.scm (python-mkdocs-material)
[source]: Switch to git-fetch.

Change-Id: I54f0236e716f6f4c56fc11c639f64b26c87fc5f7
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-12 19:18:15 +00:00
Evgeny Pisemsky
8a0495b6da gnu: python-mkdocs-material: Update to 7.3.6.
* gnu/packages/python-xyz.scm (python-mkdocs-material): Update to 7.3.6.
[arguments]: Fix path to lunr in phases.

Merges: https://codeberg.org/guix/guix/pulls/6964
Change-Id: Ifcf7599f364d3dc0debe79001ee134d47c4d2e45
Reviewed-by: Hugo Buddelmeijer <hugo@buddelmeijer.nl>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-12 19:18:15 +00:00
bdunahu
510baaaad8 gnu: Add python-meshtastic.
* gnu/packages/radio.scm (python-meshtastic): New variable.

Change-Id: I2c6ee6d02cfea3c0e300ef3ab29a246d68f6897b
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2026-03-12 19:18:15 +00:00
Cayetano Santos
c1868b0dff gnu: python-yamlcore-0.0.2: Rename to python-yamlcore.
* gnu/packages/python-xyz.scm (python-yamlcore-0.0.2): Deprecate and
move from here…
(python-yamlcore): …to here.  Update to 0.0.4.
[source]: Switch to git-fetch.
* gnu/packages/electronics.scm (librelane)[inputs]: Remove
python-yamlcore-0.0.2; add python-yamlcore.

Change-Id: I207c00a654c8d4964abc8d8441627a56a854eede
2026-03-12 20:12:36 +01:00
Cayetano Santos
ba55fa7ce6 gnu: librelane: Update to 3.0.0rc1.
* gnu/packages/electronics.scm (librelane): Update to 3.0.0rc1.

Change-Id: I152d9bfdc12b602c40e5603ff4663315aec9b633
2026-03-12 19:33:58 +01:00
Ricardo Wurmus
8c0aea2fbe gnu: python-decoupler: Update to 2.1.4.
* gnu/packages/bioinformatics.scm (python-decoupler): Update to 2.1.4.

Change-Id: I1fdc99e586340ae42530cc209d2e4fe9e22b2292
2026-03-12 14:51:12 +01:00
Ricardo Wurmus
158098977f gnu: python-cell2cell: Update to 0.8.4.
* gnu/packages/bioinformatics.scm (python-cell2cell): Update to 0.8.4.

Change-Id: I0210208e0d61f46a707e352d45c9246c473200d0
2026-03-12 14:51:11 +01:00
Ricardo Wurmus
38917f00de gnu: python-gseapy: Update to 1.1.12.
* gnu/packages/bioinformatics.scm (python-gseapy): Update to 1.1.12.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Update entry for
python-gseapy.

Change-Id: Ia912e4cb5aac93cb2aa523baccd9cc5bfbff6a6a
2026-03-12 14:51:11 +01:00
Cayetano Santos
eaed801e32 gnu: nextpnr: Update to 0.10.
* gnu/packages/patches/nextpnr-imgui.patch: Remove patch.
* gnu/local.mk (dist_patch_DATA): Unregister it.
* gnu/packages/electronics.scm (nextpnr): Update to 0.10.
[sources]<#:snippet>: Keep ’imgui and ’qtimgui.
<#:patches>: Delete.
[inputs]: Replace pybind11-2 by pybind11; delete qtimgui.
[arguments]: Add ’fix-test #:phase.
* gnu/packages/electronics.scm (nextpnr-cli)[inputs]: Restore.

Merges guix/guix!6057

Change-Id: I2beb8629967b20309051a7ab8c67528742d080cc
2026-03-12 14:13:54 +01:00
Cayetano Santos
8be660ea5e gnu: apycula: Update to 0.31.
* gnu/packages/electronics.scm (apycula): Update to 0.31.
[inputs]: Remove python-crc.
[propagated-inputs]: Add python-cattrs, python-crcmod, python-numpy,
python-msgpack, and python-msgspec.
[native-inputs]: Add python-setuptools-scm.

Merges guix/guix!6057

Change-Id: Ie5c8950a2632a168ed4686f744c06704495f5ddf
2026-03-12 14:11:30 +01:00
Cayetano Santos
7ca9795c58 gnu: prjpeppercorn: Update to 1.12.
* gnu/packages/electronics.scm (prjpeppercorn): Update to 1.12.
[inputs]: Remove boost-1.88; add boost.

Merges guix/guix!6057

Change-Id: I337b0861c2628267db77db7ad2f8533973a3e5ca
2026-03-12 14:11:23 +01:00
Cayetano Santos
41bcf04f85 gnu: prjtrellis: Update dependencies.
* gnu/packages/electronics.scm (prjtrellis)[inputs]: Replace boost-1.88
by boost; replace pybind11-2 by pybind11.

Merges guix/guix!6057

Change-Id: I345cd8d5e652f014c9becffa0d4cec0365a9d4ba
2026-03-12 14:11:16 +01:00
crai0
46b660ac0b gnu: Add cocogitto.
* gnu/packages/rust-apps.scm (cocogitto): New variable.
* gnu/packages/rust-crates.scm: Add crates for cocogitto.

Change-Id: I022acd6727e22adeff0df011e7d56c4653217b4f
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-12 14:59:05 +02:00
Spencer King
51ca2c0da1 gnu: Add deacon.
* gnu/packages/bioinformatics.scm (deacon): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Add entry for
deacon.

Change-Id: I148a0bdc56abf5dbe68a8cdf81f6fe2944645f4d
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-12 14:10:13 +02:00
Sharlatan Hellseher
391200d054 gnu: go-1.25: Update to 1.25.8 [security-fixes].
go1.25.8 (released 2026-03-05) includes security fixes to the
html/template, net/url, and os packages, as well as bug fixes to the go
command, the compiler, and the os package.

See: <https://github.com/golang/go/compare/go1.25.7...go1.25.8>,
<https://www.openwall.com/lists/oss-security/2026/03/06/1>

Containes fixes for:
CVE-2026-27142: URLs in meta content attribute actions are not escaped
                in html/template.
CVE-2026-25679: Incorrect parsing of IPv6 host literals in net/url.
CVE-2026-27139: FileInfo can escape from a Root in os.

* gnu/packages/golang.scm (go-1.25): Update to 1.25.8.

Change-Id: I01a80a78f20075fe6c05c46f97dfe35f770a99a0
2026-03-12 11:18:05 +00:00
Sharlatan Hellseher
ac0efb2c97 gnu: go-1.26: Update to 1.26.1 [security-fixes].
go1.26.1 (released 2026-03-05) includes security fixes to the
crypto/x509, html/template, net/url, and os packages, as well as bug
fixes to the go command, the go fix command, the compiler, and the os
and reflect packages.

See: <https://github.com/golang/go/compare/go1.26.0...go1.26.1>,
<https://www.openwall.com/lists/oss-security/2026/03/06/1>

Containes fixes for:
CVE-2026-27137: Incorrect enforcement of email constraints in
                crypto/x509.
CVE-2026-27138: Panic in name constraint checking for malformed
                certificates in crypto/x509.
CVE-2026-27142: URLs in meta content attribute actions are not escaped
                in html/template.
CVE-2026-25679: Incorrect parsing of IPv6 host literals in net/url.
CVE-2026-27139: FileInfo can escape from a Root in os.

* gnu/packages/golang.scm (go-1.26): Update to 1.26.1.

Change-Id: I1c014a334407d9ca927d9e403c8c7e92cad8fe1d
2026-03-12 11:17:56 +00:00
Efraim Flashner
952a8d75d8 gnu: git-cliff: Install manpage and shell completions.
* gnu/packages/version-control.scm (git-cliff)[arguments]: Add a phase
to generate and install the manpage and the shell completions.

Change-Id: Ib548fed6cd03f21c0dade2d773fcf8146638dc5b
2026-03-12 12:56:53 +02:00
Aaron Covrig
17f966389b gnu: Add git-cliff.
* gnu/packages/version-control.scm (git-cliff): New variable.
* gnu/packages/rust-crates.scm: Add dependencies for git-cliff.

Change-Id: I9369a4e2a94b46a0d8085f502159f5a87e671002
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-12 12:42:45 +02:00
Steve George
a1125cec7b gnu: jujutsu: Update to 0.39.0.
* gnu/packages/rust-apps.scm (jujutsu): Update to 0.39.0.
  [arguments]<cargo-test-flags>: skip test_push_updates_with_options.

Change-Id: I8d9dfa16856a67263167a3ef63def9e722f9176c
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-12 12:08:28 +02:00
Efraim Flashner
362fe5e09c gnu: rust-hashify-0.2.7.b787649: Make regular cargo source.
* gnu/packages/rust-crates.scm (rust-hashify-0.2.7.b787649): Rename to
rust-hashify-0.2.7.b787649-for-pimsync, use git-fetch.
(lookup-cargo-inputs): Adjust accordingly.
* gnu/packages/rust-sources.scm (rust-hashify-0.2.7.b787649): Remove
variable.

Change-Id: Ia2c68a8df078a35abf6b60ebdc526a2a006b0999
2026-03-12 12:04:00 +02:00
Cayetano Santos
cbfed3a6a5 gnu: openfpgaloader: Update to 1.1.1.
* gnu/packages/flashing-tools.scm (openfpgaloader): Update to 1.1.1.
[arguments]: Update ’install-rules #:phase.

Change-Id: Ia291e91534141f7c4eed6234d46a906debcaf7b9
2026-03-12 10:11:41 +01:00
Efraim Flashner
1eed2746e4 gnu: dmd-bootstrap: Use gdb/pinned.
* gnu/packages/dlang.scm (dmd-bootstrap)[native-inputs]: Replace gdb
with gdb/pinned.

Change-Id: I64c1ea0fbe6cfd994cfa504c256c7ece8d756eb1
2026-03-12 10:38:19 +02:00
Liliana Marie Prikler
0adf301971 gnu: lager: Update to 0.1.3.
* gnu/packages/cpp.scm (lager): Update to 0.1.3.
2026-03-12 08:57:23 +01:00
Liliana Marie Prikler
dfb1b7d18d gnu: zug: Update to 0.1.2.
* gnu/packages/cpp.scm (zug): Update to 0.1.2.
2026-03-12 08:57:23 +01:00
Liliana Marie Prikler
dc597e30fe gnu: immer: Update to 0.9.1.
* gnu/packages/cpp.scm (immer): Update to 0.9.1.
[#:configure-flags]: Drop “-DDISABLE_WERROR=ON”.
2026-03-12 08:57:23 +01:00
Sergey Trofimov
df01541cde gnu: emacs-telega: Update to 0.8.601.
* gnu/packages/emacs-xyz.scm (emacs-telega): Update to 0.8.601.
[propagated-inputs]: Remove emacs-company which is optional.
[native-inputs]: Delete empty list.

Change-Id: I77245943014043b4278e094192ca02b11f8b3e6c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Noé Lopez
171b21a8f7 gnu: Remove guile-gnome.
* gnu/packages/gtk.scm (guile-gnome): Remove.

Closes <https://issues.guix.gnu.org/34499>.
Closes guix/guix#6300.

Change-Id: I16314205d939ced3803c390cf3853db26b2f6051
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
54d5bf9a38 gnu: d-demangler: Update synopsis and description.
gnu/packages/dlang.scm (d-demangler) [synopsis, description]: Remove mention
of a non-existent command.  Refer to the package as a library.  Note that this
only wraps D's ‘std.demangle’.

Change-Id: I8fe98d4bb031f8f50468a4c1a5b907d3ff24de0c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
b923081da0 gnu: d-demangler: Reformat.
* gnu/packages/dlang.scm (d-demangler): Reformat.

Change-Id: I910f786afbc1fe4819ca9b1081a89553213bde2f
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
f1d06ca5f7 gnu: dmd: Reformat.
* gnu/packages/dlang.scm (dmd-bootstrap, dmd): Reformat.

Change-Id: I93ac5dff7a57138343e46b57f8d18121fec4cc20
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
fc67e0bb2f gnu: dmd: Reinstate tests.
* gnu/packages/dlang.scm (dmd-bootstrap)
[#:phases]: Add ‘patch-tests’.
[native-inputs]: Add gdb.

* gnu/packages/dlang.scm (dmd)
[arguments]: Strip ‘#:tests?’.

Change-Id: I2208f9a74749c366fc32f7c885d1773955d041a8
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
6000c99766 gnu: dmd: Update to 2.111.0.
* gnu/packages/dlang.scm (dmd-bootstrap): Update to 2.111.0.
[#:make-flags]: Remove deprecated “-f posix.mak”.
[#:phases]<patch-git-ls-tree>: Apply ‘substitute*’ to “Makefile” instead of
the deprecated “posix.mak”.
[supported-systems]: Add aarch64-linux (experimental).

Change-Id: Ia9be09edfe7790e8e0989b2ce473dd65e66f4cb7
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:23 +01:00
Jonas Meeuws
0cb07b2acd gnu: dmd: Improve packaging.
* gnu/packages/dlang.scm (dmd-bootstrap)
[#:make-flags]: Remove unneeded “DFLAGS=-L--allow-multiple-definition”.
[#:modules]: Move here from dmd.  Add (srfi srfi-26).
[#:phases]: Add ‘patch-git-ls-tree’, ‘patch-paths-in-phobos‘.
Remove ‘copy-phobos-source-and-chdir’ in favor of custom ‘unpack’.
Remove ‘adjust-phobos-install-dirs’, ‘install-druntime’, ‘install-includes’,
‘install-dmd’, ‘refine-install-layout’, ‘patch-dmd.conf’ in favor of custom
‘install’.
<unpack>: Replace with a copy of the gnu phase, but unpack the 2 sources to
“source/dmd” and “source/phobos”.
<build>: Replace.  Run gnu ‘build’ in dmd subdir.
<build-phobos>: New phase.  Run gnu ‘build’ in phobos subdir.
<check>: Replace.  Run gnu ‘check’ in dmd subdir.
<check-phobos>: New phase.  Run gnu ‘check’ in phobos subdir.
<install>: Replace with custom install script, that gets everything right the
first time.  Shared libraries get installed to “lib/lib“, static libraries to
“out/lib”.  Include files are installed to “out/include/d/dmd” to avoid
conflicts with other compilers.
<install-license-files>: Replace.  Run gnu ‘install-license-files’ in the dmd
subdir.
[inputs]: Add bash-minimal (for std.process).

* gnu/packages/dlang.scm (dmd)
[#:modules]: Move to dmd-bootstrap.
[#:make-flags]: Don't delete “DFLAGS=-L--allow-multiple-definition” as it no
longer exists.
[#:phases]<rewrite-references-to-bootstrap>: Rebase the ‘add-after’ on the
‘install’ phase.  Simplify discovery of the executable.
[native-inputs]: Substitute replacing gdmd with dmd-bootstrap for remove and
append.
[outputs]: Add “lib” (for “.so” files) and “debug”.

Change-Id: If0d5e1a2e4a45a26252b886aaa0ac91d9814e4fe
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
0a716ce224 gnu: dmd: Disable no-op tests.
* gnu/packages/dlang.scm (dmd)[arguments]: Don't reinstate tests.  Add a
comment explaining the reasoning.

Change-Id: I8ad8d6cd63b7f5b148ae448d6b4521398837208c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
1183614bbe gnu: Reorganize dlang.scm.
* gnu/packages/dlang.scm: Add additional section comments.
[d-tools]: Move down.

Change-Id: Ic0ac1ded1e7171d78a75d18bb2ff85e9ee50b303
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
b7d24094ac gnu: gdmd: Update to 0.26.0.
Change-Id: I3435e05606629e908a0ceba9c11a1438e4a2e9b9
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
9ae76a34d7 gnu: gdmd: Alias to gdmd-14.
* gnu/packages/gcc.scm (gdmd): Redefine as an alias to gdmd-14.  Avoids
ambiguous package specification warnings and executing make-gdmd twice.

Change-Id: I45455d4b3f547d8d77bc46a553102eebf727b45e
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
734f27f40b gnu: Add gdmd-15.
* gnu/packages/gcc.scm (gdmd-15): New variable.

Change-Id: Ie0ca533fc682e8b253d6ec1704d983defd9af210
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
da9924996d gnu: Add gdmd-14.
* gnu/packages/gcc.scm (gdmd-14): New variable.

Change-Id: Ia48a712e6a467ba19b6e076a4e4e02c348562264
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
ae5e8e6f38 gnu: Add gdmd-13.
* gnu/packages/gcc.scm (gdmd-13): New variable.

Change-Id: Icfb019980c92044bd2ed4a2e1457702a67db206c
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
78a99ae8df gnu: Add gdmd-12.
* gnu/packages/gcc.scm (gdmd-12): New variable.

Change-Id: I5e67d746d44200ba3eb98a4329be0cac3f996ac1
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
8741d3ac63 gnu: Add gdmd-11.
* gnu/packages/gcc.scm (gdmd-11): New variable.

Change-Id: Ic42eead141efc199c867ac80d44b1e083cc76bd3
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
4415dfd7d1 gnu: Add gdmd-10.
* gnu/packages/gcc.scm (gdmd-10): New variable.

Change-Id: I2473a0078934dcde937395c5dba0fb62c703725d
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
36a763ebcc gnu: Add gdmd-9.
* gnu/packages/gcc.scm (gdmd-9): New variable.

Change-Id: I9e10f6ff88122761baa3c751e8cfbe6c7708c168
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
7026105c94 gnu: gdmd: Base version on the wrapped gdc version.
* gnu/packages/gcc.scm (make-gdmd): New private procedure.
(gdmd): Implement in terms of make-gdmd.

Change-Id: I3fc2ce8af7ca3489a8f3bf4d607b530083a900b1
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:22 +01:00
Jonas Meeuws
79f19d37da gnu: gdmd: Reformat.
* gnu/packages/gcc.scm (gdmd): Reformat.

Change-Id: I107ae3bf5ab982dccdaf5450bd7ed3937da3b192
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
02fea8e954 gnu: gdmd: Update to 0.25.0.
* gnu/packages/gcc.scm (gdmd): Update to 0.25.0.
[source]: Prefix git tag with “script-”.

Change-Id: Icab7bb068d87e3813b15d1c360fb593ee5eac716
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
4c5cce5c44 gnu: gdmd: Move to gcc.
* gnu/packages/dlang.scm (gdmd): Move from here ...
* gnu/packages/gcc.scm: ... to here.

Change-Id: I43fa2f66f812edc6c74442c7d911fe902265f5e0
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
7d203df47b gnu: Add gdc-15.
* gnu/packages/gcc.scm (gdc-15): New public variable.

Change-Id: Ib8e2d6ca8bab3c0412b7d59b7acd40e075f61d74
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
f4aa217a16 gnu: Add gdc-13.
* gnu/packages/gcc.scm (gdc-13): New public variable.

Change-Id: If7ac081ece1185da1004adf90027e412ae471ae8
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
97091b854f gnu: Add gdc-12.
* gnu/packages/gcc.scm (gdc-12): New public variable.

Change-Id: Ic5711bc318aeb766763e3dfc6f1da81a340b8c7b
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
5310af43cd gnu: Add gdc-10.
* gnu/packages/gcc.scm (gdc-10): New public variable.

Change-Id: I74e8ed8c635e2f80af5b5504e4d2de97aed188a5
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
d06610cb8a gnu: Add gdc-9.
* gnu/packages/gcc.scm (gdc-9): New public variable.

Change-Id: I059397ce7ee398c1ed8b6cfcc1d294916c64203a
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
5b8d122129 gnu: gdc: Add intermediary gdc-14 variable.
* gnu/packages/gcc.scm (gdc-14): New variable, renamed from gdc.
(gdc): Redefine as an alias for gdc-14.

Change-Id: Ic2f4252fb75da703c9048b74c66026eda249023b
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:21 +01:00
Jonas Meeuws
298ed1adc6 gnu: gdc: Support GCC 9 through 15 with cleaner packaging.
* gnu/packages/gcc.scm (make-gdc): New variable.  This procedure returns a
package based on the previous gdc-11 and gdc definitions.
[#:modules]: Add (ice-9 ftw).
[#:configure-flags]: Add “--disable-c++tools” and “--disable-plugin”.
Add “--disable-libcc1”, “--disable-libatomic” (since version 11),
“--disable-libcc1”, “--disable-libgomp”, “--disable-libitm”,
“--disable-libquadmath”, “--disable-libsanitizer”, “--disable-libssp”, and
“--disable-libstdcxx” (until version 15).
[#:phases]: Add ‘gdc-cleanup-install’.
[inputs]: Add gcc:lib.
[synopsis]: Override the one inherited from gcc.
[description]: Override the one inherited from gcc.  Append a frontend version
note if such version was provided as argument.
[home-page]: Override the one inherited from gcc.
(gdc-11): Implement in terms of make-gdc.  Make public.
(gdc): Implement in terms of make-gdc, with gdc-11 as bootstrap-gdc
argument.  Make public.

Change-Id: I44d351f8c97427a6bbd1821f9547ae680a154b06
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2026-03-12 08:57:20 +01:00
jgart
e7771eb39d gnu: lilypond: Downgrade to 2.24.4.
* gnu/packages/music.scm (lilypond): Downgrade to 2.24.4.

This package should track the stable release of LilyPond.

Change-Id: I3a4ae814a719961039a8b7180e8dbd4d8ecc5012
2026-03-12 13:18:13 +05:30
Cayetano Santos
b56073dca7 gnu: emacs-build-farm: Update remote.
* gnu/packages/emacs-xyz.scm (emacs-build-farm)[source, home-page]:
Update url.

Change-Id: Ie38f0723bcdb70ee25c84fa9e92c6d107b4137e1
2026-03-12 08:33:04 +01:00
Cayetano Santos
1a80fb3978 gnu: emacs-bui: Update remote.
* gnu/packages/emacs-xyz.scm (emacs-bui)[source, home-page]: Update url.

Change-Id: I886b1ab88b9d273903298fcbdd3bba8353d6203a
2026-03-12 08:33:04 +01:00
Maxim Cournoyer
c7877de635 gnu: gnome-boxes: Update to 49.1.
* gnu/packages/gnome.scm (gnome-boxes): Update to 49.1.
[#:phases] {relax-gcc-14-strictness}: Delete.

Change-Id: I00767a2f05ec1d0f4e51114724d15eea4d71c127
2026-03-12 16:27:20 +09:00
Maxim Cournoyer
720a7e91af gnu: gnome-maps: Update to 49.4.
* gnu/packages/geo.scm (gnome-maps): Update to 49.4.
[#:phases] {wrap}: Simplify wrapper.  Previous strategy now caused GI errors
like "cannot register existing type 'GIRepository'".
[inputs]: Add bash-minimal.  Replace webkitgtk-for-gtk3 with webkitgtk.

Change-Id: I6ddad3e5232c3301c2cc8000d6e0516f48c4c53e
2026-03-12 16:23:36 +09:00
Cayetano Santos
f3ea176158 gnu: spike: Update to 1.1.0-0.591cff1.
See https://github.com/riscv-software-src/riscv-isa-sim/issues/2237

* gnu/packages/virtualization.scm (spike): Update to 1.1.0-0.591cff1.
[arguments]: Remove ’gcc14 #:phase.
[inputs]: Remove bash-minimal.
[native-inputs]: Remove python-wrapper; add python-minimal-wrapper.

Merges guix/guix!6633

Change-Id: If7ab6451972235cf2faa8debe21f1c54b0ae8009
2026-03-12 08:22:11 +01:00
Maxim Cournoyer
f1223aec55 gnu: gnome-meta-core-utilities: Add decibels.
* gnu/packages/gnome.scm (gnome-meta-core-utilities)
[propagated-inputs]: Add decibels.

Change-Id: Id00c8e789ced1fdd40b6221ad3c0542e33f8d2c1
2026-03-12 15:43:04 +09:00
Noé Lopez
95088727b3 gnu: Add decibels.
* gnu/packages/gnome.scm (decibels): New variable.

Co-authored-by: Maxim Cournoyer <maxim@guixotic.coop>
Change-Id: I3df869ad682aa2dce71ef1e57b142ccb221bb327
2026-03-12 15:42:06 +09:00
Maxim Cournoyer
ba9de7e3f8 gnu: gnome-essential-extras: Switch font to font-adwaita.
* gnu/packages/gnome.scm (gnome-essential-extras): Replace
font-abattis-cantarell with font-adwaita.

Change-Id: I8d4fe81a364caec14e8962b653fd743299ed2840
2026-03-12 14:02:12 +09:00
Maxim Cournoyer
15b6aae8e2 gnu: gnome-music: Fix error at execution.
Before this change, the execution would fail with a "TypeError: constructor
returned NULL" error.

* gnu/packages/gnome.scm (gnome-music) [inputs]: Replace tracker with
tinysparql and tracker-miners with localsearch.

Change-Id: I9ba1be70ca385fb0303e0ce717ee22f9cb206235
2026-03-12 13:24:25 +09:00
jgart
9567989516 gnu: Remove ecl-3d-math.
* gnu/packages/lisp-xyz.scm (ecl-3d-math): Delete variable.

Change-Id: If5fd048e25c97cfc1e0b2706536e88c6fa3125a8
2026-03-11 23:49:10 -04:00
jgart
19ec70870e gnu: Remove ecl-lispbuilder-sdl.
* gnu/packages/lisp-xyz.scm (ecl-lispbuilder-sdl): Delete variable.

Change-Id: I0f0e526f44e564332a2d9bb773c9a044b67e3267
2026-03-11 17:40:00 -04:00
jgart
609eb6ed87 gnu: Remove ecl-cl-prevalence.
* gnu/packages/lisp-xyz.scm (ecl-cl-prevalence): Delete variable.

Change-Id: Ie436b4efafc3af65c27d45098a6931024d686086
2026-03-11 16:04:31 -04:00
jgart
82b133e41c gnu: Remove ecl-prometheus.
* gnu/packages/lisp-xyz.scm (ecl-prometheus): Delete variable.

Change-Id: I318471bb4e980f1f344abcbee9a076426a9662bd
2026-03-11 15:56:03 -04:00
Sören Tempel
7f62f5ce89 gnu: pimsync: Update to 0.5.7.
* gnu/packages/dav.scm (pimsync): Update to 0.5.7.
[arguments] <phases>: Add 'use-guix-vendored-dependencies.
* gnu/packages/rust-sources.scm: Add rust-hashify-0.2.7.b787649.
* gnu/packages/rust-crates.scm: Update crates accordingly.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-11 21:15:25 +02:00
Artyom V. Poptsov
00f336d159 gnu: nebula: Update to 1.10.3.
* gnu/packages/networking.scm (nebula): Update to 1.10.3.
[inputs]: Add go-filippo-io-bigmod.

Change-Id: I4d2d06eeec81992a97530d914d3b4765b1211cd6
2026-03-11 22:06:35 +03:00
Artyom V. Poptsov
4c764497b4 gnu: Add go-filippo-io-bigmod.
* gnu/packages/golang-crypto.scm (go-filippo-io-bigmod): New variable.

Change-Id: I1c033912f92bb492ec2cf2db0a255e3feaa11ae1
2026-03-11 22:06:35 +03:00
Artyom V. Poptsov
5ef4ef7b3d gnu: hcxtools: Update to 7.1.2.
* gnu/packages/networking.scm (hcxtools): Update to 7.1.2.

Change-Id: I06e354118c199f22fb9ea94c8e19a48bba2d47fc
2026-03-11 22:06:34 +03:00
Andreas Enge
6da5c6775b gnu: Remove ocrodjvu.
* gnu/packages/djvu.scm (ocrodjvu): Delete variable.

Fixes: guix/guix#6307
Change-Id: Ib7e7e3cf7925347f7ef5bcaa4cf093572a30d911
2026-03-11 18:32:08 +01:00
Nguyễn Gia Phong
ec77e0e743 doc: Version Control Services: Generalize introduction.
* doc/guix.texi (Version Control Services):
  Update description to not be Git-exclusive.
  Update instroduction to mention Fossil in addition to Git.
  Add anchor points to navigate to individual services
  from the introduction.

Change-Id: I3af870a80fcf249bed97b0d29370f71ff00a9e73
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #4354
2026-03-11 18:27:46 +01:00
Nguyễn Gia Phong
3433fb987b services: Add fossil-service-type.
* gnu/services/version-control.scm
  (fossil-service-type, fossil-configuration): New public variables.
* gnu/tests/version-control.scm (%test-fossil): Add system tests.
* doc/guix.texi (Version Control Services): Add Fossil documentation.

Change-Id: I84e09fe8c11e161ed7c4bdba42b0ae38ef4c2096
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:46 +01:00
Yelninei
6eb6971f4d services: Add and use shepherd-signal-action.
* gnu/services/shepherd.scm (shepherd-signal-action): New procedure.

* gnu/services/audio.scm (mpd-shepherd-service): Use it for actions.
* gnu/services/base.scm (syslog-shepherd-service):
* gnu/services/base.scm (dnsmasq-shepherd-service):
* gnu/services/file-sharing.scm (transmission-daemon-shepherd-service):
* gnu/services/monitoring.scm (vnstat-shepherd-service):
* gnu/services/mail.scm (rspamd-shepherd-service):

* doc/guix.texi (shepherd-signal-action): Document it.

Change-Id: Ief5e00c7d430ec4aa28c3ef11d0ef9897793b45f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6097
2026-03-11 18:27:46 +01:00
Evgeny Pisemsky
1ec777def8 gnu: guile-usbrelay: Update to 0.1.1.
* gnu/packages/hardware.scm (guile-usbrelay): Update to 0.1.1.
[arguments]<#:phases>: ignore lambda arguments and invoke explicit command in
'compile-ffi, add 'install-udev-rules.

Change-Id: I8194d662345cfeb9e36816484b0f3d902a2c1a02
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #5188
2026-03-11 18:27:46 +01:00
Evgeny Pisemsky
62ae9661a2 gnu: guile-uuid: Improve package.
* gnu/packages/guile-xyz.scm (guile-uuid): Run guix style.
[arguments]: Rename 'remove-unnecessary-file phase to 'check and run tests
there, add 'install-info-documentation phase.
[native-inputs]: Add texinfo.

Change-Id: Iabfc636fd75891ec77895123291ab9c3c567f7ed
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7015
2026-03-11 18:27:46 +01:00
Ludovic Courtès
ade722cd48 gnu: hpn-ssh-sans-x: Use a distinct name.
* gnu/packages/ssh.scm (hpn-ssh-sans-x)[name]: New field.

Change-Id: I15ea01bd8b05512d35dcd93939a4f64ab6cc264c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #7019
2026-03-11 18:27:46 +01:00
Ludovic Courtès
6f62d591c3 gnu: Remove module imports from the host Guile.
These imports are incorrect and would trigger a warning since
f650dc0d80.

* gnu/packages/display-managers.scm (guix-simplyblack-sddm-theme)[arguments]:
Remove (srfi srfi-26) from #:modules.
* gnu/packages/fonts.scm (font-meslo-lg)[arguments]: Remove (ice-9 ftw)
from #:modules.
* gnu/packages/ssh.scm (hpn-ssh)[arguments]: Remove (ice-9 string-fun)
from #:imported-modules.
* gnu/packages/tls.scm (dehydrated)[arguments]: Remove (srfi srfi-26)
from #:modules.

Change-Id: Ib712f9f1df62e65adfb685a3a37f1c53a22acad0
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:46 +01:00
Ludovic Courtès
0dc5e5e5bd profiles: Use ‘with-imported-modules’.
* guix/profiles.scm (fonts-dir-file)[build]: Wrap in ‘with-imported-modules’.
Remove #:modules argument to ‘gexp->derivation’.

Change-Id: I29d71d0ff61cf8b81796ad412f2f95b111f028a7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Ludovic Courtès
be88f949b4 profiles: Do not import (srfi srfi-26) from the host Guile.
The problem was made evident by the warnings added in
f650dc0d80.  The extra import was added in
0a5ce0d1df, in 2017.

* guix/profiles.scm (fonts-dir-file): Remove (srfi srfi-26) from #:modules.

Fixes: https://issues.guix.gnu.org/80578
Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I0ad0a380f9c6421f0876aea7f68e1debf38a1db8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Ludovic Courtès
e812ee2a97 gexp: Properly record location in ‘gexp->derivation’ & co.
* guix/gexp.scm (gexp-with-hidden-inputs): Make the last argument to
‘make-gexp’ a source property alist.
(gexp->derivation): Likewise.

Change-Id: I70fa287ab571f4d791e8633131dd55c74624c18c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-11 18:27:45 +01:00
Efraim Flashner
e4af10ab21 gnu: garage: Update to 2.2.0.
* gnu/packages/storage.scm (garage): Update to 2.2.0.
* gnu/packages/rust-crates.scm (lookup-crate-inputs): Update garage
crates.

Change-Id: I4deba5fe0baea114b72cb35a1780fc0c8f7467e8
2026-03-11 19:05:19 +02:00
Foster Hangdaan
161caf314c gnu: Add garage.
* gnu/packages/storage.scm (garage): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs): Add garage.

Change-Id: Ifc4b9e54a3745a56f5bf0a346e6f4d190f6efc39
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2026-03-11 19:05:19 +02:00
jgart
e704ee00c6 gnu: sbcl-cl-ana: Update to 0.0.0-3.88abde5.
* gnu/packages/lisp-xyz.scm (sbcl-cl-ana): Update to 0.0.0-3.88abde5.
[sources]: Add patch.
* gnu/packages/patches/cl-ana-pr-49.patch: Include patch file.
* gnu/local.mk (dist_patch_DATA): Register it.

Change-Id: I352e36708ddbb5c1700b18425485fcb60125ca6e
2026-03-11 12:24:18 -04:00
jgart
2336e40c51 gnu: trealla: Update to 2.91.4.
* gnu/packages/prolog.scm (trealla): Update to 2.91.4.

Change-Id: I0fe96f6a7d5308bbe6d7821d0fe061370f0fa10f
2026-03-11 12:09:11 -04:00
Christopher Baines
991c410bcf build-aux: Disable file port name canonicalization in a few places.
I'm assuming this doesn't have any meaningful effect, and it seems to reduce
the number of readlink calls by a lot.

* build-aux/build-self.scm (build-program): Set
%file-port-name-canonicalization to #f.
(build): Ditto.
* build-aux/compile-as-derivation.scm: Ditto.

Change-Id: If43415c46c3911e84c76d1a9828b9c417a140a1b
2026-03-11 15:31:06 +00:00
Christopher Baines
c56f19efc6 compile-as-derivation: Buffer the current-error-port.
To avoid one character per syscall output from within the build procedure.

* build-aux/compile-as-derivation.scm: Buffer the current-error-port.

Change-Id: I7725ef0cb1f3ad4e9f5fdd284734f376fd57b253
2026-03-11 15:31:06 +00:00
Christopher Baines
ba35edb100 build-self: Setup buffering for the store socket.
In the case where port->connection is used, since this doesn't setup
buffering.

* build-aux/build-self.scm (build-program): Setup buffering for the store
socket.

Change-Id: I822bb628e92d1070e78a2ad9e95665ca2ff4a351
2026-03-11 15:31:06 +00:00
Christopher Baines
e6581cc5f9 store: Export the %default-store-connection-buffer-size.
So it can be used elsewhere, for example where port->connection is used and
there's a need to setup buffering.

* guix/store.scm (%default-buffer-size): Rename to
%default-store-connection-buffer-size.
(connect-to-daemon, open-connection): Update accordingly.

Change-Id: Ieb932577304786e5dee891ad1652e03c388d4112
2026-03-11 15:31:04 +00:00
Cayetano Santos
894349cec8 gnu: python-vunit: Implement parallel tests.
* gnu/packages/electronics.scm (python-vunit)[arguments]: Set parallel
flag in ’run-examples #:phase.

Change-Id: If3460b4715f244fd52262f8a67cbc2e88a2dfafc
2026-03-11 15:27:36 +01:00
Cayetano Santos
80d798b252 gnu: open-logic: Implement parallel tests.
* gnu/packages/hdl.scm (open-logic)[arguments]: Set parallel flag in
’check #:phase.

Change-Id: Ie0287c20ee191eae69a9a33b80dcf8138d30ba3c
2026-03-11 15:25:30 +01:00
Cayetano Santos
b908441cc1 gnu: open-logic: Update to 4.4.1.
* gnu/packages/hdl.scm (open-logic): Update to 4.4.1.

Change-Id: Iebd7b3f429383b8bd31cec39330b3bab6918ccd6
2026-03-11 15:15:16 +01:00
Jonas Meeuws
576eb72293 gnu: d-tools: Skip a test.
* gnu/packages/dlang.scm (d-tools): Add 'patch-tests phase.

Fixes: guix/guix#7000
Change-Id: I2ab62691fe9428c400112d59dda49e76d2582d8b
Signed-off-by: Andreas Enge <andreas@enge.fr>
2026-03-11 11:38:48 +01:00
Cayetano Santos
9d66b99bd3 gnu: json-for-vhdl: Move to hdl.
* gnu/packages/electronics.scm (json-for-vhdl): Move from here ...
* gnu/packages/hdl.scm: ... to here.

Change-Id: I498b652ae7edcad71dd0924264dbd84694ac6a87
2026-03-11 11:24:39 +01:00
Cayetano Santos
1ef7a2925f gnu: python-vunit: Update to 5.0.0-dev.9.
* gnu/packages/electronics.scm (python-vunit): Update to 5.0.0-dev.9.
[inputs]: Remove json-for-vhdl-for-vunit.
[arguments]<#:phases>: Remove ’fix-ghdl-jit; add ’fix-ghdl-version;
update ’unbundle.

Change-Id: Ic5cdd3da890be2ca1da07a21d4af3f78866220a1
2026-03-11 11:13:15 +01:00
Cayetano Santos
5376d5aa18 gnu: nvc: Update to 1.19.3.
* gnu/packages/electronics.scm (nvc): Update to 1.19.3.

Change-Id: Ie7d5416b0f605e9516a8ee8a4469624f8b54d5d7
2026-03-11 10:53:37 +01:00
Cayetano Santos
b393d63b06 gnu: klayout: Update to 0.30.7.
* gnu/packages/electronics.scm (klayout): Update to 0.30.7.

Change-Id: I63d285ce85a82ec05795d6a7a6fe8fa0c2342045
2026-03-11 10:53:37 +01:00
Cayetano Santos
6d68127ff5 gnu: python-klayout: Use klayout sources.
* gnu/packages/electronics.scm (python-klayout)[version, source]:
Identify with that of klayout.

Change-Id: I5886a5ceec93c930608549ef63bf42027b3fd246
2026-03-11 10:53:31 +01:00
Danny Milosavljevic
08c1be701d gnu: Add python-pocket-tts.
* gnu/packages/speech.scm (python-pocket-tts): New variable.

Change-Id: Id91307c0c934ba36db3c488e606230249ff50363
2026-03-11 10:33:24 +01:00
Nicolas Goaziou
ae1d77b36d gnu: Add emacs-khalel.
* gnu/packages/emacs-xyz.scm (emacs-khalel): New variable.

Change-Id: I1f2dd0e21a2e84911165d98245e45c078f9011a8
2026-03-11 09:37:02 +01:00
Denis 'GNUtoo' Carikli
fe8599a6be gnu: Add bincfg.
* gnu/packages/flashing-tools.scm (bincfg): New variable.

Merges guix/guix!7016

Change-Id: I75539ef75e6ea08ffe34dd1f11d2dec56683dcf4
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2026-03-11 08:19:23 +01:00
Janneke Nieuwenhuizen
0d622898fa gnu: info-reader: Support cross-build and build from git.
* gnu/packages/texinfo.scm (info-reader)[arguments]: Inherit from texinfo-7's
arguments.  Rewrite using g-expressions.

Change-Id: I3dcd73c781ad24ae6579384c08c5bb49f95dd783
Fixes: #6976,
2026-03-11 06:06:10 +01:00
Janneke Nieuwenhuizen
fdbe8b80a8 gnu: texinfo: Support cross-build and build from git.
Fixes #6976.

* gnu/packages/texinfo.scm (texinfo-7)[source]: Update to use git-fetch.
[native-inputs]: New field.
[arguments]: Add phases `patch-bootstrap-shebangs', `patch-jrtangle', and when
cross-building, also add phase `build-native-tools'.

Change-Id: I3dcd73c781ad24ae6579384c08c5bb49f95dd783
2026-03-11 06:04:49 +01:00
Maxim Cournoyer
50b58e1109 gnu: python-audioread: Fix gstreamer initialization.
* gnu/packages/mp3.scm (python-audioread) [arguments]: New field.

Change-Id: Ie1545631e97cdd5b3d9a6bbe80ed9809f1e4de48
2026-03-11 10:03:23 +09:00
Maxim Cournoyer
b8d7a360e2 gnu: python-gst: Update to 1.28.1.
* gnu/packages/gstreamer.scm (python-gst): Update to 1.28.1.
[#:phases] {check}: Re-order phase after...
{install}: ... this one.
{disable-problematic-tests, add-install-to-pythonpath}: New phases.

Change-Id: I2790555af875e23582a53c3fbd5e3f91179811cc
2026-03-11 10:03:23 +09:00
Maxim Cournoyer
f16f25db36 gnu: gst-rtsp-server: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-rtsp-server): Update to 1.28.1.

Change-Id: I1ac41675323df1d6b7fd58f5b37ffc724a8799e5
2026-03-11 10:03:23 +09:00
Maxim Cournoyer
1e35909396 gnu: gst-editing-services: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-editing-services): Update to 1.28.1.

Change-Id: I259ee0ea7929d53582adb3350376fbf55bcbfc4f
2026-03-11 10:03:23 +09:00
Maxim Cournoyer
6235f7884f gnu: gst-libav: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-libav): Update to 1.28.1.

Change-Id: I5cea2d41f6ebdabe942b764e9db4c5fe96ded520
2026-03-11 10:03:23 +09:00
Maxim Cournoyer
afd42897fa gnu: gst-plugins-ugly: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-plugins-ugly): Update to 1.28.1.

Change-Id: I48d15dff2bc7ea325f668cdb4ad2244d55b02990
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
0dd06db986 gnu: gst-plugins-bad: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-plugins-bad): Update to 1.28.1.
(gst-plugins/selection) [#:phases] {disable-auto-plugins}: Adjust for file
name change.

Change-Id: I719e543cd68bb4c75b1e41bb480a3f0f7a894fa9
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
b953fb3280 gnu: gst-plugins-good: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-plugins-good): Update to 1.28.1.

Change-Id: I169dbf4f2e2e827af25872fe6d3bdec5827eb65d
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
9921aec680 gnu: gst-plugins-base: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gst-plugins-base): Update to 1.28.1.
[source]: Apply a patch.
[propagated-inputs]: Add libdrm.
* gnu/packages/patches/gst-plugins-base-null-pointer.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

Change-Id: Id027d1e6ddc5ff331d4d64965266d7a99d859d3b
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
42c072e0ee gnu: gstreamer: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gstreamer): Update to 1.28.1.

Change-Id: I33dfc230d39fab46aab587843a8a48b1c13a8c93
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
eb72f37bce gnu: gstreamer-docs: Update to 1.28.1.
* gnu/packages/gstreamer.scm (gstreamer-docs): Update to 1.28.1.

Change-Id: I67ebdaf41393bde0cd6e072eff6b89955e2109d5
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
a24dec0561 gnu: orc: Update to 0.4.42.
* gnu/packages/gstreamer.scm (orc): Update to 0.4.42.

Change-Id: I3ffc7565a25e1d71a52bf2dad301a60edd60231b
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
f76c7c0b54 gnu: ffmpeg: Fix build on powerpc64le.
* gnu/packages/video.scm (ffmpeg) [powerpc]
<#:configure-flags>: Ignore 'sws-floatimg-cmp' test.

Change-Id: I37604768718ac88fac9fef0d21a6044b50bc08ff
2026-03-11 10:03:22 +09:00
Maxim Cournoyer
c7dc180019 gnu: libx264: Update to 165-0.0480cb0.
This fixes the build on powerpc64le-linux.

* gnu/packages/video.scm (libx264): Update to 165-0.0480cb0.

Change-Id: I42b21736e0715460cbdfe47732263ba0a02193bf
2026-03-11 10:03:22 +09:00
John Kehayias
687bf4fb8e gnu: syncthing-gtk: Fix runtime introspection error.
* gnu/packages/syncthing.scm (syncthing-gtk)[inputs]: Replace python-pygobject
with python-gobject-3.50.

Change-Id: Id8370953a9e06d614cf71f8a93ef4b8dc3e0b018
2026-03-10 20:49:58 -04:00
John Kehayias
407259dff9 gnu: gammastep: Fix runtime introspection error.
* gnu/packages/xdisorg.scm (gammastep)[inputs]: Replace python-pygobject with python-gobject-3.50.

Change-Id: Idbaade8bdf5f36d81b8ef9d817baa02d13f51331
2026-03-10 20:45:27 -04:00
Ludovic Courtès
ee8eba01f0 gnu: Remove misplaced ‘GUILE_EXTENSIONS_PATH’ spec in Guile libraries.
The ‘GUILE_EXTENSIONS_PATH’ variable “belongs” to Guile, not to libraries that
depend on Guile.

* gnu/packages/guile-xyz.scm (guile-yamlpp, guile-wayland-scm-socket)
(guile-wayland-scm-shm, guile-wayland-scm): Remove ‘native-search-paths’ field.

Change-Id: I9a9927e945ec31572684df4ff325f3a7ed0393a9
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6919
2026-03-10 23:10:05 +01:00
Ludovic Courtès
4d50228576 gnu: guile-cv: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-cv)[source]: Switch to ‘git-fetch’.
[arguments]: In ‘fix-guile-site-directory’ phase, remove call to
‘delete-file’.

Change-Id: I5160d65536f0407f357c80a1a723dc5363dc590f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6981
2026-03-10 23:07:45 +01:00
Ludovic Courtès
787846c091 gnu: guile-file-names: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-file-names)[source]: Switch to
‘git-fetch’.
[arguments]: In ‘fix-target-directory’ phase, modify ‘Makefile.am’.
[native-inputs]: Add ‘autoconf’, ‘automake’, and ‘texinfo’.

Change-Id: I794893f9c465077b00ee4f8ae5fe88500948755a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:45 +01:00
Ludovic Courtès
e70a0d0d6a gnu: guile-ncurses: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-ncurses)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake’, ‘libtool’, and ‘texinfo’.

Change-Id: Iae936f8aa1239818b60466b4feee40a3cda60885
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:45 +01:00
Ludovic Courtès
22237a6b70 gnu: guile-reader: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-reader)[source]: Switch to ‘git-fetch’.
[arguments]: New field.
[native-inputs]: Add ‘autoconf, ‘automake‘, ‘libtool’, ‘gnu-gettext’, and
‘texinfo’.

Change-Id: I36075fbd232636f87f03ca19805499df6bbc8e34
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:45 +01:00
Ludovic Courtès
5eb4e0223e gnu: g-wrap: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (g-wrap)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake‘, ‘libtool’, ‘gnu-gettext’, and
‘texinfo’.

Change-Id: Ibf512fe75488dcf9345986a772bb10bf4231d857
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:45 +01:00
Ludovic Courtès
18c1e15fec gnu: guile-lib: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-lib)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘texinfo’.

Change-Id: I1827b86241cad68f0f26a693fe5403392c3e6653
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
30d1b20602 gnu: guile-xosd: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-xosd)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake’, ‘libtool’, and ‘texinfo’.

Change-Id: I94c4e13bb4ce7c6ec4cc51cd808ccb140869c7c8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
15ca11ee88 gnu: guile-debbugs: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-debbugs)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake’, and ‘texinfo’.

Change-Id: I2dc7199c0d9149cdafd5dd6b8d2963719c6b6ccb
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
a424f14b19 gnu: guile-sparql: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-sparql)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake’, and ‘texinfo’.

Change-Id: I565d469d59ca8d11c99170719779c4c5f44f74ca
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
c664cd93e6 gnu: guile-aa-tree: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-aa-tree)[source]: Switch to ‘git-fetch’.

Change-Id: Ie523a559e22d89ecb20425ce093dfef3c113287e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
2f7bab1115 gnu: guile-sjson: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-sjson)[source]: Switch to ‘git-fetch’;
simplify ‘snippet’.

Change-Id: I14f4a8072ee3b6a0119220a29eb42e2c20b559fe
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:44 +01:00
Ludovic Courtès
cdaf07f30d gnu: guile-daemon: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (guile-daemon)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf’, ‘automake’, and ‘texinfo’.

Change-Id: Ic97cc96fe47e95b6da4c0532e274eabfa458784c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:43 +01:00
Ludovic Courtès
9cdaac3acc gnu: artanis: Build from a version-control checkout.
* gnu/packages/guile-xyz.scm (artanis)[source]: Switch to ‘git-fetch’.
[native-inputs]: Add ‘autoconf‘, ‘automake’, and ‘gnu-gettext’.

Change-Id: I22d6d6f620a53930a424f14db16be4f585e99c54
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 23:07:43 +01:00
Ludovic Courtès
4c7f4a0c0e style: git-source: Show package name in message.
* guix/scripts/style.scm (url-fetch->git-fetch)[transform-source]: Show
package name in informative message.

Change-Id: I4533dfcd7abf12c2406c981bcb80b3e634d339bc
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #6894
2026-03-10 22:53:55 +01:00
Ludovic Courtès
ac9f7dbce6 read-print: Add newline after ‘snippet’ field of ‘origin’.
* guix/read-print.scm (%newline-forms): Add ‘snippet’.

Change-Id: Ibdd654ca68cf9a820b75cdd81e991d747030fa73
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 22:53:55 +01:00
Ludovic Courtès
55ea428a29 read-print: Remove ‘source’ context for ‘git-reference’ indentation.
* guix/read-print.scm (%newline-forms): For ‘git-reference’, remove ‘source’.

Change-Id: I93905b3fcf36896c9aefc7060f9412174654562a
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 22:53:54 +01:00
Ludovic Courtès
9adcf86358 style: git-source: Gracefully handle failure to checkout version tag.
Previously, when the version tag could not be cloned, ‘generate-git-source’
would return #f leading ‘guix style’ to crash with a type error.  Now, a
warning about the Git error is printed and ‘guix style’ keeps going.

* guix/scripts/style.scm (transform-to-git-fetch): Wrap ‘match’ clause in
‘catch’ and return #f on ‘git-error’.

Change-Id: If66b1c5f8e0a44155b96f3c54bab7c58aae406f8
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 22:53:54 +01:00
Ludovic Courtès
78ddf62bfe style: git-source: Handle more URLs.
* guix/import/utils.scm (tarball-url->git-repository-url): New procedure.
* guix/scripts/style.scm (url-fetch->git-fetch)[transform-source]: Add
‘repository-url’ parameter.
Use ‘tarball-url->git-repository-url’ when ‘home-page’ is not a Git URL.
(transform-to-git-fetch): Rename ‘home-page’ to ‘repository-url’.
* tests/import/utils.scm ("tarball-url->git-repository-url, guile"): New test.
* tests/style.scm ("url-fetch->git-fetch, mirror:// URL"): New test.

Change-Id: I4f8ca7c67a58f917d69380678b62c00962b0f9cd
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2026-03-10 22:53:54 +01:00
137 changed files with 10999 additions and 3887 deletions

View File

@@ -37,13 +37,13 @@ Tick a box by changing it from [ ] to [x].
```
- Package **addition**
- [ ] The packages includes tests when available.
- [ ] Fixed errors reported by `guix lint` (`./pre-inst-env guix lint PACKAGE ...`).
- [ ] Verified cryptographic signature provided by upstream.
- [ ] The packages don't use bundled copies of software.
- [ ] Synopsis and description are written in conformance with [the guidelines](https://guix.gnu.org/manual/devel/en/html_node/Synopses-and-Descriptions.html).
- [ ] Commit messages follow [the "ChangeLog" style](https://www.gnu.org/prep/standards/html_node/Change-Logs.html).
- [ ] The change doesn't break `guix pull` (`guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master --disable-authentication`).
- [ ] Commit messages follow [the "ChangeLog" style](https://www.gnu.org/prep/standards/html_node/Change-Logs.html).
- [ ] The change doesn't break `guix pull` (`guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master --disable-authentication`).
- Successfully cross-compiled to the following target(s) (this is optional):
- [ ] x86_64-linux-gnu

View File

@@ -480,6 +480,15 @@ tests/import/texlive\.scm @guix/tex
etc/news\.scm @guix/translations
po/ @guix/translations
gnu/packages/version-control\.scm @guix/vcs
gnu/services/version-control\.scm @guix/vcs
gnu/tests/version-control\.scm @guix/vcs
guix/build/bzr\.scm @guix/vcs
guix/build/cvs\.scm @guix/vcs
guix/build/git\.scm @guix/vcs
guix/build/hg\.scm @guix/vcs
guix/build/svn\.scm @guix/vcs
gnu/packages/xfce\.scm @guix/xfce
gnu/packages/zig\.scm @guix/zig

4
NEWS
View File

@@ -14,6 +14,10 @@ Copyright © 2026 Noé Lopez <noelopez@free.fr>
Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 1.6.0 (since 1.5.0)
** Distribution
*** GNOME updated to version 48
* Changes in 1.5.0 (since 1.4.0)
** Package management
*** New rpm format for the guix pack command

View File

@@ -111,6 +111,9 @@ build daemon, from within the generated build program."
#~(begin
(use-modules (ice-9 match))
;; To avoid lots of readlink calls
(fluid-set! %file-port-name-canonicalization #f)
(eval-when (expand load eval)
;; (gnu packages …) modules are going to be looked up
;; under SOURCE. (guix config) is looked up in FRONT.
@@ -169,6 +172,13 @@ build daemon, from within the generated build program."
;; build output.
(connect sock AF_UNIX build-output)
(when (integer? proto)
;; port->connection doesn't setup buffering, so
;; do this here
(setvbuf (store-connection-socket store)
'block
%default-store-connection-buffer-size))
(display
(and=>
;; Silence autoload warnings and the likes.
@@ -239,6 +249,9 @@ Display a spinner when nothing happens."
#:rest rest)
"Return a derivation that unpacks SOURCE into STORE and compiles Scheme
files."
;; Avoid lots of readlink calls
(fluid-set! %file-port-name-canonicalization #f)
;; Build the build program and then use it as a trampoline to build from
;; SOURCE.
(mlet %store-monad ((build (build-program source version guile-version

View File

@@ -20,6 +20,9 @@
(use-modules (srfi srfi-26))
;; Avoid lots of readlink calls
(fluid-set! %file-port-name-canonicalization #f)
;; Add ~/.config/guix/current to the search path.
(eval-when (expand load eval)
(and=> (or (getenv "XDG_CONFIG_HOME")
@@ -41,6 +44,10 @@
(match (command-line)
((program source)
;; The build procedure outputs to this port, so setup buffering to avoid
;; one char per syscall.
(setvbuf (current-error-port) 'line)
(with-error-handling
(with-store store
(let* ((script (string-append source "/build-aux/build-self.scm"))

View File

@@ -25,7 +25,6 @@ choice.
* Running the Test Suite:: Testing Guix.
* Running Guix Before It Is Installed:: Hacker tricks.
* The Perfect Setup:: The right tools.
* Alternative Setups:: Other possible tools that do the job.
* Source Tree Structure:: Source code guided tour.
* Packaging Guidelines:: Growing the distribution.
* Coding Style:: Hygiene of the contributor.
@@ -67,7 +66,7 @@ GNU Guix depends on the following packages:
@itemize
@item @url{https://gnu.org/software/guile/, GNU Guile}, version 3.0.x,
version 3.0.9 or later;
@item @url{https://notabug.org/cwebber/guile-gcrypt, Guile-Gcrypt}, version
@item @url{https://codeberg.org/guile-gcrypt/guile-gcrypt, Guile-Gcrypt}, version
0.1.0 or later;
@item
@uref{https://gitlab.com/gnutls/guile/, Guile-GnuTLS} (@pxref{Guile
@@ -76,11 +75,11 @@ gnutls-guile, GnuTLS-Guile})@footnote{The Guile bindings to
@uref{https://gnutls.org/, GnuTLS} were distributed as part of GnuTLS
until version 3.7.8 included.};
@item
@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
@uref{https://codeberg.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
or later;
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib},
@item @uref{https://codeberg.org/guile-compression/guile-zlib, Guile-zlib},
version 0.1.0 or later;
@item @uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};
@item @uref{https://codeberg.org/guile-compression/guile-lzlib, Guile-lzlib};
@item @uref{https://www.nongnu.org/guile-avahi/, Guile-Avahi};
@item
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, version 0.10.0
@@ -102,7 +101,7 @@ Support for build offloading (@pxref{Daemon Offload Setup}) and
version 0.13.0 or later.
@item
@uref{https://notabug.org/guile-zstd/guile-zstd, Guile-zstd}, for zstd
@uref{https://codeberg.org/guile-compression/guile-zstd, Guile-zstd}, for zstd
compression and decompression in @command{guix publish} and for
substitutes (@pxref{Invoking guix publish}).
@@ -536,14 +535,64 @@ to build again each time you update a package file, run
@node The Perfect Setup
@section The Perfect Setup
The Perfect Setup to hack on Guix is basically the perfect setup used
for Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile Reference
Manual}). First, you need more than an editor, you need
@url{https://www.gnu.org/software/emacs, Emacs}, empowered by the
wonderful @url{https://nongnu.org/geiser/, Geiser}. To set that up, run:
@cindex editor setup, for Scheme
@cindex Scheme code editing
All configuration and development in Guix is done in the Scheme
language. Like all languages of the Lisp family, Scheme has a simple
syntax. The perfect setup is one where the editor you choose makes
working with that syntax seamless and pleasant; for that it must
absolutely support a few things for Scheme:
@itemize
@item
automatic indentation, such that hitting the ``Enter'' key (or
@kbd{RET}) places cursor ``at the right place'' on the next line;
@item
``parentheses matching'', allowing you to jump from a closing
parenthesis to the corresponding opening parenthesis and vice-versa;
@item
syntax highlighting, so that keywords are visually distinguishable.
@end itemize
The following optional features can make your life easier:
@itemize
@item
structural editing of Scheme syntax;
@item
Guile integration so you can easily evaluate code, jump to procedure
definitions, view documentation, and so on.
@end itemize
The following sections look at editor setups that are known to work
well. Do share your setup for these and other editors for inclusion in
this manual! @xref{Submitting Patches}.
@menu
* Emacs:: Best-of-breed editor for Scheme code.
* Guile Studio:: First step in your transition to Emacs.
* Vim and NeoVim:: Classical Unix editors.
@end menu
@node Emacs
@subsection Emacs
@url{https://www.gnu.org/software/emacs, Emacs} is probably the most
widely used editor in the community; it is also the one that,
historically, has always had excellent support for Lisp languages, being
itself a Lisp implementation!
@quotation Note
If you are just getting started with Emacs, @pxref{Guile Studio} for a
smooth way to start your transition.
@end quotation
Just like for Guile hacking (@pxref{Using Guile in Emacs,,, guile, Guile
Reference Manual}), Emacs works best when empowered by the wonderful
@url{https://nongnu.org/geiser/, Geiser}. To set that up, run:
@example
guix install emacs guile emacs-geiser emacs-geiser-guile
guix install emacs guile emacs-geiser emacs-geiser-guile emacs-guix
@end example
Geiser allows for interactive and incremental development from within
@@ -562,6 +611,15 @@ facilities to directly operate on the syntax tree, such as raising an
s-expression or wrapping it, swallowing or rejecting the following
s-expression, etc.
Cherry on the cake: the Emacs-Guix package provides a convenient
interface to many commands---e.g., it lets you browse packages, install
or remove packages, and so on---as well as development helpers that
enhance @code{scheme-mode} and Geiser. @xref{Introduction,,,
emacs-guix, Emacs-Guix Reference Manual}, to make sure you don't miss
out!
@unnumberedsubsubsec Taming Boilerplate with Templates
@cindex code snippets
@cindex templates
@cindex reducing boilerplate
@@ -601,6 +659,8 @@ trigger string @code{origin...}, which can be expanded further. The
@code{origin} snippet in turn may insert other trigger strings ending on
@code{...}, which also can be expanded further.
@unnumberedsubsubsec Updating Copyright Lines
@cindex insert or update copyright
@cindex @code{M-x guix-copyright}
@cindex @code{M-x copyright-update}
@@ -629,104 +689,30 @@ copyright-update}. If you want to do it automatically after each buffer
save then add @code{(add-hook 'after-save-hook 'copyright-update)} in
Emacs.
@node Viewing Bugs within Emacs
@subsection Viewing Bugs within Emacs
@unnumberedsubsubsec Referencing Bug Reports
Emacs has a nice minor mode called @code{bug-reference}, which, when
combined with @samp{emacs-debbugs} (the Emacs package), can be used to
open links such as @samp{<https://bugs.gnu.org/58697>} or
@samp{<https://issues.guix.gnu.org/58697>} as bug report buffers. From
there you can easily consult the email thread via the Gnus interface,
reply or modify the bug status, all without leaving the comfort of
Emacs! Below is a sample configuration to add to your @file{~/.emacs}
configuration file:
@cindex bug references, Emacs
Emacs has a nice minor mode called @code{bug-reference}, which can be
used to follow link to issues and pull requests such as @samp{#1234} or
@samp{guix/guix#1234} (@pxref{Bug Reference,,, emacs, The GNU Emacs
Manual}). To set it up, enable it in the relevant modes:
@lisp
;;; Bug references.
(require 'bug-reference)
(add-hook 'prog-mode-hook #'bug-reference-prog-mode)
(add-hook 'gnus-mode-hook #'bug-reference-mode)
(add-hook 'erc-mode-hook #'bug-reference-mode)
(add-hook 'gnus-summary-mode-hook #'bug-reference-mode)
(add-hook 'gnus-article-mode-hook #'bug-reference-mode)
;;; This extends the default expression (the top-most, first expression
;;; provided to 'or') to also match URLs such as
;;; <https://issues.guix.gnu.org/58697> or <https://bugs.gnu.org/58697>.
;;; It is also extended to detect "Fixes: #NNNNN" git trailers.
(setq bug-reference-bug-regexp
(rx (group (or (seq word-boundary
(or (seq (char "Bb") "ug"
(zero-or-one " ")
(zero-or-one "#"))
(seq (char "Pp") "atch"
(zero-or-one " ")
"#")
(seq (char "Ff") "ixes"
(zero-or-one ":")
(zero-or-one " ") "#")
(seq "RFE"
(zero-or-one " ") "#")
(seq "PR "
(one-or-more (char "a-z+-")) "/"))
(group (one-or-more (char "0-9"))
(zero-or-one
(seq "#" (one-or-more
(char "0-9"))))))
(seq (? "<") "https://bugs.gnu.org/"
(group-n 2 (one-or-more (char "0-9")))
(? ">"))
(seq (? "<") "https://issues.guix.gnu.org/"
(? "issue/")
(group-n 2 (one-or-more (char "0-9")))
(? ">"))))))
(setq bug-reference-url-format "https://issues.guix.gnu.org/%s")
(require 'debbugs)
(require 'debbugs-browse)
(add-hook 'bug-reference-mode-hook #'debbugs-browse-mode)
(add-hook 'bug-reference-prog-mode-hook #'debbugs-browse-mode)
;; The following allows Emacs Debbugs user to open the issue directly within
;; Emacs.
(setq debbugs-browse-url-regexp
(rx line-start
"http" (zero-or-one "s") "://"
(or "debbugs" "issues.guix" "bugs")
".gnu.org" (one-or-more "/")
(group (zero-or-one "cgi/bugreport.cgi?bug="))
(group-n 3 (one-or-more digit))
line-end))
;; Change the default when run as 'M-x debbugs-gnu'.
(setq debbugs-gnu-default-packages '("guix" "guix-patches"))
;; Show feature requests.
(setq debbugs-gnu-default-severities
'("serious" "important" "normal" "minor" "wishlist"))
;; Add extra hooks for your mail user agent: Gnus, mu4e, etc.
@end lisp
For more information, refer to @ref{Bug Reference,,, emacs, The GNU
Emacs Manual} and @ref{Minor Mode,,, debbugs-ug, The Debbugs User
Guide}.
@node Alternative Setups
@section Alternative Setups
Alternative setups than Emacs may let you work on Guix with a
similar development experience and they might work better with the
tools you currently use or help you make the transition to Emacs.
The options listed below only provide the alternatives to the Emacs
based setup, which is the most widely used in the Guix community. If
you want to really understand how the perfect setup for Guix development
is supposed to work, we encourage you to read the section before this
regardless of the editor you choose to use.
@menu
* Guile Studio:: First step in your transition to Emacs.
* Vim and NeoVim:: When you are evil to the root.
@end menu
When working from a Git checkout of Guix, setup is automatic:
@code{bug-reference} automatically detects that the project is hosted on
Codeberg@footnote{
@c 'vc-git-repository-url' is used by
@c 'bug-reference-setup-from-vc-alist', which checks for one of these
@c names for the remote.
As of Emacs@tie{}30.2, auto-detection works if and
only if the Git remote is called @code{upstream} or @code{origin}.} and
infers the issue and pull request URL from there.
@node Guile Studio
@subsection Guile Studio
@@ -744,9 +730,9 @@ Guile Studio comes with Geiser preinstalled and prepared for action.
@node Vim and NeoVim
@subsection Vim and NeoVim
Vim (and NeoVim) are also packaged in Guix, just in case you decided
to go for the evil path.
@cindex Vim, for Scheme code editing
Vim (and NeoVim) are also packaged in Guix, in case these popular modal
editors are more to your taste.
@example
guix install vim
@@ -2510,8 +2496,8 @@ For example, to list all open issues on @code{guix-patches}, hit:
For a more convenient (shorter) way to access both the bugs and patches
submissions, you may want to configure the
@code{debbugs-gnu-default-packages} and
@code{debbugs-gnu-default-severities} Emacs variables (@pxref{Viewing
Bugs within Emacs}).
@code{debbugs-gnu-default-severities} Emacs variables (@pxref{Minor
Mode,,, debbugs-ug, The Debbugs User Guide}).
To search for bugs, @samp{@kbd{M-x} debbugs-gnu-guix-search} can be
used.

View File

@@ -523,6 +523,9 @@ info sicp
You'll find more books, tutorials and other resources at
@url{https://schemers.org/}.
@xref{The Perfect Setup,,, guix, GNU Guix Reference Manual}, on how to
set up your editor for Scheme hacking.
@end quotation

View File

@@ -149,6 +149,7 @@ Copyright @copyright{} 2025 Rodion Goritskov@*
Copyright @copyright{} 2025 dan@*
Copyright @copyright{} 2025 Noé Lopez@*
Copyright @copyright{} 2026 David Elsing@*
Copyright @copyright{} 2026 Nguyễn Gia Phong@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@@ -440,7 +441,7 @@ Services
* Power Management Services:: Extending battery life, etc.
* Audio Services:: The MPD.
* Virtualization Services:: Virtualization services.
* Version Control Services:: Providing remote access to Git repositories.
* Version Control Services:: Software version control servers.
* Game Services:: Game servers.
* PAM Mount Service:: Service to mount volumes when logging in.
* Guix Services:: Services relating specifically to Guix.
@@ -8047,6 +8048,9 @@ Intimidated by the Scheme language or curious about it? The Cookbook
has a short section to get started that recaps some of the things shown
above and explains the fundamentals. @xref{A Scheme Crash Course,,,
guix-cookbook, GNU Guix Cookbook}, for more information.
@xref{The Perfect Setup}, on how to set up your editor for Scheme
hacking.
@end quotation
Once a package definition is in place, the
@@ -18033,6 +18037,9 @@ misplaced parentheses can often be identified by reformatting your file:
guix style -f config.scm
@end example
@xref{The Perfect Setup}, on how to set up your editor for Scheme
hacking.
The Cookbook has a short section to get started with the Scheme
programming language that explains the fundamentals, which you will find
helpful when hacking your configuration. @xref{A Scheme Crash Course,,,
@@ -19917,7 +19924,7 @@ declaration.
* Power Management Services:: Extending battery life, etc.
* Audio Services:: The MPD.
* Virtualization Services:: Virtualization services.
* Version Control Services:: Providing remote access to Git repositories.
* Version Control Services:: Software version control servers.
* Game Services:: Game servers.
* PAM Mount Service:: Service to mount volumes when logging in.
* Guix Services:: Services relating specifically to Guix.
@@ -42368,13 +42375,30 @@ How often to run the node cleaning job. The default is once per day, at
@node Version Control Services
@subsection Version Control Services
The @code{(gnu services version-control)} module provides a service to
allow remote access to local Git repositories. There are three options:
the @code{git-daemon-service-type}, which provides access to repositories via
the @code{git://} unsecured TCP-based protocol, extending the
@code{nginx} web server to proxy some requests to
@code{git-http-backend}, or providing a web interface with
@code{cgit-service-type}.
The @code{(gnu services version-control)} module provides services to
allow remote access to local Git and Fossil repositories.
For Git, the following services are available.
@itemize
@item The @ref{git-daemon-service-type, Git daemon service}
provides access via the unsecured TCP-based @code{git://} protocol.
@item The @code{nginx} web server can proxy some requests
to @ref{git-http-backend, Git Smart HTTP backend}.
@item The @ref{cgit-service-type, cgit service} also implements
Git Smart HTTP protocol, in addition to a web interface.
@item The @ref{gitolite-service-type, Gitolite service} offers access
through SSH. The @ref{gitile-service-type, Gitile service}
can be used along side it to provide a web interface.
@end itemize
Fossil repositories are served along with a web interface
by the @ref{fossil-service-type, Fossil service}.
@anchor{git-daemon-service-type}
@subsubheading Git Daemon Service
@cindex Git daemon service
@cindex Git, hosting
@defvar git-daemon-service-type
Type for a service that runs @command{git daemon}, a simple TCP server to
@@ -42433,7 +42457,15 @@ Extra options that will be passed to @command{git daemon}.@footnote{Run
The @code{git://} protocol lacks authentication. When you pull from a
repository fetched via @code{git://}, you don't know whether the data you
receive was modified or is even coming from the specified host, and your
connection is subject to eavesdropping. It's better to use an authenticated
connection is subject to eavesdropping.
@anchor{git-http-backend}
@subsubheading Git HTTP Backend
@cindex Git HTTP backend
@cindex Git, hosting
It's better to use an authenticated
and encrypted transport, such as @code{https}. Although Git allows you
to serve repositories using unsophisticated file-based web servers,
there is a faster protocol implemented by the @code{git-http-backend}
@@ -42508,6 +42540,7 @@ HTTPS@. You will also need to add an @code{fcgiwrap} proxy to your
system services. @xref{Web Services}.
@end deffn
@anchor{cgit-service-type}
@subsubheading Cgit Service
@cindex Cgit service
@@ -43460,6 +43493,7 @@ could instantiate a cgit service like this:
(cgitrc "")))
@end lisp
@anchor{gitolite-service-type}
@subsubheading Gitolite Service
@cindex Gitolite service
@@ -43639,6 +43673,7 @@ Extra content to add verbatim into the git configuration file.
@end table
@end deftp
@anchor{gitile-service-type}
@subsubheading Gitile Service
@cindex Gitile service
@@ -43773,6 +43808,155 @@ like to serve.
@end table
@end deftp
@anchor{fossil-service-type}
@subsubheading Fossil Service
@cindex Fossil service
@cindex Fossil, forge
@uref{https://fossil-scm.org, Fossil} is a distributed
software configuration management system. In addition to version control
like Git, Fossil also supports bug tracking, wiki, forum, chat, etc.,
all accessible via its built-in web interface.
Fossil is highly reliable thanks to its robust file format based on SQLite
with atomic transactions. Its server is CPU, memory and bandwidth efficient
enough run comfortably on a cheap VPS or single board computer,
and be accessed over suboptimal connections.
The following example will configure Fossil to listen on a unix socket
behind a reverse proxy and serve repositories from a custom location.
@lisp
(service fossil-service-type
(fossil-configuration
(repository "/srv/museum")
(repo-list? #t)
(base-url "https://museum.example")
(socket-file "/var/run/fossil.sock")
(compress? #f)))
@end lisp
@deftp {Data Type} fossil-configuration
Available @code{fossil-configuration} fields are:
@table @asis
@item @code{package} (default: @code{fossil}) (type: package)
The Fossil package to use.
@item @code{user} (default: @code{"fossil"}) (type: string)
The user running the Fossil server.
@item @code{group} (default: @code{"fossil"}) (type: string)
The user group running the Fossil server.
@item @code{log-file} (default: @code{"/var/log/fossil.log"}) (type: string)
The path to the server's log.
@item @code{repository} (default: @code{"/var/lib/fossil"}) (type: string)
The name of the Fossil repository to be served, or a directory
containing one or more repositories with names ending in @code{.fossil}.
In the latter case, a prefix of the URL pathname is used to search the
directory for an appropriate repository. Files not matching the pattern
@code{*.fossil*} will be served as static content. Invoke
@command{fossil server --help} for more information.
@item @code{acme?} (default: @code{#f}) (type: boolean)
Deliver files from the @code{.well-known} subdirectory.
@item @code{base-url} (type: maybe-string)
The URL used as the base (useful for reverse proxies)
@item @code{chroot} (type: maybe-string)
The directory to use for chroot instead of @code{repository}.
@item @code{ckout-alias} (type: maybe-string)
The @var{name} for @code{/doc/@var{name}/...} to be treated as
@code{/doc/ckout/...}.
@item @code{compress?} (default: @code{#t}) (type: boolean)
Compress HTTP response.
@item @code{create?} (default: @code{#f}) (type: boolean)
Create a new @code{repository} if it does not already exist.
@item @code{error-log-file} (type: maybe-string)
The path for HTTP error log.
@item @code{ext-root} (type: maybe-string)
The document root for the /ext extension mechanism.
@item @code{files} (type: maybe-list-of-strings)
The glob patterns for static files.
@item @code{from} (type: maybe-string)
The path to be used as the diff baseline for the /ckout page.
@item @code{jail?} (default: @code{#t}) (type: boolean)
Whether to enter the chroot jail after dropping root privileges.
@item @code{js-mode} (type: maybe-fossil-js-mode)
How JavaScript is delivered with pages, either @code{'inline} at the end
of the HTML file, as @code{'separate} HTTP requests, or one single HTTP
request for all JavaScript @code{'bundled} together. Depending on the
needs of any given page, @code{'inline} and @code{'bundled} modes might
result in a single amalgamated script or several, but both approaches
result in fewer HTTP requests than the @code{'separate} mode.
@item @code{https?} (default: @code{#f}) (type: boolean)
Indicate that the requests are coming through a reverse proxy that has
already translated HTTPS into HTTP.
@item @code{ip} (type: maybe-string)
The IP for the server to listen on.
@item @code{local-authentication?} (default: @code{#f}) (type: boolean)
Enable automatic login for requests from localhost.
@item @code{localhost?} (default: @code{#f}) (type: boolean)
Listen on @code{127.0.0.1} only.
@item @code{main-menu} (type: maybe-string)
The file whose contents is to override the repository's @code{mainmenu}
setting.
@item @code{max-latency} (type: maybe-number)
The maximum latency in seconds for a single HTTP request.
@item @code{port} (default: @code{8080}) (type: port-number)
The port number for the server to listen on.
@item @code{list-repositories?} (default: @code{#f}) (type: boolean)
If @code{repository} is dir, URL @code{/} lists repos.
@item @code{redirect-to-https?} (default: @code{#t}) (type: boolean)
If set to @code{#f}, do not force redirects to HTTPS regardless of the
repository setting @code{redirect-to-https}.
@item @code{scgi?} (default: @code{#f}) (type: boolean)
Accept SCGI rather than HTTP.
@item @code{skin} (type: maybe-string)
The skin label to use, overriding repository settings.
@item @code{socket-file} (type: maybe-string)
The unix-domain socket to use instead of TCP/IP.
@item @code{socket-mode} (default: @code{0o640}) (type: mode-number)
The file permissions to set for the unix socket.
@item @code{th-trace?} (default: @code{#f}) (type: boolean)
Trace TH1 execution (for debugging purposes).
@item @code{tls-certificate} (type: maybe-string)
The certicate file (@file{fullchain.pem}) with which to enable TLS
(HTTPS) encryption.
@item @code{tls-private-key} (type: maybe-string)
The file storing the TLS private key.
@end table
@end deftp
@node Game Services
@subsection Game Services
@@ -50488,6 +50672,29 @@ cat $(herd configuration tor)
This can come in as a handy debugging tool!
@end deffn
@deffn {Procedure} shepherd-signal-action name signal @
[#:documentation `Send signal @var{signal} to the running service`] @
[#:message `Service has been asked to perform @var{name}`]
Return a shepherd action with @var{name} to send @var{signal} to the
running process. The optional @var{documentation} and @var{message} can be used
to customize the documentation and output message.
Many daemons perform special actions after receiving a specific signal.
For example the @command{syslogd} logger will reread its configuration file
after receiving @code{SIGHUP}.
After adding
@lisp
(shepherd-signal-action 'reload SIGHUP))
@end lisp
the @code{reload} action will be available and can be used with
@example
herd reload syslogd
@end example
@end deffn
@defvar shepherd-root-service-type
The service type for the Shepherd ``root service''---i.e., PID@tie{}1.

View File

@@ -33,6 +33,7 @@
;; Copyright © 2025 Rivulet Cedar <rivulet_cedar@yeah.net>
;; Copyright © 2025 jgart <jgart@dismail.de>
;; Copyright © 2025 Steve George <steve@futurile.net>
;; Copyright © 2026 Noé Lopez <noelopez@free.fr>
;;
;; Copying and distribution of this file, with or without modification, are
@@ -42,6 +43,49 @@
(channel-news
(version 0)
(entry (commit "b52ce9041ad58aeababd2d50d3e72bc23dffff60")
(title
(en "GNOME 48 is now available")
(fr "GNOME 48 maintenant disponible")
(pt "GNOME 48 já está disponível")
(de "GNOME 48 jetzt verfügbar"))
(body
(en "The GNOME desktop was updated from version 46 to 48, bringing
accent colors, an improved Files (Nautilus) application, a new image
viewer (Loupe), and more:
@itemize
@item @url{https://release.gnome.org/47/, GNOME 47 release notes}
@item @url{https://release.gnome.org/48/, GNOME 48 release notes}
@end itemize")
(fr "La version 48 de lenvironnement de bureau GNOME est maintenant
disponible. Les nouvelles fonctionnalitées incluent: les couleurs daccent,
lapplication Fichiers (Nautilus) améliorée, un nouveau visionneur
dimages (Loupe), et plus:
@itemize
@item @url{https://release.gnome.org/47/, GNOME 47 release notes}
@item @url{https://release.gnome.org/48/, GNOME 48 release notes}
@end itemize")
(pt "GNOME desktop foi atualizado da versão 46 para a 48, trazendo
cores acentuadas, um aplicativo de arquivos (Nautilus) melhorado, um novo
visualizador de imagens (Loupe), e mais:
@itemize
@item @url{https://release.gnome.org/47/, Notas de lançamento do GNOME 47}
@item @url{https://release.gnome.org/48/, Notas de lançamento do GNOME 48}
@end itemize")
(de "Die GNOME-Desktopumgebung wurde von Version 46 auf 48
aktualisiert. Neue Funktionen in dieser Version sind die Möglichkeit, eine
Akzentfarbe zu wählen, Verbesserungen in der Dateien-Anwendung (Nautilus), ein
neuer Bildbetrachter (Loupe), und mehr. Für eine ausführlichere Liste an
Änderungen, siehe:
@itemize
@item @url{https://release.gnome.org/47/, GNOME 47 release notes}
@item @url{https://release.gnome.org/48/, GNOME 48 release notes}
@end itemize")))
(entry (commit "d659fe8666c4bc38fcbdbe7b7a35101f2d7cc41b")
(title
(en "Potential security vulnerability in glibc")

View File

@@ -33,7 +33,7 @@
"node-build-system"
"ocaml-build-system"
"perl-build-system"
"python-build-system"
"pyproject-build-system"
"qt-build-system"
"r-build-system"
"rakudo-build-system"

View File

@@ -1197,6 +1197,20 @@ the \"texlive\" importer."
#:scope (list "etc/news.scm"
(make-regexp* "^po/"))))
(define-team vcs
(team 'vcs
#:name "Version control team"
#:description
"Version control packages, services, and Guix download backends."
#:scope (list "gnu/packages/version-control.scm"
"gnu/services/version-control.scm"
"gnu/tests/version-control.scm"
"guix/build/bzr.scm"
"guix/build/cvs.scm"
"guix/build/git.scm"
"guix/build/hg.scm"
"guix/build/svn.scm")))
(define-team xfce
(team 'xfce
#:name "Xfce team"
@@ -1531,7 +1545,7 @@ the \"texlive\" importer."
(define-member (person "Nguyễn Gia Phong"
"cnx@loang.net"
"cnx")
build-tools python qa-packages sysadmin)
build-tools python qa-packages sysadmin vcs)
(define-member (person "Lilah Tascheter"
"lilah@lunabee.space"
@@ -1603,6 +1617,16 @@ the \"texlive\" importer."
"folaht")
documentation)
(define-member (person "Thanos Apollo"
"public@thanosapollo.org"
"thanosapollo")
vcs)
(define-member (person "Ashish SHUKLA"
"ashish.is@lostca.se"
"group")
vcs)
(define (find-team name)
(or (hash-ref %teams (string->symbol name))

View File

@@ -55,7 +55,7 @@
# Copyright © 2022 Hilton Chain <hako@ultrarare.space>
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
# Copyright © 2022 ( <paren@disroot.org>
# Copyright © 2022 jgart <jgart@dismail.de>
# Copyright © 2022, 2026 jgart <jgart@dismail.de>
# Copyright © 2023-2025 Zheng Junjie <z572@z572.online>
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
# Copyright © 2023 Andy Tai <atai@atai.org>
@@ -213,6 +213,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/connman.scm \
%D%/packages/containers.scm \
%D%/packages/convmv.scm \
%D%/packages/codex.scm \
%D%/packages/coq.scm \
%D%/packages/cpio.scm \
%D%/packages/cpp.scm \
@@ -313,7 +314,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gd.scm \
%D%/packages/gdb.scm \
%D%/packages/genealogy.scm \
%D%/packages/genimage.scm \
%D%/packages/geo.scm \
%D%/packages/gettext.scm \
%D%/packages/ghostscript.scm \
@@ -1092,6 +1092,7 @@ dist_patch_DATA = \
%D%/packages/patches/ceph-fix-cmake.patch \
%D%/packages/patches/cf-tool-add-languages.patch \
%D%/packages/patches/chmlib-inttypes.patch \
%D%/packages/patches/cl-ana-pr-49.patch \
%D%/packages/patches/cl-asdf-config-directories.patch \
%D%/packages/patches/clamav-config-llvm-libs.patch \
%D%/packages/patches/clamav-system-tomsfastmath.patch \
@@ -1124,6 +1125,7 @@ dist_patch_DATA = \
%D%/packages/patches/coda-use-system-libs.patch \
%D%/packages/patches/codex-acp-0.9.2-remove-patch-sections.patch \
%D%/packages/patches/codex-acp-0.9.2-replace-result-flatten.patch \
%D%/packages/patches/codex-0.98.0-remove-patch-sections.patch \
%D%/packages/patches/cogl-fix-double-free.patch \
%D%/packages/patches/collada-dom-boost.patch \
%D%/packages/patches/collectd-5.11.0-noinstallvar.patch \
@@ -1227,6 +1229,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-treelib-remove-python2-compat.patch \
%D%/packages/patches/elm-offline-package-registry.patch \
%D%/packages/patches/elm-reactor-static-files.patch \
%D%/packages/patches/emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-disable-jit-compilation.patch \
%D%/packages/patches/emacs-doc-toc-shell-commands.patch \
@@ -1428,7 +1431,6 @@ dist_patch_DATA = \
%D%/packages/patches/gemmi-fix-pegtl-usage.patch \
%D%/packages/patches/gemmi-fix-sajson-types.patch \
%D%/packages/patches/gemrb-remove-ifdef-and-externalize-path-setting-to-cmake.patch \
%D%/packages/patches/genimage-mke2fs-test.patch \
%D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/gettext-libunicode-update.patch \
%D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \
@@ -1539,7 +1541,6 @@ dist_patch_DATA = \
%D%/packages/patches/grfcodec-gcc-compat.patch \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
%D%/packages/patches/grub-efi-fat-serial-number.patch \
%D%/packages/patches/grub-hurd64.patch \
%D%/packages/patches/grub-setup-root.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-2.2-skip-oom-test.patch \
@@ -1579,6 +1580,7 @@ dist_patch_DATA = \
%D%/packages/patches/gtk4-respect-GUIX_GTK4_PATH.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
%D%/packages/patches/gst-plugins-base-null-pointer.patch \
%D%/packages/patches/gzdoom-search-in-installed-share.patch \
%D%/packages/patches/gzdoom-find-system-libgme.patch \
%D%/packages/patches/hare-fallback-cache.patch \
@@ -1606,6 +1608,7 @@ dist_patch_DATA = \
%D%/packages/patches/hurd-rumpdisk-no-hd.patch \
%D%/packages/patches/hurd-startup.patch \
%D%/packages/patches/hwloc-1-test-btrfs.patch \
%D%/packages/patches/hwloc-add-with-opencl.patch \
%D%/packages/patches/i3lock-blur-fix-build-on-gcc-10.patch \
%D%/packages/patches/i7z-gcc-10.patch \
%D%/packages/patches/icecat-adjust-mozilla-desktop.patch \
@@ -1967,7 +1970,6 @@ dist_patch_DATA = \
%D%/packages/patches/netsurf-system-utf8proc.patch \
%D%/packages/patches/netsurf-y2038-tests.patch \
%D%/packages/patches/netsurf-longer-test-timeout.patch \
%D%/packages/patches/nextpnr-imgui.patch \
%D%/packages/patches/nhc98-c-update.patch \
%D%/packages/patches/nix-dont-build-html-doc.diff \
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
@@ -2377,10 +2379,10 @@ dist_patch_DATA = \
%D%/packages/patches/rust-1.70-fix-rustix-build.patch \
%D%/packages/patches/rust-1.78-unwinding-fix.patch \
%D%/packages/patches/rust-1.81-fix-riscv64-bootstrap.patch \
%D%/packages/patches/rust-codex-0.98.0-arg0-file-lock.patch \
%D%/packages/patches/rust-codex-0.98.0-core-file-lock.patch \
%D%/packages/patches/rust-codex-0.98.0-core-remove-self-dep.patch \
%D%/packages/patches/rust-codex-0.98.0-execpolicy-file-lock.patch \
%D%/packages/patches/rust-codex-0.98.0-test-shebangs.patch \
%D%/packages/patches/rust-codex-0.98.0-test-timeout.patch \
%D%/packages/patches/rust-codex-0.98.0-windows-sandbox-protocol-version.patch \
%D%/packages/patches/rust-ring-0.17-ring-core.patch \
%D%/packages/patches/rw-igraph-0.10.patch \
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \

View File

@@ -3835,8 +3835,15 @@ platform-specific methods.")
"0y5w8pl91xapi49ih1pw7h48lac201cj7fm89hkklmzi9m2715gx"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--with-python=no"
"--disable-static")))
(list #:configure-flags
#~(list #$@(cond ((target-aarch64?)
'("--with-aarch64"))
((target-arm32?)
'("--with-arm"))
(else
'()))
"--with-python=no"
"--disable-static")))
(inputs
(list openldap gnutls cyrus-sasl))
(synopsis "User-space component to the Linux auditing system")

View File

@@ -186,85 +186,83 @@ engine with a Lua scripting interface.")
(synopsis "Combined display server, multimedia framework and game engine (SDL)")))
(define-public durden
(let ((commit "43211acd7994836d5c4ba039d7ecc939dcf8a5aa")
(revision "2"))
(package
(name "durden")
(version (git-version "0.6.1" revision commit))
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(uri (git-reference
(url "https://github.com/letoram/durden")
(commit commit)))
(sha256
(base32 "1jns4lq959s8ydykm0yg9sddzh74k7fdvjrnbz3z91idb7abl92d"))
(patches (search-patches "durden-shadow-arcan.patch"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan #~'(("durden/" "share/arcan/appl/durden/")
("util/" "share/arcan/appl/durden/util/")
("distr/durden" "bin/durden"))
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "distr/durden"
(("/usr/share/\\$applname")
(string-append (assoc-ref outputs "out")
"/share/arcan/appl"))
(("@ARCAN_STORE_PATH@")
(string-append (assoc-ref inputs "arcan")
"/bin/arcan"))
(("([\\([:blank:]]+)basename " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/basename "))
(("([\\([:blank:]]+)date " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/date "))
(("([\\([:blank:]]+)ln " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/ln "))
(("([\\([:blank:]]+)mkdir " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/mkdir "))
(("([\\([:blank:]]+)true; " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/true; "))
(("([\\([:blank:]]+)\\[ " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/[ "))))))))
(inputs (list arcan coreutils))
(home-page "https://durden.arcan-fe.com/")
(synopsis "Desktop Environment for Arcan")
(description
"Durden is a desktop environment for the Arcan Display Server.
It serves both as a reference showcase on how to take advantage of some of the
features in Arcan, and as an entry to the advanced-user side of the desktop
environment spectrum.")
(license (list license:bsd-3 license:expat license:cc-by3.0
license:cc-by4.0 license:asl2.0)))))
(define-public xarcan
(package
(name "xarcan")
(name "durden")
(version "0.6.3")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(uri (git-reference
(url "https://github.com/letoram/xarcan")
(url "https://codeberg.org/letoram/durden")
(commit version)))
(sha256
(base32 "1g24mmwnc45ig0x8jk0v91488k8933w07vxi4305sla56q4n82p4"))))
(base32 "1w12mdjdbhw13134fj4kv43n1z6vrh1jhg1wc7m5hw82w8ncwqkm"))
(patches (search-patches "durden-shadow-arcan.patch"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan #~'(("durden/" "share/arcan/appl/durden/")
("util/" "share/arcan/appl/durden/util/")
("distr/durden" "bin/durden"))
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "distr/durden"
(("/usr/share/\\$applname")
(string-append (assoc-ref outputs "out")
"/share/arcan/appl"))
(("@ARCAN_STORE_PATH@")
(string-append (assoc-ref inputs "arcan")
"/bin/arcan"))
(("([\\([:blank:]]+)basename " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/basename "))
(("([\\([:blank:]]+)date " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/date "))
(("([\\([:blank:]]+)ln " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/ln "))
(("([\\([:blank:]]+)mkdir " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/mkdir "))
(("([\\([:blank:]]+)true; " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/true; "))
(("([\\([:blank:]]+)\\[ " _ separator)
(string-append separator
(assoc-ref inputs "coreutils")
"/bin/[ "))))))))
(inputs (list arcan coreutils))
(home-page "https://durden.arcan-fe.com/")
(synopsis "Desktop Environment for Arcan")
(description
"Durden is a desktop environment for the Arcan Display Server.
It serves both as a reference showcase on how to take advantage of some of the
features in Arcan, and as an entry to the advanced-user side of the desktop
environment spectrum.")
(license (list license:bsd-3 license:expat license:cc-by3.0
license:cc-by4.0 license:asl2.0))))
(define-public xarcan
(package
(name "xarcan")
(version "0.7.1")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(uri (git-reference
(url "https://codeberg.org/letoram/xarcan")
(commit version)))
(sha256
(base32 "1jpk272y58h94ss6j87i0cl1zlfp4g5803y0kpi09q8yy37icvcg"))))
(build-system meson-build-system)
(arguments
(list
@@ -302,6 +300,7 @@ environment spectrum.")
openssl
pixman
xcb-util
xcb-util-image
xcb-util-wm
xkbcomp
xkeyboard-config
@@ -309,11 +308,8 @@ environment spectrum.")
xtrans))
(home-page "https://arcan-fe.com")
(synopsis "Patched Xserver that bridges connections to Arcan")
(description "Patched Xserver with a KDrive backend that uses the arcan-shmif
to map Xlib/Xcb/X clients to a running arcan instance. It allows running an X session
as a window under Arcan.")
(description
"Patched Xserver with a KDrive backend that uses the arcan-shmif
to map Xlib/Xcb/X clients to a running arcan instance. It allows
running an X session as a window under Arcan.")
(license (list license:bsd-3 license:expat))))
;; Package was merged into arcan in upstream.
(define-deprecated-package arcan-wayland
arcan)

View File

@@ -11791,6 +11791,33 @@ can be used to control telescopes over a serial port for tracking celestial
objects.")
(license license:gpl2+)))
(define-public stiff
(package
(name "stiff")
(version "2.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/astromatic/stiff")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1iffrncag1w6nd9c6v3dlx9m79nfg6ph42i0gsvlq8pvjph7s6pa"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
#~(list "CFLAGS=-O2 -g -fcommon")))
(inputs
(list libtiff zlib libjpeg-turbo))
(home-page "https://www.astromatic.net/software/stiff/")
(synopsis "Convert scientific FITS images to TIFF format")
(description
"STIFF is a program that converts scientific @acronym{FITS, Flexible Image
Transport System} images to the more popular TIFF format for illustration
purposes.")
(license license:gpl3+)))
(define-public stuff
;; XXX: No version tag available in GitHub.
;; See: https://github.com/astromatic/stuff/issues/6

View File

@@ -2366,7 +2366,7 @@ to explore and analyze bulk RNA-seq data.")
(define-public python-cell2cell
(package
(name "python-cell2cell")
(version "0.7.4")
(version "0.8.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2375,7 +2375,7 @@ to explore and analyze bulk RNA-seq data.")
(file-name (git-file-name name version))
(sha256
(base32
"02cqc5rm0qkm0np1k7bim1w7f5qjnwf1jcm5albd9cpvfs4bwgdr"))
"0z5dcm9i74c5iaqq92y25khg7i2smrfj8jb1g26iwzwf1cqxghmn"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -2685,7 +2685,7 @@ parsing of Variant Call Format (VCF) files.")
(define-public python-decoupler
(package
(name "python-decoupler")
(version "2.1.2")
(version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2694,7 +2694,7 @@ parsing of Variant Call Format (VCF) files.")
(file-name (git-file-name name version))
(sha256
(base32
"05d70zrgv8l9ihkgmr7hqcgn66yx1v1lm0hcfbc370asp97k2f74"))))
"07kpcjbnp5c00p3iw2my6k3bxfivswyxs2dljj0yhgjhxw2900av"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -7294,6 +7294,42 @@ trees (phylogenies) and characters.")
with Python.")
(license license:expat)))
(define-public deacon
(package
(name "deacon")
(version "0.14.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "deacon" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1p7q48ql67mxqi7fv0jaxbfn0js85sb2ai0h3vfvizwd1lfyldxl"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:features ''("ensure_simd/scalar"))) ; Avoid AVX2 dependency.
(native-inputs (list pkg-config))
(inputs (cons* bzip2
xz
`(,zstd "lib")
(cargo-inputs 'deacon)))
(home-page "https://github.com/bede/deacon")
(synopsis
"Accelerated DNA sequence search and [host] depletion using minimizers")
(description
"Deacon filters DNA sequences in FASTA/Q files and streams using
SIMD-accelerated minimizer comparison with query sequence(s), emitting either
matching sequences (search mode), or sequences without matches (deplete mode).
Sequences match when they share enough distinct minimizers with the indexed
query to exceed chosen absolute and relative thresholds. Query size has little
impact on filtering speed, enabling ultrafast search and depletion with gene-,
genome- and pangenome-scale queries using a laptop.")
;; Upstream suggests compiling with '-C target-cpu=native'
(properties '((tunable? . #t)))
(license license:expat)))
(define-public delly
(package
(name "delly")
@@ -20327,7 +20363,7 @@ bgzipped text file that contains a pair of genomic coordinates per line.")
(build-system pyproject-build-system)
(arguments
(list
;; tests: 107 failed, 54 passed, 8 skipped, 7 xfailed, 14 errors
;; tests: 107 failed, 54 passed, 8 skipped, 7 xfailed, 14 errors
#:tests? #f)) ;most of them need remote data
(native-inputs
(list python-biopython
@@ -25243,7 +25279,7 @@ CSIv1, CSIv2 and FAI files.")
(define-public python-gseapy
(package
(name "python-gseapy")
(version "1.0.4")
(version "1.1.12")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -25252,7 +25288,7 @@ CSIv1, CSIv2 and FAI files.")
(file-name (git-file-name name version))
(sha256
(base32
"06gh09dwwj2xr5zx8i41smy8arx2pw7rll7sk50np28z419bnyz9"))))
"0xdh2v0s2jwj5n541z9zlcq5f6ka0r8jk03jdv8z3j27hc6azf3s"))))
(build-system cargo-build-system)
(arguments
(list

View File

@@ -44,6 +44,7 @@
(define-module (gnu packages bootloaders)
#:use-module (gnu packages)
#:use-module (gnu packages assembly)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages disk)
#:use-module (gnu packages bison)
@@ -114,13 +115,13 @@
(define*-public (make-grub platform)
(package
(name (string-append "grub-" platform))
(version "2.12")
(version "2.14")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/grub/grub-" version ".tar.xz"))
(sha256
(base32
"1ahgzvvvwdxx7rl08pv5dyqlgp76jxz0q2cflxvsdsn4yy8p7jgk"))
"0hvd8i3ib6nwymfmvd6dia6axrn4xmrlsrg2r3c3i22vadrkr3dw"))
(patches (search-patches
"grub-efi-fat-serial-number.patch"
"grub-setup-root.patch"))
@@ -148,13 +149,21 @@
;; This needs to be compiled with clang for powerpc64le.
(if #$(and=> (%current-target-system)
target-ppc64le?)
(list "TARGET_CC=powerpc64le-linux-gnu-clang")
(list "TARGET_CC=powerpc64le-linux-gnu-clang"
"CFLAGS=-Wno-error")
'())
(if #$(and (target-ppc64le? (%current-system))
(not (%current-target-system)))
(list "CC=clang")
(list "CC=clang" "CFLAGS=-Wno-error")
'()))
;; The 'configure' script detects --image-base support and uses it,
;; but that shifts the i386-pc kernel.img start address from 0x9000
;; to 0x9074, breaking grub-install. Override with -Ttext.
;; See <https://lists.gnu.org/archive/html/grub-devel/2026-01/msg00041.html>.
#:make-flags
#~(list "TARGET_IMG_BASE_LDOPT=-Wl,-Ttext")
;; GRUB fails to load modules stripped with --strip-unneeded.
#:strip-flags
#~(list "--strip-debug" "--enable-deterministic-archives")
@@ -199,14 +208,6 @@
(setenv "BUILD_FREETYPE_CFLAGS"
(string-append "-I" freetype
"/include/freetype2"))))))
#$@(if (target-hurd64?)
#~((add-after 'unpack 'apply-hurd64-patch
(lambda _
(let ((patch
#$(local-file
(search-patch "grub-hurd64.patch"))))
(invoke "patch" "--force" "-p1" "-i" patch)))))
#~())
(add-before 'check 'disable-flaky-test
(lambda _
;; This test is unreliable. For more information, see:
@@ -229,7 +230,7 @@
(("test_unset grub_func_test")
"test_unset")))))))
(inputs
(append (list gettext-minimal freetype ncurses
(append (list gettext-minimal freetype ncurses libtasn1
;; Console-setup's ckbcomp is invoked by grub-kbdcomp. It
;; is required for generating alternative keyboard layouts.
@@ -285,22 +286,6 @@
;; targets are used.
(if (member (%current-system) (package-supported-systems qemu-minimal))
(list qemu-minimal)
'())
;; XXX: When building GRUB 2.02 on 32-bit x86, we need a binutils
;; capable of assembling 64-bit instructions. However, our default
;; binutils on 32-bit x86 is not 64-bit capable.
(if (string-match "^i[3456]86-" (%current-system))
(let ((binutils (package/inherit
binutils
(name "binutils-i386")
(arguments
(substitute-keyword-arguments (package-arguments binutils)
((#:configure-flags flags ''())
#~(cons* "--enable-64-bit-bfd" #$flags)))))))
(list (make-ld-wrapper "ld-wrapper-i386"
#:binutils binutils)
binutils))
'())))
(home-page "https://www.gnu.org/software/grub/")
(synopsis "GRand Unified Boot loader")
@@ -405,7 +390,8 @@ menu to select one of the installed operating systems.")
"test_sha512sum"
"grub_cmd_tr"
"test_unset"
"file_filter_test")
"file_filter_test"
"asn1_test")
" "))))))))
(supported-systems '("i686-linux" "x86_64-linux")))))
@@ -457,22 +443,27 @@ menu to select one of the installed operating systems.")
((target-arm32?) "arm")
(else ""))))
(substitute* "tests/util/grub-shell.in"
(("OVMF-ia32\\.fd")
(("\\$\\{srcdir\\}/OVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("OVMF\\.fd")
(("/usr/share/qemu/OVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/qemu-efi/QEMU_EFI\\.fd")
(("\\$\\{srcdir\\}/AAVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/ovmf-arm/QEMU_EFI\\.fd")
(("/usr/share/qemu-efi-aarch64/QEMU_EFI\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/AAVMF/AAVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
@@ -524,19 +515,41 @@ menu to select one of the installed operating systems.")
#$@(if (or (target-x86?)
(target-arm?))
#~((replace 'patch-ovmf-path
(lambda* (#:key inputs #:allow-other-keys)
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(let ((arch #$(cond ((target-x86?) "ia32")
((target-arm?) "arm")
(else ""))))
(substitute* "tests/util/grub-shell.in"
(("OVMF-ia32\\.fd")
(("\\$\\{srcdir\\}/OVMF(32)?\\.fd")
(search-input-file
inputs (string-append
"/share/firmware/ovmf_" arch ".bin")))
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/qemu/OVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("\\$\\{srcdir\\}/AAVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/qemu-efi-aarch64/QEMU_EFI\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/AAVMF/AAVMF(32)?\\.fd")
(search-input-file
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin")))
(("/usr/share/ovmf-arm/QEMU_EFI\\.fd")
(search-input-file
inputs (string-append
"/share/firmware/ovmf_" arch ".bin"))))))))
(or native-inputs inputs)
(string-append
"/share/firmware/ovmf_" arch ".bin"))))))))
#~())))))
(native-inputs
(cond
@@ -560,9 +573,7 @@ menu to select one of the installed operating systems.")
(package
(inherit (make-grub "ieee1275"))
(synopsis "GRand Unified Boot loader (ieee1275 version)")
(supported-systems '("i686-linux" "x86_64-linux"
"i586-gnu" "x86_64-gnu"
"powerpc-linux" "powerpc64le-linux"))))
(supported-systems '("powerpc-linux" "powerpc64le-linux"))))
(define-public grub-qemu
(package

411
gnu/packages/codex.scm Normal file
View File

@@ -0,0 +1,411 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2026 Danny Milosavljevic <dannym@friendly-machines.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; This module is separate from (gnu packages rust-apps) to avoid a
;;; circular module dependency: (gnu packages rust-sources), which
;;; defines rust-codex-0.98.0, transitively loads (gnu packages
;;; rust-apps) through its #:use-module chain. If the codex package
;;; lived in rust-apps.scm, loading rust-sources would trigger loading
;;; rust-apps before rust-codex-0.98.0 is defined, causing an unbound
;;; variable error.
(define-module (gnu packages codex)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cargo)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
#:use-module (gnu packages base)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages llvm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rust-sources)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control))
(define-public codex
(package
(name "codex")
(version (package-version rust-codex-0.98.0))
(source
(origin
(inherit (package-source rust-codex-0.98.0))
(patches (search-patches
"codex-0.98.0-remove-patch-sections.patch"
"rust-codex-0.98.0-test-shebangs.patch"
"rust-codex-0.98.0-test-timeout.patch"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:cargo-install-paths '(list "cli" "exec" "exec-server"
"linux-sandbox" "mcp-server" "network-proxy"
"app-server" "tui")
;; schema_fixtures_match_generated (upstream fixture is stale:
;; FileChange::Update in codex-protocol gained old_content,
;; new_content, move_path fields but the committed JSON schema
;; fixture was not regenerated).
#:cargo-test-flags '(list "--workspace"
"--exclude" "codex-app-server-protocol"
"--"
;; These tests exercise sandbox denial and
;; escalation, which requires Landlock to
;; cleanly deny filesystem access. Inside the
;; build container Landlock returns NotEnforced
;; and the sandbox binary panics instead.
;; Disabling Landlock would not help either,
;; since these tests need a working sandbox to
;; have anything to deny and escalate.
"--skip" "sandbox_denied_shell_returns_original_output"
"--skip" "shell_escalated_permissions_rejected_then_ok"
"--skip" "unified_exec_runs_under_sandbox"
;; These tests (in codex-exec) directly call
;; spawn_command_under_linux_sandbox to verify
;; that python and bash work correctly inside
;; the Landlock sandbox. The sandbox binary
;; (codex-exec) panics with LandlockRestrict
;; (exit code 101) before the inner command
;; even starts.
"--skip" "python_getpwuid_works_under_sandbox"
"--skip" "python_multiprocessing_lock_works_under_sandbox"
"--skip" "sandbox_distinguishes_command_and_policy_cwds"
;; These linux-sandbox tests directly invoke
;; the Landlock sandbox via
;; process_exec_tool_call; same root cause.
"--skip" "test_writable_root"
"--skip" "test_timeout"
"--skip" "test_root_read"
"--skip" "test_dev_null_write"
"--skip" "test_no_new_privs_is_enabled"
;; This test iterates many approval scenarios;
;; one of them
;; (danger_full_access_on_request_allows_network)
;; runs a command through the Landlock sandbox
;; binary, which panics with LandlockRestrict
;; inside the build container. Cargo --skip
;; cannot target individual scenarios, so we
;; skip the entire matrix.
"--skip" "approval_matrix_covers_all_modes"
;; This test verifies session-level patch
;; approval caching: approve once, skip
;; future prompts for the same file. When
;; Landlock is unavailable (as in the Guix
;; build container) the sandbox binary panics,
;; triggering the escalation-retry path, which
;; interferes with the approval cache and
;; causes a spurious re-prompt on the second
;; patch.
"--skip" "approving_apply_patch_for_session_skips_future_prompts_for_same_file"
;; These tests expect to interrupt a
;; long-running 'sleep 60' and receive
;; TurnAborted. Default test config is
;; OnRequest + ReadOnly. What happens:
;;
;; 1. ReadOnly wraps the command with
;; codex-linux-sandbox (Landlock-based).
;; 2. Landlock is unavailable in the Guix
;; build container, so the sandbox
;; binary exits instantly (~1 ms).
;; 3. Orchestrator gets SandboxErr::Denied.
;; wants_no_sandbox_approval(OnRequest)
;; returns false (sandboxing.rs:222),
;; so no escalation -- denial returned
;; directly.
;; 4. ToolEmitter::finish sends the error
;; to the mock model as
;; function_call_output.
;; 5. Second mock SSE response fires,
;; turn finishes with TurnComplete.
;; 6. Op::Interrupt arrives 100 ms later,
;; but the turn is already done --
;; TurnAborted is never emitted,
;; test times out.
;;
;; The similar interrupt_long_running_tool_
;; emits_turn_aborted passes because it
;; sends the interrupt with no delay and
;; has only one mock response (so the turn
;; cannot complete first).
"--skip" "interrupt_persists_turn_aborted_marker_in_next_request"
"--skip" "interrupt_tool_records_history_entries"
;; Upstream bug: test hardcodes "0.0.0" in the
;; expected user-agent string but the workspace
;; version is "0.98.0".
"--skip" "get_user_agent_returns_current_codex_user_agent"
;; Same upstream bug: mcp-server tests
;; check the initialize response which
;; includes "version": "0.0.0" but the
;; server returns "0.98.0".
"--skip" "test_codex_tool_passes_base_instructions"
"--skip" "test_shell_command_approval_triggers_elicitation"
"--skip" "test_patch_approval_triggers_elicitation"
;; These codex-exec-server tests need
;; "dotslash", a Meta tool that lazily
;; downloads pre-built binaries from a
;; JSON manifest. The test helper
;; create_transport runs
;; `dotslash -- fetch <path>` to obtain a
;; custom bash binary described in
;; exec-server/tests/suite/bash.
;; dotslash is not available in the build
;; container.
"--skip" "list_tools"
"--skip" "accept_elicitation_for_prompt_rule"
;;; Test isolation bug: each test in
;;; state/src/runtime.rs calls
;;; unique_temp_dir() to get its own
;;; temporary directory (and thus its
;;; own SQLite database). That function
;;; names directories using the current
;;; nanosecond timestamp, so when tests
;;; run in parallel several can receive
;;; the same name and open the same
;;; database. The initial SQLite
;;; migration runs CREATE TABLE threads
;;; (without IF NOT EXISTS), so any init
;;; after the first panics with "table
;;; threads already exists". Any of
;;; these tests
;;; can be the victim.
"--skip" "init_removes_legacy_state_db_files"
"--skip" "upsert_and_get_thread_memory"
"--skip" "get_last_n_thread_memories_for_cwd_matches_exactly"
"--skip" "upsert_thread_memory_errors_for_unknown_thread"
"--skip" "get_last_n_thread_memories_for_cwd_zero_returns_empty"
"--skip" "get_last_n_thread_memories_for_cwd_does_not_prefix_match"
"--skip" "deleting_thread_cascades_thread_memory")
#:cargo-package-crates
''(;;; Tier 0: No internal deps.
"codex-async-utils"
"codex-client"
"codex-execpolicy"
"codex-file-search"
"codex-git"
"codex-keyring-store"
"codex-utils-absolute-path"
"codex-utils-cache"
"codex-utils-cargo-bin"
"codex-utils-home-dir"
"codex-utils-json-to-toml"
"codex-utils-pty"
"codex-utils-readiness"
"codex-utils-string"
"codex-backend-openapi-models"
"codex-process-hardening"
"codex-ansi-escape"
;;; Tier 1: Depends on tier 0.
"codex-utils-image"
"codex-apply-patch"
"codex-protocol"
"codex-windows-sandbox"
"codex-api"
"codex-experimental-api-macros"
"codex-secrets"
"codex-execpolicy-legacy"
"codex-debug-client"
;;; Tier 2.
"codex-app-server-protocol"
"codex-rmcp-client"
"codex-otel"
"codex-state"
"codex-core"
"codex-linux-sandbox"
"codex-feedback"
;;; Tier 3.
"codex-arg0"
"codex-lmstudio"
"codex-login"
"codex-ollama"
"codex-common"
"codex-mcp-server"
"codex-backend-client"
"codex-responses-api-proxy"
;;; Tier 4.
"codex-cloud-requirements"
"codex-exec"
"codex-exec-server"
"codex-stdio-to-uds"
"codex-network-proxy"
"codex-chatgpt"
"codex-cloud-tasks-client"
;;; Tier 5.
"codex-app-server"
"codex-app-server-test-client"
"codex-tui"
;;; Tier 6.
"codex-cloud-tasks"
;; The main executable.
"codex-cli")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir-to-workspace
(lambda _
(chdir "codex-rs")))
(add-after 'chdir-to-workspace 'update-version-in-snapshots
(lambda _
;; Snapshot test files contain hardcoded v0.0.0 version strings.
;; Update them to match the actual package version.
(let ((snap-files (find-files "." "\\.snap$")))
(substitute* snap-files
(("\\(v0\\.0\\.0\\) ") "(v0.98.0)")))))
(add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
(lambda _
;; Replace git dependencies with version references so cargo
;; resolves them from the vendored sources.
(substitute* "Cargo.toml"
(("nucleo = \\{ git = [^}]+\\}")
"nucleo = \"0.5.0\"")
(("runfiles = \\{ git = [^}]+\\}")
"runfiles = \"0.1.0\""))))
(add-after 'chdir-to-workspace 'add-version-to-workspace-deps
(lambda _
;; cargo package requires all dependencies to have versions.
;; cargo package requires all dependencies to have versions.
;; Add version = "0.98.0" to internal path dependencies.
(let ((cargo-files (find-files "." "^Cargo\\.toml$")))
(substitute* cargo-files
;; Handle inline deps: name = { path = "..." }
(("(codex-[a-z0-9-]+) = \\{ path = " all name)
(string-append name " = { version = \"0.98.0\", path = "))
;; Handle inline deps with package: name = { package = "...", path = "..." }
(("(codex-[a-z0-9-]+) = \\{ package = " all name)
(string-append name " = { version = \"0.98.0\", package = "))
;; Handle section deps: [dependencies.X] with path = "..."
(("^(path = \"\\.\\./[^\"]*\")" all path-line)
(string-append path-line "\nversion = \"0.98.0\""))))))
(add-after 'chdir-to-workspace 'patch-hardcoded-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((bash-bin (string-append
(assoc-ref inputs "bash-minimal") "/bin"))
(coreutils-bin (string-append
(assoc-ref inputs "coreutils") "/bin"))
(git-bin (string-append
(assoc-ref inputs "git-minimal") "/bin"))
(sed-bin (string-append
(assoc-ref inputs "sed") "/bin"))
;; Include .policy files: the execpolicy-legacy
;; crate embeds default.policy via include_str!
;; at compile time, so its paths must also be
;; patched.
(rs-files (find-files "." "\\.(rs|policy)$")))
(substitute* rs-files
(("\"/bin/bash\"")
(string-append "\"" bash-bin "/bash\""))
(("\"/bin/sh\"")
(string-append "\"" bash-bin "/sh\""))
(("\"/usr/bin/bash\"")
(string-append "\"" bash-bin "/bash\""))
(("\"/usr/bin/sh\"")
(string-append "\"" bash-bin "/sh\""))
;;; bash/sh with inline arguments, e.g. "/bin/bash -i".
(("\"/bin/bash ")
(string-append "\"" bash-bin "/bash "))
(("\"/bin/sh ")
(string-append "\"" bash-bin "/sh "))
;; coreutils.
(("\"/bin/(cat|cp|date|echo|head|ls|rm|sleep|true|touch)\"" all cmd)
(string-append "\"" coreutils-bin "/" cmd "\""))
;; coreutils.
(("\"/usr/bin/(cat|cp|head|ls|touch|true)\"" all cmd)
(string-append "\"" coreutils-bin "/" cmd "\""))
;; coreutils with inline arguments
;; like "/bin/echo END-EVENT".
(("\"/bin/(cat|cp|date|echo|head|ls|rm|sleep|true|touch) " all cmd)
(string-append "\"" coreutils-bin "/" cmd " "))
(("\"/usr/bin/git\"")
(string-append "\"" git-bin "/git\""))
(("\"/usr/bin/sed\"")
(string-append "\"" sed-bin "/sed\"")))
;; @SHELL@ placeholder from test-shebangs patch
(substitute*
(list "rmcp-client/src/program_resolver.rs"
"tui/src/external_editor.rs")
(("@SHELL@")
(string-append bash-bin "/sh")))
;; shebang in test-only file
(substitute*
"core/tests/suite/user_notification.rs"
(("#!/bin/bash")
(string-append "#!" bash-bin "/bash"))))))
(add-before 'check 'set-home
(lambda _
(setenv "HOME" "/tmp")
(setenv "USER" "nixbld"))))))
(native-inputs (list clang ;bindgen uses libclang to parse BoringSSL's C headers
cmake-minimal ;BoringSSL is compiled from C source
libunwind ;BoringSSL tests verify stack unwinding in assembly
perl python-minimal ;for tests
pkg-config))
(inputs (cons* bash-minimal coreutils git-minimal sed
openssl sqlite `(,zstd "lib")
(cargo-inputs 'codex)))
(home-page "https://github.com/openai/codex")
(synopsis "AI-assisted coding CLI and TUI")
(description
"Codex is an AI-powered coding assistant that runs in the terminal.
It provides an interactive TUI for conversations with AI models, with
support for shell command execution, file editing, and code generation.
Configure providers via @file{~/.codex/config.toml}.")
(license license:asl2.0)))
(define-public codex-acp
(package
(name "codex-acp")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zed-industries/codex-acp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "190sq6s6jfz8dkj1y8305r7x6ln86qqr2j1bnfjci7f1x2wyzmsj"))
(patches (search-patches "codex-acp-0.9.2-remove-patch-sections.patch"
"codex-acp-0.9.2-replace-result-flatten.patch"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-codex-deps
(lambda _
;; Rewrite git dependencies to use vendored sources from rust-codex
(substitute* "Cargo.toml"
(("git = \"https://github.com/zed-industries/codex\", branch = \"acp\"")
"version = \"0.0.0\"")))))))
(native-inputs (list pkg-config))
(inputs (cons* openssl sqlite `(,zstd "lib") (cargo-inputs 'codex-acp)))
(home-page "https://github.com/zed-industries/codex-acp")
(synopsis "ACP-compatible agent bridging Zed Codex with ACP clients")
(description
"This package provides an Agent Client Protocol (ACP) compatible agent
that bridges the Zed Codex runtime with ACP clients over stdio. It
supports multiple LLM providers through configuration in
@file{~/.codex/config.toml} and integrates with MCP servers for filesystem
operations.")
(license license:asl2.0)))

View File

@@ -5,7 +5,7 @@
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2023 Zongyuan Li <zongyuan.li@c0x0o.me>
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2024, 2025 Tomas Volf <~@wolfsden.cz>
;;; Copyright © 2024, 2025, 2026 Tomas Volf <~@wolfsden.cz>
;;; Copyright © 2024 Foundation Devices, Inc. <hello@foundation.xyz>
;;; Copyright © 2024 Jean-Pierre De Jesus DIAZ <jean@foundation.xyz>
;;; Copyright © 2025 Tomas Volf <~@wolfsden.cz>
@@ -197,42 +197,55 @@ Container Runtime fully written in C.")
(define-public conmon
(package
(name "conmon")
(version "2.1.13")
(version "2.2.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/containers/conmon")
(commit (string-append "v" version))))
(url "https://github.com/containers/conmon")
(commit (string-append "v" version))))
(sha256
(base32 "0fiixv9h5dycrixs7s3bq81d06p7qs8491mskxj42wqlkdq5diay"))
(base32 "0n9l6030ibhk7pmsq85rarcf9b0kzglxibd1xnb6vzmkz3ywg1il"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
(string-append "PREFIX=" #$output))
;; XXX: uses `go get` to download 50 packages, runs a ginkgo test suite
;; then tries to download busybox and use a systemd logging library
;; see also https://github.com/containers/conmon/blob/main/nix/derivation.nix
#:tests? #f
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'set-env
(lambda _
;; when running go, things fail because
;; HOME=/homeless-shelter.
(setenv "HOME" "/tmp"))))))
(add-before 'check 'prepare-tests
(lambda* (#:key inputs #:allow-other-keys)
(setenv "RUNTIME_BINARY"
(search-input-file inputs "sbin/runc"))
;; We need to skip all tests requiring journald.
(for-each
(lambda (test file)
(substitute* file
(((string-append "@test \"" test "\" \\{\n$") all)
(string-append all "skip 'no journald in Guix';"))))
'("log driver as journald should pass"
"log driver as journald with short cid should fail"
"multiple log drivers should pass"
"log management: should work with multiple log drivers")
'("test/01-basic.bats"
"test/01-basic.bats"
"test/01-basic.bats"
"test/06-log-management.bats")))))))
(inputs
(list crun
glib
libseccomp))
(native-inputs
(list git
go
pkg-config))
(list bats
git
go-md2man
pkg-config
socat
runc))
(home-page "https://github.com/containers/conmon")
(synopsis "Monitoring tool for Open Container Initiative (OCI) runtime")
(description
@@ -532,7 +545,7 @@ Layer-4 sockets.")
(define-public cni-plugins
(package
(name "cni-plugins")
(version "1.8.0")
(version "1.9.0")
(source
(origin
(method git-fetch)
@@ -541,7 +554,7 @@ Layer-4 sockets.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0bwczkf4kbrx47sa6mnp5kyn65dbg52qnlfyjyydrwshal8rz3gw"))
(base32 "0l3jgbizq0yaxld07hsdbh6ix2w6i789101ddk0ldnsmr93jg6ni"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "vendor")))))
@@ -549,19 +562,10 @@ Layer-4 sockets.")
(arguments
(list
#:install-source? #f
#:tests? #f ; TODO: Figure out how to run tests.
#:import-path "github.com/containernetworking/plugins"
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
;; XXX: Migrate to go-build-system logic.
(invoke "./build_linux.sh"))))
(replace 'install
(lambda* (#:key import-path #:allow-other-keys)
(copy-recursively (string-append "src/"import-path "/bin")
(string-append #$output "/bin")))))))
;; XXX: Tests require root access, see test_linux.sh.
#:tests? #f
#:import-path "github.com/containernetworking/plugins/plugins/..."
#:unpack-path "github.com/containernetworking/plugins"))
(native-inputs
(list go-github-com-alexflint-go-filemutex
go-github-com-buger-jsonparser
@@ -593,7 +597,7 @@ configure network interfaces in Linux containers.")
(define-public gvisor-tap-vsock
(package
(name "gvisor-tap-vsock")
(version "0.8.7")
(version "0.8.8")
(source
(origin
(method git-fetch)
@@ -602,7 +606,7 @@ configure network interfaces in Linux containers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1p9vypphssvqfcm3y2nc7b9v0wcc2smkrqq8k60vskaiza89974k"))
(base32 "1xz710dmy58gngd0qizjw8g9nkraksqald8vzhwc5h36dqkc8nrf"))
(modules '((guix build utils)))
(snippet
#~(begin
@@ -645,7 +649,9 @@ configure network interfaces in Linux containers.")
go-github-com-containers-winquit
go-github-com-coreos-stream-metadata-go
go-github-com-dustin-go-humanize
go-github-com-foxcpp-go-mockdns
go-github-com-google-gopacket
go-github-com-inetaf-tcpproxy
go-github-com-insomniacslk-dhcp
;; go-github-com-linuxkit-virtsock ;Windows only
go-github-com-mdlayher-vsock
@@ -654,7 +660,6 @@ configure network interfaces in Linux containers.")
go-github-com-onsi-ginkgo
go-github-com-onsi-gomega
go-github-com-opencontainers-go-digest
go-github-com-pkg-errors
go-github-com-sirupsen-logrus
go-github-com-songgao-packets
go-github-com-songgao-water
@@ -664,6 +669,7 @@ configure network interfaces in Linux containers.")
go-golang-org-x-mod
go-golang-org-x-sync
go-golang-org-x-sys
go-gopkg-in-yaml-v3
go-gvisor-dev-gvisor))
(home-page "https://github.com/containers/gvisor-tap-vsock")
(synopsis "Network stack for virtualization based on gVisor")
@@ -708,7 +714,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
(define-public podman
(package
(name "podman")
(version "5.8.0")
(version "5.8.1")
(outputs '("out" "docker"))
(properties
`((output-synopsis "docker" "docker alias for podman")
@@ -721,7 +727,7 @@ Its main purpose is to support the key usage by @code{docker-init}:
(url "https://github.com/containers/podman")
(commit (string-append "v" version))))
(sha256
(base32 "0vyl6d198iqrxx3c5vgbdx95fxkmn9fcb0napq44h8bzvjcl9fnj"))
(base32 "1wdsdc0nj4m1v8mn95dhavi87ad0adqmld70da59gvp2abff5f0f"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -879,7 +885,7 @@ being rootless and not requiring any daemon to be running.")
(define-public buildah
(package
(name "buildah")
(version "1.42.1")
(version "1.43.0")
(source
(origin
(method git-fetch)
@@ -887,7 +893,7 @@ being rootless and not requiring any daemon to be running.")
(url "https://github.com/containers/buildah")
(commit (string-append "v" version))))
(sha256
(base32 "1agblw09yw4pc81c2nsjy3j83gznn4micyjyrgpqxlmp93w5w5h0"))
(base32 "0pwdd0mxhxy530c2sbsz0rnnb1jyl41rvnqn9ywfgb6lz5f4ja2a"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View File

@@ -2763,45 +2763,39 @@ comma separated value (CSV) files.")
(license license:bsd-3))))
(define-public immer
;; Use latest commit to fix build with gcc 14.
(let ((commit "df6ef46d97e1fe81f397015b9aeb32505cef653b")
(revision "0"))
(package
(name "immer")
(version (git-version "0.8.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/arximboldi/immer")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "032rb84ahvdnc1m6sj4lflrwnk4p1f2jsq1pv03xbgizp2lr2pkx"))))
(build-system cmake-build-system)
(arguments
(list
;; -Werror appears to report false positives.
;; See <https://github.com/arximboldi/immer/issues/223>.
#:configure-flags #~'("-DDISABLE_WERROR=ON")
#:modules `((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check (assoc-ref gnu:%standard-phases 'check)))))
(inputs (list boost libgc c-rrb))
(native-inputs (list catch2-3 doctest fmt pkg-config))
(home-page "https://sinusoid.es/immer")
(synopsis "Immutable data structures")
(description "Immer is a library of persistent and immutable data structures
(package
(name "immer")
(version "0.9.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/arximboldi/immer")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "04ckvmi391pspqiglzgi8h57gwr8822xhlrg5qdxf5yg6scgkfj2"))))
(build-system cmake-build-system)
(arguments
(list
#:modules `((guix build cmake-build-system)
((guix build gnu-build-system) #:prefix gnu:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(replace 'check (assoc-ref gnu:%standard-phases 'check)))))
(inputs (list boost libgc c-rrb))
(native-inputs (list catch2-3 doctest fmt pkg-config))
(home-page "https://sinusoid.es/immer")
(synopsis "Immutable data structures")
(description "Immer is a library of persistent and immutable data structures
written in C++.")
(properties '((lint-hidden-cpe-vendors . ("immer_project"))))
(license license:boost1.0))))
(properties '((lint-hidden-cpe-vendors . ("immer_project"))))
(license license:boost1.0)))
(define-public zug
(package
(name "zug")
(version "0.1.1")
(version "0.1.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2809,7 +2803,7 @@ written in C++.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06vsbzx4ripidpb6ia7y1y8pmjk6gxzr93ilby90ahj6p2x08baf"))
(base32 "1fy6wvvlp1253lzh66zcq5sp656jxvanxf7iq8pi37ymjq5fyynh"))
(modules '((guix build utils)))
(snippet #~(delete-file-recursively "tools"))))
(build-system cmake-build-system)
@@ -2831,7 +2825,7 @@ composable sequential transformations.")
(define-public lager
(package
(name "lager")
(version "0.1.1")
(version "0.1.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2839,7 +2833,7 @@ composable sequential transformations.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1by9d49qnkncifyjcq16zy605d7v4ps6hvc01q5nsp1nbswm94m4"))))
(base32 "123a75qklhiyic3yaj74h4p8jav2m92x9ssjnfsdiilhycp4p764"))))
(build-system cmake-build-system)
(arguments (list #:configure-flags #~(list "-Dlager_BUILD_EXAMPLES=no")
#:modules `((guix build cmake-build-system)

View File

@@ -77,13 +77,10 @@ command-line environment with support for file manipulation on remote WebDAV
servers.")
(license license:gpl2+)))
;; This package isn't reproducible due to non-deterministic behaviour in a
;; procedural macros that's provided by a crate used by pimsync.
;; See https://github.com/stalwartlabs/hashify/issues/4
(define-public pimsync
(package
(name "pimsync")
(version "0.5.6")
(version "0.5.7")
(source
(origin
(method git-fetch)
@@ -92,13 +89,20 @@ servers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01qxg0mk7if96rmb0q88wgjpnv1fb8iw2dbzwlm0ars1mi3xpmr3"))))
(base32 "0x90l9k3sfnszrvmzqclykpv2py33v9jh92ps68wdd7xkrjp42ga"))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'use-guix-vendored-dependencies
(lambda _
(substitute* "Cargo.toml"
(("^\\[patch.crates-io\\]")
"")
(("^hashify.*$")
"hashify = { version = \"*\" }\n"))))
(add-after 'unpack 'setup-environment
(lambda _
(setenv "PIMSYNC_VERSION"

View File

@@ -237,8 +237,7 @@ blurred background.")
(base32 "09vb9b0pmyhj6fh0b6by59bykszbkdayhz678pnb4pyrdmlvv1am"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils)
(srfi srfi-26))
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(srfi srfi-26))

View File

@@ -357,97 +357,3 @@ and white.")
and background layers of images, which can then be encoded into a DjVu file.")
(home-page "https://jwilk.net/software/didjvu")
(license license:gpl2)))
(define-public ocrodjvu
(let ((revision "0")
(commit "0dd3364462fc77d5674b4457fcc8230835323c30"))
(package
(name "ocrodjvu")
(version (git-version "0.12" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
;; Use the following fork repository, as upstream
;; doesn't seem too concerned with Python 3
;; compatibility.
(url "https://github.com/rmast/ocrodjvu")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0x64hg9ysrk8sismxb4jgk0sq7r9j90v2i9765xhmxpiy6f0lpni"))))
(build-system gnu-build-system)
(arguments
(list
#:modules '((guix build gnu-build-system)
((guix build pyproject-build-system) #:prefix python:)
(guix build utils))
#:imported-modules `(,@%default-gnu-imported-modules
,@%pyproject-build-system-modules)
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'fix-for-python-3.11
(lambda _
(substitute* "lib/cli/ocrodjvu.py"
;; The getargspec function has been removed in python 3.11.
(("init_args, _, _, _ = inspect.getargspec\\(cls.__init__\\)")
"init_args = inspect.getfullargspec(cls.__init__).args"))))
(add-before 'check 'disable-failing-test
(lambda _
(substitute* "tests/test_ipc.py"
;; test_wait_signal gets stuck forever
(("yield self\\._test_signal, name")
"return True")
;; test_path fails to find a file it should have created
(("path = os\\.getenv\\('PATH'\\)\\.split\\(':'\\)")
"return True"))
;; Disable tests with tesseract. They can't work without
;; the language files that must downloaded by the final user
;; as they are not packaged in Guix.
(substitute* "tests/ocrodjvu/test.py"
(("engines = stdout\\.getvalue\\(\\)\\.splitlines\\(\\)")
"engines = ['ocrad']"))
(substitute* "tests/ocrodjvu/test_integration.py"
(("engines = 'tesseract', 'cuneiform', 'gocr', 'ocrad'")
"engines = 'ocrad'"))))
(replace 'install
(lambda _
(invoke "make" "install"
"DESTDIR=" (string-append "PREFIX=" #$output))))
(add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-path
(lambda* (#:key outputs #:allow-other-keys)
(for-each (lambda (file)
(wrap-program (search-input-file outputs file)
`("PATH" ":" prefix
(,(string-append
#$(this-package-input "djvulibre") "/bin:"
#$(this-package-input "ocrad") "/bin:"
#$(this-package-input "tesseract-ocr")
"/bin")))))
'("bin/djvu2hocr"
"bin/hocr2djvused"
"bin/ocrodjvu")))))))
(native-inputs
(list (libc-utf8-locales-for-target) libxml2 python-pynose python-pillow))
(inputs
(list bash-minimal
djvulibre
ocrad
python-djvulibre
python-future
python-html5lib
python-lxml
python-pyicu
python-regex
python-wrapper
tesseract-ocr))
(synopsis "Program to perform OCR on DjVu files")
(description
"@code{ocrodjvu} is a wrapper for OCR systems, that allows you to perform
OCR on DjVu files.")
(home-page "https://jwilk.net/software/ocrodjvu")
(license license:gpl2))))

View File

@@ -9,6 +9,7 @@
;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
;;; Copyright © 2025-2026 Jonas Meeuws <jonas.meeuws@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,6 +39,7 @@
#:use-module (guix build-system copy)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
@@ -54,94 +56,12 @@
#:use-module (gnu packages xorg)
#:use-module (srfi srfi-1))
(define-public d-tools
(package
(name "d-tools")
(version "2.105.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/tools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hvz786k0pi8697x1vk9x5bx52jiy7pvi13wmfkx15ddvv0x5j33"))))
(build-system gnu-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda _
(mkdir-p "bin")
(setenv "CC" #$(cc-for-target))
(setenv "LD" #$(ld-for-target))
(invoke "ldc2" "rdmd.d" "--of" "bin/rdmd")
(apply invoke "ldc2" "--of=bin/dustmite"
(find-files "DustMite" ".*\\.d"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "bin/rdmd" "rdmd_test.d" "bin/rdmd"
"--rdmd-default-compiler" "ldmd2"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/man")))
(for-each delete-file (find-files "bin" "\\.o$"))
(copy-recursively "bin" bin)
(copy-recursively "man" man)))))))
(native-inputs
(list ldc
(module-ref (resolve-interface
'(gnu packages commencement))
'ld-gold-wrapper)))
(home-page "https://github.com/dlang/tools")
(synopsis "Useful D-related tools")
(description
"@code{d-tools} provides two useful tools for the D language: @code{rdmd},
which runs D source files as scripts, and @code{dustmite}, which reduces D code
to a minimal test case.")
(license license:boost1.0)))
;; Compilers and tooling for the D programming language.
;; Note: The GNU D compiler is defined in (gnu packages gcc) instead.
(define-public gdmd
(let ((commit "ff2c97a47408fb71c18a2d453294d18808a97cc5")
(revision "1"))
(package
(name "gdmd")
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/D-Programming-GDC/gdmd")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0pd70clk70069xcjysaas7zszzmigrcw1zl2xxv8kzdg7y7xrzvm"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("dmd-script" "bin/gdmd")
("dmd-script.1" "share/man/man1/gdmd.1"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'adjust-gdc-location
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "dmd-script"
(("my \\$gdc_dir.*")
(string-append "my $gdc_dir = \""
(dirname (search-input-file inputs "/bin/gdc"))
"\";\n"))))))))
(inputs (list gdc perl))
(home-page "https://github.com/D-Programming-GDC/gdmd")
(synopsis "DMD-like wrapper for GDC")
(description "This package provides a DMD-like wrapper for the
@acronym{GNU D Compiler,GDC}.")
(license license:gpl3+))))
;; LLVM-based D compiler
;; We use GDC, the D frontend for GCC, to bootstrap ldc. We then use
;; ldc to bootstrap itself so that no reference remains to GDC.
@@ -409,8 +329,12 @@ integration tests...\n")
(properties
(alist-delete 'hidden? (package-properties ldc-bootstrap)))))
;;; Bootstrap version of phobos that is built with GDC, using GDC's standard
;;; library.
;; Reference D compiler
;; Note: Has limited supported-systems.
;; DMD built with GDC as the bootstrap D compiler (via the gdmd wrapper).
;; Shared libraries are not built, tests are disabled.
(define-public dmd-bootstrap
(package
;; This package is purposefully named just "dmd" and not "dmd-bootstrap",
@@ -418,16 +342,16 @@ integration tests...\n")
;; and their names must have the same length to avoid corrupting the
;; binary.
(name "dmd")
(version "2.106.1")
(version "2.111.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/dmd")
(commit (string-append "v" version))))
(url "https://github.com/dlang/dmd")
(commit (string-append "v" version))))
(file-name (git-file-name "dmd" version))
(sha256
(base32
"1bq4jws1vns2jjzfz7biyngrx9y5pvvgklymhrvb5kvbzky1ldmy"))))
"0cz5qdd1j89w2s7nzw9ahzwsqiraidg4ajy7syy7qkk7mwcyrf6r"))))
(build-system gnu-build-system)
(arguments
(list
@@ -436,111 +360,198 @@ integration tests...\n")
;; Disable tests, as gdmd cannot cope with some arguments used such as
;; '-conf'.
#:tests? #f
#:out-of-source? #t
#:test-target "test"
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
;; XXX: Proceed despite conflicts from symbols provided by both
;; the source built and GDC.
"DFLAGS=-L--allow-multiple-definition"
"ENABLE_RELEASE=1"
(string-append "HOST_CXX=" #$(cxx-for-target))
"HOST_DMD=gdmd"
(string-append "INSTALL_DIR=" #$output)
(string-append "SYSCONFDIR=" #$output "/etc")
"ENABLE_RELEASE=1"
;; Do not build the shared libphobos2.so library, to avoid
;; retaining a reference to gcc:lib.
"SHARED=0"
(string-append "SYSCONFDIR=" #$output "/etc")
"VERBOSE=1"
"-f" "posix.mak")
"VERBOSE=1")
#:modules
`(,@%default-gnu-modules
(srfi srfi-1)
(srfi srfi-26))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-phobos-source-and-chdir
;; Start with building phobos, which in turns will automatically
;; build druntime and dmd. A minimal dmd command is still
;; required to do so, which is why we need dmd-bootstrap-0.
(lambda _
(symlink "." "dmd") ;to please the build system expected layout
(copy-recursively
#$(this-package-native-input (git-file-name "phobos" version))
"phobos")
(chdir "phobos")))
(add-after 'copy-phobos-source-and-chdir 'adjust-phobos-install-dirs
(lambda _
(substitute* "posix.mak"
;; Install to lib directory, not to e.g. 'linux/lib64'.
(("\\$\\(INSTALL_DIR)/\\$\\(OS)/\\$\\(lib_dir)")
(string-append #$output "/lib"))
;; Do not install license file, already done by the gnu build
;; system.
((".*\\$\\(INSTALL_DIR)/phobos-LICENSE.txt.*") ""))))
(delete 'configure)
(add-after 'install 'install-druntime
(lambda args
(chdir "../druntime")
(apply (assoc-ref %standard-phases 'install) args)
(chdir "..")))
(add-after 'install-druntime 'install-includes
(lambda _
;; Normalize the include files prefix to include/dmd.
(let ((include-dir (string-append #$output "/include/dmd")))
(mkdir-p include-dir)
(rename-file (string-append #$output "/src/phobos")
(string-append include-dir))
(copy-recursively "druntime/import" include-dir))
(delete-file-recursively (string-append #$output "/src"))))
(add-after 'install-druntime 'install-dmd
(assoc-ref %standard-phases 'install))
(add-after 'install-license-files 'refine-install-layout
(lambda _
(let* ((docdir (string-append #$output "/share/doc/"
(strip-store-file-name #$output)))
;; The dmd binary gets installed to
;; e.g. /linux/bin64/dmd.
(dmd (car (find-files #$output "^dmd$")))
(dmd.conf (car (find-files #$output "^dmd.conf$")))
(os-dir (dirname (dirname dmd))))
;; Move samples from root to the doc directory.
(rename-file (string-append #$output "/samples")
(string-append docdir "/samples"))
;; Remove duplicate license file.
(delete-file (string-append #$output
"/dmd-boostlicense.txt"))
;; Move dmd binary and dmd.conf.
(install-file dmd (string-append #$output "/bin"))
(install-file dmd.conf (string-append #$output "/etc"))
(delete-file-recursively os-dir))))
(add-after 'refine-install-layout 'patch-dmd.conf
(lambda* (#:key outputs #:allow-other-keys)
(substitute* (search-input-file outputs "etc/dmd.conf")
(("lib(32|64)")
"lib")
(("\\.\\./src/(phobos|druntime/import)")
"include/dmd")))))))
(native-inputs (list gdmd which
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"1yw7nb5d78cx9m7sfibv7rfc7wj3w0dw9mfk3d269qpfpnwzs4n9")))))
(home-page "https://github.com/dlang/dmd")
#~(let* ((phase-in-sub-dir (lambda (phase sub-dir)
(lambda args
(with-directory-excursion sub-dir
(apply
(assoc-ref %standard-phases phase)
args)))))
(target-bin-sh (string-append
#$(this-package-input "bash-minimal")
"/bin/sh")))
(modify-phases %standard-phases
(replace 'unpack
(lambda* (#:key source #:allow-other-keys)
(let ((dmd-source source)
(phobos-source #$(this-package-native-input
(git-file-name "phobos" version))))
(mkdir "source")
(chdir "source")
(copy-recursively dmd-source "dmd" #:keep-mtime? #t)
(copy-recursively phobos-source "phobos" #:keep-mtime? #t)
(for-each (lambda (f)
(false-if-exception (make-file-writable f)))
(find-files ".")))))
(add-after 'unpack 'patch-git-ls-tree
;; The druntime Makefile tries to use git ls-tree to get all
;; source files in dmd/druntime/. We replace the command with a
;; listing of those files.
(lambda _
(with-directory-excursion "dmd/druntime"
(substitute* "Makefile"
(("^MANIFEST *:*=.*$")
(string-append "MANIFEST := "
(string-join (map (cut string-drop <> 2)
(find-files "./")))
"\n"))))))
(add-after 'unpack 'patch-paths-in-phobos
(lambda _
(with-directory-excursion "phobos"
;; (substitute* "std/datetime/timezone.d"
;; (("\"/usr/share/zoneinfo/\"")
;; (format #f "~s" target-zoneinfo)))
;; (substitute* "std/net/curl.d"
;; (("\"libcurl\\.so\"")
;; (format #f "~s" target-lib-curl)))
(substitute* "std/process.d"
(("return \"/bin/sh\";")
(format #f "return ~s;" target-bin-sh))
(("#!/bin/sh")
(string-append "#!" target-bin-sh))))))
(add-after 'unpack 'patch-tests
(lambda _
;; Since the implementation of SOURCE_DATE_EPOCH support in
;; Ddoc, this test fails, as it expects Ddoc timestamps to
;; match the output of the `date` command.
;; XXX: Report upstream.
(substitute* (string-append
"dmd/compiler/test/compilable"
"/extra-files/ddocYear-postscript.sh")
(("^YEAR=.*$") "YEAR=1970\n"))
;; This test creates a shell script and runs it.
(substitute* "dmd/compiler/test/dshell/test6952.d"
(("/usr/bin/env bash") target-bin-sh))
;; In the sarif json output, the compiler version string ends
;; with a raw newline for some reason, causing these tests to
;; fail.
(for-each
delete-file
'("dmd/compiler/test/compilable/sarif_success_test.d"
"dmd/compiler/test/fail_compilation/sarif_test.d"
"dmd/compiler/test/fail_compilation/sarifmultiple_test.d"))
;; tries to debug 64bit executable
;; not in executable format: file format not recognized
#$@(if (target-32bit?)
'((delete-file
"dmd/compiler/test/runnable/gdb_slice_debuginfo_64.d"))
'())
;; Locations in stack traces are broken for some reason,
;; causing these tests to fail.
;; XXX: Report upstream.
(for-each
delete-file
'("dmd/compiler/test/runnable/test17559.d"
"dmd/compiler/test/runnable/test19086.d"))
(substitute* "dmd/druntime/test/exceptions/Makefile"
(((string-append "line_trace line_trace_21656 "
"long_backtrace_trunc rt_trap_exceptions "))
""))
(substitute* "dmd/druntime/test/gc/Makefile"
((" invariant ") " "))))
(delete 'bootstrap)
(delete 'configure)
(replace 'build
(phase-in-sub-dir 'build "dmd"))
(add-after 'build 'build-phobos
(phase-in-sub-dir 'build "phobos"))
(replace 'check
(phase-in-sub-dir 'check "dmd"))
(add-after 'check 'check-phobos
(phase-in-sub-dir 'check "phobos"))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((platform (cond (#$(target-linux?) "linux")))
(bits (if #$(target-64bit?) 64 32))
(build-sub-dir (format #f "generated/~a/release/~a"
platform bits))
(out (assoc-ref outputs "out"))
(lib (assoc-ref outputs "lib"))
(out-bin (string-append out "/bin"))
(out-etc (string-append out "/etc"))
(out-include (string-append out "/include/d/dmd"))
(out-lib (string-append out "/lib"))
(lib-lib (string-append lib "/lib"))
(out-man (string-append out "/share/man")))
(with-directory-excursion "dmd"
(with-directory-excursion build-sub-dir
(install-file "dmd" out-bin)
(install-file "libdruntime.a" out-lib)
(for-each (cut install-file <> lib-lib)
(find-files "." "^libdruntime\\.so[.0-9]*$")))
(copy-recursively "druntime/import" out-include)
(copy-recursively "compiler/docs/man" out-man))
(with-directory-excursion "phobos"
(with-directory-excursion build-sub-dir
(install-file "libphobos2.a" out-lib)
(for-each (cut install-file <> lib-lib)
(find-files "." "^libphobos2\\.so[.0-9]*$")))
(copy-recursively "etc" (string-append out-include "/etc"))
(copy-recursively "std" (string-append out-include "/std")))
(mkdir-p out-etc)
(with-output-to-file (string-append out-etc "/dmd.conf")
(lambda _
(format #t "[Environment]\n")
(format #t "DFLAGS=")
(format #t " -I~a" out-include)
(format #t " -L-L~a" out-lib)
(format #t " -L-L~a" lib-lib)
(format #t " -L--export-dynamic")
(format #t " -fPIC")
(format #t "\n"))))))
(replace 'install-license-files
;; Phobos license is identical.
(phase-in-sub-dir 'install-license-files "dmd"))))))
(inputs
(list bash-minimal))
(native-inputs
(list gdmd which
gdb/pinned ; for tests
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"1ydls3ar6d3f7ffqvidr46x3zrz3wlzjln5qa0nbz843ndjr4g7n")))))
(outputs '("out" "lib" "debug"))
(synopsis "Reference D Programming Language compiler")
(description "@acronym{DMD, Digital Mars D compiler} is the reference
compiler for the D programming language.")
(license license:boost1.0)
(home-page "https://github.com/dlang/dmd")
;; As reported by upstream:
;; https://wiki.dlang.org/Compilers#Comparison
(supported-systems '("i686-linux" "x86_64-linux"))
(supported-systems '("i686-linux" "x86_64-linux" "aarch64-linux"))
;; This variant exists only for bootstrapping purposes.
(properties '((hidden? . #t)))
(properties '((hidden? . #t)))))
(license license:boost1.0)))
;;; Second bootstrap of DMD, built using dmd-bootstrap, with its shared
;;; libraries preserved.
;; DMD built with dmd-bootstrap as the bootstrap D compiler.
;; Shared libraries are built now, tests are no longer disabled.
(define-public dmd
(package
(inherit dmd-bootstrap)
@@ -549,41 +560,37 @@ compiler for the D programming language.")
(strip-keyword-arguments
'(#:tests?) ;reinstate tests
(package-arguments dmd-bootstrap))
((#:disallowed-references _ ''())
((#:disallowed-references _ ''())
(list dmd-bootstrap))
((#:modules _ ''())
'((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))) ;for fold
((#:make-flags flags ''())
#~(fold delete #$flags '("DFLAGS=-L--allow-multiple-definition"
"HOST_DMD=gdmd"
#~(fold delete #$flags '("HOST_DMD=gdmd"
"SHARED=0")))
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'patch-dmd.conf 'rewrite-references-to-bootstrap
;; DMD keeps references to include files used to build a
;; binary. Rewrite those of dmd-bootstrap to itself, to reduce
;; its closure size.
(lambda* (#:key native-inputs inputs outputs
#:allow-other-keys)
(let ((dmd (search-input-file outputs "bin/dmd"))
(dmd-bootstrap (dirname
(dirname
(search-input-file
(or native-inputs inputs)
"bin/dmd")))))
;; XXX: Use sed, as replace-store-references wouldn't
;; replace the references, while substitute* throws an
;; error.
(add-after 'install 'rewrite-references-to-bootstrap
;; D compilers can keep references to the include files used to
;; build a binary in exception messages. For dmd, rewrite the
;; references to dmd-bootstrap to itself, to reduce its closure
;; size.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((in-dmd-bootstrap #$(this-package-native-input "dmd"))
(out (assoc-ref outputs "out"))
(out-bin-dmd (string-append out "/bin/dmd")))
;; XXX: Use sed, as replace-store-references wouldn't replace
;; the references, while substitute* throws an error.
(invoke "sed" "-i"
(format #f "s,~a,~a,g" dmd-bootstrap #$output)
dmd))))))))
(native-inputs (modify-inputs (package-native-inputs dmd-bootstrap)
(replace "gdmd" dmd-bootstrap)))
(format #f "s,~a,~a,g" in-dmd-bootstrap out)
out-bin-dmd))))))))
(native-inputs
(modify-inputs (package-native-inputs dmd-bootstrap)
(delete "gdmd")
(append dmd-bootstrap)))
(properties
(alist-delete 'hidden? (package-properties dmd-bootstrap)))))
;; D related tools
(define-public dub
(package
(name "dub")
@@ -634,6 +641,66 @@ while providing the opportunity to customize things when
needed.")
(license license:expat)))
(define-public d-tools
(package
(name "d-tools")
(version "2.105.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/tools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hvz786k0pi8697x1vk9x5bx52jiy7pvi13wmfkx15ddvv0x5j33"))))
(build-system gnu-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-tests
(lambda _
;; Skip broken make ONESHELL shell test.
(substitute* "rdmd_test.d"
(("makeVersion = .*$") "makeVersion = \"skip\";"))))
(delete 'configure)
(replace 'build
(lambda _
(mkdir-p "bin")
(setenv "CC" #$(cc-for-target))
(setenv "LD" #$(ld-for-target))
(invoke "ldc2" "rdmd.d" "--of" "bin/rdmd")
(apply invoke "ldc2" "--of=bin/dustmite"
(find-files "DustMite" ".*\\.d"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "bin/rdmd" "rdmd_test.d" "bin/rdmd"
"--rdmd-default-compiler" "ldmd2"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/man")))
(for-each delete-file (find-files "bin" "\\.o$"))
(copy-recursively "bin" bin)
(copy-recursively "man" man)))))))
(native-inputs
(list ldc
(module-ref (resolve-interface
'(gnu packages commencement))
'ld-gold-wrapper)))
(home-page "https://github.com/dlang/tools")
(synopsis "Useful D-related tools")
(description
"@code{d-tools} provides two useful tools for the D language: @code{rdmd},
which runs D source files as scripts, and @code{dustmite}, which reduces D code
to a minimal test case.")
(license license:boost1.0)))
;; D libraries
(define-public gtkd
(package
(name "gtkd")
@@ -686,8 +753,8 @@ needed.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lievenhey/d_demangler")
(commit (string-append "version-" version))))
(url "https://github.com/lievenhey/d_demangler")
(commit (string-append "version-" version))))
(file-name (git-file-name name version))
(sha256
(base32
@@ -705,8 +772,8 @@ needed.")
(install-file "libd_demangle.so"
(string-append #$output "/lib")))))))
(native-inputs (list dmd))
(home-page "https://github.com/lievenhey/d_demangler")
(synopsis "Utility to demangle D symbols")
(description "@command{d_demangle} is a small utility that can be used to
demangle D symbols. A shared library is also provided.")
(license license:gpl3+)))
(synopsis "D symbol demangling library")
(description "@code{libd_demangle.so} is a small shared library that can be used to
demangle D symbols. It exposes a C interface that wraps D's @code{std.demangle}.")
(license license:gpl3+)
(home-page "https://github.com/lievenhey/d_demangler")))

View File

@@ -14,7 +14,7 @@
;;; Copyright © 2022, 2024, 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2019 Amin Bandali <bandali@gnu.org>
;;; Copyright © 2020, 2021, 2022, 2023, 2024, 2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020-2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Andrew Miloradovsky <andrew@interpretmath.pw>
;;; Copyright © 2022 Christian Gelinek <cgelinek@radlogic.com.au>
;;; Copyright © 2022 jgart <jgart@dismail.de>
@@ -29,6 +29,7 @@
;;; Copyright © 2025, 2026 Gabriel Wicki <gabriel@erlikon.ch>
;;; Copyright © 2026 Thomas Kramer <thomas@f-si.org>
;;; Copyright © 2023 pinoaffe <pinoaffe@gmail.com>
;;; Copyright © 2018, 2021 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,6 +65,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
@@ -76,11 +78,11 @@
#:use-module (gnu packages curl)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
#:use-module (gnu packages engineering)
#:use-module (gnu packages embedded)
#:use-module (gnu packages engineering)
#:use-module (gnu packages flex)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
@@ -93,37 +95,41 @@
#:use-module (gnu packages gperf)
#:use-module (gnu packages graph)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages image)
#:use-module (gnu packages java)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libftdi)
#:use-module (gnu packages logging)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages logging)
#:use-module (gnu packages m4)
#:use-module (gnu packages man)
#:use-module (gnu packages markup)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages maths)
#:use-module (gnu packages m4)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages networking)
#:use-module (gnu packages pdf)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages regex)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages ruby)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
@@ -132,16 +138,16 @@
#:use-module (gnu packages sqlite)
#:use-module (gnu packages stb)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
#:use-module (gnu packages toolkits)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xml))
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define delkw (@@ (guix utils) delkw))
@@ -281,7 +287,7 @@ formal verification. This is the Yosyshq fork of ABC.")
(define-public apycula
(package
(name "apycula")
(version "0.28")
(version "0.31")
;; The pypi tar.gz file includes the necessary .pickle files, not available
;; in the home-page repository.
(source
@@ -289,11 +295,24 @@ formal verification. This is the Yosyshq fork of ABC.")
(method url-fetch)
(uri (pypi-uri "apycula" version))
(sha256
(base32 "0llwcz4fji4sbdajlr43spf3mgdaw42rm15va1l9zb8314fn7wq1"))))
(base32 "0pf43cd071kv5ann78hl5qrcj9vhndr46ds2g12sgnfjfvh6pfpg"))))
(build-system pyproject-build-system)
(arguments (list #:tests? #f)) ;requires Gowin EDA tools
(inputs (list python-crc))
(native-inputs (list python-setuptools))
(arguments
(list #:tests? #f ;requires Gowin EDA tools
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-setup
(lambda _
;; Acceptable, but degraded performance.
(substitute* "setup.py"
((".*fastcrc.*") ""))))))) ;TODO: Package python-fastcrc
(propagated-inputs
(list python-cattrs
python-crcmod
python-numpy
python-msgpack
python-msgspec))
(native-inputs (list python-setuptools python-setuptools-scm))
(home-page "https://github.com/YosysHQ/apicula/")
(synopsis "Gowin FPGA bitstream format")
(description
@@ -335,6 +354,44 @@ supporting gerber, excellon and g-code. It is part of the RiNgDove EDA
suite.")
(license license:gpl2+)))
(define-public charlib
(package
(name "charlib")
(version "2.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stineje/CharLib")
(commit version)))
(sha256
(base32 "0phklm6wcpvwdfx00k0q8qvpvdqf6wjvzirkfji7vc7ils7wz2sl"))
(file-name (git-file-name name version))))
(build-system pyproject-build-system)
(inputs
(list ngspice
pyspice
python-liberty-parser
python-matplotlib
python-numpy
python-ply
python-pyyaml
python-requests
python-schema
python-scipy
python-tqdm))
(native-inputs
(list python-poetry-core
python-pytest
python-setuptools))
(home-page "https://stineje.github.io/CharLib")
(synopsis "CMOS standard-cell characterization")
(description
"@code{Charlib} is an @acronym{EDA, Electronic Design Automation} tool used to
extract timing and power characteristics from CMOS combinational and sequential
standard-cells. It is compatible with @code{ngspice} and @code{Xyce}.")
(license license:gpl2)))
(define-public ciel
(package
(name "ciel")
@@ -677,6 +734,57 @@ Simulator Trace} files.")
;; Exception against free government use in tcl_np.c and tcl_np.h.
(license (list license:gpl2+ license:expat license:tcl/tk)))))
(define-public horizon-eda
(package
(name "horizon-eda")
(version "2.7.2")
;; TODO: try to unbundle some of the 3rd parties.
;; We have packages for nlohmann-json, range-v3, catch2 and clipper.
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/horizon-eda/horizon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16q22yf407820430cva8i2b3dcmwpjdsbx0wlarj8v2mj5ixs932"))))
(build-system meson-build-system)
(arguments
(list
#:tests? #f ; no tests
#:glib-or-gtk? #t))
(native-inputs (list cmake-minimal ;; OpenCASCADE is only found by cmake
`(,glib "bin")
gobject-introspection
pkg-config))
(inputs (list boost
cairomm
cppzmq
curl
glib
glibmm
glm
gsettings-desktop-schemas
gtk+
gtkmm-3
libarchive
libgit2-glib
librsvg
libspnav
libzip
opencascade-occt
podofo
sqlite
`(,util-linux "lib")
zeromq))
(home-page "https://horizon-eda.org/")
(synopsis "@acronym{PCB, Printed Circuit Board} design tool")
(description "Horizon is an @acronym{EDA, Electronic Design Automation}
package supporting an integrated end-to-end workflow for PCB design, including
from parts management and schematic entry to gerber export.")
(license license:gpl3+)))
(define-public iverilog
(package
(name "iverilog")
@@ -797,71 +905,10 @@ iCE40 FPGAs and providing simple tools for analyzing and creating bitstream
files.")
(license license:isc)))
(define-public json-for-vhdl
;; No tagged releases.
(let ((commit "0dc9e317440263cd4941f157f5e5668baa858ec2")
(revision "0"))
(package
(name "json-for-vhdl")
(version (git-version "20220905" revision commit)) ;last revision
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Paebbels/JSON-for-VHDL/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1062g2c3dpsb67zhqrn1j04p7jl28g4mcxd6nhrqqfffjsvxkpw9"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("src" "share/json-for-vhdl/work/src"
#:include ("vhdl")))
#:phases
#~(modify-phases %standard-phases
;; The examples/Encodings_VUnit test requires vhdl builtins.
(add-after 'unpack 'fix-check
(lambda _
(substitute* "tests/VUnit/run.py"
(("from_argv\\(\\)")
"from_argv()\nvu.add_vhdl_builtins()")))))))
(native-search-paths
(list (search-path-specification
(variable "FW_JSON_VHDL")
(separator #f)
(files (list "share/json-for-vhdl")))))
(home-page "https://github.com/Paebbels/JSON-for-VHDL/")
(synopsis "Parse and query JSON data structures in VHDL")
(description
"The JSON-for-VHDL library provides a parser to query JSON data
structures from external files on disk. It provides a context to be
used in the declarative section of design units.")
(license license:asl2.0))))
;;; Required by python-vunit.
(define json-for-vhdl-for-vunit
(let ((commit "95e848b8902c6b4275d715462e1a2cc60706917c") ;sync with vunit
(revision "0"))
(package
(inherit json-for-vhdl)
(name "json-for-vhdl-for-vunit")
(version (git-version "20220106" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Paebbels/JSON-for-VHDL/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1c106hm0sfnzdi5j9vaacjlz7i5m1dm75j7lrgcdsa4siw5ac7k3")))))))
(define-public klayout
(package
(name "klayout")
(version "0.30.6") ;keep in sync with python-klayout
(version "0.30.7")
(source
(origin (method git-fetch)
(uri (git-reference
@@ -870,7 +917,7 @@ used in the declarative section of design units.")
(file-name (git-file-name name version))
(sha256
(base32
"0p4achjlynhg5wc0zmxkzljx115l7vcg3mp3f8i8pjydv8visnh4"))))
"0xyrn9vhx871vm141hgsb9qrdim51vfk2mw8hcqyam1ixkbz5jjv"))))
(build-system copy-build-system)
(arguments
(list
@@ -1010,6 +1057,155 @@ It simulates the netlists of the cells with ngspice and writes the
characterization result in a liberty library file.")
(license license:agpl3+)))
(define-public lepton-eda
(package
(name "lepton-eda")
(version "1.9.18-20220529")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lepton-eda/lepton-eda/")
(commit version)))
(sha256
(base32
"06plrcab3s2rpyf0qv2gzc1yp33627xi8105niasgixckk6glnc2"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list
;; When running "make", the POT files are built with the build time as
;; their "POT-Creation-Date". Later on, "make" notices that .pot
;; files were updated and goes on to run "msgmerge"; as a result, the
;; non-deterministic POT-Creation-Date finds its way into .po files,
;; and then in .gmo files. To avoid that, simply make sure 'msgmerge'
;; never runs. See <https://bugs.debian.org/792687>.
"ac_cv_path_MSGMERGE=true"
(string-append "--with-pcb-datadir="
#$(this-package-input "pcb")
"/share")
(string-append "--with-pcb-lib-path="
#$(this-package-input "pcb")
"/share/pcb/pcblib-newlib:"
#$(this-package-input "pcb")
"/share/pcb/newlib")
"--with-gtk3"
"CFLAGS=-fcommon"
"--enable-guild"
"--enable-contrib")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
;; For logs and auto-compilation
(setenv "HOME" "/tmp")
;; Ensure that readline is found by lepton-shell
(substitute* "script.in"
(("\\(eval-when \\(expand load eval\\)" m)
(string-append "
(add-to-load-path \"" #$(this-package-input "guile-readline")
"/share/guile/site/3.0\")
(set! %load-compiled-path (cons \""
#$(this-package-input "guile-readline")
"/lib/guile/3.0/site-ccache/"
"\" %load-compiled-path))
" m)))))
(add-before 'build 'fix-dynamic-link
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "liblepton/scheme/lepton/ffi/lib.scm"
(("\"liblepton\"")
(string-append "\"" #$output "/lib/liblepton.so" "\""))
(("\"libleptonattrib\"")
(string-append "\"" #$output "/lib/libleptonattrib.so" "\""))
(("\"libleptongui\"")
(string-append "\"" #$output "/lib/libleptongui.so" "\""))
(("\"libglib-2.0\"")
(string-append
"\"" (search-input-file inputs "/lib/libglib-2.0.so") "\""))
(("\"libgobject-2.0\"")
(string-append
"\"" (search-input-file inputs "/lib/libgobject-2.0.so") "\""))
(("\"libgtk-3\"")
(string-append
"\"" (search-input-file inputs "/lib/libgtk-3.so") "\"")))
;; For finding libraries when running tests before installation.
(setenv "LIBLEPTONGUI"
(string-append (getcwd)
"/libleptongui/src/.libs/libleptongui.so"))
(setenv "LIBLEPTON"
(string-append (getcwd)
"/libleptongui/src/.libs/liblepton.so"))
(setenv "LD_LIBRARY_PATH"
(string-append (getcwd)
"/libleptonattrib/src/.libs/:"
(getenv "LIBRARY_PATH")))))
(add-before 'bootstrap 'prepare
(lambda _
;; Some of the scripts there are invoked by autogen.sh.
(for-each patch-shebang
(find-files "build-tools"))
;; Make sure 'msgmerge' can modify the PO files.
(for-each (lambda (po)
(chmod po #o666))
(find-files "." "\\.po$"))
;; This would normally be created by invoking 'git', but it
;; doesn't work here.
(call-with-output-file "version.h"
(lambda (port)
(format port "#define PACKAGE_DATE_VERSION \"~a\"~%"
#$(string-drop version
(+ 1
(string-index version #\-))))
(format port
"#define PACKAGE_DOTTED_VERSION \"~a\"~%"
#$(string-take version
(string-index version #\-)))
(format port
"#define PACKAGE_GIT_COMMIT \"cabbag3\"~%")))))
(add-after 'install 'compile-scheme-files
(lambda _
(unsetenv "LIBLEPTONGUI")
(unsetenv "LIBLEPTON")
(unsetenv "LD_LIBRARY_PATH")
(invoke "make" "precompile"))))))
(native-inputs
(list autoconf
automake
desktop-file-utils
flex
gettext-minimal
groff
gawk
libtool
pkg-config
m4
perl
texinfo))
(inputs
(list glib
gtk+
gtksheet
guile-3.0
guile-readline
pcb
shared-mime-info))
(home-page "https://lepton-eda.github.io/")
(synopsis
"Suite of tools for designing @acronym{PCB, Printed Circuit Boards}")
(description
"Lepton is an @acronym{EDA, Electronic Design Automation} tool set
forked from gEDA/gaf in late 2016. EDA tools are used for electrical circuit
design, schematic capture, simulation, prototyping, and production. Lepton
EDA includes tools for schematic capture, attribute management, bill of
materials (BOM) generation, netlisting into over 20 netlist formats, analog
and digital simulation, and PCB layout, and many other features.")
(license license:gpl2+)))
(define-public libngspice
;; Note: The ngspice's build system does not allow us to build both the
;; library and the executables in one go. Thus, we have two packages.
@@ -1062,7 +1258,7 @@ an embedded event driven algorithm.")
(define-public librelane
(package
(name "librelane")
(version "3.0.0rc0")
(version "3.0.0rc1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1071,7 +1267,7 @@ an embedded event driven algorithm.")
(file-name (git-file-name name version))
(sha256
(base32
"1hi4ppdwl1zh7yw1ncy1jrqc6za4mz243mqvfjr7mcdm349pyvb0"))))
"1593qrpsczdlml5cqqrx51fvlpxr9k85l2aba2dj0fv7gink4hx0"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -1126,7 +1322,7 @@ an embedded event driven algorithm.")
python-rapidfuzz
python-rich
python-semver
python-yamlcore-0.0.2
python-yamlcore
ruby
verilator
yosys))
@@ -1356,7 +1552,6 @@ management with library, schematic and board editors.")
libparse, enabling dotlib file parsing.")
(license license:asl2.0)))
(define-public libpsf
;; There are no release nor tags.
(let ((commit "001dc734e01725e739847c8cde6480a0cf35a082")
@@ -1715,143 +1910,145 @@ circuits. This is commonly used as a part of toolchains in a process called
@acronym{LVS, layout versus schematic} with the intent to verify that the
layout of a circuit corresponds to the desired netlists.")
(license license:gpl1)))
(define-public nextpnr
(let ((commit "d8117e3cadaa4f4db606b64a465b7638b05dac68")
(revision "1"))
(package
(name "nextpnr")
(version (git-version "0.9" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/YosysHQ/nextpnr/")
(commit commit)
;; XXX: Fetch some bundled libraries such as QtPropertyBrowser,
;; json11 and python-console, which have custom modifications or
;; no longer have their original upstream.
(recursive? #t)))
(file-name (git-file-name name version))
(snippet
#~(begin
(use-modules (guix build utils)
(ice-9 ftw)
(srfi srfi-26))
;; XXX: 'delete-all-but' is copied from the turbovnc package.
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "3rdparty"
;; The following sources have all been patched, so
;; cannot easily be unbundled.
"QtPropertyBrowser"
"json11"
"python-console"
"oourafft")))
(patches (search-patches "nextpnr-imgui.patch"))
(sha256
(base32 "0668adviwh8n9c5xy7k3qiyfn77rrzd79b403i3m19hhy8vq907p"))))
(outputs '("out" "bba"))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase ;for Qt 6
#:configure-flags
#~(list "-DARCH=generic;ice40;ecp5;himbaechel"
"-DBUILD_GUI=ON"
"-DUSE_OPENMP=ON"
"-DBUILD_TESTS=ON"
"-DHIMBAECHEL_UARCH=ng-ultra;gowin;gatemate"
"-DHIMBAECHEL_NGULTRA_DEVICES=ng-ultra"
"-DHIMBAECHEL_SPLIT=ON"
(string-append "-DHIMBAECHEL_PRJBEYOND_DB="
(search-input-directory
%build-inputs "share/prjbeyond-db"))
(string-append "-DHIMBAECHEL_PEPPERCORN_PATH="
(search-input-directory
%build-inputs "share/prjpeppercorn"))
(string-append
"-DEXPORT_BBA_FILES=" #$output:bba "/share/nextpnr/bba-files")
(string-append "-DCURRENT_GIT_VERSION=nextpnr-" #$version)
(string-append "-DICESTORM_INSTALL_PREFIX="
#$(this-package-native-input "icestorm"))
(string-append "-DTRELLIS_INSTALL_PREFIX="
#$(this-package-native-input "prjtrellis")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'unbundle-googletest
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(3rdparty\\/googletest.*")
(string-append "find_package(GTest)\n"
"add_library(gtest_main ALIAS "
"GTest::gtest_main)\n"))
(("\\$\\{CMAKE_SOURCE_DIR}/3rdparty/googletest.*")
(string-append
#$(this-package-native-input "googletest") "/include)")))))
(add-after 'unpack 'unbundle-sanitizers-cmake
(lambda _
(substitute* "CMakeLists.txt"
;; Use the system sanitizers-cmake module. This is made
;; necessary 'sanitizers-cmake' installing a FindPackage
;; module but no CMake config file.
(("\\$\\{CMAKE_SOURCE_DIR}/3rdparty/sanitizers-cmake/cmake")
(string-append
#$(this-package-native-input "sanitizers-cmake")
"/share/sanitizers-cmake/cmake")))))
(add-after 'install 'run-tests
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "PATH"
(string-append #$output "/bin:" (getenv "PATH")))
;; ice40
(invoke "./nextpnr-ice40-test")
(chdir "../source")
(setenv "NEXTPNR" "nextpnr-ice40")
(with-directory-excursion "ice40/smoketest/attosoc"
(invoke "./smoketest.sh"))
(with-directory-excursion "tests/ice40/regressions"
(invoke "make" (string-append
"NPNR=" #$output "/bin/nextpnr-ice40")))
;; generic
(setenv "NPNR" "nextpnr-generic")
(invoke "nextpnr-generic" "--uarch" "example" "--test")
(with-directory-excursion "tests/generic/flow/bel-pin"
(invoke "./run.sh"))
;; ecp5
(invoke "nextpnr-ecp5"
"--um5g-25k" "--package" "CABGA381" "--test")
(with-directory-excursion "tests/ecp5/regressions"
(invoke "make"
(string-append
"NPNR=" #$output "/bin/nextpnr-ecp5")))))))))
(native-inputs
(list apycula
googletest
icestorm
iverilog
gzip
prjbeyond-db
`(,prjpeppercorn "db")
prjtrellis
python-minimal-wrapper
sanitizers-cmake
yosys))
(inputs
(list boost
eigen
pybind11-2
qtimgui))
(synopsis
"Place-and-Route tool for @acronym{FPGA, Field Programmable Gate Array}")
(description "@code{nextpnr} is an @acronym{EDA, Electronic Design
(package
(name "nextpnr")
(version "0.10")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/YosysHQ/nextpnr/")
(commit (string-append "nextpnr-" version))
;; XXX: Fetch some bundled libraries such as QtPropertyBrowser,
;; json11 and python-console, which have custom modifications or
;; no longer have their original upstream.
(recursive? #t)))
(file-name (git-file-name name version))
(snippet
#~(begin
(use-modules (guix build utils)
(ice-9 ftw)
(srfi srfi-26))
;; XXX: 'delete-all-but' is copied from the turbovnc package.
(define (delete-all-but directory . preserve)
(with-directory-excursion directory
(let* ((pred (negate (cut member <>
(cons* "." ".." preserve))))
(items (scandir "." pred)))
(for-each (cut delete-file-recursively <>) items))))
(delete-all-but "3rdparty"
;; The following sources have all been patched, so
;; cannot easily be unbundled.
"QtPropertyBrowser"
"json11"
"python-console"
"oourafft"
"imgui"
"qtimgui")))
(sha256
(base32 "01iwavnnz9pik49mw8z83529grvaa45pvihivmnfzhq1z49cg0c2"))))
(outputs '("out" "bba"))
(build-system qt-build-system)
(arguments
(list
#:qtbase qtbase ;for Qt 6
#:configure-flags
#~(list "-DARCH=generic;ice40;ecp5;himbaechel"
"-DBUILD_GUI=ON"
"-DUSE_OPENMP=ON"
"-DBUILD_TESTS=ON"
"-DHIMBAECHEL_UARCH=ng-ultra;gowin;gatemate"
"-DHIMBAECHEL_NGULTRA_DEVICES=ng-ultra"
"-DHIMBAECHEL_SPLIT=ON"
(string-append "-DHIMBAECHEL_PRJBEYOND_DB="
(search-input-directory
%build-inputs "share/prjbeyond-db"))
(string-append "-DHIMBAECHEL_PEPPERCORN_PATH="
(search-input-directory
%build-inputs "share/prjpeppercorn"))
(string-append
"-DEXPORT_BBA_FILES=" #$output:bba "/share/nextpnr/bba-files")
(string-append "-DCURRENT_GIT_VERSION=nextpnr-" #$version)
(string-append "-DICESTORM_INSTALL_PREFIX="
#$(this-package-native-input "icestorm"))
(string-append "-DTRELLIS_INSTALL_PREFIX="
#$(this-package-native-input "prjtrellis")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-test
(lambda _
(substitute* "himbaechel/uarch/gatemate/tests/lut.cc"
(("9LU") "8LU"))))
(add-after 'unpack 'unbundle-googletest
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(3rdparty\\/googletest.*")
(string-append "find_package(GTest)\n"
"add_library(gtest_main ALIAS "
"GTest::gtest_main)\n"))
(("\\$\\{CMAKE_SOURCE_DIR}/3rdparty/googletest.*")
(string-append
#$(this-package-native-input "googletest") "/include)")))))
(add-after 'unpack 'unbundle-sanitizers-cmake
(lambda _
(substitute* "CMakeLists.txt"
;; Use the system sanitizers-cmake module. This is made
;; necessary 'sanitizers-cmake' installing a FindPackage
;; module but no CMake config file.
(("\\$\\{CMAKE_SOURCE_DIR}/3rdparty/sanitizers-cmake/cmake")
(string-append
#$(this-package-native-input "sanitizers-cmake")
"/share/sanitizers-cmake/cmake")))))
(add-after 'install 'run-tests
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "PATH"
(string-append #$output "/bin:" (getenv "PATH")))
;; ice40
(invoke "./nextpnr-ice40-test")
(chdir "../source")
(setenv "NEXTPNR" "nextpnr-ice40")
(with-directory-excursion "ice40/smoketest/attosoc"
(invoke "./smoketest.sh"))
(with-directory-excursion "tests/ice40/regressions"
(invoke "make" (string-append
"NPNR=" #$output "/bin/nextpnr-ice40")))
;; generic
(setenv "NPNR" "nextpnr-generic")
(invoke "nextpnr-generic" "--uarch" "example" "--test")
(with-directory-excursion "tests/generic/flow/bel-pin"
(invoke "./run.sh"))
;; ecp5
(invoke "nextpnr-ecp5"
"--um5g-25k" "--package" "CABGA381" "--test")
(with-directory-excursion "tests/ecp5/regressions"
(invoke "make"
(string-append
"NPNR=" #$output "/bin/nextpnr-ecp5")))))))))
(native-inputs
(list apycula
googletest
icestorm
iverilog
gzip
prjbeyond-db
`(,prjpeppercorn "db")
prjtrellis
python-minimal-wrapper
sanitizers-cmake
yosys))
(inputs
(list boost
eigen
pybind11))
(synopsis
"Place-and-Route tool for @acronym{FPGA, Field Programmable Gate Array}")
(description "@code{nextpnr} is an @acronym{EDA, Electronic Design
Automation}, portable and vendor neutral FPGA place and route tool.")
(home-page "https://github.com/YosysHQ/nextpnr/")
(license license:isc))))
(home-page "https://github.com/YosysHQ/nextpnr/")
(license license:isc)))
(define-public nextpnr-cli
(package
@@ -1864,9 +2061,6 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
(substitute-keyword-arguments (package-arguments nextpnr)
((#:configure-flags flags '())
#~(delete! "-DBUILD_GUI=ON" #$flags)))))
(inputs
(modify-inputs (package-inputs nextpnr)
(delete "qtimgui")))
(synopsis
(string-append (package-synopsis nextpnr) " Cli only version."))))
@@ -1895,7 +2089,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
(define-public nvc
(package
(name "nvc")
(version "1.19.2")
(version "1.19.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1904,7 +2098,7 @@ Automation}, portable and vendor neutral FPGA place and route tool.")
(file-name (git-file-name name version))
(sha256
(base32
"1wcniiphnzk81y9p093v6zqq9vd7qhw08639svacwmhd8a67yr6b"))))
"1zizz2dafm53lzpjayy6vig5pz5ri9cszdivg0jzzh8s3ggkpy1i"))))
(build-system gnu-build-system)
(arguments
(list #:out-of-source? #t
@@ -2105,7 +2299,7 @@ chip database for NG-Ultra architecture from NanoXplore.")
(define-public prjpeppercorn
(package
(name "prjpeppercorn")
(version "1.9")
(version "1.12")
(source
(origin
(method git-fetch)
@@ -2114,7 +2308,7 @@ chip database for NG-Ultra architecture from NanoXplore.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1z0kzkdham3pwh4fj03yyv9bla5v08mbv0ysbyq1snxr8cdabm8y"))))
(base32 "15qv7a0lpl671jlpafs9is0x0vms6i7jbkhp4l723lnr9kafqgm7"))))
(outputs (list "out"
"db")) ;FPGA database files
(build-system cmake-build-system)
@@ -2140,7 +2334,7 @@ chip database for NG-Ultra architecture from NanoXplore.")
(copy-recursively "tools"
(string-append datadir "/tools"))))))))
(inputs
(list boost-1.88))
(list boost))
(synopsis "GateMate FPGAs bitstream tools")
(description
"@code{Prjpeppercorn} includes programming tools for GateMate
@@ -2188,7 +2382,7 @@ architecture from Cologne Chip. It also provides data needed to produce a
(lambda _
(chdir "libtrellis"))))))
(native-inputs (list python-minimal-wrapper))
(inputs (list openocd boost-1.88 pybind11-2))
(inputs (list openocd boost pybind11))
(synopsis "Placement and routing for ECP5 FPGAs")
(description
"Project Trellis is a Nextpnr backend compatible with ECP5 FPGAs.
@@ -2601,16 +2795,8 @@ for @acronym{EDA, elecronic design automation} and chip design.")))
(define-public python-klayout
(package
(name "python-klayout")
(version "0.30.6") ;keep in sync with klayout
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/klayout/klayout")
(commit (string-append "v" version))))
(sha256
(base32 "0p4achjlynhg5wc0zmxkzljx115l7vcg3mp3f8i8pjydv8visnh4"))
(file-name (git-file-name name version))))
(version (package-version klayout))
(source (package-source klayout))
(build-system pyproject-build-system)
(arguments
(list
@@ -3000,7 +3186,7 @@ testing to @code{cocotb}, removing the need of manipulating Makefiles.")
(define-public python-cocotbext-axi
(package
(name "python-cocotbext-axi")
(version "0.1.26")
(version "0.1.28")
(source
(origin
(method git-fetch)
@@ -3009,7 +3195,7 @@ testing to @code{cocotb}, removing the need of manipulating Makefiles.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xgfvvpff9r7g7fiswv1m0dklyw6c8v2r3qpd6qq3rzvnvrhsrin"))))
(base32 "0kwdzz0mq134m0kxhwwj0d1nr1cbrzv36844476knna34xi2riyg"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-cocotb python-cocotb-bus))
@@ -3358,7 +3544,7 @@ to enforce it.")
(define-public python-vunit
(package
(name "python-vunit")
(version "5.0.0-dev.8") ;v4.7.0 dates back from 2 years ago.
(version "5.0.0-dev.9") ;v4.7.0 dates back from 2 years ago.
(source
(origin
(method git-fetch)
@@ -3367,7 +3553,7 @@ to enforce it.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0a1bz5jh28i59x63fkgqf333jb68bm2hjicg2zlahzyydr4y1wji"))))
(base32 "1j9rvlshzi4mdy7wah1j8ri63drkjb47xly22q40wvl2xp2ghqgs"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -3377,35 +3563,31 @@ to enforce it.")
(srfi srfi-26))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-ghdl-jit
(add-after 'unpack 'fix-ghdl-version
(lambda _
;; TODO: Remove when fixed upstream (see:
;; https://github.com/VUnit/vunit/pull/1121).
(substitute* "vunit/sim_if/ghdl.py"
((": \"llvm\",")
(string-append
": \"llvm\",\n\tr\"static elaboration, LLVM JIT code "
"generator\": \"llvm-jit\",")))))
;; Guix uses ghdl 6.0.0.
(substitute* "tests/unit/test_ghdl_interface.py"
(("GHDL 5\\.0\\.1") "GHDL 6.0.0")
(("GNAT Version: 14\\.2\\.0") "GNAT Version: 15.2.0"))))
(add-after 'install 'unbundle
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((site-packages
(string-append (site-packages inputs outputs)
"/vunit/vhdl/")))
(mkdir-p (string-append site-packages "JSON-for-VHDL"))
(symlink
(search-input-directory inputs "share/json-for-vhdl/work/src")
(string-append site-packages "JSON-for-VHDL/src"))
(symlink
(search-input-directory inputs "share/osvvm/work/osvvm")
(string-append site-packages "osvvm")))))
(add-after 'check 'run-examples
;; Run examples as an extra check.
(lambda* (#:key tests? #:allow-other-keys)
(lambda* (#:key tests? parallel-build? #:allow-other-keys)
(when tests?
(with-directory-excursion "examples/vhdl"
(for-each
(lambda (dir)
(invoke "python3" (string-append dir "/run.py"))
(invoke "python3" (string-append dir "/run.py")
"-p" (if parallel-build?
(number->string (parallel-job-count))
"1"))
(delete-file-recursively "vunit_out"))
(scandir "."
(negate
@@ -3435,7 +3617,7 @@ to enforce it.")
python-setuptools
python-setuptools-scm))
(inputs
(list json-for-vhdl-for-vunit osvvm-2023.04))
(list osvvm-2023.04))
(propagated-inputs
(list python-colorama))
(home-page "https://vunit.github.io")

View File

@@ -72,7 +72,9 @@ as bold, underscore or italic.")
(file-name (git-file-name name version))
(sha256
(base32
"09n8skr5wi8bs7x81d5bi6z89dd8s1zi9a5f4r2qadaz69slncxq"))))
"09n8skr5wi8bs7x81d5bi6z89dd8s1zi9a5f4r2qadaz69slncxq"))
(patches
(search-patches "emacs-buttercup-1.38-native-comp-spy-on-trampoline-scope.patch"))))
(build-system emacs-build-system)
(arguments
(list

View File

@@ -204,12 +204,14 @@
#:use-module (gnu packages aspell)
#:use-module (gnu packages audio)
#:use-module (gnu packages bash)
#:use-module (gnu packages calendar)
#:use-module (gnu packages chez)
#:use-module (gnu packages cmake)
#:use-module (gnu packages code)
#:use-module (gnu packages cpp)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages dav)
#:use-module (gnu packages dictionaries)
#:use-module (gnu packages djvu)
#:use-module (gnu packages ebook)
@@ -4916,77 +4918,79 @@ or unexpected behavior inside an elisp configuration file (typically
(define-public emacs-w3m
;; Emacs-w3m follows a "rolling release" model.
(package
(name "emacs-w3m")
(version "20220508.2259")
(source (origin
;; "Officially" this is still on cvs.namazu.org, but that repo
;; seems to be unreachable.
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-w3m/emacs-w3m.git")
(commit "bbcebbe20ebfa807a3e4beaadf40ce6f4be213e7")))
(file-name (git-file-name name version))
(sha256
(base32
"0y892n8jaxzyxi1fgyklc7zfh57ibp4yyywmif69dm28hykj6lmz"))))
(build-system gnu-build-system)
(native-inputs (list autoconf texinfo emacs-minimal))
(inputs (list w3m imagemagick))
(arguments
(list
#:modules '((guix build gnu-build-system)
((guix build emacs-build-system) #:prefix emacs:)
(guix build utils)
(guix build emacs-utils))
#:imported-modules `(,@%default-gnu-imported-modules
(guix build emacs-build-system)
(guix build emacs-utils))
#:configure-flags
#~(list (string-append "--with-lispdir=" (emacs:elpa-directory #$output))
(string-append "--with-icondir="
#$output "/share/images/emacs-w3m")
;; Leave .el files uncompressed, otherwise GC can't
;; identify run-time dependencies. See
;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html>
"--without-compress-install")
#:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(lambda _
(invoke "autoconf")))
(add-before 'configure 'support-emacs!
(lambda _
;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is
;; unsupported.
(substitute* "configure"
(("EMACS_FLAVOR=unsupported") "EMACS_FLAVOR=emacs"))))
(add-before 'build 'patch-exec-paths
(lambda* (#:key inputs #:allow-other-keys)
(make-file-writable "w3m.el")
(emacs-substitute-variables "w3m.el"
("w3m-command" (search-input-file inputs "/bin/w3m"))
("w3m-touch-command" (search-input-file inputs "/bin/touch"))
("w3m-icon-directory"
(string-append #$output "/share/images/emacs-w3m")))
(make-file-writable "w3m-image.el")
(emacs-substitute-variables "w3m-image.el"
("w3m-imagick-convert-program"
(search-input-file inputs "/bin/convert"))
("w3m-imagick-identify-program"
(search-input-file inputs "/bin/identify")))))
(replace 'install
(lambda _
(invoke "make" "install" "install-icons")
(with-directory-excursion (emacs:elpa-directory #$output)
(for-each delete-file '("ChangeLog" "ChangeLog.1"))
(symlink "w3m-load.el" "w3m-autoloads.el")))))))
(home-page "http://emacs-w3m.namazu.org/")
(synopsis "Simple Web browser for Emacs based on w3m")
(description
"Emacs-w3m is an emacs interface for the w3m web browser.")
(license license:gpl2+)))
(let ((commit "ec18c21418bf7c1be159bd3cf7e79a370d4be1f3")
(revision "0"))
(package
(name "emacs-w3m")
(version (git-version "20251229" revision commit)) ;commit date
(source (origin
;; "Officially" this is still on cvs.namazu.org, but that repo
;; seems to be unreachable.
(method git-fetch)
(uri (git-reference
(url "https://github.com/emacs-w3m/emacs-w3m.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"00rkvr6cpisma5r6g88bq0im7qh9l30fy8r4g4wgs1k53lai7k68"))))
(build-system gnu-build-system)
(native-inputs (list autoconf texinfo emacs-minimal))
(inputs (list w3m imagemagick))
(arguments
(list
#:modules '((guix build gnu-build-system)
((guix build emacs-build-system) #:prefix emacs:)
(guix build utils)
(guix build emacs-utils))
#:imported-modules `(,@%default-gnu-imported-modules
(guix build emacs-build-system)
(guix build emacs-utils))
#:configure-flags
#~(list (string-append "--with-lispdir=" (emacs:elpa-directory #$output))
(string-append "--with-icondir="
#$output "/share/images/emacs-w3m")
;; Leave .el files uncompressed, otherwise GC can't
;; identify run-time dependencies. See
;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html>
"--without-compress-install")
#:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'autoconf
(lambda _
(invoke "autoconf")))
(add-before 'configure 'support-emacs!
(lambda _
;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is
;; unsupported.
(substitute* "configure"
(("EMACS_FLAVOR=unsupported") "EMACS_FLAVOR=emacs"))))
(add-before 'build 'patch-exec-paths
(lambda* (#:key inputs #:allow-other-keys)
(make-file-writable "w3m.el")
(emacs-substitute-variables "w3m.el"
("w3m-command" (search-input-file inputs "/bin/w3m"))
("w3m-touch-command" (search-input-file inputs "/bin/touch"))
("w3m-icon-directory"
(string-append #$output "/share/images/emacs-w3m")))
(make-file-writable "w3m-image.el")
(emacs-substitute-variables "w3m-image.el"
("w3m-imagick-convert-program"
(search-input-file inputs "/bin/convert"))
("w3m-imagick-identify-program"
(search-input-file inputs "/bin/identify")))))
(replace 'install
(lambda _
(invoke "make" "install" "install-icons")
(with-directory-excursion (emacs:elpa-directory #$output)
(for-each delete-file '("ChangeLog" "ChangeLog.1"))
(symlink "w3m-load.el" "w3m-autoloads.el")))))))
(home-page "http://emacs-w3m.namazu.org/")
(synopsis "Simple Web browser for Emacs based on w3m")
(description
"Emacs-w3m is an emacs interface for the w3m web browser.")
(license license:gpl2+))))
(define-public emacs-wget
(package
@@ -5393,16 +5397,16 @@ installed on your machine and launch it.")
(version "1.8.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://stable.melpa.org/packages/"
"alchemist-" version ".tar"))
(method git-fetch)
(uri (git-reference
(url "https://www.github.com/tonini/alchemist.el")
(commit (string-append "v" version))))
(sha256
(base32 "0ygwf9d739zqc8dcckw0j0bqkipw7cmxbrx3l281x237a3d384yw"))))
(base32 "1cci0sq568ghx6x7my96m0iiwvqz2f4dh6k3gn3mmfyvi7bmrpww"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-elixir-mode emacs-dash emacs-company emacs-pkg-info))
(arguments
(list
#:tests? #f ; TODO Tests are failing; investigate
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-server
@@ -5410,8 +5414,13 @@ installed on your machine and launch it.")
(let ((server (string-append (elpa-directory #$output)
"/alchemist-server")))
(mkdir-p server)
(copy-recursively "alchemist-server" server)
(delete-file-recursively (string-append server "/test"))))))))
(delete-file-recursively "alchemist-server/test")
(copy-recursively "alchemist-server" server)))))))
(propagated-inputs
(list emacs-company
emacs-dash
emacs-elixir-mode
emacs-pkg-info))
(home-page "https://www.github.com/tonini/alchemist.el")
(synopsis "Elixir tooling integration into Emacs")
(description
@@ -8044,7 +8053,7 @@ next matching page.")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://notabug.org/alezost/emacs-bui.git")
(url "https://gitlab.com/alezost-emacs/bui.el")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -8053,7 +8062,7 @@ next matching page.")
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash))
(home-page "https://notabug.org/alezost/emacs-bui")
(home-page "https://gitlab.com/alezost-emacs/bui.el")
(synopsis "Buffer interface library for Emacs")
(description
"BUI (Buffer User Interface) is a library for making @code{list} and
@@ -8122,7 +8131,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://notabug.org/alezost/emacs-build-farm.git")
(url "https://gitlab.com/alezost-emacs/build-farm")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -8131,7 +8140,7 @@ management tasks from Emacs. To begin with, run @code{M-x guix-about} or
(build-system emacs-build-system)
(propagated-inputs
(list emacs-bui emacs-magit-popup))
(home-page "https://notabug.org/alezost/emacs-build-farm")
(home-page "https://gitlab.com/alezost-emacs/build-farm")
(synopsis "Emacs interface for Hydra and Cuirass build farms")
(description
"This Emacs package provides an interface for Hydra and
@@ -8407,6 +8416,41 @@ them whenever another command is invoked.")
a command.")
(license license:gpl3+)))
(define-public emacs-khalel
(package
(name "emacs-khalel")
(version "0.1.15")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/hperrey/khalel")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "06h5272kmg0ykf0zqdy2qwhlzszqsw176l1brk04bg8xyc3a4384"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'locate-input-binaries
(lambda* (#:key inputs #:allow-other-keys)
(emacs-substitute-variables "khalel.el"
("khalel-khal-command"
(search-input-file inputs "/bin/khal"))
("khalel-vdirsyncer-command"
(search-input-file inputs "/bin/vdirsyncer"))))))))
(inputs (list khal vdirsyncer))
(home-page "https://gitlab.com/hperrey/khalel")
(synopsis "Interact with local or remote CalDAV calendars")
(description
"Khalel accesses calendars stored in ICS files and provides means of
listing existing events, edit them as well as to create new ones largely
through an Org mode interface.")
(license license:gpl3+)))
(define-public emacs-khardel
(package
(name "emacs-khardel")
@@ -14400,7 +14444,7 @@ Features degrade gracefully when viewed from terminal.")
(define-public emacs-org-supertag
(package
(name "emacs-org-supertag")
(version "5.6.3")
(version "5.8.1")
(source
(origin
(method git-fetch)
@@ -14409,7 +14453,7 @@ Features degrade gracefully when viewed from terminal.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ccr3s4mhk28klizbsb7cqhgg2h3092mpg1qvnzpzf53hwlhds2p"))))
(base32 "1hdag8kxn2zxwac0fq14c741k4pwzkwvjh5ybwsqc7220vqzhmhm"))))
(build-system emacs-build-system)
(arguments
(list #:tests? #f ;no tests
@@ -17940,12 +17984,16 @@ strings, and code folding.")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://stable.melpa.org/packages/"
"js-comint-" version ".el"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/redguardtoo/js-comint")
(commit version)))
(sha256
(base32 "1qin0hclm3ly62nl5ddiim64bcd2k74b1yqsqqc61cf9k2q8k287"))))
(base32 "09wfafrklkybfg44skn1lg2hvcj4gfdv908dq87w1r4wv6ibkvka"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; Tests depend on Eask
(home-page "https://github.com/redguardtoo/js-comint")
(synopsis "Interacting with a JavaScript interpreter")
(description
@@ -18120,7 +18168,7 @@ Emacs buffers.")
(define-public emacs-markdown-mode
(package
(name "emacs-markdown-mode")
(version "2.7")
(version "2.8")
(source
(origin
(method git-fetch)
@@ -18129,10 +18177,26 @@ Emacs buffers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1w6y18bg0fpvb5xwr827ynzbj0f0nh3dms3n0xq6hg38dcyly46b"))))
(base32 "05xcmp744sm1cp38zal5sqzj463igbsfhjn7vhgpzd97df95h9mp"))))
(build-system emacs-build-system)
(arguments (list #:test-command #~(list "make" "test")
#:tests? #f)) ; XXX: 5 unexpected results
(arguments
(list #:test-command #~(list "make" "test")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'skip-failing-tests
(lambda _
(let ((skip-tests
`("-export/buffer-local-css-path"
"-export/relative-css-path"
"-export/url-css-path"
"/wiki-link-rules"
"/wiki-link-search-under-project")))
(substitute* "tests/markdown-test.el"
(("\\(ert-deftest test-markdown([a-z/-]*) \\(\\)"
all test)
(if (member test skip-tests)
(string-append all "(skip-unless nil)")
all)))))))))
(home-page "https://jblevins.org/projects/markdown-mode/")
(synopsis "Emacs Major mode for Markdown files")
(description
@@ -21224,29 +21288,25 @@ required by the LaTeX output produced by Org mode.")
(license (license:fsf-free "https://www.tug.org/texlive/copying.html"))))
(define-public emacs-org-contacts
;; XXX: Upstream does not tag version bumps. Commit below matches latest
;; version bump.
(let ((commit "217ba04c9d638067a6ccb0829cf1885f54c1d568"))
(package
(name "emacs-org-contacts")
(version "1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://repo.or.cz/org-contacts")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0f0vjdvx0hffj2xvyrya8yfl77djmzmpxdxsx58ym4lmdvwyb6x3"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-org))
(home-page "https://repo.or.cz/org-contacts")
(synopsis "Contacts management system for Org mode")
(description "Manage your contacts from Org mode. You can auto
(package
(name "emacs-org-contacts")
(version "1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://repo.or.cz/org-contacts")
(commit (string-append "release_" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1djnyswjbsb1k3ciyd2f9xfjfkhbkkfw3dzfmzzr8dx5v71gm47b"))))
(build-system emacs-build-system)
(home-page "https://repo.or.cz/org-contacts")
(synopsis "Contacts management system for Org mode")
(description "Manage your contacts from Org mode. You can auto
complete email addresses, export contacts to a vCard file, put birthdays
in your Org Agenda, and more.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-org-vcard
(package
@@ -39101,14 +39161,14 @@ user interfaces for various built-in modes.")
(define-public emacs-calibre
(package
(name "emacs-calibre")
(version "1.5.0")
(version "1.5.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/calibre-" version
".tar"))
(sha256
(base32 "08rcwrydrlc995sdxn5ssm5f6ighxi5yr6i7bx9a1nf7n91mgbgh"))))
(base32 "0iqgd44wca54l5rn8g6c9qak2c1wblbnrx5a0118hkgckimp8c3k"))))
(build-system emacs-build-system)
(arguments
(list
@@ -39393,11 +39453,13 @@ or regions to a REPL from ~a buffers.") language))))
(version "1.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://stable.melpa.org/packages/"
"org-babel-eval-in-repl-" version ".tar"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/diadochos/org-babel-eval-in-repl")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0bdnps6m3kcvsagz8cfm3kf2rvxzl2p252pfggwbdbl43kzvl35h"))
(base32 "1fjifl69qja3ab0g72f1hkfns992qq0v9pw8p4hgvjycx7fpzk0a"))
(modules '((guix build utils)))
(snippet
#~(begin (delete-file "eval-in-repl-matlab.el")))))
@@ -41923,10 +41985,10 @@ service, and connect it with Emacs via inter-process communication.")
(license license:gpl3+))))
(define-public emacs-telega
(let ((commit "70945291fff62ad0c8c2d2c28cbad319138ae811"))
(let ((commit "805819bf81dffe2922e9e06ae02d58429d03aa1a"))
(package
(name "emacs-telega")
(version "0.8.600") ; see telega-version in telega.el
(version "0.8.601") ; see telega-version in telega.el
(source
(origin
(method git-fetch)
@@ -41934,7 +41996,7 @@ service, and connect it with Emacs via inter-process communication.")
(url "https://github.com/zevlg/telega.el")
(commit commit)))
(sha256
(base32 "08z81m3aa7lf895iy5fkdp52qkvl2nw1r1k1k67dipnyrj4y2bfk"))
(base32 "0d02ymr5fw6fknzf9ikaky48swd9yfp5zn846zlwb5083p6bpmis"))
(file-name (git-file-name "emacs-telega" version))
(patches
(search-patches "emacs-telega-test-env.patch"))))
@@ -41991,10 +42053,8 @@ service, and connect it with Emacs via inter-process communication.")
(string-append ";; " all))))))))
(inputs
(list emacs-telega-server ffmpeg tgs2png))
(native-inputs '())
(propagated-inputs
(list emacs-company
emacs-transient ; requires 0.9.0
(list emacs-transient ; requires 0.9.0
emacs-visual-fill-column))
(home-page "https://zevlg.github.io/telega.el/")
(synopsis "GNU Emacs client for the Telegram messenger")

View File

@@ -28,6 +28,7 @@
;;; Copyright © 2025 Laura Kirsch <laurakirsch240406@gmail.com>
;;; Copyright © 2026 Nikita Alkhovik <forgoty13@gmail.com>
;;; Copyright © 2026 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1165,7 +1166,7 @@ The following systems are supported:
(define-public sameboy
(package
(name "sameboy")
(version "1.0.2")
(version "1.0.3")
(source
(origin
(method git-fetch)
@@ -1174,12 +1175,12 @@ The following systems are supported:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0pwnik37c3sgvib5xbadwbq2mjjvgxilhig09rjb3xp5i1d7ykja"))))
(base32 "107k6lfh4y9q73azab0r7pb7hs8fwk46537pfc5liqp38blz6ij5"))))
(build-system gnu-build-system)
(native-inputs
(list rgbds pkg-config))
(inputs
(list sdl2))
(list libpng sdl2))
(arguments
`(#:tests? #f ; There are no tests
#:make-flags `(,(string-append "CC=" ,(cc-for-target))

View File

@@ -358,155 +358,6 @@ tool to forward annotation from your schematic to layout using PCB; some minor
utilities.")
(license license:gpl2+)))
(define-public lepton-eda
(package
(name "lepton-eda")
(version "1.9.18-20220529")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lepton-eda/lepton-eda/")
(commit version)))
(sha256
(base32
"06plrcab3s2rpyf0qv2gzc1yp33627xi8105niasgixckk6glnc2"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list
;; When running "make", the POT files are built with the build time as
;; their "POT-Creation-Date". Later on, "make" notices that .pot
;; files were updated and goes on to run "msgmerge"; as a result, the
;; non-deterministic POT-Creation-Date finds its way into .po files,
;; and then in .gmo files. To avoid that, simply make sure 'msgmerge'
;; never runs. See <https://bugs.debian.org/792687>.
"ac_cv_path_MSGMERGE=true"
(string-append "--with-pcb-datadir="
#$(this-package-input "pcb")
"/share")
(string-append "--with-pcb-lib-path="
#$(this-package-input "pcb")
"/share/pcb/pcblib-newlib:"
#$(this-package-input "pcb")
"/share/pcb/newlib")
"--with-gtk3"
"CFLAGS=-fcommon"
"--enable-guild"
"--enable-contrib")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
;; For logs and auto-compilation
(setenv "HOME" "/tmp")
;; Ensure that readline is found by lepton-shell
(substitute* "script.in"
(("\\(eval-when \\(expand load eval\\)" m)
(string-append "
(add-to-load-path \"" #$(this-package-input "guile-readline")
"/share/guile/site/3.0\")
(set! %load-compiled-path (cons \""
#$(this-package-input "guile-readline")
"/lib/guile/3.0/site-ccache/"
"\" %load-compiled-path))
" m)))))
(add-before 'build 'fix-dynamic-link
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "liblepton/scheme/lepton/ffi/lib.scm"
(("\"liblepton\"")
(string-append "\"" #$output "/lib/liblepton.so" "\""))
(("\"libleptonattrib\"")
(string-append "\"" #$output "/lib/libleptonattrib.so" "\""))
(("\"libleptongui\"")
(string-append "\"" #$output "/lib/libleptongui.so" "\""))
(("\"libglib-2.0\"")
(string-append
"\"" (search-input-file inputs "/lib/libglib-2.0.so") "\""))
(("\"libgobject-2.0\"")
(string-append
"\"" (search-input-file inputs "/lib/libgobject-2.0.so") "\""))
(("\"libgtk-3\"")
(string-append
"\"" (search-input-file inputs "/lib/libgtk-3.so") "\"")))
;; For finding libraries when running tests before installation.
(setenv "LIBLEPTONGUI"
(string-append (getcwd)
"/libleptongui/src/.libs/libleptongui.so"))
(setenv "LIBLEPTON"
(string-append (getcwd)
"/libleptongui/src/.libs/liblepton.so"))
(setenv "LD_LIBRARY_PATH"
(string-append (getcwd)
"/libleptonattrib/src/.libs/:"
(getenv "LIBRARY_PATH")))))
(add-before 'bootstrap 'prepare
(lambda _
;; Some of the scripts there are invoked by autogen.sh.
(for-each patch-shebang
(find-files "build-tools"))
;; Make sure 'msgmerge' can modify the PO files.
(for-each (lambda (po)
(chmod po #o666))
(find-files "." "\\.po$"))
;; This would normally be created by invoking 'git', but it
;; doesn't work here.
(call-with-output-file "version.h"
(lambda (port)
(format port "#define PACKAGE_DATE_VERSION \"~a\"~%"
#$(string-drop version
(+ 1
(string-index version #\-))))
(format port
"#define PACKAGE_DOTTED_VERSION \"~a\"~%"
#$(string-take version
(string-index version #\-)))
(format port
"#define PACKAGE_GIT_COMMIT \"cabbag3\"~%")))))
(add-after 'install 'compile-scheme-files
(lambda _
(unsetenv "LIBLEPTONGUI")
(unsetenv "LIBLEPTON")
(unsetenv "LD_LIBRARY_PATH")
(invoke "make" "precompile"))))))
(native-inputs
(list autoconf
automake
desktop-file-utils
flex
gettext-minimal
groff
gawk
libtool
pkg-config
m4
perl
texinfo))
(inputs
(list glib
gtk+
gtksheet
guile-3.0
guile-readline
pcb
shared-mime-info))
(home-page "https://lepton-eda.github.io/")
(synopsis "GPL Electronic Design Automation")
(description
"Lepton EDA ia an @dfn{electronic design automation} (EDA) tool set
forked from gEDA/gaf in late 2016. EDA tools are used for electrical circuit
design, schematic capture, simulation, prototyping, and production. Lepton
EDA includes tools for schematic capture, attribute management, bill of
materials (BOM) generation, netlisting into over 20 netlist formats, analog
and digital simulation, and printed circuit board (PCB) layout, and many other
features.")
(license license:gpl2+)))
(define-public pcb
(package
(name "pcb")
@@ -1407,57 +1258,6 @@ in the context of per-cpu data. The library offers ABI headers to interface
with the kernel and various utilities such as per-cpu counters.")
(license (list license:lgpl2.1 license:expat)))))
(define-public horizon-eda
(package
(name "horizon-eda")
(version "2.7.0")
;; TODO: try to unbundle some of the 3rd parties.
;; We have packages for nlohmann-json, range-v3, catch2 and clipper.
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/horizon-eda/horizon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1sq1d2x9wq168cz91l2rd93gnlq5scknb45bi1njqqcw3jjjhsk3"))))
(build-system meson-build-system)
(arguments
(list
#:tests? #f ; no tests
#:glib-or-gtk? #t))
(native-inputs (list cmake-minimal ;; OpenCASCADE is only found by cmake
`(,glib "bin")
gobject-introspection
pkg-config))
(inputs (list boost
cairomm
cppzmq
curl
glib
glibmm
glm
gsettings-desktop-schemas
gtk+
gtkmm-3
libarchive
libgit2-glib
librsvg
libspnav
libzip
opencascade-occt
podofo
sqlite
`(,util-linux "lib")
zeromq))
(home-page "https://horizon-eda.org/")
(synopsis "Electronic Design Automation package")
(description "Horizon EDA is an Electronic Design Automation package
supporting an integrated end-to-end workflow for printed circuit board design
including parts management and schematic entry.")
(license license:gpl3+)))
(define-public linsmith
(package
(name "linsmith")
@@ -3256,28 +3056,27 @@ extension and customization.")
(define-public libmedfile
(package
(name "libmedfile")
(version "4.0.0")
(version "6.0.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://files.salome-platform.org/Salome/other/med-"
"https://files.salome-platform.org/Salome/medfile/med-"
version ".tar.gz"))
(sha256
(base32
"017h9p0x533fm4gn6pwc8kmp72rvqmcn6vznx72nkkl2b05yjx54"))))
"1a0zbdaj3s459s0cdayq4s3k3vbrfg7y32sf7s7qvi2bhz3fvwgq"))))
(build-system cmake-build-system)
(inputs (list hdf5-1.10))
(inputs (list hdf5 zlib))
(arguments
`(#:parallel-tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'install 'remove-test-output
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(delete-file-recursively
(string-append out "/bin/testc"))
#t))))))
(list
#:parallel-tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'remove-test-output
(lambda _
(delete-file-recursively
(string-append #$output "/bin/testc")))))))
(home-page "https://www.salome-platform.org")
(synopsis "Library to read and write MED files")
(description

View File

@@ -36,6 +36,7 @@
#:use-module (gnu packages linux)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages rocm)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl))
@@ -223,14 +224,16 @@ testing InfiniBand networks.")
#$(this-package-input "rdma-core"))
(string-append "--with-rdmacm="
#$(this-package-input "rdma-core")))
#$(this-package-input "rdma-core"))
(string-append "--with-rocm="
#$(this-package-input "rocr-runtime")))
;; Be verbose so that compiler flags are displayed.
#:make-flags #~'("V=1")))
(native-inputs
(list autoconf automake libtool pkg-config))
(inputs
(list numactl rdma-core))
(list numactl rdma-core rocr-runtime))
(synopsis "Optimized communication layer for message passing in HPC")
(description
"Unified Communication X (UCX) provides an optimized communication layer

View File

@@ -255,7 +255,7 @@ wallet and graphical user interface.")
(define-public bitcoin-cash-node
(package
(name "bitcoin-cash-node")
(version "28.0.1")
(version "29.0.0")
(source
(origin
(method git-fetch)
@@ -264,7 +264,7 @@ wallet and graphical user interface.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19v38clhxg6yd4xb8wh8bm3sf1ipv3ifg68nwgq0p8l5zqx41wgw"))))
(base32 "0fk0zfnl99552yfhzzvzj46lg16fr4dbgh0agp5pqll30wbk78d9"))))
(build-system cmake-build-system)
(native-inputs
(list help2man
@@ -1014,7 +1014,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.18.4.6")
(version "0.18.4.7")
(source
(origin
(method git-fetch)
@@ -1030,7 +1030,7 @@ the Monero command line client and daemon.")
;; See the 'extract-monero-sources' phase.
(delete-file-recursively "monero")))
(sha256
(base32 "0l2ris97ibl2smyd4dyav5d81ky22nyv21qhzmmxsbgz3ds7d1mx"))))
(base32 "1nbv07jjwznz2x0ch1467vhnd0b4j3y01gv78dzbm7pilbb9wh72"))))
(build-system qt-build-system)
(native-inputs
`(,@(package-native-inputs monero)
@@ -2603,7 +2603,7 @@ mining.")
(define-public p2pool
(package
(name "p2pool")
(version "4.13")
(version "4.14")
(source
(origin
(method git-fetch)
@@ -2612,7 +2612,7 @@ mining.")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256 (base32 "1flpr0kzyl72hm5vjs9jixiv8fdhvwchlz3p2banb8naxlpads0x"))
(sha256 (base32 "10dp6kxmvdx5lz4n144s9av32nzfxgfw28kf92dnmrv13q5p7id2"))
(modules '((guix build utils)))
(snippet
#~(for-each delete-file-recursively

View File

@@ -1253,11 +1253,15 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
#~(modify-phases #$phases
(replace 'install
(lambda _
(let ((fmw (string-append #$output "/share/firmware")))
(let ((fmw (string-append #$output "/share/firmware"))
(build-dir "Build/ArmVirtQemu-AARCH64/RELEASE_GCC/FV"))
(mkdir-p fmw)
(copy-file (string-append "Build/ArmVirtQemu-AARCH64/"
"RELEASE_GCC/FV/QEMU_EFI.fd")
(string-append fmw "/ovmf_aarch64.bin"))))))))))))
;; QEMU's virt machine requires 64 MiB pflash devices on
;; AArch64. Pad the firmware files to match.
(copy-file (string-append build-dir "/QEMU_EFI.fd")
(string-append fmw "/ovmf_aarch64.bin"))
(truncate-file (string-append fmw "/ovmf_aarch64.bin")
(* 64 1024 1024))))))))))))
(define-public ovmf-arm
(let ((base (make-ovmf-firmware "armhf")))

View File

@@ -11,7 +11,7 @@
;;; Copyright © 2021 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2018, 2022 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2023 B. Wilson <x@wilsonb.com>
;;; Copyright © 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
@@ -20,6 +20,9 @@
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Ian Eure <ian@retrospec.tv>
;;; Copyright © 2023 Thomas Albers Raviola <thomas@thomaslabs.org>
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -59,8 +62,12 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
#:use-module (gnu packages bootloaders)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpio)
#:use-module (gnu packages disk)
#:use-module (gnu packages documentation)
#:use-module (gnu packages electronics)
#:use-module (gnu packages elf)
@@ -74,6 +81,7 @@
#:use-module (gnu packages libftdi)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages mtools)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
@@ -83,7 +91,9 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages swig)
#:use-module (gnu packages textutils)
#:use-module (gnu packages tls)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages xml)
#:use-module (srfi srfi-26))
@@ -246,6 +256,118 @@ firmware from it.")
(home-page "https://dfu-util.sourceforge.net/")
(license license:gpl2+)))
(define-public genimage
(let ((commit "00009af6e29cfd46909bc8b4180147dda9f82ba8")
(revision "0"))
(package
(name "genimage")
(version (git-version "18" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pengutronix/genimage")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1mijyq79cb0yj4jm9ln9smpddq1f6r8cnsa568qca0krcv0p3zag"))))
(build-system gnu-build-system)
(arguments
`(#:modules
((ice-9 match)
,@%default-gnu-imported-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'guixify
(lambda* (#:key inputs #:allow-other-keys)
(map (match-lambda
((input directory regexp)
(substitute* "config.c"
(((format #f "\\.def = \"(~a)\"" regexp) _ command)
(string-append ".def = \"" (assoc-ref inputs input)
"/" directory "/" command "\"")))))
'(("cpio" "bin" "cpio")
("coreutils" "bin" "dd")
("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs")
("genext2fs" "bin" "genext2fs")
("cdrkit-libre" "bin" "genisoimage")
("mtools" "bin" "mcopy|mmd")
;; mkcramfs is obsolete.
("dosfstools" "sbin" "mkdosfs")
("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize")
("f2fs-tools" "sbin" "(mkfs|sload).f2fs")
("squashfs-tools" "bin" "mksquashfs")
("qemu" "bin" "qemu-img")
;; rauc and fiptool are unsupported.
("tar" "bin" "tar")
("u-boot-tools" "bin" "mkimage")))
(substitute* "util.c"
(("\"/bin/sh\"")
(string-append "\"" (assoc-ref inputs "bash") "/bin/sh\"")))))
(add-before 'check 'disable-failing-tests
(lambda _
;; We don't have /etc/passwd so uid 0 is not known as "root".
;; Thus patch it out.
(substitute* '("test/flash.test")
(("test_expect_success \"flash\"")
"test_expect_fail \"flash\""))
(substitute* '("test/hdimage.test")
(("test_expect_success fdisk,sfdisk \"hdimage\"")
"test_expect_fail fdisk,sfdisk \"hdimage\"")
(("test_expect_success hexdump \"hdimage no-partition\"")
"test_expect_fail hexdump \"hdimage no-partition\""))))
(add-before 'check 'fix-failing-tests
(lambda _
;; We don't have /etc/passwd so uid 0 is not known as "root".
;; Thus patch it out.
(substitute* '("test/ext2test.2.dump"
"test/ext3test.2.dump"
"test/ext4test.2.dump"
"test/ext2test-percent.2.dump"
"test/mke2fs.2.dump"
"test/mke2fs.3.dump")
(("root") "unknown"))))
(add-before 'check 'setenv-check
(lambda _
;; Our container doesn't provide access to /etc/mtab
(setenv "EXT2FS_NO_MTAB_OK" "1")
;; Make test reproducible
(setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U")
(setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs")))
(replace 'check
(lambda _
(invoke "make" "TEST_LOG_COMPILER=" "check"))))))
(native-inputs
(list autoconf
automake
;;; Note: cramfs is obsolete.
dtc ; for the tests
pkg-config
util-linux)) ; for the tests
(inputs
`(("bash" ,bash)
("cdrkit-libre" ,cdrkit-libre)
("cpio" ,cpio)
;; Note: invoked by final executable.
("coreutils" ,coreutils) ; chmod, dd
("dosfstools" ,dosfstools)
("e2fsprogs" ,e2fsprogs)
("f2fs-tools" ,f2fs-tools)
("genext2fs" ,genext2fs)
("libconfuse" ,libconfuse)
("mtd-utils" ,mtd-utils)
("mtools" ,mtools)
("qemu" ,qemu-minimal)
("squashfs-tools" ,squashfs-tools)
("tar" ,tar)
("u-boot-tools" ,u-boot-tools)))
(synopsis "Create Flash images according to specification")
(description "@command{genimage} creates Flash images according to a
specification file.")
(home-page "https://github.com/pengutronix/genimage")
(license license:gpl2))))
(define-public teensy-loader-cli
(package
(name "teensy-loader-cli")
@@ -447,6 +569,87 @@ referred to as the \"Odin 3 protocol\".")
dump Intel Firmware Descriptor data of an image file.")
(license license:gpl2)))
(define-public bincfg
(package
(name "bincfg")
(version "25.09")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://review.coreboot.org/coreboot")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1a1n64dwr5fzdnaj45bjci85ap5yra5gwz4x056zn6481xwvbsmv"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no test suite
#:make-flags
#~(list
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'unpack 'chdir
(lambda _
(chdir "util/bincfg")))
(add-after 'build 'build-binaries
(lambda* (#:key make-flags #:allow-other-keys)
(for-each
(lambda (target result)
(apply invoke "make" (string-append "gen-" target) make-flags)
(rename-file result
(string-append target ".bin")))
(list
;; generate GbE for X200
"gbe-ich9m"
;; generate GbE for X220/x230
"gbe-82579LM"
;; generate IFD for X200
"ifd-x200")
(list
"flashregion_3_gbe.bin"
"flashregion_3_gbe.bin"
"flashregion_0_fd.bin"))))
;; The Makefile has no install target.
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(lib (string-append #$output "/lib/bincfg"))
(data (string-append #$output "/share/bincfg")))
;; Install the program
(install-file "bincfg" bin)
;; And its data
(for-each
(lambda (path)
(install-file path data))
(append (find-files "." ".*\\.set")
(find-files "." ".*\\.spec")))
;; And the files generated with the data
(for-each
(lambda (path)
(install-file path lib))
(find-files "." ".*\\.bin"))))))))
(native-inputs (list bison flex))
(home-page "https://coreboot.org")
(synopsis "Encoder/decoder for binary formats described in text files")
(description "
The bincfg program comes with specifications files for the following binary
formats:
@itemize
@item Various DDR3 and DDR4 SPD
@item Configuration data for the Intel 82579LM Gigabit Ethernet PHY
@item Configuration data for the Intel Gigabit Ethernet controller present in
the Intel ICH9-M chipset.
@item Intel Firmware Descriptor data for the Lenovo ThinkPad X200
@item Configuration data for the ITE IT8718F SuperIO
@end itemize
It also comes with example files generated by bincfg.")
(license license:gpl3+)))
(define-public intelmetool
(package
(name "intelmetool")
@@ -613,7 +816,7 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
(define-public openfpgaloader
(package
(name "openfpgaloader")
(version "1.1.0")
(version "1.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -622,7 +825,7 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
(file-name (git-file-name name version))
(sha256
(base32
"1jr9vx0r53h2wkmcyjkc5l90wvk4glinlkf42m00j7rp41bckfvp"))))
"00wbf7z5f55422fmqczxc6f7a2lmr52m1qx8m3ky5gl006rkf0sm"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config))
@@ -638,9 +841,11 @@ Unifinished Extensible Firmware Interface (UEFI) images.")
#~(modify-phases %standard-phases
(add-after 'install 'install-rules
(lambda _
(install-file
"../source/99-openfpgaloader.rules"
(string-append #$output "/lib/udev/rules.d/")))))))
(for-each
(lambda (f)
(install-file
f (string-append #$output "/lib/udev/rules.d/")))
(find-files "../source" "\\.rules$")))))))
(synopsis "Utility for programming FPGA")
(description "This package provides a program to transfer a bitstream
to an FPGA. To use @code{openfpgaloader} without root privileges it is

View File

@@ -4206,8 +4206,7 @@ characteristic so that they sit smoothly with the Tamil glyphs.")
(base32 "1594lxdk6788bb3i3c2fh74z4pwpzcp2r1xl3cz8cz77nrcjkl8m"))))
(build-system trivial-build-system)
(arguments
(list #:modules '((guix build utils)
(ice-9 ftw))
(list #:modules '((guix build utils))
#:builder
#~(let* ((orig #$(package-source this-package))
(dist (string-append orig "/dist/v" #$version))

View File

@@ -2604,7 +2604,7 @@ to applications simultaneously competing for fingerprint readers.")
(define-public desktop-file-utils
(package
(name "desktop-file-utils")
(version "0.26")
(version "0.28")
(source (origin
(method url-fetch)
(uri (string-append "https://www.freedesktop.org/software/"
@@ -2612,10 +2612,10 @@ to applications simultaneously competing for fingerprint readers.")
"desktop-file-utils-" version ".tar.xz"))
(sha256
(base32
"02bkfi6fyk4c0gh2avd897882ww5zl7qg7bzzf28qb57kvkvsvdj"))))
(build-system gnu-build-system)
"0w4ai6a3bwrdh86n2pvgv664djlmlds5lfa2hbgc4hnq67id80a4"))))
(build-system meson-build-system)
(native-inputs
(list autoconf automake pkg-config))
(list pkg-config))
(inputs
(list glib))
(home-page "https://www.freedesktop.org/wiki/Software/desktop-file-utils/")

View File

@@ -22,7 +22,7 @@
;;; Copyright © 2020 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
;;; Copyright © 2020-2022, 2024-2025 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2020-2022, 2024-2026 James Smith <jsubuntuxp@disroot.org>
;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2021, 2026 Andy Tai <atai@atai.org>
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
@@ -953,7 +953,7 @@ clone.")
(define-public trenchbroom
(package
(name "trenchbroom")
(version "2024.2")
(version "2025.4")
(source
(origin
(method git-fetch)
@@ -962,16 +962,12 @@ clone.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18cb3w7wxc9y2izh0flkkl77sg897dh0g49zq7rbhpvw35j4xgaj"))))
(base32 "0858q0dfr8f3z8aaafgvrx3zbmjlsldjyw6jjic4x4psyw2xfg3h"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~(list "-DCMAKE_BUILD_TYPE=Release" "-G" "Unix Makefiles"
"-DCMAKE_PREFIX_PATH=cmake/packages"
(string-append "-DFREEIMAGE_INCLUDE_PATH="
#$freeimage "/include")
(string-append "-DFREEIMAGE_LIBRARY="
#$freeimage "/lib/libfreeimage.so")
(string-append "-Dfreetype_INCLUDE_DIR="
#$freetype "/include/freetype2")
(string-append "-Dfreetype_LIBRARY="
@@ -1016,7 +1012,7 @@ clone.")
(inputs
(list assimp
bash-minimal
catch2
catch2-3.8
fmt
freeglut
freeimage
@@ -1027,8 +1023,8 @@ clone.")
libxxf86vm
mesa
miniz
qtbase-5
qtsvg-5
qtbase
qtsvg
tinyxml2))
(native-inputs (list git pandoc python p7zip))
(home-page "https://kristianduske.com/trenchbroom/")

View File

@@ -19,6 +19,7 @@
;;; Copyright © 2024 Nguyễn Gia Phong <cnx@loang.net>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Leo Nikkilä <hello@lnikki.la>
;;; Copyright © 2025-2026 Jonas Meeuws <jonas.meeuws@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -55,8 +56,10 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix memoization)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix git-download)
#:use-module (guix gexp)
#:use-module (guix search-paths)
#:use-module (guix utils)
@@ -1424,26 +1427,195 @@ as the 'native-search-paths' field."
"gfortran" '("fortran")
%generic-search-paths)))
(define-public gdc-11 ;kept for bootstrapping
(hidden-package
(custom-gcc gcc-11 "gdc" '("d")
%generic-search-paths)))
(define* (make-gdc gcc #:optional bootstrap-gdc #:key frontend-version)
(define gdc (custom-gcc gcc "gdc" '("d") (list $LIBRARY_PATH)))
(define version (package-version gdc))
(define (since-version? since) (version>=? version since))
(define (until-version? until) (version>? until version))
(package
(inherit gdc)
(arguments
(substitute-keyword-arguments (package-arguments gdc)
((#:modules modules)
`(,@modules
(ice-9 ftw)))
((#:configure-flags flags)
#~(append
#$flags
(list "--disable-c++tools"
#$@(if (since-version? "11") #~("--disable-libatomic") #~())
"--disable-libcc1"
"--disable-libgomp"
"--disable-libitm"
"--disable-libquadmath"
"--disable-libsanitizer"
"--disable-libssp"
#$@(if (until-version? "15") #~("--disable-libstdcxx") #~())
"--disable-plugin")))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'strip 'gdc-cleanup-install
(lambda* (#:key outputs #:allow-other-keys)
(define (delete-except-matches prefix patterns)
;; Remove all files except for those matching any of the
;; patterns.
(define (should-delete? path statbuf)
(define suffix (substring path (string-length prefix)))
(not (or (zero? (string-length suffix))
(any (cut string-match <> suffix)
patterns))))
(for-each (lambda (path)
(format #t "Deleting ~a\n" path)
(delete-file path))
(find-files prefix should-delete?))
;; Clean up empty directories.
(define (dir-empty? path statbuf)
(and (eq? (stat:type statbuf) 'directory)
(zero? (length (filter
(lambda (name)
(not (or (string=? name ".")
(string=? name ".."))))
(scandir path))))))
(while #t
(let* ((empty-dirs (find-files prefix dir-empty?
#:stat lstat
#:directories? #t)))
(if (zero? (length empty-dirs))
(break)
(for-each rmdir empty-dirs)))))
;; Leave out non-GDC binaries, man pages, locale files, and
;; c++ headers.
(delete-except-matches
(assoc-ref outputs "out")
(list "^/bin/.*gdc$"
"^/libexec/"
"^/share/info/gdc"
"^/share/man/man1/gdc"
"^/share/man/man7/"))
;; Leave out C/C++ libraries, headers and empty directories.
(delete-except-matches
(assoc-ref outputs "lib")
(list "^/lib/gcc/.*/include/d/"
"^/lib/gcc/.*/.*\\.[ao]$"
"^/lib/libgcc_s.*"
"^/lib/libgdruntime.*"
"^/lib/libgphobos.*"))
;; Repeat for the debug files.
(delete-except-matches
(assoc-ref outputs "debug")
(list "^/lib/debug/.*/bin/.*gdc\\.debug$"
"^/lib/debug/.*/lib/libgcc_s"
"^/lib/debug/.*/lib/libgdruntime"
"^/lib/debug/.*/lib/libgphobos"))))))))
(inputs
(modify-inputs (package-inputs gdc)
;; This makes flags like -static-libstdc++ work. Required for using this
;; compiler as a bootstrap compiler for GDC 12+.
;; Additionally, this allows us to support linking with GCC libraries,
;; without building or storing them ourselves.
(append (list gcc "lib"))))
(native-inputs
(let ((orig (package-native-inputs gdc)))
(if bootstrap-gdc
(modify-inputs orig
;; Since GCC 12, GDC is self-hosted, requiring a version of itself
;; to build.
(append bootstrap-gdc))
orig)))
(synopsis "GNU D Compiler")
(description
(string-append
"GDC is the D frontend for the @acronym{GNU Compiler Collection,GCC}. It
also includes the druntime and phobos libraries."
(if frontend-version
(format #f "~%~%This compiler is based on the DMD frontend version ~a."
frontend-version)
"")))
(home-page "https://www.gdcproject.org/")))
;;; Alias tracking the latest GDC version.
(define-public gdc
(hidden-package
(let ((base (custom-gcc gcc
"gdc" '("d")
%generic-search-paths)))
(package
(inherit base)
(native-inputs
(modify-inputs (package-native-inputs base)
;; Since GCC 12, GDC is self-hosted, requiring a version of itself
;; to build.
;; XXX: GCC must be prepended as well to avoid an issue with the C++
;; headers ordering.
(prepend gcc gdc-11)))))))
(define-public gdc-9
(make-gdc gcc-9 #:frontend-version "2.076.2"))
(define-public gdc-10
(make-gdc gcc-10 #:frontend-version "2.076.2"))
(define-public gdc-11
(make-gdc gcc-11 #:frontend-version "2.076.2"))
(define-public gdc-12
(make-gdc gcc-12 gdc-11 #:frontend-version "2.100.2"))
(define-public gdc-13
(make-gdc gcc-13 gdc-11 #:frontend-version "2.103.1"))
(define-public gdc-14
(make-gdc gcc-14 gdc-11 #:frontend-version "2.108.1"))
(define-public gdc-15
(make-gdc gcc-15 gdc-11 #:frontend-version "2.111.0"))
(define-public gdc gdc-14)
(define* (make-gdmd gdc)
(let ((gdc-version (package-version gdc))
(gdmd-version "0.26.0"))
(package
(name "gdmd")
(version (string-append gdc-version "-" gdmd-version))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/D-Programming-GDC/gdmd")
(commit (string-append "script-" gdmd-version))))
(file-name (git-file-name name gdmd-version))
(sha256
(base32
"0i9warhlwyspjs3rpvs2989820909lgzjnsflpd9mp2flq7isjh0"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("dmd-script" "bin/gdmd")
("dmd-script.1" "share/man/man1/gdmd.1"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'adjust-gdc-location
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "dmd-script"
(("my \\$gdc_dir.*")
(string-append "my $gdc_dir = \""
(dirname
(search-input-file inputs "/bin/gdc"))
"\";\n"))))))))
(inputs (list gdc perl))
(synopsis "DMD-like wrapper for GDC")
(description "This package provides a DMD-like wrapper for the
@acronym{GNU D Compiler,GDC}.")
(license gpl3+)
(home-page "https://github.com/D-Programming-GDC/gdmd"))))
(define-public gdmd-9
(make-gdmd gdc-9))
(define-public gdmd-10
(make-gdmd gdc-10))
(define-public gdmd-11
(make-gdmd gdc-11))
(define-public gdmd-12
(make-gdmd gdc-12))
(define-public gdmd-13
(make-gdmd gdc-13))
(define-public gdmd-14
(make-gdmd gdc-14))
(define-public gdmd-15
(make-gdmd gdc-15))
(define-public gdmd gdmd-14)
(define-public gm2
(hidden-package

View File

@@ -1,154 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2021 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages genimage)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix build utils)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bootloaders)
#:use-module (gnu packages cdrom)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpio)
#:use-module (gnu packages disk)
#:use-module (gnu packages linux)
#:use-module (gnu packages mtools)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages textutils)
#:use-module (gnu packages virtualization))
(define-public genimage
(let ((commit "00009af6e29cfd46909bc8b4180147dda9f82ba8")
(revision "0"))
(package
(name "genimage")
(version (git-version "18" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pengutronix/genimage")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1mijyq79cb0yj4jm9ln9smpddq1f6r8cnsa568qca0krcv0p3zag"))))
(build-system gnu-build-system)
(arguments
`(#:modules
((ice-9 match)
,@%default-gnu-imported-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'guixify
(lambda* (#:key inputs #:allow-other-keys)
(map (match-lambda
((input directory regexp)
(substitute* "config.c"
(((format #f "\\.def = \"(~a)\"" regexp) _ command)
(string-append ".def = \"" (assoc-ref inputs input)
"/" directory "/" command "\"")))))
'(("cpio" "bin" "cpio")
("coreutils" "bin" "dd")
("e2fsprogs" "sbin" "debugfs|e2fsck|mke2fs|tune2fs")
("genext2fs" "bin" "genext2fs")
("cdrkit-libre" "bin" "genisoimage")
("mtools" "bin" "mcopy|mmd")
;; mkcramfs is obsolete.
("dosfstools" "sbin" "mkdosfs")
("mtd-utils" "sbin" "mkfs.(jffs2|ubifs)|ubinize")
("f2fs-tools" "sbin" "(mkfs|sload).f2fs")
("squashfs-tools" "bin" "mksquashfs")
("qemu" "bin" "qemu-img")
;; rauc and fiptool are unsupported.
("tar" "bin" "tar")
("u-boot-tools" "bin" "mkimage")))
(substitute* "util.c"
(("\"/bin/sh\"")
(string-append "\"" (assoc-ref inputs "bash") "/bin/sh\"")))))
(add-before 'check 'disable-failing-tests
(lambda _
;; We don't have /etc/passwd so uid 0 is not known as "root".
;; Thus patch it out.
(substitute* '("test/flash.test")
(("test_expect_success \"flash\"")
"test_expect_fail \"flash\""))
(substitute* '("test/hdimage.test")
(("test_expect_success fdisk,sfdisk \"hdimage\"")
"test_expect_fail fdisk,sfdisk \"hdimage\"")
(("test_expect_success hexdump \"hdimage no-partition\"")
"test_expect_fail hexdump \"hdimage no-partition\""))))
(add-before 'check 'fix-failing-tests
(lambda _
;; We don't have /etc/passwd so uid 0 is not known as "root".
;; Thus patch it out.
(substitute* '("test/ext2test.2.dump"
"test/ext3test.2.dump"
"test/ext4test.2.dump"
"test/ext2test-percent.2.dump"
"test/mke2fs.2.dump"
"test/mke2fs.3.dump")
(("root") "unknown"))))
(add-before 'check 'setenv-check
(lambda _
;; Our container doesn't provide access to /etc/mtab
(setenv "EXT2FS_NO_MTAB_OK" "1")
;; Make test reproducible
(setenv "GENIMAGE_MKFJFFS2" "mkfs.jffs2 -U")
(setenv "GENIMAGE_MKE2FS" "mke2fs -E no_copy_xattrs")))
(replace 'check
(lambda _
(invoke "make" "TEST_LOG_COMPILER=" "check"))))))
(native-inputs
(list autoconf
automake
;;; Note: cramfs is obsolete.
dtc ; for the tests
pkg-config
util-linux)) ; for the tests
(inputs
`(("bash" ,bash)
("cdrkit-libre" ,cdrkit-libre)
("cpio" ,cpio)
;; Note: invoked by final executable.
("coreutils" ,coreutils) ; chmod, dd
("dosfstools" ,dosfstools)
("e2fsprogs" ,e2fsprogs)
("f2fs-tools" ,f2fs-tools)
("genext2fs" ,genext2fs)
("libconfuse" ,libconfuse)
("mtd-utils" ,mtd-utils)
("mtools" ,mtools)
("qemu" ,qemu-minimal)
("squashfs-tools" ,squashfs-tools)
("tar" ,tar)
("u-boot-tools" ,u-boot-tools)))
(synopsis "Create Flash images according to specification")
(description "@command{genimage} creates Flash images according to a
specification file.")
(home-page "https://github.com/pengutronix/genimage")
(license license:gpl2))))

View File

@@ -20,7 +20,7 @@
;;; Copyright © 2021, 2022 Nikolay Korotkiy <sikmir@disroot.org>
;;; Copyright © 2022 Patrick Noll <patrick@patricknoll.com>
;;; Copyright © 2022 Roman Scherer <roman.scherer@burningswell.com>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022-2023, 2026 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2024 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@@ -500,7 +500,7 @@ topology functions.")
(define-public gnome-maps
(package
(name "gnome-maps")
(version "49.3")
(version "49.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -508,7 +508,7 @@ topology functions.")
name "-" version ".tar.xz"))
(sha256
(base32
"1pxx50cig25dz0ab5xkbppnibb4zcv3r3vy31dkn6ncf24vykj5z"))))
"1c04z2ly9vri98gmn4p5lhmfxhqjsc6rqz7kyprf0shdsicazyl6"))))
(build-system meson-build-system)
(arguments
(list
@@ -532,14 +532,9 @@ topology functions.")
"share/zoneinfo"))))
(add-after 'install 'wrap
(lambda _
(let ((gi-typelib-path (getenv "GI_TYPELIB_PATH")))
(substitute* (string-append #$output "/share/gnome-maps/"
"org.gnome.Maps")
(("imports\\.package\\.init" all)
(string-append "'" gi-typelib-path "'.split(':').forEach("
"path => imports.gi.GIRepository.Repository."
"prepend_search_path(path));\n"
all)))))))))
(wrap-program (string-append #$output "/bin/gnome-maps")
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH")))))))))
(native-inputs
(list gettext-minimal
`(,glib "bin")
@@ -548,7 +543,8 @@ topology functions.")
pkg-config
tzdata-for-tests))
(inputs
(list folks
(list bash-minimal
folks
evolution-data-server
geoclue
geocode-glib
@@ -567,7 +563,7 @@ topology functions.")
libshumate
libsoup
libxml2
webkitgtk-for-gtk3))
webkitgtk))
(synopsis "Graphical map viewer and wayfinding program")
(description "GNOME Maps is a graphical map viewer. It uses map data from
the OpenStreetMap project. It can provide directions for walking, bicycling,

View File

@@ -141,6 +141,83 @@
It uses pandoc as back-end for parsing Markdown.")
(license license:gpl3)))
(define-public amberol
(package
(name "amberol")
(version "2025.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/World/amberol.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0ymzpf9lkhibaaah059a0pncy23kk9xiq1w37clqc5hhwzpqwpmw"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:tests? #f ;no tests
#:imported-modules `(,@%meson-build-system-modules
,@%cargo-build-system-modules)
#:modules `(((guix build cargo-build-system) #:prefix cargo:)
(guix build meson-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-for-build
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))
(substitute* "meson.build"
(("'Cargo.lock',")
""))
(delete-file "Cargo.lock")))
(add-after 'configure 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:vendor-dir "vendor"
#:cargo-target #$(cargo-triplet)
args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums))))
(add-after 'install 'wrap-program
(lambda _
(wrap-program (string-append #$output "/bin/amberol")
`("GST_PLUGIN_SYSTEM_PATH" ":" suffix
(,(getenv "GST_PLUGIN_SYSTEM_PATH")))))))))
(native-inputs
(cons* bash-minimal
gettext-minimal
`(,glib "bin")
pkg-config
rust
`(,rust "cargo")
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(inputs
(cons* bash-minimal
gstreamer
gst-plugins-bad
gtk
libadwaita
(cargo-inputs 'amberol)))
(home-page "https://apps.gnome.org/Amberol/")
(synopsis "Music player for GNOME")
(description "Amberol is a minimalistic music player for GNOME. It works
with one playlist in which you can add local audio files and directories.")
(license license:gpl3+)))
(define-public blanket
(package
(name "blanket")

View File

@@ -39,7 +39,7 @@
;;; Copyright © 2019, 2024, 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2019-2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2019-2026 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2019, 2020 Raghav Gururajan <raghavgururajan@disroot.org>
@@ -82,7 +82,7 @@
;;; Copyright © 2024 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2025 Noé Lopez <noelopez@free.fr>
;;; Copyright © 2025 Ashvith Shetty <ashvithshetty0010@zohomail.in>
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2025, 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2025 Abra K. <abra_k_332@protonmail.me>
;;; Copyright © 2025 Ben Hansen <git@beha.pw>
;;; Copyright © 2026 Roman Riabenko <roman@riabenko.com>
@@ -188,6 +188,7 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages networking)
#:use-module (gnu packages node-xyz)
#:use-module (gnu packages nss)
#:use-module (gnu packages ocr)
#:use-module (gnu packages openldap)
@@ -652,6 +653,73 @@ of writing test cases for asynchronous interactions.")
(home-page "https://launchpad.net/gtx")
(license license:lgpl2.1+)))
(define-public decibels
(package
(name "decibels")
(version "49.0")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://gnome/sources/" name "/"
(version-major version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"1jkkyv9r87skqyjhzflzzczzwf3ycwnavw1r3qa6jzlnwai9pdr9"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-gst-init
(lambda _
;; `null' is no longer accepted as of gstreamer 2.28.1 (see:
;; <https://gitlab.gnome.org/GNOME/decibels/-/merge_requests/178>).
(substitute* "src/stream.ts"
(("Gst.init\\(null)")
"Gst.init([])"))))
(add-after 'unpack 'skip-gnome-post-install
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")
(("update_desktop_database: true")
"update_desktop_database: false"))))
(add-after 'install 'wrap-program
(lambda _
(let ((typelib-path (getenv "GI_TYPELIB_PATH")))
(wrap-program (string-append #$output "/bin/org.gnome.Decibels")
`("GI_TYPELIB_PATH" ":" prefix (,typelib-path))))))
(add-after 'glib-or-gtk-wrap 'install-alias
(lambda _
(symlink (string-append #$output "/bin/org.gnome.Decibels")
(string-append #$output "/bin/decibels")))))))
(native-inputs
(list blueprint-compiler
gettext-minimal
`(,glib "bin")
pkg-config
node-typescript))
(inputs
(list bash-minimal
gjs
gst-plugins-bad ;for GstPlay
gstreamer
libadwaita))
(home-page "https://gitlab.gnome.org/GNOME/decibels")
(synopsis "GNOME audio file player")
(description "Decibels, also known as Audio Player, is an audio player
focused on simplicity. It offers few advanced features such as:
@itemize
@item{An elegant waveform of the track.}
@item{Adjustable playback speed.}
@item{Easy seek controls.}
@item{Playing multiple files at the same time.}
@end itemize")
(license license:gpl3+)))
(define-public dee
(package
(name "dee")
@@ -915,6 +983,7 @@ tomorrow, the rest of the week and for special occasions.")
gtk
gvfs
json-glib
localsearch
libadwaita
libdazzle
libmediaart
@@ -922,8 +991,7 @@ tomorrow, the rest of the week and for special occasions.")
python-pycairo
python-pygobject
python
tracker
tracker-miners))
tinysparql))
(synopsis "Simple music player for GNOME desktop")
(description "GNOME Music is the new GNOME music playing application that
aims to combine an elegant and immersive browsing experience with simple
@@ -945,6 +1013,16 @@ and straightforward controls.")
(base32
"0b77ipvvi520nv7rr6jb1c3xryhc3m2mywhby7m48kfgag8vvx2w"))))
(build-system gnu-build-system)
(native-inputs (list bison flex))
(arguments
(list #:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-rpcgen-parse
(lambda _
(substitute* "rpcgen_parse.y"
(("#include \"rpcgen_int.h\"")
(string-append
"#include \"rpcgen_int.h\"\n"
"int yylex();\n"))))))))
(synopsis "External Data Representation Library")
(description "PortableXDR is an implementation of External Data
Representation (XDR) Library. It is a standard data serialization format, for
@@ -10412,6 +10490,7 @@ playing media, scanning, and much more.")
(propagated-inputs
(list baobab
cheese
decibels
epiphany
evince
file-roller
@@ -10445,7 +10524,7 @@ playing media, scanning, and much more.")
dbus
dconf
desktop-file-utils
font-abattis-cantarell
font-adwaita
font-dejavu
gnome-default-applications
gnome-online-accounts
@@ -11242,6 +11321,10 @@ supports both X and Wayland display servers.")
(sha256
(base32 "17ampw9p1fp7s7i43cz9r68v6mm7xmb1sndx1mqmkns35kn8yl8a"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
#~(list "CFLAGS=-g -O2 -Wno-error=implicit-function-declaration")))
(native-inputs
(list desktop-file-utils intltool pkg-config))
(inputs
@@ -12472,7 +12555,7 @@ desktop environment.")
(define-public gnome-boxes
(package
(name "gnome-boxes")
(version "48.1")
(version "49.1")
(source
(origin
(method url-fetch)
@@ -12480,7 +12563,7 @@ desktop environment.")
(version-major version) "/"
"gnome-boxes-" version ".tar.xz"))
(sha256
(base32 "1q2zzq6hizz5dillhqqddddlyjz7wy1sffyj06mh9axdrpa5aaj1"))))
(base32 "1jj41r9ras2ys0r2cw8f5bs3nkz0fj1jl693sc5q50yhvl0qhism"))))
(outputs '("out" "debug"))
(build-system meson-build-system)
(arguments
@@ -12496,11 +12579,7 @@ desktop environment.")
(substitute* "src/installed-media.vala"
(("qemu-img")
(search-input-file inputs
"/bin/qemu-img")))))
(add-before 'configure 'relax-gcc-14-strictness
(lambda _
(setenv "CFLAGS"
"-g -O2 -Wno-error=int-conversion"))))))
"/bin/qemu-img"))))))))
(native-inputs
(list desktop-file-utils ;for update-desktop-database
gettext-minimal

View File

@@ -527,7 +527,7 @@ gpgpme starting with version 1.7.")
(package
(name "guile-gcrypt")
(version "0.5.0")
(home-page "https://notabug.org/cwebber/guile-gcrypt")
(home-page "https://codeberg.org/guile-gcrypt/guile-gcrypt")
(source (origin
(method git-fetch)
(uri (git-reference

View File

@@ -21,7 +21,7 @@
;;; Copyright © 2023 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2023 Miguel Ángel Moreno <mail@migalmoreno.com>
;;; Copyright © 2023 conses <contact@conses.eu>
;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023, 2024, 2026 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024 Jean Simard <woshilapin@tuziwo.info>
;;; Copyright © 2024 Jesse Eisses <jesse@eisses.email>
;;; Copyright © 2024 Superfly Johnson <superfly.johnson@yahoo.com>
@@ -182,6 +182,31 @@ can be ignored.")
keys, no configuration options, and Unix-style composability.")
(license license:bsd-3)))
(define-public go-filippo-io-bigmod
(package
(name "go-filippo-io-bigmod")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/FiloSottile/bigmod")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "029h8qh9ym384q56aprm1if9arq7kmqdsv6l2wbjhkq8w307vd7r"))))
(build-system go-build-system)
(propagated-inputs
(list go-golang-org-x-sys))
(arguments
'(#:import-path "filippo.io/bigmod"))
(home-page "https://github.com/FiloSottile/bigmod")
(synopsis "Constant-time library for big integers modulo a prime")
(description "Bigmod is a constant-time library for big integers modulo a
prime, usable for cryptographic applications. Exported from
crypto/internal/bigmod, the backend of crypto/rsa and crypto/ecdsa.")
(license license:bsd-3)))
(define-public go-filippo-io-edwards25519
(package
(name "go-filippo-io-edwards25519")

View File

@@ -1125,7 +1125,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.24)
(name "go")
(version "1.25.7")
(version "1.25.8")
(source
(origin
(method git-fetch)
@@ -1134,7 +1134,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0mjygpbswf91af07bbc1xpbw1adbcd210401rp5wpqv6d5rqn3jc"))))
(base32 "0vgz80mrxlkljr8ynficwvshinirqxbiv2ikscf941ladbv0g604"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.24)
((#:phases phases)
@@ -1170,7 +1170,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(package
(inherit go-1.24)
(name "go")
(version "1.26.0")
(version "1.26.1")
(source
(origin
(method git-fetch)
@@ -1179,7 +1179,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n37n62bg2kb39s4a5273lpmqk1n5f5yi6jgfm8m7489j11ay8rl"))))
(base32 "1blfc89jxlr7n35j77i523k8rsxvz16f44qzd0h65c940zrrmf77"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.24)
((#:phases phases)

View File

@@ -338,14 +338,14 @@ another.")
(define-public orc
(package
(name "orc")
(version "0.4.41")
(version "0.4.42")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/data/src/"
"orc/orc-" version ".tar.xz"))
(sha256
(base32
"18kz8sc8vh0rzk0n221zc8km9pp9gdcjsr04phwwv2ajcm7zs6yb"))))
"03694b8jnaqhi9z49v45qchcbvp1i9maamn4fiwcjg5gb6mi5jby"))))
(build-system meson-build-system)
(arguments
`(#:phases
@@ -375,7 +375,7 @@ arrays of data.")
(define-public gstreamer-docs
(package
(name "gstreamer-docs")
(version "1.26.3")
(version "1.28.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -383,7 +383,7 @@ arrays of data.")
"/gstreamer-docs-" version ".tar.xz"))
(sha256
(base32
"11q0yydchisd4c0jnqa6kmnf66kf25fim3l456krlwcy1qpsvd4j"))))
"0bp2rffj82a8c5l119dv4kxjkl1l35d9b0lynfc0vk2krcrb5xyv"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@@ -435,7 +435,7 @@ the GStreamer multimedia framework.")
(define-public gstreamer
(package
(name "gstreamer")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
@@ -444,7 +444,7 @@ the GStreamer multimedia framework.")
version ".tar.xz"))
(sha256
(base32
"1016z0znl2j43n08rl19zdhfvfsgnmg44qh8fk6dr4qj481icrnw"))))
"0125cqbm5a2bhi37bzs6hgj89r057py3zhkmrfc8ggxx6px2ypmn"))))
(build-system meson-build-system)
(arguments
(list #:disallowed-references (list (this-package-native-input "python"))
@@ -516,7 +516,7 @@ This package provides the core library and elements.")
(define-public gst-plugins-base
(package
(name "gst-plugins-base")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
@@ -524,11 +524,13 @@ This package provides the core library and elements.")
name "-" version ".tar.xz"))
(sha256
(base32
"0cvrq9767w0aqzinifbirbc95jg4i4md4b8f4b70hlq217pzkyaf"))))
"15r42ff1mwkj5p3z0dij6d9isi1q02gmjnp8i26xgx9gm71a8ihl"))
(patches (search-patches "gst-plugins-base-null-pointer.patch"))))
(build-system meson-build-system)
(propagated-inputs
(list glib ;required by gstreamer-sdp-1.0.pc
gstreamer ;required by gstreamer-plugins-base-1.0.pc
libdrm ;required by gstreamer-allocators-1.0.pc
libgudev ;required by gstreamer-gl-1.0.pc
;; wayland-client.h is referred to in
;; include/gstreamer-1.0/gst/gl/wayland/gstgldisplay_wayland.h
@@ -570,9 +572,8 @@ This package provides the core library and elements.")
(lambda _
(substitute* "tests/check/meson.build"
;; This test causes nondeterministic failures (see:
;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/950).
((".*'elements/appsrc.c'.*")
""))
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/895>).
((".*'elements/appsrc.c'.*") ""))
;; Some other tests fail on other architectures.
#$@(cond
((target-x86-32?)
@@ -624,7 +625,7 @@ for the GStreamer multimedia library.")
(define-public gst-plugins-good
(package
(name "gst-plugins-good")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
@@ -633,7 +634,7 @@ for the GStreamer multimedia library.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0lrwscda9yy8a61bv65c3392vb5m8phrl5i7bwgbprnz1rkwjkpy"))))
(base32 "139n8in88003dbx4kv6i69zhl4bs07f1mf201q2n4yhvwjp2d3kk"))))
(build-system meson-build-system)
(arguments
(list
@@ -744,14 +745,14 @@ model to base your own plug-in on, here it is.")
(define-public gst-plugins-bad
(package
(name "gst-plugins-bad")
(version "1.26.3")
(version "1.28.1")
(source (origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32
"0qbmblksgl2nmbi6brw54b1bzziw9flvqk2zb576y9qlmyn8vi4m"))
"18hk8gh97r2cwdazl5ikjwsczk3bkvr4z7nmjc45bdgqhwvmkhan"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -957,7 +958,7 @@ par compared to the rest.")
(define-public gst-plugins-ugly
(package
(name "gst-plugins-ugly")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
@@ -965,7 +966,7 @@ par compared to the rest.")
(string-append "https://gstreamer.freedesktop.org/src/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32 "19fvv6rvrcvhw4lnx078xb4b85pzbwbrqwdk841sqd7pjpl5wzs1"))))
(base32 "0y2sz79ms498mag3rsvkng8q5pmg9f2v0njfq3zw7k1z0v5z70j0"))))
(build-system meson-build-system)
(arguments
(list #:glib-or-gtk? #t ; To wrap binaries and/or compile schemas
@@ -1014,7 +1015,7 @@ think twice about shipping them.")
(define-public gst-libav
(package
(name "gst-libav")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
@@ -1023,7 +1024,7 @@ think twice about shipping them.")
"https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0kbjs8z545maj3j2qzgpg41v3yr53q1c852v80zbmf5rld87xnis"))))
(base32 "16zfxw6h865sqi71j47lllr3y7jlnwsrwmfxvjnxh3wdlfn1madz"))))
(build-system meson-build-system)
(native-inputs (list perl pkg-config python-wrapper ruby))
(inputs (list ffmpeg))
@@ -1037,7 +1038,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
(define-public gst-editing-services
(package
(name "gst-editing-services")
(version "1.26.3")
(version "1.28.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1045,7 +1046,7 @@ decoders, muxers, and demuxers provided by FFmpeg.")
"gst-editing-services-" version ".tar.xz"))
(sha256
(base32
"1lkgs5h76qzqfpqvi31vs5xr68bbi0kwkw2g0ahvcs1l5hysj86x"))))
"1p0ml4yyqs840l9zlgw41k1lh8z9jvaangap5azfwsrmw75h0q1x"))))
(build-system meson-build-system)
(arguments
(list
@@ -1093,7 +1094,7 @@ given, also pass them to the build system instead of the ones used by PKG."
#~(modify-phases #$phases
(add-after 'unpack 'disable-auto-plugins
(lambda _
(substitute* "meson_options.txt"
(substitute* "meson.options"
(("'auto'") "'disabled'")))))))))))
(define-public gst-plugins-bad-minimal
@@ -1107,14 +1108,14 @@ binary, but none of the actual plugins.")))
(define-public gst-rtsp-server
(package
(name "gst-rtsp-server")
(version "1.26.3")
(version "1.28.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://gstreamer.freedesktop.org/src/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1ibg83sa0nswqan5fg378bg36jis5sn1dwfl1mvqjiw4m59qlpj1"))))
(base32 "0cpqvdxr7falww14xblqs7la6q2f1z1zbli4vjdp9yqcy9mfil3c"))))
(build-system meson-build-system)
(arguments
(list #:phases
@@ -1142,7 +1143,7 @@ RTSP connections and messages.")
(define-public python-gst
(package
(name "python-gst")
(version "1.26.3")
(version "1.28.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1150,7 +1151,7 @@ RTSP connections and messages.")
"gst-python-" version ".tar.xz"))
(sha256
(base32
"04hv5pj8br56knvw1nsx74j1lpxskbm6znsdqac28iszqjkvjhwk"))))
"11bhdylgkfcgdlfcv61vyjp0f27sqp3i4y7d8c2a2nxrmnaylz6l"))))
(build-system meson-build-system)
(arguments
(list
@@ -1162,7 +1163,22 @@ RTSP connections and messages.")
#:configure-flags
#~(list (string-append
"-Dpygi-overrides-dir="
(py:site-packages %build-inputs %outputs) "/gi/overrides"))))
(py:site-packages %build-inputs %outputs) "/gi/overrides"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; The 'fundamentals' test fails with a segmentation fault since
;; 1.28.1 (see:
;; <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4937>).
(substitute* "testsuite/meson.build"
((".*'fundamentals',.*") ""))))
(delete 'check) ;moved after install
(add-after 'install 'check
(assoc-ref %standard-phases 'check))
(add-before 'check 'add-install-to-pythonpath
;; Required for the 'plugins' test.
(assoc-ref py:%standard-phases 'add-install-to-pythonpath)))))
(native-inputs
(list pkg-config python))
;; XXX: Move back to propagated-inputs once we no longer need to use

View File

@@ -1672,62 +1672,6 @@ documents.")
("guile-cairo" ,guile2.2-cairo)
("guile-rsvg" ,guile2.2-rsvg)))))
(define-public guile-gnome
(package
(name "guile-gnome")
(version "2.16.5")
(source (origin
(method url-fetch)
(uri
(string-append "mirror://gnu/" name
"/guile-gnome-platform/guile-gnome-platform-"
version ".tar.gz"))
(sha256
(base32
"1gnf3j96nip5kl99a268i0dy1hj7s1cfs66sps3zwysnkd7qr399"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config
at-spi2-core
;;("corba" ,corba) ; not packaged yet
gconf
gobject-introspection
;;("gthread" ,gthread) ; not packaged yet
gnome-vfs
gdk-pixbuf
gtk+-2
libglade
libgnome
libgnomecanvas
libgnomeui
pango
libffi
glib))
(inputs (list guile-2.2))
(propagated-inputs
`(("guile-cairo" ,guile2.2-cairo)
("g-wrap" ,g-wrap)
("guile-lib" ,guile2.2-lib)))
(arguments
`(#:tests? #f ;FIXME
#:phases (modify-phases %standard-phases
(add-before 'configure 'pre-configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* (find-files "." "^Makefile.in$")
(("guilesite :=.*guile/site" all)
(string-append all "/@GUILE_EFFECTIVE_VERSION@")))
#t))))))
(outputs '("out" "debug"))
(synopsis "Guile interface for GTK+ programming for GNOME")
(description
"Includes guile-clutter, guile-gnome-gstreamer,
guile-gnome-platform (GNOME developer libraries), and guile-gtksourceview.")
(home-page "https://www.gnu.org/software/guile-gnome/")
(license license:gpl2+)
(properties '((upstream-name . "guile-gnome-platform")
(ftp-directory . "/gnu/guile-gnome/guile-gnome-platform")))))
;;;
;;; C++ bindings.
;;;

View File

@@ -44,7 +44,7 @@
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2022 Taiju HIGASHI <higashi@taiju.info>
;;; Copyright © 2022, 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022, 2025 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2022, 2025-2026 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;; Copyright © 2023 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2024 Ilya Chernyshov <ichernyshovvv@gmail.com>
@@ -169,12 +169,13 @@
(name "artanis")
(version "1.3.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/artanis/artanis-"
version ".tar.gz"))
(sha256
(base32
"16cwjyl0ykz6r7vvczrwaik6y4pc0fwc0hvwskfbgv9z71j2alzi"))
(method git-fetch)
(uri (git-reference
(url "https://https.git.savannah.gnu.org/git/artanis.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"0qpksi681z10jsip8ka0phq5kmkpxfcy5nvm861dsbjb335klbb6"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -213,7 +214,10 @@
(propagated-inputs
(list guile-json-4 guile-curl guile-readline guile-redis))
(native-inputs
(list bash-minimal ;for the `source' builtin
(list autoconf
automake
gnu-gettext ;for 'AC_LIB_LINKFLAGS_FROM_LIBS' macro
bash-minimal ;for the `source' builtin
pkg-config
util-linux)) ;for the `script' command
(arguments
@@ -816,16 +820,16 @@ library for GNU Guile based on the actor model.")
(name "guile-daemon")
(version "0.1.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/alezost/" name
"/releases/download/v" version
"/" name "-" version ".tar.gz"))
(sha256
(base32
"08gaqrgjlly9k5si72vvpbr4xhq5v52l5ma5y6a7spid5dd057cy"))))
(method git-fetch)
(uri (git-reference
(url "https://github.com/alezost/guile-daemon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"0mdxdiwb52zgpz144vii8f4jdia8a7w1i1mpffw8zh3ghglfrjzl"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
(list autoconf automake texinfo pkg-config))
(inputs
(list guile-3.0))
(home-page "https://github.com/alezost/guile-daemon")
@@ -1432,20 +1436,19 @@ HTML (via SXML) or any other format for rendering.")
(name "guile-sjson")
(version "0.2.2")
(source (origin
(method url-fetch)
(uri (string-append "https://dustycloud.org/misc/sjson-" version
".tar.gz"))
(sha256
(base32
"08sr16fg5cqvik3wblav6k4b6djc5ydhgfvxa49bc5bh1irqvrcn"))
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/dustyweb/guile-sjson")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"1npbla3vy1m0dqvr8gfzx1ncd2mp2cm59mnb7g490vak29kc8s9j"))
(modules '((guix build utils)))
(snippet
'(begin
;; Allow builds with Guile 3.0.
(substitute* "configure"
(("2\\.2 2\\.0")
"3.0 2.2 2.0"))
#t))))
;; Allow builds with Guile 3.0.
#~(substitute* "configure.ac"
(("2\\.2 2\\.0")
"3.0 2.2 2.0")))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake pkg-config))
@@ -1869,12 +1872,14 @@ types are supported.")
(name "guile-aa-tree")
(version "3.1.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/guile-aa-tree/guile-aa-tree-"
version ".tar.gz"))
(sha256
(base32
"0044c105r3q9vpl17pv3phl1b79kjm1llhkakqgiasixyav01blh"))))
(method git-fetch)
(uri (git-reference
(url
"https://https.git.savannah.gnu.org/git/guile-aa-tree.git")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"0ghbrszjhv2abgpf11js6grqrri53frysf4360a5yvwhy9bb42pc"))))
(build-system guile-build-system)
(inputs (list guile-3.0))
(arguments
@@ -2165,15 +2170,16 @@ allows users to interact with the Guile REPL through Jupyter.")
(name "guile-sparql")
(version "0.0.8")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/roelj/guile-sparql/releases/download/"
version "/guile-sparql-" version ".tar.gz"))
(sha256
(base32 "1jf4972f9fpm0rd865xpnc9mzl3xv6vhfnp0iygadydy905z9nln"))))
(method git-fetch)
(uri (git-reference
(url "https://github.com/roelj/guile-sparql")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"0iy390dsa0rs6d4gapw1s03gz4zba26w5sdiyvnzlygwv0d1inww"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
(list autoconf automake texinfo pkg-config))
(inputs
(list guile-3.0))
(home-page "https://github.com/roelj/guile-sparql")
@@ -2188,17 +2194,19 @@ using S-expressions.")
(name "guile-debbugs")
(version "0.0.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/guile-debbugs/guile-debbugs-"
version ".tar.gz"))
(sha256
(base32
"1cc63nw3xdfjrfk8c58r6d5lidmfq5cpqcy32yd5xp81yccprvn9"))))
(method git-fetch)
(uri (git-reference
(url
"https://https.git.savannah.gnu.org/git/guile-debbugs.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"0ipv3vywx02yhyssq5rp1bifg1qkydgh6kr16vfspxs601q8bbm2"))))
(build-system gnu-build-system)
(propagated-inputs
(list guile-email))
(native-inputs
(list guile-3.0 pkg-config))
(list autoconf automake texinfo guile-3.0 pkg-config))
(home-page "https://savannah.gnu.org/projects/guile-debbugs/")
(synopsis "Guile interface to the Debbugs bug tracking service")
(description
@@ -2449,13 +2457,14 @@ written in pure Scheme by using Guile's foreign function interface.")
(name "guile-xosd")
(version "0.2.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/alezost/" name
"/releases/download/v" version
"/" name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/alezost/guile-xosd")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10r29bpyrsvjalnzkam2falj9k34lvxmch05zs606zp1nk93whp3"))))
"0jc88zg6icdg70mxbg732hx5by5bahqjm68yhx2ypqdqi7kqq1fk"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -2468,7 +2477,7 @@ written in pure Scheme by using Guile's foreign function interface.")
(or (getenv "CPATH") "")))
#t)))))
(native-inputs
(list pkg-config))
(list autoconf automake libtool texinfo pkg-config))
(inputs
(list guile-3.0 libx11 libxext libxinerama xosd))
(home-page "https://github.com/alezost/guile-xosd")
@@ -2512,10 +2521,6 @@ library}.")
(assoc-ref %standard-phases 'check)))))
(native-inputs (list autoconf automake libtool pkg-config))
(inputs (list guile-3.0 yaml-cpp))
(native-search-paths
(list (search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files (list "lib/guile/3.0")))))
(home-page "https://gitlab.com/yorgath/guile-yamlpp")
(synopsis "Guile YAML reader/writer based on @code{yaml-cpp}")
(description
@@ -3325,13 +3330,12 @@ writing a Guix package.")))
(package
(inherit guile-g-golf)
(name "g-golf-adw-1-examples")
;; XXX: Update version when we have a recent enough libadwaita.
(version "0.8.0")
(version "0.8.4")
(source
(g-golf-source #:version version
#:hash
(content-hash
"14b6pjchra0axqifpm90m7jbxla2sarhd7bfhzqbn7d14b74sv2d")))
"0qwwvqhhjc141dfj881mah1bgvwlgz111qrh0ml7qf4mc2ssjxqf")))
(build-system glib-or-gtk-build-system)
(arguments
(list
@@ -3354,10 +3358,6 @@ writing a Guix package.")))
(chdir "examples/adw-1")
;; Re-use the existing Makefile for its wildcard syntax.
(rename-file "Makefile.am" "Makefile")
(substitute* "Makefile"
;; Fix syntax error.
(("hello-world")
"hello-world \\"))
;; Add a rule to install the examples. We install to the
;; documentation directory where examples are usually located,
;; but we will later create a copy in /bin for `guix shell'.
@@ -3374,7 +3374,6 @@ install:
for f in $(EXTRA_DIST); do \\
cp -r $$f $(examplesdir)/$$f; \\
done
cp demo/g-resources $(examplesdir)/demo/g-resources
" #$output)
(close-port port))))
(delete 'configure)
@@ -3382,10 +3381,7 @@ install:
(lambda _
;; Create files for adwaita-1-demo needed in install phase.
(with-directory-excursion "demo"
(system* "make")
(system* "glib-compile-resources"
"--target" "g-resources"
"g-resources.xml"))))
(invoke "make"))))
(add-before 'install 'patch-scm-files
(lambda* (#:key inputs #:allow-other-keys)
;; `current-filename' calls in examples are broken.
@@ -3399,7 +3395,12 @@ install:
(("^exec guile ")
(string-append
"exec " (search-input-file inputs "/bin/guile")
" ")))))
" "))
((" \\(compile-g-resources")
" (chdir path)(compile-g-resources")
(("glib-compile-resources")
(search-input-file inputs
"/bin/glib-compile-resources")))))
(map (cut string-drop <> 2) ;strip ./ prefix
(find-files "." (lambda (file stat)
;executables or .scm modules
@@ -3453,11 +3454,11 @@ install:
bash-minimal
libadwaita
(librsvg-for-system)
`(,glib "bin") ;for glib-compile-resources
gtk
guile-3.0
guile-g-golf))
(native-inputs (list `(,glib "bin") ;for glib-compile-resources
guile-3.0))
(native-inputs (list guile-3.0))
(propagated-inputs (list))
(synopsis "G-Golf Adw-1 examples")
(description
@@ -3529,10 +3530,6 @@ wrap G-Golf applications when writing a Guix package.")))
(install-file "socket.scm" share-dir))))
(delete 'check)
(delete 'install))))
(native-search-paths
(list (search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files (list "lib/guile/3.0")))))
(inputs (list gcc guile-3.0))
(synopsis "C bindings for UNIX sockets in multi-scheme (Guile, Gauche,
Chicken) Wayland library")
@@ -3606,10 +3603,6 @@ Probably can be replaced with guile's built-ins: @code{fdes->ports},
(install-file "shm.scm" share-dir))))
(delete 'check)
(delete 'install))))
(native-search-paths
(list (search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files (list "lib/guile/3.0")))))
(inputs (list gcc guile-3.0))
(synopsis "C bindings for wayland shared memory (SHM) in multi-scheme
(Guile, Gauche, Chicken) wayland library")
@@ -3677,10 +3670,6 @@ Probably can be replaced with guile's built-in file-descriptor procedures.")
(substitute* (list client-file)
(("WAYLAND_BASE_PROTOCOL_PATH")
core-protocol-file))))))))
(native-search-paths
(list (search-path-specification
(variable "GUILE_EXTENSIONS_PATH")
(files (list "lib/guile/3.0")))))
(native-inputs (list guile-3.0 pkg-config texinfo autoconf automake))
(inputs (list wayland wayland-protocols))
(propagated-inputs (list guile-wayland-scm-socket guile-wayland-scm-shm))
@@ -3695,15 +3684,22 @@ client bindings for Wayland.")
(name "g-wrap")
(version "1.9.15")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/g-wrap/g-wrap-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://https.git.savannah.gnu.org/git/g-wrap.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0ak0bha37dfpj9kmyw1r8fj8nva639aw5xr66wr5gd3l1rqf5xhg"))))
"19bwqfk33djd51ijylvcmz3zz9pqvv1k7bk8k912b1bwbpfr3j0y"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
(list autoconf
automake
libtool
gnu-gettext ;for 'AC_LIB_LINKFLAGS_FROM_LIBS' macro
texinfo
pkg-config))
(propagated-inputs
(list guile-2.2 guile-lib))
(inputs
@@ -3795,14 +3791,34 @@ quotes.")
(name "guile-reader")
(version "0.6.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/guile-reader/guile-reader-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url
"https://https.git.savannah.gnu.org/git/guile-reader.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0nqkk4x18i7p3k9jxld4fnk8d69bq9ag6hqsyjzbfw9fmhrh08kb"))))
"0y3dq509hwm30ixb3cs3wci2lpni78438q7zz8f7way8vqp5164a"))))
(build-system gnu-build-system)
(native-inputs (list pkg-config gperf))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-before 'bootstrap 'copy-config.rpath
(lambda* (#:key inputs #:allow-other-keys)
;; This file is not automatically copied by 'autoreconf'.
(let ((config-rpath (search-input-file
inputs
"/share/gettext/config.rpath")))
(install-file config-rpath "build-aux")))))))
(native-inputs
(list autoconf
automake
libtool
gnu-gettext ;for 'AC_LIB_LINKFLAGS_FROM_LIBS' macro
texinfo
pkg-config
gperf))
(inputs (list guile-3.0))
(synopsis "Framework for building readers for GNU Guile")
(description
@@ -3831,15 +3847,18 @@ many readers as needed).")
(name "guile-ncurses")
(version "3.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/guile-ncurses/guile-ncurses-"
version ".tar.gz"))
(sha256
(base32
"0cypz1ikw66n8bc2klsnnaj1plpl22dwq6pwyc7dvffamz7fi2gf"))))
(method git-fetch)
(uri (git-reference
(url
"https://https.git.savannah.gnu.org/git/guile-ncurses.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"00xhlca5s278i4g74qgks35ymisa98rhcj63bflja289gpb7j8wf"))))
(build-system gnu-build-system)
(inputs (list ncurses guile-3.0))
(native-inputs (list pkg-config))
(native-inputs (list autoconf automake libtool texinfo pkg-config))
(arguments
`(#:modules ((guix build gnu-build-system)
((guix build guile-build-system)
@@ -3888,13 +3907,16 @@ library.")
(name "guile-lib")
(version "0.2.8.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/guile-lib/guile-lib-"
version ".tar.gz"))
(sha256
(base32
"1ca95g15a88l7rpqcnzmhj1kyxc7gyfbvnni1hckv8z677cc4x0k"))
(patches (search-patches "guile-lib-fix-tests-for-guile2.2.patch"))))
(method git-fetch)
(uri (git-reference
(url
"https://https.git.savannah.gnu.org/git/guile-lib.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32
"1f5a1mi1w487ia677nl8b6gixbgcavnbykzmgqs0yiyrc3w6vdcz"))
(patches (search-patches
"guile-lib-fix-tests-for-guile2.2.patch"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0") ;placate guild warnings
@@ -3912,6 +3934,7 @@ $(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n")))))))
(native-inputs
(list autoconf
automake
texinfo
gettext-minimal
guile-3.0
pkg-config))
@@ -4063,7 +4086,7 @@ See http://minikanren.org/ for more on miniKanren generally.")
(define-public guile-irregex
(package
(name "guile-irregex")
(version "0.9.11")
(version "0.9.12")
(source (origin
(method url-fetch)
(uri (string-append
@@ -4071,7 +4094,7 @@ See http://minikanren.org/ for more on miniKanren generally.")
version ".tar.gz"))
(sha256
(base32
"026kzl96pmwbjqdc7kh8rdh8ng813sjvdsik0dag5acza20sjm19"))))
"1rmlmkf2pnly7mqi407vi2k6k19m2h44d4jvzfkrizk892qj61yc"))))
(build-system guile-build-system)
(arguments
(list
@@ -4682,27 +4705,27 @@ a standalone WebAssembly toolchain.")
(name "guile-file-names")
(version "0.3")
(source (origin
(method url-fetch)
(uri (string-append "http://brandon.invergo.net/software/download/"
"guile-file-names/guile-file-names-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/brandoninvergo/guile-file-names")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"01chizdxkhw6aqv629vxka9f5x3534ij7r0jqndawsg2vxm1r9sz"))))
"0hmsbvbcl9a7366afcqi0pdhjhlq7l137nkmv1a5z9b8pcgzx90s"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-target-directory
(lambda _
(substitute* "src/Makefile.in"
(substitute* "src/Makefile.am"
(("guilemoddir = \\$\\(GUILE_SITE\\)")
"guilemoddir = $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n"))
#t)))))
"guilemoddir = $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")))))))
(inputs
(list guile-2.2))
(native-inputs
(list pkg-config))
(list autoconf automake texinfo pkg-config))
(home-page "https://gitlab.com/brandoninvergo/guile-file-names")
(synopsis "Manipulate file names")
(description
@@ -5765,12 +5788,14 @@ processing filters.")
(name "guile-cv")
(version "0.4.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/guile-cv/guile-cv-"
version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://https.git.savannah.gnu.org/git/guile-cv.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"00620zxm1rxlws7vn1zp2zzcb6y6r3szzj6b4b9fyjb86k972izb"))))
"15qmhfiijca2468s8s9xhb0wskiy4wgym9p5jqi4xy30ddnpvyk2"))))
(build-system gnu-build-system)
(arguments
(list
@@ -5784,8 +5809,7 @@ processing filters.")
(("SITEDIR=\"\\$datadir/guile-cv\"")
"SITEDIR=\"$datadir/guile/site/$GUILE_EFFECTIVE_VERSION\"")
(("SITECCACHEDIR=\"\\$libdir/guile-cv/")
"SITECCACHEDIR=\"$libdir/"))
(delete-file "configure"))) ;trigger 'bootstrap' phase
"SITECCACHEDIR=\"$libdir/"))))
(add-after 'unpack 'substitute-libs
(lambda* (#:key inputs outputs #:allow-other-keys)
(substitute* "cv/init.scm"
@@ -6032,13 +6056,20 @@ implementation in itself.")
(sha256
(base32 "0g508aajkyi513wbhm1rhs03ilnb701lwlrvppkmc0vynydlk9ws"))))
(arguments
(list #:phases #~(modify-phases %standard-phases
(add-before 'build 'remove-unnecessary-file
(lambda _
(delete-file "run-tests.scm")
(delete-file-recursively "tests"))))))
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'check
(lambda _
(invoke "guile" "--no-auto-compile" "run-tests.scm")
(delete-file "run-tests.scm")
(delete-file-recursively "tests")))
(add-after 'build 'install-info-documentation
(lambda _
(invoke "makeinfo" "doc/guile-uuid.texi" "-o"
(string-append #$output "/share/info/")))))))
(build-system guile-build-system)
(native-inputs (list guile-3.0))
(native-inputs (list guile-3.0 texinfo))
(propagated-inputs (list guile-gcrypt))
(home-page "https://codeberg.org/elb/guile-uuid")
(synopsis "UUID generation and manipulation library for Guile Scheme")
@@ -6049,7 +6080,6 @@ standard hex-and-dash format of any variant and version.
Conversion between binary and hex-and-dash string UUIDs is also included.")
(license license:gpl3+)))
(define-public guile-semver
(package
(name "guile-semver")

View File

@@ -829,7 +829,7 @@ Guile's foreign function interface.")
(package
(name "guile-sqlite3")
(version "0.1.3")
(home-page "https://notabug.org/guile-sqlite3/guile-sqlite3.git")
(home-page "https://codeberg.org/guile-sqlite3/guile-sqlite3.git")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -966,13 +966,13 @@ manipulate repositories of the Git version control system.")
;; in the same method.
(method url-fetch)
(uri
(string-append "https://notabug.org/guile-zlib/guile-zlib/archive/v"
(string-append "https://codeberg.org/guile-compression/guile-zlib/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
;; content nar-sha256: 0rwjlqr1hl2vczs16xsihw8pyj6s70p1yv9ky0sawhm6g30639k9
(base32
"1h9q7rw8bh5mwa8qjik0pqwcr8v9hnk7xnvwcbsg6yfa695wlv3g"))))
"04p9lb3bq5y0k358s8agpksx9x68vzx330cb8jkn4qp3qj7cmnx2"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake pkg-config guile-3.0))
(inputs (list guile-3.0 zlib))
@@ -981,7 +981,7 @@ manipulate repositories of the Git version control system.")
"This package provides Guile bindings for zlib, a lossless
data-compression library. The bindings are written in pure Scheme by using
Guile's foreign function interface.")
(home-page "https://notabug.org/guile-zlib/guile-zlib")
(home-page "https://codeberg.org/guile-compression/guile-zlib")
(license license:gpl3+)))
(define-public guile2.2-zlib
@@ -991,7 +991,7 @@ Guile's foreign function interface.")
(package
(name "guile-lzlib")
(version "0.3.0")
(home-page "https://notabug.org/guile-lzlib/guile-lzlib")
(home-page "https://codeberg.org/guile-compression/guile-lzlib")
(source
(origin
;; Note: Until "builtin:git-download" can be taken for granted, this
@@ -1027,7 +1027,7 @@ pure Scheme by using Guile's foreign function interface.")
(package
(name "guile-zstd")
(version "0.1.1")
(home-page "https://notabug.org/guile-zstd/guile-zstd")
(home-page "https://codeberg.org/guile-compression/guile-zstd")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page)

View File

@@ -638,7 +638,7 @@ RGB animations.")
(define-public ddcutil
(package
(name "ddcutil")
(version "2.1.4")
(version "2.2.5")
(source
(origin
(method git-fetch)
@@ -647,7 +647,7 @@ RGB animations.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0wk82cdg7vddk6pbnn6qq3p71j4bppq13is2ck40glig08ax1bg5"))))
(base32 "0mmzfa0g726dmqrmyyysnzxrhdkd93ay4dzzv0kqkvgdcqizh5z8"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool pkg-config))
@@ -689,7 +689,7 @@ read/write access to i2c devices to users in the @samp{i2c} group.")
(define-public ddcui
(package
(name "ddcui")
(version "0.5.4")
(version "0.6.0")
(source
(origin
(method git-fetch)
@@ -698,7 +698,7 @@ read/write access to i2c devices to users in the @samp{i2c} group.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hq19gdy9ybraclkqvv1nlf46irql5b6wrc1y6wi0ihkqly20vgz"))))
(base32 "13gqgswkkqbn1x97ayiwj4ds2rbdnw564c2rhpi89zymhc1azj19"))))
(build-system qt-build-system)
(arguments
(list #:tests? #f)) ; No test suite
@@ -1813,7 +1813,7 @@ package also includes @code{usbrelayd}.")))
(define-public guile-usbrelay
(package
(name "guile-usbrelay")
(version "0.1.0")
(version "0.1.1")
(home-page "https://codeberg.org/pisemsky/guile-usbrelay")
(source
(origin
@@ -1823,7 +1823,7 @@ package also includes @code{usbrelayd}.")))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ndgkazv9bnyj45pccym11245c65hlvsvzmx0acpzlywz7xxyy72"))))
(base32 "1nghzsash3z398p2bp2vw0a1rzaclq9a6iqxbm7ffyzbldcca81l"))))
(build-system guile-build-system)
(arguments
(list
@@ -1831,9 +1831,19 @@ package also includes @code{usbrelayd}.")))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'compile-ffi
(lambda* (#:key inputs #:allow-other-keys)
(lambda _
(setenv "GUILE_AUTO_COMPILE" "0")
(invoke "guile" "make.scm"))))))
(invoke "guild" "compile-ffi" "--no-exec"
"modules/usbrelay/ffi/hidapi.ffi")))
(add-after 'build 'install-udev-rules
(lambda _
(let ((rules (string-append #$output "/lib/udev/rules.d")))
(mkdir-p rules)
(call-with-output-file (string-append rules "/50-usbrelay.rules")
(lambda (port)
(display (string-append
"ATTRS{idVendor}==\"16c0\", ATTRS{idProduct}==\"05df\", "
"MODE=\"0660\", GROUP=\"usbrelay\"\n") port)))))))))
(native-inputs (list gcc guile-3.0 nyacc pkg-config))
(inputs (list hidapi))
(propagated-inputs (list nyacc))

View File

@@ -63,6 +63,49 @@ as approved and published by the @acronym{VHDL, Very High Speed Hardware
Description Language} Analysis and Standardization Group.")
(license license:asl2.0)))
(define-public json-for-vhdl
;; No tagged releases.
(let ((commit "0dc9e317440263cd4941f157f5e5668baa858ec2")
(revision "0"))
(package
(name "json-for-vhdl")
(version (git-version "20220905" revision commit)) ;last revision
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Paebbels/JSON-for-VHDL/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1062g2c3dpsb67zhqrn1j04p7jl28g4mcxd6nhrqqfffjsvxkpw9"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("src" "share/json-for-vhdl/work/src"
#:include ("vhdl")))
#:phases
#~(modify-phases %standard-phases
;; The examples/Encodings_VUnit test requires vhdl builtins.
(add-after 'unpack 'fix-check
(lambda _
(substitute* "tests/VUnit/run.py"
(("from_argv\\(\\)")
"from_argv()\nvu.add_vhdl_builtins()")))))))
(native-search-paths
(list (search-path-specification
(variable "FW_JSON_VHDL")
(separator #f)
(files (list "share/json-for-vhdl")))))
(home-page "https://github.com/Paebbels/JSON-for-VHDL/")
(synopsis "Parse and query JSON data structures in VHDL")
(description
"The JSON-for-VHDL library provides a parser to query JSON data
structures from external files on disk. It provides a context to be
used in the declarative section of design units.")
(license license:asl2.0))))
(define-public neorv32
(package
(name "neorv32")
@@ -130,7 +173,7 @@ chip written in platform-independent VHDL.")
(define-public open-logic
(package
(name "open-logic")
(version "4.4.0")
(version "4.4.1")
(source
(origin
(method git-fetch)
@@ -142,7 +185,7 @@ chip written in platform-independent VHDL.")
(file-name (git-file-name name version))
(sha256
(base32
"01kxrglbq50v73796iq9a1vi68i8k2wykk7gga9847smfznqwjwr"))))
"1zydrmx35s3mi35im4s4lfd9mmzdwdrnxfh9fg4d12v4ai7ijfrk"))))
(outputs
'("out" "olo"))
(properties
@@ -159,6 +202,7 @@ chip written in platform-independent VHDL.")
(setenv "HOME" "/tmp")
(with-directory-excursion "3rdParty/en_cl_fix/sim"
(invoke "python3" "run.py" "--simulator" "nvc"
"-p" (number->string (parallel-job-count))
"--simulator-path"
(dirname (search-input-file inputs "bin/nvc"))))
(with-directory-excursion "sim"
@@ -167,7 +211,8 @@ chip written in platform-independent VHDL.")
;; https://github.com/VUnit/vunit/issues/777
(("compile_builtins=False, ")
""))
(invoke "python3" "run.py" "--nvc" "-v"))))))
(invoke "python3" "run.py" "--nvc" "-v"
"-p" (number->string (parallel-job-count))))))))
#:install-plan
#~'(;; Library work.
("src" "share/open-logic/work/src"

View File

@@ -58,6 +58,7 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python)
#:use-module (gnu packages ruby)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls))
(define-public hexedit
@@ -254,11 +255,11 @@ for specifying patterns in the ImHex Hex Editor.")
(sha256 sha256-hash)))
(define-public imhex
(let* ((version "1.37.4")
(let* ((version "1.38.1")
(imhex-patterns
(make-imhex-patterns
version
(base32 "0m9g93fzmj2rsgaq25y4mmfigjh1xxyh41zjs6lp5ydsl5hhrn6q"))))
(base32 "14c0w3pj3bcrwd6c5b0lbwdxbw003dcmyj5a4d86hab53v6hg91j"))))
(package
(name "imhex")
(version version)
@@ -271,7 +272,7 @@ for specifying patterns in the ImHex Hex Editor.")
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "0l3fpizkz2ykdirbn9alddnnsg75w6kwpp92nvmird13l80z1sdr"))
(base32 "17aj8k2zbj78347rvfdy9gassw7kz9xj5vj30skvs5w4gf4lajln"))
(modules '((guix build utils) (ice-9 ftw) (ice-9 match)))
(snippet
#~(begin
@@ -300,6 +301,7 @@ for specifying patterns in the ImHex Hex Editor.")
"imgui"
;; Needs source to include miniaudio.h
"miniaudio"
"md4c"
"microtar")) ; XXX: unbundle
(delete-file-recursively dir)))
(scandir "."))
@@ -356,7 +358,7 @@ for specifying patterns in the ImHex Hex Editor.")
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda _
(substitute* "main/gui/source/window/linux_window.cpp"
(substitute* "main/gui/source/window/platform/linux.cpp"
(("dbus-send")
#$(file-append dbus "/bin/dbus-send")))
(substitute* "cmake/build_helpers.cmake"
@@ -380,9 +382,12 @@ for specifying patterns in the ImHex Hex Editor.")
curl
edlib
fmt
glfw
;; ImHex supports Wayland on GLFW >= 3.4. More info in:
;; https://github.com/WerWolv/ImHex/issues/1941#issuecomment-2446252019
glfw-3.4
libarchive
libffi
libssh2
llvm-17
lunasvg
plutovg
@@ -390,6 +395,7 @@ for specifying patterns in the ImHex Hex Editor.")
mesa
miniaudio
nativefiledialog-extended
openssl
xz
fontconfig
lz4

View File

@@ -2003,28 +2003,6 @@ bindings for interpreted languages. This package includes the C++,
Python and R interfaces.")
(license license:asl2.0)))
(define-public stiff
(package
(name "stiff")
(version "2.4.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.astromatic.net/download/stiff/stiff-"
version ".tar.gz"))
(sha256
(base32 "14m92dskzw7bwsr64ha4p0mj3ndv13gwcbfic3qxrs3zq5353s7l"))))
(build-system gnu-build-system)
(inputs
(list libtiff zlib libjpeg-turbo))
(home-page "https://www.astromatic.net/software/stiff")
(synopsis "Convert scientific FITS images to TIFF format")
(description
"STIFF is a program that converts scientific @acronym{FITS, Flexible Image
Transport System} images to the more popular TIFF format for illustration
purposes.")
(license license:gpl3+)))
(define-public python-imgviz
(package
(name "python-imgviz")

View File

@@ -348,7 +348,7 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(define-public weechat
(package
(name "weechat")
(version "4.8.1")
(version "4.8.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -357,7 +357,7 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(file-name (git-file-name name version))
(sha256
(base32
"0hlhww2pxkvc19lq62fiafwp5mg08m80ahqj1h096gxg5ql07gc2"))))
"06lmbd27fdj7z7v6m096csswp73354516z64apfyz8lr5kh140wq"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(native-inputs

File diff suppressed because it is too large Load Diff

View File

@@ -1840,17 +1840,19 @@ for xdg-desktop-portal that is using Qt/KF5.")
(arguments
(list #:builder #~(begin
(mkdir #$output))))
;; These inputs are used by plasma-desktop-service-type.
(inputs (list bolt ;for plasma-thunderbolt
fwupd ;for kinfocenter and discover
packagekit)) ;for discover
(propagated-inputs (list appmenu-gtk-module
aurorae
baloo
bluedevil
bolt ;for plasma-thunderbolt
breeze
breeze-gtk
breeze-icons ;default mouse icon
colord
discover
fwupd
kactivitymanagerd
kdeclarative ;required by sddm breeze theme
kde-cli-tools
@@ -1881,7 +1883,6 @@ for xdg-desktop-portal that is using Qt/KF5.")
milou
ocean-sound-theme
oxygen-sounds
packagekit ;for discover
plasma5support ;required by sddm breeze theme
plasma-browser-integration
plasma-desktop
@@ -3108,6 +3109,7 @@ hardware management, and a high degree of customizability.")
kcrash
kdbusaddons
kiconthemes
kirigami
knotifications
kwidgetsaddons
kwindowsystem

View File

@@ -244,17 +244,17 @@
;; It's used for cache validation and therefore can lead to strange bugs.
;; ex: date '+%Y%m%d%H%M%S'
;; or: (format-time-string "%Y%m%d%H%M%S")
(define %librewolf-build-id "20260228165433")
(define %librewolf-build-id "20260310210845")
(define-public librewolf
(package
(name "librewolf")
(version "148.0-1")
(version "148.0.2-2")
(source
(make-librewolf-source
#:version version
#:firefox-hash "0vybaiiknrzk2zvg46w5sxb0i0m9rmy4msvpxklxpdr3182fb4zc"
#:librewolf-hash "02sraza4xy4cp559nlc51m1vwhi52l58i3zz2h95lwymyvc5hv17"
#:firefox-hash "142f4k4ykcm65kbvj60p472103r4k79v9fdsfljdav2rbr6qxjx6"
#:librewolf-hash "1i0m72i2d0800pxprq18jc040zfzvmg25lw7bi7hgbdh4zvadzdw"
#:l10n firefox-l10n))
(build-system gnu-build-system)
(arguments

View File

@@ -185,6 +185,7 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages readline)
#:use-module (gnu packages regex)
#:use-module (gnu packages rocm)
#:use-module (gnu packages rpc)
#:use-module (gnu packages rrdtool)
#:use-module (gnu packages rsync)
@@ -530,32 +531,32 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-6.19-version "6.19.5")
(define-public linux-libre-6.19-version "6.19.6")
(define-public linux-libre-6.19-gnu-revision "gnu")
(define deblob-scripts-6.19
(linux-libre-deblob-scripts
linux-libre-6.19-version
linux-libre-6.19-gnu-revision
(base32 "0zl5352xsv12xkqrfygp5kd8nvjq718pg5iaz64y675abymacp8v")
(base32 "1awsjh9qs5inrwj34kzkrfvvysdaka6dnbilpn1ai66r6dqc2810")))
(base32 "0y9rb4mm1n83h9wa68ivbpqj13va3vv5954j2ywqm7apwpx9ini2")))
(define-public linux-libre-6.19-pristine-source
(let ((version linux-libre-6.19-version)
(hash (base32 "1yig0i2q7vn7p8g4lmkviddxi62mzhp0fv2hx3057qq9qz40bblm")))
(hash (base32 "051fq8mkb7sf3m24a45cacr73fmpljfdn0pgjh0qrxhl6bvkz7sd")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.19)))
(define-public linux-libre-6.18-version "6.18.15")
(define-public linux-libre-6.18-version "6.18.16")
(define-public linux-libre-6.18-gnu-revision "gnu")
(define deblob-scripts-6.18
(linux-libre-deblob-scripts
linux-libre-6.18-version
linux-libre-6.18-gnu-revision
(base32 "1piyq7183bdf169w66k62yr1vbs0ls7pqx3cyyk7hisw8vhy643j")
(base32 "1xdz33lshw1xs6a5qiwhvxzdh2a0acll1zdyk2mnn9d4579a4gn1")))
(base32 "1wnlnds2hgap36a0licjyjzyhhggbgp83dc9xbbw07y8jwmc17ai")))
(define-public linux-libre-6.18-pristine-source
(let ((version linux-libre-6.18-version)
(hash (base32 "0w7iy9mx1b42q4qz6y9rvny7nmvpwq0mf6b9vv84w4y4qcb64wbw")))
(hash (base32 "1qwfsbr315c6qh3hnqmyjwjcj0h8j3w56hbrxnrx3h849lgw08ag")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.18)))
@@ -564,22 +565,22 @@ 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.74")
(define-public linux-libre-6.12-version "6.12.76")
(define-public linux-libre-6.12-gnu-revision "gnu")
(define deblob-scripts-6.12
(linux-libre-deblob-scripts
linux-libre-6.12-version
linux-libre-6.12-gnu-revision
(base32 "168aykyvyyp34549hqhlprl0n052q8wdb2y3vyxqw40wpf2vw3ln")
(base32 "1wyfggr9q0f10yr3nxsvx3nd3wscp5145fgxw0ps0b09ckcyr2mi")))
(base32 "1v6glxf94p9z0yq5m102jwcpyh6anpbp3h8wwff9hxlfy2wdlzzk")))
(define-public linux-libre-6.12-pristine-source
(let ((version linux-libre-6.12-version)
(hash (base32 "0gm1mjn203gc11dqk82fkbsr96bnwcxq4sx5khc7yhwsvjqywmiv")))
(hash (base32 "15nq7agr492b9lh57xp10hs48dx9g7k253y2lm4vvrj69j1kxd5v")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.12)))
(define-public linux-libre-6.6-version "6.6.127")
(define-public linux-libre-6.6-version "6.6.129")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
@@ -589,12 +590,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0z47f6mkllk1fgpq04x73djl5gh3mj50bxj2rpg4jlzm0rcirrag")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
(hash (base32 "1zn9z3ghjyff71s3yabfanrgyks3wnmn1p5w6301rczhnjbrrkd7")))
(hash (base32 "12j42awg44w97zq8fzifpm300jm9q9ya7qkpn7xbnkr2480qz86a")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
(define-public linux-libre-6.1-version "6.1.164")
(define-public linux-libre-6.1-version "6.1.166")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@@ -604,12 +605,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1jiwwl5sgpc16x0v6phbknv94mc46gvwgc2z8s4pdgn4j54yrd8v")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "074xlcrx5lvbkbwgahfvjlvak0j1nig9azfxfdl64zxzgdzhigrk")))
(hash (base32 "0jcl12gjlfdf9pwqg1m84rzwnrj3grxxgk5blrq8zlaq45sgr3c1")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.201")
(define-public linux-libre-5.15-version "5.15.202")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@@ -619,12 +620,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 "15hv8rqgr6ca9rnbpb6hvzskqvb4h8x3w6nl4y2npbfsxpxzyajg")))
(hash (base32 "1m6d53qx1ah4jwpa8hwjdmq0jn2hf7xmz1li6rwpdqjp97vvvh8b")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.251")
(define-public linux-libre-5.10-version "5.10.252")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@@ -634,7 +635,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 "00ac9gzidby7b82s2prq4c3w99a077f5li4v4yq8gdg3zqjpd1g6")))
(hash (base32 "1yqa4zmvi5ihf50kxcff06abfi6xw0b9ajzagvy6gdzfr7igpcrl")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@@ -931,6 +932,16 @@ ARCH and optionally VARIANT, or #f if there is no such configuration."
("CONFIG_FUSE_FS" . m)
("CONFIG_CIFS" . m)
("CONFIG_9P_FS" . m)
;; Enable DMABUF used by wayland, pipewire and libcamera
;; https://codeberg.org/guix/guix/issues/5995
("CONFIG_UDMABUF" . #t)
("CONFIG_DMABUF_MOVE_NOTIFY" . #t)
("CONFIG_DMABUF_HEAPS" . #t)
("CONFIG_DMABUF_HEAPS_SYSTEM" . #t)
("CONFIG_DMABUF_HEAPS_CMA" . #t)
,@(if (version>=? version "6.17")
'(("CONFIG_DMABUF_HEAPS_CMA_LEGACY" . #t))
'())
;; Disable the EFI pstore storage backend to avoid causing
;; unrecoverable failures on some EFI systems:
;; https://lists.gnu.org/archive/html/help-guix/2025-01/msg00173.html
@@ -1473,6 +1484,48 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
("CONFIG_VHOST_VDPA" . m))
(default-extra-linux-options linux-libre-lts-version))))
(define-public reform-debian-packages-for-6.19
(package
(name "reform-debian-packages")
(version "2023-07-10-537-g032a28b") ;from git describe
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://source.mnt.re/reform/reform-debian-packages.git")
(commit "032a28b6c8b48077523ea1631cde65b763ab3c43")))
(file-name (git-file-name name version))
(sha256
(base32 "084xnykhnhpbb0kd5wr4nml08g4gjy7jqzrdb9i0chbfx12fnnyr"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("linux/patches6.19/" "/patches6.19")
("linux/" "/dts/amlogic"
#:include-regexp ("meson.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("imx8.*\\.dts$"))
("linux/" "/dts/freescale"
#:include-regexp ("fsl.*\\.dts$"))
("linux/" "/dts/rockchip"
#:include-regexp ("rk3588.*\\.dts$"))
("linux/config" "config"))))
(home-page "https://source.mnt.re/reform/reform-debian-packages")
(synopsis
"Linux kernel patches and device-trees used for MNT Reform systems")
(description
"Linux kernel patches and device-trees used for the MNT Reform systems")
(license (list
(license:fsf-free "file://filter-output"
"https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html")
license:bsd-2
license:expat
license:gpl2
license:gpl2+
license:gpl3
license:x11))))
(define-public reform-debian-packages-for-6.18
(package
(name "reform-debian-packages")
@@ -1557,6 +1610,321 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
license:gpl3
license:x11))))
(define-public linux-libre-arm64-mnt-reform-6.19
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
(let ((base (make-linux-libre* linux-libre-6.19-version
linux-libre-6.19-gnu-revision
linux-libre-6.19-source
'("aarch64-linux")
#:extra-version "arm64-mnt-reform"
#:extra-options
;; https://source.mnt.re/reform/reform-debian-packages/-/blob/main/linux/config
(append `(("CONFIG_DRM_LVDS_CODEC" . m)
("CONFIG_DRM_CDNS_MHDP8546" . m)
("CONFIG_DRM_CDNS_HDMI_CEC" . m)
("CONFIG_DRM_IMX_CDNS_MHDP" . m)
("CONFIG_DRM_IMX_DCSS" . m)
("CONFIG_PHY_FSL_IMX8MQ_HDPTX" . m)
("CONFIG_DRM_PANEL_LVDS" . m)
("CONFIG_I2C_IMX_LPI2C" . m)
("CONFIG_I2C_MUX_REG" . m)
("CONFIG_INTERCONNECT_IMX" . #true)
("CONFIG_INTERCONNECT_IMX8MQ" . #true)
("CONFIG_MFD_WM8994" . m)
("CONFIG_MUX_GPIO" . m)
("CONFIG_MUX_MMIO" . m)
("CONFIG_RTC_DRV_PCF8523" . m)
("CONFIG_USB_EHCI_FSL" . m)
("CONFIG_NO_HZ_IDLE" . #true)
("CONFIG_SND_SOC_FSL_MICFIL" . m)
("CONFIG_SND_IMX_SOC" . m)
("CONFIG_SND_SOC_FSL_ASOC_CARD" . m)
("CONFIG_SND_SOC_IMX_AUDMIX" . m)
("CONFIG_SND_SOC_IMX_HDMI" . m)
("CONFIG_INPUT_JOYSTICK" . #true)
("CONFIG_JOYSTICK_XPAD" . m)
("CONFIG_JOYSTICK_XPAD_FF" . #true)
("CONFIG_JOYSTICK_XPAD_LEDS" . #true)
("CONFIG_INTERCONNECT_IMX8MP" . #true)
("CONFIG_SND_SOC_FSL_ASRC" . #true)
("CONFIG_DRM_IMX_LCDIF" . #true)
("CONFIG_DRM_IMX8MP_DW_HDMI_BRIDGE" . #true)
("CONFIG_DRM_IMX8MP_HDMI_PVI" . #true)
("CONFIG_IMX8MM_THERMAL" . #true)
("CONFIG_IMX2_WDT" . #true)
("CONFIG_DRM_SAMSUNG_DSIM" . #true)
("CONFIG_PHY_FSL_SAMSUNG_HDMI_PHY" . #true)
("CONFIG_DRM" . #true)
("CONFIG_DRM_PANEL_MNT_POCKET_REFORM" . #true)
("CONFIG_IMX8M_BLK_CTRL" . #true)
("CONFIG_IMX_GPCV2_PM_DOMAINS" . #true)
("CONFIG_DRM_DISPLAY_CONNECTOR" . #true)
("CONFIG_DRM_FSL_LDB" . #true)
("CONFIG_BACKLIGHT_CLASS_DEVICE" . #true)
("CONFIG_BACKLIGHT_PWM" . #true)
("CONFIG_BACKLIGHT_GPIO" . #true)
("CONFIG_BACKLIGHT_LED" . #true)
("CONFIG_CPU_FREQ_GOV_PERFORMANCE" . #true)
("CONFIG_CPU_FREQ_GOV_POWERSAVE" . #true)
("CONFIG_CPU_FREQ_GOV_USERSPACE" . #true)
("CONFIG_CPU_FREQ_GOV_ONDEMAND" . #true)
("CONFIG_CPU_FREQ_GOV_CONSERVATIVE" . #true)
("CONFIG_CPU_FREQ_GOV_SCHEDUTIL" . #true)
("CONFIG_ARM_IMX_CPUFREQ_DT" . #true)
("CONFIG_ARM_IMX_BUS_DEVFREQ" . #true)
("CONFIG_IMX_IRQSTEER" . #true)
("CONFIG_PCI_MESON" . #true)
("CONFIG_DWMAC_MESON" . #true)
("CONFIG_MDIO_BUS_MUX_MESON_G12A" . #true)
("CONFIG_GPIO_ROCKCHIP" . #true)
("CONFIG_PL330_DMA" . #true)
("CONFIG_I2C_MESON" . #true)
("CONFIG_PWM_MESON" . #true)
("CONFIG_USB_DWC3_MESON_G12A" . #true)
("CONFIG_MMC_MESON_GX" . #true)
("CONFIG_MMC_MESON_MX_SDIO" . #true)
("CONFIG_MESON_DDR_PMU" . #true)
("CONFIG_RTW88_8822CS" . m)
("CONFIG_PWM_FSL_FTM" . #true)
("CONFIG_FSL_RCPM" . #true)
("CONFIG_ARM_ROCKCHIP_CPUFREQ" . m)
("CONFIG_DRM_PANTHOR" . m)
("CONFIG_NVMEM_ROCKCHIP_OTP" . #true)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_HDPTX" . m)
("CONFIG_PHY_ROCKCHIP_USBDP" . m)
("CONFIG_ROCKCHIP_REGULATOR_COUPLER" . #true)
("CONFIG_SPI_ROCKCHIP" . #true)
("CONFIG_SPI_ROCKCHIP_SFC" . m)
("CONFIG_ARM_SCMI_CPUFREQ" . m)
("CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY" . #true)
("CONFIG_VIDEO_ROCKCHIP_VDEC2" . m)
("CONFIG_ROCKCHIP_DW_HDMI_QP" . #true)
("CONFIG_ROCKCHIP_DW_MIPI_DSI2" . #true)
;; Fixes https://codeberg.org/guix/guix/issues/101
("CONFIG_CRYPTO_USER_API_HASH" . #true)
("CONFIG_CRYPTO_USER_API_SKCIPHER" . #true)
("CONFIG_CRYPTO_USER_API_RNG" . #true)
("CONFIG_CRYPTO_USER_API_AEAD" . #true)
("CONFIG_KEY_DH_OPERATIONS" . #true)
;; nftables support
("CONFIG_NF_TABLES" . m)
("CONFIG_NF_TABLES_INET" . #true)
("CONFIG_NF_TABLES_NETDEV" . #true)
("CONFIG_NF_TABLES_IPV4" . #true)
("CONFIG_NF_TABLES_ARP" . #true)
("CONFIG_NF_TABLES_IPV6" . #true)
("CONFIG_NF_TABLES_BRIDGE" . m)
("CONFIG_NFT_NUMGEN" . m)
("CONFIG_NFT_CT" . m)
("CONFIG_NFT_FLOW_OFFLOAD" . m)
("CONFIG_NFT_CONNLIMIT" . m)
("CONFIG_NFT_LOG" . m)
("CONFIG_NFT_LIMIT" . m)
("CONFIG_NFT_MASQ" . m)
("CONFIG_NFT_REDIR" . m)
("CONFIG_NFT_NAT" . m)
("CONFIG_NFT_TUNNEL" . m)
("CONFIG_NFT_QUEUE" . m)
("CONFIG_NFT_QUOTA" . m)
("CONFIG_NFT_REJECT" . m)
("CONFIG_NFT_REJECT_INET" . m)
("CONFIG_NFT_COMPAT" . m)
("CONFIG_NFT_HASH" . m)
("CONFIG_NFT_FIB" . m)
("CONFIG_NFT_FIB_INET" . m)
("CONFIG_NFT_XFRM" . m)
("CONFIG_NFT_SOCKET" . m)
("CONFIG_NFT_OSF" . m)
("CONFIG_NFT_TPROXY" . m)
("CONFIG_NFT_SYNPROXY" . m)
("CONFIG_NFT_DUP_NETDEV" . m)
("CONFIG_NFT_FWD_NETDEV" . m)
("CONFIG_NFT_FIB_NETDEV" . m)
("CONFIG_NFT_REJECT_NETDEV" . m)
("CONFIG_NFT_REJECT_IPV4" . m)
("CONFIG_NFT_DUP_IPV4" . m)
("CONFIG_NFT_FIB_IPV4" . m)
("CONFIG_NFT_COMPAT_ARP" . m)
("CONFIG_NFT_REJECT_IPV6" . m)
("CONFIG_NFT_DUP_IPV6" . m)
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
("CONFIG_USB_WDM" . m)
("CONFIG_USB_GADGET" . m)
("CONFIG_USB_ETH" . m)
("CONFIG_USB_ETH_RNDIS" . m)
("CONFIG_USB_ETH_EEM" . m)
("CONFIG_USB_G_NCM" . m)
;; Provide support for wireguard
("CONFIG_WIREGUARD" . m)
;; Provide support for ath9k wireless
("CONFIG_ATH9K" . m)
("CONFIG_ATH9K_HTC" . m))
(default-extra-linux-options
linux-libre-6.19-version)))))
(package
(inherit base)
(inputs (list reform-debian-packages-for-6.19))
(synopsis (string-append (package-synopsis base)
" for MNT/Reform systems"))
(description (string-append (package-description base)
" Configuration options and patches have been applied for use with MNT/Reform systems."))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'apply-reform-patches
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (patch)
(invoke "patch" "-p1" "-i"
(search-input-file inputs
(string-append
"patches6.19/" patch))))
(list
"imx8mp-mnt-pocket-reform/2ghz/0001-imx8mp-2ghz-clk.patch"
"imx8mp-mnt-pocket-reform/2ghz/0002-imx8mp-2ghz-opp.patch"
"imx8mp-mnt-pocket-reform/audio/0000-revert-crashy-audiomix-pm-support.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0001-sdhci-add-no-sd-uhs-sdr104-devicetree-property.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0002-During-the-card-init-the-host-side-sometimes-may-nee.patch"
"imx8mp-mnt-pocket-reform/mmc-sdio/0003-USDHC-IP-has-one-limitation-the-tuning-circuit-can-t.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0001-v5-add-multi-display-panel-driver.patch"
"imx8mp-mnt-pocket-reform/pocket-panel/0002-pocket-panel-fix-sleep-add-orientation.patch"
"imx8mp-mnt-reform2/0001-sn65dsi86-use-hs-clock-of-samsung-dsim-host-directly.patch"
"imx8mp-mnt-reform2/0002-lcdif-dont-exceed-desired-pixel-clock.patch"
"imx8mq-mnt-reform2/0001-imx8mq-mnt-reform2.dts-multiple-fixes-for-display-wi.patch"
"imx8mq-mnt-reform2/0001-nwl-dsi-fixup-mode-only-for-LCDIF-input-not-DCSS.patch"
"imx8mq-mnt-reform2/0002-Revert-drm-bridge-nwl-dsi-Use-vsync-hsync-polarity-f.patch"
"imx8mq-mnt-reform2/0003-lcdif-fix-pcie-interference.patch"
"imx8mq-mnt-reform2/0004-mnt4002-imx-gpcv2-wake-smccc.patch.patch"
"imx8mq-mnt-reform2/0005-pci-imx6-add-support-for-internal-refclk-imx8mq.patch"
"imx8mq-mnt-reform2/0006-imx8mq-import-HDMI-driver-and-make-DCSS-compatible-w.patch"
"ls1028a-mnt-reform2/0000-dtsi-add-hdptx.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0001-a311d-viu-fifo-lines-config.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0002-a311d-viu-fifo-lines-config-header.patch"
"meson-g12b-bananapi-cm4-mnt-pocket-reform/0003-tlv320aic31xx-add-1228800hz-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-Revert-drm-bridge-synopsys-dw-mipi-dsi-enable-EoTp-b.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0001-meson-g12b-bananapi-cm4-mnt-reform2.dts-fix-audio-an.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0011-dw-mipi-dsi-phy-stop-wait-time.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0012-innolux-n125hce-gn1-timing-tweaks.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0013-meson-viu-hold-fifo-lines.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0014-meson-venc-sync.patch.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0015-meson-dw-mipi-dsi-sync-invert.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0016-sn65dsi86-burst-mode-support.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0018-sn65dsi86-never-turn-off.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0020-LOCAL-ALSA-Assign-internal-PCM-chmap-ELD-IEC958-kctl.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0021-HACK-of-partial-revert-of-fdt.c-changes.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0022-add-bt-and-eth-resets.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0023-sdio-pullups.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0024-sdio-improve-wifi-speed.patch"
"meson-g12b-bananapi-cm4-mnt-reform2/0030-WORKAROUND-meson-plane-disable-afbc-32x8.patch"
"rk3588-mnt-reform2/0001-FROM-UPSTREAM-drm-bridge-dw-hdmi-qp-Add-support-for-.patch"
"rk3588-mnt-reform2/0024-math.h-add-DIV_ROUND_UP_NO_OVERFLOW.patch"
"rk3588-mnt-reform2/0025-clk-divider-Fix-divisor-masking-on-64-bit-platforms.patch"
"rk3588-mnt-reform2/0026-clk-composite-replace-open-coded-abs_diff.patch"
"rk3588-mnt-reform2/0029-Revert-PCI-dw-rockchip-Simplify-regulator-setup-with.patch"
"rk3588-mnt-reform2/0030-mfd-rk8xx-Fix-shutdown-handler.patch"
"rk3588-mnt-reform2/0031-dt-bindings-display-vop2-Add-VP-clock-resets.patch"
"rk3588-mnt-reform2/0032-drm-rockchip-vop2-Add-clock-resets-support.patch"
"rk3588-mnt-reform2/0033-arm64-dts-rockchip-Add-VOP-clock-resets-for-rk3588s.patch"
"rk3588-mnt-reform2/0035-drm-rockchip-vop2-Add-core-reset-support.patch"
"rk3588-mnt-reform2/0062-PCI-dw-rockchip-Move-devm_phy_get-out-of-phy_init.patch"
"rk3588-mnt-reform2/0063-PCI-dw-rockchip-Add-helper-function-for-enhanced-LTS.patch"
"rk3588-mnt-reform2/0064-PCI-dw-rockchip-Add-helper-function-for-controller-m.patch"
"rk3588-mnt-reform2/0065-PCI-dw-rockchip-Add-helper-function-for-DDL-indicato.patch"
"rk3588-mnt-reform2/0066-PCI-dw-rockchip-Add-pme_turn_off-support.patch"
"rk3588-mnt-reform2/0067-PCI-dw-rockchip-Add-system-PM-support.patch"
"rk3588-mnt-reform2/0074-MERGED-phy-hdmi-Add-HDMI-2.1-FRL-configuration-optio.patch"
"rk3588-mnt-reform2/0075-PCI-host-common-Add-an-API-to-check-for-any-device-u.patch"
"rk3588-mnt-reform2/0076-PCI-qcom-Check-for-the-presence-of-a-device-instead-.patch"
"rk3588-mnt-reform2/0077-PCI-dwc-Check-for-the-device-presence-during-suspend.patch"
"rk3588-mnt-reform2/0078-PCI-dw-rockchip-Fix-LTSSM-set-functions.patch"
"rk3588-mnt-reform2/0079-MERGED-phy-rockchip-samsung-hdptx-Use-usleep_range-i.patch"
"rk3588-mnt-reform2/0079-WIP-PCI-dw-rockchip-port-some-suspend-code-from-vend.patch"
"rk3588-mnt-reform2/0080-MERGED-phy-rockchip-samsung-hdptx-Fix-coding-style-a.patch"
"rk3588-mnt-reform2/0081-MERGED-phy-rockchip-samsung-hdptx-Consistently-use-r.patch"
"rk3588-mnt-reform2/0082-MERGED-phy-rockchip-samsung-hdptx-Enable-lane-output.patch"
"rk3588-mnt-reform2/0083-MERGED-phy-rockchip-samsung-hdptx-Cleanup-_cmn_init_.patch"
"rk3588-mnt-reform2/0084-MERGED-phy-rockchip-samsung-hdptx-Compute-clk-rate-f.patch"
"rk3588-mnt-reform2/0085-MERGED-phy-rockchip-samsung-hdptx-Drop-hw_rate-drive.patch"
"rk3588-mnt-reform2/0086-MERGED-phy-rockchip-samsung-hdptx-Switch-to-driver-s.patch"
"rk3588-mnt-reform2/0087-MERGED-phy-rockchip-samsung-hdptx-Extend-rk_hdptx_ph.patch"
"rk3588-mnt-reform2/0088-MERGED-phy-rockchip-samsung-hdptx-Add-HDMI-2.1-FRL-s.patch"
"rk3588-mnt-reform2/0089-DEBUG-phy-rockchip-samsung-hdptx-Add-verbose-logging.patch"
"rk3588-mnt-reform2/0092-drm-rockchip-dw_hdmi_qp-Do-not-send-HPD-events-for-a.patch"
"rk3588-mnt-reform2/0093-drm-Add-CRTC-background-color-property.patch"
"rk3588-mnt-reform2/0094-drm-rockchip-vop2-Support-setting-custom-background-.patch"
"rk3588-mnt-reform2/0095-drm-bridge-Add-detect_ctx-hook-and-drm_bridge_detect.patch"
"rk3588-mnt-reform2/0096-drm-bridge-connector-Switch-to-using-detect_ctx-hook.patch"
"rk3588-mnt-reform2/0097-drm-bridge-dw-hdmi-qp-Add-high-TMDS-clock-ratio-and-.patch"
"rk3588-mnt-reform2/0098-WIP-YUV420-drm-rockchip-vop2-Add-YUV420-output-forma.patch"
"rk3588-mnt-reform2/0099-WIP-YUV420-drm-rockchip-dw_hdmi_qp-Add-YUV420-output.patch"
"rk3588-mnt-reform2/0103-WIP-FRL-arm64-dts-rockchip-Assign-ACLK_VOP-to-750-MH.patch"
"rk3588-mnt-reform2/0104-WIP-FRL-drm-connector-hdmi-Handle-FRL-in-hdmi_clock_.patch"
"rk3588-mnt-reform2/0105-WIP-FRL-drm-bridge-dw-hdmi-qp-Add-HDMI-2.1-FRL-suppo.patch"
"rk3588-mnt-reform2/0106-WIP-FRL-drm-rockchip-dw_hdmi_qp-Add-HDMI-2.1-FRL-sup.patch"
"rk3588-mnt-reform2/0107-WIP-FRL-drm-rockchip-vop2-Add-HDMI-2.1-FRL-support.patch"
"rk3588-mnt-reform2/0108-dt-bindings-phy-rockchip-usbdp-add-improved-ports-sc.patch"
"rk3588-mnt-reform2/2001-drm-bridge-dw-hdmi-qp-Return-0-in-audio-prepare-when.patch"
"rk3588-mnt-reform2/2003-drm-bridge-synopsys-Do-not-warn-about-audio-params-c.patch"
"rk3588-mnt-reform2/5200-drm-rockchip-Set-dma-mask-to-64-bit.patch"))))
(add-after 'apply-reform-patches 'copy-reform-dts-files
(lambda* (#:key inputs #:allow-other-keys)
(for-each (lambda (dts)
(copy-file (search-input-file inputs
(string-append
"/dts/" dts))
(string-append "arch/arm64/boot/dts/"
dts)))
(list
"amlogic/meson-g12b-bananapi-cm4-mnt-pocket-reform.dts"
"freescale/fsl-ls1028a-mnt-reform2.dts"
"freescale/imx8mp-mnt-pocket-reform.dts"
"freescale/imx8mp-mnt-reform2.dts"
"freescale/imx8mq-mnt-reform2-hdmi.dts"
"rockchip/rk3588-mnt-desktop-reform.dts"
"rockchip/rk3588-mnt-pocket-reform.dts"
"rockchip/rk3588-mnt-reform-next.dts"
"rockchip/rk3588-mnt-reform2.dts"
"rockchip/rk3588-mnt-reform2-dsi.dts"
))))
(add-after 'apply-reform-patches 'adjust-makefiles-with-new-dtb
(lambda _
(substitute* "arch/arm64/boot/dts/amlogic/Makefile"
(("meson-g12b-bananapi-cm4-mnt-reform2.dtb")
"meson-g12b-bananapi-cm4-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MESON) += meson-g12b-bananapi-cm4-mnt-pocket-reform.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("fsl-ls1028a-rdb.dtb")
"fsl-ls1028a-rdb.dtb
dtb-$(CONFIG_ARCH_LAYERSCAPE) += fsl-ls1028a-mnt-reform2.dtb"))
(substitute* "arch/arm64/boot/dts/freescale/Makefile"
(("imx8mq-mnt-reform2.dtb")
"imx8mq-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mp-mnt-pocket-reform.dtb
dtb-$(CONFIG_ARCH_MXC) += imx8mq-mnt-reform2-hdmi.dtb"))
(substitute* "arch/arm64/boot/dts/rockchip/Makefile"
(("rk3588-mnt-reform2.dtb")
"rk3588-mnt-reform2.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-desktop-reform.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform2-dsi.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-reform-next.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
(define-public linux-libre-arm64-mnt-reform-6.18
;; Kernel for use on the MNT/Reform systems
;; https://mntre.com/reform.html
@@ -1698,6 +2066,15 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
@@ -2024,6 +2401,15 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3588-mnt-pocket-reform.dtb")))))))))))
("CONFIG_NFT_FIB_IPV6" . m)
("CONFIG_NFT_BRIDGE_META" . m)
("CONFIG_NFT_BRIDGE_REJECT" . m)
;; Provides support for FBCON options
("CONFIG_FRAMEBUFFER_CONSOLE_ROTATION" . #true)
("CONFIG_HIDRAW" . #true)
("CONFIG_FONT_SUPPORT" . #true)
("CONFIG_FONTS" . #true)
("CONFIG_FONT_8x8" . #true)
("CONFIG_FONT_8x16" . #true)
("CONFIG_FONT_TER10x18" . #true)
("CONFIG_FONT_TER16x32" . #true)
;; Provide support for USB tethering
("CONFIG_USB_NET_CDC_EEM" . m)
("CONFIG_USB_NET_RNDIS_HOST" . m)
@@ -10126,17 +10512,22 @@ known as Slingshot.")
(cons package extra)
'()))))
(append (list rdma-core libnl)
(if-supported rocr-runtime)
(if-supported psm)
(if-supported psm2)
(if-supported libcxi curl json-c))))
(arguments
(list #:configure-flags
#~(append (if #$(target-64bit?)
(list "--enable-efa")
'())
(list "--enable-efa")
'())
(list #$@(if (this-package-input "libcxi")
#~("--enable-cxi")
#~())
#$@(if (this-package-input "rocr-runtime")
#~((string-append "--with-rocr="
#$(this-package-input "rocr-runtime")))
#~())
"--enable-verbs"))
#:phases
#~(modify-phases %standard-phases

View File

@@ -197,7 +197,7 @@ read/write Bit Map Font (BMF) into text, JSON and XML.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/3b-bmfont/")
(url "https://codeberg.org/shinmera/3b-bmfont/")
(commit commit)))
(file-name (git-file-name "3b-bmfont2" version))
(sha256
@@ -304,7 +304,7 @@ vectors and streams.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/3d-math")
(url "https://codeberg.org/shinmera/3d-math")
(commit commit)))
(file-name (git-file-name "cl-3d-math" version))
(sha256
@@ -315,7 +315,7 @@ vectors and streams.")
(inputs
(list sbcl-documentation-utils
sbcl-type-templates))
(home-page "https://shinmera.github.io/3d-math/")
(home-page "https://shinmera.com/docs/3d-math/")
(synopsis "Linear algebra for 2D and 3D computations")
(description
"The @code{3d-math} library implements types, operators, and algorithms
@@ -328,9 +328,6 @@ compatible, and adds new functionality.")
(define-public cl-3d-math
(sbcl-package->cl-source-package sbcl-3d-math))
(define-public ecl-3d-math
(sbcl-package->ecl-package sbcl-3d-math))
(define-public sbcl-3d-matrices
(let ((commit "bc1ffa08dcf4732523e09adcf9deba4ddeb559ff")
(revision "3"))
@@ -514,7 +511,7 @@ alternative 4x4 matrix representation.")
(list sbcl-parachute))
(inputs
(list sbcl-documentation-utils))
(home-page "https://shinmera.github.io/3d-vectors/")
(home-page "https://shinmera.com/docs/3d-vectors/")
(synopsis "Utility library implementing 2D, 3D, and 4D vectors")
(description
"@code{3D-VECTORS} is a library for vector math in 3D space. It contains
@@ -4394,8 +4391,8 @@ Lisp expressions in multiple implementations.")
(sbcl-package->cl-source-package sbcl-cl-all))
(define-public sbcl-cl-ana
(let ((commit "848185eed1ed65bab3a124870c122f761ce0d87e")
(revision "2"))
(let ((commit "88abde5ad3fa327958720426b89a8457e6943b94")
(revision "3"))
(package
(name "sbcl-cl-ana")
(version (git-version "0.0.0" revision commit))
@@ -4406,8 +4403,9 @@ Lisp expressions in multiple implementations.")
(url "https://github.com/ghollisjr/cl-ana")
(commit commit)))
(file-name (git-file-name "cl-ana" version))
(patches (search-patches "cl-ana-pr-49.patch"))
(sha256
(base32 "026agqsxq3pg2k9jmy2wysil2z0yn5rykzzhr8rqxsspdwz51z1y"))))
(base32 "1dg8wkc2bv66lykr2fjgn91jw7aa9xnpk20h0g8pp2xr6981gfl9"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list openmpi ;; for hdf-cffi
@@ -9453,9 +9451,6 @@ classes and cyclic data structures are supported.")
(define-public cl-prevalence
(sbcl-package->cl-source-package sbcl-cl-prevalence))
(define-public ecl-cl-prevalence
(sbcl-package->ecl-package sbcl-cl-prevalence))
(define-public sbcl-cl-progress-bar
(let ((commit "9374170858663c8fe829e9fb5a29bd2cb48d95ae"))
(package
@@ -12157,7 +12152,7 @@ options, e.g., by looking up an external key/value store
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/shinmera/clip")
(url "https://codeberg.org/shinmera/clip")
(commit commit)))
(file-name (git-file-name "clip" version))
(sha256
@@ -12165,7 +12160,7 @@ options, e.g., by looking up an external key/value store
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-array-utils sbcl-lquery))
(home-page "https://shinmera.github.io/clip/")
(home-page "https://shinmera.com/docs/clip/")
(synopsis "Common Lisp HTML templating engine")
(description
"Clip is an attempt at a templating library that allows you to write
@@ -14734,8 +14729,8 @@ replacement, which is called @code{*let}).")
(sbcl-package->clasp-package sbcl-defstar))
(define-public sbcl-deploy
(let ((commit "5d57fcce38b6156be951f3fed9fbbdacf4ba2912")
(revision "3"))
(let ((commit "c9b869d943d39fcddd8c4aa380995645bd2e3c0b")
(revision "4"))
(package
(name "sbcl-deploy")
(version (git-version "3.0.0" revision commit))
@@ -14747,13 +14742,17 @@ replacement, which is called @code{*let}).")
(commit commit)))
(file-name (git-file-name "deploy" version))
(sha256
(base32 "1f2sahr2k4d291hn7x7bcy4nxav4va3rrw2gcw122zsg97siqy8h"))))
(base32 "05xvv6f1nh7p1dmdyqbpddisf2f9v5kvq2ixa38i263p35rg82sr"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-cl-mpg123 sbcl-cl-out123))
(list sbcl-cl-mpg123
sbcl-cl-out123))
(inputs
(list sbcl-cffi sbcl-documentation-utils sbcl-pathname-utils
sbcl-trivial-features sbcl-sha3))
(list sbcl-cffi
sbcl-documentation-utils
sbcl-pathname-utils
sbcl-trivial-features
sbcl-sha3))
(home-page "https://codeberg.org/shinmera/deploy")
(synopsis "Deployment tools for standalone Common Lisp application")
(description
@@ -14804,7 +14803,7 @@ that have several attributes, and a central data payload. Most notably this
includes the OS filesystem, but can also be used to address other
filesystem-like things like archives, object stores, etc. in the same
manner.")
(home-page "https://codeberg.org/Shinmera/depot")
(home-page "https://shinmera.com/docs/depot/")
(license license:zlib))))
(define-public cl-depot
@@ -16663,7 +16662,7 @@ parser/composer.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/feeder")
(url "https://codeberg.org/shinmera/feeder")
(commit commit)))
(file-name (git-file-name "feeder" version))
(sha256
@@ -16671,7 +16670,7 @@ parser/composer.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils sbcl-local-time sbcl-plump))
(home-page "https://shinmera.github.io/feeder/")
(home-page "https://shinmera.com/docs/feeder/")
(synopsis "RSS, Atom and general feed parsing and generating")
(description
"Feeder is a syndication feed library. It presents a general protocol
@@ -16730,7 +16729,7 @@ given the Common Lisp implementation.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/file-attributes/")
(url "https://codeberg.org/shinmera/file-attributes/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -16738,7 +16737,7 @@ given the Common Lisp implementation.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-cffi sbcl-documentation-utils sbcl-trivial-features))
(home-page "https://shinmera.github.io/file-attributes/")
(home-page "https://shinmera.com/docs/file-attributes/")
(synopsis "Access to common file attributes in Common Lisp")
(description
"This is a small OS portability library to retrieve and set file
@@ -16797,7 +16796,7 @@ avoids many of the pitfalls of pathnames.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/file-notify")
(url "https://codeberg.org/shinmera/file-notify")
(commit commit)))
(file-name (git-file-name "cl-file-notify" version))
(sha256
@@ -16807,7 +16806,7 @@ avoids many of the pitfalls of pathnames.")
(list sbcl-cffi
sbcl-documentation-utils
sbcl-trivial-features))
(home-page "https://github.com/Shinmera/file-notify")
(home-page "https://codeberg.org/shinmera/file-notify")
(synopsis "Get notifications for file accesses and changes")
(description
"File-Notify is a Common Lisp library for getting notifications for file
@@ -16830,7 +16829,7 @@ accesses and changes.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/file-select")
(url "https://codeberg.org/shinmera/file-select")
(commit commit)))
(file-name (git-file-name "file-select" version))
(sha256
@@ -16840,7 +16839,7 @@ accesses and changes.")
(list sbcl-cffi
sbcl-documentation-utils
sbcl-float-features))
(home-page "https://shinmera.github.io/file-select/")
(home-page "https://shinmera.com/docs/file-select/")
(synopsis "Invoke the native file selection dialogs to open or save files")
(description
"This library allows you to open native file dialogs to open and save
@@ -16895,7 +16894,7 @@ fashion.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/filesystem-utils/")
(url "https://codeberg.org/shinmera/filesystem-utils/")
(commit commit)))
(file-name (git-file-name "cl-filesystem-utils" version))
(sha256
@@ -16905,7 +16904,7 @@ fashion.")
(list sbcl-documentation-utils
sbcl-pathname-utils
sbcl-trivial-features))
(home-page "https://shinmera.github.io/filesystem-utils/")
(home-page "https://shinmera.com/docs/filesystem-utils/")
(synopsis "Collection of utilities for filesystem interaction")
(description
"This is an extension library to @code{pathname-utils}, to allow
@@ -17026,7 +17025,7 @@ the @command{flamegraph.pl} script, which is available in the Guix package
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/flare")
(url "https://codeberg.org/shinmera/flare")
(commit commit)))
(file-name (git-file-name "flare" version))
(sha256
@@ -17039,7 +17038,7 @@ the @command{flamegraph.pl} script, which is available in the Guix package
sbcl-for
sbcl-lambda-fiddle
sbcl-trivial-garbage))
(home-page "https://shinmera.github.io/flare/")
(home-page "https://shinmera.com/docs/flare/")
(synopsis "Easy particle systems with fine grained control")
(description
"FLARE is a library designed to allow quick and precise particle effect
@@ -17157,7 +17156,7 @@ a sequence (or chain) of such elements.")
(description
"Portability library for IEEE float features that are not
covered by the Common Lisp standard.")
(home-page "https://github.com/Shinmera/float-features")
(home-page "https://codeberg.org/shinmera/float-features")
(license license:zlib))))
(define-public cl-float-features
@@ -17179,7 +17178,7 @@ covered by the Common Lisp standard.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/flow")
(url "https://codeberg.org/shinmera/flow")
(commit commit)))
(file-name (git-file-name "flow" version))
(sha256
@@ -17191,7 +17190,7 @@ covered by the Common Lisp standard.")
(inputs
(list sbcl-closer-mop
sbcl-documentation-utils))
(home-page "https://shinmera.github.io/flow/")
(home-page "https://shinmera.com/docs/flow/")
(synopsis "Tools for the representation of graphs and flowcharts")
(description
"FLOW is a flowchart graph library. Unlike other graphing libraries,
@@ -17385,7 +17384,7 @@ time, etc.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/font-discovery")
(url "https://codeberg.org/shinmera/font-discovery")
(commit commit)))
(file-name (git-file-name "font-discovery" version))
(sha256
@@ -17393,7 +17392,7 @@ time, etc.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-cffi sbcl-documentation-utils sbcl-trivial-indent))
(home-page "https://shinmera.github.io/font-discovery/")
(home-page "https://shinmera.com/docs/font-discovery/")
(synopsis "Find system font files matching a font spec")
(description
"This is a library to find system font files. It works on systems with
@@ -17417,7 +17416,7 @@ aren't already directly available on the system.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/for")
(url "https://codeberg.org/shinmera/for")
(commit commit)))
(file-name (git-file-name "cl-for" version))
(sha256
@@ -17425,7 +17424,7 @@ aren't already directly available on the system.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils sbcl-form-fiddle sbcl-lambda-fiddle))
(home-page "https://shinmera.github.io/for/")
(home-page "https://shinmera.com/docs/for/")
(synopsis "Extensible iteration macro library")
(description
"For is a library for an extensible iteration macro. It allows you to write
@@ -17453,7 +17452,7 @@ require code-walking and is easier to extend.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/forge/")
(url "https://codeberg.org/shinmera/forge/")
(commit commit)))
(sha256
(base32 "006vi2ihrn28pzrwa8b7axmv98bdaxzx7lacnh9pbacbjg3b7hb0"))
@@ -17495,7 +17494,7 @@ for the specific kind of project you're building to get the full picture.")
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Shinmera/form-fiddle")
(url "https://codeberg.org/shinmera/form-fiddle")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -17508,7 +17507,7 @@ for the specific kind of project you're building to get the full picture.")
(description
"Often times we need to destructure a form definition in a Common Lisp
macro. This library provides a set of simple utilities to help with that.")
(home-page "https://shinmera.github.io/form-fiddle/")
(home-page "https://shinmera.com/docs/form-fiddle/")
(license license:zlib))))
(define-public cl-form-fiddle
@@ -20738,13 +20737,13 @@ performance and simplicity in mind.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/lambda-fiddle")
(url "https://codeberg.org/shinmera/lambda-fiddle")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1zarj1pqjqmk95kdx1axkgpwy2wq3canczk7f9z5hvaw5an6gand"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/Shinmera/lambda-fiddle")
(home-page "https://codeberg.org/shinmera/lambda-fiddle")
(synopsis "Collection of utilities to process lambda-lists")
(description "This collection of utilities is useful in contexts where
you want a macro that uses lambda-lists in some fashion but need more precise
@@ -20769,7 +20768,7 @@ processing.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/language-codes")
(url "https://codeberg.org/shinmera/language-codes")
(commit commit)))
(file-name (git-file-name name commit))
(sha256
@@ -20777,7 +20776,7 @@ processing.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils))
(home-page "https://shinmera.github.io/language-codes/")
(home-page "https://shinmera.com/docs/language-codes/")
(synopsis "Map ISO language codes to language names in Common Lisp")
(description
"This is a small library providing the ISO-639 language code to
@@ -20848,7 +20847,7 @@ text.")
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Shinmera/LASS")
(url "https://codeberg.org/shinmera/LASS")
(commit commit)))
(file-name (git-file-name "cl-lass" version))
(sha256
@@ -20862,7 +20861,7 @@ text.")
out in writing CSS quick and easy. LASS was largely inspired by SASS. LASS
supports two modes, one being directly in your lisp code, the other in pure
LASS files.")
(home-page "https://shinmera.github.io/LASS/")
(home-page "https://shinmera.com/docs/LASS/")
(license license:zlib))))
(define-public cl-lass
@@ -21455,9 +21454,6 @@ in Common Lisp.")
(define-public cl-lispbuilder-sdl
(sbcl-package->cl-source-package sbcl-lispbuilder-sdl))
(define-public ecl-lispbuilder-sdl
(sbcl-package->ecl-package sbcl-lispbuilder-sdl))
(define-public sbcl-list-named-class
(let ((commit "2955791a7469131bcab42d800883f27993ee1d62")
(revision "0"))
@@ -22197,7 +22193,7 @@ compression/decompression using bindings to the lzlib C library.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/machine-state")
(url "https://codeberg.org/shinmera/machine-state")
(commit commit)))
(file-name (git-file-name "cl-machine-state" version))
(sha256
@@ -22211,7 +22207,7 @@ compression/decompression using bindings to the lzlib C library.")
(arguments
'(#:tests? #f ; No tests.
#:asd-systems '("machine-state" "machine-state/opengl")))
(home-page "https://shinmera.github.io/machine-state/")
(home-page "https://shinmera.com/docs/machine-state/")
(synopsis "Retrieve machine state information about CPU time, memory usage and more")
(description
"This library implements various functions to access status information
@@ -23416,7 +23412,7 @@ various string metrics in Common Lisp:
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/mmap")
(url "https://codeberg.org/shinmera/mmap")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -23427,7 +23423,7 @@ various string metrics in Common Lisp:
sbcl-trivial-features))
(inputs
(list sbcl-cffi sbcl-documentation-utils))
(home-page "https://shinmera.github.io/mmap/")
(home-page "https://shinmera.com/docs/mmap/")
(synopsis "File memory mapping for Common Lisp")
(description
"This is a utility library providing access to the @emph{mmap} family of
@@ -23489,7 +23485,7 @@ place.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/modularize")
(url "https://codeberg.org/shinmera/modularize")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -23498,7 +23494,7 @@ place.")
(inputs
(list sbcl-documentation-utils
sbcl-trivial-package-local-nicknames))
(home-page "https://shinmera.github.io/modularize/")
(home-page "https://shinmera.com/docs/modularize/")
(synopsis "Common Lisp modularization framework")
(description
"@code{MODULARIZE} is an attempt at providing a common interface to
@@ -23525,7 +23521,7 @@ tie modules together in functionality, hook into each other and so on.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/modularize-hooks")
(url "https://codeberg.org/shinmera/modularize-hooks")
(commit commit)))
(file-name (git-file-name "modularize-hooks" version))
(sha256
@@ -23534,7 +23530,7 @@ tie modules together in functionality, hook into each other and so on.")
(inputs
(list sbcl-closer-mop sbcl-lambda-fiddle sbcl-modularize
sbcl-trivial-arguments))
(home-page "https://shinmera.github.io/modularize-hooks/")
(home-page "https://shinmera.com/docs/modularize-hooks/")
(synopsis "Generic hooks and triggers extension for Modularize")
(description
"This is a simple extension to @code{MODULARIZE} that allows modules to
@@ -23557,7 +23553,7 @@ define and trigger hooks, which other modules can hook on to.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/modularize-interfaces")
(url "https://codeberg.org/shinmera/modularize-interfaces")
(commit commit)))
(file-name (git-file-name "modularize-interfaces" version))
(sha256
@@ -23566,7 +23562,7 @@ define and trigger hooks, which other modules can hook on to.")
(inputs
(list sbcl-lambda-fiddle sbcl-modularize sbcl-trivial-arguments
sbcl-trivial-indent))
(home-page "https://shinmera.github.io/modularize-interfaces/")
(home-page "https://shinmera.com/docs/modularize-interfaces/")
(synopsis "Programmatical interfaces extension for Modularize")
(description
"This is an extension to @code{MODULARIZE} that allows your application
@@ -23850,7 +23846,7 @@ for Common Lisp.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/multilang-documentation")
(url "https://codeberg.org/shinmera/multilang-documentation")
(commit commit)))
(file-name (git-file-name name commit))
(sha256
@@ -23859,7 +23855,7 @@ for Common Lisp.")
(inputs
(list sbcl-documentation-utils sbcl-language-codes
sbcl-system-locale))
(home-page "https://shinmera.github.io/multilang-documentation/")
(home-page "https://shinmera.com/docs/multilang-documentation/")
(synopsis "Add multiple languages support to Common Lisp documentation")
(description
"This library provides a drop-in replacement function for
@@ -25042,7 +25038,7 @@ expressions.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/open-with")
(url "https://codeberg.org/shinmera/open-with")
(commit commit)))
(file-name (git-file-name "cl-open-with" version))
(sha256
@@ -25066,7 +25062,7 @@ expressions.")
"This package provides a small utility library to open a thing (usually
a file or URL) in an appropriate handler (usually an external file manager or
browser).")
(home-page "https://shinmera.github.io/open-with/")
(home-page "https://shinmera.com/docs/open-with/")
(license license:zlib))))
(define-public cl-open-with
@@ -25859,8 +25855,8 @@ variable portably in Common Lisp.")
(sbcl-package->ecl-package sbcl-path-parse))
(define-public sbcl-pathname-utils
(let ((commit "3309d65a568acc392ade6a4096c940eb15e1149e")
(revision "4"))
(let ((commit "c0aa51ab78cb21581700d44deeed88a4743b6f13")
(revision "5"))
(package
(name "sbcl-pathname-utils")
(version (git-version "1.1.0" revision commit))
@@ -25868,17 +25864,17 @@ variable portably in Common Lisp.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/pathname-utils")
(url "https://codeberg.org/shinmera/pathname-utils")
(commit commit)))
(file-name (git-file-name "cl-pathname-utils" version))
(sha256
(base32 "0w7h0qhi53myakfbwvwgr9srbz5mmgsdcbynzkh5vjiibwjg1c3i"))))
(base32 "11hic5gspnkjfggdh4zzx9i1ha4vf7rjr2cyqmz1144sprl2nva6"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-parachute))
(inputs
(list sbcl-trivial-features))
(home-page "https://shinmera.github.io/pathname-utils/")
(home-page "https://shinmera.com/docs/pathname-utils/")
(synopsis "Collection of utilities to help with pathname operations")
(description
"This package provides a Common Lisp system with a collection of common
@@ -25889,6 +25885,12 @@ handling the accessing of files on the underlying system however.")
(define-public cl-pathname-utils
(sbcl-package->cl-source-package sbcl-pathname-utils))
(define-public clasp-pathname-utils
(package
(inherit (sbcl-package->clasp-package sbcl-pathname-utils))
(arguments
(list #:tests? #f)))) ;see ECL variant
(define-public ecl-pathname-utils
(package
(inherit (sbcl-package->ecl-package sbcl-pathname-utils))
@@ -26156,13 +26158,13 @@ for Common Lisp.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/piping/")
(url "https://codeberg.org/shinmera/piping/")
(commit commit)))
(file-name (git-file-name "piping" version))
(sha256
(base32 "0in84qnfkynm36d4n4d6v87vprpi27xrydnga462wfhplji6klv5"))))
(build-system asdf-build-system/sbcl)
(home-page "https://shinmera.github.io/piping/")
(home-page "https://shinmera.com/docs/piping/")
(synopsis "Library to enable simple message pipelines")
(description
"This is a Common Lisp library to enable simple message pipelines.")
@@ -27048,9 +27050,6 @@ pattern-matching-like, but a char-by-char procedural parser.")
(define-public cl-prometheus
(sbcl-package->cl-source-package sbcl-prometheus))
(define-public ecl-prometheus
(sbcl-package->ecl-package sbcl-prometheus))
(define-public sbcl-promise
(let ((commit "801db8f853da7935ae2e487fd7f8763acbc5ad2a")
(revision "0"))
@@ -27061,7 +27060,7 @@ pattern-matching-like, but a char-by-char procedural parser.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/promise")
(url "https://codeberg.org/shinmera/promise")
(commit commit)))
(file-name (git-file-name "cl-promise" version))
(sha256
@@ -27071,7 +27070,7 @@ pattern-matching-like, but a char-by-char procedural parser.")
(list sbcl-parachute))
(inputs
(list sbcl-documentation-utils))
(home-page "https://shinmera.github.io/promise/")
(home-page "https://shinmera.com/docs/promise/")
(synopsis "Promise mechanism for asynchronous operations")
(description
"This library implements a basic promise datastructure, which is useful
@@ -27647,8 +27646,8 @@ Lisp. It is intended to be a replacement of PURI.")
(sbcl-package->ecl-package sbcl-quri))
(define-public sbcl-radiance
(let ((commit "8d826c7fe1935338565580931db43f46181e0e85")
(revision "3"))
(let ((commit "8249b00388ffe1c7e516a148c8ea8e7d9bc4243c")
(revision "4"))
(package
(name "sbcl-radiance")
(version (git-version "2.1.2" revision commit))
@@ -27656,26 +27655,14 @@ Lisp. It is intended to be a replacement of PURI.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shirakumo/radiance")
(commit commit)))
(url "https://codeberg.org/shirakumo/radiance")
(commit commit)))
(file-name (git-file-name "radiance" version))
(sha256
(base32 "1j823dgp87www0sjbcbv9j025bfxlkwhjd7kz6635mrqwmmlki4l"))))
(base32 "1kl1936kzv1j2fmnm6n3nq503bxz38zzymwbwq3vhqa0jsqjwynm"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:tests? #f ; TODO: The tests require some configuration.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-quicklisp
(lambda _
;; Disable the automatic installation of systems by Quicklisp.
;; (Maybe there would be a way to package Quicklisp and make it
;; install things in the user's directory instead of
;; /gnu/store/...).
(substitute* "interfaces.lisp"
(("\\(unless \\(asdf:find-system configured-implementation NIL\\)"
all)
(string-append "#+quicklisp " all))))))))
(list #:tests? #f)) ; TODO: The tests require some configuration.
(native-inputs
(list sbcl-alexandria
sbcl-dexador
@@ -27686,8 +27673,8 @@ Lisp. It is intended to be a replacement of PURI.")
sbcl-bordeaux-threads
sbcl-cl-ppcre
sbcl-closer-mop
sbcl-documentation-utils
sbcl-deploy
sbcl-documentation-utils
sbcl-form-fiddle
sbcl-lambda-fiddle
sbcl-local-time
@@ -27697,7 +27684,7 @@ Lisp. It is intended to be a replacement of PURI.")
sbcl-trivial-indent
sbcl-trivial-mimes
sbcl-ubiquitous))
(home-page "https://shirakumo.github.io/radiance/")
(home-page "https://codeberg.org/shirakumo/radiance")
(synopsis "Common Lisp web application environment")
(description
"Radiance is a web application environment, which is sort of like a web
@@ -27723,7 +27710,7 @@ adaptations.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shirakumo/radiance-contribs")
(url "https://codeberg.org/shirakumo/radiance-contribs")
(commit commit)))
(file-name (git-file-name "radiance-contribs" version))
(sha256
@@ -27802,7 +27789,7 @@ sequence.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/random-state")
(url "https://codeberg.org/shinmera/random-state")
(commit commit)))
(file-name (git-file-name "cl-random-state" version))
(sha256
@@ -27810,7 +27797,7 @@ sequence.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils))
(home-page "https://shinmera.github.io/random-state/")
(home-page "https://shinmera.com/docs/random-state/")
(synopsis "Portable random number generation")
(description
"This library is a collection of @dfn{pseudo random number generators}.
@@ -28672,7 +28659,7 @@ can coexist and interoperate with other extensions to as CLIM and Iterate.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/sdf")
(url "https://codeberg.org/shinmera/sdf")
(commit commit)))
(file-name (git-file-name "sdf" version))
(sha256
@@ -28687,7 +28674,7 @@ can coexist and interoperate with other extensions to as CLIM and Iterate.")
sbcl-pathname-utils))
(arguments
`(#:asd-systems '("sdf" "sdf/bmfont")))
(home-page "https://github.com/Shinmera/sdf")
(home-page "https://codeberg.org/shinmera/sdf")
(synopsis "Signed distance font atlas generator")
(description
"This library generates
@@ -29459,7 +29446,7 @@ using advisors.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/simple-inferiors")
(url "https://codeberg.org/shinmera/simple-inferiors")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@@ -29467,7 +29454,7 @@ using advisors.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-bordeaux-threads sbcl-documentation-utils))
(home-page "https://shinmera.github.io/simple-inferiors/")
(home-page "https://shinmera.com/docs/simple-inferiors/")
(synopsis "Common Lisp library to use inferior processes")
(description
"This is a library to allow easy handling of external processes, and
@@ -29687,7 +29674,7 @@ on top of Hunchentoot.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/simple-tasks")
(url "https://codeberg.org/shinmera/simple-tasks")
(commit commit)))
(file-name (git-file-name "simple-tasks" version))
(sha256
@@ -29695,7 +29682,7 @@ on top of Hunchentoot.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-array-utils sbcl-bordeaux-threads sbcl-dissect))
(home-page "https://shinmera.github.io/simple-tasks/")
(home-page "https://shinmera.com/docs/simple-tasks/")
(synopsis "Simple task scheduling framework")
(description "This is a task scheduling framework for Common Lisp.")
(license license:zlib))))
@@ -30520,7 +30507,7 @@ empty object).")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/staple/")
(url "https://codeberg.org/shinmera/staple/")
(commit commit)))
(sha256
(base32 "0qf0if7py3n4rszg25lcavpsqikfz6k5dvcmh5q67y8x5r12i5m7"))
@@ -31144,13 +31131,13 @@ and camel-case rules.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/system-load")
(url "https://codeberg.org/shinmera/system-load")
(commit commit)))
(file-name (git-file-name "cl-system-load" version))
(sha256
(base32 "08d8kr8j5l2m8p69f47iklxhna394vx9mrys0sgplf5f2bqb7xcv"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/Shinmera/system-load")
(home-page "https://codeberg.org/shinmera/system-load")
(synopsis "Access system's CPU and memory usage from Common Lisp")
(description
"System-Load is a Common Lisp library for accessing the system's CPU and
@@ -31172,7 +31159,7 @@ memory usage.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/system-locale/")
(url "https://codeberg.org/shinmera/system-locale/")
(commit commit)))
(file-name (git-file-name name commit))
(sha256
@@ -31180,7 +31167,7 @@ memory usage.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-documentation-utils))
(home-page "https://shinmera.github.io/system-locale/")
(home-page "https://shinmera.com/docs/system-locale/")
(synopsis "Get the system's locale and language settings in Common Lisp")
(description
"This library retrieves locale information configured on the
@@ -32081,13 +32068,13 @@ a simple-array ensuring that the resulting array is still a simple-array.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/trivial-arguments")
(url "https://codeberg.org/shinmera/trivial-arguments")
(commit commit)))
(file-name (git-file-name "trivial-arguments" version))
(sha256
(base32 "02vaqfavhj8jqxnr68nnzvzshm8jbgcy6m9lvyv4daa6f7ihqf88"))))
(build-system asdf-build-system/sbcl)
(home-page "https://github.com/Shinmera/trivial-arguments")
(home-page "https://codeberg.org/shinmera/trivial-arguments")
(synopsis "Common Lisp library to retrieve a function's lambda-list")
(description
"This is a simple library to retrieve the argument list of a function.")
@@ -32190,7 +32177,7 @@ information.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/trivial-benchmark/")
(url "https://codeberg.org/shinmera/trivial-benchmark/")
(commit commit)))
(file-name (git-file-name "cl-trivial-benchmark" version))
(sha256
@@ -32198,7 +32185,7 @@ information.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria))
(home-page "https://shinmera.github.io/trivial-benchmark/")
(home-page "https://shinmera.com/docs/trivial-benchmark/")
(synopsis "Easy to use benchmarking system for Common Lisp")
(description
"Trivial-Benchmark runs a block of code many times and outputs some
@@ -32507,13 +32494,13 @@ It provides four readtables. The default one lets you write strings like this:
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/trivial-extensible-sequences")
(url "https://codeberg.org/shinmera/trivial-extensible-sequences")
(commit commit)))
(file-name (git-file-name "cl-trivial-extensible-sequences" version))
(sha256
(base32 "0352psdd8j0phjycr6ldckwspyal4jcf0f2fizi6fwdp7nvadng7"))))
(build-system asdf-build-system/sbcl)
(home-page "https://shinmera.github.io/trivial-extensible-sequences/")
(home-page "https://shinmera.com/docs/trivial-extensible-sequences/")
(synopsis "Portability library for the extensible sequences protocol")
(description
"This package provides a portability layer for the extensible sequences
@@ -32684,7 +32671,7 @@ thin compatibility layer for gray streams.")
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Shinmera/trivial-indent")
(url "https://codeberg.org/shinmera/trivial-indent")
(commit commit)))
(file-name (git-file-name "cl-trivial-indent" version))
(sha256
@@ -32696,7 +32683,7 @@ thin compatibility layer for gray streams.")
"This library allows you to define custom indentation hints for your
macros if the one recognised by SLIME automatically produces unwanted
results.")
(home-page "https://shinmera.github.io/trivial-indent/")
(home-page "https://shinmera.com/docs/trivial-indent/")
(license license:zlib))))
(define-public cl-trivial-indent
@@ -32750,7 +32737,7 @@ implementation specific equivalent.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/trivial-main-thread")
(url "https://codeberg.org/shinmera/trivial-main-thread")
(commit commit)))
(file-name (git-file-name "trivial-main-thread" version))
(sha256
@@ -32758,7 +32745,7 @@ implementation specific equivalent.")
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-bordeaux-threads sbcl-simple-tasks sbcl-trivial-features))
(home-page "https://shinmera.github.io/trivial-main-thread/")
(home-page "https://shinmera.com/docs/trivial-main-thread/")
(synopsis "Compatibility library to run things in the main thread")
(description
"This package provides a Common Lisp system which wraps the
@@ -33474,7 +33461,7 @@ the elements in compound type specifier, e.g. @code{dimensions} in
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/type-templates")
(url "https://codeberg.org/shinmera/type-templates")
(commit commit)))
(file-name (git-file-name "cl-type-templates" version))
(sha256
@@ -33487,7 +33474,7 @@ the elements in compound type specifier, e.g. @code{dimensions} in
(list sbcl-alexandria
sbcl-documentation-utils
sbcl-form-fiddle))
(home-page "https://shinmera.github.io/type-templates/")
(home-page "https://shinmera.com/docs/type-templates/")
(synopsis "Library for defining and expanding templated functions")
(description
"The Type-Templates library allows you to define types and template
@@ -33548,7 +33535,7 @@ reasoning about types, but without consing.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/uax-14")
(url "https://codeberg.org/shinmera/uax-14")
(commit commit)))
(file-name (git-file-name "uax-14" version))
(sha256
@@ -33560,7 +33547,7 @@ reasoning about types, but without consing.")
(list sbcl-documentation-utils))
(arguments
`(#:asd-systems '("uax-14")))
(home-page "https://shinmera.github.io/uax-14/")
(home-page "https://shinmera.com/docs/uax-14/")
(synopsis "Unicode Standard Annex #14 for standardised line breaking")
(description
"This is an implementation of the Unicode Standards Annex
@@ -33631,7 +33618,7 @@ RFC7564.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/ubiquitous")
(url "https://codeberg.org/shinmera/ubiquitous")
(commit commit)))
(file-name (git-file-name "ubiquitous" version))
(sha256
@@ -33642,7 +33629,7 @@ RFC7564.")
(arguments
'(#:asd-systems '("ubiquitous"
"ubiquitous-concurrent")))
(home-page "https://shinmera.github.io/ubiquitous/")
(home-page "https://shinmera.com/docs/ubiquitous/")
(synopsis "Application configuration mechanism for Common Lisp")
(description
"@code{UBIQUITOUS} is a very easy-to-use library for persistent
@@ -34149,7 +34136,7 @@ algorithms.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/verbose/")
(url "https://codeberg.org/shinmera/verbose/")
(commit commit)))
(file-name (git-file-name "verbose" version))
(sha256
@@ -34158,7 +34145,7 @@ algorithms.")
(inputs
(list sbcl-bordeaux-threads sbcl-dissect sbcl-documentation-utils
sbcl-local-time sbcl-piping))
(home-page "https://shinmera.github.io/verbose/")
(home-page "https://shinmera.com/docs/verbose/")
(synopsis "Logging framework using the piping library")
(description
"This is a Common Lisp library providing logging faciltiy similar to
@@ -35078,7 +35065,7 @@ reading and writing.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Shinmera/zippy/")
(url "https://codeberg.org/shinmera/zippy/")
(commit commit)))
(sha256
(base32 "16cvyyf2nzd9r3fcy4w6d5wh8n3x833wldmrxmnzd3k2xrkhzfl9"))
@@ -35107,7 +35094,7 @@ can read and write zip files. It features:
@item can compress stream->stream;
@item extensible for other encryption and compression mechanisms.
@end itemize\n")
(home-page "https://shinmera.github.io/zippy/")
(home-page "https://shinmera.com/docs/zippy/")
(license license:zlib))))
(define-public cl-zippy

View File

@@ -329,7 +329,7 @@ family of functions.")
(define-public python-burr
(package
(name "python-burr")
(version "0.40.2")
(version "0.42.0")
(source
(origin
(method git-fetch)
@@ -338,7 +338,7 @@ family of functions.")
(commit (string-append "burr-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0scdfdn2dkan5rkrh5ngai8j4i01rj6d6ncrhvab62r43c0h042q"))))
(base32 "0a2sf72qy9jkamg6r7d37mv7ayp698h031md7arfyq7v8q9q121n"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -4666,7 +4666,7 @@ the tensors contained therein.")
libxml2
llvm-19
opencl-clhpp
opencl-headers
opencl-headers-2022
rang
mesa
mesa-opencl
@@ -4751,7 +4751,6 @@ different backends")
,(python:site-packages inputs outputs)))))))))
(inputs
(list bash-minimal
openblas
python
python-customtkinter
spirv-headers
@@ -6177,7 +6176,7 @@ Jax, PyTorch and TensorFlow — with a seamless integration between them.")
(define-public ctranslate2
(package
(name "ctranslate2")
(version "4.6.3")
(version "4.7.1")
(source
(origin
(method git-fetch)
@@ -6185,7 +6184,7 @@ Jax, PyTorch and TensorFlow — with a seamless integration between them.")
(url "https://github.com/OpenNMT/CTranslate2")
(commit (string-append "v" version))))
(file-name (git-file-name "CTranslate2" version))
(sha256 (base32 "1msmf1imgvmhji48mjj8cq5y8d8fk8rywqh624vmilfawq75f497"))
(sha256 (base32 "09gr7pvc2b4xacjg8jbb20rini51071q2x998h88jr85wp5a8824"))
(patches (search-patches "ctranslate2-local-build.patch"))))
(build-system cmake-build-system)
(arguments

View File

@@ -1939,7 +1939,7 @@ compresses it.")
(define-public claws-mail
(package
(name "claws-mail")
(version "4.3.1")
(version "4.4.0")
(source
(origin
(method url-fetch)
@@ -1948,7 +1948,7 @@ compresses it.")
version ".tar.xz"))
(sha256
(base32
"19k8yii61n6j80riw6i8nzypygb0kv3b6npw5ljmiav7qw8g5bfq"))))
"0nr5r8lzg44sdawa8hjdadgbnpnh0m0m51j1h1cpmk8gbyfm9q03"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags
@@ -1990,7 +1990,6 @@ compresses it.")
compface
curl
dbus
dbus-glib
enchant
expat
fontconfig

View File

@@ -507,13 +507,13 @@ triangulations.")
(define-public units
(package
(name "units")
(version "2.25")
(version "2.26")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/units/units-" version
".tar.gz"))
(sha256 (base32
"02zclvjji25hsdriz4jwys5i21dbcmz3i4gap8266k8bq0xg9v9n"))))
"0m1whwcggib8kyzmcjkw94sxnd8r19d7bh6k6gj2w8g2kyjgfhsc"))))
(build-system gnu-build-system)
(inputs
(list bash-minimal ;for wrap-program
@@ -4859,6 +4859,40 @@ wedges, pyramids, n-spheres, n-balls, n-cubes, n-simplices, and the
integration of real-, complex-, and vector-valued functions.")
(license license:gpl3+)))
(define-public python-simplesat
(package
(name "python-simplesat")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/enthought/sat-solver")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0z44pi8yb6pvc9bisl3qnn3glj7ir0ad2j4gd4jfg2kxvwvi0w0b"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags #~(list "--ignore=old")))
(native-inputs
(list python-mock
python-pytest
python-pyyaml
python-setuptools))
(propagated-inputs
(list python-attrs
python-okonomiyaki
python-six))
(home-page "https://github.com/enthought/sat-solver")
(synopsis
"@acronym{SAT, Boolean Satisfiability Problem} dependency handling")
(description
"This package provides a prototype Python implementation for SAT-based
problems.")
(license license:bsd-3)))
(define-public slepc
(package
(name "slepc")
@@ -6044,29 +6078,38 @@ parts of it.")
(define-public openblas
(package
(name "openblas")
(version "0.3.30")
(version "0.3.31")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/xianyi/OpenBLAS")
(url "https://github.com/OpenMathLib/OpenBLAS")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"08crjjs7avnkk7l226pghhz68mw9ak62xcghc9hdpshbflwzd0vy"))))
"1ifbbk4mg4ykm92i9b09wwbcwpyzlfzn8lhds8f3p7cbcga7q530"))))
;; To build the package, we can either rely on a preset Makefile, or
;; generate a new one through a CMake configuration.
;; We choose the first option, so we delete the configure phase and we set
;; the build system to gnu-build-system to build the package through the
;; 'make' command.
(build-system gnu-build-system)
(arguments
(list
;; Set the test target (but tests are indeed already run in the build
;; phase, which calls 'make -C test all').
#:test-target "test"
;; No default baseline is supplied for powerpc-linux.
#:substitutable? (not (target-ppc32?))
#:make-flags
#~(list (string-append "PREFIX=" #$output)
"CFLAGS=-O3" ; optimization flags
"FFLAGS=-O3" ; optimization flags
"SHELL=bash"
"DEBUG=1" ; enable debug symbols
"MAKE_NB_JOBS=0" ;use jobserver for submakes
"NO_STATIC=1" ;avoid a 67 MiB static archive
"DEBUG=1" ; enable debug symbols -g
"MAKE_NB_JOBS=0" ; use jobserver for submakes
"NO_STATIC=1" ; avoid a 67 MiB static archive
;; This is the maximum number of threads OpenBLAS will ever use
;; (that is, if $OPENBLAS_NUM_THREADS is greater than that, then
@@ -6075,6 +6118,13 @@ parts of it.")
;; obviously wrong.
"NUM_THREADS=128"
;; OpenMP support prevents deadlocks when multithreaded Openblas
;; is called from an OpenMP parallel region and takes care of
;; deactivating threads when necessary. See
;; http://www.openmathlib.org/OpenBLAS/docs/faq/#using-openblas-with-openmp
;; for more details.
"USE_OPENMP=1"
;; DYNAMIC_ARCH is only supported on some architectures.
;; DYNAMIC_ARCH combined with TARGET=GENERIC provides a library
;; which uses the optimizations for the detected CPU. This can
@@ -6102,13 +6152,13 @@ parts of it.")
((target-riscv64?)
'("TARGET=RISCV64_GENERIC"))
(else '())))
;; no configure script
#:phases
#~(modify-phases %standard-phases
;; Skip configure phase since we rely on a preset Makefile.
(delete 'configure)
;; Get libgfortran found when building in utest.
(add-before 'build 'set-extralib
(lambda* (#:key inputs #:allow-other-keys)
;; Get libgfortran found when building in utest.
(setenv "FEXTRALIB"
(string-append
"-L"

View File

@@ -115,15 +115,15 @@ Health Federation.")
(define-public orthanc
(package
(name "orthanc")
(version "1.12.7")
(version "1.12.10")
(source
(origin
(method hg-fetch)
(uri (hg-reference (url "https://orthanc.uclouvain.be/hg/orthanc")
(changeset "a30cc2fa7250")))
(changeset "8628c32729cf")))
(file-name (hg-file-name name version))
(sha256
(base32 "1n8v0dh17g9ihny8cpq63qd6ai5l95i5h3sz9vwzfnd7q3qh0rb9"))))
(base32 "16xkbs6amhx81yvn7avkg8nwha6sj55l6vipa5290yf0rgygyadr"))))
(build-system cmake-build-system)
(arguments
(list
@@ -147,7 +147,7 @@ Health Federation.")
;; /etc/localtime is not present in the build container;
;; don't let that stop the build.
(substitute* "OrthancFramework/Sources/Toolbox.cpp"
(("if \\(!SystemToolbox::IsExistingFile\\(LOCALTIME\\)\\)")
(("if \\(!boost::filesystem::exists\\(LOCALTIME\\)\\)")
"if (false)"))))
;; There is no test target; simply run the binary.
(replace 'check
@@ -158,7 +158,7 @@ Health Federation.")
glibc-utf8-locales ;for one test
googletest
python))
(inputs (list boost-1.83
(inputs (list boost
civetweb
curl
dcmtk
@@ -184,11 +184,11 @@ mechanism for extending its functionality.")
(define-public orthanc-postgresql
;; No tags provided.
(let ((changeset "ddc98844d931")
(let ((changeset "81d837d7d20d")
(revision "0"))
(package
(name "orthanc-postgresql")
(version (git-version "7.2" revision changeset))
(version (git-version "10.0" revision changeset))
(source
(origin
(method hg-fetch)
@@ -197,7 +197,7 @@ mechanism for extending its functionality.")
(changeset changeset)))
(file-name (hg-file-name name version))
(sha256
(base32 "1zv2lrj0f3fahmdyiwyj70ayv5ysa3cj33i58fbk7hy2zclrkjzf"))))
(base32 "1ijxa8hlpxjcrcp0b54fzmxf01lqb9741bff4ak1nw24sn9z96ai"))))
(build-system cmake-build-system)
(arguments
(list

View File

@@ -695,6 +695,15 @@ is to provide an accurate identifier for record tracks.")
(sha256
(base32 "0v866n5rwdz45ks8dlhl8hzx3p54hcjl0rz7x3rbsj4c96jn0m5c"))))
(build-system pyproject-build-system)
(arguments
(list #:phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-gst-init
(lambda _
;; `None' is no longer accepted as of gstreamer
;; 2.28.1.
(substitute* "audioread/gstdec.py"
(("Gst.init\\(None\\)")
"Gst.init([])")))))))
(propagated-inputs (list ffmpeg python-pygobject))
(native-inputs
(list gstreamer

View File

@@ -38,6 +38,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
@@ -51,6 +52,8 @@
#:use-module (gnu packages libevent)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages linux)
#:use-module (gnu packages oneapi)
#:use-module (gnu packages opencl)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages profiling)
#:use-module (gnu packages python)
@@ -64,9 +67,12 @@
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages rocm)
#:use-module (gnu packages rocm-tools)
#:use-module (gnu packages ssh)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xdisorg)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
@@ -105,42 +111,43 @@
(native-inputs
(list pkg-config))
(arguments
`(#:configure-flags '("--localstatedir=/var")
#:phases
(modify-phases %standard-phases
(add-before 'check 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/linux-libnuma', which fails on some
;; machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-after 'install 'refine-libnuma
;; Give -L arguments for libraries to avoid propagation
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "lib"))
(numa (assoc-ref inputs "numactl")))
(substitute* (map (lambda (f) (string-append out "/" f))
'("lib/pkgconfig/hwloc.pc" "lib/libhwloc.la"))
(("-lnuma" lib)
(string-append "-L" numa "/lib " lib))))))
(add-after 'install 'avoid-circular-references
(lambda* (#:key outputs #:allow-other-keys)
(let ((lib (assoc-ref outputs "lib")))
;; Suppress the 'prefix=' and 'exec_prefix=' lines so that the
;; "lib" output doesn't refer to "out".
(substitute* (string-append lib "/lib/pkgconfig/hwloc.pc")
(("^.*prefix=.*$")
"")))))
(add-after 'install 'move-man3-pages
(lambda* (#:key outputs #:allow-other-keys)
;; Move section 3 man pages to the "doc" output.
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(copy-recursively (string-append out "/share/man/man3")
(string-append doc "/share/man/man3"))
(delete-file-recursively
(string-append out "/share/man/man3"))))))))
(list #:configure-flags
#~(list "--localstatedir=/var")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/linux-libnuma', which fails on some
;; machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-after 'install 'refine-libnuma
;; Give -L arguments for libraries to avoid propagation
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "lib"))
(numa (assoc-ref inputs "numactl")))
(substitute* (map (lambda (f) (string-append out "/" f))
'("lib/pkgconfig/hwloc.pc" "lib/libhwloc.la"))
(("-lnuma" lib)
(string-append "-L" numa "/lib " lib))))))
(add-after 'install 'avoid-circular-references
(lambda* (#:key outputs #:allow-other-keys)
(let ((lib (assoc-ref outputs "lib")))
;; Suppress the 'prefix=' and 'exec_prefix=' lines so that the
;; "lib" output doesn't refer to "out".
(substitute* (string-append lib "/lib/pkgconfig/hwloc.pc")
(("^.*prefix=.*$")
"")))))
(add-after 'install 'move-man3-pages
(lambda* (#:key outputs #:allow-other-keys)
;; Move section 3 man pages to the "doc" output.
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(copy-recursively (string-append out "/share/man/man3")
(string-append doc "/share/man/man3"))
(delete-file-recursively
(string-append out "/share/man/man3"))))))))
(home-page "https://www.open-mpi.org/projects/hwloc/")
(synopsis "Abstraction of hardware architectures")
(description
@@ -160,7 +167,7 @@ bind processes, and much more.")
(define-public hwloc-2
(package
(inherit hwloc-1)
(version "2.12.2")
(version "2.13.0")
(source (origin
(method url-fetch)
(uri (string-append "https://download.open-mpi.org/release/hwloc/v"
@@ -168,34 +175,59 @@ bind processes, and much more.")
"/hwloc-" version ".tar.bz2"))
(sha256
(base32
"182v0n2mpnbvdsw0gjnbmaj027k2jxmw7yphi89i9dgb1zbn2gjn"))))
"1aqdznqp7f18yg95vbr5n6ccxxdiywacygvn3wbhzn7bnspkdsaj"))
;; XXX: Remove after updating package from 2.13.0.
(patches (search-patches "hwloc-add-with-opencl.patch"))))
(native-inputs (modify-inputs (package-native-inputs hwloc-1)
(append autoconf)
(append automake)
(append libtool)
(append opencl-headers)
(append bash))) ;for completion tests
(inputs (modify-inputs (package-inputs hwloc-1)
(append level-zero)
;; XXX: rocm-smi requires libdrm/drm.h but doesn't propagate a
;; package providing these. For now, libdrm is used to provide
;; this header.
(append libdrm)
(append libxml2)
(append opencl-icd-loader)
(append rocm-smi-lib)
(delete "numactl"))) ;libnuma is no longer needed.
(arguments
(substitute-keyword-arguments (package-arguments hwloc-1)
((#:configure-flags flags '())
#~(cons* (string-append "--with-opencl="
#$(this-package-input "opencl-icd-loader"))
"--enable-rsmi"
(string-append "--with-rocm="
#$(this-package-input "rocm-smi-lib"))
#$flags))
((#:phases phases)
`(modify-phases ,phases
(replace 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/hwloc/linux-libnuma', which fails on
;; some machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/hwloc/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-before 'check 'skip-tests-that-require-/sys
(lambda _
;; 'test-gather-topology.sh' requires /sys as of 2.9.0; skip it.
(setenv "HWLOC_TEST_GATHER_TOPOLOGY" "0")))
(add-before 'check 'skip-test-that-fails-on-qemu
(lambda _
;; Skip test that fails on emulated hardware due to QEMU bug:
;; <https://bugs.gnu.org/40342>.
(substitute* "tests/hwloc/hwloc_get_last_cpu_location.c"
(("hwloc_topology_init" all)
(string-append "exit (77);\n" all)))))))))))
#~(modify-phases #$phases
(add-after 'unpack 'delete-configure
(lambda _
;; Remove configure file to generate it with patch.
(delete-file "configure")))
(replace 'skip-linux-libnuma-test
(lambda _
;; Arrange to skip 'tests/hwloc/linux-libnuma', which fails on
;; some machines: <https://github.com/open-mpi/hwloc/issues/213>.
(substitute* "tests/hwloc/linux-libnuma.c"
(("numa_available\\(\\)")
"-1"))))
(add-before 'check 'skip-tests-that-require-/sys
(lambda _
;; 'test-gather-topology.sh' requires /sys as of 2.9.0; skip it.
(setenv "HWLOC_TEST_GATHER_TOPOLOGY" "0")))
(add-before 'check 'skip-test-that-fails-on-qemu
(lambda _
;; Skip test that fails on emulated hardware due to QEMU bug:
;; <https://bugs.gnu.org/40342>.
(substitute* "tests/hwloc/hwloc_get_last_cpu_location.c"
(("hwloc_topology_init" all)
(string-append "exit (77);\n" all)))))))))))
(define-public hwloc
;; The latest stable series of hwloc.
@@ -246,43 +278,43 @@ bind processes, and much more.")
(outputs '("out" "debug"))
(arguments
(list
#:configure-flags #~`(#$(string-append
"CFLAGS=-g -O2"
" -Wno-error=implicit-function-declaration"
" -Wno-error=incompatible-pointer-types")
"--enable-mpi-ext=affinity" ;cr doesn't work
"--with-sge"
"--disable-static"
#:configure-flags #~(list (string-append
"CFLAGS=-g -O2"
" -Wno-error=implicit-function-declaration"
" -Wno-error=incompatible-pointer-types")
"--enable-mpi-ext=affinity" ;cr doesn't work
"--with-sge"
"--disable-static"
#$@(if (package? (this-package-input "valgrind"))
#~("--enable-memchecker"
"--with-valgrind")
#~("--without-valgrind"))
#$@(if (package? (this-package-input "valgrind"))
#~("--enable-memchecker"
"--with-valgrind")
#~("--without-valgrind"))
"--with-hwloc=external"
"--with-libevent"
"--with-hwloc=external"
"--with-libevent"
;; Help 'orterun' and 'mpirun' find their tools
;; under $prefix by default.
"--enable-mpirun-prefix-by-default"
;; Help 'orterun' and 'mpirun' find their tools
;; under $prefix by default.
"--enable-mpirun-prefix-by-default"
;; InfiniBand support
"--enable-openib-control-hdr-padding"
"--enable-openib-dynamic-sl"
"--enable-openib-udcm"
"--enable-openib-rdmacm"
"--enable-openib-rdmacm-ibaddr"
;; InfiniBand support
"--enable-openib-control-hdr-padding"
"--enable-openib-dynamic-sl"
"--enable-openib-udcm"
"--enable-openib-rdmacm"
"--enable-openib-rdmacm-ibaddr"
;; Enable support for the 'Process Management
;; Interface for Exascale' (PMIx) used e.g. by
;; Slurm for the management communication and
;; coordination of MPI processes.
"--with-pmix=internal"
;; Enable support for the 'Process Management
;; Interface for Exascale' (PMIx) used e.g. by
;; Slurm for the management communication and
;; coordination of MPI processes.
"--with-pmix=internal"
;; Enable support for SLURM's Process Manager
;; Interface (PMI).
,(string-append "--with-pmi="
#$(this-package-input "slurm")))
;; Enable support for SLURM's Process Manager
;; Interface (PMI).
(string-append "--with-pmi="
#$(this-package-input "slurm")))
#:phases #~(modify-phases %standard-phases
;; opensm is needed for InfiniBand support.
(add-after 'unpack 'find-opensm-headers
@@ -432,6 +464,25 @@ software vendors, application developers and computer science researchers.")
#:disallowed-references (list (canonical-package gcc))))))
;; XXX: ROCm support in Open MPI is enabled in a variant and not in the base
;; package due to its dependency rocm-hip-runtime retaining references to
;; clang-rocm, which causes the closure to go from ~400MB to ~2.4GB. See
;; https://codeberg.org/guix/guix/issues/5585
(define-public openmpi-rocm
(package/inherit openmpi-5
(name "openmpi-rocm")
(arguments
(substitute-keyword-arguments (package-arguments openmpi-5)
((#:configure-flags flags '())
#~(cons* (string-append "--with-rocm="
#$(this-package-input "rocm-hip-runtime"))
#$flags))))
(inputs (modify-inputs (package-inputs openmpi-5)
;; XXX: This might break openmpi-5 for architectures where ROCm
;; is not supported.
(append rocm-hip-runtime)))
(synopsis "MPI-3 implementation (with ROCm support)")))
(define-public openmpi-c++
(package/inherit openmpi
(name "openmpi-c++")

View File

@@ -62,6 +62,7 @@
;;; Copyright © 2024 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Junker <dk@junkeria.club>
;;; Copyright © 2026 Ivan Vilata i Balaguer <ivan@selidor.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1450,10 +1451,11 @@ and auto-mapping slices to MIDI note numbers.")
(home-page "https://github.com/clearly-broken-software/ninjas2")
(license license:gpl3+)))
;; This package tracks the stable release of LilyPond.
(define-public lilypond
(package
(name "lilypond")
(version "2.25.30")
(version "2.24.4")
(source
(origin
(method url-fetch)
@@ -1461,7 +1463,7 @@ and auto-mapping slices to MIDI note numbers.")
"v" (version-major+minor version) "/"
"lilypond-" version ".tar.gz"))
(sha256
(base32 "0q5id9v211i9zgjmwzmvi2qfvr3flh55kh476653r04a2br53962"))))
(base32 "073qa7m9xkghad4x37rxb9v45vp4vfmsylwnjzhj17y7f4ss0vz9"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;out-test/collated-files.html fails
@@ -7924,6 +7926,7 @@ streaming audio server.")
(native-inputs
(list xorg-server-for-tests
gettext-minimal
gobject-introspection
python-pytest
python-setuptools))
(inputs

View File

@@ -4040,7 +4040,7 @@ Ethernet and TAP interfaces is supported. Packet capture is also supported.")
(define-public hcxtools
(package
(name "hcxtools")
(version "7.0.1")
(version "7.1.2")
(source
(origin
(method git-fetch)
@@ -4048,7 +4048,7 @@ Ethernet and TAP interfaces is supported. Packet capture is also supported.")
(url "https://github.com/ZerBea/hcxtools")
(commit version)))
(sha256
(base32 "07j8fcy9fq1i4jns6v1gx85pm34q56022aw391mdzxq5yka7wpjr"))
(base32 "0da9ad3v53x080b75q34zi16mnd58xl5s5w6afafgq406ajd2zdz"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
@@ -5116,7 +5116,7 @@ IPv6 Internet connectivity - it also works over IPv4.")
(define-public yggtray
(package
(name "yggtray")
(version "0.1.14")
(version "0.1.15")
(source
(origin
(method git-fetch)
@@ -5125,7 +5125,7 @@ IPv6 Internet connectivity - it also works over IPv4.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1n4pg5fdbqf579d4xajah5y5dawizp8c8difwfsk7xrvjd3w5rcf"))))
(base32 "0dv1aaps1kj9dspnawcv0da2jj3pj03am1cynh9p31a2kin8j9jp"))))
(build-system cmake-build-system)
(arguments
(list
@@ -5158,7 +5158,7 @@ daemon.")
(define-public nebula
(package
(name "nebula")
(version "1.10.0")
(version "1.10.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -5167,7 +5167,7 @@ daemon.")
(file-name (git-file-name name version))
(sha256
(base32
"1x4r8b3ny0vxipf404l8z00m5cs7cfy810670gmznl61jkaq1zd7"))
"0y0c9l6dzhdrhfzss1hv2sm18y2qzgmkcyiw9s3rav3ij1kcspxh"))
;; Remove windows-related binary blobs and files
(snippet
#~(begin
@@ -5196,6 +5196,7 @@ daemon.")
"nebula-cert")))))))
(inputs
(list go-dario-cat-mergo
go-filippo-io-bigmod
go-github-com-anmitsu-go-shlex
go-github-com-armon-go-radix
go-github-com-cyberdelia-go-metrics-graphite

View File

@@ -75,14 +75,16 @@
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Ensure writable cache directory
(setenv "HOME" "/tmp")
;; Remove test that relies on network access.
(delete-file "pynicotine/tests/unit/test_version.py")
(invoke "xvfb-run" "python" "-m" "unittest")))))))
(inputs (list bash-minimal
gspell
gtk
python-pycairo
python-pygobject
gobject-introspection
libappindicator
python-pytaglib))
(native-inputs (list gettext-minimal python-setuptools xvfb-run))

View File

@@ -59,11 +59,13 @@
;; If you update either of opencl-headers, opencl-clhpp or opencl-icd-loader
;; note that they are released together (lockstep) and must be updated
;; together.
;; together. Bump this version number and update hashes below
(define %opencl-version "2025.07.22")
(define-public opencl-headers
(package
(name "opencl-headers")
(version "2024.10.24")
(version %opencl-version)
(source
(origin
(method git-fetch)
@@ -72,7 +74,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c3s6g8b3ggfr36cl27axdf3kn79kj6cb880jizcf6q89nw6nf98"))))
(base32 "1rir72cdigwkj3a0k8l066fgzvh41yf6vrczzflwh0h4vq3g7h2x"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; Not enabled during build.
(synopsis "The Khronos OpenCL headers")
@@ -81,10 +83,25 @@
(home-page "https://registry.khronos.org/OpenCL/")
(license license:asl2.0)))
(define-public opencl-headers-2022
(package
(inherit opencl-headers)
(name "opencl-headers")
(version "2022.09.30")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/KhronosGroup/OpenCL-Headers")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0vzzkj5kd0invm5pvzlnhdl21n00jci6131a2cjviyz0vxp7xf2m"))))))
(define-public opencl-clhpp
(package
(name "opencl-clhpp")
(version "2024.10.24")
(version %opencl-version)
(source
(origin
(method git-fetch)
@@ -93,7 +110,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1s9z30p80qc1dgp04wvc6szgcs4r167m3nk9622d2bbaaalgd5vg"))))
(base32 "1d7zyf2s2xpa002c36a081gyldai0mph3pjnyvswhx34c2b8yi44"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;The regression tests require a lot more dependencies.
@@ -110,7 +127,7 @@
(define-public opencl-icd-loader
(package
(name "opencl-icd-loader")
(version "2024.10.24")
(version %opencl-version)
(source (origin
(method git-fetch)
(uri (git-reference
@@ -119,7 +136,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"0rnyx83iwisxfj818dzf016fmi62kk1hrlfav0b8a1pjfbzmvr03"))))
"12y5v3ri9dqm3zbhg6axy02hbcb0g23f44m2jvyvc2zv0lvy42wg"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; Tests need stub loader setup.
(native-search-paths

View File

@@ -12,7 +12,7 @@
;;; Copyright © 2019-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020, 2023, 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2023, 2024, 2026 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2020 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
@@ -188,8 +188,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.5.0")
(commit "deedd482e437182dc8e35b9ef260cfd0dc68e7f2")
(revision 1))
(commit "520785e315eddbe47199ac557e88e60eca3ae97c")
(revision 2))
(package
(name "guix")
@@ -205,7 +205,7 @@
(commit commit)))
(sha256
(base32
"14rch8ycl3zy0da4xkrnbyjsxlwnfcm30dfrvjqcgz5s2v71jiaq"))
"1kkryhrr2vxyirr5xzl69386kvy9rqlkpz10qbdv222dw628lcda"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View File

@@ -19,6 +19,7 @@
;;; Copyright © 2024 Romain Garbage <romain.garbage@inria.fr>
;;; Copyright © 2024 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Reza Housseini <reza@housseini.me>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -833,3 +834,47 @@ outside of a PMIx-enabled environment.")
(home-page "https://openpmix.github.io/")
;; The provided license is kind of BSD-style but specific.
(license (license:fsf-free "https://github.com/openpmix/prrte?tab=License-1-ov-file#License-1-ov-file"))))
(define-public python-simple-slurm
(package
(name "python-simple-slurm")
(version "0.3.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/amq92/simple_slurm")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1vfbd8rp4qd9375f2v26dm99c53jc3x3dpcllz812ly964qi7rnd"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list
;; these tests need slurm installed
"--deselect=test/test_cli.py::Testing::test_01_using_equal"
"--deselect=test/test_cli.py::Testing::test_02_using_spaces"
"--deselect=test/test_cli.py::Testing::test_03_using_equal_and_spaces"
"--deselect=test/test_core.py::Testing::test_14_srun_returncode"
"--deselect=test/test_core.py::Testing::test_15_sbatch_execution"
"--deselect=test/test_core.py::Testing::test_19_sbatch_execution_with_job_file"
"--deselect=test/test_core.py::Testing::test_22_parsable_sbatch_execution")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'hardcode-sbatch-and-srun-command
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "simple_slurm/core.py"
(("\"sbatch\"")
(string-append "\"" (search-input-file inputs "/bin/sbatch") "\""))
(("\"srun\"")
(string-append "\"" (search-input-file inputs "/bin/srun") "\""))))))))
(native-inputs (list python-setuptools python-pytest))
(inputs (list slurm))
(home-page "https://github.com/amq92/simple_slurm")
(synopsis "Simple Python wrapper for Slurm with flexibility in mind")
(description
"This package provides a simple Python wrapper for Slurm with flexibility in
mind.")
(license license:agpl3)))

View File

@@ -45,6 +45,7 @@
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2025 Isidor Zeuner <guix@quidecco.pl>
;;; Copyright © 2026 John Dawson <dawson.john.andrew@gmail.com>
;;; Copyright © 2026 Ivan Vilata i Balaguer <ivan@selidor.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -136,6 +137,7 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages wm)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
@@ -872,7 +874,8 @@ command-line programs (@command{pwqcheck}, @command{pwqfilter}, and
(string-append #$output "/share/man/man1")))))))
(build-system pyproject-build-system)
(inputs
(list bash-minimal gtk+ python-xdo python-gpg python-pygobject))
(list bash-minimal gtk gobject-introspection python-i3ipc python-xdo
python-gpg python-pygobject))
(propagated-inputs
(list xclip))
(native-inputs

View File

@@ -0,0 +1,33 @@
Upstream status: https://github.com/ghollisjr/cl-ana/pull/49
From 491ba1127126ca6209b7c4dc1485377c7f772f7e Mon Sep 17 00:00:00 2001
From: Philip Taron <philip.taron@gmail.com>
Date: Mon, 16 Feb 2026 12:32:04 -0800
Subject: [PATCH] Fix type error in fixed-mem-cache for SBCL 2.6.0
In cl-ana.makeres, the fixed-mem-cache function uses
(setf (cdr (last cache)) (list id)) where cache can be nil (initial
state or after popping all elements). (last nil) returns nil, making
(setf (cdr nil) ...) undefined. SBCL 2.6.0's stricter type inference
catches this as a type conflict, causing COMPILE-FILE-ERROR.
Replace with nconc which handles the nil case correctly.
---
makeres/makeres.lisp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/makeres/makeres.lisp b/makeres/makeres.lisp
index 1999ac4..373bb57 100644
--- a/makeres/makeres.lisp
+++ b/makeres/makeres.lisp
@@ -936,8 +936,8 @@ compressed storage, but alas."
(> total maxmem))
do (unload-target (pop cache))))
(load-target id)
- (setf (cdr (last cache))
- (list id)))))))))
+ (setf cache
+ (nconc cache (list id))))))))))
;; Caching utility functions:

View File

@@ -0,0 +1,30 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Remove [patch.crates-io] and [patch.'ssh://...'] sections.
The [patch] sections point to git repositories which are unavailable
in an offline build. The vendored crossterm, ratatui,
tokio-tungstenite and tungstenite forks are provided as cargo-inputs
instead.
--- a/codex-rs/Cargo.toml
+++ b/codex-rs/Cargo.toml
@@ -311,16 +311,3 @@
debug = 1 # Reduce debug symbol size
inherits = "test"
opt-level = 0
-
-[patch.crates-io]
-# Uncomment to debug local changes.
-# ratatui = { path = "../../ratatui" }
-crossterm = { git = "https://github.com/nornagon/crossterm", branch = "nornagon/color-query" }
-ratatui = { git = "https://github.com/nornagon/ratatui", branch = "nornagon-v0.29.0-patch" }
-tokio-tungstenite = { git = "https://github.com/JakkuSakura/tokio-tungstenite", rev = "2ae536b0de793f3ddf31fc2f22d445bf1ef2023d" }
-
-# Uncomment to debug local changes.
-# rmcp = { path = "../../rust-sdk/crates/rmcp" }
-
-[patch."ssh://git@github.com/JakkuSakura/tungstenite-rs.git"]
-tungstenite = { git = "https://github.com/JakkuSakura/tungstenite-rs", rev = "f514de8644821113e5d18a027d6d28a5c8cc0a6e" }

View File

@@ -0,0 +1,92 @@
From 8d651d7247c4e8cf07ba805712cdb09e8095dd89 Mon Sep 17 00:00:00 2001
Message-ID: <8d651d7247c4e8cf07ba805712cdb09e8095dd89.1773006315.git.dannym@friendly-machines.com>
From: Danny Milosavljevic <dannym@friendly-machines.com>
Date: Sun, 8 Mar 2026 21:44:05 +0000
Subject: [PATCH] Scope native-comp trampoline disabling to spy-on only
See: <https://github.com/jorgenschaefer/emacs-buttercup/pull/257>
buttercup-with-cleanup disabled native-comp-enable-subr-trampolines
for the entire spec execution. This was a workaround for Emacs
bug#61880, where trampoline compilation fails when spy-on redefines
primitives that the trampoline compiler itself depends on (e.g.
file-exists-p).
However, disabling trampolines globally has the side effect that fset
overrides of C primitives become invisible to natively compiled code.
This breaks shut-up's message override when called indirectly through
native-compiled functions like display-message-or-buffer (from
simple.eln), because without a trampoline, the native code calls the C
primitive directly, bypassing the fset'd function.
Move the trampoline disabling from buttercup-with-cleanup into
buttercup--spy-on-and-call-replacement, scoping it to just the fset
call that installs the spy. This avoids the trampoline compilation
issue while allowing other fset overrides (e.g. from shut-up or
cl-letf) to work correctly with native-compiled callers.
---
buttercup.el | 34 +++++++++++++++++-----------------
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/buttercup.el b/buttercup.el
index 07e003f..417786d 100644
--- a/buttercup.el
+++ b/buttercup.el
@@ -1293,12 +1293,23 @@ responsibility to ensure ARG is a command."
(error "Spies can only be created in `before-each' or `it'"))))
+(defvar native-comp-enable-subr-trampolines)
+(defvar comp-enable-subr-trampolines)
+
(defun buttercup--spy-on-and-call-replacement (spy fun)
"Replace the function in symbol SPY with a spy calling FUN."
(let ((orig-function (and (fboundp spy) (symbol-function spy))))
(when (buttercup--add-cleanup (lambda ()
(fset spy orig-function)))
- (fset spy (buttercup--make-spy fun)))))
+ ;; Disable subr trampoline generation around the fset call.
+ ;; Redefining certain primitives causes trampoline compilation
+ ;; to fail because the trampoline compiler itself depends on
+ ;; primitives that may have just been redefined.
+ ;; See <https://github.com/jorgenschaefer/emacs-buttercup/issues/230>
+ ;; and <https://debbugs.gnu.org/61880>.
+ (let ((native-comp-enable-subr-trampolines nil)
+ (comp-enable-subr-trampolines nil))
+ (fset spy (buttercup--make-spy fun))))))
(defun buttercup--make-spy (fun)
"Create a new spy function wrapping FUN and tracking every call to itself."
@@ -1343,24 +1354,13 @@ responsibility to ensure ARG is a command."
Should always be set to a value that is not `listp', except while
in a `buttercup-with-cleanup' environment.")
-(defvar native-comp-enable-subr-trampolines)
-(defvar comp-enable-subr-trampolines)
-
(defmacro buttercup-with-cleanup (&rest body)
"Execute BODY, cleaning spys and the rest afterwards."
- `(,@(if (fboundp 'with-suppressed-warnings)
- '(with-suppressed-warnings ((obsolete comp-enable-subr-trampolines)))
- '(progn))
- (let ((buttercup--cleanup-functions nil)
- ;; Redefining certain primitive's trampolines will cause problems,
- ;; see https://github.com/jorgenschaefer/emacs-buttercup/issues/230 and
- ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61880
- (comp-enable-subr-trampolines nil)
- (native-comp-enable-subr-trampolines nil))
- (unwind-protect (progn ,@body)
- (dolist (fun buttercup--cleanup-functions)
- (ignore-errors
- (funcall fun)))))))
+ `(let ((buttercup--cleanup-functions nil))
+ (unwind-protect (progn ,@body)
+ (dolist (fun buttercup--cleanup-functions)
+ (ignore-errors
+ (funcall fun))))))
(defun buttercup--add-cleanup (function)
"Register FUNCTION for cleanup in `buttercup-with-cleanup'."
base-commit: cc5a2ab7c7f18aaaf525fac61fe59bae5ad018dd
--
2.52.0

View File

@@ -1,40 +0,0 @@
diff --git a/test/mke2fs.dump b/test/mke2fs.dump
index 8e63662..0c25798 100644
--- a/test/mke2fs.0.dump
+++ b/test/mke2fs.0.dump
@@ -11,7 +11,7 @@
Inode count: 8192
Block count: 32768
Reserved block count: 1638
-Free blocks: 26568
+Free blocks: 26566
Free inodes: 8141
First block: 1
Block size: 1024
@@ -29,7 +29,7 @@
Maximum mount count: -1
Last checked: Sat Jan 1 00:00:00 2000
Check interval: 0 (<none>)
-Lifetime writes: 141 kB
+Lifetime writes: 143 kB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
@@ -51,13 +51,13 @@
Journal start: 0
-Group 0: (Blocks 1-8192) csum 0x74a0 [ITABLE_ZEROED]
+Group 0: (Blocks 1-8192) csum 0x3f30 [ITABLE_ZEROED]
Primary superblock at 1, Group descriptors at 2-2
- Block bitmap at 3 (+2), csum 0x16cec4db
+ Block bitmap at 3 (+2), csum 0x8d67cdef
Inode bitmap at 7 (+6), csum 0xb1052088
Inode table at 11-522 (+10)
- 6093 free blocks, 1997 free inodes, 18 directories, 1997 unused inodes
- Free blocks: 2100-8192
+ 6091 free blocks, 1997 free inodes, 18 directories, 1997 unused inodes
+ Free blocks: 2102-8192
Free inodes: 52-2048
Group 1: (Blocks 8193-16384) csum 0x8fde [INODE_UNINIT, BLOCK_UNINIT, ITABLE_ZEROED]
Backup superblock at 8193, Group descriptors at 8194-8194

View File

@@ -1,32 +0,0 @@
Upstream-status: Not presented upstream.
From a4eb7d1f2cbd02132a9f5512f1294182576d4653 Mon Sep 17 00:00:00 2001
From: Janneke Nieuwenhuizen <janneke@gnu.org>
Date: Fri, 8 Nov 2024 11:47:49 +0100
Subject: [PATCH] osdep/hurd: Support the 64bit Hurd.
Content-Transfer-Encoding: 8bit
Content-Type: text/plain; charset=UTF-8
* grub-core/osdep/hurd/getroot.c (grub_util_find_hurd_root_device):
Use mach_msg_type_number_t instead of size_t.
---
grub-core/osdep/hurd/getroot.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/grub-core/osdep/hurd/getroot.c b/grub-core/osdep/hurd/getroot.c
index 0efefdab4..b849700e6 100644
--- a/grub-core/osdep/hurd/getroot.c
+++ b/grub-core/osdep/hurd/getroot.c
@@ -58,7 +58,7 @@ grub_util_find_hurd_root_device (const char *path)
file_t file;
error_t err;
char *argz = NULL, *name = NULL, *ret;
- size_t argz_len = 0;
+ mach_msg_type_number_t argz_len = 0;
int i;
file = file_name_lookup (path, 0, 0);
--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com | Avatar® https://AvatarAcademy.com

View File

@@ -0,0 +1,46 @@
From 7d7c9ce06837f20d5585f1bc28a47701d12cf8ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= <sebastian@centricular.com>
Date: Sun, 1 Mar 2026 10:53:21 +0200
Subject: [PATCH] glcolorconvert: Fix NULL pointer dereference on buffers
without video meta
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4935
---
.../gst-libs/gst/gl/gstglcolorconvert.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/gst-libs/gst/gl/gstglcolorconvert.c b/gst-libs/gst/gl/gstglcolorconvert.c
index f2dc2dc7bbb..c13b4df69de 100644
--- a/gst-libs/gst/gl/gstglcolorconvert.c
+++ b/gst-libs/gst/gl/gstglcolorconvert.c
@@ -3428,10 +3428,12 @@ _init_convert (GstGLColorConvert * convert)
}
GstVideoMeta *v_meta = gst_buffer_get_video_meta (convert->inbuf);
- if (v_meta->width != convert->priv->padded_width
- || v_meta->height != convert->priv->padded_height) {
- gdouble padded_width = v_meta->width;
- gdouble padded_height = v_meta->height;
+ if ((v_meta && (v_meta->width != convert->priv->padded_width
+ || v_meta->height != convert->priv->padded_height)) ||
+ (!v_meta && (convert->in_info.width != convert->priv->padded_width ||
+ convert->in_info.height != convert->priv->padded_height))) {
+ gdouble padded_width = v_meta ? v_meta->width : convert->in_info.width;
+ gdouble padded_height = v_meta ? v_meta->height : convert->in_info.height;
gdouble display_width = GST_VIDEO_INFO_WIDTH (&convert->in_info);
gdouble display_height = GST_VIDEO_INFO_HEIGHT (&convert->in_info);
@@ -3449,8 +3451,8 @@ _init_convert (GstGLColorConvert * convert)
crop_vertices, GL_STATIC_DRAW);
gl->BindBuffer (GL_ARRAY_BUFFER, 0);
- convert->priv->padded_width = v_meta->width;
- convert->priv->padded_height = v_meta->height;
+ convert->priv->padded_width = padded_width;
+ convert->priv->padded_height = padded_height;
}
gl->BindTexture (GL_TEXTURE_2D, 0);
--
GitLab

View File

@@ -0,0 +1,90 @@
From f30cc463a948260088b496c3609dd91c83c0ce1b Mon Sep 17 00:00:00 2001
From: Brice Goglin <Brice.Goglin@inria.fr>
Date: Mon, 16 Feb 2026 15:00:53 +0100
Subject: [PATCH] configure: add --with-opencl=<dir>
For non-ROCm non-CUDA installs.
Thanks to Romain Garbage for the suggestion.
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
(cherry picked from commit 462eff5a4541dfcb3db15034490c796c4f1d8ec6)
---
config/hwloc.m4 | 18 +++++++++++++++---
config/hwloc_internal.m4 | 13 ++++++++++++-
2 files changed, 27 insertions(+), 4 deletions(-)
diff --git a/config/hwloc.m4 b/config/hwloc.m4
index e0057e8e5..4a26a7ec0 100644
--- a/config/hwloc.m4
+++ b/config/hwloc.m4
@@ -1,7 +1,7 @@
dnl -*- Autoconf -*-
dnl
dnl SPDX-License-Identifier: BSD-3-Clause
-dnl Copyright © 2009-2025 Inria. All rights reserved.
+dnl Copyright © 2009-2026 Inria. All rights reserved.
dnl Copyright © 2009-2012, 2015-2017, 2020, 2023, 2025 Université Bordeaux
dnl Copyright © 2004-2005 The Trustees of Indiana University and Indiana
dnl University Research and Technology
@@ -1365,6 +1365,18 @@ return rsmi_init(0);
echo "**** OpenCL configuration"
hwloc_opencl_happy=yes
+
+ if test "x$with_opencl" != x -a "x$with_opencl" != xyes; then
+ opencl_dir=$with_opencl
+ AC_MSG_NOTICE([using custom OpenCL install path $opencl_dir ...])
+ else
+ AC_MSG_NOTICE([assuming OpenCL is installed in standard directories ...])
+ fi
+ if test "x$opencl_dir" != x; then
+ HWLOC_OPENCL_CPPFLAGS="-I$opencl_dir/include/"
+ HWLOC_OPENCL_LDFLAGS="-L$opencl_dir/lib/"
+ fi
+
case ${target} in
*-*-darwin*)
# On Darwin, only use the OpenCL framework
@@ -1387,8 +1399,8 @@ return clGetDeviceIDs(0, 0, 0, NULL, NULL);
;;
*)
# On Others, look for OpenCL at normal locations
- HWLOC_OPENCL_CPPFLAGS="$HWLOC_CUDA_COMMON_CPPFLAGS"
- HWLOC_OPENCL_LDFLAGS="$HWLOC_CUDA_COMMON_LDFLAGS"
+ HWLOC_OPENCL_CPPFLAGS="$HWLOC_OPENCL_CPPFLAGS $HWLOC_CUDA_COMMON_CPPFLAGS"
+ HWLOC_OPENCL_LDFLAGS="$HWLOC_OPENCL_LDFLAGS $HWLOC_CUDA_COMMON_LDFLAGS"
if test "x$rocm_dir" != x; then
if test -d "$rocm_dir/include/CL"; then
HWLOC_OPENCL_CPPFLAGS="$HWLOC_OPENCL_CPPFLAGS -I$rocm_dir/include/"
diff --git a/config/hwloc_internal.m4 b/config/hwloc_internal.m4
index da6505e91..1135a245f 100644
--- a/config/hwloc_internal.m4
+++ b/config/hwloc_internal.m4
@@ -1,7 +1,7 @@
dnl -*- Autoconf -*-
dnl
dnl SPDX-License-Identifier: BSD-3-Clause
-dnl Copyright © 2010-2025 Inria. All rights reserved.
+dnl Copyright © 2010-2026 Inria. All rights reserved.
dnl Copyright © 2009, 2011 Université Bordeaux
dnl Copyright © 2004-2005 The Trustees of Indiana University and Indiana
dnl University Research and Technology
@@ -147,6 +147,17 @@ AC_DEFUN([HWLOC_DEFINE_ARGS],[
[AC_MSG_ERROR([--with-amdgpu=<dir> missing the installation directory])])]
)
+ # OpenCL
+ AC_ARG_ENABLE([opencl],
+ AS_HELP_STRING([--disable-opencl],
+ [Disable the OpenCL device discovery]))
+ AC_ARG_WITH([opencl],
+ AS_HELP_STRING([--with-opencl=<dir>],
+ [Specify the OpenCL installation directory]),
+ [AS_IF([test "x$withval" = xyes -o "x$withval" = x],
+ [AC_MSG_ERROR([--with-opencl=<dir> missing the installation directory])])]
+ )
+
# LevelZero
AC_ARG_ENABLE([levelzero],
AS_HELP_STRING([--disable-levelzero],

View File

@@ -1,75 +0,0 @@
Uptream-status: https://github.com/YosysHQ/nextpnr/pull/1480
diff --git a/gui/CMakeLists.txt b/gui/CMakeLists.txt
index ff5d9208..c554cc96 100644
--- a/gui/CMakeLists.txt
+++ b/gui/CMakeLists.txt
@@ -46,12 +46,42 @@ target_include_directories(nextpnr-${target}-gui PUBLIC
${CMAKE_CURRENT_SOURCE_DIR}
)
+# Detect whether imgui/qtimgui packages are available from the system.
+find_path(IMGUI_INCLUDE_DIR NAMES imgui.h PATH_SUFFIXES imgui)
+find_path(QTIMGUI_INCLUDE_DIR NAMES QtImGui.h PATH_SUFFIXES qtimgui)
+find_library(IMGUI_LIB NAMES imgui)
+find_library(QTIMGUI_LIB NAMES qt_imgui_widgets)
+if (IMGUI_INCLUDE_DIR AND IMGUI_LIB)
+ message("Using system imgui library:
+ IMGUI_INCLUDE_DIR=${IMGUI_INCLUDE_DIR}
+ IMGUI_LIB=${IMGUI_LIB}")
+else()
+ message("Using bundled imgui library")
+ set(IMGUI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/3rdparty/imgui)
+ set(IMGUI_SOURCES
+ ../3rdparty/imgui/imgui_widgets.cpp
+ ../3rdparty/imgui/imgui_draw.cpp
+ ../3rdparty/imgui/imgui.cpp
+ ../3rdparty/imgui/imgui_demo.cpp)
+endif()
+if (QTIMGUI_INCLUDE_DIR AND QTIMGUI_LIB)
+ message("Using system qtimgui library:
+ QTIMGUI_INCLUDE_DIR=${QTIMGUI_INCLUDE_DIR}
+ QTIMGUI_LIB=${QTIMGUI_LIB}")
+else()
+ message("Using bundled qtimgui library")
+ set(QTIMGUI_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/3rdparty/qtimgui)
+ set(QTIMGUI_SOURCES
+ ../3rdparty/qtimgui/ImGuiRenderer.cpp
+ ../3rdparty/qtimgui/QtImGui.cpp)
+endif()
+
target_include_directories(nextpnr-${target}-gui PRIVATE
${CMAKE_SOURCE_DIR}/frontend
${CMAKE_SOURCE_DIR}/json
${CMAKE_SOURCE_DIR}/3rdparty/QtPropertyBrowser/src
- ${CMAKE_SOURCE_DIR}/3rdparty/imgui
- ${CMAKE_SOURCE_DIR}/3rdparty/qtimgui
+ ${IMGUI_INCLUDE_DIR}
+ ${QTIMGUI_INCLUDE_DIR}
)
target_link_libraries(nextpnr-${target}-gui PUBLIC
@@ -77,14 +107,17 @@ if (BUILD_PYTHON)
../3rdparty/python-console/ParseMessage.cpp
../3rdparty/python-console/modified/pyredirector.cc
../3rdparty/python-console/modified/pyinterpreter.cc
- ../3rdparty/imgui/imgui_widgets.cpp
- ../3rdparty/imgui/imgui_draw.cpp
- ../3rdparty/imgui/imgui.cpp
- ../3rdparty/imgui/imgui_demo.cpp
- ../3rdparty/qtimgui/ImGuiRenderer.cpp
- ../3rdparty/qtimgui/QtImGui.cpp
+ ${IMGUI_SOURCES}
+ ${QTIMGUI_SOURCES}
)
+ if (IMGUI_LIB)
+ target_link_libraries(nextpnr-${target}-gui PRIVATE ${IMGUI_LIB})
+ endif()
+ if (QTIMGUI_LIB)
+ target_link_libraries(nextpnr-${target}-gui PRIVATE ${QTIMGUI_LIB})
+ endif()
+
target_include_directories(nextpnr-${target}-gui PRIVATE
../3rdparty/python-console
../3rdparty/python-console/modified

View File

@@ -1,89 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-07
License: ASL2.0
Subject: Use libc::flock instead of unstable std File::try_lock().
The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>
and is not yet stable in old Rust versions like Rust 1.88.
diff -ruN a/codex-rs/arg0/Cargo.toml b/codex-rs/arg0/Cargo.toml
--- a/codex-rs/arg0/Cargo.toml
+++ b/codex-rs/arg0/Cargo.toml
@@ -17,5 +17,6 @@
codex-core = { workspace = true }
codex-linux-sandbox = { workspace = true }
dotenvy = { workspace = true }
+libc = { workspace = true }
tempfile = { workspace = true }
tokio = { workspace = true, features = ["rt-multi-thread"] }
diff -ruN a/codex-rs/arg0/src/lib.rs b/codex-rs/arg0/src/lib.rs
--- a/codex-rs/arg0/src/lib.rs
+++ b/codex-rs/arg0/src/lib.rs
@@ -5,6 +5,8 @@
use codex_core::CODEX_APPLY_PATCH_ARG1;
#[cfg(unix)]
+use std::os::unix::io::AsRawFd;
+#[cfg(unix)]
use std::os::unix::fs::symlink;
use tempfile::TempDir;
@@ -13,6 +15,18 @@
const MISSPELLED_APPLY_PATCH_ARG0: &str = "applypatch";
const LOCK_FILENAME: &str = ".lock";
+// FIXME: Remove this helper when Rust provides stable file locking API.
+// The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
+#[cfg(unix)]
+fn try_lock_exclusive(file: &File) -> std::io::Result<()> {
+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX | libc::LOCK_NB) };
+ if ret == 0 {
+ Ok(())
+ } else {
+ Err(std::io::Error::last_os_error())
+ }
+}
+
/// Keeps the per-session PATH entry alive and locked for the process lifetime.
pub struct Arg0PathEntryGuard {
_temp_dir: TempDir,
@@ -216,7 +230,7 @@
.create(true)
.truncate(false)
.open(&lock_path)?;
- lock_file.try_lock()?;
+ try_lock_exclusive(&lock_file)?;
for filename in &[
APPLY_PATCH_ARG0,
@@ -307,10 +321,10 @@
Err(err) => return Err(err),
};
- match lock_file.try_lock() {
+ match try_lock_exclusive(&lock_file) {
Ok(()) => Ok(Some(lock_file)),
- Err(std::fs::TryLockError::WouldBlock) => Ok(None),
- Err(err) => Err(err.into()),
+ Err(ref e) if e.raw_os_error() == Some(libc::EWOULDBLOCK) => Ok(None),
+ Err(err) => Err(err),
}
}
@@ -318,6 +332,7 @@
mod tests {
use super::LOCK_FILENAME;
use super::janitor_cleanup;
+ use super::try_lock_exclusive;
use std::fs;
use std::fs::File;
use std::path::Path;
@@ -350,7 +365,7 @@
let dir = root.path().join("locked");
fs::create_dir(&dir)?;
let lock_file = create_lock(&dir)?;
- lock_file.try_lock()?;
+ try_lock_exclusive(&lock_file)?;
janitor_cleanup(root.path())?;

View File

@@ -1,91 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-01-25
License: ASL2.0
Subject: Use libc::flock instead of unstable std File::try_lock()/try_lock_shared().
The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
and is not yet stable in old Rust versions like Rust 1.85.
The file_lock feature was stabilized after Rust 1.88, but we only have 1.88.
diff -u a/codex-rs/core/src/message_history.rs b/codex-rs/core/src/message_history.rs
--- a/codex-rs/core/src/message_history.rs
+++ b/codex-rs/core/src/message_history.rs
@@ -41,6 +41,8 @@
use std::os::unix::fs::OpenOptionsExt;
#[cfg(unix)]
use std::os::unix::fs::PermissionsExt;
+#[cfg(unix)]
+use std::os::unix::io::AsRawFd;
/// Filename that stores the message history inside `~/.codex`.
const HISTORY_FILENAME: &str = "history.jsonl";
@@ -51,6 +53,28 @@
const MAX_RETRIES: usize = 10;
const RETRY_SLEEP: Duration = Duration::from_millis(100);
+// FIXME: Remove these helpers when Rust provides stable file locking API
+// The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
+#[cfg(unix)]
+fn try_lock_exclusive(file: &File) -> std::io::Result<()> {
+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX | libc::LOCK_NB) };
+ if ret == 0 {
+ Ok(())
+ } else {
+ Err(std::io::Error::last_os_error())
+ }
+}
+
+#[cfg(unix)]
+fn try_lock_shared(file: &File) -> std::io::Result<()> {
+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_SH | libc::LOCK_NB) };
+ if ret == 0 {
+ Ok(())
+ } else {
+ Err(std::io::Error::last_os_error())
+ }
+}
+
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq)]
pub struct HistoryEntry {
pub session_id: String,
@@ -126,7 +150,7 @@
tokio::task::spawn_blocking(move || -> Result<()> {
// Retry a few times to avoid indefinite blocking when contended.
for _ in 0..MAX_RETRIES {
- match history_file.try_lock() {
+ match try_lock_exclusive(&history_file) {
Ok(()) => {
// While holding the exclusive lock, write the full line.
// We do not open the file with `append(true)` on Windows, so ensure the
@@ -137,10 +161,10 @@
enforce_history_limit(&mut history_file, history_max_bytes)?;
return Ok(());
}
- Err(std::fs::TryLockError::WouldBlock) => {
+ Err(ref e) if e.kind() == std::io::ErrorKind::WouldBlock => {
std::thread::sleep(RETRY_SLEEP);
}
- Err(e) => return Err(e.into()),
+ Err(e) => return Err(e),
}
}
@@ -341,7 +365,7 @@
// Open & lock file for reading using a shared lock.
// Retry a few times to avoid indefinite blocking.
for _ in 0..MAX_RETRIES {
- let lock_result = file.try_lock_shared();
+ let lock_result = try_lock_shared(&file);
match lock_result {
Ok(()) => {
@@ -368,7 +392,7 @@
// Not found at requested offset.
return None;
}
- Err(std::fs::TryLockError::WouldBlock) => {
+ Err(ref e) if e.kind() == std::io::ErrorKind::WouldBlock => {
std::thread::sleep(RETRY_SLEEP);
}
Err(e) => {

View File

@@ -1,49 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-01-25
License: ASL2.0
Subject: Use libc::flock instead of unstable std File::lock().
The file_lock feature is tracked at <https://github.com/rust-lang/rust/issues/130994>.
and is not yet stable in old Rust versions like Rust 1.85.
The file_lock feature was stabilized after Rust 1.88, but we only have 1.88.
diff -u a/codex-rs/execpolicy/Cargo.toml b/codex-rs/execpolicy/Cargo.toml
--- a/codex-rs/execpolicy/Cargo.toml
+++ b/codex-rs/execpolicy/Cargo.toml
@@ -19,6 +19,7 @@
[dependencies]
anyhow = { workspace = true }
clap = { workspace = true, features = ["derive"] }
+libc = { workspace = true }
multimap = { workspace = true }
serde = { workspace = true, features = ["derive"] }
serde_json = { workspace = true }
diff -u a/codex-rs/execpolicy/src/amend.rs b/codex-rs/execpolicy/src/amend.rs
--- a/codex-rs/execpolicy/src/amend.rs
+++ b/codex-rs/execpolicy/src/amend.rs
@@ -1,4 +1,5 @@
use std::fs::OpenOptions;
+use std::os::unix::io::AsRawFd;
use std::io::Read;
use std::io::Seek;
use std::io::SeekFrom;
@@ -100,10 +101,14 @@
path: policy_path.to_path_buf(),
source,
})?;
- file.lock().map_err(|source| AmendError::LockPolicyFile {
- path: policy_path.to_path_buf(),
- source,
- })?;
+ // FIXME: Use file.lock() when Rust 1.91 is available
+ let ret = unsafe { libc::flock(file.as_raw_fd(), libc::LOCK_EX) };
+ if ret != 0 {
+ return Err(AmendError::LockPolicyFile {
+ path: policy_path.to_path_buf(),
+ source: std::io::Error::last_os_error(),
+ });
+ }
let len = file
.metadata()

View File

@@ -0,0 +1,56 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-27
License: ASL2.0
Subject: Use @SHELL@ placeholder for shebangs in embedded test scripts.
Tests that create and execute temporary shell scripts at runtime use
a hardcoded "#!/bin/sh" shebang. Replace with @SHELL@ so the build
phase can substitute the actual store path.
Also change assertions to print the actual error on failure.
diff -ruN a/codex-rs/rmcp-client/src/program_resolver.rs b/codex-rs/rmcp-client/src/program_resolver.rs
--- a/codex-rs/rmcp-client/src/program_resolver.rs
+++ b/codex-rs/rmcp-client/src/program_resolver.rs
@@ -82,7 +82,7 @@
cmd.envs(&env.mcp_env);
let output = cmd.output().await;
- assert!(output.is_ok(), "Unix should execute scripts directly");
+ output.expect("Unix should execute scripts directly");
Ok(())
}
@@ -134,10 +134,7 @@
cmd.envs(&env.mcp_env);
let output = cmd.output().await;
- assert!(
- output.is_ok(),
- "Resolved program should execute successfully"
- );
+ output.expect("Resolved program should execute successfully");
Ok(())
}
@@ -185,7 +182,7 @@
#[cfg(unix)]
{
let file = dir.join(Self::TEST_PROGRAM);
- fs::write(&file, "#!/bin/sh\nexit 0")?;
+ fs::write(&file, "#!@SHELL@\nexit 0")?;
Self::set_executable(&file)?;
}
diff -ruN a/codex-rs/tui/src/external_editor.rs b/codex-rs/tui/src/external_editor.rs
--- a/codex-rs/tui/src/external_editor.rs
+++ b/codex-rs/tui/src/external_editor.rs
@@ -159,7 +159,7 @@
let dir = tempdir().unwrap();
let script_path = dir.path().join("edit.sh");
- fs::write(&script_path, "#!/bin/sh\nprintf \"edited\" > \"$1\"\n").unwrap();
+ fs::write(&script_path, "#!@SHELL@\nprintf \"edited\" > \"$1\"\n").unwrap();
let mut perms = fs::metadata(&script_path).unwrap().permissions();
perms.set_mode(0o755);
fs::set_permissions(&script_path, perms).unwrap();

View File

@@ -0,0 +1,20 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-03-05
License: ASL2.0
Subject: Increase per-event test timeout from 10 to 30 seconds.
In resource-constrained build environments, image processing (resize,
base64-encode, JSON serialization) can exceed 10 seconds under CPU
contention, causing intermittent test failures.
diff -ruN a/codex-rs/core/tests/common/lib.rs b/codex-rs/core/tests/common/lib.rs
--- a/codex-rs/core/tests/common/lib.rs
+++ b/codex-rs/core/tests/common/lib.rs
@@ -174,7 +174,7 @@
loop {
// Allow a bit more time to accommodate async startup work (e.g. config IO, tool discovery)
- let ev = timeout(wait_time.max(Duration::from_secs(10)), codex.next_event())
+ let ev = timeout(wait_time.max(Duration::from_secs(30)), codex.next_event())
.await
.expect("timeout waiting for event")
.expect("stream ended unexpectedly");

View File

@@ -0,0 +1,23 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-25
License: ASL2.0
Subject: Add version to codex-protocol dependency in windows-sandbox-rs.
The codex-protocol dependency in windows-sandbox-rs uses the TOML table
format with an explicit path, rather than workspace inheritance
(workspace = true). Because it is not an intra-workspace dependency,
cargo cannot resolve its version from the workspace root Cargo.toml
and cargo package fails with "dependency `codex-protocol` does not
specify a version".
diff -u a/codex-rs/windows-sandbox-rs/Cargo.toml b/codex-rs/windows-sandbox-rs/Cargo.toml
--- a/codex-rs/windows-sandbox-rs/Cargo.toml
+++ b/codex-rs/windows-sandbox-rs/Cargo.toml
@@ -38,6 +38,7 @@
[dependencies.codex-protocol]
package = "codex-protocol"
path = "../protocol"
+version = "0.0.0"
[dependencies.rand]
default-features = false

View File

@@ -236,7 +236,7 @@ it.")
(define-public trealla
(package
(name "trealla")
(version "2.91.3")
(version "2.91.5")
(source
(origin
(method git-fetch)
@@ -245,7 +245,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
(base32 "1ypwpxgcjz4gxb77pzjj1b202yr083cwj4dwp9m0vw0ynqgsl6va"))
(base32 "1ih4jx652nnw1cyvsjmz8dmmcylrwl6lmczav9r8m4z7n6flgkql"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs

View File

@@ -938,6 +938,30 @@ files (.Z), such as the ones created by Unix's shell tool compress.")
Python.")
(license license:bsd-3)))
(define-public python-zipfile2
(package
(name "python-zipfile2")
(version "0.0.12")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/itziakos/zipfile2/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hmq33r3ffrrvm5nggsp69cjdbgjbwn6zbcrs2rhmb8pds0h81q7"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest
python-setuptools))
(home-page "https://github.com/itziakos/zipfile2/")
(synopsis "Improved @code{ZipFile} Python class")
(description
"Zipfile2 is a backward compatible replacement to @code{ZipFile}. It
provides handling of symlinks, and exception management.")
(license license:psfl)))
(define-public python-zipp
(package
(name "python-zipp")

View File

@@ -616,6 +616,28 @@ using NumPy-like idioms.")
line drawing algorithm}.")
(license license:expat)))
(define-public python-catppuccin
(package
(name "python-catppuccin")
(version "2.5.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "catppuccin" version))
(sha256
(base32 "0d38gjn6661pb9jl4bg6l698aw4llir44xacrg8nj8xw6nzz6d9h"))))
(build-system pyproject-build-system)
(native-inputs
(list python-hatchling python-pytest
;; These are optional dependencies but required for tests.
python-matplotlib python-pygments python-rich))
(home-page "https://github.com/catppuccin/python")
(synopsis "Pastel palette for Python libraries")
(description "Catppuccin for Python is a soothing pastel pallete for Python
libraries. It aims to be the middle ground between low and high contrast
themes. It also includes themes for IPython, Matplotlib, Pygments and Rich.")
(license license:expat)))
(define-public python-calmjs-parse
(package
(name "python-calmjs-parse")
@@ -4014,14 +4036,16 @@ commits.")
(define-public python-mkdocs-material
(package
(name "python-mkdocs-material")
(version "7.1.3")
(version "7.3.6")
(source
(origin
(method url-fetch)
(uri
(pypi-uri "mkdocs-material" version))
(method git-fetch)
(uri (git-reference
(url "https://github.com/squidfunk/mkdocs-material")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ci9xiasq9nfn09v11m7p49vzazdbgslw7rpzjd6y3hsmn9vljz3"))
(base32 "06ghwidcdqimx6jc6yz1zdbyc8rqklkwj5h5cxsihazh0f52fivk"))
(modules '((guix build utils)))
(snippet
;; TODO There are still bundled assets and minified JS.
@@ -4052,8 +4076,8 @@ commits.")
""))))
(add-after 'ensure-no-mtimes-pre-1980 'inject-javascript-assets
(lambda* (#:key inputs #:allow-other-keys)
(mkdir-p "material/assets/javascripts/min/")
(with-directory-excursion "material/assets/javascripts/min/"
(mkdir-p "material/assets/javascripts/lunr/min")
(with-directory-excursion "material/assets/javascripts/lunr/min"
(symlink-js inputs))))
(add-after 'wrap 'replace-javascript-assets
(lambda* (#:key inputs outputs #:allow-other-keys)
@@ -4061,9 +4085,9 @@ commits.")
(js-assets (string-append site "/material/"
"assets/javascripts")))
(with-directory-excursion js-assets
(delete-file-recursively "min")
(mkdir-p "min")
(with-directory-excursion "min"
(delete-file-recursively "lunr/min")
(mkdir-p "lunr/min")
(with-directory-excursion "lunr/min"
(symlink-js inputs))))))))))
(native-inputs (list python-setuptools))
(inputs (list js-lunr-ar
@@ -17919,24 +17943,49 @@ JSON Reference and JSON Pointer.")
(define-public python-fastbencode
(package
(name "python-fastbencode")
(version "0.3.2") ;the last non Rust version
(version "0.3.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fastbencode" version))
(modules '((guix build utils)))
;; Delete pre-generated Cython C files.
(snippet '(for-each delete-file (find-files "." "\\.c$")))
(method git-fetch)
(uri (git-reference
(url "https://github.com/breezy-team/fastbencode")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1daal7xgsl2sjxq8pcilcas9wd9j9796wd4rlkhrvv5h0k2k4k53"))))
(base32 "0d4sd1c2yv85spxx2gvi2fm0avlgpnb7nfkvw7hpxlx6qlaqi4ad"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-backend #~'unittest
#:test-flags #~(list "fastbencode.tests.test_suite")))
#:test-flags #~(list "tests.test_suite")
#:imported-modules (append %cargo-build-system-modules
%pyproject-build-system-modules)
#:modules '(((guix build cargo-build-system) #:prefix cargo:)
(guix build pyproject-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:cargo-target #$(cargo-triplet)
args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums)))))))
(inputs (cargo-inputs 'fastbencode))
(native-inputs
(list python-cython
python-setuptools))
(append
(list python-setuptools-rust
rust
`(,rust "cargo"))
(or (and=> (%current-target-system)
(compose list make-rust-sysroot))
'())))
(home-page "https://github.com/breezy-team/fastbencode")
(synopsis "Python Bencode (de)serializer with optional fast C extensions")
(description
@@ -18192,40 +18241,6 @@ how many previous alarms had gone off, and if there is music playing at the
time.")
(license license:expat)))
(define-public python-simplesat
(package
(name "python-simplesat")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/enthought/sat-solver")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0z44pi8yb6pvc9bisl3qnn3glj7ir0ad2j4gd4jfg2kxvwvi0w0b"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags #~(list "--ignore=old")))
(propagated-inputs
(list python-attrs
python-okonomiyaki
python-six))
(native-inputs
(list python-mock
python-pytest
python-pyyaml
python-setuptools))
(home-page "https://github.com/enthought/sat-solver")
(synopsis
"@acronym{SAT, Boolean Satisfiability Problem} dependency handling")
(description
"This package provides a prototype Python implementation for SAT-based
problems.")
(license license:bsd-3)))
(define-public python-haas
;; A recent revision is required to avoid obsoleted dependencies.
(let ((commit "e9c45e88b682c9129ea0971ba31671429495de2c")
@@ -18257,27 +18272,6 @@ with Python's built-in unittest test-cases, but supports more advanced
features, such as project-specific plugins.")
(license license:bsd-3))))
(define-public python-zipfile2
(package
(name "python-zipfile2")
(version "0.0.12")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/itziakos/zipfile2/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hmq33r3ffrrvm5nggsp69cjdbgjbwn6zbcrs2rhmb8pds0h81q7"))))
(build-system pyproject-build-system)
(native-inputs (list python-setuptools python-pytest))
(home-page "https://github.com/itziakos/zipfile2/")
(synopsis "Improved @code{ZipFile} Python class")
(description "Zipfile2 is a backward compatible replacement to
@code{ZipFile}. It provides handling of symlinks, and exception management.")
(license license:psfl)))
(define-public python-okonomiyaki
(package
(name "python-okonomiyaki")
@@ -41263,17 +41257,19 @@ you do not want to store entirely on disk or on memory.")
(arguments
`(#:configure-flags '("PYTHON_VERSION=2")))))
(define-public python-yamlcore-0.0.2
;; This is a pinned version dependency for librelane
(define-public python-yamlcore
(package
(name "python-yamlcore")
(version "0.0.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "yamlcore" version))
(sha256
(base32
"0vwjiryrx58ycmlbv668izswda4jmdpw7g9cn6bsy5my3iabjblb"))))
(version "0.0.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/perlpunk/pyyaml-core")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03y7fabyky67cw4g71xcbwfdal79wxcnmr303qyllz21x2d4s5ac"))))
(build-system pyproject-build-system)
(native-inputs (list python-setuptools))
(inputs (list python-pyyaml))
@@ -41283,6 +41279,8 @@ you do not want to store entirely on disk or on memory.")
files.")
(license license:expat)))
(define-deprecated-package python-yamlcore-0.0.2 python-yamlcore)
(define-public shrinkwrap
(package
(name "shrinkwrap")

View File

@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2014, 2015, 2023, 2026 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2025 宋文武 <iyzsong@envs.net>
;;; Copyright © 2015, 2018-2021, 2023, 2025 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015-2019, 2024, 2025 Efraim Flashner <efraim@flashner.co.il>
@@ -36,6 +36,7 @@
;;; Copyright © 2025 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2024, 2026 Sughosha <sughosha@disroot.org>
;;; Copyright © 2025 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2025 Laura Kirsch <laurakirsch240406@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -102,6 +103,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages kde-sdk)
#:use-module (gnu packages libevent)
@@ -5524,6 +5526,38 @@ different kinds of sliders, and much more.")
;; textengines/mathml/qwt_mml_document.{cpp,h} is dual LGPL2.1/GPL3 (either).
license:lgpl2.1 license:gpl3))))
(define-public jkqtplotter
(package
(name "jkqtplotter")
(version "4.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jkriege2/JKQtPlotter")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yi80d8w4l69siia5rvdzakyzkm7vbpfk6ffcwc6vm6z0i58m9cl"))))
(build-system qt-build-system)
(inputs (list opencv qtsvg))
(arguments
(list
#:qtbase qtbase
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'delete-broken-binaries
(lambda _
(delete-file-recursively (string-append #$output "/bin")))))))
(home-page "https://jkriege2.github.io/JKQtPlotter/index.html")
(synopsis "Qt Plotting Library")
(description
"JKQTPlotter is a library of function and data plotter classes for Qt.
It includes a plotter widget and a LaTeX equation renderer and supports
a variety of graphs and charts.")
(license license:lgpl2.1+)))
(define-public dotherside
(package
(name "dotherside")

View File

@@ -20,6 +20,7 @@
;;; Copyright © 2025 Jordan Moore <lockbox@struct.foo>
;;; Copyright © 2025 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2025 Laura Kirsch <laurakirsch240406@gmail.com>
;;; Copyright © 2026 bdunahu <bdunahu@operationnull.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -831,6 +832,58 @@ library.")
devices that are supported by the SoapySDR library.")
(license license:expat)))
(define-public python-meshtastic
(package
(name "python-meshtastic")
(version "2.7.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/meshtastic/python")
(commit version)
(recursive? #t))) ;TODO: package meshtastic/protobufs subproject
(file-name (git-file-name name version))
(sha256
(base32 "0fdxlwdf1ga00wa7vbfvhhd0dpwcxakdlmrjs24zhd6pq5k7jicf"))))
(build-system pyproject-build-system)
(arguments
(list
;; tests: 220 passed, 3 skipped, 77 deselected
#:test-flags
;; requires pytap2 input, which is not in Guix
#~(list "-k not test_tunnel_tunnel_arg")))
(native-inputs
(list python-poetry-core
python-pytest))
;; unpackaged (optional) inputs: python-print-color, python-dash
;; python-pytap2, python-dash-bootstrap-components
(propagated-inputs
(list python-argcomplete
python-bleak
python-dotmap
python-packaging
python-pandas
python-pandas-stubs
python-protobuf
python-pypubsub
python-pyqrcode
python-pyserial
python-pyyaml
python-requests
python-tabulate
python-wcwidth))
(home-page "https://github.com/meshtastic/python")
(synopsis "Python library and CLI for talking to Meshtastic devices")
(description
"@url{https://meshtastic.org/,Meshtastic} Python is a small library which
provides an easy API for sending and receiving messages over mesh radios. It
provides access to any of the operations/data available in the device user
interface or the Android applications. Events are delivered using a
publish-subscribe model, and you can subscribe to only the message types you
are interested in.")
(license license:gpl3))) ;XXX: both python API and protobufs
(define-public qspectrumanalyzer
(package
(name "qspectrumanalyzer")

View File

@@ -325,6 +325,28 @@ acts as the performance backbone for a wide variety of compute
applications running on AMD GPUs.")
(license license:expat)))
(define-public rocm-validationsuite
(package
(name "rocm-validationsuite")
(version %rocm-version)
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ROCm/rocmvalidationsuite/")
(commit (string-append "rocm-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1l577sd88f4f46am6w81n7rbswx39zy602xbqrk3zqb156k14s2s"))))
(build-system cmake-build-system)
(inputs (list rocblas))
(home-page "https://rocm.docs.amd.com/projects/ROCmValidationSuite/")
(synopsis "ROCm system validation and diagnostics")
(description "ROCm monitor for stress testing, detection and
troubleshooting issues impacting AMD GPUS in HPC environments.")
(license license:expat)))
(define hipblaslt-supported-targets
(list "gfx1100"
"gfx1101"

View File

@@ -293,7 +293,7 @@ available to ROCm and show their properties.")
"19jyymisxiikphzmq6h8vy5cg0r5dz3lxr5wvdf44frb8wxr8vla"))))
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; Tests try to use git commit
(native-inputs (list git))
(native-inputs (list git-minimal/pinned))
(home-page "https://rocm.docs.amd.com/projects/ROCmCMakeBuildTools/")
(synopsis "ROCm cmake modules")
(description "ROCm cmake modules provides cmake modules for common build

View File

@@ -97,6 +97,7 @@
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
#:use-module (gnu packages ibus)
#:use-module (gnu packages icu4c)
@@ -697,6 +698,90 @@ Rust source code.")
through tools like `gdb`.")
(license license:gpl3)))
(define-public cocogitto
(package
(name "cocogitto")
(version "6.5.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "cocogitto" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0wpsvrws2lwy1kix0xfs5dqs8b7j5ixnaz2x25apfbnh6gf99vda"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "website")))))
(build-system cargo-build-system)
(arguments
(list
#:install-source? #f
#:cargo-test-flags
'(list "--"
;; Disable tests that depend on being run inside of the source repository
"--skip=conventional::changelog::release::test::should_get_a_release"
"--skip=git::hook::tests::add_all"
"--skip=git::hook::tests::add_pre_commit_hook"
"--skip=git::hook::tests::overwrite_pre_commit_hook"
"--skip=git::rev::cache::test::init_cache_ok"
"--skip=git::rev::revwalk::test::all_commits"
"--skip=git::rev::revwalk::test::from_previous_to_tag"
"--skip=git::rev::revwalk::test::from_tag_to_head"
"--skip=git::rev::revwalk::test::from_tag_to_tag_ok"
"--skip=git::rev::revwalk::test::get_release_range_integration_test"
"--skip=git::rev::revwalk::test::recursive_from_origin_to_head"
"--skip=cog_tests::changelog::get_changelog_range"
"--skip=cog_tests::commit::should_run_git_hooks")
#:modules '((guix build cargo-build-system)
(guix build utils)
(ice-9 match))
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'prepare-for-tests
(lambda _
;; The tests try to run git as if it were already set up.
(setenv "HOME" (getcwd))
(invoke "git" "config" "--global" "user.email" "git@example.com")
(invoke "git" "config" "--global" "user.name" "Guix")))
(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/cog")
(in-vicinity #$output "bin/cog"))))
(with-output-to-file (in-vicinity #$output path)
(lambda _
(invoke binary "generate-completions" shell))))))
'(("bash" . "share/bash-completion/completions/cog")
("elvish" . "share/elvish/lib/cog")
("fish" . "share/fish/vendor_completions.d/cog.fish")
("nu" . "share/nushell/vendor/autoload/cog")
("zsh" . "share/zsh/site-functions/_cog"))))))))
(native-inputs
(append (if (%current-target-system)
(list this-package)
'())
(list git-minimal
gnupg
openssh
pkg-config)))
(inputs (cons* libgit2-1.9
libssh2
openssl
zlib
(cargo-inputs 'cocogitto)))
(home-page "https://github.com/cocogitto/cocogitto")
(synopsis
"Set of CLI tools for the Conventional Commit and SemVer specifications")
(description
"This package provides Cocogitto, a set of CLI tools for the Conventional
Commit and SemVer specifications.")
(license license:expat)))
(define-public codeberg-cli
(package
(name "codeberg-cli")
@@ -751,49 +836,6 @@ through tools like `gdb`.")
"This package provides CLI Tool for codeberg similar to gh and glab.")
(license license:agpl3+)))
(define-public codex-acp
(package
(name "codex-acp")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zed-industries/codex-acp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "190sq6s6jfz8dkj1y8305r7x6ln86qqr2j1bnfjci7f1x2wyzmsj"))
(patches (search-patches "codex-acp-0.9.2-remove-patch-sections.patch"
"codex-acp-0.9.2-replace-result-flatten.patch"))))
(build-system cargo-build-system)
(arguments
(list
#:rust rust-1.88
#:install-source? #f
;; Skip doctests (--doc) because rustdoc is unavailable for non-default
;; Rust versions in Guix.
#:cargo-test-flags '(list "--lib" "--bins" "--tests")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-codex-deps
(lambda _
;; Rewrite git dependencies to use vendored sources from rust-codex
(substitute* "Cargo.toml"
(("git = \"https://github.com/zed-industries/codex\", branch = \"acp\"")
"version = \"0.0.0\"")))))))
(native-inputs (list pkg-config))
(inputs (cons* openssl sqlite `(,zstd "lib") (cargo-inputs 'codex-acp)))
(home-page "https://github.com/zed-industries/codex-acp")
(synopsis "ACP-compatible agent bridging Zed Codex with ACP clients")
(description
"This package provides an Agent Client Protocol (ACP) compatible agent
that bridges the Zed Codex runtime with ACP clients over stdio. It
supports multiple LLM providers through configuration in
@file{~/.codex/config.toml} and integrates with MCP servers for filesystem
operations.")
(license license:asl2.0)))
(define-public complgen
(package
(name "complgen")
@@ -1690,6 +1732,59 @@ replacement for i3status, written in pure Rust. It provides a way to display
bar. It is also compatible with sway.")
(license license:gpl3)))
(define-public ianny
(package
(name "ianny")
(version "2.1.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zefr0x/ianny")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14nmpz7nkjj2rr3g4f3npg8dd5b533wp73q90q4vgp06rf9mbyq8"))))
(build-system meson-build-system)
(arguments
(list
#:imported-modules `(,@%meson-build-system-modules
,@%cargo-build-system-modules)
#:modules '(((guix build cargo-build-system) #:prefix cargo:)
(guix build meson-build-system)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-for-build
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "meson.build"
(("/etc/xdg/autostart")
(string-append (assoc-ref outputs "out")
"/etc/xdg/autostart")))
(delete-file "Cargo.lock")))
;; The meson 'configure phase changes to a different directory and
;; we need it created before unpacking the crates.
(add-after 'configure 'prepare-cargo-build-system
(lambda args
(for-each
(lambda (phase)
(format #t "Running cargo phase: ~a~%" phase)
(apply (assoc-ref cargo:%standard-phases phase)
#:vendor-dir "vendor"
args))
'(unpack-rust-crates
configure
check-for-pregenerated-files
patch-cargo-checksums)))))))
(native-inputs (list pkg-config rust `(,rust "cargo")))
(inputs
(cons dbus (cargo-inputs 'ianny)))
(home-page "https://github.com/zefr0x/ianny")
(synopsis "RSI break timer for Wayland")
(description "Desktop utility that helps prevent repetitive strain injuries
by keeping track of usage patterns and periodically reminding the user to take
breaks.")
(license license:gpl3)))
(define-public iwmenu
(package
(name "iwmenu")
@@ -1783,7 +1878,7 @@ JSON viewer and jq filter editor.")
(define-public jujutsu
(package
(name "jujutsu")
(version "0.38.0")
(version "0.39.0")
(source
(origin
(method git-fetch)
@@ -1792,7 +1887,7 @@ JSON viewer and jq filter editor.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c3fgxvvf7lj5p8s7fzx1mnxbiigplmgfqn49szj3z51m74d0xhm"))))
(base32 "0c0n56b5y6wmyvcc18nhrfsmcavjlh2zwv9224lrcs6h602a5jdd"))))
(build-system cargo-build-system)
(arguments
(list
@@ -1802,6 +1897,7 @@ JSON viewer and jq filter editor.")
''("--"
"--skip=test_gerrit_upload::test_gerrit_upload_rejected_by_remote"
"--skip=test_git_push::test_git_push_rejected_by_remote"
"--skip=test_git::test_push_updates_with_options"
"--skip=test_util_command::test_util_exec_sets_env")
#:modules
'((guix build cargo-build-system)

File diff suppressed because it is too large Load Diff

View File

@@ -728,13 +728,7 @@ intelligence.")
(file-name (git-file-name name version))
(sha256
(base32 "0rwj1ykknng39mhzna3fw3rcl3vngynsjdcj1namgkvw91zd9dl7"))
;; TODO: Remove patches when Rust provides stable file locking API.
;; The file_lock feature is tracked at
;; <https://github.com/rust-lang/rust/issues/130994>.
(patches (search-patches "rust-codex-0.98.0-execpolicy-file-lock.patch"
"rust-codex-0.98.0-core-file-lock.patch"
"rust-codex-0.98.0-arg0-file-lock.patch"
"rust-codex-0.98.0-core-remove-self-dep.patch"))))
(patches (search-patches "rust-codex-0.98.0-core-remove-self-dep.patch"))))
(build-system cargo-build-system)
(arguments
(list
@@ -818,6 +812,110 @@ intelligence.")
and runtime for AI-assisted coding.")
(license license:asl2.0)))))
(define-public rust-codex-0.98.0
(hidden-package
(package
(name "rust-codex")
(version "0.98.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openai/codex")
(commit "82464689ce0ba8a3b2065e73a8aa0cfdf2ad0625")))
(file-name (git-file-name name version))
(sha256
(base32 "1mn322gbir4gn4y5jihdqg0wprjlnx771chyfmmm7ri7pnim1zmc"))
(modules '((guix build utils)))
(snippet '(begin
;;; These are JSON manifests with a dotslash
;;; shebang that download and run pre-built
;;; binaries (ripgrep, bash) at runtime.
(delete-file "codex-cli/bin/rg")
(delete-file "codex-rs/exec-server/tests/suite/bash")
;; Bundled bubblewrap source tree; includes a
;; compiled BPF blob (demos/flatpak.bpf).
(delete-file-recursively "codex-rs/vendor/bubblewrap")))
(patches (search-patches "rust-codex-0.98.0-core-remove-self-dep.patch"
"rust-codex-0.98.0-windows-sandbox-protocol-version.patch"
"rust-codex-0.98.0-test-shebangs.patch"))))
(build-system cargo-build-system)
(arguments
(list
#:skip-build? #t
#:cargo-package-crates
;; Order matters: dependencies must come before packages that need them
''("codex-async-utils" ; No internal deps
"codex-client" ; No internal deps
"codex-execpolicy" ; No internal deps
"codex-file-search" ; No internal deps
"codex-git" ; No internal deps
"codex-keyring-store" ; No internal deps
"codex-utils-absolute-path" ; No internal deps
"codex-utils-cache" ; No internal deps
"codex-utils-cargo-bin" ; No internal deps
"codex-utils-home-dir" ; No internal deps
"codex-utils-json-to-toml" ; No internal deps
"codex-utils-pty" ; No internal deps
"codex-utils-readiness" ; No internal deps
"codex-utils-string" ; No internal deps
"codex-utils-image" ; Depends on codex-utils-cache
"codex-apply-patch" ; Depends on codex-utils-cargo-bin
"codex-protocol" ; Depends on codex-git, codex-utils-*
"codex-windows-sandbox" ; Depends on codex-utils-absolute-path, codex-protocol
"codex-api" ; Depends on codex-client, codex-protocol
"codex-experimental-api-macros" ; Macro crate (must come before app-server-protocol)
"codex-app-server-protocol" ; Depends on codex-protocol, codex-experimental-api-macros
"codex-rmcp-client" ; Depends on codex-keyring-store, codex-protocol
"codex-otel" ; Depends on codex-app-server-protocol, codex-api
"codex-state" ; Depends on codex-protocol, codex-otel
"codex-core" ; Depends on many packages above
"codex-linux-sandbox" ; Depends on codex-core, codex-utils-absolute-path
"codex-arg0" ; Depends on codex-apply-patch, codex-core, codex-linux-sandbox
"codex-lmstudio" ; Depends on codex-core
"codex-login" ; Depends on codex-core
"codex-ollama" ; Depends on codex-core
"codex-common" ; Depends on codex-core, codex-lmstudio, codex-ollama
"codex-mcp-server" ; Depends on codex-core, codex-common
"codex-network-proxy") ; Depends on codex-core, rama
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir-to-workspace
(lambda _
(chdir "codex-rs")))
(add-after 'chdir-to-workspace 'patch-git-deps-to-vendor
(lambda _
(substitute* "Cargo.toml"
(("crossterm = \\{ git = [^}]+\\}")
"crossterm = { version = \"0.28.1\" }")
(("ratatui = \\{ git = [^}]+\\}")
"ratatui = { version = \"0.29.0\" }")
(("tokio-tungstenite = \\{ git = [^}]+\\}")
"tokio-tungstenite = { version = \"0.28.0\" }")
(("nucleo = \\{ git = [^}]+\\}")
"nucleo = { version = \"0.5.0\" }")
(("runfiles = \\{ git = [^}]+\\}")
"runfiles = { version = \"0.1.0\" }"))))
(add-after 'chdir-to-workspace 'add-version-to-workspace-deps
(lambda _
;; cargo package requires all dependencies to have versions.
;; Add version = "0.98.0" to internal path dependencies.
(let ((cargo-files (find-files "." "^Cargo\\.toml$")))
(substitute* cargo-files
(("(codex-[a-z0-9-]+) = \\{ path = " all name)
(string-append name " = { version = \"0.98.0\", path = "))
(("(codex-[a-z0-9-]+) = \\{ package = " all name)
(string-append name " = { version = \"0.98.0\", package = "))
(("(mcp-types) = \\{ path = " all name)
(string-append name " = { version = \"0.98.0\", path = ")))))))))
(inputs (cargo-inputs 'rust-codex-0.0.0.785c0c43))
(home-page "https://github.com/openai/codex")
(synopsis "OpenAI Codex workspace crates")
(description
"This package provides the workspace crates for the OpenAI Codex CLI
and runtime for AI-assisted coding.")
(license license:asl2.0))))
;; Also update (@ (gnu packages gnome) glycin-loaders) when updating this.
(define-public rust-glycin-3
(package

View File

@@ -1827,6 +1827,66 @@ ge13ca993e8ccb9ba9847cc330696e02839f328f7/jemalloc"))
(("features = \\[\"fs\"" all)
(string-append all ", \"use-libc\""))))))))))
(define-public rust-1.94
(let ((base-rust
(rust-bootstrapped-package
rust-1.93 "1.94.0"
"0k274dla70wnajjli2w80by9k4nqf2wah1lw9xhzy8gkscf94gxq")))
(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.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/libz-sys-1.1.21/src/zlib"
"vendor/libz-sys-1.1.23/src/zlib"
"vendor/libmimalloc-sys-0.1.44/c_src/mimalloc"
"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)

View File

@@ -119,7 +119,7 @@
expat
ffmpeg
findutils
fmt-11
fmt
freetype
gdal
gl2ps
@@ -161,7 +161,7 @@
readline
trilinos-zoltan
utfcpp
vtk
vtk-9.5
xz
zlib))
(outputs '("debug" ;~60MB

View File

@@ -953,3 +953,49 @@ using a Python-based domain-specific language.")
ONNX Runtime. It supports models including Whisper and NeMo Parakeet.
Includes bundled Parakeet TDT V3 model weights (int8, CC-BY-4.0, NVIDIA).")
(license license:expat)))
(define-public python-pocket-tts
(package
(name "python-pocket-tts")
(version "1.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kyutai-labs/pocket-tts")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0b9xxyrwa8vsz6r6fi7p47z8rd7q2gjjnwq47br89zp2lkzym3zm"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list ;;; These tests try to download models from HuggingFace Hub.
"--ignore=tests/test_cli_generate.py"
"--ignore=tests/test_documentation_examples.py")))
(propagated-inputs
(list python-beartype
python-einops
python-fastapi
python-huggingface-hub
python-numpy
python-pydantic
python-pytorch
python-safetensors
python-scipy
python-sentencepiece
python-soundfile
python-typer
python-typing-extensions
python-uvicorn))
(native-inputs
(list nss-certs-for-test
python-hatchling
python-pytest))
(home-page "https://github.com/kyutai-labs/pocket-tts")
(synopsis "Fast neural text-to-speech")
(description
"Pocket TTS is a fast neural text-to-speech engine with ~100M parameters,
running at approximately 6x realtime on CPU. English only.")
(license license:expat)))

View File

@@ -381,8 +381,6 @@ Additionally, various channel-specific options can be negotiated.")
#$flags))
((#:modules mods %default-gnu-modules)
(cons '(ice-9 string-fun) mods))
((#:imported-modules mods %default-gnu-imported-modules)
(cons '(ice-9 string-fun) mods))
((#:phases phases #~(list))
#~(modify-phases #$phases
(add-after 'unpack 'patch-ssh-stuff
@@ -439,6 +437,7 @@ of the ssh protocol. It was originally developed to address performance issues
(define-public hpn-ssh-sans-x
(package
(inherit hpn-ssh)
(name "hpn-ssh-sans-x")
(inputs
(modify-inputs (package-inputs hpn-ssh)
(delete "xauth")))

View File

@@ -7,6 +7,7 @@
;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2025 Zheng Junjie <z572@z572.online>
;;; Copyright © 2026 Foster Hangdaan <foster@hangdaan.email>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -64,6 +65,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-xyz)
@@ -76,6 +78,7 @@
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system cargo)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system pyproject)
@@ -529,3 +532,80 @@ applications.")
(synopsis "Dynamic swap manager for Linux")
(description "This package provides a dynamic swap manager for Linux.")
(license license:gpl2+)))
(define-public garage
(package
(name "garage")
(version "2.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.deuxfleurs.fr/Deuxfleurs/garage.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0nqda782by02ybqv44lpjagn3aqsgpaszvqbicg9iz3lymj8g9ai"))
(snippet
#~(begin (use-modules (guix build utils))
(delete-file-recursively "doc")))))
(build-system cargo-build-system)
(arguments
(list
;; Disable default features and explicitly set them instead.
#:cargo-build-flags `(list "--no-default-features")
;; The tests fail to compile without the '--release' flag.
#:cargo-test-flags `(list "--release" "--no-default-features")
#:cargo-install-paths ''("src/garage")
#:features '(list "system-libs"
"k2v"
"kubernetes-discovery"
"lmdb"
"metrics"
"sqlite"
"syslog"
"telemetry-otlp")
#:install-source? #f
#:phases
#~(modify-phases %standard-phases
;; The 'check phase doesn't honor #:features
(replace 'check
(lambda* (#:key features cargo-test-flags #:allow-other-keys
#:rest args)
(apply (assoc-ref %standard-phases 'check)
(append
args
(list #:cargo-test-flags
(append cargo-test-flags
(list "--features"
(string-join features))))))))
;; The 'install phase can't pass '--no-default-features'
(replace 'install
(lambda* (#:key cargo-install-paths features #:allow-other-keys)
(mkdir-p #$output)
(setenv "CARGO_TARGET_DIR" "./target")
(for-each
(lambda (path)
(invoke "cargo" "install" "--offline" "--no-track"
"--path" path "--root" #$output
"--no-default-features"
"--features" (string-join features)))
(if (null? cargo-install-paths)
'(".")
cargo-install-paths)))))))
(native-inputs (list nss-certs-for-test
pkg-config
protobuf))
(inputs
(cons* libsodium
lmdb
openssl
sqlite
`(,zstd "lib")
(cargo-inputs 'garage)))
(home-page "https://garagehq.deuxfleurs.fr/")
(synopsis "S3-compatible, distributed object storage designed for self-hosting")
(description "Garage is a lightweight, geo-distributed data store that
implements the @url{https://docs.aws.amazon.com/AmazonS3/latest/API/Welcome.html,
Amazon S3} object storage protocol, with a focus on simplicity and resiliency.")
(license license:agpl3)))

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