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

Compare commits

..

130 Commits

Author SHA1 Message Date
Ricardo Wurmus 09ad7636e5 gnu: ant-bootstrap: Add hack to build on i686.
* gnu/packages/java-bootstrap.scm (ant-bootstrap)[arguments]: Conditionally
patch isFile checks.

Change-Id: If09594e301dc4691f564e197499acc7d7af71706
2026-04-16 14:18:34 +02:00
Ricardo Wurmus 425cb40fc2 gnu: r-seurat: Conditionally skip a test on 32-bit platforms.
* gnu/packages/cran.scm (r-seurat)[arguments]: On 32-bit platforms skip a
test.

Change-Id: I9c5eb3faed4bd3695fe81200447f201aa8081228
2026-04-16 14:18:34 +02:00
Ricardo Wurmus 508e4bafa6 gnu: r-bpcells: Build with SSE2 for on x86 32-bit platforms.
* gnu/packages/bioinformatics.scm (r-bpcells)[arguments]: Conditionally add
phase 'require-sse2.

Change-Id: I4927d9701e47dc34cc435d24c64a3043ad984f0d
2026-04-16 14:18:34 +02:00
Ricardo Wurmus c1ddc90bdf gnu: r-bpcells: Update to 0.3.1.
* gnu/packages/bioinformatics.scm (r-bpcells): Update to 0.3.1.
[arguments]: Do not patch r/configure.

Change-Id: Ia16297dc02bfecaf353de04452026df98ea5c826
2026-04-16 14:18:34 +02:00
Ricardo Wurmus fef2bae2b5 gnu: r-actuar: Conditionally skip some tests on 32-bit platforms.
* gnu/packages/cran.scm (r-actuar)[arguments]: On 32-bit platforms skip some
tests.

Change-Id: Iad305e0819f919ace9ab9fe7d20357981e2a226a
2026-04-16 14:18:33 +02:00
Ricardo Wurmus 60d405928e gnu: r-expint: Conditionally skip test on 32-bit platforms.
* gnu/packages/cran.scm (r-expint)[arguments]: On 32-bit platforms skip one
test.

Change-Id: Ifa97d90cfcf65fbdb9c920515f32c383c61d1ae6
2026-04-16 14:18:33 +02:00
Ricardo Wurmus 39c975659f gnu: r-lme4: Conditionally skip test on 32-bit platforms.
This is really questionable.  The test suite freezes in several places on
i686-linux, and it's not clear why.  It would be preferable to identify the
cause and fix that for good, but perhaps we can revisit this once the state of
R on i686-linux has improved.

* gnu/packages/cran.scm (r-lme4)[arguments]: On 32-bit platforms skip several
tests.

Change-Id: I67e963ec29cb00f66c122817898f0c6db330307f
2026-04-16 14:18:33 +02:00
Ricardo Wurmus 1129b721bd gnu: r-universalmotif: Conditionally skip test on 32-bit platforms.
* gnu/packages/bioconductor.scm (r-universalmotif)
[arguments]: On 32-bit platforms skip one test.

Change-Id: I66c046c20b0eefbaeb90c5fbf86233c175c096b4
2026-04-16 14:18:33 +02:00
Ricardo Wurmus 163d288dcf gnu: r-ballgown: Adjust for testthat compatibility.
* gnu/packages/bioconductor.scm (r-ballgown)[arguments]: Add phase
'testthat-compatibility.

Change-Id: Id8d931ee79b55b82e977eb3822537f80b55108bf
2026-04-16 14:18:33 +02:00
Ricardo Wurmus f2f6acc0c0 gnu: r-s2: Conditionally skip tests on 32-bit platforms.
* gnu/packages/cran.scm (r-s2)[arguments]: On 32-bit platforms skip some
tests.

Change-Id: Ie1ce57ad4def078c58f33ceec21338b3fb1176f7
2026-04-16 14:18:33 +02:00
Ricardo Wurmus cc58bae6e3 gnu: r-collapse: Conditionally skip tests on 32-bit platforms.
* gnu/packages/cran.scm (r-collapse)[arguments]: On 32-bit platforms skip some
tests.

Change-Id: Idd64fe930fba5b4599324ac0757bad7b0cba695f
2026-04-16 14:18:33 +02:00
Ricardo Wurmus b18d485cb5 gnu: r-cards: Conditionally skip one test.
* gnu/packages/cran.scm (r-cards)[arguments]: On 32-bit platforms skip one
test.

Change-Id: I7f0ade42f51290a862412dd3e280b6c42a81f654
2026-04-16 14:18:33 +02:00
Ricardo Wurmus d30e6043e7 gnu: r-ggplot2: Conditionally skip one test.
* gnu/packages/cran.scm (r-ggplot2)[arguments]: On 32-bit platforms skip one
test.

Change-Id: Icc6d0d6046a18ed24e91e15294c49fb28b4cc12e
2026-04-16 14:18:32 +02:00
Ricardo Wurmus 34c4e062e3 gnu: r-biocstyle: Do not build self-contained reports on 32-bit platforms.
* gnu/packages/bioconductor.scm (r-biocstyle)[arguments]: Conditionally add
phase 'prevent-pandoc-segfault.

Change-Id: I84ea57c44ceedb21e03050b4c48c9c05beedc7d7
2026-04-16 14:18:32 +02:00
Ricardo Wurmus 53dd0b21f4 gnu: proj-9.3: Fix build on 32-bit platforms.
* gnu/packages/geo.scm (proj-9.3)[arguments]: Conditionally add phase
'patch-tests to skip broken tests on 32-bit platforms.

Change-Id: I953489a7ac6a6c577d898e677df77d4acf4499c8
2026-04-16 14:18:32 +02:00
Ricardo Wurmus f7f133f29d gnu: proj: Fix build on 32-bit platforms.
* gnu/packages/geo.scm (proj)[arguments]: Conditionally add phase
'patch-tests to skip broken tests on 32-bit platforms.

Change-Id: Idf6339181f9bad128b060c2178a07735abba1e0b
2026-04-16 14:18:32 +02:00
Ricardo Wurmus e259e9401f gnu: netcdf: Fix build on 32-bit platforms.
* gnu/packages/maths.scm (netcdf)[arguments]: Conditionally pass CFLAGS to
ignore incompatible pointer types; conditionally update 'fix-tests phase to
skip two broken tests on 32-bit platforms.

Change-Id: Id5d149038275c152bbb30f0b155a2c2f7e05a76e
2026-04-16 14:18:32 +02:00
Ricardo Wurmus 26bf944f93 gnu: geos: Conditionally skip tests.
* gnu/packages/geo.scm (geos)[arguments]: Conditionally add phase
'disable-broken-tests on 32-bit platforms.

Change-Id: I9367519716ef309cb6f33e7455d4472ff5293478
2026-04-16 14:18:32 +02:00
Ricardo Wurmus c767b89d53 gnu: r-coro: Conditionally skip one test.
* gnu/packages/cran.scm (r-coro)[arguments]: On 32-bit platforms skip one
test.

Change-Id: I828ec4eae53df79ed476bd761905b78ae12e45ee
2026-04-16 14:18:32 +02:00
Ricardo Wurmus e5bc38ed46 gnu: r-timechange: Conditionally skip one test.
* gnu/packages/cran.scm (r-timechange)[arguments]: On 32-bit platforms skip one
test.

Change-Id: Idb8298941382bc2447f780e17a125ed39fe889f5
2026-04-16 14:18:32 +02:00
Ricardo Wurmus a5889682ea gnu: r-bit64: Conditionally skip two tests.
* gnu/packages/cran.scm (r-bit64)[arguments]: On 32-bit platforms skip two
tests.

Change-Id: Iac69d9b9ab479e3756977b6669e4a9f2802233a0
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 771d3a8237 gnu: r-data-table: Fix a test on 32 bit machines.
* gnu/packages/cran.scm (r-data-table)[arguments]: Conditionally add phase
'fix-bad-test.

Change-Id: Iad9887debcb8a3e65e8495faae778266e42f1ead
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 2c15d5dd96 gnu: r-bit64: Update home-page field.
The home page here was for the ff package, not bit64.

* gnu/packages/cran.scm (r-bit64)[home-page]: Update to CRAN project page.

Change-Id: Idcc1972bfe594185cdee29d8b4e4e0259941e784
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 6038ca0133 gnu: r-accept: Update to 1.0.2.
* gnu/packages/cran.scm (r-accept): Update to 1.0.2.
[propagated-inputs]: Add r-hardhat, r-tibble, r-tidyselect, r-vctrs, and r-vetiver.
[native-inputs]: Add r-spelling and r-testthat.

Change-Id: I6b4782f8beb8e23f5e8987e1f00f34edec59c4b5
2026-04-16 14:18:31 +02:00
Ricardo Wurmus a0445cebab gnu: Add r-vetiver.
* gnu/packages/cran.scm (r-vetiver): New variable.

Change-Id: Ia60cb1ca09daf342a2b8df826ed5306ea51a284f
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 682c9758ab gnu: Add r-rapidoc.
* gnu/packages/cran.scm (r-rapidoc): New variable.

Change-Id: Ia43f969774fbaf1bdff69767d872ab113583c5db
2026-04-16 14:18:31 +02:00
Ricardo Wurmus e8ea5be38b gnu: Add r-pins.
* gnu/packages/cran.scm (r-pins): New variable.

Change-Id: Ie69fde0b4252d7086a6dadab4645b7885b11f18f
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 8e24b5c554 gnu: Add r-bundle.
* gnu/packages/cran.scm (r-bundle): New variable.

Change-Id: I7694f43e4aa4ebc421a0e946d5d3ddafd30aa3ef
2026-04-16 14:18:31 +02:00
Ricardo Wurmus f4d6e90ef0 gnu: r-bbotk: Update to 1.10.0.
* gnu/packages/cran.scm (r-bbotk): Update to 1.10.0.
[native-inputs]: Remove r-processx, r-redux, and r-rush.

Change-Id: I3add7f5c00d752277dfae3199a9b37509869485c
2026-04-16 14:18:31 +02:00
Ricardo Wurmus 46197b7631 gnu: Add r-embed.
* gnu/packages/cran.scm (r-embed): New variable.

Change-Id: I33d35f8c58545f53c346cd656782c4ed526d17b4
2026-04-16 14:18:30 +02:00
Ricardo Wurmus 8bfc6bcf6c gnu: r-yardstick: Update to 1.4.0.
* gnu/packages/cran.scm (r-yardstick): Update to 1.4.0.
[properties]: Record updater-ignored-native-inputs.
[native-inputs]: Add r-epir, r-handtill2001, and r-orf.

Change-Id: I27ce3c780b776ff985df7eb72473011cbd5e93d3
2026-04-16 14:18:30 +02:00
Ricardo Wurmus 0c1b7a1bc5 gnu: Add r-orf.
* gnu/packages/cran.scm (r-orf): New variable.

Change-Id: I422f1fa4341b6835d2fd57057c1e1df49a0ec335
2026-04-16 14:18:30 +02:00
Ricardo Wurmus cfb1e1e1ce gnu: Add r-epir.
* gnu/packages/cran.scm (r-epir): New variable.

Change-Id: Ic2eba444f2f3cdac8420bfa6b391e763f62c7b4d
2026-04-16 14:18:30 +02:00
Ricardo Wurmus dd4fdcf78b gnu: Add r-handtill2001.
* gnu/packages/cran.scm (r-handtill2001): New variable.

Change-Id: I09e71b5286356b8c6d0cda0b6914e6af07074145
2026-04-16 14:18:30 +02:00
Ricardo Wurmus 48ba359b1e gnu: Add r-cereal.
* gnu/packages/cran.scm (r-cereal): New variable.

Change-Id: I3b5c8854f49c732cc003529e8a82f4a37bd6c5bf
2026-04-16 14:18:30 +02:00
Ricardo Wurmus a0d0ebe117 gnu: r-s4vectors: Update to 0.48.1.
* gnu/packages/bioconductor.scm (r-s4vectors): Update to 0.48.1.

Change-Id: I8b856c0e0679262ec5be2a1ae655fd2aa9f6d263
2026-04-16 14:18:30 +02:00
Ricardo Wurmus c72541ebf1 gnu: r-biocviews: Update to 1.78.2.
* gnu/packages/bioconductor.scm (r-biocviews): Update to 1.78.2.

Change-Id: I3aa91454ea13045bb4f4ebe36700c5c36ee28816
2026-04-16 14:18:30 +02:00
Ricardo Wurmus 7e9aa9b851 gnu: r-wiggleplotr: Update to 1.34.1.
* gnu/packages/bioconductor.scm (r-wiggleplotr): Update to 1.34.1.

Change-Id: I3e9df308ff374a62d2ae41eed6df7297411ee665
2026-04-16 14:18:29 +02:00
Ricardo Wurmus 6784e48652 gnu: r-enmix: Update to 1.46.2.
* gnu/packages/bioconductor.scm (r-enmix): Update to 1.46.2.

Change-Id: I04675d3351d71cf7132918f3840a236ba64ad2c0
2026-04-16 14:18:29 +02:00
Ricardo Wurmus 577348891d gnu: r-delayedarray: Update to 0.36.1.
* gnu/packages/bioconductor.scm (r-delayedarray): Update to 0.36.1.

Change-Id: I36e6c48575213cbdac4c7351bfd5fc49d2ca1faf
2026-04-16 14:18:29 +02:00
Ricardo Wurmus 87cd5dab52 gnu: r-stars: Update to 0.7-2.
* gnu/packages/cran.scm (r-stars): Update to 0.7-2.

Change-Id: If5583378486a10f644dd7b9098c332f290d4a765
2026-04-16 14:18:29 +02:00
Ricardo Wurmus f887d7f5a7 gnu: r-pbdmpi: Update to 0.5-5.
* gnu/packages/cran.scm (r-pbdmpi): Update to 0.5-5.

Change-Id: I34ade16a4af9530a59aaf0698c1baf82262a1a9f
2026-04-16 14:18:29 +02:00
Ricardo Wurmus 4640210f65 gnu: r-mlr3: Update to 1.6.0.
* gnu/packages/cran.scm (r-mlr3): Update to 1.6.0.

Change-Id: I553b49832b9c56d43501edce7858abbd5c1062e7
2026-04-16 14:18:29 +02:00
Ricardo Wurmus 9e1463d608 gnu: r-lobstr: Update to 1.2.1.
* gnu/packages/cran.scm (r-lobstr): Update to 1.2.1.

Change-Id: If088ac344520b04407c7b6f0e32fa4fb02a4cda8
2026-04-16 14:18:29 +02:00
Ricardo Wurmus ab0c33e246 gnu: r-igraph: Update to 2.2.3.
* gnu/packages/cran.scm (r-igraph): Update to 2.2.3.

Change-Id: I23dfd5b2a7685014b7aa86cf46b0a999081cce3e
2026-04-16 14:18:29 +02:00
Ricardo Wurmus f3b5ecb37f gnu: r-cpp11: Update to 0.5.4.
* gnu/packages/cran.scm (r-cpp11): Update to 0.5.4.

Change-Id: Ib0f6d7898c26fa5b5a38a2da27161cd6e954f7cd
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 6d7da84ecb gnu: r-spatstat: Update to 3.6-0.
* gnu/packages/cran.scm (r-spatstat): Update to 3.6-0.

Change-Id: I05e18e899f11b9ed3227fd0234d97274dfa8b291
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 0df03cd67b gnu: r-hardhat: Update to 1.4.3.
* gnu/packages/cran.scm (r-hardhat): Update to 1.4.3.

Change-Id: I92526d995ef4913a20ff879e99b079e27c7d0ef4
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 20b277789b gnu: r-quanteda: Update to 4.4.
* gnu/packages/cran.scm (r-quanteda): Update to 4.4.

Change-Id: I72e65e0d8a40b9a46a3353a87663c85b2dc7e4fb
2026-04-16 14:18:28 +02:00
Ricardo Wurmus d0f30763af gnu: r-sccore: Update to 1.0.7.
* gnu/packages/cran.scm (r-sccore): Update to 1.0.7.
[propagated-inputs]: Remove r-seurat.

Change-Id: Ib8b66b4c26c2f06965d64f14ac561b319a422b2f
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 9215c2e4fe gnu: r-spamm: Update to 4.6.65.
* gnu/packages/cran.scm (r-spamm): Update to 4.6.65.

Change-Id: Id033c8d33ca69a7f44a7b6dd9806e534778b4cd0
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 4bc5e6b7a0 gnu: r-rio: Update to 1.3.0.
* gnu/packages/cran.scm (r-rio): Update to 1.3.0.
[native-inputs]: Remove r-jpeg.

Change-Id: Ie60d8e73148286b9cb0f1f5f2405f76aa3d8d22b
2026-04-16 14:18:28 +02:00
Ricardo Wurmus 32bdc39622 gnu: r-nanonext: Update to 1.8.2.
* gnu/packages/cran.scm (r-nanonext): Update to 1.8.2.

Change-Id: I2587c0be9c892de4379e9f8b50eb9ec33df97f2f
2026-04-16 14:18:27 +02:00
Ricardo Wurmus 43cf547c88 gnu: r-ucminf: Update to 1.2.3.
* gnu/packages/cran.scm (r-ucminf): Update to 1.2.3.

Change-Id: I486976827be08ec03c45fef94b745befde3f6907
2026-04-16 14:18:27 +02:00
Ricardo Wurmus 8a258c6d3d gnu: r-statsexpressions: Update to 1.7.4.
* gnu/packages/cran.scm (r-statsexpressions): Update to 1.7.4.

Change-Id: I0b79a241393d26a8c026088b0e424b38e4472c9e
2026-04-16 14:18:27 +02:00
Ricardo Wurmus 0186ba19ff gnu: r-recipes: Update to 1.3.2.
* gnu/packages/cran.scm (r-recipes): Update to 1.3.2.

Change-Id: Id2e16bce4db896983b3185c1c5b2e23196a793b5
2026-04-16 14:18:27 +02:00
Ricardo Wurmus baea13f534 gnu: r-cvxr: Update to 1.8.2.
* gnu/packages/cran.scm (r-cvxr): Update to 1.8.2.

Change-Id: I2e8bda89edb439a667eb199abf7ae15b593b3071
2026-04-16 14:18:27 +02:00
Ricardo Wurmus c74520f47a gnu: r-circlize: Update to 0.4.18.
* gnu/packages/cran.scm (r-circlize): Update to 0.4.18.

Change-Id: I161c5eef8f7db52620ff87fc298ed5771cc914f8
2026-04-16 14:18:27 +02:00
Ricardo Wurmus 602cd07f0d gnu: r-geosphere: Update to 1.6-8.
* gnu/packages/cran.scm (r-geosphere): Update to 1.6-8.
[propagated-inputs]: Remove r-sp.

Change-Id: Ibb73b0b53cd78de120c604d75a0549820eb3200e
2026-04-16 14:18:27 +02:00
Ricardo Wurmus 1217281391 gnu: r-magrittr: Update to 2.0.5.
* gnu/packages/cran.scm (r-magrittr): Update to 2.0.5.
[native-inputs]: Add r-rlang.

Change-Id: Icd245b27401f4f0ba1c591ae1dd7a8e651201405
2026-04-16 14:18:27 +02:00
Ricardo Wurmus fa167200ac gnu: r-ellipsis: Update to 0.3.3.
* gnu/packages/cran.scm (r-ellipsis): Update to 0.3.3.

Change-Id: I098570b2c7e05c2a67c3a91e4be4e222cb7deb15
2026-04-16 14:18:26 +02:00
Ricardo Wurmus 8a96d0e080 gnu: r-lazyeval: Update to 0.2.3.
* gnu/packages/cran.scm (r-lazyeval): Update to 0.2.3.
[propagated-inputs]: Add r-rlang.

Change-Id: I29e122307aa6b2e67258af2ca96cfc873fca973d
2026-04-16 14:18:26 +02:00
Ricardo Wurmus a5c7de10dd gnu: r-fpeek: Update to 0.2.1.
* gnu/packages/cran.scm (r-fpeek): Update to 0.2.1.

Change-Id: I65cec23ef7def6a4dd07b10345a33ed87465be90
2026-04-16 14:18:26 +02:00
Ricardo Wurmus b7eb596b75 gnu: r-fingerprint: Update to 3.5.10.
* gnu/packages/cran.scm (r-fingerprint): Update to 3.5.10.

Change-Id: Id7412db399a6bf6254f2ee154e3150c78486acab
2026-04-16 14:18:26 +02:00
Ricardo Wurmus cfb14a79ef gnu: r-rush: Update to 1.0.1.
* gnu/packages/cran.scm (r-rush): Update to 1.0.1.

Change-Id: I8862fb80bbace1718d50a326220665519449d556
2026-04-16 14:18:26 +02:00
Ricardo Wurmus 77741f8a3d gnu: r-rlang: Update to 1.2.0.
* gnu/packages/cran.scm (r-rlang): Update to 1.2.0.

Change-Id: Ibc781c6de7a2e3c0bb0ca4e0b1242f6dd68ac590
2026-04-16 14:18:26 +02:00
Ricardo Wurmus eabb9f6b9f gnu: r-ggstatsplot: Update to 0.13.6.
* gnu/packages/cran.scm (r-ggstatsplot): Update to 0.13.6.

Change-Id: If4bf6c55a2bde9d629f7a9fc33456f256da8302d
2026-04-16 14:18:26 +02:00
Ricardo Wurmus d0a7a1f1f1 gnu: r-dplyr: Update to 1.2.1.
* gnu/packages/cran.scm (r-dplyr): Update to 1.2.1.

Change-Id: I3821473e4964b0d367915ad85c5b47927e35ee48
2026-04-16 14:18:26 +02:00
Ricardo Wurmus 00ccd3eeea gnu: r-cftime: Update to 1.7.3.
* gnu/packages/cran.scm (r-cftime): Update to 1.7.3.

Change-Id: I621d2a7cc6646369e963db137f089a0236b16199
2026-04-16 14:18:26 +02:00
Ricardo Wurmus f518b950c1 gnu: r-backports: Update to 1.5.1.
* gnu/packages/cran.scm (r-backports): Update to 1.5.1.

Change-Id: Ia363be468b5888a4d1b5d390a8a7c7eb07ea9cc1
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 42a1a2172e gnu: r-ggplot2: Disable one failing test.
* gnu/packages/cran.scm (r-ggplot2)[arguments]: Disable a failing test.

Change-Id: I41c5ec8790148f7ffe1397d3b9694f1cd8e0c739
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 9c11c794d8 gnu: Add r-timereg.
* gnu/packages/cran.scm (r-timereg): New variable.

Change-Id: Ifb43c8f624ac79bb16361912ccf9cbdb623356ab
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 42ac4eb3fa gnu: r-lava: Update to 1.9.0.
* gnu/packages/cran.scm (r-lava): Update to 1.9.0.
[native-inputs]: Add r-vdiffr.
[arguments]: Disable some failing tests.

Change-Id: I6025e511e46f8d7aa6b3864b411e5aacd86a06d0
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 1bf6dde0d8 gnu: r-flames: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-flames)[arguments]: Remove
phase 'disable-some-tests; specify #:skipped-tests instead.

Change-Id: I75024c6b9c5316e1b4bef80c5e60d77699b71e9b
2026-04-16 14:18:25 +02:00
Ricardo Wurmus c8c2f12858 gnu: r-ncdfflow: Enable all tests.
* gnu/packages/bioconductor.scm (r-ncdfflow)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I5c4c64f992b33af1ecaa42b833a8f2cb3f2b47d6
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 83a6b8589e gnu: r-flowclust: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-flowclust)[arguments]: Remove
phase 'delete-bad-tests; specify #:skipped-tests instead; disable one more
test.

Change-Id: I18369d410ad9cff4db7afcb15fd5292b3c6c0177
2026-04-16 14:18:25 +02:00
Ricardo Wurmus bad269b657 gnu: r-variantfiltering: Enable all tests.
* gnu/packages/bioconductor.scm (r-variantfiltering)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I76ef169743ecbd5c75fb115ab5adf8c46128d068
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 68adb129ed gnu: r-beachmat: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-beachmat)[arguments]: Remove
phase 'delete-bad-tests; specify #:skipped-tests
instead.

Change-Id: I17f4999f3747f4e72015ae64872e2c877a157267
2026-04-16 14:18:25 +02:00
Ricardo Wurmus 6e7ae215a8 gnu: r-rhdf5lib: Use G-expressions and fix test instead of disabling it.
* gnu/packages/bioconductor.scm (r-rhdf5lib)[arguments]: Use G-expressions;
fix library version check instead of disabling the test.

Change-Id: I78e8cfd9d2588517b0911dde5fc8aa53d4f67892
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 321f4a6b8f gnu: r-sgseq: Enable all tests.
* gnu/packages/bioconductor.scm (r-sgseq)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I25cfd6620b6573057c161200bd5fad99a19e2bdd
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 75c3255f9c gnu: r-metagenomeseq: Enable all tests.
* gnu/packages/bioconductor.scm (r-metagenomeseq)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I17d0d965b6d7702dfd6eb24eef288a51915aa3f6
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 0b5f9d29ac gnu: r-graph: Enable tests.
* gnu/packages/bioconductor.scm (r-graph)[arguments]: Enable tests.

Change-Id: I9307f27a1e36e439b3d0c5680faa558981dc5d3a
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 267dcb3fac gnu: r-summarizedexperiment: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-summarizedexperiment)[arguments]: Remove
phase 'delete-bad-tests; specify #:test-directory and #:skipped-tests
instead.

Change-Id: I6229ec548d21f30534f9d279b3aae8847e55a77e
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 7ea19ce41b gnu: r-batchelor: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-batchelor)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: Icd8aaae97130eed2e3c1b1629ac1dd9d18287fee
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 85f2e629ff gnu: r-biocsingular: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-biocsingular)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: I8b8f91562233c9cca180eeda50f5d6dc4bc1cd37
2026-04-16 14:18:24 +02:00
Ricardo Wurmus 235fc028b6 gnu: r-glmgampoi: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-glmgampoi)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead; enable tests.

Change-Id: I5de95bf59482d706bf80bb6fc4cdcf6da89d2afd
2026-04-16 14:18:24 +02:00
Ricardo Wurmus b10183d56c gnu: r-variantannotation: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-variantannotation)[arguments]: Remove phase
'delete-bad-tests; specify #:test-directory and #:skipped-tests instead.

Change-Id: I17532f8a6e23b52591f0593677e8cd88aacbfc23
2026-04-16 14:18:24 +02:00
Ricardo Wurmus fd70593d4d gnu: r-rhdf5: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-rhdf5)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead; enable tests.

Change-Id: I2a440a41b6d527c5c91786345db49532fdca5b2c
2026-04-16 14:18:23 +02:00
Ricardo Wurmus b342b5fed2 gnu: r-regioner: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-regioner)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: Ic90c620653ffa6d2ad6eab4ded05e4bbfe62d279
2026-04-16 14:18:23 +02:00
Ricardo Wurmus c28d458561 gnu: r-msnbase: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-msnbase)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: Icb2170c300d80dc5f955b4ff1b97f1e33385a7c2
2026-04-16 14:18:23 +02:00
Ricardo Wurmus 43ee8d6607 gnu: r-genomicdatacommons: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-genomicdatacommons)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: I02a6f73db89104c90e6a4301240a1fd20e35a636
2026-04-16 14:18:23 +02:00
Ricardo Wurmus 07683d78f7 gnu: r-escape: Enable all tests.
* gnu/packages/bioconductor.scm (r-escape)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I6d0af6daaed7b5c142ccfdfc162ba57968d1ce17
2026-04-16 14:18:23 +02:00
Ricardo Wurmus 9aaf1ee2de gnu: r-category: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-category)[arguments]: Remove phase
'delete-bad-tests; specify #:test-directory and #:skipped-tests instead.

Change-Id: If573e4ea497fdd1f3654433d2854f0a821455bd6
2026-04-16 14:18:23 +02:00
Ricardo Wurmus e2a7eded3f gnu: r-treeio: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-treeio)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead; enable more tests.

Change-Id: I55fccf144c233bfd4115b9201c1550e9d477e6a4
2026-04-16 14:18:23 +02:00
Ricardo Wurmus f9b627d13d gnu: r-derfinder: Enable all tests.
* gnu/packages/bioconductor.scm (r-derfinder)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: Ib4e5e8557209b5a46b48e77c52c6355676b3e577
2026-04-16 14:18:23 +02:00
Ricardo Wurmus 2069c7f09e gnu: r-bumphunter: Disable tests instead of patching them.
After patching we didn't run any tests anyway.

* gnu/packages/bioconductor.scm (r-bumphunter)[arguments]: Remove phase
'delete-bad-tests; disable tests instead.

Change-Id: I6ba13013c6038b272204ae4191111714d835be05
2026-04-16 14:18:23 +02:00
Ricardo Wurmus 2b41447efd gnu: r-txdbmaker: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-txdbmaker)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: I35e1fb2dce920cb0a59a063eb2b511b636e46546
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 6e7d1b5e4c gnu: r-scrapper: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-scrapper)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: I25b29604508732e64a7efb72b9635e7bc8685356
2026-04-16 14:18:22 +02:00
Ricardo Wurmus fb45558493 gnu: r-plyranges: Enable all tests.
* gnu/packages/bioconductor.scm (r-plyranges)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: I7539e3c6f8ed26a66bf9d4ef65ecb11bee74421d
2026-04-16 14:18:22 +02:00
Ricardo Wurmus c2f81ec3cb gnu: r-transcriptr: Enable all tests.
* gnu/packages/bioconductor.scm (r-transcriptr)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: Ic0781089808a2468797d03e968aa696553409801
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 2aa8e98b8c gnu: r-tcgautils: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-tcgautils)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: I29a788dc229c599207d89d7f4dbd49c3c9f06f1e
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 2dccc15f1d gnu: r-screpertoire: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-screpertoire)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Ieac662ca919889a71861cb6b1f08febab2487f54
2026-04-16 14:18:22 +02:00
Ricardo Wurmus eb32d1bb83 gnu: r-chippeakanno: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-chippeakanno)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Id7e7cd02d1b0b02f62022b9d55e69c867200e213
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 16f703f4f3 gnu: r-msnid: Enable all tests.
* gnu/packages/bioconductor.scm (r-msnid)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: Iaf459f89d1f6d82a486a0dcd860cff746ee140a0
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 7118c74599 gnu: r-mosdef: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-mosdef)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Iadf53cbebf8e30b1cd8a4a793a7853b01318de39
2026-04-16 14:18:22 +02:00
Ricardo Wurmus 96d10fcf05 gnu: r-h5mread: Enable all tests.
* gnu/packages/bioconductor.scm (r-h5mread)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: I8a20a311a4c8c2177c07ab5d0b59c8ea5e369c73
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 025efb94b5 gnu: r-immapex: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-immapex)[arguments]: Remove phase
'skip-bad-tests; specify #:skipped-tests instead.

Change-Id: Icb90decad077e6e2b9f68b618a983b8251954791
2026-04-16 14:18:21 +02:00
Ricardo Wurmus eb8e45a644 gnu: r-rcas: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-rcas)[arguments]: Remove phase
'skip-bad-tests; specify #:skipped-tests instead.

Change-Id: Ib4497fa70e0b61267b61d4fdf70e3e5abd0c1af9
2026-04-16 14:18:21 +02:00
Ricardo Wurmus c81b2b1e2f gnu: r-karyoploter: Enable all tests.
* gnu/packages/bioconductor.scm (r-karyoploter)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: I3d5727327d1da4ba30bd8cd8d9251100329e4cac
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 67c8823b19 gnu: r-sanssouci: Update to 0.16.2-1.fcd60da.
* gnu/packages/bioconductor.scm (r-sanssouci): Update to 0.16.2-1.fcd60da.
[arguments]: Remove phase 'delete-bad-tests.
[propagated-inputs]: Remove r-rcpp and r-rcpparmadillo; add r-matrixtests and
r-rlang.
[native-inputs]: Remove r-ggplot2; add r-knitr.

Change-Id: I30fa708d0a1873d78fa2350e5933e807ccaae821
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 004fe76b40 gnu: r-cicero-monocle3: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-cicero-monocle3)[arguments]: Remove phase
'skip-bad-tests; specify #:skipped-tests instead.

Change-Id: I3ab92000982c97e95e4b157dcf3cfe1d49f056f3
2026-04-16 14:18:21 +02:00
Ricardo Wurmus c36844c511 gnu: r-mutationalpatterns: Enable all tests.
* gnu/packages/bioconductor.scm (r-mutationalpatterns)[arguments]: Remove
phase 'skip-bad-tests.

Change-Id: I51ee4d02fd12e34100a6823a8ba71e117bc618a1
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 3fef246625 gnu: r-bamsignals: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-bamsignals)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Ifbb26ef31debc2ad43eb1265c7916b24bfa140ae
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 014493dac3 gnu: r-biomart: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-biomart)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: I98c167685c07453fd8fa8b8c7700c21591d043af
2026-04-16 14:18:21 +02:00
Ricardo Wurmus 9afe3041c7 gnu: r-biocset: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-biocset)[arguments]: Remove phase
'delete-bad-tests; specify #:skipped-tests instead.

Change-Id: Ibcdfdca6e35869e260a8f02deddacaa59002c7f1
2026-04-16 14:18:20 +02:00
Ricardo Wurmus e74e74a2c5 gnu: r-zellkonverter: Enable tests by bypassing Conda.
* gnu/packages/bioconductor.scm (r-zellkonverter)[arguments]: Enable all tests
but one; add phase 'basilisk-configuration.
[inputs]: Add python-anndata, python-h5py, python-natsort, python-numpy,
python-pandas, python-scipy, and python-wrapper.

Change-Id: I4eb5e34ab540bdeea64f6b8629bb8f17d24c3663
2026-04-16 14:18:20 +02:00
Ricardo Wurmus fa64b9d32f gnu: r-hdf5array: Update comment.
* gnu/packages/bioconductor.scm (r-hdf5array)[arguments]: Update comment on
why we delete a test.

Change-Id: Ibefbe960a12969337a63329d511d6c0891895c94
2026-04-16 14:18:20 +02:00
Ricardo Wurmus dfcf958b81 gnu: r-basilisk: Patch to bypass Conda.
* gnu/packages/bioconductor.scm (r-basilisk)[arguments]: Add phase
'patch-for-guix.

Change-Id: I8bcfd78da0818235a3ab1c00aae8dafdc8aa57aa
2026-04-16 14:18:20 +02:00
Ricardo Wurmus a6451cbd8b gnu: r-decoupler: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-decoupler)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: I40e3ba1539ee4dc5d471c547a5208317f2a7600e
2026-04-16 14:18:20 +02:00
Ricardo Wurmus 38967414c8 gnu: r-cner: Remove custom phases, enable all tests.
* gnu/packages/bioconductor.scm (r-cner)[arguments]: Remove phases
'disable-bad-tests and 'fix-gcc-14-strictness.

Change-Id: I116538acce4dacad5550727dba14bb72bb8905f4
2026-04-16 14:18:20 +02:00
Ricardo Wurmus c37180cda7 gnu: r-chromvar: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-chromvar)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Ia5419e9be986c9600372de103c0ee5353a194346
2026-04-16 14:18:20 +02:00
Ricardo Wurmus 64713e8899 gnu: r-mscoreutils: Enable all tests.
* gnu/packages/bioconductor.scm (r-mscoreutils)[arguments]: Remove phase
'disable-bad-tests.

Change-Id: I6fa331a8110d3923f7f1394023cfa81aa2a1b837
2026-04-16 14:18:20 +02:00
Ricardo Wurmus e115142ef4 gnu: r-abn: Enable all tests.
* gnu/packages/bioconductor.scm (r-abn)[arguments]: Remove phase
'delete-bad-tests.

Change-Id: I78978dfc6e606c90d24c6ef6b4cf0ed5f1af3492
2026-04-16 14:18:20 +02:00
Ricardo Wurmus 870a1e0f53 gnu: r-posterior: Update to 1.7.0.
* gnu/packages/cran.scm (r-posterior): Update to 1.7.0.

Change-Id: I7053e29e54d42cbb82a45d19831accc849df796a
2026-04-16 14:18:19 +02:00
Ricardo Wurmus 22cc7ac54a gnu: r-processx: Update to 3.8.7.
* gnu/packages/cran.scm (r-processx): Update to 3.8.7.

Change-Id: I69d8e6a7d8627f851b066b00e4e74340767facfb
2026-04-16 14:18:19 +02:00
Ricardo Wurmus b50b65cf1b gnu: r-pkgload: Update to 1.5.1.
* gnu/packages/cran.scm (r-pkgload): Update to 1.5.1.

Change-Id: Ib774f4e6a77be5d7358673485337248e47388700
2026-04-16 14:18:19 +02:00
Ricardo Wurmus 99bd3c90c5 gnu: r-ps: Update to 1.9.2.
* gnu/packages/cran.scm (r-ps): Update to 1.9.2.

Change-Id: I44542f83ac5880a79f940ab6702805812d3414e1
2026-04-16 14:18:19 +02:00
Ricardo Wurmus b7383c7929 gnu: r-conos: Update to 1.5.3.
* gnu/packages/bioconductor.scm (r-conos): Update to 1.5.3.

Change-Id: I1f2b0773ab03051dd4c82f991196c0c7ac77063f
2026-04-16 14:18:19 +02:00
Ricardo Wurmus f185250466 gnu: r-barcodetrackr: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-barcodetrackr)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: Ibe719fb6a2395c31c67788255d7df95988962b4c
2026-04-16 14:18:19 +02:00
Ricardo Wurmus f81dbc1d9d gnu: r-basics: Replace custom phase with SKIPPED-TESTS argument.
* gnu/packages/bioconductor.scm (r-basics)[arguments]: Remove phase
'disable-bad-tests; specify #:skipped-tests instead.

Change-Id: I2948991cebaab753c496ec272a9f82c5f359ca2d
2026-04-16 14:18:16 +02:00
155 changed files with 11082 additions and 18082 deletions
-2
View File
@@ -179,7 +179,6 @@ guix/scripts/import/elpa\.scm @guix/emacs
tests/import/elpa\.scm @guix/emacs
gnu/packages/bootloaders\.scm @guix/embedded
gnu/packages/coreboot\.scm @guix/embedded
gnu/packages/firmware\.scm @guix/embedded
gnu/packages/emulators\.scm @guix/games
@@ -319,7 +318,6 @@ gnu/packages/tor-browsers\.scm @guix/mozilla
gnu/packages/ocaml\.scm @guix/ocaml
gnu/packages/coq\.scm @guix/ocaml
gnu/packages/rocq\.scm @guix/ocaml
guix/build/ocaml-build-system\.scm @guix/ocaml
guix/build/dune-build-system\.scm @guix/ocaml
guix/build-system/ocaml\.scm @guix/ocaml
-86
View File
@@ -1667,9 +1667,6 @@ can be turned into a version string via @code{git-version}, for example
@code{rust-pipewire-0.8.0.fd3d8f7} and @code{rust-pubgrub-0.3.0.b70cf70}.
@end table
When contributing Rust packages, we should have all modifications to these
two modules, in the same commit as the package we are contributing.
To avoid merge conflicts with changes from multiple branches, these two modules
are maintained by the Rust team (@pxref{Teams}).
@@ -1699,68 +1696,6 @@ tree.
@xref{Packaging Rust Crates,,, guix-cookbook, GNU Guix Cookbook}, for
packaging workflow.
@subsubsection Commit messages
The commit message must have a general brief mention to entry changes
in @code{(gnu packages rust-crates)}. For changes in @code{(gnu packages
rust-sources)}, the commit message must explicitly mention all changes to the
packages.
Here are some examples for different situations:
@itemize
@item
Adding a new Rust package:
@example
gnu: Add catppuccin-whiskers.
* gnu/packages/rust-apps.scm (catppuccin-whiskers): New variable.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)
[catppuccin-whiskers]: New entry.
@end example
@item
Updating a simple package:
@example
gnu: watchexec: Update to 2.3.2.
* gnu/packages/rust-apps.scm (watchexec): Update to 2.3.2.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[watchexec]:
Update entry.
@end example
@item
Updating a package with sources:
@example
gnu: typst: Update to 0.14.0.
* gnu/packages/rust-apps.scm (typst): Update to 0.14.0.
[arguments]<#:rust>: Use rust-1.88.
* gnu/packages/rust-crates.scm (lookup-cargo-inputs)[typst]: Update
entry.
[rust-syntect-5]: Rename to rust-syntect-5.2.
[rust-syntect-5.3]: New entry.
* gnu/packages/rust-sources.scm (rust-hypher-0.1): Update to 0.1.6.
(rust-syntect-5): Rename to rust-syntect-5.2.
[inputs]: Rename cargo-inputs rust-syntect-5 to rust-syntect-5.2.
(rust-syntect-5.3): New variable.
@end example
@end itemize
@subsubsection Resolving merge conflicts in Pull Requests
For Rust crates, the recommended way to solve merge conflicts is to drop all
changes to @code{gnu/packages/rust-crates.scm}, rebase onto the desired branch
and run the lockfile importer again, manually adding back all relevant snippets
(if any).
@xref{Common Workflow for Resolving Merge Conflicts on Existing Pull Requests,,, guix-cookbook, GNU Guix Cookbook} for
a suggested workflow on resolving merge conflicts.
@node Elm Packages
@subsection Elm Packages
@@ -2715,7 +2650,6 @@ applications settings page}, granting read/write access to the
@cindex decision making
@cindex consensus seeking
Every contribution to the project involves a form of decision making.
It is expected from all contributors, and even more so from committers,
to help build consensus and make decisions based on consensus. By using
consensus, we are committed to finding solutions that everyone can live
@@ -2730,26 +2664,6 @@ resolve the deadlock. To learn what consensus decision making means and
understand its finer details, you are encouraged to read
@url{https://www.seedsforchange.org.uk/consensus}.
Day-to-day decision making, for instance discussions about pull requests
(@pxref{Reviewing the Work of Others}), happens informally among
interested parties such as contributors and members of the relevant
teams (@pxref{Teams}).
@cindex GCD, Guix Consensus Documents
@cindex Guix Consensus Documents (GCD)
Decisions that are expected to have an impact on most contributors
and/or on the broader user community---e.g., changes to project-wide
policies, to core functionality, and so on---are made following the
@acronym{GCD, Guix Consensus Document} process. The process provides a
framework to formalize proposals and draw attention to them, to leave
time for interested parties to discuss them, and to collectively accept
or withdraw them based on input from participating team members. It is
defined in
@uref{https://consensus.guix.gnu.org/gcd/001-gcd-process.html,
GCD@tie{}001}. Past GCDs can be seen at
@uref{https://consensus.guix.gnu.org}, and discussions take place at
@uref{https://codeberg.org/guix/guix-consensus-documents}.
@node Commit Access
@section Commit Access
-323
View File
@@ -146,8 +146,6 @@ Packaging Rust Crates
* Common Workflow for Rust Packaging::
* Cargo Workspaces and Development Snapshots::
* Using Rust Libraries in Other Build Systems::
* Common Workflow for Updating Existing Rust Packages::
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
System Configuration
@@ -1649,8 +1647,6 @@ $ guix shell rust rust:cargo cargo-audit cargo-license
* Common Workflow for Rust Packaging::
* Cargo Workspaces and Development Snapshots::
* Using Rust Libraries in Other Build Systems::
* Common Workflow for Updating Existing Rust Packages::
* Common Workflow for Resolving Merge Conflicts on Existing Pull Requests::
@end menu
@node Common Workflow for Rust Packaging
@@ -1709,15 +1705,6 @@ $ cargo audit
$ cargo license
@end example
@quotation Note
Before running @command{cargo generate-lockfile}, make sure you have checked
out the correct tag for the version you are packaging. This ensures that
@code{Cargo.toml} matches the file used in the packages's @code{source} field.
To make sure, you can obtain the exact source with @command{./pre-inst-env guix
build --source <package>} and only then run @command{cargo generate-lockfile} on
that source tree.
@end quotation
@command{cargo generate-lockfile} updates dependencies to compatible versions.
Applying it to all Rust applications helps reduce a great number of Rust
libraries we need to check later. Although sometimes libraries may fail to
@@ -2000,316 +1987,6 @@ method, one of the most popular choices for Traditional Chinese users.")
(license license:lgpl2.1+)))
@end lisp
@node Common Workflow for Updating Existing Rust Packages
@subsubsection Common Workflow for Updating Existing Rust Packages
For this example, we'll update @code{niri}. The package definition looks like
this initially:
@lisp
(define-public niri
(package
(name "niri")
(version "25.08")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/YaLTeR/niri")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"09nsxd211mly8r1ys2lq6ia4jxgb980h1axrbgw748r0knfbbj7n"))))
(build-system cargo-build-system)
...
@end lisp
We start by running the usual @command{guix refresh -u niri}.
The @command{-u} flag will update in place the version and hash for the
@code{niri} package.
The package definition will then look like this:
@lisp
(define-public niri
(package
(name "niri")
(version "25.11")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/YaLTeR/niri")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0752qm245wc2gak0jhp0fnr0rdj3z54m2h97k3cxbjym9pcn658n"))))
(build-system cargo-build-system)
...
@end lisp
This means the source field was updated successfully, thus we can now proceed to
get the updated source with @command{guix build --source niri} as follows:
@example shell
$ cp -r $(./pre-inst-env guix build --source niri) /tmp
$ cd /tmp/<hash>-niri-25.11-checkout/
@end example
@quotation Note
In this specific example, the source is a git checkout, thus a directory. If the
package source is a compressed archive, you would at this point extract it to a
directory to proceed.
@end quotation
Now, given that we have access to the @code{Cargo.toml} file, we can now run
the following inside the checkout:
@example shell
$ guix shell rust rust:cargo -- cargo generate-lockfile
$ guix shell rust rust:cargo -- cargo audit
$ guix shell rust rust:cargo -- cargo license
@end example
@quotation Note
Sometimes the package will require a more up-to-date version of rust, that is
not yet the default rust on guix. For these cases you can use:
@example shell
$ guix shell -e "(@ (gnu packages rust) rust-1.90)" \
-e '`(,(@ (gnu packages rust) rust-1.90) "cargo")'
@end example
@end quotation
The first command will ensure that all cargo dependencies are up to date
and semver compatible, while also providing some other benefits, as further
explained in @ref{Common Workflow for Rust Packaging}.
The following command will warn if there are any known vulnerabilities in the
crates being imported. The last one will output the license information of all
the dependent crates.
If everything looks good, we can now replace the contents of the @code{niri}
indentifier, located inside the @code{lookup-cargo-inputs} variable on the
bottom of the @file{gnu/packages/rust-crates.scm} module, with the newer updated
crates by running the importer on the lockfile as follows:
@example shell
$ guix import -i /path/to/gnu/packages/rust-crates.scm \
crate -f Cargo.lock niri
@end example
@quotation Note
For the purpose of contributing a package to Guix (@pxref{Contributing,,,
guix, GNU Guix Reference Manual}), there is no need to cleanup the leftover
crates as a result of the package update. This is tasked to the rust-team
(@pxref{Teams,,, guix, GNU Guix Reference Manual}) to periodically run a
convenient script in @code{etc/teams/rust} to cleanup unused crates from
@file{gnu/packages/rust-crates.scm}.
@end quotation
We then need to check whether the importer has placed some TODOs for us,
inside @file{gnu/packages/rust-crates.scm} (you can use @command{git diff --
gnu/packages/rust-crates.scm} for this purpose).
There are a few types of TODO messages that you might encounter during this
step, each type requiring you to perform a different action.
The first one we encounter in our example is:
@lisp
(define rust-libdisplay-info-sys-0.3.0
;; TODO REVIEW: Check bundled sources.
(crate-source "libdisplay-info-sys" "0.3.0"
"07xmkc2aqcdn6d58321y87rd3gzdr4nx3ncm1mmrr7w1p1ahsn96"))
@end lisp
This specific TODO message tells us that there is a high probability of
encountering bundled sources within a crate definition generated by the
importer.
We then check if there are any bundled sources within the
@code{rust-libdisplay-info-sys-0.3.0} crate. Since there are none (in our
example), we can simply remove the TODO line, and continue to the next TODO.
If there were any bundled sources inside the crate, we would have to patch
it with a snippet, in order to unbundle it. You can see some examples on
how to unbundle inside @file{gnu/packages/rust-crates.scm} (search for the
@code{#:snippet} keyword).
@quotation Note
If the unbundle is considered too difficult to be executed (e.g. the effort
needed to unbundle is unreasonable), the @code{TODO REVIEW} line should be
converted to a regular TODO comment explicitly stating the unbundle was not done
(e.g. @code{TODO: Unbundle rust-libdisplay-info-sys.}).
@end quotation
Continuing, another TODO message we encounter in this example is the following:
@lisp
(define rust-smithay-0.7.0.d743e1a
;; TODO REVIEW: Define standalone package if this is a workspace.
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/Smithay/smithay.git")
(commit "d743e1a317fa0f01d1c4cadd96d277a1ec7b59d9")))
(file-name (git-file-name "rust-smithay" "0.7.0.d743e1a"))
(sha256 (base32 "11327mhxxf844bs0v5bw1g9bzjssnzhidsissywy6kwng16x727v"))))
@end lisp
This specific TODO message tells us that there is a high probability of the
@code{rust-smithay-0.7.0.d743e1a} crate being a workspace.
After verifying that it is indeed a workspace, we now need to make it an
actual package in @file{gnu/packages/rust-sources.scm}, referencing it in the
crate-source definition (see @ref{Common Workflow for Rust Packaging} for more
details).
@quotation Note
You can verify if a crate is a workspace by cloning the crate repository (in
this case @code{https://github.com/Smithay/smithay.git}), checking out the
specific revision (in this case @command{git checkout d743e1a}), and looking
for @code{[workspace]} in its main @file{Cargo.toml} file. If it does not have a
TOML @code{[workspace]} section, then it is not a workspace.
@end quotation
After defining the separate source package for the workspace in
@file{gnu/packages/rust-sources.scm} (see @ref{Common Workflow for Rust
Packaging} for more details on how to do this), the crate definition for
@code{rust-smithay-0.7.0.d743e1a} would then become the following (notice we
also remove the TODO line):
@lisp
(define rust-smithay-0.7.0.d743e1a package:rust-smithay-0.7.0.d743e1a)
@end lisp
If @code{rust-smithay-0.7.0.d743e1a} was not a workspace, we would simply remove
the TODO line and move on.
We then try to build the package with @command{guix build niri}, and make sure
whether it builds successfully, which it does.
As a good practice, we can further check the output of the
@code{check-for-pregenerated-files} phase to ensure there are no extraneous
pregenerated files inside the crates. If there are any, it is important to
snippet them out, like these:
@lisp
(define rust-winapi-x86-64-pc-windows-gnu-0.4.0
(crate-source "winapi-x86_64-pc-windows-gnu" "0.4.0"
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"
#:snippet '(delete-file-recursively "lib")))
(define rust-flate2-1.1.4
(crate-source "flate2" "1.1.4"
"1a8a3pk2r2dxays4ikc47ygydhpd1dcxlgqdi3r9kiiq9rb4wnnw"
#:snippet '(for-each delete-file-recursively '("examples" "tests"))))
(define rust-flo-curves-0.3.1
(crate-source "flo_curves" "0.3.1"
"16x293dp8825jh465kgms4yyvl4960j26gh37h3skflq9zxpy8hw"
#:snippet '(for-each delete-file '("logo-small.png" "logo.png"))))
(define rust-interception-sys-0.1.3
(crate-source "interception-sys" "0.1.3"
"1lgwbml7gzq5a5rriy708w68gx6yiw9cdg7xy2c5vsrrck7pbs5b"
#:snippet '(for-each delete-file (find-files "." "\\.(dll|lib)$"))))
@end lisp
@node Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
@subsubsection Common Workflow for Resolving Merge Conflicts on Existing Pull Requests
Whenever a Rust package change is merged into our target branch from a different
Pull Request, we often encounter many merge conflicts in @code{(gnu packages
rust-crates)} when rebasing the Pull Request on top of the target branch. Since
we should avoid modifying the rust-crates file manually (e.g. using the git
interface to solve merge conflicts), it is recommended (and often much faster)
to drop all changes to @code{(gnu packages rust-crates)} and run the lockfile
importer once again, manually adding back all the manual changes.
This workflow describes one of many ways to do the described procedure.
In this example we'll update the @code{codeberg-cli} package, which has produced
some merge conflicts in @file{gnu/packages/rust-crates.scm} when we tried a git
pull rebase.
Before starting, make sure we're not in a rebase environment, by aborting the
rebase we tried previously (the one which created the merge conflicts by git
pulling):
@example
$ git rebase --abort
@end example
@cindex git rebase --interactive
@cindex interactive rebase
To begin, we interactively rebase our PR branch by marking as
@code{edit} the commit we want to edit, which is the one containing the
@file{gnu/packages/rust-crates.scm} changes:
@example
# Change 1 to the number of relevant commits
$ git rebase -i HEAD~1
@end example
In our example, we would mark the @code{codeberg-cli} commit like so:
@example
edit 6ef4f1ad043 # gnu: codeberg-cli: Update to 0.5.4.
@end example
After that, we'll be in rebase mode, where we can restore the changes made to
@file{gnu/packages/rust-crates.scm}:
@quotation Note
Notice that we will lose all manual changes we have previously made to
@file{gnu/packages/rust-crates.scm} (e.g. snippets, deleting TODO comments,
if there were any). We'll need to manually add them back after we run the guix
lockfile importer once again, so make sure you have them saved somewhere, for
example in your PR link under the @code{Files changed} tab.
@end quotation
@example
$ git restore --source=HEAD~ gnu/packages/rust-crates.scm
@end example
Having restored the file, we can stage the changes, commit, finish the rebase
and pull rebase from the target branch:
@example
$ git add gnu/packages/rust-crates.scm
$ git commit --amend --no-edit
$ git rebase --continue
$ git pull <remote> <target branch>
@end example
We then proceed to run the guix lockfile importer:
@quotation Note
Remember to checkout the correct tag you're packaging in the package repository
checkout. Don't forget to run @code{cargo generate-lockfile} before running
the lockfile importer, see @ref{Common Workflow for Rust Packaging} for more
detailed steps on what to do before running the guix lockfile importer.
@end quotation
@example
$ guix import --insert=gnu/packages/rust-crates.scm \
crate --lockfile=/path/to/Cargo.lock codeberg-cli
@end example
Now is the time we manually add back the snippets and remove the relevant TODOs
we have already checked (if there are any).
After running the lockfile importer and checking if there are any changes to
manually add back, we can finally:
@example
$ git add gnu/packages/rust-crates.scm
# Our target commit is the last one:
$ git commit --amend --no-edit
@end example
We now have a non-conflicting tree, from which we can now update our PR with.
@c *********************************************************************
@node System Configuration
+12 -56
View File
@@ -8843,12 +8843,12 @@ dependencies than the original package. For example, the default
optional dependency, you can define a variant that removes that
dependency like so:
@findex package/inherit
@lisp
(use-modules (gnu packages gdb)) ;for 'gdb'
(define gdb-sans-guile
(package/inherit gdb
(package
(inherit gdb)
(inputs (modify-inputs inputs
(delete "guile")))))
@end lisp
@@ -8856,23 +8856,6 @@ dependency like so:
In the body of the @code{inputs} field above, @code{inputs} is bound to
the inherited value. Thus, the @code{modify-inputs} form above removes
the @code{"guile"} package from the @code{inputs} field of @code{gdb}.
@quotation Note
The example above uses @code{(package/inherit gdb @dots{})} instead of
the usual @code{(package (inherit gdb) @dots{})}. While the latter
would work, @code{package/inherit} does extra work: if @code{gdb} has a
@code{replacement} field (@pxref{Security Updates}),
@code{package/inherit} propagates the @code{inputs} changes of this
variant to the replacement.
In other words, @code{package/inherit} ensures the variant gets a
consistent @code{replacement} when the original package has one. Thus,
one should generally use @code{package/inherit} when creating a variant
for the same version, but not when targeting a different version, as in
the @code{hello} example we saw earlier, where the replacement may be
incorrect.
@end quotation
The @code{modify-inputs} macro is a helper that can prove useful anytime
you want to remove, add, or replace package inputs.
@@ -15551,7 +15534,7 @@ gnu/packages/qt.scm:452:13: qtbase would be upgraded from 5.15.8 to 5.15.10
@end example
@cindex partial version specification, guix refresh
A per-package equivalent to @option{--target-version} is made available by
A per-package equivalent to --target-version is made available by
prefixing the version specification with the @samp{~} (tilde) character.
For example:
@@ -16112,7 +16095,7 @@ it unchanged.
@item git-source
If the @code{home-page} is a Git repository (as per
@code{git-repository-url?}), and the actual Git repository is tagged
with a version string, possibly prefixed by ``v'', change the
with @code{version} or @code{(string-append ``v'' version)}, change the
package origin to the @code{git-fetch} method
(@pxref{origin Reference}). Consider this example:
@@ -16141,16 +16124,14 @@ its @code{source} field like to:
(inherit guile-json-3)
(name "guile-json")
(version "4.7.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aconchillo/guile-json")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0akhm8xjv8fl55fyq0w6c9c6hi5j7mifjx01w07np7qg1cjl9f06"))))))
(source (origin
(method git-fetch)
(uri (git-reference (url
"https://github.com/aconchillo/guile-json")
(commit version)))
(file-name (git-file-name name version))
(sha256 (base32
"0akhm8xjv8fl55fyq0w6c9c6hi5j7mifjx01w07np7qg1cjl9f06"))))))
@end lisp
@end table
@@ -27267,28 +27248,6 @@ Package object for GVfs.
@end table
@end deftp
@defvar kmonad-service-type
This is the type of the service that runs
@uref{https://github.com/kmonad/kmonad, KMonad}. Its value is a
@code{kmonad-configuration} object. This service allows spawning
@command{kmonad} configurations to manage keyboards.
@deftp {Data Type} kmonad-configuration
Configuration record for the KMonad service.
@table @asis
@item @code{kmonad} (default: @code{kmonad})
The KMonad package to use.
@item @code{keymaps}
A list of files with KMonad configurations. One shepherd service will be
created to control each configuration. Each configuration should target
a distinct input device as KMonad operates on a per-input basis.
@end table
@end deftp
@end defvar
@defvar colord-service-type
This is the type of the service that runs @command{colord}, a system
service with a D-Bus
@@ -53549,9 +53508,6 @@ Maximum time a cache entry for SSH keys is valid, in seconds.
@item @code{extra-content} (default: @code{""}) (type: raw-configuration-string)
Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}.
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbols)
List of services that should be started before this service.
@end table
@end deftp
-8
View File
@@ -16,7 +16,6 @@ exec $pre_inst_env_maybe guix repl -- "$0" "$@"
;;; Copyright © 2025 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2025-2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2025 jgart <jgart@dismail.de>
;;; Copyright © 2026 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -691,7 +690,6 @@ ecosystem."
(team 'embedded
#:name "Embedded"
#:scope (list "gnu/packages/bootloaders.scm"
"gnu/packages/coreboot.scm"
"gnu/packages/firmware.scm")))
(define-team games
@@ -945,7 +943,6 @@ importer, and the ocaml-build-system."
#:scope
(list "gnu/packages/ocaml.scm"
"gnu/packages/coq.scm"
"gnu/packages/rocq.scm"
"guix/build/ocaml-build-system.scm"
"guix/build/dune-build-system.scm"
"guix/build-system/ocaml.scm"
@@ -1249,11 +1246,6 @@ the \"texlive\" importer."
"jonsger")
mozilla)
(define-member (person "Denis Carikli"
"GNUtoo@cyberdimension.org"
"GNUtoo")
embedded)
(define-member (person "Ludovic Courtès"
"ludo@gnu.org"
"civodul")
+24 -63
View File
@@ -1,6 +1,6 @@
#!/usr/bin/env -S gawk -f
# GNU Guix --- Functional package management for GNU
# Copyright © 2025, 2026 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2025 Efraim Flashner <efraim@flashner.co.il>
#
# This file is part of GNU Guix.
#
@@ -21,22 +21,20 @@
# ./etc/teams/rust/audit-rust-crates ./path/to/file.scm
# Prints the output of cargo-audit to the shell.
# Make sure we have cargo-audit in our PATH
BEGIN {
"which cargo-audit" | getline cargoAudit
close("which cargo-audit")
cargoAudit = cargoAudit " audit --file -"
if (system("which cargo-audit 1> /dev/null"))
exit 1;
# Parse a record at a time.
RS = "\n\n"
cargoAudit = "cargo-audit audit --file -"
}
# Check the crate-source origin-only inputs, like in rust-crates.scm
# Check the crate-source origin-only inputs
/crate-source/ {
for(i=3; i <= NF-2; i++) {
if($i == "(crate-source") {
crateName = $(i+1)
crateVersion = $(i+2)
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
cargoLock = cargoLock "[[package]]\nname = " $(i+1) "\nversion = " $(i+2) "\n"
next
}
}
@@ -46,64 +44,27 @@ BEGIN {
/crate-uri/ {
for(i=3; i <= NF; i++) {
if($i == "(version")
crateVersion = $(i+1)
crateVersion = $(i+1)
if($i == "(crate-uri")
crateName = $(i+1)
crateName = $(i+1)
}
gsub(/)/, "", crateVersion)
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
next
}
# Parse the crates created from packages using 'cargo package'
/package:rust/ {
pkg = $2
split(pkg, name_version, "-")
crateVersion = name_version[length(name_version)]
crateName = substr(pkg, 6, (length(pkg) - length(crateVersion) - 6))
split(crateVersion, versionDots, ".")
if(crateVersion && (crateVersion != "(git-version") && (length(versionDots) == 3) && crateName) {
cargoLock = cargoLock "[[package]]\nname = \"" crateName "\"\nversion = \"" crateVersion "\"\n"
} else {
untested++
#print("Unable to test " $0)
}
next
}
# The xxxx-cargo-input variables have a set style
# TODO: Replace the last dash between the name and the version with a space!
# This doesn't take into account swapping between "-" and "_" so we skip it.
#( $2 ~ /-cargo-inputs/ ) {
# sub(/-cargo-inputs/, "", $2)
# gsub(/)/, "", $0)
# gsub(/rust-/, "", $0)
# #gensub(/([[:alpha:]])-([[:digit:]]+)/, "\\1 \\2", "g", $i)
# print "[[package]]\nname = \"" $2 "\"\nversion = \"1.0.0\"\ndependencies = ["
# for (i = 4; i <= NF; i++) {
# print "\"" $i "\","
# }
# print "]"
#}
# We make an attempt to create the crate name from the package name otherwise
/git-reference/ {
for(i=3; i <= NF; i++) {
if($i == "(version")
crateVersion = $(i+1)
if($i == "(name")
crateName = $(i+1)
if($i == "(git-file-name") {
crateName = $(i+1)
crateVersion = $(i+2)
}
}
gsub(/)/, "", crateVersion)
gsub(/)/, "", crateName)
sub(/rust-/, "", crateName)
# The crate version MUST be major.minor.patch
split(crateVersion, versionParts, ".")
if(crateVersion && (crateVersion != "(git-version") && (length(versionParts) == 3) && crateName) {
cargoLock = cargoLock "[[package]]\nname = " crateName "\nversion = " crateVersion "\n"
} else {
untested++
#print("Unable to test " $0)
}
next
}
# Note those which we were unable to parse
/define rust/ {
if($3 == "#f)")
next
print("Unable to parse " $0)
}
{ untested++ }
END { print("Number of crates untested: " untested); print cargoLock | cargoAudit }
END { print cargoLock | cargoAudit }
+10 -19
View File
@@ -81,10 +81,7 @@ entry will be expired even if it has been accessed recently.")
"Maximum time a cache entry for SSH keys is valid, in seconds.")
(extra-content
(raw-configuration-string "")
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}.")
(shepherd-requirement
(list-of-symbols '())
"List of services that should be started before this service."))
"Raw content to add to the end of @file{~/.gnupg/gpg-agent.conf}."))
(define (home-gpg-agent-configuration-file config)
"Return the @file{gpg-agent.conf} file for @var{config}."
@@ -107,7 +104,7 @@ entry will be expired even if it has been accessed recently.")
(define (home-gpg-agent-shepherd-services config)
"Return the possibly-empty list of Shepherd services for @var{config}."
(match-record config <home-gpg-agent-configuration>
(gnupg ssh-support? shepherd-requirement)
(gnupg ssh-support?)
;; 'gpg-agent' is started on demand by GnuPG's programs, but it has to be
;; started explicitly when OpenSSH support is enabled (info "(gnupg) Agent
;; Options").
@@ -122,21 +119,15 @@ entry will be expired even if it has been accessed recently.")
#:socket-directory-permissions #o700))))
(list (shepherd-service
(provision '(gpg-agent ssh-agent))
(requirement shepherd-requirement)
(modules '((shepherd support))) ;for '%user-runtime-dir'
(start
#~(lambda args
((make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))
;; Inherit graphical session environment.
#:environment-variables (environ))
args)))
(start #~(make-systemd-constructor
(list #$(file-append gnupg "/bin/gpg-agent")
"--supervised" "--enable-ssh-support")
(list #$(endpoint "ssh" "S.gpg-agent.ssh")
#$(endpoint "browser" "S.gpg-agent.browser")
#$(endpoint "extra" "S.gpg-agent.extra")
;; #$(endpoint "scdaemon" "S.scdaemon")
#$(endpoint "std" "S.gpg-agent"))))
(stop #~(make-systemd-destructor))
(documentation "Start 'gpg-agent', the GnuPG passphrase
agent, with support for handling OpenSSH material."))))
+6 -13
View File
@@ -610,7 +610,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/rocm-apps.scm \
%D%/packages/rocm-libs.scm \
%D%/packages/rocm-tools.scm \
%D%/packages/rocq.scm \
%D%/packages/rpc.scm \
%D%/packages/rpm.scm \
%D%/packages/rrdtool.scm \
@@ -1131,10 +1130,9 @@ dist_patch_DATA = \
%D%/packages/patches/clucene-gcc-14.patch \
%D%/packages/patches/clucene-pkgconfig.patch \
%D%/packages/patches/coda-use-system-libs.patch \
%D%/packages/patches/codex-acp-0.11.1-disable-code-mode.patch \
%D%/packages/patches/codex-acp-0.11.1-remove-patch-sections.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/rust-codex-0.117.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 \
@@ -1468,6 +1466,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/gimp-fix-metadata-editor.patch \
%D%/packages/patches/gimp-fix-tiff-load.patch \
%D%/packages/patches/git-clar-path-max.patch \
%D%/packages/patches/git-filter-repo-generate-doc.patch \
%D%/packages/patches/gklib-suitesparse.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
@@ -1617,6 +1616,7 @@ dist_patch_DATA = \
%D%/packages/patches/hurd-refcounts-assert.patch \
%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 \
@@ -1652,7 +1652,6 @@ dist_patch_DATA = \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/inetutils-drop-test.patch \
%D%/packages/patches/inferno-fix-crash.patch \
%D%/packages/patches/iniparser-remove-fetchcontent-usage.patch \
%D%/packages/patches/inkscape-libxml2.patch \
@@ -1699,6 +1698,7 @@ dist_patch_DATA = \
%D%/packages/patches/libcss-check-format.patch \
%D%/packages/patches/libeb-gcc-14.patch \
%D%/packages/patches/libextractor-tidy-support.patch \
%D%/packages/patches/libfossil-skip-amalgamation.patch \
%D%/packages/patches/libftdi-fix-paths-when-FTDIPP-set.patch \
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.1.1.patch \
%D%/packages/patches/libgeotiff-fix-tests-with-proj-9.3.0.patch \
@@ -1713,7 +1713,6 @@ dist_patch_DATA = \
%D%/packages/patches/libretro-dolphin-emu-libusb-assert.patch \
%D%/packages/patches/libretro-dolphin-emu-vulkan-headers.patch \
%D%/packages/patches/libretranslate-use-flasgger.patch \
%D%/packages/patches/librewolf-150.0-encoding_rs-rust-fix.patch \
%D%/packages/patches/librewolf-add-store-to-rdd-allowlist.patch \
%D%/packages/patches/librewolf-compare-paths.patch \
%D%/packages/patches/librewolf-neuter-locale-download.patch \
@@ -1746,7 +1745,7 @@ dist_patch_DATA = \
%D%/packages/patches/kissfft-tflite-micro.patch \
%D%/packages/patches/kitty-fix-wayland-protocols.patch \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kmscon-8-runtime-keymap-switch.patch \
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
%D%/packages/patches/knot-remove-runtime-deps.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
@@ -2259,7 +2258,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-werkzeug-tests.patch \
%D%/packages/patches/qdigidoc-bundle-config-files.patch \
%D%/packages/patches/qdigidoc-bundle-tsl-files.patch \
%D%/packages/patches/qdigidoc-fix-icon.patch \
%D%/packages/patches/qemu-build-info-manual.patch \
%D%/packages/patches/qemu-fix-agent-paths.patch \
%D%/packages/patches/qemu-fix-test-virtio-version.patch \
@@ -2395,11 +2393,6 @@ dist_patch_DATA = \
%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-codex-0.117.0-core-remove-self-dep.patch \
%D%/packages/patches/rust-codex-0.120.0-core-remove-self-dep.patch \
%D%/packages/patches/rust-codex-0.120.0-connectors-cache-test-race.patch \
%D%/packages/patches/rust-codex-0.120.0-remove-libwebrtc.patch \
%D%/packages/patches/rust-codex-0.120.0-test-timeout.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 \
+4 -34
View File
@@ -1158,7 +1158,7 @@ on memory usage on GNU/Linux systems.")
(define-public htop
(package
(name "htop")
(version "3.5.0")
(version "3.4.1")
(source
(origin
(method git-fetch)
@@ -1166,7 +1166,7 @@ on memory usage on GNU/Linux systems.")
(url "https://github.com/htop-dev/htop")
(commit version)))
(sha256
(base32 "1r07ri0dl9xz0jn1hc2g8q3l0q4clvnxs05yagpzsz0zigp4flj5"))
(base32 "058y4a4mvx9m179dyr4wi8mlm6i4ybywshadaj4cvfn9fv0r0nkx"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -1309,8 +1309,7 @@ re-executing them as necessary.")
version ".tar.gz"))
(sha256
(base32
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))
(patches (search-patches "inetutils-drop-test.patch"))))
"11n01vsd51r7qraaaylhhx04hq4s6vcq0896zkz0yp1wvqfbwmm1"))))
(build-system gnu-build-system)
(arguments
(list
@@ -3442,7 +3441,7 @@ modules and plugins that extend Ansible.")
(list ansible
bash-minimal
encfs
fuse
fuse-2
util-linux ;; for umount
findutils
git
@@ -7170,35 +7169,6 @@ stored in an SQL database.")
(connects via USB OTG).")
(license license:expat)))
(define-public yoctofetch
(package
(name "yoctofetch")
(version "2.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/Phosphenius/yoctofetch.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0smkaydv74p2231gafibvqbwsy469w56hya8gz8wq0gw7m2l7zh3"))))
; Support for other platforms not available per upstream:
; https://codeberg.org/Phosphenius/yoctofetch#supported-platforms
(supported-systems '("x86_64-linux" "aarch64-linux"))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f)) ; No tests available.
(home-page "https://codeberg.org/Phosphenius/yoctofetch")
(synopsis "Fast and low footprint system fetch tool for the Linux UAPI")
(description
"This package provides a system fetch tool, similar to
@command{neofetch}, @command{fastfetch}, etc. It is lightweight and
has a focus on performance. It can be used as a greeter by starting
it from @file{~/.bashrc} for example.")
(license license:agpl3+)))
(define-public zzz
(package
(name "zzz")
+20 -26
View File
@@ -6529,23 +6529,22 @@ on the ALSA software PCM plugin.")
(define-public snd
(package
(name "snd")
(version "26.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://ccrma.stanford.edu/software/snd/snd-"
version ".tar.gz"))
(sha256
(base32
"1d573mjlrn9rhl9g0a3d1rkar34q60ln8mwlbibfalpn8lsz59a0"))))
(version "25.2")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
"0fgxqk0byxdj6059mb9d5qic2dqjabz49j0szsrn2y3c9nz6iyq4"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; No tests.
#:out-of-source? #f ; Required by 'install-doc'.
#:tests? #f ; no tests
#:out-of-source? #f ; for the 'install-doc' phase
#:configure-flags
#~(let
((docdir (string-append #$output "/share/doc/snd-" #$version)))
#~(let ((docdir (string-append #$output "/share/doc/"
#$name "-" #$version)))
(list "--with-alsa"
"--with-jack"
"--with-gmp"
@@ -6553,20 +6552,18 @@ on the ALSA software PCM plugin.")
(string-append "--with-doc-dir=" docdir)))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-s7-h
(add-after 'install 'install-s7
(lambda _
(install-file "s7.h" (string-append #$output
"/include"))))
(install-file "s7.h" (string-append #$output "/include"))))
(add-after 'install 'install-doc
(lambda _
(let
((docdir (string-append #$output "/share/doc/snd-"
#$version)))
(let ((doc (string-append #$output "/share/doc/"
#$name "-" #$version)))
(for-each
(lambda (f)
(install-file f docdir))
(install-file f doc))
(find-files "." "\\.html$"))
(copy-recursively "pix" (string-append docdir "/pix"))))))))
(copy-recursively "pix" (string-append doc "/pix"))))))))
(native-inputs
(list pkg-config))
(inputs
@@ -6585,16 +6582,13 @@ on the ALSA software PCM plugin.")
timidity++
vorbis-tools
wavpack))
(home-page "https://ccrma.stanford.edu/software/snd/snd/snd.html")
(synopsis "Sound editor")
(home-page "https://ccrma.stanford.edu/software/snd/")
(description
"Snd is a sound editor modelled loosely after Emacs. It can be
customized and extended using either the s7 Scheme implementation (included in
the Snd sources), Ruby, or Forth.")
(license
;; INFO: pkgsrc classifies this as `esdl-license', a license not included
;; in OSI or FSF lists, despite being similar to ISC.
(license:non-copyleft "file://COPYING"))))
(license (license:non-copyleft "file://COPYING"))))
(define-public libspecbleach
(package
-43
View File
@@ -37,8 +37,6 @@
#:use-module (gnu packages elf)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby-check)
#:use-module (gnu packages ruby-xyz)
#:use-module (gnu packages bison)
#:use-module (gnu packages linux)
#:use-module (gnu packages libffi)
@@ -55,7 +53,6 @@
#:use-module (guix store)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system ruby)
#:use-module (guix build-system trivial)
#:autoload (guix gnupg) (gnupg-verify*)
#:autoload (guix base32) (bytevector->nix-base32-string)
@@ -516,46 +513,6 @@ function interface (FFI) directly in your shell. In other words, it allows
you to call routines in shared libraries from within Bash.")
(license license:expat)))
(define-public bashly
(package
(name "bashly")
(version "1.3.5")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "bashly" version))
(sha256
(base32 "17msjzca5ifx8biimdjps655w51yc82d5ys9hwn749bi2f3n8mcz"))))
(build-system ruby-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "rspec" "-c" "spec")))))))
(native-inputs (list ruby-rspec))
(propagated-inputs (list ruby-colsole
ruby-completely
ruby-filewatcher
ruby-gtx
ruby-logger
ruby-lp
ruby-mister-bin
ruby-ostruct
ruby-requires
ruby-tty-markdown))
(synopsis
"Create feature-rich Bash scrips using simple YAML configuration")
(description
"Bashly is a CLI for generating feature-rich Bash command line
tools. Bashly lets you focus on your specific code, without worrying about
command line argument parsing, usage texts, error messages and other functions
that are usually handled by a framework in other programming languages.")
(home-page "https://bashly.dev/")
(license license:expat)))
(define-public blesh
(package
(name "blesh")
File diff suppressed because it is too large Load Diff
+41 -8
View File
@@ -913,7 +913,7 @@ suite native in R.")
(define-public r-bpcells
(package
(name "r-bpcells")
(version "0.3.0")
(version "0.3.1")
(source
(origin
(method git-fetch)
@@ -922,7 +922,7 @@ suite native in R.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "12h1di45fg06nhsliii7v0h1z567pkpis1xm4ar1qr8ns1n8iljw"))
(base32 "0yqgcajq83g25mznwcngaw7pi6vcqxqdnynpgb95yci57k3wrp6j"))
(modules '((guix build utils)))
(snippet
'(delete-file-recursively "r/src/vendor/highway"))))
@@ -931,13 +931,15 @@ suite native in R.")
(arguments
(list
#:phases
'(modify-phases %standard-phases
`(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(substitute* "r/configure"
(("tools/hwy-test.cpp" m)
(string-append m " $HWY_LIBS $HWY_CFLAGS")))
(chdir "r"))))))
(lambda _ (chdir "r")))
,@(if (target-x86-32?)
'((add-after 'chdir 'require-sse2
;; This avoids falling back to the scalar backend in
;; highway, which fails to build.
(lambda _ (setenv "CFLAGS" "-msse2"))))
'()))))
(propagated-inputs
(list r-dplyr
r-ggplot2
@@ -22349,6 +22351,37 @@ combinatorial configurations.\", G. Ehrlich - Journal of the ACM (JACM),
1973. (Algorithm 7.)")
(license license:expat)))
(define-public fsom
(let ((commit "a6ef318fbd347c53189384aef7f670c0e6ce89a3"))
(package
(name "fsom")
(version (git-version "0.0.0" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ekg/fsom/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0gw1lpvr812pywg9y546x0h1hhj261xwls41r6kqhddjlrcjc0pi"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests to run.
#:phases
(modify-phases %standard-phases
(delete 'configure) ; There is no configure phase.
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "fsom" bin)))))))
(native-inputs
(list gcc-6))
(home-page "https://github.com/ekg/fsom")
(synopsis "Manage SOM (Self-Organizing Maps) neural networks")
(description "A tiny C library for managing SOM (Self-Organizing Maps)
neural networks.")
(license license:gpl3))))
(define-public fastahack
(package
(name "fastahack")
+2 -2
View File
@@ -275,14 +275,14 @@ generate such a compilation database.")
(define-public bmake
(package
(name "bmake")
(version "20260406")
(version "20260313")
(source
(origin
(method url-fetch)
(uri (string-append
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
(sha256
(base32 "09nzd9v12n2pwxmf67056kzjnvxcpk5q2x1fs5qkrsk1ssh5yvpd"))
(base32 "0xgryknmv625idw37rq89mpl5rymwdb15j5w8zxwy1gf8b6z7j3n"))
(patches (search-patches "bmake-run-check-separately.patch"))))
(build-system gnu-build-system)
(inputs
+3 -3
View File
@@ -23,7 +23,7 @@
;;; Copyright © 2023, 2024 David Elsing <david.elsing@posteo.net>
;;; Copyright @ 2022, Kitzman <kitzman@disroot.org>
;;; Copyright @ 2025 Dariqq <dariqq@posteo.net>
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2026 Cayetano Santos <csantosb@inventati.org>
;;; Copyright © 2026 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
@@ -1762,7 +1762,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
(define-public simdutf
(package
(name "simdutf")
(version "9.0.0")
(version "7.7.1")
(source
(origin
(method git-fetch)
@@ -1771,7 +1771,7 @@ string.h, but with a utf8* prefix instead of the str* prefix.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0f5ccvqj7pfa69m9y1kxp2v1lybx6x8i9pykdqfkr7dydqbhrhx6"))))
(base32 "0kw4j4qqcfjaii667xa745pklj50m70nqq8cj5agj714acczbk7y"))))
(build-system cmake-build-system)
(arguments (list #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON")))
(synopsis "SIMD Unicode validation and transcoding")
+25 -1
View File
@@ -3131,7 +3131,7 @@ time by mocking the datetime module.")
(define-public python-flaky
(package
(name "python-flaky")
(version "3.8.1") ; On bump, remove some skipped tests in python-cherrypy.
(version "3.8.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "flaky" version))
@@ -3719,6 +3719,30 @@ system. The code under test requires no modification to work with pyfakefs.")
directories and files.")
(license license:expat)))
(define-public python-pytest-tornado5
(package
(name "python-pytest-tornado5")
(version "2.0.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "pytest-tornado5" version))
(sha256
(base32
"0qb62jw2w0xr6y942yp0qxiy755bismjfpnxaxjjm05gy2pymr8d"))))
(build-system pyproject-build-system)
(arguments
;; Tests require pytest < 6
(list #:tests? #f))
(propagated-inputs (list python-pytest python-tornado))
(native-inputs (list python-setuptools python-wheel))
(home-page "https://github.com/vidartf/pytest-tornado")
(synopsis
"Fixtures and markers to simplify testing of Tornado applications")
(description
"This package provides a @code{py.test} plugin supplying fixtures and
markers to simplify testing of asynchronous tornado applications.")
(license license:asl2.0)))
(define-public guile-proba
(package
(name "guile-proba")
+1 -1
View File
@@ -580,7 +580,7 @@ stored with user-specified precision.")
python-sphinx))
(inputs
(list fftwf
`(,hwloc "lib")
`(,hwloc-2 "lib")
libtirpc
lmfit
muparser
+125 -422
View File
@@ -18,10 +18,10 @@
;;; This module is separate from (gnu packages rust-apps) to avoid a
;;; circular module dependency: (gnu packages rust-sources), which
;;; defines rust-codex-0.120.0, transitively loads (gnu packages
;;; 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.120.0 is defined, causing an unbound
;;; rust-apps before rust-codex-0.98.0 is defined, causing an unbound
;;; variable error.
(define-module (gnu packages codex)
@@ -36,41 +36,33 @@
#:use-module (gnu packages base)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages linux)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages llvm)
#:use-module (gnu packages lsof)
#: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 textutils)
#:use-module (gnu packages nss)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages virtualization))
#:use-module (gnu packages version-control))
(define-public codex
(package
(name "codex")
(version (package-version rust-codex-0.120.0))
(version (package-version rust-codex-0.98.0))
(source
(origin
(inherit (package-source rust-codex-0.120.0))
(inherit (package-source rust-codex-0.98.0))
(patches (search-patches
"codex-acp-0.11.1-disable-code-mode.patch"
"rust-codex-0.117.0-remove-patch-sections.patch"
"rust-codex-0.120.0-connectors-cache-test-race.patch"
"rust-codex-0.120.0-remove-libwebrtc.patch"
"codex-0.98.0-remove-patch-sections.patch"
"rust-codex-0.98.0-test-shebangs.patch"
"rust-codex-0.120.0-test-timeout.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"
"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,
@@ -79,55 +71,72 @@
#:cargo-test-flags '(list "--workspace"
"--exclude" "codex-app-server-protocol"
"--"
;;; BEGIN Landlock returns NotEnforced
;;; in the build container; the sandbox
;;; binary panics instead of cleanly
;;; denying filesystem access.
;; Sandbox denial and escalation tests.
;; 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"
;; Sandbox denial and escalation tests.
"--skip" "shell_escalated_permissions_rejected_then_ok"
;; Sandbox denial and escalation tests.
"--skip" "unified_exec_runs_under_sandbox"
;; codex-exec: spawn_command_under_linux_sandbox
;; panics with LandlockRestrict (exit 101).
;; 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"
;; Same as above.
"--skip" "python_multiprocessing_lock_works_under_sandbox"
;; Same as above.
"--skip" "sandbox_distinguishes_command_and_policy_cwds"
;; linux-sandbox: process_exec_tool_call
;; invokes Landlock; same panic.
;; These linux-sandbox tests directly invoke
;; the Landlock sandbox via
;; process_exec_tool_call; same root cause.
"--skip" "test_writable_root"
;; Same as above.
"--skip" "test_timeout"
;; Same as above.
"--skip" "test_root_read"
;; Same as above.
"--skip" "test_dev_null_write"
;; Same as above.
"--skip" "test_no_new_privs_is_enabled"
;; One scenario runs through Landlock
;; which panics; cargo --skip cannot
;; target individual scenarios.
;; 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"
;; Landlock panic triggers escalation-retry
;; which interferes with the approval cache.
;; 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. What happens:
;; TurnAborted. Default test config is
;; OnRequest + ReadOnly. What happens:
;;
;; 1. ReadOnly wraps the command with
;; codex-linux-sandbox (Landlock-based).
;; 2. Landlock is unavailable, so the
;; sandbox binary exits instantly.
;; 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, so no escalation --
;; denial returned directly.
;; returns false (sandboxing.rs:222),
;; so no escalation -- denial returned
;; directly.
;; 4. ToolEmitter::finish sends the error
;; to the mock model.
;; 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,
@@ -141,213 +150,74 @@
;; has only one mock response (so the turn
;; cannot complete first).
"--skip" "interrupt_persists_turn_aborted_marker_in_next_request"
;; Same causal chain as above.
"--skip" "interrupt_tool_records_history_entries"
;; WorkspaceWrite sandbox policy wraps
;; commands with codex-linux-sandbox;
;; Landlock panics, command never runs,
;; exit_code is None instead of Some(0).
"--skip" "request_permissions_grants_apply_to_later_exec_command_calls"
;; Same root cause.
"--skip" "request_permissions_grants_apply_to_later_shell_command_calls"
;; Same root cause.
"--skip" "partial_request_permissions_grants_do_not_preapprove_new_permissions"
;;; END Landlock
;;; BEGIN mcp_process.rs initialize
;;; assertion expects "version":"0.0.0"
;;; but the server returns "0.120.0".
;; 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"
;;; END version mismatch
;;; BEGIN Test isolation bug:
;;; unique_temp_dir() in
;;; state/src/runtime.rs names dirs
;;; using nanosecond timestamps, so
;;; parallel tests can collide. The
;;; SQLite migration runs CREATE TABLE
;;; threads (without IF NOT EXISTS),
;;; so the second init panics with
;;; "table threads already exists".
;; 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"
;;; END SQLite test isolation
;; The test spawns 'sh' after
;; env_clear() with an empty env map;
;; glibc execvp uses confstr(_CS_PATH)
;; ("/bin:/usr/bin") when PATH is
;; unset, but /bin/sh does not exist
;; in the build container.
"--skip" "cancellation_expiration_keeps_process_alive_until_terminated"
;; Proxy baseline_policy returns 403
;; "not_allowed_local" for example.com;
;; test expects 200.
"--skip" "managed_network_proxy_decider_survives_full_access_start"
;;; BEGIN bash_snapshot_script() uses
;;; "compgen -e" to list exports but
;;; bash-minimal lacks programmable
;;; completion; export section is empty.
;; stdout.contains("VALID_NAME") fails.
"--skip" "bash_snapshot_filters_invalid_exports"
;; stdout.contains("MULTILINE_CERT") fails.
"--skip" "bash_snapshot_preserves_multiline_exports"
;; snapshot.contains("PATH") fails.
"--skip" "linux_bash_snapshot_includes_sections"
;;; END compgen
;; substitute* patches PAGER to store
;; path of cat; test expects bare "cat".
"--skip" "unified_exec_env_injects_defaults"
;;; BEGIN V8 disabled (codex-code-mode
;;; default-features = false).
"--skip" "suite::code_mode::"
"--skip" "suite::js_repl::"
"--skip" "suite::view_image::js_repl_"
;;; END V8 disabled
;;; BEGIN same compgen root cause:
;;; assert_posix_snapshot_sections
;;; asserts snapshot.contains("PATH").
"--skip" "linux_shell_command_uses_shell_snapshot"
"--skip" "linux_unified_exec_uses_shell_snapshot"
"--skip" "shell_command_snapshot_still_intercepts_apply_patch"
;;; END compgen / shell snapshot
;;; BEGIN These sandbox tests set
;;; exclude_slash_tmp: true which makes
;;; bwrap exclude /tmp from its mount
;;; namespace. Since Guix builds under
;;; /tmp, the codex-linux-sandbox binary
;;; becomes invisible to bwrap even though
;;; the test adds the helper dir as a
;;; filesystem carve-out -- the parent /tmp
;;; bind-mount is absent so the carve-out
;;; has nothing to carve out of.
"--skip" "sandbox_reenables_writable_subpaths_under_unreadable_parents"
"--skip" "managed_proxy_mode_routes_through_bridge_and_blocks_direct_egress"
;;; END exclude_slash_tmp
;; Expects 3 TerminalInteraction events
;; across timed poll windows; under CPU
;; contention events merge into 2.
"--skip" "unified_exec_terminal_interaction_captures_delayed_output"
;;; BEGIN assert_parallel_duration
;;; requires < 1600 ms for parallel ops.
;; Two 300 ms test_sync_tool calls.
"--skip" "read_file_tools_run_in_parallel"
;; Two "sleep 0.25" shell commands.
"--skip" "shell_tools_run_in_parallel"
;; One test_sync_tool + one shell sleep.
"--skip" "mixed_parallel_tools_run_in_parallel"
;;; END assert_parallel_duration
;; Asserts elapsed >= 4500 ms and
;; < 5800 ms for a 5 s timeout; under
;; contention elapsed drifts past 5800.
"--skip" "remote_models_request_times_out_after_5s"
;; Queued inter-agent mail must be
;; injected between the reasoning/
;; commentary item and the gate release;
;; under contention the gate fires before
;; the mail is processed, so the snapshot
;; shows the stale function_call instead
;; of the expected mail message.
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_commentary_message_item"
;; Same root cause: snapshot mismatch at
;; pending_input.rs assert_two_responses_
;; input_snapshot; expects mail at position
;; 04 but gets function_call/shell instead.
"--skip" "queued_inter_agent_mail_triggers_follow_up_after_reasoning_item"
;;; BEGIN DNS for hostnames like
;;; example.com fails in the build
;;; sandbox. host_resolves_to_non_
;;; public_ip() in runtime.rs treats
;;; failed DNS as non-public and
;;; returns NotAllowedLocal, so tests
;;; expecting Allowed or Decider get
;;; Deny/BaselinePolicy instead.
"--skip" "host_blocked_requires_allowlist_match"
"--skip" "add_allowed_domain_removes_matching_deny_entry"
"--skip" "host_blocked_subdomain_wildcards_exclude_apex"
"--skip" "host_blocked_global_wildcard_allowlist_allows_public_hosts_except_denylist"
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_ask"
"--skip" "evaluate_host_policy_emits_domain_event_for_decider_allow_override"
"--skip" "http_connect_accept_blocks_in_limited_mode"
"--skip" "http_connect_accept_allows_allowlisted_host_in_full_mode"
"--skip" "mitm_policy_blocks_disallowed_method_and_records_telemetry"
;;; END DNS failure / NotAllowedLocal
;;; BEGIN Flaky: wiremock mock expects
;;; 1 POST to /codex/safety/arc but
;;; receives 0. Passes in some builds,
;;; fails in others with identical code
;;; and env. The identical custom_
;;; variant always passes; only the
;;; CODEX_APPS_MCP_SERVER_NAME variant
;;; flakes, suggesting a timing race
;;; in the async POST under contention.
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
;;; END ARC monitor flake
;;; BEGIN nss-certs sets SSL_CERT_FILE
;;; which makes build_reqwest_client load
;;; 171 CA certs via add_root_certificate.
;;; This changes the reqwest TLS backend
;;; configuration; the ARC safety POST to
;;; the localhost mock server never arrives
;;; (wiremock expects 1 request, gets 0).
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_for_model"
"--skip" "approve_mode_blocks_when_arc_returns_interrupt_without_annotations"
;;; END nss-certs / ARC monitor
;; Upstream bug: JsonRpcConnection has
;; no websocket keepalive or read timeout.
;; When the exec-server is killed, the
;; client's reader task blocks on
;; websocket_reader.next() forever because
;; TCP doesn't detect the dead peer without
;; a write or keepalive probe. Previously
;; masked because empty env made "sleep 10"
;; fail instantly; with PATH the process
;; lives long enough to hit the deadlock.
"--skip" "remote_exec_process_reports_transport_disconnect"
;; 500 ms timeout on MCP list response
;; (mcp_server_status.rs timeout at
;; Duration::from_millis(500)). With
;; nss-certs TLS now works, so the
;; startup plugin sync HTTP requests
;; (chatgpt.com, api.github.com) wait
;; for TCP timeout instead of failing
;; instantly at TLS, eating the budget.
"--skip" "mcp_server_status_list_tools_and_auth_only_skips_slow_inventory_calls")
"--skip" "deleting_thread_cascades_thread_memory")
#:cargo-package-crates
''(;;; Tier 0: No internal deps.
"codex-ansi-escape"
"codex-async-utils"
"codex-backend-openapi-models"
"codex-client"
"codex-execpolicy"
"codex-file-search"
"codex-git-utils"
"codex-git"
"codex-keyring-store"
"codex-process-hardening"
"codex-utils-absolute-path"
"codex-utils-cache"
"codex-utils-cargo-bin"
"codex-utils-elapsed"
"codex-utils-fuzzy-match"
"codex-utils-home-dir"
"codex-utils-json-to-toml"
"codex-utils-path"
"codex-utils-plugins"
"codex-utils-pty"
"codex-utils-readiness"
"codex-utils-rustls-provider"
"codex-utils-sleep-inhibitor"
"codex-utils-stream-parser"
"codex-utils-string"
"codex-utils-template"
;;; Tier 1.
"codex-backend-openapi-models"
"codex-process-hardening"
"codex-ansi-escape"
;;; Tier 1: Depends on tier 0.
"codex-utils-image"
"codex-utils-output-truncation"
"codex-apply-patch"
"codex-protocol"
"codex-windows-sandbox"
@@ -356,60 +226,35 @@
"codex-secrets"
"codex-execpolicy-legacy"
"codex-debug-client"
"codex-analytics"
"codex-rollout"
"codex-terminal-detection"
"codex-utils-approval-presets"
"codex-utils-cli"
;;; Tier 2.
"codex-app-server-protocol"
"codex-rmcp-client"
"codex-otel"
"codex-state"
"codex-features"
"codex-config"
"codex-hooks"
"codex-instructions"
"codex-code-mode"
"codex-feedback"
"codex-skills"
"codex-core"
"codex-utils-sandbox-summary"
"codex-linux-sandbox"
"codex-sandboxing"
"codex-connectors"
"codex-core-skills"
"codex-feedback"
;;; Tier 3.
"codex-arg0"
"codex-lmstudio"
"codex-login"
"codex-ollama"
"codex-utils-oss"
"codex-common"
"codex-mcp-server"
"codex-backend-client"
"codex-responses-api-proxy"
"codex-shell-command"
"codex-shell-escalation"
"codex-plugin"
"codex-model-provider-info"
"codex-models-manager"
;;; Tier 4.
"codex-cloud-requirements"
"codex-exec"
"codex-exec-server"
"codex-network-proxy"
"codex-stdio-to-uds"
"codex-network-proxy"
"codex-chatgpt"
"codex-cloud-tasks-client"
"codex-cloud-tasks-mock-client"
"codex-tools"
"codex-mcp"
"codex-collaboration-mode-templates"
;;; Tier 5.
"codex-app-server"
"codex-app-server-test-client"
"codex-tui"
"codex-response-debug-context"
;;; Tier 6.
"codex-cloud-tasks"
;; The main executable.
@@ -425,7 +270,7 @@
;; Update them to match the actual package version.
(let ((snap-files (find-files "." "\\.snap$")))
(substitute* snap-files
(("\\(v0\\.0\\.0\\) ") "(v0.120.0) ")))))
(("\\(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
@@ -434,34 +279,23 @@
(("nucleo = \\{ git = [^}]+\\}")
"nucleo = \"0.5.0\"")
(("runfiles = \\{ git = [^}]+\\}")
"runfiles = \"0.1.0\""))
;; Remove workspace members that have unbuildable deps
;; (libwebrtc requires git fetch, v8-poc requires V8).
(substitute* "Cargo.toml"
(("\"v8-poc\",") "")
(("\"code-mode\",") ""))
;; Disable V8 runtime in codex-code-mode: remove path
;; so cargo resolves it from the vendor (where it has
;; optional = true on v8) and disable default features.
(substitute* "Cargo.toml"
(("codex-code-mode = \\{ path = \"code-mode\" \\}")
"codex-code-mode = { version = \"0.120.0\", default-features = false }"))))
(add-after 'patch-git-deps-to-vendor 'add-version-to-workspace-deps
"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.120.0" to internal path dependencies.
;; 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.120.0\", path = "))
(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.120.0\", package = "))
(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.120.0\""))))))
(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
@@ -491,14 +325,6 @@
(string-append "\"" bash-bin "/bash "))
(("\"/bin/sh ")
(string-append "\"" bash-bin "/sh "))
;; Single-quoted paths in test assertion strings,
;; e.g. "exec '/bin/bash' -c ...". Must match the
;; double-quoted substitutions above so both sides
;; of assert_eq!/contains use the store path.
(("'/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 "\""))
@@ -513,120 +339,28 @@
(string-append "\"" git-bin "/git\""))
(("\"/usr/bin/sed\"")
(string-append "\"" sed-bin "/sed\"")))
;; Bare Command::new("git") and Command::new("ls")
;; in codex source files that exec internally.
(substitute* (find-files "git-utils" "\\.rs$")
(("Command::new\\(\"git\"\\)")
(string-append "Command::new(\"" git-bin "/git\")")))
(substitute* "tui/src/get_git_diff.rs"
(("Command::new\\(\"git\"\\)")
(string-append "Command::new(\"" git-bin "/git\")")))
(substitute* "core/src/turn_diff_tracker.rs"
(("Command::new\\(\"git\"\\)")
(string-append "Command::new(\"" git-bin "/git\")")))
(substitute* "cloud-tasks/src/env_detect.rs"
(("Command::new\\(\"git\"\\)")
(string-append "Command::new(\"" git-bin "/git\")")))
(substitute* "core/src/plugins/startup_sync.rs"
(("\"git\",")
(string-append "\"" git-bin "/git\",")))
(substitute* "file-search/src/lib.rs"
(("Command::new\\(\"ls\"\\)")
(string-append "Command::new(\"" coreutils-bin "/ls\")")))
;; Neutralize pager with absolute path to cat.
(substitute* "core/src/unified_exec/process_manager.rs"
(("\"PAGER\", \"cat\"")
(string-append "\"PAGER\", \"" coreutils-bin "/cat\""))
(("\"GIT_PAGER\", \"cat\"")
(string-append "\"GIT_PAGER\", \"" coreutils-bin "/cat\""))
(("\"GH_PAGER\", \"cat\"")
(string-append "\"GH_PAGER\", \"" coreutils-bin "/cat\"")))
;; Bare /bin/sleep inside a format! string
;; (no surrounding double quotes, so the main
;; pattern does not match).
(substitute*
"shell-escalation/src/unix/escalate_server.rs"
(("/bin/sleep")
(string-append coreutils-bin "/sleep")))
;; @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")))
;; Shebangs inside raw string literals (r#"..."#)
;; that are written to scripts at runtime. The
;; main "/bin/sh" patterns only match double-quoted
;; occurrences; these shebangs have no surrounding
;; double quotes.
;; shebang in test-only file
(substitute*
(list "core/src/plugins/startup_sync_tests.rs"
"core/tests/suite/client.rs"
"core/tests/suite/js_repl.rs"
"core/tests/suite/skill_approval.rs"
"core/tests/suite/user_notification.rs"
"login/src/auth/auth_tests.rs"
"models-manager/src/manager_tests.rs"
"sandboxing/src/bwrap_tests.rs")
"core/tests/suite/user_notification.rs"
(("#!/bin/bash")
(string-append "#!" bash-bin "/bash"))
(("#!/bin/sh")
(string-append "#!" bash-bin "/sh")))
;; Test helpers pass env: Default::default() to the
;; spawn code which calls env_clear(), leaving
;; processes with no PATH. Inject the build-time
;; PATH so tests find coreutils, bash, etc.
(substitute* (find-files "." "\\.rs$")
(("env: Default::default\\(\\)")
(string-append
"env: std::env::var(\"PATH\")"
".into_iter()"
".map(|p| (\"PATH\".to_string(), p))"
".collect()")))
;; Test-only absolute path; bare name works via PATH.
(substitute* "exec-server/tests/exec_process.rs"
(("\"/usr/bin/python3\"")
"\"python3\""))
;; Same empty-env issue but in JSON literals
;; (serde_json::json! macro).
(substitute* "exec-server/tests/process.rs"
(("\"env\": \\{\\}")
(string-append
"\"env\": {\"PATH\": \""
(getenv "PATH")
"\"}"))))))
(add-before 'build 'set-bubblewrap-source
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CODEX_BWRAP_SOURCE_DIR"
(string-append
(assoc-ref inputs "bubblewrap-source")
"/"))))
(add-before 'build 'create-node-version-file
(lambda _
(call-with-output-file "guix-vendor/node-version.txt"
(lambda (port)
(display "22.22.0" port)))))
(string-append "#!" bash-bin "/bash"))))))
(add-before 'check 'set-home
(lambda _
;; HOME must not be a prefix of /tmp, otherwise
;; the TUI's path shortener replaces /tmp/... with
;; ~/... and 30 snapshot tests fail.
(setenv "HOME" "/tmp/guix-home")
(mkdir-p "/tmp/guix-home")
(setenv "HOME" "/tmp")
(setenv "USER" "nixbld"))))))
(native-inputs `(("bubblewrap" ,bubblewrap) ;tests need bwrap on PATH
("clang" ,clang)
("cmake-minimal" ,cmake-minimal)
("libunwind" ,libunwind)
("lsof" ,lsof) ;app-server tests
("nss-certs-for-test" ,nss-certs-for-test) ;OTLP gRPC TLS
("perl" ,perl)
("procps" ,procps) ;tests use ps
("python-minimal" ,python-minimal)
("pkg-config" ,pkg-config)
("bubblewrap-source" ,(package-source bubblewrap))))
(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
libcap oniguruma openssl sqlite zlib `(,zstd "lib")
openssl sqlite `(,zstd "lib")
(cargo-inputs 'codex)))
(home-page "https://github.com/openai/codex")
(synopsis "AI-assisted coding CLI and TUI")
@@ -634,15 +368,13 @@
"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}.
codex-code-mode's V8 Javascript executor is disabled.")
Configure providers via @file{~/.codex/config.toml}.")
(license license:asl2.0)))
(define-public codex-acp
(package
(name "codex-acp")
(version "0.11.1")
(version "0.9.2")
(source
(origin
(method git-fetch)
@@ -651,8 +383,9 @@ codex-code-mode's V8 Javascript executor is disabled.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rlgkbvrbdl5jhf49sjn2mifn2rq6z0vwf0gard23y1bz6sr3wmr"))
(patches (search-patches "codex-acp-0.11.1-remove-patch-sections.patch"))))
(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
@@ -660,43 +393,13 @@ codex-code-mode's V8 Javascript executor is disabled.")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-codex-deps
(lambda* (#:key inputs #:allow-other-keys)
(lambda _
;; Rewrite git dependencies to use vendored sources from rust-codex
(substitute* "Cargo.toml"
(("git = \"https://github.com/openai/codex\", tag = \"rust-v0.117.0\"")
"version = \"0.117.0\""))
;; Disable V8 runtime in codex-code-mode (transitive dep).
(let ((port (open-file "Cargo.toml" "a")))
(display "
[dependencies.codex-code-mode]
version = \"0.117.0\"
default-features = false
" port)
(close-port port))
;; Point codex-linux-sandbox at system bubblewrap source.
(setenv "CODEX_BWRAP_SOURCE_DIR"
(string-append
(assoc-ref inputs "bubblewrap-source")
"/"))))
(add-before 'check 'set-home
(lambda _
(setenv "HOME" "/tmp")
(setenv "USER" "nixbld")))
(add-before 'build 'create-node-version-file
(lambda _
;; codex-core's js_repl uses include_str! to read
;; node-version.txt four directories up from its source;
;; create it where the vendored crate expects it.
(call-with-output-file "guix-vendor/node-version.txt"
(lambda (port)
(display "22.22.0" port))))))))
(native-inputs
`(("cmake-minimal" ,cmake-minimal)
("clang" ,clang)
("pkg-config" ,pkg-config)
("bubblewrap-source" ,(package-source bubblewrap))))
(inputs (cons* libcap openssl sqlite zlib `(,zstd "lib")
(cargo-inputs 'codex-acp)))
(("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
+2 -2
View File
@@ -150,7 +150,7 @@ as created by Podman, CRI-O and containerd.")))
(define-public crun
(package
(name "crun")
(version "1.26")
(version "1.25.1")
(source
(origin
(method url-fetch)
@@ -160,7 +160,7 @@ as created by Podman, CRI-O and containerd.")))
"/crun-" version ".tar.gz"))
(sha256
(base32
"1hdwk5dpsz9danxiyfli07b7sqid6hr34qmhs5qjl2dcc00is89j"))))
"02kksvnja234k8mpq5j7yms8npbpvh8iz3k03h21lwcqzqsb88rx"))))
(build-system gnu-build-system)
(arguments
(list
+9 -7
View File
@@ -44,7 +44,7 @@
;;; Copyright © 2024 Jakob Kirsch <jakob.kirsch@web.de>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Sergio Pastor Pérez <sergio.pastorperez@gmail.com>
;;; Copyright © 2025, 2026 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Romain Garbage <romain.garbage@inria.fr>
;;; Copyright © 2024, 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
@@ -3360,7 +3360,7 @@ which can evaluate Jsonnet files and expressions.")))
(define-public simdjson
(package
(name "simdjson")
(version "4.6.3")
(version "3.13.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3369,7 +3369,7 @@ which can evaluate Jsonnet files and expressions.")))
(file-name (git-file-name name version))
(sha256
(base32
"0729mxnc2wjb94gr4znwlzfmgw5w2v9kd8glvn3vnjhkdnd87zry"))))
"005yli56nrkvlyx9g9cq8dczk42r9a18l162i2s5k81lj3y7mcrp"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; tests require downloading dependencies
@@ -3608,7 +3608,7 @@ std::wstring, etc).")
(define-public fast-float
(package
(name "fast-float")
(version "8.2.5")
(version "8.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -3617,7 +3617,7 @@ std::wstring, etc).")
(file-name (git-file-name name version))
(sha256
(base32
"1l13nsl4sgq71m7aifrmmmfyl14vp48vqdh7pb50hxqq6f8bq2b5"))))
"19x1yklf641yrpad6lk4cq3jmird10d5ig8hicm3p9lxh92k78cl"))))
(build-system cmake-build-system)
(arguments
(list
@@ -3628,10 +3628,12 @@ std::wstring, etc).")
(add-after 'unpack 'patch-cmake-tests
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(substitute* "tests/CMakeLists.txt"
(("FetchContent_MakeAvailable\\(supplemental_test_files.*")
(("FetchContent_GetProperties\\(supplemental_test_files.*")
"")
(("if\\(NOT supplemental_test_files_POPULATED.*")
(string-append
"set(supplemental_test_files_BINARY_DIR "
#$fast-float-test-files ")\n"))))))))
#$fast-float-test-files ")\nif(0)\n"))))))))
(native-inputs (list doctest fast-float-test-files))
(home-page "https://github.com/fastfloat/fast_float")
(synopsis "Floating point number parser for C++")
+625 -101
View File
File diff suppressed because it is too large Load Diff
+12 -11
View File
@@ -276,17 +276,18 @@ Ed448-Goldilocks and Curve448, using the Decaf encoding.")
(define-public libsodium
(package
(name "libsodium")
(version "1.0.22")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jedisct1/libsodium")
(commit (string-append version "-RELEASE"))))
(file-name (git-file-name name version))
(sha256
(base32
"05lqdn6nzldsia5mv5a9xfvc5k0kybh9snwv7qsb135gva4bpjwk"))))
(version "1.0.18")
(source (origin
(method url-fetch)
(uri (list (string-append
"https://download.libsodium.org/libsodium/"
"releases/libsodium-" version ".tar.gz")
(string-append
"https://download.libsodium.org/libsodium/"
"releases/old/libsodium-" version ".tar.gz")))
(sha256
(base32
"1h9ncvj23qbbni958knzsli8dvybcswcjbx0qjjgi922nf848l3g"))))
(build-system gnu-build-system)
(synopsis "Portable NaCl-based crypto library")
(description
-110
View File
@@ -69,8 +69,6 @@
;;; Copyright © 2025 Simen Endsjø <contact@simendsjo.me>
;;; Copyright © 2025 bdunahu <bdunahu@operationnull.com>
;;; Copyright © 2026 Spencer King <spencer.king@wustl.edu>
;;; Copyright © 2026 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2026 Josep Bigorra <jjbigorra@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -127,7 +125,6 @@
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages language)
@@ -200,7 +197,6 @@
#:use-module (guix build-system emacs)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system guile)
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system pyproject)
@@ -3100,64 +3096,6 @@ Driver.")
;; COPYING contains copy of lgpl2.1 - but copyright notices just say "LGPL"
(home-page "https://www.unixodbc.org")))
(define-public sqliteodbc
(package
(name "sqliteodbc")
(version "0.99991")
(source (origin
(method url-fetch)
(uri (string-append "http://www.ch-werner.de/sqliteodbc/"
name "-" version ".tar.gz"))
(sha256
(base32
"0p4avhqxnd2l49g3vpzwrmdi8wxyqzy0vswalaagmqfdsfwav52d"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ; no check target
#:configure-flags
#~(list "--disable-static"
(string-append "--with-sqlite3=" #$(this-package-input "sqlite"))
(string-append "--with-odbc=" #$(this-package-input "unixodbc")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'create-lib-directory
(lambda _
(mkdir-p (string-append #$output "/lib"))))
(add-after 'install 'remove-extra-sqlite-extensions
(lambda _
;; Keep this package focused on the ODBC driver itself.
(for-each delete-file
(find-files (string-append #$output "/lib")
"^libsqlite3_mod_.*\\.(la|so)$"))))
(add-after 'install 'install-odbcinst.ini
(lambda _
(let ((dir (string-append #$output "/share/sqliteodbc")))
(mkdir-p dir)
(call-with-output-file (string-append dir "/odbcinst.ini")
(lambda (port)
(display
(string-append
"[SQLite3]\n"
"Description = SQLite3 ODBC Driver\n"
"Driver = " #$output "/lib/libsqlite3odbc.so\n"
"Setup = " #$output "/lib/libsqlite3odbc.so\n"
"Threading = 2\n")
port)))))))))
(native-search-paths
(list (search-path-specification
(variable "ODBCSYSINI")
(files '("share/sqliteodbc"))
(separator #f))))
(inputs (list sqlite unixodbc))
(home-page "http://www.ch-werner.de/sqliteodbc/")
(synopsis "ODBC driver for SQLite")
(description
"SQLiteODBC provides an ODBC driver for SQLite 3 databases. It installs
the shared library and a driver registration file so applications using
unixODBC can resolve the @code{SQLite3} driver name from a Guix profile.")
(license license:tcl/tk)))
(define-public nanodbc
(package
(name "nanodbc")
@@ -5049,54 +4987,6 @@ postgresql = postgresql://nixbld@/yoyo_test~%")))
files or Python scripts that define a list of migration steps.")
(license license:asl2.0)))
(define-public mutastructura
(package
(name "mutastructura")
(version "0.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/jjba23/mutastructura")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "08vzlc5imavqf3bdzgbh70c7z44xjhf05gr7i2g5ksl49lv39gzh"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "src"
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'install-program-files
(lambda _
(let* ((bin (string-append #$output "/bin"))
(share (string-append #$output "/share")))
(copy-recursively "resources"
(string-append share "/resources"))
(install-file "scripts/mutastructura" bin)
(install-file "scripts/log.bash"
(string-append share "/scripts/"))
(chmod (string-append bin "/mutastructura") #o755)))))))
(native-inputs (list guile-3.0))
(propagated-inputs (list guile-dbi
guile-dbd-mysql
guile-dbd-sqlite3
guile-dbd-postgresql
guile-gcrypt))
(inputs (list guile-3.0 bash-minimal))
(home-page "https://codeberg.org/jjba23/mutastructura")
(synopsis "Relational database schema migrations powered by Guile Scheme")
(description
"Mutastructura provides a familiar, declarative and transactional
approach to managing database states. It exposes a user-friendly
@acronym{CLI, command-line interface} and has support for PostgreSQL, MySQL, and SQLite.
It also exposes library functions and can be imported and used directly from other Guile code.
Features include executing migrations transactionally and computing SHA256
checksums to track schema evolution in a @code{migrations_history} table.")
(license license:agpl3+)))
(define-public python-mysqlclient
(package
(name "python-mysqlclient")
+1 -46
View File
@@ -31,7 +31,7 @@
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se>
;;; Copyright © 2025, 2026 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2025 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2025 Grigory Shepelev <shegeley@gmail.com>
;;; Copyright © 2026 Luis Guilherme Coelho <lgcoelho@disroot.org>
@@ -94,8 +94,6 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang-build)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-compression)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
@@ -422,49 +420,6 @@ tables, and it understands a variety of different formats.")
similarity.")
(license license:gpl3+)))
(define-public gdu
(package
(name "gdu")
(version "5.35.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dundee/gdu")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "051xf3wncdiavjwyl9djmni5vd2dqjgn6drkw2nm21c9l0rjfv6d"))))
(build-system go-build-system)
(arguments
(list
#:install-source? #f
#:import-path "github.com/dundee/gdu/v5/cmd/gdu"
#:unpack-path "github.com/dundee/gdu/v5"))
(native-inputs
(list go-github-com-dgraph-io-badger-v4
go-github-com-fatih-color
go-github-com-gdamore-tcell-v2
go-github-com-h2non-filetype
go-github-com-maruel-natural
go-github-com-mattn-go-isatty
go-github-com-pkg-errors
go-github-com-rivo-tview
go-github-com-sirupsen-logrus
go-github-com-spf13-cobra
go-github-com-stretchr-testify
go-github-com-ulikunitz-xz
go-golang-org-x-sys
go-golang-org-x-text
go-gopkg-in-yaml-v3
go-modernc-org-sqlite))
(home-page "https://github.com/dundee/gdu")
(synopsis "Disk usage analyzer")
(description "Gdu is a disk usage analyzer written in Go. It is intended
primarily for SSD disks where it can fully utilize parallel processing, but it
also works on HDDs.")
(license license:expat)))
(define-public gpart
;; The latest (0.3) release is from 2015 and is missing a crash fix.
(let ((commit "ec03350a01ad69708b5a3e2d47b8e002b0eba6c9")
-89
View File
@@ -77,8 +77,6 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages ragel)
#:use-module (gnu packages serialization)
@@ -95,8 +93,6 @@
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
@@ -307,58 +303,6 @@ protocol.")
(home-page "https://github.com/earlchew/cloudflare-cli")
(license license:expat))))
(define-public ddclient
(package
(name "ddclient")
(version "4.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ddclient/ddclient")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sz4f7qx4yjg6q6ybhzilb7f0kshz46c54y3i4hq2nww2bhkc8a4"))))
(build-system gnu-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'bootstrap 'patch-ddclient.in-shebang
(lambda _
;; This is run in the bootstrap phase, so patch before
(patch-shebang "ddclient.in")))
(add-after 'install 'wrap-program
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/ddclient")
`("PERL5LIB" ":" prefix
,(map (lambda (input-name)
(string-append (assoc-ref inputs input-name)
"/lib/perl5/site_perl"))
'("perl-json")))))))))
(native-inputs
(list autoconf
automake
perl-http-daemon
perl-plack
perl-test-mockmodule
perl-test-tcp
perl-test-warnings))
(inputs
(list curl
perl
perl-json
bash-minimal))
(home-page "https://github.com/ddclient/ddclient")
(synopsis "Dynamic DNS update client")
(description
"ddclient is used to update dynamic DNS entries for accounts on many
dynamic DNS services. It supports a wide range of routers and protocols,
including Cloudflare, Namecheap, DynDNS, FreeDNS, Google Domains, and many
more.")
(license license:gpl2+)))
(define-public ldns
(package
(name "ldns")
@@ -554,39 +498,6 @@ and BOOTP/TFTP for network booting of diskless machines.")
;; Source files only say GPL2 and GPL3 are allowed.
(license (list license:gpl2 license:gpl3))))
(define-public dnsupdate
(package
(name "dnsupdate")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lopsided98/dnsupdate")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0bp6mm0yhg4hs698xdmvcfad4jqf5rgb1cab88pfzyx9w52x0ag6"))))
(build-system pyproject-build-system)
(arguments
(list #:test-backend #~'unittest
#:test-flags #~'("discover" "-p" "*_test.py")))
(native-inputs
(list python-setuptools))
(propagated-inputs
(list python-beautifulsoup4
python-netifaces
python-pyyaml
python-requests))
(home-page "https://github.com/lopsided98/dnsupdate")
(synopsis "Modern and flexible dynamic DNS client")
(description
"Dnsupdate is a dynamic DNS client that provides support for multiple DNS
services, including Afraid.org FreeDNS, Cloudflare, IETF standard DNS
updates (nsupdate), and custom HTTP-based services. It uses YAML
configuration files and supports multiple address detection methods.")
(license license:gpl3+)))
;; 'bind' is the name of a built-in Guile procedure, which is why we choose a
;; different name here.
(define-public isc-bind
+7 -9
View File
@@ -1069,7 +1069,7 @@ characterization result in a liberty library file.")
(define-public kicad
(package
(name "kicad")
(version "10.0.1")
(version "10.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -1077,7 +1077,7 @@ characterization result in a liberty library file.")
(commit version)))
(sha256
(base32
"1mnlv8fyz03pfg8pkqwdl5gjz6vsk98c6414lf3wkvrkb85ljaav"))
"1470x1276yvd8li3w25zjg73fkpl2qp4dsx7adanafq5c4l47rmc"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@@ -1185,9 +1185,7 @@ characterization result in a liberty library file.")
"Kicad is a program for the formation of printed circuit
boards and electrical circuits. The software has a number of programs that
perform specific functions, for example, pcbnew (Editing PCB), eeschema (editing
electrical diagrams), gerbview (viewing Gerber files) and others. To use
SQLite-backed database libraries, install the optional @code{sqliteodbc}
package.")
electrical diagrams), gerbview (viewing Gerber files) and others.")
(license license:gpl3+)))
(define-public kicad-doc
@@ -1202,7 +1200,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"1c0vn13rp0z12rlqhl321pk2gj9577dyky6xj3i6hb040i3v7zrr"))))
"1k0ayxsy0nnv9qxkii9yrxs7jx9y3wfjpsv5yl9wql3vdg3qay69"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html"
@@ -1234,7 +1232,7 @@ package.")
(file-name (git-file-name name version))
(sha256
(base32
"0iz4lb33wdsw4f82a0ln8ycgaf39gjws03mvl2j1q9npwj6xl1cm"))))
"0khfnln0f2zsz5hy31nw2rr0nflb2z3s9n9f7g41g03m9l3s43v2"))))
(build-system cmake-build-system)
(native-inputs (list python-wrapper))
(arguments
@@ -1264,7 +1262,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0jqgyi1yb2zc6w56ba7xama0wnhrqwbbnf2fqvr47xihvdcvs87v"))))
"0ymmd1rzrczpvcqzw1mld9x8xhbka0vvjy3kdqwysg4ri97f5wrm"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@@ -1281,7 +1279,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0jr70ry6inzc2fy3s300z0zlmihbq95ba1zckyd1wwbpplaj1gbl"))))
"0k91iw661fpzb7saryjxdcdvk1kis7dhbcpzp7xzjk84i4jvxrp5"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
+2 -2
View File
@@ -290,7 +290,7 @@ based upon the Common Locale Data Repository (CLDR).")
(package
(inherit elixir-ex-cldr-minimal)
(name "elixir-ex-cldr")
(version "2.47.2")
(version "2.43.2")
(source
(origin
;; The hex.pm package ships only the en locale.
@@ -300,7 +300,7 @@ based upon the Common Locale Data Repository (CLDR).")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rivy61aq0c9zfklm4bpvvkj7lzjgy316rwxl8qz92xqp6xa292y"))))
(base32 "1wgwp74ya0gkvd5pk4qv9s38p85r5yw370y4wv7jywy3hrbrj9f5"))))
(arguments
(list
#:phases
+1 -11
View File
@@ -303,17 +303,7 @@ purposes. Its goal is to be as close as possible to
(list
#:test-flags
;; These tests require network access to badssl.com.
#~(list "--exclude" "network")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
(lambda _
;; Buffer size has been increased in OTP 28+. For more info see:
;; https://github.com/erlang/otp/issues/9722#issuecomment-2808683303
(substitute* "test/httpoison_test.exs"
(("stream/20") "stream/100")
(("<= expected_length") "<= expected_length * 1.1")
((">= max_length") ">= max_length * 0.9")))))))
#~(list "--exclude" "network")))
(native-inputs
(list erlang-cowboy
elixir-earmark
+1 -2
View File
@@ -164,8 +164,7 @@ Mix.CLI.main()"
'("ERL_LIBS" prefix ("${GUIX_ELIXIR_LIBS}"))))
programs))))))))
(outputs '("out" "src"))
(inputs (list bash-minimal erlang rebar3))
(native-inputs (list git-minimal))
(inputs (list bash-minimal erlang rebar3 git))
(native-search-paths
(list (search-path-specification
(variable "GUIX_ELIXIR_LIBS")
+84 -446
View File
@@ -56,7 +56,7 @@
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2019 Stephen Webber <montokapro@gmail.com>
;;; Copyright © 2019, 2021—2026 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net>
@@ -147,7 +147,7 @@
;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024, 2025 Spencer King <spencer.king@wustl.edu>
;;; Copyright © 2024 emma thompson <bigbookofbug@proton.me>
;;; Copyright © 2024-2026 Liam Hupfer <liam@hpfr.net>
;;; Copyright © 2024-2025 Liam Hupfer <liam@hpfr.net>
;;; Copyright © 2024-2025 Alvin Hsu <aurtzy@gmail.com>
;;; Copyright © 2024 Olivier Rojon <o.rojon@posteo.net>
;;; Copyright © 2024 Divya Ranjan Pattanaik <divya@subvertising.org>
@@ -264,7 +264,6 @@
#:use-module (gnu packages lisp-xyz)
#:use-module (gnu packages lsof)
#:use-module (gnu packages lua)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
#:use-module (gnu packages music)
#:use-module (gnu packages version-control)
@@ -656,30 +655,6 @@ supported algorithm is chosen to ensure interoperability with
Emacs Lisp.")
(license license:gpl3)))
(define-public emacs-org-arbeitszeit
(package
(name "emacs-org-arbeitszeit")
(version "0.0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bkaestner/org-arbeitszeit")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0krxainwpn7bnnvbrrhivmh302i9dyfixs6l5wb7xw7qpjgwqzc8"))))
(build-system emacs-build-system)
(arguments (list #:tests? #f)) ; no tests
(home-page "https://github.com/bkaestner/org-arbeitszeit")
(synopsis "Calculate your worktime")
(description
"This package provides a new dynamic block for Org called \"arbeitszeit\"
(German for \"working hours\"). The dynamic block collects all clocked hours and
provides a weekly table to quickly see your accumulated overtime. To insert a
new block, use @samp{M-x org-dynamic-block-insert-dblock}.")
(license license:gpl3+)))
(define-public emacs-perl-doc
(package
(name "emacs-perl-doc")
@@ -781,54 +756,6 @@ balance windows (keeping them roughly the same size) whenever the window
configuration changes, e.g. after splitting or deleting a window.")
(license license:bsd-3))))
(define-public emacs-ben
(package
(name "emacs-ben")
(version "0.12.11")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/pastor/ben.el")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0iqrk87dl567vwpwm8rmplrpva475a04s6c34rm24xfy2m7wrwk6"))))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-environment
(lambda _
;; Since the testsuite uses `direnv', the build needs a home
;; directory so `direnv' can allow the contents of the `.envrc`
;; files generated for the different tests.
(setenv "HOME" "/tmp")
(setenv "OFFLINE" "1") ;Enable offline tests.
(emacs-substitute-variables "ben.el"
("ben-direnv-executable"
#$(file-append (this-package-input "direnv")
"/bin/direnv"))))))))
(inputs (list direnv))
(propagated-inputs (list emacs-inheritenv))
(home-page "https://codeberg.org/pastor/ben.el")
(synopsis "Asynchronous buffer-local environments via @command{direnv}")
(description
"This package allows you to load environments buffer locally. The
package is named @command{ben}, which stands for Buffer ENvironments.
The project relies on @uref{https://direnv.net, direnv} which allows setting
per-directory environments through @file{.envrc} files.
The main improvement of @command{ben} over @command{envrc} is the asynchronous
processing of environments, which prevents Emacs from freezing. This is
especially useful while loading computationally heavy environments, such when
loading @file{.envrc} files that rely on Guix. In these cases, computations
can take hours to complete. This package aims to facilitate loading such
environments in the background.")
(license license:gpl3+)))
(define-public emacs-bookmark-plus
(package
(name "emacs-bookmark-plus")
@@ -906,7 +833,7 @@ input via a small child-frame spawned at the position of the cursor.")
(define-public emacs-arei
(package
(name "emacs-arei")
(version "0.9.7")
(version "0.9.6")
(source
(origin
(method git-fetch)
@@ -916,13 +843,10 @@ input via a small child-frame spawned at the position of the cursor.")
(file-name (git-file-name name version))
(sha256
(base32
"1fp4l8rzfd7cds80p8c9jgwwlb7rsw35djh0hs50g89h937w5s02"))))
"1m8ic5pcshz2y2maxvbgg70n4k2kgxvj98zisqal15j7djz0hzji"))))
(build-system emacs-build-system)
(arguments
(list #:lisp-directory "lisp"
#:tests? #f)) ; no tests
(propagated-inputs
(list emacs-consult emacs-eros emacs-sesman emacs-queue))
(arguments (list #:tests? #f)) ; no tests
(propagated-inputs (list emacs-eros emacs-sesman emacs-queue))
(home-page "https://git.sr.ht/~abcdw/emacs-arei")
(synopsis "Asynchronous Reliable Extensible IDE")
(description "Sleek Guile IDE for Emacs.")
@@ -4404,39 +4328,25 @@ perform static analysis of Perl code.")
(license license:gpl3+)))
(define-public emacs-flymake-flycheck
(let ((commit "cbc0fc81bf369b36fe29a49d9e24708027f6da38")
(revision "0"))
(package
(name "emacs-flymake-flycheck")
(version (git-version "0.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/purcell/flymake-flycheck")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0fda1n8hhklbq6p1s2dlvgc9xd0qy7qzb8yvxq89idx1irjx0785"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; There is only a lint-check
(propagated-inputs
(list emacs-flycheck))
(home-page "https://github.com/purcell/flymake-flycheck")
(synopsis "Use Flycheck checkers as Flymake backends")
(description
"This package provides support for running any Flycheck checker as a
(package
(name "emacs-flymake-flycheck")
(version "20210404.2128")
(source
(origin
(method url-fetch)
(uri (string-append "https://melpa.org/packages/flymake-flycheck-"
version ".el"))
(sha256
(base32 "1m59ahd5gjlfwf328labwdlpcxh8ywywkwgfrlsy5jyxfc9ss4nv"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-flycheck))
(home-page "https://github.com/purcell/flymake-flycheck")
(synopsis "Use Flycheck checkers as Flymake backends")
(description
"This package provides support for running any Flycheck checker as a
Flymake diagnostic backend. The effect is that Flymake will control when the
checker runs, and Flymake will receive its errors.")
(license license:gpl3+))))
(define-public emacs-flymake-flycheck-superseded-version
(package
(inherit emacs-flymake-flycheck)
(version "20210404.2128")
(properties (list (cons 'superseded emacs-flymake-flycheck)))))
(license license:gpl3+)))
(define-public emacs-flymake-quickdef
;; This particular commit includes bug fixes on top of 1.0.0 release.
@@ -8568,36 +8478,23 @@ them whenever another command is invoked.")
(license license:gpl3+)))
(define-public emacs-keyfreq
(let ((commit "c6955162307f37c2ac631d9daf118781009f8dda")
(revision "0"))
(package
(name "emacs-keyfreq")
(version (git-version "1.8" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dacap/keyfreq")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"18iw0jwr9hmxv5vikqf28sknml0k14rvddp80s2cm6bglaz4sdc3"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; No tests
(home-page "https://github.com/dacap/keyfreq")
(synopsis "Track Emacs command frequencies")
(description
"@code{emacs-keyfeq} tracks and shows how many times you used a command.")
(license license:gpl3+))))
(define-public emacs-keyfreq-superseded-version
(package
(inherit emacs-keyfreq)
(name "emacs-keyfreq")
(version "20160516.716")
(properties (list (cons 'superseded emacs-keyfreq)))))
(source
(origin
(method url-fetch)
(uri (string-append "http://melpa.org/packages/keyfreq-"
version ".el"))
(sha256
(base32
"008hd7d06qskc3mx0bbdgpgy2pwxr8185fzlyqf9qjg49y74p6g8"))))
(build-system emacs-build-system)
(home-page "https://github.com/dacap/keyfreq")
(synopsis "Track Emacs command frequencies")
(description "@code{emacs-keyfeq} tracks and shows how many times you used
a command.")
(license license:gpl3+)))
(define-public emacs-khalel
(package
@@ -13593,8 +13490,8 @@ for compilation, debugging, documentation lookup, and so on.")
(license (list license:gpl2+ license:public-domain))))
(define-public emacs-sliver
(let ((commit "b4cb9cd2a810ba59c946e2592c4a4d56060a8d22")
(revision "1"))
(let ((commit "d08d41947bb943f25ee2de9573459a6c720e027f")
(revision "0"))
(package
(name "emacs-sliver")
;; No tagged releases. Version comes from source code.
@@ -13607,7 +13504,7 @@ for compilation, debugging, documentation lookup, and so on.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1wddivmp5f4m6fdib96vfylqp4kgcw3ipdsi4b9w50dqzvrqrfjh"))))
(base32 "08qycim0mxyiqbik9hjlmzpdggl506bcsv1q1icxzd05bm73sh6n"))))
(build-system emacs-build-system)
(arguments
(list
@@ -13909,28 +13806,6 @@ structure as input representing the HTML tree you want to generate and
generates it as a string. Please see the homepage for usage examples.")
(license license:gpl3+))))
(define-public emacs-jag
(package
(name "emacs-jag")
(version "0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/martianh/jag.el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0hfv3hf0p7y5imrzb6rv90cjxd22ih2n529ggc7fwgd1n40zvgj8"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-string-inflection emacs-swagg))
(home-page "https://codeberg.org/martianh/jag.el")
(synopsis "Generate API client libraries in elisp using swagg.el")
(description
"This package provides utilities to use swagg.el to generate API client
libraries from Swagger specs.")
(license license:gpl3+)))
(define-public emacs-jedi
(package
(name "emacs-jedi")
@@ -15355,39 +15230,25 @@ markdown features.")
(license license:gpl3)))
(define-public emacs-2048-game
;; No tagged releases. Version comes from 2048-game.el
(let ((changeset "0e7210d05e6faf53c7bdc8be2381dc0d4c8b19f3")
(revision "0"))
(package
(name "emacs-2048-game")
(version (hg-version "2023.8.8.1" revision changeset))
(source
(origin
(method hg-fetch)
(uri (hg-reference
(url "https://hg.sr.ht/~zck/game-2048")
(changeset changeset)))
(file-name (hg-file-name name version))
(sha256
(base32
"01xzmi2613d4zwnrh9iywipxx8ml76yqik90mx4mpyar19a6ypi8"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f)) ; No tests
(home-page "https://hg.sr.ht/~zck/game-2048")
(synopsis "Implementation of the game 2048 in Emacs Lisp")
(description
"This program is an implementation of 2048 for Emacs.
(package
(name "emacs-2048-game")
(version "20151026.1233")
(source
(origin
(method url-fetch)
(uri (string-append "https://melpa.org/packages/2048-game-"
version ".el"))
(sha256
(base32
"0gy2pvz79whpavp4jmz8h9krzn7brmvv3diixi1d4w51pcdvaldd"))))
(build-system emacs-build-system)
(home-page "https://hg.sr.ht/~zck/game-2048")
(synopsis "Implementation of the game 2048 in Emacs Lisp")
(description
"This program is an implementation of 2048 for Emacs.
The goal of this game is to create a tile with value 2048. The size of the
board and goal value can be customized.")
(license license:gpl3+))))
(define-public emacs-2048-game-superseded-version
(package
(inherit emacs-2048-game)
(version "20151026.1233")
(properties (list (cons 'superseded emacs-2048-game)))))
(license license:gpl3+)))
(define-public emacs-chess
(package
@@ -15872,16 +15733,8 @@ versions utilizing Consult's internal API.")
(arguments
(list
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
;; Move the extensions source files to the top level, which is
;; included in the EMACSLOADPATH.
(add-after 'unpack 'move-source-files
(lambda _
(let ((el-files (find-files "./extensions" ".*\\.el$")))
(for-each (lambda (f)
(rename-file f (basename f)))
el-files)))))))
#:include #~(cons "^extensions\\/consult-eglot-embark"
%default-include)))
(propagated-inputs (list emacs-consult emacs-eglot emacs-embark))
(home-page "https://github.com/mohkale/consult-eglot")
(synopsis "Consulting-read interface for eglot")
@@ -16963,32 +16816,6 @@ The following completions are currently available:
@end itemize")
(license license:gpl3+)))
(define-public emacs-swagg
(package
(name "emacs-swagg")
(version "0.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/isamert/swagg.el")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1xlknc7j5vz1sv5gwr8v6vyfginflsksjyzx6qz1svibkdwp223g"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-compat
emacs-dash
emacs-s
emacs-request
emacs-yaml))
(home-page "https://github.com/isamert/swagg.el")
(synopsis "UI to interact with OpenAPI definations")
(description
"This package provides a practical Emacs UI for OpenAPI definitions. It
lets you fetch and interact with OpenAPI (formerly Swagger) definitions.")
(license license:gpl3+)))
(define-public emacs-sway
(let ((commit "84eae5e16a643eb00b0a422ded751cceb17cc8f0")
(revision "0"))
@@ -25154,7 +24981,7 @@ lines, and @code{gc} to comment out the target of a motion.")
(define-public emacs-eglot
(package
(name "emacs-eglot")
(version "1.23")
(version "1.21")
(source
(origin
(method url-fetch)
@@ -25162,7 +24989,7 @@ lines, and @code{gc} to comment out the target of a motion.")
".tar"))
(sha256
(base32
"1l83c90rdamlk576bd859jkg6406hgxi7w4c6ixlw509c66qr3s6"))))
"03fx22rv8ijxq0jnn7xlfqhkpk2b109ygpjbcchp41sa4q7d6nbl"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-eldoc
@@ -25875,52 +25702,6 @@ available key bindings that follow C-x (or as many as space allows given your
settings).")
(license license:gpl3+)))
(define-public emacs-whisper-el
(let ((commit "fd9bf5787a99dd31a4bdf54d2bd9821aacf84e93")
(revision "0"))
(package
(name "emacs-whisper-el")
(version "0.4.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/natrys/whisper.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0za55s117v7sc7cj4xlxxhkaamjlggs1g319n7fz54saa2wzmdj5"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-external-programs
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "whisper.el"
(("\\(executable-find \"ffmpeg\"\\)")
"t")
(("\"ffmpeg\"")
(string-append "\"" #$(this-package-input "ffmpeg")
"/bin/ffmpeg\""))
((",\\(whisper--find-whispercpp-main\\)")
(string-append "\"" #$(this-package-input "whisper-cpp")
"/bin/whisper-cli\"")))
(emacs-substitute-variables "whisper.el"
("whisper-install-whispercpp" 'nil)))))))
(inputs
(list ffmpeg whisper-cpp))
(home-page "https://github.com/natrys/whisper.el")
(synopsis "Speech to text interface for Emacs")
(description
"@code{emacs-whisper-el} captures audio with an input device, and
transcribes text inserted into current Emacs buffer, optionally after
translating to English from your local language. Transcription uses the
C/C++ port whisper.cpp for inference.")
(license license:gpl3+))))
;; Tagged release upstream is from before the package was orphaned.
;; The base version is extracted from the "Version" keyword in the main file
;; with "-git" suffix removed.
@@ -28599,7 +28380,7 @@ unstructured, meant for quick @code{JavaScript} experiments.")
(define-public emacs-firefox-release-notes
(package
(name "emacs-firefox-release-notes")
(version "1.8")
(version "1.7")
(source
(origin
(method git-fetch)
@@ -28610,7 +28391,7 @@ unstructured, meant for quick @code{JavaScript} experiments.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "13ymnx4vgiq5f3cjk3zddrq4xnv6116j5zzza67v98q7rsvzl049"))))
(base32 "1i9ncnn0qys0v0bqw87jwx0sa2g31n1i1gfr9zqdml3hakyz8b5f"))))
(build-system emacs-build-system)
(arguments
(list
@@ -32121,31 +31902,6 @@ leverages the Parinfer Rust Emacs library to do most of the heavy lifting.")
bookmarks and history.")
(license license:gpl3+)))
(define-public emacs-shr-syntax-highlight
(package
(name "emacs-shr-syntax-highlight")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/coopi/emacs-shr-syntax-highlight")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "04ax8svpw2s0085pp93dsz5xhhbqr58ghkr1ab2g38pczlsbz18s"))))
(build-system emacs-build-system)
(home-page "https://codeberg.org/coopi/emacs-shr-syntax-highlight")
(synopsis "Syntax highlighting for code blocks rendered by shr")
(description
"This package adds syntax highlighting to @code{<pre>} code blocks
rendered by @acronym{@code{shr}, Simple @acronym{HTML, HyperText Markup
Language} Renderer}, used by @acronym{EWW, Emacs Web Wowser} and similar
interfaces. It reads @acronym{CSS, Cascading Style Sheets} class annotations
such as @code{language-python} and fontifies block contents using the
corresponding Emacs major mode.")
(license license:agpl3+)))
(define-public emacs-stumpwm-mode
(let ((commit "920f8fc1488f7953f205e1dda4c2ecbbbda56d6")
(revision "3"))
@@ -39910,7 +39666,7 @@ user interfaces for various built-in modes.")
(define-public emacs-calibredb
(package
(name "emacs-calibredb")
(version "2.14.0")
(version "2.13.0")
(source
(origin
(method git-fetch)
@@ -39919,40 +39675,31 @@ user interfaces for various built-in modes.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1g0jg6a6fgvxd5bsydckbqwf899d2d9732laz4k1k476mbws5dqy"))))
(base32 "1a4gyc3gcq18j29pw2i296d70nvx5fbzlw9fdmqwzncciqz5as6m"))))
(build-system emacs-build-system)
(arguments
(list
#:include #~(cons "\\.py$" %default-include)
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(make-file-writable "calibredb-core.el")
(let ((calibredb (search-input-file inputs "/bin/calibredb"))
(fetch-ebook-metadata
(search-input-file inputs "/bin/fetch-ebook-metadata"))
(ebook-convert
(search-input-file inputs "/bin/ebook-convert"))
(calibre-debug
(search-input-file inputs "/bin/calibre-debug"))
(ebook-meta
(search-input-file inputs "/bin/ebook-meta"))
(folder-program
(string-append #$output
"/share/emacs/site-lisp/calibredb-"
#$version "/calibredb-folder.py")))
(search-input-file inputs "/bin/calibre-debug")))
(emacs-substitute-variables "calibredb-core.el"
("calibredb-fetch-metadata-program" fetch-ebook-metadata)
("calibredb-program" calibredb)
("calibredb-convert-program" ebook-convert)
("calibredb-debug-program" calibre-debug)
("calibredb-ebook-meta-program" ebook-meta)
("calibredb-folder-program" folder-program))))))))
("calibredb-debug-program" calibre-debug))))))))
(inputs
(list calibre))
(propagated-inputs
(list emacs-dash emacs-esxml emacs-request emacs-s))
(list emacs-dash emacs-esxml emacs-s))
(home-page "https://github.com/chenyanming/calibredb.el")
(synopsis "Yet another calibre client for Emacs")
(description "This package integrates calibre into Emacs.
@@ -41537,7 +41284,7 @@ time.")
(define-public emacs-mastodon
(package
(name "emacs-mastodon")
(version "2.0.16")
(version "2.0.12")
(source
(origin
(method git-fetch)
@@ -41546,69 +41293,21 @@ time.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1z8qwnc01d9hx5m1xj3acpdzllfh4rxmypzcr3jl4ipp6dybzbx6"))))
(base32 "0q02v1vizzj1r35b7b6cw185jjibhc6izj9ih4sm6c83l9yb99yh"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command #~(list "make" "tests")
#:phases
#~(modify-phases %standard-phases
;; Move the source files to the top level, which is
;; included in the EMACSLOADPATH.
(add-after 'unpack 'move-source-files
(lambda _
(let ((el-files (find-files "./lisp" ".*\\.el$")))
(for-each (lambda (f)
(rename-file f
(basename f)))
el-files))))
(add-before 'check 'fix-tests
(lambda _
(substitute* "Makefile"
(("cask") ""))
(substitute* "test/ert-helper.el"
(("lisp\\/") ""))))
(add-before 'check 'skip-failing-tests
(lambda _
(let-syntax
((disable-tests
(syntax-rules ()
((_ file ())
(syntax-error "test names list must not be empty"))
((_ file (test-name ...))
(substitute* file
(((string-append
"^\\(ert-deftest " test-name ".*") all)
(string-append all "(skip-unless nil)\n")) ...)))))
(disable-tests
"test/mastodon-profile-tests.el"
("mastodon-profile--add-author-bylines"
"mastodon-profile--make-author-buffer"))
(disable-tests
"test/mastodon-auth-tests.el"
("mastodon-auth--handle-token-response--good"
"mastodon-auth-plstore-token-check"))
(disable-tests
"test/mastodon-client-tests.el"
("mastodon-client--make-user-active"
"mastodon-client--store"
"mastodon-client--store-access-token"))
(disable-tests
"test/mastodon-tl-tests.el"
("mastodon-tl--byline-timestamp-has-relative-display"
"mastodon-tl--next-tab-item--no-spaces-at-ends"
"mastodon-tl--next-tab-item--with-spaces-at-ends"))
(disable-tests
"test/mastodon-media-tests.el"
("mastodon-media--get-avatar-rendering"
"mastodon-media--inline-images"
"mastodon-media--load-image-from-url-avatar-with-imagemagic"
"mastodon-media--load-image-from-url-avatar-without-imagemagic"
"mastodon-media--load-image-from-url-media-link-with-imagemagic"
"mastodon-media--load-image-from-url-media-link-without-imagemagic"
"mastodon-media--load-image-from-url-url-fetching-fails"
"mastodon-media--process-image-response"))))))))
(native-inputs (list emacs-el-mock))
#:tests? #f ; requires cask
#:phases #~(modify-phases %standard-phases
;; Move the source files to the top level, which is
;; included in the EMACSLOADPATH.
(add-after 'unpack 'move-source-files
(lambda _
(let ((el-files (find-files "./lisp" ".*\\.el$")))
(for-each (lambda (f)
(rename-file f
(basename f)))
el-files)))))))
(propagated-inputs
(list emacs-persist emacs-tp))
(home-page "https://codeberg.org/martianh/mastodon.el")
@@ -41707,17 +41406,7 @@ Lisp's (relatively new) EIEIO object oriented libraries.")
(sha256
(base32 "1y3k82q5iii7ddm6yj7397x2jscbcnvapd04zc5wjkqdr50cay3l"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command #~(list "make" "tests")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'remove-cask
(lambda _
(substitute* "Makefile"
(("cask ") "")))))))
(native-inputs
(list emacs-el-mock emacs-exemplify-ert emacs-exemplify-eval))
(arguments (list #:tests? #f)) ;depends on exemplify-ert
(propagated-inputs (list emacs-fedi emacs-magit emacs-tp emacs-transient))
(home-page "https://codeberg.org/martianh/fj.el")
(synopsis "Client for Forgejo instances")
@@ -45410,57 +45099,6 @@ Features:
@end itemize\n")
(license license:gpl3+)))
(define-public emacs-exemplify-ert
(package
(name "emacs-exemplify-ert")
(version "0.6.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~flandrew/exemplify-ert")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0y98pf3hq595h7vkqs1rrwhdsizi22y32mv345drvrc6xysyb7hr"))))
(build-system emacs-build-system)
(arguments
(list
#:test-command #~(list "emacs" "-Q" "--batch"
"-l" "dev/examples.el"
"-f" "ert-run-tests-batch-and-exit")))
(propagated-inputs (list emacs-dash emacs-f emacs-s))
(home-page "https://git.sr.ht/~flandrew/exemplify-ert")
(synopsis "Emacs library to implement regression tests")
(description
"This Emacs package is an extension to @code{ert}. It aims at writing
test cases in a simplified form.")
(license license:gpl3+)))
(define-public emacs-exemplify-eval
(package
(name "emacs-exemplify-eval")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~flandrew/exemplify-eval")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0f2rfgjcmpw45y0ayx8ww9d9q86y0jwkb46ixp1qd7782qxpa5lg"))))
(build-system emacs-build-system)
(arguments
(list #:tests? #f)) ;no tests
(home-page "https://git.sr.ht/~flandrew/exemplify-eval")
(synopsis "Create arrowified examples from sexps")
(description
"This Emacs package is an extension to @code{ert}, and creates
@code{emacs-exemplify-ert}like examples. It aims at writing test cases in a
simplified form.")
(license license:gpl3+)))
(define-public emacs-pcmpl-args
(package
(name "emacs-pcmpl-args")
+6 -8
View File
@@ -3452,7 +3452,7 @@ This is a part of the TiLP project.")
(define-public mame
(package
(name "mame")
(version "0.287")
(version "0.252")
(source
(origin
(method git-fetch)
@@ -3461,16 +3461,16 @@ This is a part of the TiLP project.")
(commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version))
(sha256
(base32 "1p9v71gvaqiyj6sa1b0wkdksa9wnr6yr2a43ckycljjfas5s36kq"))
(base32 "07qhcm1v47sy2wj30nx3cbhvcbgki0cl83gabr0miiw60fhgyn6j"))
(modules '((guix build utils)))
(snippet
;; Remove bundled libraries.
'(begin
(with-directory-excursion "3rdparty"
(for-each delete-file-recursively
'("asio" "expat" "glm" "flac" "libjpeg" "lua"
"portaudio" "portmidi" "pugixml" "rapidjson"
"sqlite3" "utf8proc" "zlib")))))))
'("asio" "expat" "glm" "libflac" "libjpeg" "lua"
"portaudio" "portmidi" "pugixml" "rapidjson" "SDL2"
"SDL2-override" "sqlite3" "utf8proc" "zlib")))))))
(build-system gnu-build-system)
(arguments
(list
@@ -3604,9 +3604,7 @@ This is a part of the TiLP project.")
libjpeg-turbo
libxi
libxinerama
;; MAME requires Lua compiled as C++ to work correctly.
;; See https://www.mamedev.org/?p=523
lua-5.4-for-c++
lua
portaudio
portmidi
pugixml
+3 -3
View File
@@ -50,7 +50,7 @@
(define-public erlang
(package
(name "erlang")
(version "28.4.3")
(version "27.3.4.6")
(source (origin
(method git-fetch)
;; The tarball from http://erlang.org/download contains many
@@ -62,7 +62,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1dsdmp2rccc0rhzy2w8r4amxmc6nr9hbi053j2s0bg9db30b48rc"))
"0dhz2c7w28ss0ypj7jh88pfs3kc8hbwiiq91in1j2miy5sn4cp3x"))
(patches (search-patches "erlang-man-path.patch"))))
(build-system gnu-build-system)
(native-inputs
@@ -75,7 +75,7 @@
"/OTP-" version "/otp_doc_man_" version ".tar.gz"))
(sha256
(base32
"1g17wzv8j12g9272yvv55nj4wqs09hxkv3i0vnp7d6gcs24bmphi"))))))
"1j1fcli7ma9vi4qyv67lq7yiznhpnfvcmh57bn8qxvha6ky2pngm"))))))
(inputs
(list ncurses openssl wxwidgets))
(propagated-inputs
-1
View File
@@ -220,7 +220,6 @@ testing InfiniBand networks.")
"--disable-assertions"
"--disable-params-check"
"--enable-mt"
(string-append "--with-verbs="
#$(this-package-input "rdma-core"))
+5 -3
View File
@@ -165,7 +165,7 @@
;; <https://bitcoincore.org/en/lifecycle/#schedule>.
(package
(name "bitcoin-core")
(version "31.0")
(version "30.2")
(source (origin
(method url-fetch)
(uri
@@ -173,7 +173,7 @@
version "/bitcoin-" version ".tar.gz"))
(sha256
(base32
"1qxkcyq8nwq6sw4qi660z8n8356mqdsf4jvpq5ndkvrsx9gfz80b"))))
"1jw4djh22v0nih0n7irdbknfbqavlc4l3b8176b5qgc88a60pl3g"))))
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
@@ -197,7 +197,9 @@
"python3" "./test/functional/test_runner.py" "--timeout-factor=2"
(string-append "--jobs=" (number->string (parallel-job-count)))))))))
(native-inputs
(list pkg-config
(list bash ; provides the sh command for system_tests
coreutils ; provides the cat, echo and false commands for system_tests
pkg-config
python ; for the tests
python-pyzmq ; for the tests
qttools))
+40 -33
View File
@@ -4658,6 +4658,46 @@ is a stylish type with a polished yet relaxed feel. Its versatility makes it
suitable for a wide range of uses.")
(license license:silofl1.1))))
(define-public font-cozette
(package
(name "font-cozette")
(version "1.13.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/slavfox/Cozette")
(commit (string-append "v." version))))
(file-name (git-file-name name version))
(sha256
(base32
"178i812n4sfsvid7jhnm683jlxqmrv4ck6qbb4nwyllhwg3gyq60"))))
(build-system font-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'dont-depend-on-git
(lambda _
(substitute* "build.py"
;; Merely importing this module requires a git repository.
;; We don't use get_changelog, so just disable the import.
(("from cozette_builder\\.changeloggen import get_changelog")
""))))
(add-before 'install 'build
(lambda _
(invoke "python3" "build.py" "fonts"))))))
(native-inputs
(list fontforge
python
python-crayons
python-fonttools
python-numpy
python-pillow))
(home-page "https://github.com/slavfox/Cozette")
(synopsis "Bitmap programming font")
(description "Cozette is a 6x13px (bounding box) bitmap font based on Dina
and heavily inspired by Creep.")
(license license:expat)))
(define-public font-montserrat
(package
(name "font-montserrat")
@@ -5519,39 +5559,6 @@ technical and idiosyncratic feel—perfect for headers and pull-quotes. Made to
work well together with Mona Sans.")
(license license:silofl1.1)))
(define-public font-open-sans
(package
(name "font-open-sans")
(version "3.003")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/googlefonts/opensans")
(commit "bd7e37632246368c60fdcbd374dbf9bad11969b6")))
(file-name (git-file-name name version))
(sha256
(base32 "1mlnybaci1cr8z5xzxm7l2xpwfq27x9hqv649hc2ni1cjsyhpjp8"))))
(build-system font-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Install the variable fonts only.
(let ((%install (assoc-ref %standard-phases 'install)))
(with-directory-excursion "fonts/variable"
(%install #:outputs outputs))))))))
(home-page "https://github.com/googlefonts/opensans")
(synopsis "Humanist sans-serif typeface by Steve Matteson")
(description
"Open Sans is an open source humanist sans-serif typeface
that was designed by Steve Matteson under commission from Google. It was
released in 2011 and is based on his earlier design called Droid Sans, which
was specifically created for Android mobile devices but with slight
modifications to its width.")
(license license:silofl1.1)))
(define-public font-peppercarrot
(package
+1 -1
View File
@@ -3454,7 +3454,7 @@ interfaces.")
(string-append (assoc-ref outputs "out")
"/share/doc/" ,name)))))))
(native-inputs
(list cmake-minimal pkg-config scdoc))
(list cmake-minimal pkg-config))
(inputs (list elogind
bash-minimal
grim
+15 -5
View File
@@ -5534,13 +5534,23 @@ falling, themeable graphics and sounds, and replays.")
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no test target
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")))
#:configure-flags #~'("-DENABLE_SYSTEM_LUA=ON")
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'pre-configure
(lambda _
;; XXX: Our Lua doesn't have a C++ library, force C linkage.
(substitute* '("src/lua/wrapper_lua.h"
"src/lua/wrapper_lualib.h"
"src/lua/wrapper_lauxlib.h")
(("#include \"(lua|lualib|lauxlib)\\.h\"")
"#include \"lua.hpp\"")))))))
(inputs
(list boost-1.83
curl
dbus
libvorbis
lua-5.4-for-c++
lua-5.4
openssl
pango
sdl2
@@ -5927,7 +5937,7 @@ Transport Tycoon Deluxe.")
(add-after 'unpack 'patch-sources
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/music/fluidsynth.cpp"
(("_default_soundfonts\\[\\] = \\{" all)
(("default_sf\\[\\] = \\{" all)
(string-append all "
\t/* Guix hardcoded :P */
\t\"" (search-input-file inputs "/share/soundfonts/FreePatsGM.sf2") "\",
@@ -5954,7 +5964,7 @@ Transport Tycoon Deluxe.")
(package
(inherit openttd)
(name "openttd-jgrpp")
(version "0.71.1")
(version "0.70.2")
(source
(origin
(method git-fetch)
@@ -5963,7 +5973,7 @@ Transport Tycoon Deluxe.")
(commit (string-append "jgrpp-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1cy1ghc1mc61hdz8lykx2ggs5nld30jdgj8y4vdli2v1ffhy7xy9"))))
(base32 "1jzzvribf2cqvjl9cympyx9qpplljvmhqrrlw7aq4ckzl92d87z3"))))
(inputs (modify-inputs inputs
(append zstd harfbuzz)))
(arguments
+74 -9
View File
@@ -425,14 +425,29 @@ hierarchical hexagonal geospatial indexing system")
(base32
"00qdk9a4048pzfj2rhzkfw3lvm642znf6kr4x29i3d94494pxsnn"))))
(build-system cmake-build-system)
(arguments `(#:phases
(modify-phases %standard-phases
(add-after
'unpack 'patch-test-shebangs
(lambda _
(substitute* '("tests/xmltester/testrunner.sh"
"tests/xmltester/safe_to_xml.sh")
(("/bin/sh") (which "sh"))))))))
(arguments
`(#:phases
(modify-phases %standard-phases
,@(if (or (target-x86-32?) (target-arm32?))
'((add-after 'unpack 'disable-broken-tests
(lambda _
;; This test fails due to limited accuracy.
(delete-file "tests/xmltester/tests/general/TestCentroid.xml")
(with-directory-excursion "tests/unit"
;; These also fail due to limited accuracy.
(delete-file "algorithm/MinimumAreaRectangleTest.cpp")
(delete-file "capi/GEOSMinimumRotatedRectangleTest.cpp")
;; It is unclear why these fail, but I'm guessing:
;; limited accuracy.
(delete-file "linearref/LengthIndexedLineTest.cpp")
(delete-file "math/DDTest.cpp")))))
'())
(add-after
'unpack 'patch-test-shebangs
(lambda _
(substitute* '("tests/xmltester/testrunner.sh"
"tests/xmltester/safe_to_xml.sh")
(("/bin/sh") (which "sh"))))))))
(inputs
(list glib))
(home-page "https://libgeos.org/")
@@ -955,6 +970,29 @@ hydrology and waste deposition.")
(base32
"03r6mspfv22fs4x4jcgv25v9gsj5k6zy8incvyf94qf50g47s2bc"))))
(build-system cmake-build-system)
(arguments
(if (target-32bit?)
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-tests
(lambda _
;; These regression tests fail due to accuracy problems.
(substitute* "test/unit/test_factory.cpp"
(("^TEST\\(factory, AuthorityFactory_createUnitOfMeasure_linear_us_survey_foot\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
(substitute* "test/unit/test_grids.cpp"
(("^TEST_F\\(GridTest, VerticalShiftGridSet_gtx\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
(substitute* "test/unit/test_defmodel.cpp"
(("^TEST\\(defmodel, evaluator_horizontal_unit_metre\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
;; These regression tests fail due to accuracy problems.
(substitute* "test/CMakeLists.txt"
(("proj_add_gie_test\\(\"4D-API-cs2cs-style\".+") "")
(("proj_add_gie_test\\(\"Builtins\".+") "")
(("proj_add_gie_test\\(\"peirce_q\".+") ""))))))
'()))
(native-inputs (list googletest pkg-config))
(propagated-inputs (list curl libtiff sqlite)) ;required by proj.pc
(home-page "https://proj.org/")
@@ -984,7 +1022,34 @@ lets developers use the functionality of Proj in their own software.")
version ".tar.gz"))
(sha256
(base32
"1g0hkpiablvhsmw0kn5frwgdir3q7avc45p6lc1zhhhzkv5ikydh"))))))
"1g0hkpiablvhsmw0kn5frwgdir3q7avc45p6lc1zhhhzkv5ikydh"))))
(arguments
(if (target-32bit?)
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-tests
(lambda _
;; These regression tests fail due to accuracy problems.
(substitute* "test/unit/test_factory.cpp"
(("^TEST\\(factory, AuthorityFactory_createUnitOfMeasure_linear_us_survey_foot\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
(substitute* "test/unit/test_grids.cpp"
(("^TEST_F\\(GridTest, VerticalShiftGridSet_gtx\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
(substitute* "test/unit/test_defmodel.cpp"
(("^TEST\\(defmodel, evaluator_horizontal_unit_metre\\) \\{" m)
(string-append m "\nGTEST_SKIP();\n")))
;; These regression tests fail due to accuracy problems.
(substitute* "test/CMakeLists.txt"
(("proj_add_gie_test\\(\"4D-API-cs2cs-style\".+") "")
(("proj_add_gie_test\\(\"Builtins\".+") "")
(("proj_add_gie_test\\(\"peirce_q\".+") "")
(("proj_add_gie_test\\(\"adams_ws2\".+") ""))
(substitute* "test/cli/CMakeLists.txt"
(("proj_add_test_script_sh\\(\"testvarious\" CS2CS_BIN\\)") ""))))))
'()))))
(define-public python-obspy
(package
+43 -4
View File
@@ -1,4 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -16,8 +19,44 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages gkrellm)
#:use-module (gnu packages monitoring)
#:use-module (guix deprecation))
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xorg))
(define-deprecated/public-alias gkrellm
(@ (guix packages monitoring) gkrellm))
(define-public gkrellm
(package
(name "gkrellm")
(version "2.5.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://gkrellm.srcbox.net/releases/gkrellm-"
version ".tar.bz2"))
(sha256
(base32 "0qvy2xmwmfy5f0g09yn9lr262shnx82ba04r5il2wj4qscg3r7h8"))))
(build-system gnu-build-system)
(inputs (list gtk+-2 libsm))
(native-inputs (list gettext-minimal pkg-config))
(arguments
(list
#:tests? #f ;there is no check target
#:phases
#~(modify-phases %standard-phases
(delete 'configure)) ;no configure script
#:make-flags
#~(list (string-append "INSTALLROOT=" #$output)
(string-append "CC=" #$(cc-for-target)))))
(home-page "https://gkrellm.srcbox.net/")
(synopsis "System monitors")
(description
"GKrellM is a single process stack of system monitors which supports
applying themes to match its appearance to your window manager, Gtk, or any
other theme.")
(license license:gpl3+)))
-68
View File
@@ -1335,74 +1335,6 @@ animation of closing windowed applications.")
GNOME Shell, including the top panel, dash and overview.")
(license license:gpl3)))
(define-public gnome-shell-extension-caffeine
(package
(name "gnome-shell-extension-caffeine")
(version "59")
(source
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/eonpatapon/gnome-shell-extension-caffeine")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0sv0iqfb6kjhgcg4pb59n91dyf667vax96kfhz5ik5hhx9n0z43w"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("caffeine@patapon.info"
"share/gnome-shell/extensions/caffeine@patapon.info"
#:include-regexp ("icons" "locale" "preferences" "schemas"
"\\.js(on)?$")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "caffeine@patapon.info/schemas"
(invoke "glib-compile-schemas" ".")))))))
(native-inputs (list `(,glib "bin")))
(synopsis "Disable screensaver and auto suspend in Gnome")
(description "This extension provides a quick setting toggle to enable or
disable the Gnome auto-suspend and screensaver.")
(home-page "https://github.com/eonpatapon/gnome-shell-extension-caffeine")
(license license:gpl2+)))
(define-public gnome-shell-extension-hot-edge
(package
(name "gnome-shell-extension-hot-edge")
(version "27")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jdoda/hotedge")
(commit "90e9cdd6f2a171a676a96a4e6ad0126316317e4d")))
(file-name (git-file-name name version))
(sha256
(base32 "08jqz6n04yvqa77930sghgip5qfj8i4dm8wsm5cqjc4sqm4pn9yy"))))
(build-system copy-build-system)
(arguments
(list
#:install-plan
#~'(("." "share/gnome-shell/extensions/hotedge@jonathan.jdoda.ca"
#:include-regexp ("\\.css$" "\\.js(on)?$" "schemas")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "schemas"
(invoke "glib-compile-schemas" ".")))))))
(native-inputs (list `(,glib "bin")))
(synopsis "Add a hot edge to the bottom of the screen in Gnome")
(description
"Add a hot edge that activates the overview to the bottom of the screen.
This provides a better mouse-based workflow and can be an alternative to a dock.")
(home-page "https://github.com/jdoda/hotedge")
(license license:gpl2+)))
(define-public gnome-shell-extension-radio
(let ((commit "860e55b9e704eb3dde43e6bbeccec5748242498e")
(revision "0"))
+1 -1
View File
@@ -10628,6 +10628,7 @@ playing media, scanning, and much more.")
cheese
decibels
epiphany
evince
file-roller
gnome-calculator
gnome-calendar
@@ -10647,7 +10648,6 @@ playing media, scanning, and much more.")
localsearch
loupe
nautilus
papers
simple-scan
showtime
xdg-desktop-portal-gnome
+6 -166
View File
@@ -605,9 +605,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"zh-TW"))
;;; Please keep these versions in sync with icedove.
(define %icecat-base-version "140.10.0")
(define %icecat-base-version "140.9.1")
(define %icecat-version (string-append %icecat-base-version "-gnu1"))
(define %icecat-build-id "20260421000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20260414000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@@ -627,9 +627,9 @@ in the case of Firefox, it is browser/locales/all-locales."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"06996548nfmn4r4mfw3wvgb1mp35majc5hjyhs1krgp33ck2m1f0"))))
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
(gnuzilla-commit "02125f31250c0240ee2ab1aa629ce66d4ffb9f30")
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
(gnuzilla-source
(origin
(method git-fetch)
@@ -640,7 +640,7 @@ in the case of Firefox, it is browser/locales/all-locales."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"1hgx286gp0j46pklzzh5kvsnari1j3s0bff384m505m942k6l4hf"))))
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
@@ -1249,166 +1249,6 @@ testing.")
(cpe-name . "firefox_esr")
(cpe-version . ,(first (string-split version #\-)))))))
;;; TEMPORARY old version of icecat-source for use by icedove until it is updated.
(define %icecat-140.9.1-base-version "140.9.1")
(define %icecat-140.9.1-version (string-append %icecat-140.9.1-base-version "-gnu1"))
(define icecat-140.9.1-source
(let* ((major-version (first (string-split %icecat-140.9.1-base-version #\.)))
(minor-version (second (string-split %icecat-140.9.1-base-version #\.)))
(sub-version (third (string-split %icecat-140.9.1-base-version #\.)))
(upstream-firefox-version (string-append %icecat-140.9.1-base-version "esr"))
(upstream-firefox-source
(origin
(method url-fetch)
(uri (string-append
"https://ftp.mozilla.org/pub/firefox/releases/"
upstream-firefox-version "/source/"
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"1hld2kbzvrmr7pqq0r5hw639xl8kw29lm2hsbn0m4kxang1fdlj5"))))
(gnuzilla-commit "f3595923458a5255f61a3853bd83bb5f004dc3bc")
(gnuzilla-source
(origin
(method git-fetch)
(uri (git-reference
(url "git://git.savannah.gnu.org/gnuzilla.git")
(commit gnuzilla-commit)))
(file-name (git-file-name "gnuzilla"
(string-take gnuzilla-commit 8)))
(sha256
(base32
"03kc08cvmdv3sxihf5hfhw2k91mg1y6f46b3x47p7q98phgk03cv"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
(makeicecat-patch
(local-file (assume-valid-file-name
(search-patch "icecat-makeicecat.patch")))))
(origin
(method computed-origin-method)
(file-name (string-append "icecat-" %icecat-140.9.1-version ".tar.zst"))
(sha256 #f)
(uri
(delay
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(let ((firefox-dir
(string-append "firefox-" #$%icecat-140.9.1-base-version))
(icecat-dir
(string-append "icecat-" #$%icecat-140.9.1-version)))
(set-path-environment-variable
"PATH" '("bin")
(list #+python
#+(canonical-package bash)
#+(canonical-package coreutils)
#+(canonical-package findutils)
#+(canonical-package patch)
#+(canonical-package xz)
#+(canonical-package zstd)
#+(canonical-package sed)
#+(canonical-package grep)
#+(canonical-package bzip2)
#+(canonical-package gzip)
#+(canonical-package tar)))
(set-path-environment-variable
"PYTHONPATH"
(list #+(format #f "lib/python~a/site-packages"
(version-major+minor
(package-version python))))
'#+(cons python-jsonschema
(map second
(package-transitive-propagated-inputs
python-jsonschema))))
;; We copy the gnuzilla source directory because it is
;; read-only in 'gnuzilla-source', and the makeicecat script
;; uses "cp -a" to copy parts of it and assumes that the
;; copies will be writable.
(copy-recursively #+gnuzilla-source "/tmp/gnuzilla"
#:log (%make-void-port "w"))
(with-directory-excursion "/tmp/gnuzilla"
(make-file-writable "makeicecat")
(invoke "patch" "--force" "--no-backup-if-mismatch"
"-p1" "--input" #+makeicecat-patch)
(patch-shebang "makeicecat")
(substitute* "makeicecat"
(("^readonly FFMAJOR=(.*)" all ffmajor)
(unless (string=? #$major-version
(string-trim-both ffmajor))
;; The makeicecat script cannot be expected to work
;; properly on a different version of Firefox, even if
;; no errors occur during execution.
(error "makeicecat major version mismatch"))
(string-append "readonly FFMAJOR=" #$major-version "\n"))
(("^readonly FFMINOR=.*")
(string-append "readonly FFMINOR=" #$minor-version "\n"))
(("^readonly FFSUB=.*")
(string-append "readonly FFSUB=" #$sub-version "\n"))
(("^readonly DATADIR=.*")
"readonly DATADIR=/tmp/gnuzilla/data\n")
(("^readonly SOURCEDIR=.*")
(string-append "readonly SOURCEDIR=" icecat-dir "\n"))
(("/bin/sed")
#+(file-append (canonical-package sed) "/bin/sed"))))
(format #t "Unpacking upstream firefox tarball...~%")
(force-output)
(invoke "tar" "xf" #+upstream-firefox-source)
(rename-file firefox-dir icecat-dir)
(with-directory-excursion icecat-dir
(format #t "Populating l10n directory...~%")
(force-output)
(mkdir "l10n")
(with-directory-excursion "l10n"
(for-each
(lambda (locale)
(let ((locale-dir (string-append #+mozilla-l10n "/"
locale)))
(format #t " ~a~%" locale)
(force-output)
(copy-recursively locale-dir locale
#:log (%make-void-port "w"))
(for-each make-file-writable (find-files locale))
(with-directory-excursion locale
(mkdir-p "browser/chrome/browser/preferences")
(call-with-output-file "browser/chrome/browser/\
preferences/advanced-scripts.dtd"
(lambda (port) #f)))))
'#+%icecat-locales)
(copy-recursively #+mozilla-compare-locales
"compare-locales"
#:log (%make-void-port "w"))
(delete-file "compare-locales/.gitignore")))
(format #t "Running makeicecat script...~%")
(force-output)
(invoke "bash" "/tmp/gnuzilla/makeicecat")
(format #t "Packing IceCat source tarball...~%")
(force-output)
(setenv "ZSTD_NBTHREADS" (number->string (parallel-job-count)))
(invoke "tar" "cfa" #$output
;; Avoid non-determinism in the archive. We set the
;; mtime of files in the archive to early 1980 because
;; the build process fails if the mtime of source
;; files is pre-1980, due to the creation of zip
;; archives.
"--mtime=@315619200" ; 1980-01-02 UTC
"--owner=root:0"
"--group=root:0"
"--sort=name"
icecat-dir)))))))))
(define %icedove-build-id "20260403000000") ;must be of the form YYYYMMDDhhmmss
;;; See <https://product-details.mozilla.org/1.0/thunderbird_versions.json>
;;; for the source of truth regarding Thunderbird releases.
@@ -1543,7 +1383,7 @@ preferences/advanced-scripts.dtd"
;; Extract the base Icecat tarball, renaming its top-level
;; directory.
(invoke "tar" "--transform" (string-append "s,[^/]*," #$name ",")
"-xf" #$icecat-140.9.1-source)
"-xf" #$icecat-source)
(chdir #$name)
;; Merge the Thunderdbird localization data.
+2 -36
View File
@@ -31,7 +31,6 @@
;;; Copyright © 2025 Arthur Rodrigues <arthurhdrodrigues@proton.me>
;;; Copyright © 2025 Patrick Norton <patrick.147.norton@gmail.com>
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -2874,7 +2873,7 @@ package.")
(define-public go-github-com-refraction-networking-utls
(package
(name "go-github-com-refraction-networking-utls")
(version "1.8.2")
(version "1.6.0")
(source
(origin
(method git-fetch)
@@ -2883,7 +2882,7 @@ package.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "03kgwxdm2lg28fn2w5q7ql2szsiwj2xjdf477h1g3a4a9y9j6zk0"))))
(base32 "1iywar5vqsml4b177k2nkcxmjm8mw92g3p112yjsrpmikiwpwpyw"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/refraction-networking/utls"
@@ -3641,39 +3640,6 @@ algorithm described in @url{https://rfc-editor.org/rfc/rfc2898.html,RFC 2898}
and @url{https://rfc-editor.org/rfc/rfc8018.html,RFC 8018}.")
(license license:asl2.0)))
(define-public go-github-com-xtls-reality
(package
(name "go-github-com-xtls-reality")
(version "0.0.0-20260322125925-9234c772ba8f")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/xtls/reality")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "1wncy5aph6nmq4814xjhj6b5p1wm2fyrqn83dw0xlyxvq2z6iqfs"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/xtls/reality"))
(propagated-inputs
(list go-github-com-cloudflare-circl
go-github-com-juju-ratelimit
go-github-com-pires-go-proxyproto
go-github-com-refraction-networking-utls
go-golang-org-x-crypto
go-golang-org-x-sys))
(home-page "https://github.com/xtls/reality")
(synopsis "Implementation of REALITY protocol")
(description
"This package provides an implementation of REALITY protocol, which is
intented to eliminate the detectable TLS fingerprint on the server side, while
still maintain the secrecy. It achieves full real TLS that is
undistingwishable with the specified SNI to the middleman.")
(license (list license:bsd-3 license:mpl2.0))))
(define-public go-github-com-youmark-pkcs8
(package
(name "go-github-com-youmark-pkcs8")
-31
View File
@@ -50,7 +50,6 @@
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20006,36 +20005,6 @@ at
Tracer implementation from the @code{OpenTracing} project.")
(license license:asl2.0)))
(define-public go-go-opentelemetry-io-contrib-zpages
(package
(name "go-go-opentelemetry-io-contrib-zpages")
(version "0.68.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/open-telemetry/opentelemetry-go-contrib")
(commit (go-version->git-ref version
#:subdir "zpages"))))
(file-name (git-file-name name version))
(sha256
(base32 "0nh7g1zxr3drqcbhsnnkqaz2hn1rnawg8jalixng23c9hwfgqaly"))))
(build-system go-build-system)
(arguments
(list
#:go go-1.25
#:import-path "go.opentelemetry.io/contrib/zpages"
#:unpack-path "go.opentelemetry.io/contrib"))
(native-inputs (list go-github-com-stretchr-testify))
(propagated-inputs (list go-go-opentelemetry-io-otel
go-go-opentelemetry-io-otel-sdk
go-go-opentelemetry-io-otel-trace))
(home-page "https://opentelemetry.io/")
(synopsis "Display telemetry stats")
(description "Package zPages implements a collection of HTML pages that
display telemetry stats.")
(license license:asl2.0)))
(define-public go-go-opentelemetry-io-otel
(package
(name "go-go-opentelemetry-io-otel")
+8 -10
View File
@@ -75,7 +75,6 @@
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2026 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2026 Evgeny Pisemsky <mail@pisemsky.site>
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -8037,7 +8036,7 @@ supports concurrent serializable transactions.")
(package
(inherit go-github-com-dgraph-io-badger)
(name "go-github-com-dgraph-io-badger-v4")
(version "4.9.1")
(version "4.5.2")
(source
(origin
(method git-fetch)
@@ -8046,7 +8045,7 @@ supports concurrent serializable transactions.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0a9lk7fw06yb89wy9rp4q50ircw5imm1cqzhyhs92d0cia5qbhh6"))))
(base32 "0v4c69whypm3k40hrx8bw9rjrcb0swz43v056s0fadqr04j0ncwj"))))
(arguments
(list
#:tests? #f ; TODO: tests hang, find out why.
@@ -8059,8 +8058,7 @@ supports concurrent serializable transactions.")
go-github-com-klauspost-compress
go-github-com-pkg-errors
go-github-com-spf13-cobra
go-go-opentelemetry-io-contrib-zpages
go-go-opentelemetry-io-otel
go-go-opencensus-io
go-golang-org-x-net
go-golang-org-x-sys
go-google-golang-org-protobuf))))
@@ -17606,7 +17604,7 @@ implementing features like:
(define-public go-github-com-maruel-natural
(package
(name "go-github-com-maruel-natural")
(version "1.3.0")
(version "1.1.1")
(source
(origin
(method git-fetch)
@@ -17615,7 +17613,7 @@ implementing features like:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1nr1ai3b7yvz4wz4k0jqvjq3978hpk9yxarn7g7i3d2sxbdc0g4q"))))
(base32 "040aikizdd7c4zm8xindb2ps16s60i0fkf8gkll2rir7lwv6q7ks"))))
(build-system go-build-system)
(arguments
(list
@@ -22788,16 +22786,16 @@ it is capable of logging at some or all levels.")
(define-public go-github-com-rivo-tview
(package
(name "go-github-com-rivo-tview")
(version "0.42.0")
(version "0.0.0-20241227133733-17b7edb88c57")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rivo/tview")
(commit (string-append "v" version))))
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "0jw47h92l0vp1lg6s5kng4hjv81hi8qxx9h5yilc7rzrr8l9ksd2"))))
(base32 "1w59vyvs8k5mzl7k39zpwcwwdgam2pbz0rnrfnnjgvkld1rh81dc"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/rivo/tview"))
+25 -18
View File
@@ -517,19 +517,22 @@ functions which were removed.")
"0pik2d3995z0rjcjhb4hsj5fsph3m8khg6j10k6mx4j2j727aq6l"))))
(build-system waf-build-system)
(arguments
(list
#:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'set-flags
(lambda _
;; Allow 'bin/ganv_bench' to find libganv-1.so.
(setenv "LDFLAGS"
(string-append "-Wl,-rpath=" #$output "/lib")))))))
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'set-flags
(lambda* (#:key outputs #:allow-other-keys)
;; Allow 'bin/ganv_bench' to find libganv-1.so.
(setenv "LDFLAGS"
(string-append "-Wl,-rpath="
(assoc-ref outputs "out") "/lib"))
#t)))
#:tests? #f)) ; no check target
(inputs
`(("gtk" ,gtk+-2)
("gtkmm" ,gtkmm-2)))
(native-inputs
(list `(,glib "bin") ; for glib-genmarshal, etc.
pkg-config))
(inputs (list gtk+-2 gtkmm-2))
(home-page "https://drobilla.net/software/ganv/")
(synopsis "GTK+ widget for interactive graph-like environments")
(description
@@ -1457,9 +1460,10 @@ exceptions, macros, and a dynamic programming environment.")
(inherit guile-cairo)
(name "guile2.2-cairo")
(inputs
(modify-inputs inputs
(delete "guile" "guile-lib")
(append guile-2.2 guile2.2-lib)))))
`(("guile" ,guile-2.2)
("guile-lib" ,guile2.2-lib)
,@(fold alist-delete (package-inputs guile-cairo)
'("guile" "guile-lib"))))))
(define-public guile-cairo-next
;; A commit with cairo-pointer->context, missing from guile-cairo@1.11.2
@@ -1575,10 +1579,11 @@ images onto Cairo surfaces.")
(inherit guile-rsvg)
(name "guile2.2-rsvg")
(inputs
(modify-inputs inputs
(delete "guile" "guile-lib")
(append guile-2.2 guile2.2-lib)))
(propagated-inputs (list guile2.2-cairo))))
`(("guile" ,guile-2.2)
("guile-lib" ,guile2.2-lib)
,@(fold alist-delete (package-inputs guile-rsvg)
'("guile" "guile-lib"))))
(propagated-inputs `(("guile-cairo" ,guile2.2-cairo)))))
(define-public guile-present
(package
@@ -1644,7 +1649,9 @@ documents.")
(name "guile2.2-present")
(inputs (list guile-2.2))
(propagated-inputs
(list guile2.2-lib guile2.2-cairo guile2.2-rsvg))))
`(("guile-lib" ,guile2.2-lib)
("guile-cairo" ,guile2.2-cairo)
("guile-rsvg" ,guile2.2-rsvg)))))
;;;
;;; C++ bindings.
+85 -160
View File
@@ -60,7 +60,6 @@
;;; Copyright © 2025 Andy Tai <atai@atai.org>
;;; Copyright © 2025 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2026 Matt Wette <matt.wette@gmail.com>
;;; Copyright © 2026 Dzianis Jackievič <mail@miesta.by>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1168,7 +1167,7 @@ is not available for Guile 2.0.")
(package
(inherit guile-fibers-1.3)
(name "guile-fibers")
(version "1.4.3")
(version "1.4.2")
(source
(origin (inherit (package-source guile-fibers-1.3))
(file-name (git-file-name name version))
@@ -1177,7 +1176,7 @@ is not available for Guile 2.0.")
(commit (string-append "v" version))))
(sha256
(base32
"1q0a9y0cc8rld1z7mcj61fkldhd0kn9n4yq25izxslbgg4g5h9j6"))
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))
(patches '())))
(arguments
(if (target-aarch64?)
@@ -1257,8 +1256,30 @@ is not available for Guile 2.0.")
(modify-inputs native-inputs
(replace "guile" guile-2.2)))))
;; Deprecated on 2026-04-23
(define-deprecated-package guile-fibers-next guile-fibers)
(define-public guile-fibers-next
(let ((commit "297359f0ad655378bcc3ff0d4e96101965ef39b4")
(revision "0"))
(package
(inherit guile-fibers)
(name "guile-fibers-next")
(version (git-version "1.4.2"
revision
commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/guile/fibers.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0qh0czz5qvk5mmrc8x2gmvl5psdfd22q2rhzj4jrpan6k3d55bl8"))))
(inputs
(modify-inputs inputs
(replace "guile" guile-next)))
(native-inputs
(modify-inputs native-inputs
(replace "guile" guile-next))))))
(define-public guile-kracht
(package
@@ -1516,7 +1537,7 @@ order to provide IDE functionality for Guile Scheme.")
(define-public guile-ares-rs
(package
(name "guile-ares-rs")
(version "0.9.7")
(version "0.9.6")
(source
(origin
(method git-fetch)
@@ -1526,42 +1547,35 @@ order to provide IDE functionality for Guile Scheme.")
(file-name (git-file-name name version))
(sha256
(base32
"1xbznh5zjswfydgqg53g50ya7zm0hidin74g2glk849l9j45szw3"))))
"1vkww3vc0lsh5f8yh6fnh402rx3rsm0ss69rdkmplhzp4c7c4z1d"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "src/guile"
#:phases
#~(modify-phases %standard-phases
(add-after 'build 'install-scripts
(add-after 'build 'install-script
(lambda _
(define bin (string-append #$output "/bin"))
(define site (string-append #$output "/share/guile/site/3.0"))
(define ccache
(string-append #$output "/lib/guile/3.0/site-ccache"))
(define (install-script name)
(let ((oldpath
(string-append site "/ares/scripts/" name ".scm"))
(newpath
(string-append bin "/" name)))
(symlink oldpath newpath)
(wrap-program newpath
`("GUILE_LOAD_PATH" ":" =
,(list "$GUILE_LOAD_PATH"
site
(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" =
,(list "$GUILE_LOAD_COMPILED_PATH"
ccache
(getenv "GUILE_LOAD_COMPILED_PATH"))))
;; Not needed since the wrapper followed the symlink.
(delete-file (string-append bin "/." name "-real"))))
(mkdir bin)
(for-each install-script '("ares-nrepl" "ares-suitbl")))))))
(inputs (list bash-minimal guile-3.0-latest))
(propagated-inputs (list guile-fibers))
(let* ((bin (string-append #$output "/bin"))
(oldpath (string-append
#$output
;; This file will be named ares-nrepl.scm for
;; the next version.
"/share/guile/site/3.0/ares/scripts/ares.scm"))
(newpath (string-append bin "/ares-nrepl")))
(mkdir bin)
(symlink oldpath newpath)
(wrap-program newpath
`("GUILE_LOAD_PATH" ":" =
,(list (string-append #$output "/share/guile/site/3.0")
(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" =
,(list (string-append #$output "/lib/guile/3.0/site-ccache")
(getenv "GUILE_LOAD_COMPILED_PATH"))))
;; Not needed since the wrapper followed the symlink.
(delete-file (string-append bin "/.ares-nrepl-real"))))))))
(inputs (list bash-minimal guile-3.0))
(propagated-inputs (list guile-fibers guile-custom-ports))
(home-page "https://git.sr.ht/~abcdw/guile-ares-rs")
(synopsis "Asynchronous Reliable Extensible Sleek RPC Server for Guile")
(description "Asynchronous Reliable Extensible Sleek RPC Server for
@@ -5693,32 +5707,27 @@ perform geometrical transforms on JPEG images.")
(license license:gpl3+))))
(define-public guile-jtd
;; There are a few unreleased commits that include niceties such as warning
;; that the debug VM must be used; use the latest commit until the next
;; release comes.
(let ((commit "425f86ae954d6445aaedacfd4ecd50aa0022e59d")
(revision "0"))
(package
(name "guile-jtd")
(version (git-version "220323a" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mwette/guile-jtd")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
(build-system guile-build-system)
(native-inputs (list guile-3.0))
(home-page "https://github.com/mwette/guile-jtd")
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
(description
"The @code{(jtd)} module for Guile provides a procedure
(package
(name "guile-jtd")
(version "220323a")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mwette/guile-jtd")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1l8fyqhvksarvpbr903i3ss3432jzvyvhgcqa15j922ngqh4ds6f"))))
(build-system guile-build-system)
(native-inputs (list guile-3.0))
(home-page "https://github.com/mwette/guile-jtd")
(synopsis "Python's @code{pdb.set_trace()} but for Guile")
(description
"The @code{(jtd)} module for Guile provides a procedure
@code{jump-to-debugger} for escaping to the Guile REPL for the purpose of
debugging code.")
(license license:lgpl2.1+))))
(license license:lgpl2.1+)))
(define-public guile-png
(package
@@ -6390,88 +6399,6 @@ as signed sessions, multipart message support, etc.")
(propagated-inputs
(list guile2.2-irregex guile2.2-gcrypt))))
(define-public guile-compose
(package
(name "guile-compose")
(version "0.1.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/jadzi/guile-compose.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1g68gczs96nrb0vf1hv4n07zsp2516gpiwq1wwlhcq4rzynhf12h"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~'("GUILE_AUTO_COMPILE=0")))
(inputs (list guile-3.0))
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
(synopsis "Procedure composition utilities for Guile Scheme")
(description
"This tiny package provides some procedures and macros to extend
Guile Scheme procedure composition facilities. For example, there is
a @code{compose-top}, a reverse-order analog to native @code{compose}
procedure. The @code{compose-cont} is a macro, utilizing some power of
continuations to build really flexible flows.
This library is intended to stay basic and small, so it has no any
external dependencies and can be a good base for other packages, like e.g.
@code{guile-web-middleware}.")
(license (list license:lgpl3+))
(home-page "https://jadzi.codeberg.page/guile-compose")))
(define-public guile-web-middleware
(package
(name "guile-web-middleware")
(version "0.11.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://codeberg.org/jadzi/guile-web-middleware.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01wb8v0lszphdv08ly4aqv59qm5h8yw2fgm025vkn61djspsq4j9"))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~'("GUILE_AUTO_COMPILE=0")))
(inputs (list guile-3.0))
(propagated-inputs (list guile-compose))
(native-inputs (list autoconf-2.72 automake pkg-config guile-3.0 texinfo))
(synopsis "Web application middleware composition for Guile Scheme")
(description
"This package provides means to compose a web application by
chaining procedures, a.k.a. middlewares. By those means, composed
procedures form a standard request handler for any Guile's web server
implementation.
Each middleware has its own limited responsibility in request
processing. Also, middlewares are simple Scheme procedures, so they
can be easily tested and shared among web applications.
Out of the box, this package provides several procedures for commonly
required tasks. Among them:
@itemize
@item Error handling with customizable page contents.
@item Request filtering.
@item Request logging.
@item Serving static files, file URL generation.
@item Request routing, handling parameters, route URL generation.
@item Middleware nesting, composing whole apps.
@end itemize
This package relies on @code{guile-compose} package as its only dependency.")
(license (list license:lgpl3+))
(home-page "https://jadzi.codeberg.page/guile-web-middleware")))
(define-public guile-web-driver-ng
(package
(name "guile-web-driver-ng")
@@ -7764,11 +7691,11 @@ is an attempt to combine both into something useful.")
(license license:asl2.0))))
(define-public guile-knots
(let ((commit "f767eca066495e6582e89ba1b91907c0c5657878")
(revision "34"))
(let ((commit "d79284b4715efc347b22d510c3e3134a0c584b17")
(revision "32"))
(package
(name "guile-knots")
(version (git-version "0.1" revision commit))
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@@ -7776,7 +7703,7 @@ is an attempt to combine both into something useful.")
(commit commit)))
(sha256
(base32
"18fqmpyrrxy8phxxm5b7d1qhhvc3rsrs243xiinkj2hn2ca1cqi8"))
"0i87jc3dznw6pdib0yy49d8066c1jvwp2m01xi92amx45dkl8ixc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
@@ -7789,13 +7716,13 @@ is an attempt to combine both into something useful.")
(list pkg-config
autoconf
automake
guile-3.0-latest
guile-next
guile-lib
guile-fibers))
guile-fibers-next))
(inputs
(list guile-3.0-latest))
(list guile-next))
(propagated-inputs
(list guile-fibers))
(list guile-fibers-next))
(home-page "https://cbaines.codeberg.page/guile-knots/")
(synopsis "Patterns and functionality to use with Guile Fibers")
(description
@@ -8011,16 +7938,14 @@ This module implements this interface by use of Guile's dynamic FFI.")
(define-public guile-bstructs
(package
(name "guile-bstructs")
(version "0.2.0")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.dthompson.us/guile-bstructs.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18dwhcsbcjix61hy32ckjyvgmg1r9smq2krp2m1yc6sinlszh0f2"))))
(origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/releases"
"/guile-bstructs/guile-bstructs-" version ".tar.gz"))
(sha256
(base32 "0f847aiyzhrlvd2jmckyqrkrvi7i9mg8rmyhbh7fs1vzykcf67wb"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake guile-3.0 pkg-config texinfo))
(inputs (list guile-3.0))
@@ -8091,14 +8016,14 @@ application to open a given file or URL based on given configurations.")
(define-public guile-goblins
(package
(name "guile-goblins")
(version "0.18.0")
(version "0.17.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://files.spritely.institute/releases"
"/guile-goblins/guile-goblins-" version ".tar.gz"))
(sha256
(base32 "0gj5018wmq97ln1z7x03a13z3p35xc8762id9bl9fgkxwm01df1a"))))
(base32 "16jkmfspsnza2fdk5jr05a5pfh7x856gpg031i21s1yvy43l8mi0"))))
(build-system gnu-build-system)
(arguments
(list
+20 -10
View File
@@ -653,10 +653,7 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
(define (guile-variant-package-name prefix)
(lambda (name)
"Return NAME with PREFIX instead of \"guile-\", when applicable."
(if (and (string-prefix? "guile-" name)
;; Don't rename guile-bootstrap@2.0.
(not (string=? "guile-bootstrap" name)))
(if (string-prefix? "guile-" name)
(string-append prefix "-"
(string-drop name
(string-length "guile-")))
@@ -903,8 +900,8 @@ type system, elevating types to first-class status.")
(define-public guile-git
(package
(name "guile-git")
(version "0.11.1")
(home-page "https://codeberg.org/guile-git/guile-git.git")
(version "0.11.0")
(home-page "https://gitlab.com/guile-git/guile-git.git")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -913,11 +910,11 @@ type system, elevating types to first-class status.")
(file-name (git-file-name name version))
(sha256
(base32
"0xpzchnglddphi3chv53xqaz2x6rpq3l4s023w7r4mmndb6lgz0b"))))
"1yjyil6z4k80pjdps8v6h6lxikwxmjxvrslf2jrmq2rrfnajschz"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("GUILE_AUTO_COMPILE=0") ; to prevent guild warnings
;; https://codeberg.org/guile-git/guile-git/issues/20
;; https://gitlab.com/guile-git/guile-git/-/issues/20
,@(if (target-ppc32?)
`(#:phases
(modify-phases %standard-phases
@@ -925,7 +922,20 @@ type system, elevating types to first-class status.")
(lambda _
(substitute* "Makefile.am"
((".*tests/blob\\.scm.*") ""))))))
'())))
'())
,@(if (system-hurd?)
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-tests/hurd
(lambda _
(substitute* "tests/proxy.scm"
(("\\(test-begin.*" all)
(string-append
all
"(when (string-ci= \"GNU\" (vector-ref (uname) 0))\n"
" (test-skip 1))\n")))))))
'())))
(native-inputs
(list pkg-config autoconf automake texinfo guile-3.0 guile-bytestructures))
(inputs
@@ -994,7 +1004,7 @@ Guile's foreign function interface.")
(file-name (string-append "guile-lzlib-" version ".tar.gz"))
(sha256
(base32
"1v1pfqp6hwl0rivs7swhqnfgznxlfnws9ldmn6avnhd10filfa3a"))
"1whgmwkr1v8m63p4aaqn8blwl9vcrswwhbfv4bm0aghl5a6rryd7"))
(patches (search-patches "guile-lzlib-gcc-14.patch"
"guile-lzlib-hurd64.patch"))))
(build-system gnu-build-system)
+1 -1
View File
@@ -914,7 +914,7 @@ regular) Diffie Hellman key exchanges, and many extensions.")
(list #:extra-directories (list "openssl")
#:configure-flags
#~(list "--ghc-options=-optc=-Wno-incompatible-pointer-types")))
(inputs (list ghc-network openssl-3.0))
(inputs (list ghc-network openssl))
(home-page "https://github.com/haskell-cryptography/HsOpenSSL")
(synopsis "Partial OpenSSL binding for Haskell")
(description
+2 -13
View File
@@ -489,22 +489,11 @@ lost.
"0b9d2i22ghyjarwi1c596q5mf7gj1k04k784hnmrd2d4x9hgv9ax"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~(list "--with-corosync"
"--disable-static"
"--localstatedir=/var"
(list #:configure-flags #~(list "--with-corosync" "--disable-static"
(string-append "--with-initdir="
#$output "/etc/init.d")
(string-append "--with-ocfdir="
#$output "/lib"))
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'pre-configure
(lambda _
;; Do not attempt to install /var.
(substitute* '("Makefile.am"
"daemons/schedulerd/Makefile.am")
(("install-exec-local:")
"install-exec-local-disabled:")))))))
#$output "/lib"))))
(native-inputs (list autoconf
automake
cmocka
+24
View File
@@ -339,6 +339,30 @@ coverage.")
;; that list in further version.
(supported-systems (list "x86_64-linux"))))
(define-public lttng-modules
(package
(name "lttng-modules")
(version "2.13.14")
(source (origin
(method url-fetch)
(uri (string-append "https://lttng.org/files/lttng-modules/"
"lttng-modules-" version ".tar.bz2"))
(sha256
(base32
"19jx1yz1hsbr4vwfp2nr6z52a5g50iimaak962k49diay5zryi66"))))
(build-system linux-module-build-system)
(arguments
`(#:tests? #f ; no tests
#:make-flags (list "CONFIG_LTTNG=m"
"CONFIG_LTTNG_CLOCK_PLUGIN_TEST=m")))
(home-page "https://lttng.org/")
(synopsis "LTTng kernel modules for the LTTng tracer toolset")
(description
"LTTng kernel modules are Linux kernel modules which make
LTTng kernel tracing possible. They include essential control modules and
many probes which instrument numerous interesting parts of Linux.")
(license (list license:lgpl2.1 license:gpl2 license:expat))))
(define-public lttng-ust
(package
(name "lttng-ust")
+13 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2014-2019, 2021, 2026 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021, 2026 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2022 Marius Bakke <marius@gnu.org>
@@ -226,6 +226,18 @@ JNI.")
(setenv "JAVACMD" (search-input-file inputs "/bin/jamvm"))
(setenv "JAVAC" (search-input-file inputs "/bin/jikes"))
(setenv "CLASSPATH" (search-input-file inputs "/lib/rt.jar"))))
,@(if (target-x86-32?)
;; XXX: On i686 isFile() always seems to return true. Patching
;; this here is very ugly, but the effects are limited. None
;; of these changes remain by the time we've built Icedtea and
;; the other JDKs.
'((add-after 'unpack 'disable-isFile-checks
(lambda _
(substitute* "src/main/org/apache/tools/ant/util/ResourceUtils.java"
(("destFile = \\(\\(FileProvider\\).*") ""))
(substitute* "src/main/org/apache/tools/ant/taskdefs/Mkdir.java"
(("dir.isFile\\(\\)") "false")))))
'())
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Ant complains if this file doesn't exist.
+29 -23
View File
@@ -55,12 +55,13 @@
(modify-phases %standard-phases
(add-after 'unpack 'make-git-checkout-writable
(lambda _
(for-each make-file-writable (find-files "."))))
(for-each make-file-writable (find-files "."))
#t))
(add-before 'build 'remove-binaries
(lambda _
(delete-file "lib/org/xerial/snappy/OSInfo.class")
(delete-file-recursively
"src/main/resources/org/xerial/snappy/native")))
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
#t))
(add-before 'build 'build-jni
(lambda _
;; Rebuild one of the binaries we removed earlier
@@ -97,33 +98,36 @@
(add-after 'build-jni 'copy-jni
(lambda _
(copy-recursively "src/main/resources/org/xerial/snappy/native"
"build/classes/org/xerial/snappy/native")))
"build/classes/org/xerial/snappy/native")
#t))
(add-before 'build 'set-test-memory-size
(lambda _
(substitute* "build.xml"
(("<junit printsummary=")
"<junit maxmemory=\"2G\" printsummary="))))
(("<junit printsummary=") "<junit maxmemory=\"2G\" printsummary="))
#t))
(add-before 'check 'fix-failing
(lambda _
(with-directory-excursion "src/test/java/org/xerial/snappy"
;; This package assumes maven build, which puts results in
;; "target". We put them in "build" instead, so fix that.
;; This package assumes maven build, which puts results in "target".
;; We put them in "build" instead, so fix that.
(substitute* "SnappyLoaderTest.java"
(("target/classes") "build/classes"))
;; This requires Hadoop, which is not in Guix yet.
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java")))))))
(delete-file "SnappyHadoopCompatibleOutputStreamTest.java"))
#t)))))
(inputs
(list java-osgi-framework))
`(("osgi-framework" ,java-osgi-framework)))
(propagated-inputs
(list bitshuffle-for-snappy snappy))
`(("bitshuffle" ,bitshuffle-for-snappy)
("snappy" ,snappy)))
(native-inputs
(list java-junit
java-hamcrest-core
java-xerial-core
java-plexus-classworlds
java-commons-lang
java-commons-io
perl))
`(("junit" ,java-junit)
("hamcrest" ,java-hamcrest-core)
("xerial-core" ,java-xerial-core)
("classworlds" ,java-plexus-classworlds)
("commons-lang" ,java-commons-lang)
("commons-io" ,java-commons-io)
("perl" ,perl)))
(home-page "https://github.com/xerial/snappy-java")
(synopsis "Compression/decompression algorithm in Java")
(description "Snappy-java is a Java port of snappy, a fast C++
@@ -152,13 +156,13 @@ compressor/decompressor.")
(add-before 'build 'remove-binaries
(lambda _
(delete-file "lib/org/xerial/snappy/OSInfo.class")
(delete-file-recursively
"src/main/resources/org/xerial/snappy/native")))
(delete-file-recursively "src/main/resources/org/xerial/snappy/native")
#t))
(add-before 'build 'build-jni
(lambda _
;; Rebuild one of the binaries we removed earlier
(invoke "javac" "src/main/java/org/xerial/snappy/OSInfo.java"
"-d" "lib")
"-d" "lib")
;; Link to the dynamic snappy, not the static ones
(substitute* "Makefile.common"
(("-shared") "-shared -lsnappy"))
@@ -180,14 +184,16 @@ compressor/decompressor.")
(add-after 'build-jni 'copy-jni
(lambda _
(copy-recursively "src/main/resources/org/xerial/snappy/native"
"build/classes/org/xerial/snappy/native")))
"build/classes/org/xerial/snappy/native")
#t))
(add-before 'check 'fix-tests
(lambda _
(mkdir-p "src/test/resources/org/xerial/snappy/")
(copy-recursively "src/test/java/org/xerial/snappy/testdata"
"src/test/resources/org/xerial/snappy/testdata")
(install-file "src/test/java/org/xerial/snappy/alice29.txt"
"src/test/resources/org/xerial/snappy/"))))))))
"src/test/resources/org/xerial/snappy/")
#t)))))))
(define-public java-iq80-snappy
(package
+2 -66
View File
@@ -22,7 +22,6 @@
;;; Copyright © 2024, 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2024-2025 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2025 Ghislain Vaillant <ghislain.vaillant@inria.fr>
;;; Copyright © 2026 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -53,9 +52,7 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages cpp)
#:use-module (gnu packages databases)
#:use-module (gnu packages docker)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages linux)
#:use-module (gnu packages monitoring)
#:use-module (gnu packages networking)
@@ -1713,13 +1710,13 @@ analyzing Jupyter Notebooks.")
(define-public python-qtconsole
(package
(name "python-qtconsole")
(version "5.7.2")
(version "5.7.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "qtconsole" version))
(sha256
(base32 "088m56fav6xlcw55srxz96yf7rj2ndmycy4f3m69498r2swqbd17"))))
(base32 "0w9i0s70dm39cxgn3vh4wcaxdywzp9j0ac7f49q4qmggx4f3fcqd"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -1767,67 +1764,6 @@ analyzing Jupyter Notebooks.")
rich media output.")
(license license:bsd-3)))
(define-public python-spyder-kernels
(package
(name "python-spyder-kernels")
(version "3.1.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/spyder-ide/spyder-kernels")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yhrifh148g93qkwx9ggsh2kr9789apzlw91ais4dyas5yf1xj8w"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
#~(list "-k" (string-append
;; Avoid pulling Django for a single test.
"not test_django_settings"
;; AssertionError.
" and not test_umr_reload_modules"))
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'redirect-HOME
(lambda _
(setenv "HOME" "/tmp"))))))
(propagated-inputs (list python-cloudpickle
python-ipykernel
python-ipython
python-jupyter-client
python-packaging
python-pyxdg
python-pyzmq
python-traitlets
python-wurlitzer))
(native-inputs (list python-anyio
python-cython
python-dask
python-h5py
python-matplotlib
python-numpy
python-pandas
python-pillow
python-polars
python-pyarrow
python-pydicom
python-pytest
python-scipy
python-setuptools
python-xarray))
(home-page "https://github.com/spyder-ide/spyder-kernels")
(synopsis "Jupyter kernels for Spyder's console")
(description "This package provides Jupyter kernels for use with the
consoles of Spyder, the Scientific Python Development Environment.
These kernels can be launched either through Spyder itself or in an
independent Python session, and allow for interactive or file-based execution
of Python code inside Spyder.")
(license license:expat)))
(define-public python-voila
(package
(name "python-voila")
+12 -22
View File
@@ -37,7 +37,6 @@
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
@@ -190,17 +189,16 @@ framework. It builds XMPP clients complying with the XMPP Compliance Suites
(package
(name "kaidan")
(version "0.15.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/unstable/kaidan/" version
"/kaidan-" version ".tar.xz"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "3rdparty")))
(sha256
(base32 "11g4lifji6gh9zmpgyx4dnmxyzzwkhhj84j2w9r4bvgqm2pxdhnd"))))
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/unstable/kaidan/" version
"/kaidan-" version ".tar.xz"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "3rdparty")))
(sha256
(base32 "11g4lifji6gh9zmpgyx4dnmxyzzwkhhj84j2w9r4bvgqm2pxdhnd"))))
(build-system qt-build-system)
(arguments
(list
@@ -211,18 +209,10 @@ framework. It builds XMPP clients complying with the XMPP Compliance Suites
(add-before 'check 'set-home
(lambda _
;; Tests need write permission in $HOME.
(setenv "HOME" "/tmp")))
(add-after 'install 'wrap-program
(lambda _
(let ((gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
(wrap-program (string-append #$output "/bin/kaidan")
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix
(,gst-plugin-path)))))))))
(setenv "HOME" "/tmp"))))))
(native-inputs (list extra-cmake-modules
pkg-config))
(inputs (list bash-minimal
gst-plugins-good-qt
gstreamer
(inputs (list gstreamer
icu4c
kcrash
kdsingleapplication
+13 -18
View File
@@ -1191,42 +1191,37 @@ CDs.")
(define-public plasmatube
(package
(name "plasmatube")
(version "26.04.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/plasmatube-" version ".tar.xz"))
(sha256
(base32 "0dby9wypbrhg6g03kvl8fc40zpnri03hf3kk3vi1z16pwc7sn093"))))
(version "25.12.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/plasmatube-" version ".tar.xz"))
(sha256
(base32
"1jc6iqcxz0zyai26vx80nyfr818r4cj8lpw0b1pbvb1vya12v8zy"))))
(build-system qt-build-system)
(native-inputs (list extra-cmake-modules pkg-config python-minimal))
(inputs
(list kconfig
kcoreaddons
kdbusaddons
kdeclarative ; for org.kde.kquickcontrolsaddons
ki18n
kirigami
kirigami-addons
kitemmodels
ki18n
kwindowsystem
mpvqt
purpose
qqc2-desktop-style ; for org.kde.desktop
qtdeclarative
qtkeychain-qt6
qtmultimedia
qtsvg
qtkeychain-qt6
qtwayland
sonnet
yt-dlp))
(arguments (list #:qtbase qtbase))
(home-page "https://apps.kde.org/plasmatube/")
(synopsis "YouTube and PeerTube video player")
(description
"Plasmatube is a YouTube video player that uses Invidious and Piped
APIs. It can also play videos from PeerTube sources.")
(synopsis "Kirigami YouTube video player")
(description "This package provides YouTube video player based
on QtMultimedia and @command{yt-dlp}.")
(license license:gpl3+)))
(define-public rattlesnake
-3
View File
@@ -1853,9 +1853,6 @@ for xdg-desktop-portal that is using Qt/KF5.")
breeze-icons ;default mouse icon
colord
discover
ffmpegthumbs
flatpak ;for discover
flatpak-kcm ;to manage flatpak app permissions
kactivitymanagerd
kdeclarative ;required by sddm breeze theme
kde-cli-tools
+13 -14
View File
@@ -125,14 +125,14 @@
;; ex:
;; tar xf /gnu/store/...-firefox-123.4.source.tar.xz -O \
;; firefox-123.4/browser/locales/l10n-changesets.json | grep revision
(let ((commit "fefe280d909d0eee8d60edd2a6db7d969df56c5b"))
(let ((commit "0245ffb160688061f0e0c67ea488bcdfdacbeca4"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mozilla-l10n/firefox-l10n.git")
(commit commit)))
(file-name (git-file-name "firefox-l10n" commit))
(sha256 (base32 "0z1ksvspbn4bbzxdl2w4x7bg36j4rwhaby8g37apg4393frh558i")))))
(sha256 (base32 "0y8xdxql04yys0wj685v4yp3kmx1ivnndg6z11vam8vszh0j7ak6")))))
(define* (make-librewolf-source #:key version firefox-hash librewolf-hash l10n)
(let* ((ff-src (firefox-source-origin
@@ -205,8 +205,7 @@
(search-patches
"librewolf-compare-paths.patch"
"librewolf-use-system-wide-dir.patch"
"librewolf-add-store-to-rdd-allowlist.patch"
"librewolf-150.0-encoding_rs-rust-fix.patch"))
"librewolf-add-store-to-rdd-allowlist.patch"))
;; Slim down the tarball by removing unbundled libraries and 75 Mo (800+
;; Mo uncompressed) of unused tests.
;; TODO: Unbundle security/nss and media/libpng.
@@ -245,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 "20260421153818")
(define %librewolf-build-id "20260409162101")
(define-public librewolf
(package
(name "librewolf")
(version "150.0-1")
(version "149.0.2-2")
(source
(make-librewolf-source
#:version version
#:firefox-hash "151rxzl80dm8jsxl6fwzgbirwq4zpms5adwwnbjcwdd1r3s3vr7v"
#:librewolf-hash "0iw9v3zc1fxc93yyhldqarxaypgmbndh2ylsy330kcbpb6p1gnmr"
#:firefox-hash "1kkhg3lgyakinn5ankxrlxbf39wi61mqbhwrj1l4q5l7y0n1m4va"
#:librewolf-hash "1bai8g2kc9snck2f724al29q6r57vkj3d7v58rf0mgzpqzvwnw5f"
#:l10n firefox-l10n))
(build-system gnu-build-system)
(arguments
@@ -353,18 +352,18 @@
(cdr pref)))
`(("extensions.getAddons.search.browseURL"
,(string-append
"https://gnuzilla.gnu.org/"
"https://gnuzilla.gnu.org/mozzarella/"
"search.php?q=%TERMS%"))
("extensions.getAddons.get.url" .
"https://gnuzilla.gnu.org")
"https://gnuzilla.gnu.org/mozzarella")
("extensions.getAddons.link.url" .
"https://gnuzilla.gnu.org")
"https://gnuzilla.gnu.org/mozzarella")
("extensions.getAddons.discovery.api_url" .
"https://gnuzilla.gnu.org")
"https://gnuzilla.gnu.org/mozzarella")
("extensions.getAddons.langpacks.url" .
"https://gnuzilla.gnu.org")
"https://gnuzilla.gnu.org/mozzarella")
("lightweightThemes.getMoreURL" .
"https://gnuzilla.gnu.org")))))))
"https://gnuzilla.gnu.org/mozzarella")))))))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda _
(use-modules (guix build cargo-utils))
+179 -11
View File
@@ -2767,6 +2767,32 @@ This package provides the @command{corefreqd} data collection daemon, the
(supported-systems (list "x86_64-linux"))
(license license:gpl2)))
(define-public librem-ec-acpi-linux-module
(package
(name "librem-ec-acpi-linux-module")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://source.puri.sm/nicole.faerber/librem-ec-acpi-dkms")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0m8hamf0550083jnk5q4hv20l8lfiardnkxbib4hhvqghpzzbxl0"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f)) ; no test suite
(home-page "https://source.puri.sm/nicole.faerber/librem-ec-acpi-dkms")
(synopsis "Linux kernel module to control the Librem Embedded Controller")
(description
"This is the Linux kernel @acronym{ACPI, Advanced Configuration and Power
Interface} platform driver for the @acronym{EC, Embedded Controller} firmware
on Purism Librem laptop computers. It allows user-space control over the
battery charging thresholds, keyboard backlight, fans and thermal monitors,
and the notification, WiFi, and Bluetooth LED.")
(license license:gpl2)))
(define-public tuxedo-keyboard
(package
(name "tuxedo-keyboard")
@@ -2797,6 +2823,70 @@ kernel modules to control the keyboard on most Tuxedo computers. The @code{tuxed
module is also needed for the @code{tuxedo-control-center} (short tcc) package.")
(license license:gpl2+)))
(define-public evdi
(package
(name "evdi")
(version "1.14.8") ;inherited by libevdi
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/DisplayLink/evdi")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "18n8kk4gbbj252a2dqb7mbpscfb437x42flh1fsl4g5c8brczc77"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f ;no test suite
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "module"))))))
(home-page "https://github.com/DisplayLink/evdi")
(synopsis
"@acronym{EVDI, Extensible Virtual Display Interface} Linux kernel module")
(description
"The @acronym{EVDI, Extensible Virtual Display Interface} is a Linux kernel
module that enables management of multiple screens, allowing user-space programs
to take control over what happens with the image. It is essentially a virtual
display for which applications using the @code{libevdi} library can add, remove,
and receive screen updates.
The EVDI driver uses the standard Linux @acronym{DRM, Direct Rendering Manager}.
Its displays can be controlled by standard tools such as @command{xrandr} and
display settings applets in graphical environments")
(license license:gpl2)))
(define-public libevdi
(package
(inherit evdi)
(name "libevdi")
(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)
(add-after 'unpack 'chdir
(lambda _
(chdir "library")))
(replace 'install
(lambda* _
(let* ((lib (string-append #$output "/lib")))
(mkdir-p lib)
(install-file "libevdi.so" lib)))))))
(inputs (list libdrm))
(native-inputs (list pkg-config))
(synopsis
"@acronym{EVDI, Extensible Virtual Display Interface} user-space library")
(description
"Libevdi is a library that gives applications easy access to
@acronym{EVDI, Extensible Virtual Display Interface} devices provided by the
@code{evdi} driver package.")
(license license:lgpl2.1)))
(define-public ec
(package
(name "ec")
@@ -2822,6 +2912,62 @@ registers of the @acronym{EC, Embedded Controller} supported by the
@code{ec_sys} Linux driver.")
(license license:gpl2)))
(define-public lkrg
(package
(name "lkrg")
(version "0.9.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lkrg-org/lkrg")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0k0z9caj48nqjwk3bapgfcdzi1lkizxcjj4r1dvkvwsk38mbk1c4"))))
(build-system linux-module-build-system)
(arguments
(list #:linux linux-libre
#:tests? #f
#:make-flags #~(list (string-append "CC="
#$(cc-for-target))
(string-append "SYSSRC="
(assoc-ref %build-inputs
"linux-module-builder")
"/lib/modules/build"))))
(inputs (list bash-minimal))
(home-page "https://lkrg.org/")
(synopsis "Linux Kernel Runtime Guard")
(description
"This package performs runtime integrity checking of the Linux kernel and
detection of security vulnerability exploits against the kernel.")
(license license:gpl2)))
(define-public vhba-module
(package
(name "vhba-module")
(version "20211218")
(source
(origin
(method url-fetch)
(uri (string-append
"http://downloads.sourceforge.net/cdemu/vhba-module/vhba-module-"
version ".tar.xz"))
(sha256
(base32 "1dkprnnya0i8121p7ip4g8cww99drk7fzbwcxx65x02jqk0siibj"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f)) ; no test suite
(home-page "https://cdemu.sourceforge.io/")
(synopsis "Linux kernel module that emulates SCSI devices")
(description
"The @acronym{VHBA, Virtual SCSI Host Bus Adapter} module is the link
between the CDemu user-space daemon and the kernel Linux. It acts as a
low-level SCSI driver that emulates a virtual SCSI adapter which can have
multiple virtual devices attached to it. Its typical use with CDEmu is to
emulate optical devices such as DVD and CD-ROM drives.")
(license license:gpl2+)))
(define-public bbswitch-module
;; Use "develop" branch since stable release does not build on Linux >= 5.6.
;; See https://github.com/Bumblebee-Project/bbswitch/issues/205.
@@ -3018,6 +3164,36 @@ Linux kernel module, it also contains a modprobe configuration and udev rules,
which need to be installed separately.")
(license license:gpl3+)))
(define-public vendor-reset-linux-module
(let ((commit "4b466e92a2d9f76ce1082cde982c7be0be91e248")
(revision "0"))
(package
(name "vendor-reset-linux-module")
(version (git-version "0.1.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gnif/vendor-reset")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1gaf4j20grng689c9fylcqri3j9ycnhr2bsva2z6qcdqvzl6yxbi"))))
(build-system linux-module-build-system)
(arguments
(list #:tests? #f)) ;no test suite
(home-page "https://github.com/gnif/vendor-reset")
(synopsis
"Kernel module that resets GPUs that are affected by the reset bug")
(description
"This package provides a kernel module that is capable of
resetting hardware devices into a state where they can be
re-initialized or passed through into a virtual machine (VFIO).
While it would be great to have these in the kernel as PCI quirks,
some of the reset procedures are very complex and would never be
accepted as a quirk (ie AMD Vega 10).")
(license license:gpl2))))
;;;
;;; Pluggable authentication modules (PAM).
@@ -11918,7 +12094,7 @@ provides user-space tools for creating EROFS file systems.")
(define-public rasdaemon
(package
(name "rasdaemon")
(version "0.8.4")
(version "0.8.3")
(source
(origin
(method git-fetch)
@@ -11927,17 +12103,9 @@ provides user-space tools for creating EROFS file systems.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1930g35igfdw5bzcd6diy59rm1q4yirpjgqznfqfsichnmk04kmf"))))
(base32 "0vfw4vf75fnpbxnfsmpdwdzhplnccz24j23bg6nsb3b4wa8hv4sa"))))
(native-inputs (list autoconf automake libtool pkg-config))
(inputs
(list bash-minimal
dmidecode
kmod
libtraceevent
pciutils
perl
perl-dbd-sqlite
sqlite))
(inputs (list bash-minimal libtraceevent perl perl-dbd-sqlite sqlite dmidecode kmod))
(arguments
(list
#:configure-flags
-17
View File
@@ -89,7 +89,6 @@
#:use-module (gnu packages wget)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (ice-9 match)
#:use-module ((srfi srfi-1) #:hide (zip)))
(define (lua-search-paths version)
@@ -171,22 +170,6 @@ for configuration, scripting, and rapid prototyping.")
"lua-5.4-search-paths.patch"))))
(native-search-paths (lua-search-paths "5.4"))))
(define-public lua-5.4-for-c++
(let ((lua-pkg lua-5.4))
(hidden-package
(package/inherit lua-pkg
(name (string-append (package-name lua-pkg) "-for-c++"))
(arguments
(substitute-keyword-arguments (package-arguments lua-pkg)
((#:make-flags old-flags)
(map
(match-lambda
((string-append "CC=" _)
`(string-append "CC=" ,(cxx-for-target)))
(else else))
old-flags))))))))
(define-public lua-5.2
(package (inherit lua)
(version "5.2.4")
+4 -4
View File
@@ -57,7 +57,7 @@
(define-public luanti
(package
(name "luanti")
(version "5.15.2")
(version "5.15.1")
(source
(origin
(method git-fetch)
@@ -66,7 +66,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1mcbsgf549y2jg9qds95wwgd1699mkk4byv9ls4lpg43bd829dhk"))
(base32 "07g41ljv117pmw6402mqznccwl1hd9jp2l8wkb4l211cbm4c6vv9"))
(modules '((guix build utils)
(srfi srfi-26)
(ice-9 ftw)))
@@ -488,7 +488,7 @@ with different rules and mechanics.")
(define-public luanti-mineclonia
(package
(name "luanti-mineclonia")
(version "0.121.1")
(version "0.120.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -497,7 +497,7 @@ with different rules and mechanics.")
(file-name (git-file-name name version))
(sha256
(base32
"1c3x59iq04vfc0fa09z6g8davrr2vhdywppdbgyw64n7vk4f6br9"))))
"135xllkvdravry25y1f94wqn7nxb0pnrpn7xiagh2b5vjbajhdg4"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
+17 -10
View File
@@ -2475,6 +2475,9 @@ similar to MATLAB, GNU Octave or SciPy.")
;; "--enable-doxygen"
"--enable-dot"
"--enable-netcdf-4"
#$@(if (or (target-x86-32?) (target-arm32?))
'("CFLAGS=-Wno-error=incompatible-pointer-types")
'())
(string-append "--with-plugin-dir=" #$output "/lib/hdf5-plugins"))
#:phases
#~(modify-phases %standard-phases
@@ -2486,7 +2489,15 @@ similar to MATLAB, GNU Octave or SciPy.")
(("testurl.sh") ""))
(substitute* "nczarr_test/Makefile.in"
(("/bin/bash")
(search-input-file inputs "bin/bash")))))
(search-input-file inputs "bin/bash")))
;; This test fails on 32 bit platforms.
#$@(if (or (target-x86-32?) (target-arm32?))
'((substitute* '("ncdump/tst_netcdf4_4.sh"
"ncdump/tst_nccopy4.sh")
(("#!/bin/sh" m) (string-append m "\nexit 0\n")))
(substitute* "ncdump/Makefile.in"
(("tst_netcdf4_4.log") "")))
'())))
(add-before 'configure 'fix-source-date
(lambda _
;; As we ${SOURCE_DATE_EPOCH} evaluates to "1" in the build
@@ -9647,7 +9658,7 @@ researchers and developers alike to get started on SAT.")
(define-public kissat
(package
(name "kissat")
(version "4.0.4")
(version "4.0.1")
(source
(origin
(method git-fetch)
@@ -9657,7 +9668,7 @@ researchers and developers alike to get started on SAT.")
(file-name (git-file-name name version))
(sha256
(base32
"1snimig4cp97p570nin2i38my72zvwypldyhr125i1z6cd9pa046"))))
"0acg61cfcjg13if2i375cyl4xvwmabhfhi9z8pnw971046am6bzv"))))
(build-system gnu-build-system)
(inputs (list xz gzip lzip bzip2 p7zip))
(arguments
@@ -9668,10 +9679,6 @@ researchers and developers alike to get started on SAT.")
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "test/testfile.c"
;; Don't check if /etc/passwd isn't writable.
;; When building in a container/chroot, this fails spuriously.
((".*/etc/passwd.*") ""))
(substitute* "scripts/generate-build-header.sh"
;; by default BUILD includes the build date which
;; makes the build not reproducible.
@@ -11458,7 +11465,7 @@ expression parsing and evaluation.")
(define-public highs
(package
(name "highs")
(version "1.14.0")
(version "1.10.0")
(source
(origin
(method git-fetch)
@@ -11467,14 +11474,14 @@ expression parsing and evaluation.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "16y664rzvxd8785195k0srz0842zvl0zdkf6qi103p503pj81afh"))))
(base32 "19q99nkk6r6k91gxp8a5rjil1399qyfgfc6jqlg2gd82vpcw8c8b"))))
(build-system cmake-build-system)
(home-page "https://highs.dev")
(synopsis "High performance software for linear optimization")
(description
"HiGHS provides serial and parallel solvers for large-scale sparse
linear programming (LP), mixed-integer programming (MIP), and quadratic
programming (QP) models.")
programming (QP) models")
(license license:expat)))
(define-public trilinos-zoltan
+7 -7
View File
@@ -1151,7 +1151,7 @@ simultaneously and therefore appear under the same nickname on IRC.")
(define-public python-nbxmpp
(package
(name "python-nbxmpp")
(version "7.2.0")
(version "7.1.0")
(source
(origin
(method git-fetch)
@@ -1160,7 +1160,7 @@ simultaneously and therefore appear under the same nickname on IRC.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1dyf4jh76ffbl45x4cpk6rsn1r4wck54b3d8wfd2swxaqq4p7lis"))))
(base32 "1n7b6yv2k89hsmhmx9pi7m8l3aq97xppaz3hm7mvqgvxnlw0c1kr"))))
(build-system pyproject-build-system)
(arguments (list #:test-backend #~'unittest))
(propagated-inputs
@@ -1184,7 +1184,7 @@ of xmpppy.")
(define-public gajim
(package
(name "gajim")
(version "2.4.6")
(version "2.4.5")
(source
(origin
(method url-fetch)
@@ -1192,7 +1192,7 @@ of xmpppy.")
(version-major+minor version)
"/gajim-" version ".tar.gz"))
(sha256
(base32 "0ilpgkzw45scjlnag94p8v6np629v7w0ihci5a2w5d742gpqvq6c"))
(base32 "1rkxzf1pfd29rip5bw4730fl7b2xk12zpiwnfkyzxlkmbh4j3kp2"))
(patches
(search-patches "gajim-honour-GAJIM_PLUGIN_PATH.patch"))))
(build-system pyproject-build-system)
@@ -1278,6 +1278,7 @@ of xmpppy.")
glib
glib-networking
gsettings-desktop-schemas
gsound
libspelling
libadwaita
gstreamer
@@ -1292,7 +1293,6 @@ of xmpppy.")
libsoup
libxscrnsaver
network-manager
python-cryptography
python-css-parser
python-dbus-1.2
python-emoji
@@ -3437,14 +3437,14 @@ notifications.")
(define-public pounce
(package
(name "pounce")
(version "3.2")
(version "3.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://git.causal.agency/pounce/snapshot/pounce-"
version ".tar.gz"))
(sha256
(base32 "1i0s76mip9kfmi85bfk10p4k1kg5wkq1gm4l9gadnq9ssxnvzvjs"))
(base32 "0kk0jrfiwfaybr0i5xih3b0yd4i6v3bz866a7xal1j8wddalbwlp"))
(patches (search-patches "pounce-readable-checks.patch"))))
(outputs '("out" "debug"))
(build-system gnu-build-system)
+4 -38
View File
@@ -1,16 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2021, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2021 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018-2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018, 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2023 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2020 Alex ter Weele <alex.ter.weele@gmail.com>
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2021, 2022 Marius Bakke <marius@gnu.org>
@@ -24,6 +19,9 @@
;;; Copyright © 2025 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2025 Giacomo Leidi <therewasa@fishinthecalculator.me>
;;; Copyright © 2025 Christian Birk Sørensen <chrbirks@gmail.com>
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2023 Vasile Dumitrascu <va511e@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -72,7 +70,6 @@
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages lua)
#:use-module (gnu packages mail)
@@ -414,37 +411,6 @@ system statistics (CPU, disk, and memory usage, etc.) and more on the
desktop.")
(license license:gpl3+)))
(define-public gkrellm
(package
(name "gkrellm")
(version "2.5.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://gkrellm.srcbox.net/releases/gkrellm-"
version ".tar.bz2"))
(sha256
(base32 "0qvy2xmwmfy5f0g09yn9lr262shnx82ba04r5il2wj4qscg3r7h8"))))
(build-system gnu-build-system)
(inputs (list gtk+-2 libsm))
(native-inputs (list gettext-minimal pkg-config))
(arguments
(list
#:tests? #f ;there is no check target
#:phases
#~(modify-phases %standard-phases
(delete 'configure)) ;no configure script
#:make-flags
#~(list (string-append "INSTALLROOT=" #$output)
(string-append "CC=" #$(cc-for-target)))))
(home-page "https://gkrellm.srcbox.net/")
(synopsis "System monitors")
(description
"GKrellM is a single process stack of system monitors which supports
applying themes to match its appearance to your window manager, Gtk, or any
other theme.")
(license license:gpl3+)))
(define-public glances
(package
(name "glances")
+95 -3
View File
@@ -76,7 +76,95 @@
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
(define-public hwloc
(define-public hwloc-1
(package
(name "hwloc")
(version "1.11.13")
(source (origin
(method url-fetch)
(uri (string-append "https://www.open-mpi.org/software/hwloc/v"
(version-major+minor version)
"/downloads/hwloc-" version ".tar.bz2"))
(sha256
(base32
"1j69p8a1pjpbpwn4w7l4dfxmaxxqikchjzqw1ncw05zmcmvlnjd4"))
(patches (search-patches "hwloc-1-test-btrfs.patch"))))
(properties
;; Tell the 'generic-html' updater to monitor this URL for updates.
`((release-monitoring-url
. "https://www-lb.open-mpi.org/software/hwloc/current")))
(build-system gnu-build-system)
(outputs '("out" ;'lstopo' & co., depends on Cairo, libx11, etc.
"lib" ;small closure
"doc" ;400+ section 3 man pages
"debug"))
(inputs
(append (if (%current-target-system)
'() ;fewer dependencies when cross-compiling
(list libx11 cairo ncurses expat))
(if (target-arm32?) '() (list numactl))))
(propagated-inputs
;; hwloc.pc lists it in 'Requires.private'.
(list libpciaccess))
(native-inputs
(list pkg-config))
(arguments
(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
"hwloc provides a portable abstraction (across OS,
versions, architectures, ...) of the hierarchical topology of modern
architectures, including NUMA memory nodes, sockets, shared caches, cores and
simultaneous multithreading. It also gathers various attributes such as cache
and memory information. It primarily aims at helping high-performance
computing applications with gathering information about the hardware so as to
exploit it accordingly and efficiently.
hwloc may display the topology in multiple convenient formats. It also offers
a powerful programming interface to gather information about the hardware,
bind processes, and much more.")
(license license:bsd-3)))
(define-public hwloc-2
(package
(name "hwloc")
(version "2.13.0")
@@ -186,6 +274,10 @@ a powerful programming interface to gather information about the hardware,
bind processes, and much more.")
(license license:bsd-3)))
(define-public hwloc
;; The latest stable series of hwloc.
hwloc-2)
(define-public openmpi-4
(package
(name "openmpi")
@@ -214,7 +306,7 @@ bind processes, and much more.")
(package-supported-systems package)))
(list package)
'()))))
(append (list `(,hwloc "lib")
(append (list `(,hwloc-2 "lib")
gfortran
libfabric-1 ;fails to build with 2.3
libevent
@@ -607,7 +699,7 @@ arrays) that expose a buffer interface.")
(build-system gnu-build-system)
(inputs
`(,zlib
(,hwloc "lib")
(,hwloc-2 "lib")
,slurm
,@(if (and (not (%current-target-system))
(member (%current-system) (package-supported-systems ucx)))
-33
View File
@@ -171,7 +171,6 @@
#:use-module (gnu packages lua)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages man)
#:use-module (gnu packages messaging)
#:use-module (gnu packages mp3)
#:use-module (gnu packages mpd)
#:use-module (gnu packages mruby-xyz)
@@ -594,38 +593,6 @@ updates via @command{mopidy local scan} while Mopidy is running, so you can
scan your media library periodically, for example from a cron job.")
(license license:asl2.0)))
(define-public mopidy-mopiqtt
(package
(name "mopidy-mopiqtt")
(version "1.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fmarzocca/mopiqtt")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1gaxxbpws9xshsbknq78h0c1k3ynvc466hkq4952pv00q203zqk4"))
;; XXX: https://github.com/fmarzocca/Mopiqtt/issues/6
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "tests/test_smoke.py"
(("mqtt")
"mopiqtt"))
(substitute* "tests/conftest.py"
(("mqtt")
"mopiqtt"))))))
(build-system pyproject-build-system)
(native-inputs (list python-pytest python-setuptools))
(propagated-inputs (list mopidy python-paho-mqtt python-pykka))
(home-page "https://github.com/fmarzocca/mopiqtt")
(synopsis "MQTT interface for Mopidy")
(description
"This package provides an MQTT interface extension for Mopidy music server.")
(license license:asl2.0)))
(define-public clementine
;; Clementine has one automatic release per commit at
;; <https://github.com/clementine-player/Clementine/releases>.
+2 -2
View File
@@ -966,7 +966,7 @@ fi"
icu4c-76
libuv-for-node-lts
`(,nghttp2 "lib")
openssl-3.0
openssl
zlib
; ngtcp2? nghttp3?
;; Regular build-time dependencies.
@@ -986,7 +986,7 @@ fi"
ngtcp2
nghttp3
`(,nghttp2 "lib")
openssl-3.0
openssl
zlib))
(supported-systems
(cons "riscv64-linux" (package-supported-systems node-bootstrap)))
+2 -2
View File
@@ -286,7 +286,7 @@ This package tracks the Extended Support Release (ESR) channel.")
(package
(inherit nss)
(name "nss-rapid")
(version "3.123")
(version "3.121")
(source
(origin
(inherit (package-source nss))
@@ -297,7 +297,7 @@ This package tracks the Extended Support Release (ESR) channel.")
"releases/NSS_" version-with-underscores "_RTM/src/"
"nss-" version ".tar.gz")))
(sha256
(base32 "0jafdl18q9j36bwk73i462qkc24070b5llchffd7fsd2k0ri2i91"))
(base32 "0bk3lxmj364vlf4x2q01pf0li3mm5ixgnfnxirxqp9xyh63qyfnb"))
(patches
(search-patches "nss-3.56-pkgconfig.patch"
"nss-getcwd-nonnull.patch"
+1 -1
View File
@@ -173,7 +173,7 @@ time-stamping or reference clock, sub-microsecond accuracy is possible.")
(native-inputs (list which pkg-config))
(inputs (cons* guile-3.0 ; for wrap-script
libevent
openssl-3.0
openssl
perl
perl-http-tiny
perl-io-socket-ssl
+69
View File
@@ -81,3 +81,72 @@
(description "This tool extracts cooking recipe from HTML structured data
in the @url{https://schema.org/Recipe} format.")
(license asl2.0)))
(define-public gourmet
;; Use the latest commit to gain Python 3 support.
(let ((revision "0")
(commit "8af29c8ded24528030e5ae2ea3461f61c1e5a575"))
(package
(name "gourmet")
(version (git-version "0.17.4" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thinkle/gourmet")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"08fbw6zp32ws6w9czwy2sqc9c9izlkglsskshj2114d0l79z4gj8"))
(patches (search-patches "gourmet-sqlalchemy-compat.patch"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; XXX: Some tests in deeper directories or otherwise discovered by
;; Pytest are broken.
#~(list "--ignore-glob=gourmet/tests/**/*.py")
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-environemnt
(lambda _
(setenv "HOME" "/tmp")
(system "Xvfb &")
(setenv "DISPLAY" ":0")))
(add-after 'install 'install-dekstop-file-and-icons
(lambda _
(define share (string-append #$output "/share"))
(install-file ".flatpak/io.github.thinkle.Gourmet.desktop"
(string-append share "/applications"))
(install-file ".flatpak/io.github.thinkle.Gourmet.svg"
(string-append share "/icons/Gourmet")))))))
(native-inputs
(list python-dogtail
python-pytest
python-selenium
python-setuptools
xorg-server-for-tests))
(inputs
(list gtk+
python-argcomplete
python-beautifulsoup4
python-gst
python-keyring
python-lxml
python-pillow
python-pycairo
python-pyenchant
python-pygobject
python-requests
python-scrape-schema-recipe
python-sqlalchemy
python-toml))
(home-page "https://thinkle.github.io/gourmet/")
(synopsis "Recipe organizer")
(description
"Gourmet Recipe Manager is a recipe organizer that allows you to collect,
search, organize, and browse your recipes. Gourmet can also generate shopping
lists and calculate nutritional information. It imports Mealmaster,
MasterCook and KRecipe files and exports PDFs, webpages, and other formats.")
(license gpl2+))))
+98 -4
View File
@@ -1,4 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2024 Herman Rimm <herman@rimm.ee>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -16,8 +20,98 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages nvi)
#:use-module (gnu packages text-editors)
#:use-module (guix deprecation))
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages dbm)
#:use-module (gnu packages ncurses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (guix licenses)
#:use-module (guix utils))
(define-deprecated/public-alias nvi
(@ (gnu packages text-editors) nvi))
(define-public nvi
(package
(name "nvi")
(version "1.81.6")
(source
(origin
(method url-fetch)
(uri ;; sites.google.coma/bostic.com/keithbostic/vi is stale.
(string-append "http://harrier.slackbuilds.org/misc/nvi-" version
".tar.bz2"))
(sha256
(base32 "0nbbs1inyrqds0ywn3ln5slv54v5zraq7lszkg8nsavv4kivhh9l"))
(patches (search-patches "nvi-assume-preserve-path.patch"
"nvi-dbpagesize-binpower.patch"
"nvi-add-function-prototypes.patch"
"nvi-db4.patch"))
(modules '((guix build utils)))
(snippet
;; Create a wrapper for the configure script, make it executable.
'(let ((conf-wrap (open-output-file "configure")))
(display "#!/bin/sh" conf-wrap)
(newline conf-wrap)
(display
"../nvi-1.81.6/dist/configure --srcdir=../nvi-1.81.6/dist $@"
conf-wrap)
(newline conf-wrap)
(close-output-port conf-wrap)
(chmod "configure" #o0755)
;; Glibc 2.30 removed the deprecated <sys/stropts.h>, so fall back
;; to the internal PTY allocation logic.
(substitute* "ex/ex_script.c"
(("#ifdef HAVE_SYS5_PTY")
"#if defined(HAVE_SYS5_PTY) && !defined(__GLIBC__)"))
#t))))
(build-system gnu-build-system)
(arguments
(list
#:out-of-source? #t
#:configure-flags
#~'("--enable-widechar"
#$@(if (%current-target-system)
'("vi_cv_sprintf_count=yes")
'()))
#:make-flags
#~(list
;; Add CFLAGS to relax gcc-14's strictness.
;; nvi's configure chokes on passing CFLAGS and ignores
;; CFLAGS set in the environment.
(string-append "CFLAGS=-g -O2"
" -Wno-error=incompatible-pointer-types"))
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'fix-configure
(lambda* (#:key inputs native-inputs #:allow-other-keys)
;; Replace outdated config.sub and config.guess:
(with-directory-excursion "dist"
(for-each
(lambda (file)
(chmod file #o755)
(install-file
(format #f "~a/share/automake-~a/~a"
(assoc-ref (or native-inputs inputs)
"automake")
#$(version-major+minor
(package-version automake))
file)
"."))
'("config.sub" "config.guess"))))))))
(inputs
(list bdb ncurses))
(native-inputs
(list automake)) ;Up to date 'config.guess' and 'config.sub'.
(synopsis "The Berkeley Vi Editor")
(description
"Vi is the original screen based text editor for Unix systems. It is
considered the standard text editor, and is available on almost all Unix
systems. Nvi is intended as a \"bug-for-bug compatible\" clone of the
original BSD vi editor. As such, it doesn't have a lot of snazzy features as
do some of the other vi clones such as elvis and vim. However, if all you
want is vi, this is the one to get.")
(home-page "https://sites.google.com/a/bostic.com/keithbostic/vi")
(license bsd-3)))
+174 -393
View File
@@ -91,7 +91,6 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages unicode)
#:use-module (gnu packages version-control)
#:use-module (gnu packages vim)
#:use-module (gnu packages virtualization)
#:use-module (gnu packages web)
#:use-module (gnu packages web-browsers)
@@ -798,29 +797,30 @@ describing upgrade scenarios in package-based software distributions.")
(define-public ocaml-mccs
(package
(name "ocaml-mccs")
(version "1.1+19")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AltGr/ocaml-mccs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1x1y5rhj4f0xakbgfn9f90a9xy09v99p8mc42pbnam5kghyjmxy6"))))
(version "1.1+14")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AltGr/ocaml-mccs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"17bvm0jhhs8h3p5sbb65asj53a8sxl634cc0kvcivpams74837zq"))))
(build-system dune-build-system)
(propagated-inputs (list ocaml-cudf))
(home-page "https://www.i3s.unice.fr/~cpjm/misc/")
(synopsis "Upgrade path problem solver")
(description
"Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver.
(description "Mccs (Multi Criteria CUDF Solver) is a CUDF problem solver.
Mccs take as input a CUDF problem and computes the best solution according to
a set of criteria. It relies on a Integer Programming solver or a
Pseudo Boolean solver to achieve its task. Mccs can use a wide set of
underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.")
(license (list license:bsd-3 license:gpl3+
;; With static-linking exception
license:lgpl2.1+))))
(license (list
license:bsd-3
license:gpl3+
;; With static-linking exception
license:lgpl2.1+))))
(define-public ocaml-dose3
(package
@@ -945,156 +945,47 @@ the opam file format.")
;; With static-linking exception
(license license:lgpl2.1+)))
(define-public ocaml-swhid-core
(package
(name "ocaml-swhid-core")
(version "0.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/OCamlPro/swhid_core")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0h3zndyk94lf2lakc3cb8b7a00jqh0y1m8xk6mg61gj2kdpdbfdq"))))
(build-system dune-build-system)
(properties `((upstream-name . "swhid_core")))
(home-page "https://github.com/ocamlpro/swhid_core")
(synopsis "OCaml library to work with swhids")
(description
"swhid_core is an OCaml library to work with Software Heritage persistent
identifiers (swhids). This is the core library, for most use cases you should
use the swhid library instead.")
(license license:isc)))
(define-public ocaml-spdx-licenses
(package
(name "ocaml-spdx-licenses")
(version "1.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kit-ty-kate/spdx_licenses")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "08vh9mfkq34f0l5ka94hhklc43kvz09wd04x1gkxkawn4786rf9z"))))
(build-system dune-build-system)
(native-inputs (list ocaml-alcotest))
(properties `((upstream-name . "spdx_licenses")))
(home-page "https://github.com/kit-ty-kate/spdx_licenses")
(synopsis "Strict SPDX License Expression parser")
(description
"This package provides an up-to-date and strict SPDX License Expression
parser. It implements the format described in:
https://spdx.github.io/spdx-spec/v2.3/SPDX-license-expressions/
See https://spdx.org/licenses/ for more details.")
(license license:expat)))
(define-public ocaml-0install-solver
(package
(name "ocaml-0install-solver")
(version "2.18")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/0install/0install")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1hm72k355qwgh16hngmnd77bgawf20ipnqxfncdzl10rqrc0640b"))))
(build-system dune-build-system)
(arguments
`(#:package "0install-solver"))
(native-inputs (list ocaml-ounit2))
(home-page "https://docs.0install.net/developers/solver/")
(synopsis "Package dependency solver")
(description
"This package provides a package dependency resolver based on a SAT solver.
This was originally written for the 0install package manager, but is now
generic and is also used as a solver backend for opam. The SAT solver is
based on @code{MiniSat} (http://minisat.se/Papers.html) and the application to
package management is based on OPIUM (Optimal Package Install/Uninstall
Manager). 0install-solver uses a (novel?) strategy to find the optimal
solution extremely quickly (even for a SAT-based solver).")
(license license:lgpl2.1+)))
(define-public ocaml-opam-0install-cudf
(package
(name "ocaml-opam-0install-cudf")
(version "0.5.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml-opam/opam-0install-cudf")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "12v1bgnxcxdylgxbsjlcr90rzwcp39rjlv191cy8g2s33nyxyi2c"))))
(build-system dune-build-system)
(propagated-inputs (list ocaml-cudf ocaml-0install-solver))
(native-inputs (list ocaml-alcotest))
(home-page "https://opam.ocaml.org")
(synopsis "Opam solver using 0install backend using the CUDF interface")
(description
"Opam's default solver is designed to maintain a set of packages over time,
minimising disruption when installing new programs and finding a compromise
solution across all packages. In many situations (e.g. CI, local roots or
duniverse builds) this is not necessary, and we can get a solution much faster
by using a different algorithm. This package provides a generic solver library
which uses 0install's solver library. The library uses the CUDF library in
order to interface with opam as it is the format common used to talk to all the
supported solvers.")
(license license:isc)))
(define ocaml-opam-core
(package
(name "ocaml-opam-core")
(version "2.5.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/opam")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "10diw6wdl6v89kbvb8x22dbfacw1ikhl63hybyp2s7560450hygc"))))
(version "2.1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/opam")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0ckd87rcmcz11iyhhm5qnmy27jbdffx6n1fr06hvrqqrzi00jljh"))))
(build-system dune-build-system)
(arguments
`(#:package "opam-core"
;; tests are run with the opam package
#:tests? #f
#:phases (modify-phases %standard-phases
(add-before 'build 'pre-build
(lambda* (#:key inputs make-flags #:allow-other-keys)
(let ((bash (assoc-ref inputs "bash"))
(bwrap (search-input-file inputs "/bin/bwrap")))
(substitute* "src/core/opamSystem.ml"
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\""))
(("getconf")
(which "getconf")))))))))
(propagated-inputs (list ocaml-graph
ocaml-re
ocaml-patch
ocaml-uutf
ocaml-swhid-core
ocaml-jsonm
ocaml-sha))
(arguments `(#:package "opam-core"
;; tests are run with the opam package
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'build 'pre-build
(lambda* (#:key inputs make-flags #:allow-other-keys)
(let ((bash (assoc-ref inputs "bash"))
(bwrap (search-input-file inputs "/bin/bwrap")))
(substitute* "src/core/opamSystem.ml"
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\""))
(("getconf")
(which "getconf")))))))))
(propagated-inputs
(list ocaml-graph
ocaml-re
ocaml-cppo))
(inputs (list bubblewrap))
(home-page "https://opam.ocaml.org")
(home-page "https://opam.ocamlpro.com/")
(synopsis "Package manager for OCaml")
(description
"OPAM is a tool to manage OCaml packages. It supports multiple
simultaneous compiler installations, flexible package constraints, and a
Git-friendly development workflow.")
;; The 'LICENSE' file waives some requirements compared to LGPLv2.1.
(license license:lgpl2.1)))
;; The 'LICENSE' file waives some requirements compared to LGPLv3.
(license license:lgpl3)))
(define ocaml-opam-format
(package
@@ -1111,56 +1002,24 @@ Git-friendly development workflow.")
(define-public opam-installer
(package
(inherit ocaml-opam-core)
(name "opam-installer")
(version "2.5.1")
;; opam has some library dependencies that in turn depend on
;; opam-installer (https://codeberg.org/guix/guix/issues/3588). To break
;; the cycle, we build opam-installer from a version of the release that
;; vendors all dependencies. Then the remaining opam packages can be built
;; in the usual way from git sources.
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/ocaml/opam/releases/download/"
version "/opam-full-" version ".tar.gz"))
(sha256
(base32 "1v9k00az5lkdrlb64xb9h8xasnsz73kms0j0bz64hh2wbypvzia8"))))
(build-system gnu-build-system)
(arguments
(list
;; Tests depend on the full opam package.
#:tests? #f
#:configure-flags
#~'("--with-vendored-deps")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-shell-path
(lambda _
(let ((sh (which "sh")))
(substitute* "configure"
(("/bin/sh") sh)))))
;; The Makefile builds both opam and opam-installer, but we
;; only want the latter.
(replace 'install
(lambda _
(define (install source dest-dir)
(install-file source
(string-append #$output "/" dest-dir)))
(install "opam-installer" "bin")
(install "_build/default/doc/man/opam-installer.1"
"share/man/man1"))))))
(native-inputs (list ocaml))
(home-page "https://opam.ocaml.org")
(native-inputs (list ocaml-opam-format
ocaml-cmdliner))
(inputs '())
(propagated-inputs '())
(arguments `(#:package "opam-installer"
;; requires all of opam
#:tests? #f))
(synopsis "Tool for installing OCaml packages")
(description
"@var{opam-installer} is a tool for installing OCaml packages
(description "@var{opam-installer} is a tool for installing OCaml packages
based on @code{.install} files defined by the OPAM package manager. It is
useful for installing OCaml packages without requiring the entirety of
OPAM.")
(properties `((ocaml5.0-variant unquote
(delay opam-installer))))
;; The 'LICENSE' file waives some requirements compared to LGPLv2.1.
(license license:lgpl2.1)))
(properties
;; opam-installer is used as a tool and not as a library, we can use the
;; OCaml 4.14 compiled opam until opam is compatible with OCaml 5.0.
`((ocaml5.0-variant . ,(delay opam-installer))))))
(define ocaml-opam-repository
(package
@@ -1197,7 +1056,7 @@ OPAM.")
(string-append "add_sys_mounts "
(%store-directory)
" /run/current-system /usr")))))))))
(inputs (list bubblewrap ocaml-spdx-licenses))
(inputs (list bubblewrap))
(propagated-inputs (list ocaml-opam-repository))))
(define ocaml-opam-solver
@@ -1207,8 +1066,7 @@ OPAM.")
(inputs '())
(propagated-inputs (list ocaml-opam-format
ocaml-mccs
ocaml-dose3
ocaml-opam-0install-cudf))
ocaml-dose3))
(arguments `(#:package "opam-solver"
;; tests are run with the opam package
#:tests? #f
@@ -1235,7 +1093,7 @@ OPAM.")
ocaml-opam-repository
ocaml-base64
ocaml-re
ocaml-spdx-licenses))))
ocaml-cmdliner))))
(define-public opam
(package
@@ -1244,171 +1102,120 @@ OPAM.")
(build-system dune-build-system)
(arguments
`(#:package "opam"
#:phases (modify-phases %standard-phases
(add-before 'check 'prepare-checks
(lambda* (#:key inputs #:allow-other-keys)
;; Opam tests need to run an isolated environment from a writable
;; home directory.
(mkdir-p "test-home")
(setenv "HOME"
(string-append (getcwd) "/test-home"))
(with-output-to-file (string-append (getcwd)
"/test-home/.gitconfig")
(lambda _
(display "[user]
#:phases
(modify-phases %standard-phases
(add-before 'check 'prepare-checks
(lambda* (#:key inputs #:allow-other-keys)
;; Opam tests need to run an isolated environment from a writable
;; home directory.
(mkdir-p "test-home")
(setenv "HOME" (string-append (getcwd) "/test-home"))
(with-output-to-file (string-append (getcwd) "/test-home/.gitconfig")
(lambda _
(display "[user]
email = guix@localhost.none
name = Guix Builder
name = Guix Builder")
(newline)))
[protocol \"file\"]
allow = always")
(newline)))
;; Opam tests require data from opam-repository. Instead of
;; downloading them with wget from the guix environment, copy the
;; content to the expected directory.
(substitute* "tests/reftests/dune.inc"
(("tar -C.*opam-archive-([0-9a-f]*)[^)]*" _ commit)
(string-append "rmdir %{targets}) (run cp -r "
(assoc-ref inputs (string-append "opam-repo-" commit))
"/ %{targets}) (run chmod +w -R %{targets}"))
(("wget[^)]*") "touch %{targets}")
;; Disable a failing test because it tries to clone a git
;; repository from inside bwrap
(("diff upgrade-format.test upgrade-format.out") "run true")
;; Disable a failing test because it tries to figure out which
;; distro this is, and it doesn't know Guix
(("diff pin.unix.test pin.unix.out") "run true")
;; Disable a failing test because of a failed expansion
(("diff opamroot-versions.test opamroot-versions.out") "run true")
;; Disable a failing test, probably because the repository we
;; replaced is not as expected
(("diff opamrt-big-upgrade.test opamrt-big-upgrade.out") "run true")
;; Disable a failing test because of missing sandboxing
;; functionality
(("diff init.test init.out") "run true"))
(substitute* "tests/reftests/dune"
;; Because of our changes to the previous file, we cannot check
;; it can be regenerated
(("diff dune.inc dune.inc.gen") "run true"))
;; Ensure we can run the generated build.sh (no /bin/sh)
(substitute* '("tests/reftests/legacy-local.test"
"tests/reftests/legacy-git.test")
(("#! ?/bin/sh")
(string-append "#!"
(search-input-file inputs "/bin/sh"))))
(substitute* "tests/reftests/testing-env"
(("OPAMSTRICT=1")
(string-append "OPAMSTRICT=1\nLIBRARY_PATH="
(assoc-ref inputs "libc") "/lib"))))))))
(native-inputs
(let ((opam-repo (lambda (commit hash)
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ocaml/opam-repository")
(commit commit)))
(file-name (git-file-name "opam-repo" commit))
(sha256 (base32 hash))))))
`(("dune" ,dune)
("ocaml-cppo" ,ocaml-cppo)
;; Opam tests require data from opam-repository. Instead
;; of downloading them with wget from the guix
;; environment, copy the content to the expected
;; directory.
(substitute* "tests/reftests/dune.inc"
(("tar -C.*opam-archive-([0-9a-f]*)[^)]*" _ commit)
(string-append "rmdir %{targets}) (run cp -r "
(begin
;; When updating opam, uncomment the following
;; call. It will list "opam-repo" commit-ish
;; required to run tests (see native-inputs
;; below). Remove versions that are no longer
;; required, and add new ones if necessary.
;;
;; (pk commit)
(assoc-ref inputs
(string-append "opam-repo-" commit)))
"/ %{targets}) (run chmod +w -R %{targets}"))
(("wget[^)]*")
"touch %{targets}")
;; For tests.
("git" ,git-minimal/pinned)
("openssl" ,openssl)
("python" ,python-wrapper)
("rsync" ,rsync)
("unzip" ,unzip)
("which" ,which)
;; Selectively disable a fraction of opam's "reftests"
;; (CRAM-style regression tests). Most of these tests
;; make assumptions about the build environment that
;; don't hold for Guix.
;; Test tries to clone a git repository from inside
;; bwrap
(("diff upgrade-format.test upgrade-format.out")
"run true")
;; Test tries to figure out which distro this is, and
;; it doesn't know Guix
(("diff pin.unix.test pin.unix.out")
"run true")
;; A variable expansion fails.
(("diff opamroot-versions.test opamroot-versions.out")
"run true")
;; The repository we replaced is probably not as
;; expected
(("diff opamrt-big-upgrade.test opamrt-big-upgrade.out")
"run true")
;; Disable a failing test because of missing sandboxing
;; functionality
(("diff init.test init.out")
"run true")
;; These tests try to normalize output to exclude
;; version strings, but this seems to break some
;; output assertions if $BASEDIR happens to include
;; the version.
(("diff cli-versioning.test cli-versioning.out")
"run true")
(("diff hooks-variables.test hooks-variables.out")
"run true")
;; Fails on noisy git output.
(("diff action-disk.test action-disk.out")
"run true")
;; Requires network access.
(("diff download.test download.out")
"run true")
(("diff swhid.unix.test swhid.unix.out")
"run true")
;; Depends on 3rd-party git repos.
(("diff lock.test lock.out")
"run true"))
(substitute* "tests/reftests/dune"
;; Because of our changes to the previous file, we
;; cannot check it can be regenerated
(("diff dune.inc dune.inc.gen")
"run true"))
;; Ensure we can run the generated build.sh (no /bin/sh)
(substitute* '("tests/reftests/legacy-local.test"
"tests/reftests/legacy-git.test")
(("#! ?/bin/sh")
(string-append "#!"
(search-input-file inputs "/bin/sh"))))
(substitute* "tests/reftests/testing-env"
(("OPAMSTRICT=1")
(string-append "OPAMSTRICT=1\nLIBRARY_PATH="
(assoc-ref inputs "libc") "/lib"))))))))
(native-inputs (let ((opam-repo (lambda (commit hash)
(origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/ocaml/opam-repository")
(commit commit)))
(file-name (git-file-name "opam-repo"
commit))
(sha256 (base32 hash))))))
`(("dune" ,dune)
;; For tests.
("git" ,git-minimal/pinned)
("openssl" ,openssl)
("python" ,python-wrapper)
("rsync" ,rsync)
("unzip" ,unzip)
("which" ,which)
("xxd" ,xxd)
;; Data for tests
("opam-repo-0070613707" ,(opam-repo
"00706137074d536d2019d2d222fbe1bea929deda"
"1gv1vvmfscj7wirfv6qncp8pf81wygnpzjwd0lyqcxm7g8r8lb4w"))
("opam-repo-009e00fa" ,(opam-repo
"009e00fa86300d11c311309a2544e5c6c3eb8de2"
"1wwy0rwrsjf4q10j1rh1dazk32fbzhzy6f7zl6qmndidx9b1bq7w"))
("opam-repo-11ea1cb" ,(opam-repo
"11ea1cb6f2418b1f8a6679e4422771a04c9c3655"
"1s4p0wfn3bx97yvm8xvj3yhzv2pz0jwml68g2ybv37hj9mpbrsq0"))
("opam-repo-143dd2a2f59f5befbf3cb90bb2667f911737fbf8" ,
(opam-repo "143dd2a2f59f5befbf3cb90bb2667f911737fbf8"
"1kliiy9n2j8myxhbz1brq6yingfy0si1bmv15j1hbnbpyi3bavr9"))
("opam-repo-297366c" ,(opam-repo
"297366cd01c3aaf29b967bf0b34ccc7989d4d5b3"
"1ysg69gys37nc2cxivs2ikh6xp0gj85if4rcrr874mqb9z12dm0j"))
("opam-repo-3235916" ,(opam-repo
"3235916a162a59d7c82dac3fe24214975d48f1aa"
"1yf73rv2n740a4s9g7a9k4j91b4k7al88nwnw9cdw0k2ncbmr486"))
("opam-repo-7090735c" ,(opam-repo
"7090735c9d1dd2dc481c4128c5ef4d3667238f15"
"1bccsgjhlp64lmvfjfn6viywf3x73ji75myg9ssf1ij1fkmabn0z"))
("opam-repo-7371c1d9" ,(opam-repo
"7371c1d9c53000840fb9a6d8ec13d87ffaa98401"
"0lmy3rmp5liyp2dsx4s90rjdwc012947ig2fz6y97s3pmwsbf9g8"))
("opam-repo-a5d7cdc0" ,(opam-repo
"a5d7cdc0c91452b0aef4fa71c331ee5237f6dddd"
"0z7kawqisy07088p5xjxwpvmvzlbj1d9cgdipsj90yx7nc5qh369"))
("opam-repo-ad4dd344" ,(opam-repo
"ad4dd344fe5cd1cab49ced49d6758a9844549fb4"
"1a1qj47kj8xjdnc4zc50ijrix1kym1n7k20n3viki80a7518baw8"))
("opam-repo-c1842d168d" ,(opam-repo
"c1842d168de956caf06d7ac8588e65020d7594d8"
"142y1ac7sprygyh91shcp0zcyfxjjkshi9g44qgg4rx60rbsbhai"))
("opam-repo-c1ba97dafe95c865d37ad4d88f6e57c9ffbe7f0a" ,
(opam-repo "c1ba97dafe95c865d37ad4d88f6e57c9ffbe7f0a"
"0sllm110dvs3w1k7qhias5y8v6ikkk2knw97v1fk9lnw4lq45gv6"))
("opam-repo-de897adf36c4230dfea812f40c98223b31c4521a" ,
(opam-repo "de897adf36c4230dfea812f40c98223b31c4521a"
"1m18x9gcwnbar8yv9sbfz8a3qpw412fp9cf4d6fb7syn0p0h96jw"))
("opam-repo-f372039d" ,(opam-repo
"f372039db86a970ef3e662adbfe0d4f5cd980701"
"0ld7fcry6ss6fmrpswvr6bikgx299w97h0gwrjjh7kd7rydsjdws")))))
(inputs (list ocaml-opam-client))))
;; Data for tests
("opam-repo-0070613707"
,(opam-repo "00706137074d536d2019d2d222fbe1bea929deda"
"1gv1vvmfscj7wirfv6qncp8pf81wygnpzjwd0lyqcxm7g8r8lb4w"))
("opam-repo-009e00fa"
,(opam-repo "009e00fa86300d11c311309a2544e5c6c3eb8de2"
"1wwy0rwrsjf4q10j1rh1dazk32fbzhzy6f7zl6qmndidx9b1bq7w"))
("opam-repo-7090735c"
,(opam-repo "7090735c9d1dd2dc481c4128c5ef4d3667238f15"
"1bccsgjhlp64lmvfjfn6viywf3x73ji75myg9ssf1ij1fkmabn0z"))
("opam-repo-a5d7cdc0"
,(opam-repo "a5d7cdc0c91452b0aef4fa71c331ee5237f6dddd"
"0z7kawqisy07088p5xjxwpvmvzlbj1d9cgdipsj90yx7nc5qh369"))
("opam-repo-ad4dd344"
,(opam-repo "ad4dd344fe5cd1cab49ced49d6758a9844549fb4"
"1a1qj47kj8xjdnc4zc50ijrix1kym1n7k20n3viki80a7518baw8"))
("opam-repo-c1842d168d"
,(opam-repo "c1842d168de956caf06d7ac8588e65020d7594d8"
"142y1ac7sprygyh91shcp0zcyfxjjkshi9g44qgg4rx60rbsbhai"))
("opam-repo-c1d23f0e"
,(opam-repo "c1d23f0e17ec83a036ebfbad1c78311b898a2ca0"
"0j9abisx3ifzm66ci3p45mngmz4f0fx7yd9jjxrz3f8w5jffc9ii"))
("opam-repo-f372039d"
,(opam-repo "f372039db86a970ef3e662adbfe0d4f5cd980701"
"0ld7fcry6ss6fmrpswvr6bikgx299w97h0gwrjjh7kd7rydsjdws"))
("opam-repo-11ea1cb"
,(opam-repo "11ea1cb6f2418b1f8a6679e4422771a04c9c3655"
"1s4p0wfn3bx97yvm8xvj3yhzv2pz0jwml68g2ybv37hj9mpbrsq0"))
("opam-repo-297366c"
,(opam-repo "297366cd01c3aaf29b967bf0b34ccc7989d4d5b3"
"1ysg69gys37nc2cxivs2ikh6xp0gj85if4rcrr874mqb9z12dm0j"))
("opam-repo-3235916"
,(opam-repo "3235916a162a59d7c82dac3fe24214975d48f1aa"
"1yf73rv2n740a4s9g7a9k4j91b4k7al88nwnw9cdw0k2ncbmr486"))
("opam-repo-de897adf36c4230dfea812f40c98223b31c4521a"
,(opam-repo "de897adf36c4230dfea812f40c98223b31c4521a"
"1m18x9gcwnbar8yv9sbfz8a3qpw412fp9cf4d6fb7syn0p0h96jw")))))
(inputs (list ocaml-opam-client))
(properties
;; OPAM is used as a tool and not as a library, we can use the OCaml 4.14
;; compiled opam until opam is compatible with OCaml 5.0.
`((ocaml5.0-variant . ,(delay opam))))))
(define-public ocaml-opam-monorepo
(package
@@ -4317,32 +4124,6 @@ and command-line tool.")
length of domain names are preserved throughout the module.")
(license license:isc)))
(define-public ocaml-patch
(package
(name "ocaml-patch")
(version "3.1.0")
(build-system dune-build-system)
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hannesm/patch")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1zg35f427ixd3jhkiwk91sil45pmf6ns7yfcgyi6gf2r0y241xn3"))))
(native-inputs (list ocaml-alcotest))
(home-page "https://github.com/hannesm/patch")
(synopsis "Applies unified diffs in pure OCaml")
(description
"This package applies unified diffs in pure OCaml.
The loosely specified diff file format is widely used for transmitting
differences of line-based information. The motivating example is opam, which
is able to validate updates being cryptographically signed (e.g. conex) by
providing a unified diff.")
(license license:isc)))
(define-public ocaml-macaddr
(package
(name "ocaml-macaddr")
@@ -6372,7 +6153,7 @@ serializers and deserializers from type definitions.")
(build-system dune-build-system)
(propagated-inputs (list ocaml-yojson))
(properties `((upstream-name . "ppx_yojson_conv_lib")))
(synopsis "Runtime library used by ocaml PPX yojson converter")
(synopsis "Runtime library used by ocaml PPX yojson convertor")
(description "Ppx_yojson_conv_lib is the runtime library used by
ppx_yojson_conv, a ppx rewriter that can be used to convert ocaml types
to a Yojson.Safe value.")
+1 -1
View File
@@ -75,7 +75,7 @@
(add-after 'unpack 'relax-requirements
(lambda _
(substitute* "setup.py"
;; Relax hard requirement of PIP.
;; Relax hard requirment of PIP.
((".*pip>=18.0.*") ""))))
(add-before 'check 'pre-check
(lambda _
+23 -55
View File
@@ -32,7 +32,6 @@
;;; Copyright © 2025-2026 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2026 Carlos Durán Domínguez <wurt@wurt.eu>
;;; Copyright © 2025 unwox <me@unwox.com>
;;; Copyright © 2026 Owen T. Heisler <writer@owenh.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -817,33 +816,7 @@ high-performance computing} clusters.")
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-load-paths-in-entry-point
(lambda _
(define load-path
(cons (string-append #$output
"/share/guile/site/"
(target-guile-effective-version))
(parse-path (getenv "GUILE_LOAD_PATH"))))
(define load-compiled-path
(cons (string-append #$output
"/lib/guile/"
(target-guile-effective-version)
"/site-ccache")
(parse-path (getenv "GUILE_LOAD_COMPILED_PATH"))))
(define search-paths-header
`(begin
(set! %load-path
(append (list ,@load-path) %load-path))
(set! %load-compiled-path
(append (list ,@load-compiled-path)
%load-compiled-path))))
(substitute* "guix/extensions/toys.scm"
(("^\\(define-module \\(guix extensions toys\\)")
(string-append
(with-output-to-string
(lambda () (write search-paths-header)))
"\n(define-module (guix extensions toys)")))))
(add-after 'set-load-paths-in-entry-point 'register-guix-extension
(add-after 'unpack 'register-guix-extension
(lambda* (#:key outputs #:allow-other-keys)
(let ((ext-path (string-append #$output "/share/guix/extensions")))
(mkdir-p ext-path)
@@ -1225,13 +1198,13 @@ transactions from C or Python.")
automake
;; Guile libraries are needed here for cross-compilation.
guile-3.0-latest
guile-next
guile-gnutls
guile-json-4
guix
guix-data-service
guix-build-coordinator
guile-fibers
guile-fibers-next
guile-knots
guile-pfds
guile-prometheus
@@ -1242,7 +1215,7 @@ transactions from C or Python.")
guix
guix-data-service
guix-build-coordinator
guile-fibers
guile-fibers-next
guile-knots
guile-pfds
guile-prometheus
@@ -1525,7 +1498,7 @@ manage (install/update) them for you.")
"--ignore=tests/trust/test_signature_verification.py"
"-k" (string-join
;; XXX: Issues salad: network access, can't detect Conda
;; environment, assertion failed; review if they may be
;; environemnt, assertion failed; review if they may be
;; fixed.
;;
;; test_info_all: Fails due to parallel test interference.
@@ -2160,8 +2133,8 @@ environments.")
"153bgcjqw6jp0yl0vj0k67k9c8lw82vac6b0cnacrjrcb24lcpdq")))))))
(define-public guix-build-coordinator
(let ((commit "a52e17ae733de601ef3d4aa72b88ff7ed02aceb7")
(revision "138"))
(let ((commit "bd3467e7b60f22089c4a3bf6d32caafbd03625f0")
(revision "137"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@@ -2172,7 +2145,7 @@ environments.")
(commit commit)))
(sha256
(base32
"164k3ygn69h0z6bbsqpk22psnn2b1lbpidmaixf3kaj6kfjvz7xw"))
"0h9kxpijilrn9v2s8dy7sdifshri4fxvdgvxxacvvbw01fb3llmv"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@@ -2211,7 +2184,7 @@ environments.")
"guile-gnutls"
#$@(if (target-hurd?)
'()
'("guile-fibers"
'("guile-fibers-next"
"guile-knots")))))
(wrap-program file
`("PATH" ":" prefix
@@ -2255,12 +2228,12 @@ environments.")
guile-gcrypt
guix
guile-prometheus
guile-fibers
guile-fibers-next
guile-knots
guile-lib
guile-3.0-latest))
guile-next))
(inputs
(list guile-3.0-latest
(list guile-next
sqlite-next
bash-minimal
(libc-utf8-locales-for-target)
@@ -2275,7 +2248,7 @@ environments.")
guile-sqlite3
guix
guile-gnutls
guile-fibers
guile-fibers-next
guile-knots))
(home-page "https://git.cbaines.net/guix/build-coordinator/")
(synopsis "Tool to help build derivations")
@@ -2311,9 +2284,9 @@ outputs of those builds.")
guix
guile-prometheus
guile-lib
guile-3.0-latest))
guile-next))
(inputs
(list guile-3.0-latest
(list guile-next
guix
guile-prometheus
guile-gcrypt
@@ -2415,8 +2388,8 @@ in an isolated environment, in separate namespaces.")
(license license:gpl3+)))
(define-public nar-herder
(let ((commit "44ca801e2352b64e19921c72177b35b2e49a7a09")
(revision "53"))
(let ((commit "cc1e9052785de0a08b05f85a7c7c400d95e339e7")
(revision "52"))
(package
(name "nar-herder")
(version (git-version "0" revision commit))
@@ -2427,7 +2400,7 @@ in an isolated environment, in separate namespaces.")
(commit commit)))
(sha256
(base32
"15sc9rgna1fxsns1q9q1xlrqfqc4r5lcmmddw0af2lhll75kj7v2"))
"0qsyvmxr5kkayvvda8f5lmamz098vcjrfgpbwd5519fcw8xbnk8q"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@@ -2464,7 +2437,7 @@ in an isolated environment, in separate namespaces.")
"guile-prometheus"
"guile-sqlite3"
"guile-gnutls"
"guile-fibers"
"guile-fibers-next"
"guile-knots")))
(wrap-program file
`("GUILE_LOAD_PATH" ":" prefix
@@ -2494,12 +2467,10 @@ in an isolated environment, in separate namespaces.")
;; Guile libraries are needed here for cross-compilation.
guile-next
guile-3.0-latest
guile-aws
guile-json-4
guile-gcrypt
guix
guile-fibers
guile-fibers-next
guile-knots
guile-prometheus
guile-lib
@@ -2508,13 +2479,12 @@ in an isolated environment, in separate namespaces.")
guile-sqlite3))
(inputs
(list bash-minimal
guile-3.0-latest))
guile-next))
(propagated-inputs
(list guile-aws
guile-json-4
(list guile-json-4
guile-gcrypt
guix
guile-fibers
guile-fibers-next
guile-knots
guile-prometheus
guile-lib
@@ -2772,8 +2742,6 @@ cp -r /tmp/locale/*/en_US.*")))
(propagated-inputs (list glib-networking
gnupg
gsettings-desktop-schemas
;; Required for flatpak-validate-icon SVG validation.
(librsvg-for-system)
;; The following are listed in Requires.private of
;; `flatpak.pc'.
curl
+1 -1
View File
@@ -254,7 +254,7 @@ when jobs finish.")
(inputs
(append
(list freeipmi
`(,hwloc "lib")
`(,hwloc-2 "lib")
json-c
linux-pam)
(if (supported-package? openpmix-4)
+39 -87
View File
@@ -39,7 +39,6 @@
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (ice-9 match))
@@ -324,7 +323,7 @@ Pascal programs.")
(define-public lazarus
(package
(name "lazarus")
(version "4.6")
(version "2.2.6")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -337,95 +336,48 @@ Pascal programs.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1mkimvd5hiwlsxpjwqnhd7lwb0x2icnf9ks09wza7j5xaq7xjswy"))))
"0hpk6fxmy1h1q0df41jg1vnp8g8vynrg5v5ad43lv229nizfs3wj"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;No tests exist
#:make-flags #~(list (string-append "INSTALL_PREFIX="
#$output)
"LCL_PLATFORM=qt6")
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
;; lcl/interfaces/qt6/cbindings/ ships the C++ source of
;; libQt6Pas -- the Qt6 C-ABI bridge that LCL's qt6
;; widgetset calls into. Build it with qmake6 and stage
;; the library so the IDE finds it at runtime.
(add-before 'build 'build-qt6pas
(lambda _
(with-directory-excursion "lcl/interfaces/qt6/cbindings"
(invoke "qmake6" "Qt6Pas.pro"
(string-append "PREFIX=" #$output))
(invoke "make" "-j"
(number->string (parallel-job-count))))))
(replace 'build
(lambda* (#:key inputs make-flags #:allow-other-keys)
(let* ((qt6pas-build
(string-append (getcwd)
"/lcl/interfaces/qt6/cbindings"))
(qt6pas-runtime
(string-append #$output "/lib"))
(input-libs
(map (lambda (x)
(string-append (assoc-ref inputs x) "/lib"))
'("qtbase" "libx11")))
;; Link against the build tree so the linker
;; resolves libQt6Pas now; bake the final
;; $out/lib into RUNPATH so the installed
;; binary finds it at runtime.
(fpc-args
(append (map (lambda (d)
(string-append "-Fl" d))
(cons qt6pas-build input-libs))
(map (lambda (d)
(string-append "-k-rpath=" d))
(cons qt6pas-runtime input-libs)))))
(setenv "LAZARUS_LIBPATHS"
(string-join fpc-args " "))
(setenv "MAKEFLAGS"
(string-append "LHELP_OPT="
(string-join fpc-args "\\ "))))
(apply invoke "make" "bigide" make-flags)))
(add-after 'install 'wrap-qt
(lambda* (#:key inputs #:allow-other-keys)
;; Qt6 apps load their platform plugins
;; (libqxcb.so, libqwayland.so, ...) from
;; QT_PLUGIN_PATH; each qt input has its plugins
;; under lib/qt6/plugins/. Wrap lazarus-ide so the
;; wayland/xcb platform plugins are found at runtime.
(let ((plugin-path
(string-join
(map (lambda (i)
(string-append (assoc-ref inputs i)
"/lib/qt6/plugins"))
'("qtbase" "qtsvg" "qtwayland"))
":")))
(for-each
(lambda (prog)
(wrap-program (string-append #$output "/bin/" prog)
`("QT_PLUGIN_PATH" ":" prefix (,plugin-path))))
'("lazarus-ide" "startlazarus")))))
(add-after 'install 'install-qt6pas
(lambda _
;; qmake's `make install' tries to copy libQt6Pas.so
;; into Qt's install prefix (read-only store path);
;; place it under $out/lib/ instead.
(let ((src "lcl/interfaces/qt6/cbindings")
(dst (string-append #$output "/lib")))
(mkdir-p dst)
(for-each
(lambda (f)
(let ((sf (string-append src "/" f))
(df (string-append dst "/" f)))
(if (eq? 'symlink (stat:type (lstat sf)))
(symlink (readlink sf) df)
(copy-file sf df))))
'("libQt6Pas.so"
"libQt6Pas.so.6"
"libQt6Pas.so.6.2"
"libQt6Pas.so.6.2.10"))))))))
(native-inputs (list fpc pkg-config qtbase qttools))
(inputs (list qtbase qtsvg qtwayland libx11))
#$output))
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((libdirs (map (lambda (x)
(assoc-ref inputs x))
'("glib" "gdk-pixbuf"
"gtk+"
"libx11"
"libx11"
"pango"
"cairo"
"at-spi2-core")))
(libs (append (map (lambda (name)
(string-append "-Fl"
name
"/lib"))
libdirs)
(map (lambda (name)
(string-append
"-k-rpath=" name
"/lib")) libdirs))))
(setenv "LAZARUS_LIBPATHS"
(string-join libs " "))
(setenv "MAKEFLAGS"
(string-append "LHELP_OPT="
(string-join libs "\\ "))))
(invoke "make" "bigide"))))))
(native-inputs (list fpc pkg-config))
(inputs (list glib
gdk-pixbuf
gtk+-2
libx11
pango
cairo
at-spi2-core))
(synopsis "Integrated development environment for Pascal")
(description "This package provides an integrated development environment
for Pascal.")
+1 -1
View File
@@ -1798,7 +1798,7 @@ is the community-enhanced, \"jumbo\" version of John the Ripper.")
(home-page "https://github.com/hashcat/maskprocessor")
(synopsis "High-Performance word generator")
(description "Maskprocessor is a high-performance word generator with a
per-position configurable charset.")
per-position configureable charset.")
(license (list license:expat))))
(define-public fpm2
@@ -1,128 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-04-13
License: ASL2.0
Make V8 an optional dependency in codex-code-mode.
The V8 engine is only needed for actually executing JavaScript in the
code-mode sandbox. The description helpers, tool name constants, and
data types do not require V8. Gate the runtime and service modules
behind a "v8-runtime" feature so that consumers like codex-acp that
never use code-mode can avoid the V8 build dependency.
--- a/codex-rs/code-mode/Cargo.toml 2026-04-13 16:14:49.459504037 +0000
+++ codex-rs/code-mode/Cargo.toml 2026-04-13 16:14:49.466438318 +0000
@@ -12,6 +12,10 @@
[lints]
workspace = true
+[features]
+default = ["v8-runtime"]
+v8-runtime = ["dep:v8"]
+
[dependencies]
async-trait = { workspace = true }
serde = { workspace = true, features = ["derive"] }
@@ -19,7 +23,7 @@
tokio = { workspace = true, features = ["macros", "rt", "sync", "time"] }
tokio-util = { workspace = true, features = ["rt"] }
tracing = { workspace = true }
-v8 = { workspace = true }
+v8 = { workspace = true, optional = true }
[dev-dependencies]
pretty_assertions = { workspace = true }
--- a/codex-rs/code-mode/src/lib.rs 2026-04-13 16:14:49.461337956 +0000
+++ codex-rs/code-mode/src/lib.rs 2026-04-13 16:14:49.470869556 +0000
@@ -1,6 +1,8 @@
mod description;
mod response;
+#[cfg(feature = "v8-runtime")]
mod runtime;
+#[cfg(feature = "v8-runtime")]
mod service;
pub use description::CODE_MODE_PRAGMA_PREFIX;
@@ -16,15 +18,82 @@
pub use description::render_json_schema_to_typescript;
pub use response::FunctionCallOutputContentItem;
pub use response::ImageDetail;
+
+#[cfg(feature = "v8-runtime")]
pub use runtime::DEFAULT_EXEC_YIELD_TIME_MS;
+#[cfg(feature = "v8-runtime")]
pub use runtime::DEFAULT_MAX_OUTPUT_TOKENS_PER_EXEC_CALL;
+#[cfg(feature = "v8-runtime")]
pub use runtime::DEFAULT_WAIT_YIELD_TIME_MS;
+#[cfg(feature = "v8-runtime")]
pub use runtime::ExecuteRequest;
+#[cfg(feature = "v8-runtime")]
pub use runtime::RuntimeResponse;
+#[cfg(feature = "v8-runtime")]
pub use runtime::WaitRequest;
+#[cfg(feature = "v8-runtime")]
pub use service::CodeModeService;
+#[cfg(feature = "v8-runtime")]
pub use service::CodeModeTurnHost;
+#[cfg(feature = "v8-runtime")]
pub use service::CodeModeTurnWorker;
+// Stub types when V8 is not available.
+#[cfg(not(feature = "v8-runtime"))]
+pub const DEFAULT_EXEC_YIELD_TIME_MS: u64 = 10_000;
+#[cfg(not(feature = "v8-runtime"))]
+pub const DEFAULT_MAX_OUTPUT_TOKENS_PER_EXEC_CALL: usize = 10_000;
+#[cfg(not(feature = "v8-runtime"))]
+pub const DEFAULT_WAIT_YIELD_TIME_MS: u64 = 10_000;
+
+#[cfg(not(feature = "v8-runtime"))]
+pub struct ExecuteRequest {
+ pub tool_call_id: String,
+ pub enabled_tools: Vec<ToolDefinition>,
+ pub source: String,
+ pub stored_values: std::collections::HashMap<String, serde_json::Value>,
+ pub yield_time_ms: Option<u64>,
+ pub max_output_tokens: Option<usize>,
+}
+
+#[cfg(not(feature = "v8-runtime"))]
+#[derive(Clone, Debug)]
+pub struct WaitRequest {
+ pub cell_id: String,
+ pub yield_time_ms: u64,
+ pub terminate: bool,
+}
+
+#[cfg(not(feature = "v8-runtime"))]
+#[derive(Debug, PartialEq)]
+pub enum RuntimeResponse {
+ Yielded { cell_id: String, content_items: Vec<FunctionCallOutputContentItem> },
+ Terminated { cell_id: String, content_items: Vec<FunctionCallOutputContentItem> },
+ Result { cell_id: String, content_items: Vec<FunctionCallOutputContentItem>, stored_values: std::collections::HashMap<String, serde_json::Value>, error_text: Option<String> },
+}
+
+#[cfg(not(feature = "v8-runtime"))]
+#[async_trait::async_trait]
+pub trait CodeModeTurnHost: Send + Sync {
+ async fn invoke_tool(&self, tool_name: String, input: Option<serde_json::Value>, cancellation_token: tokio_util::sync::CancellationToken) -> Result<serde_json::Value, String>;
+ async fn notify(&self, call_id: String, cell_id: String, text: String) -> Result<(), String>;
+}
+
+#[cfg(not(feature = "v8-runtime"))]
+pub struct CodeModeService;
+
+#[cfg(not(feature = "v8-runtime"))]
+impl CodeModeService {
+ pub fn new() -> Self { Self }
+ pub async fn stored_values(&self) -> std::collections::HashMap<String, serde_json::Value> { Default::default() }
+ pub async fn replace_stored_values(&self, _values: std::collections::HashMap<String, serde_json::Value>) {}
+ pub async fn execute(&self, _request: ExecuteRequest) -> Result<RuntimeResponse, String> { Err("code-mode requires v8-runtime feature".into()) }
+ pub async fn wait(&self, _request: WaitRequest) -> Result<RuntimeResponse, String> { Err("code-mode requires v8-runtime feature".into()) }
+ pub fn start_turn_worker(&self, _host: std::sync::Arc<dyn CodeModeTurnHost>) -> CodeModeTurnWorker { CodeModeTurnWorker }
+}
+
+#[cfg(not(feature = "v8-runtime"))]
+pub struct CodeModeTurnWorker;
+
pub const PUBLIC_TOOL_NAME: &str = "exec";
pub const WAIT_TOOL_NAME: &str = "wait";
@@ -1,20 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Remove [patch.crates-io] section.
This section points to git repositories which are unavailable in an
offline build. The vendored tokio-tungstenite and tungstenite forks
are provided as cargo-inputs instead.
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -52,7 +52,3 @@
let-underscore = "warn"
rust-2018-idioms = "warn"
unused = "warn"
-
-[patch.crates-io]
-tokio-tungstenite = { git = "https://github.com/openai-oss-forks/tokio-tungstenite", rev = "132f5b39c862e3a970f731d709608b3e6276d5f6" }
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
@@ -0,0 +1,21 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Remove [patch.crates-io] and [patch.'ssh://...'] sections.
These sections point to git repositories which are unavailable in an
offline build. The vendored tokio-tungstenite and tungstenite forks
are provided as cargo-inputs instead.
diff -u a/Cargo.toml b/Cargo.toml
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -47,8 +47,2 @@
unused = "warn"
-
-[patch.crates-io]
-tokio-tungstenite = { git = "https://github.com/JakkuSakura/tokio-tungstenite", branch = "proxy-support" }
-
-[patch.'ssh://git@github.com/JakkuSakura/tungstenite-rs.git']
-tungstenite = { git = "https://github.com/JakkuSakura/tungstenite-rs", branch = "proxy-support" }
@@ -0,0 +1,52 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Replace Result::flatten() with and_then(|x| x).
Result::flatten() was stabilized in Rust 1.89.0 but the build
toolchain only provides Rust 1.88.0. Use the equivalent
.and_then(|x| x) form which works on all stable Rust versions.
diff -u a/src/local_spawner.rs b/src/local_spawner.rs
--- a/src/local_spawner.rs
+++ b/src/local_spawner.rs
@@ -156,7 +156,7 @@
});
rx.recv()
.map_err(|e| std::io::Error::other(e.to_string()))
- .flatten()
+ .and_then(|x| x)
}
fn write(&self, path: &std::path::Path, contents: &[u8]) -> std::io::Result<()> {
@@ -174,7 +174,7 @@
});
rx.recv()
.map_err(|e| std::io::Error::other(e.to_string()))
- .flatten()
+ .and_then(|x| x)
}
}
@@ -207,7 +207,7 @@
let file = rx
.await
.map_err(|e| std::io::Error::other(e.to_string()))
- .flatten()?;
+ .and_then(|x| x)?;
Ok(Box::new(tokio::io::BufReader::new(Cursor::new(file.into_bytes()))) as _)
})
diff -u a/src/thread.rs b/src/thread.rs
--- a/src/thread.rs
+++ b/src/thread.rs
@@ -1817,7 +1817,7 @@
let mut new_custom_prompts = load_custom_prompts
.await
.map_err(|_| Error::internal_error())
- .flatten()
+ .and_then(|x| x)
.inspect_err(|e| error!("Failed to load custom prompts {e:?}"))
.unwrap_or_default();
@@ -0,0 +1,16 @@
On GNU/Hurd, 'PATH_MAX' is undefined. Provide a reasonable default value.
Adapted from <https://github.com/libgit2/libgit2/pull/7100>.
diff --git a/tests/clar/clar.h b/tests/clar/clar.h
index ca72292ae91..98e2b14e880 100644
--- a/t/unit-tests/clar/clar.h
+++ b/t/unit-tests/clar/clar.h
@@ -14,6 +14,8 @@
# define CLAR_MAX_PATH 4096
#elif defined(_WIN32)
# define CLAR_MAX_PATH MAX_PATH
+#elif !defined(PATH_MAX) /* GNU/Hurd */
+# define CLAR_MAX_PATH 4096
#else
# define CLAR_MAX_PATH PATH_MAX
#endif
@@ -0,0 +1,54 @@
From 093316a897a2eb4972a7a3a5888f40975d03f6bf Mon Sep 17 00:00:00 2001
From: Brice Goglin <Brice.Goglin@inria.fr>
Date: Tue, 5 Apr 2022 17:39:50 +0200
Subject: [PATCH] linux: (partial) fix the discovery of hugepages on btrfs
fsroot
btrfs always returns 1 in directory stat.st_nlink.
It breaks make check in tests/linux/ because the hugepages discovery
uses st_nlink to allocate the memory page_types array.
Always allocate at least 3 page_types slots
(enough for all known cases, 1 for normal, 2 for huge pages)
(partially cherry-picked from commit 7f351cec9bfe54a031f35ad16c9cfb99784d76dc)
We don't reallocate later if needed as in 2.x commit 7f351cec9bfe54a031f35ad16c9cfb99784d76dc
because v1.11 doesn't deserve a complete fix. Just commit the minimal change
so that tests/linux/2i386-2t-hugepagesizecount with HWLOC_PAGESIZE_DEBUG=4096
doesn't crash in btrfs anymore (test-topology.sh fails during make check if /tmp is in btrfs).
Thanks to Philippe Swartvagher for the report.
Signed-off-by: Brice Goglin <Brice.Goglin@inria.fr>
---
src/topology-linux.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/src/topology-linux.c b/src/topology-linux.c
index 58c275fea..269eca7f5 100644
--- a/src/topology-linux.c
+++ b/src/topology-linux.c
@@ -1,6 +1,6 @@
/*
* Copyright © 2009 CNRS
- * Copyright © 2009-2019 Inria. All rights reserved.
+ * Copyright © 2009-2022 Inria. All rights reserved.
* Copyright © 2009-2013, 2015 Université Bordeaux
* Copyright © 2009-2014 Cisco Systems, Inc. All rights reserved.
* Copyright © 2015 Intel, Inc. All rights reserved.
@@ -2329,7 +2329,14 @@ hwloc_get_procfs_meminfo_info(struct hwloc_topology *topology,
err = hwloc_stat("/sys/kernel/mm/hugepages", &st, data->root_fd);
if (!err) {
- types = 1 + st.st_nlink-2;
+ types = 1 /* normal non-huge size */ + st.st_nlink - 2 /* ignore . and .. */;
+ if (types < 3)
+ /* some buggy filesystems (e.g. btrfs when reading from fsroot)
+ * return wrong st_nlink for directories (always 1 for btrfs).
+ * use 3 as a sane default (default page + 2 huge sizes).
+ * hwloc_parse_hugepages_info() will extend it if needed.
+ */
+ types = 3;
has_sysfs_hugepages = 1;
}
@@ -1,26 +0,0 @@
To be remove when updating inetutils.
See
https://cgit.git.savannah.gnu.org/cgit/inetutils.git/commit/?id=556621adc3dcb62dbb28c54905cef15837947115
https://codeberg.org/guix/guix/issues/7995
diff --git a/tests/libls.sh b/tests/libls.sh
index 827020f2..9fdef8be 100755
--- a/tests/libls.sh
+++ b/tests/libls.sh
@@ -91,7 +91,6 @@ REPLY_a1=`$LS -a1 $LSDIR`
REPLY_A1=`$LS -A1 $LSDIR`
REPLY_C=`$LS -C $LSDIR`
-REPLY_Cf=`$LS -Cf $LSDIR`
REPLY_Cr=`$LS -Cr $LSDIR`
REPLY_Ct=`$LS -Ct $LSDIR`
REPLY_x=`$LS -x $LSDIR`
@@ -130,9 +129,6 @@ test `echo "$diff" | $GREP -c -v '^[.]\{1,2\}$'` -eq 0 ||
fi
}
-test x"$REPLY_C" != x"$REPLY_Cf" ||
- { errno=1; echo >&2 'Failed to disable sorting with "-f".'; }
-
test x"$REPLY_C" != x"$REPLY_Cr" ||
{ errno=1; echo >&2 'Failed to reverse sorting with "-r".'; }
@@ -0,0 +1,43 @@
--- a/Makefile.in
+++ b/Makefile.in
@@ -265,15 +265,11 @@
amal.flags = -nc
amal.run = TOPDIR="$(DIR.top)" $(SHELL.bash) $(bin.make-amal) --quiet
libfossil.c: $(amal.deps)
$(amal.run) $(amal.flags)
-libfossil.h: libfossil.c
-all: libfossil.c
@if ENABLE_CXX
-libfossil.hpp: libfossil.c
-libfossil.c++: libfossil.c
amal.flags += -c++
@endif
.PHONY: amal
amal: libfossil.c
@@ -287,19 +283,16 @@
fossil uv sync
@endif
@endif
install: install-headers
-install-headers: libfossil.h $(install-dir.include)
- $(INSTALL.noexec) libfossil.h $(install-dir.include)
+install-headers: include/libfossil.h $(install-dir.include)
+ $(INSTALL.noexec) $< $(install-dir.include)
@if ENABLE_CXX
-libfossil++.hpp: libfossil.h
-libfossil++.cpp: libfossil++.hpp
-all: libfossil++.cpp
install-headers: install-headers++
-install-headers++: libfossil++.hpp $(install-dir.include)
- $(INSTALL.noexec) libfossil++.hpp $(install-dir.include)
+install-headers++: include/libfossil.hpp $(install-dir.include)
+ $(INSTALL.noexec) $< $(install-dir.include)
@endif # ENABLE_CXX
clean: clean-amalgamation
clean-amalgamation:
rm -f libfossil.c libfossil.h libfossil++.cpp libfossil++.hpp
rm -f libfossil-config.h libfossil-amalgamation.zip VERSION.h
@@ -1,260 +0,0 @@
From d8702527f4f1f67f765330f5018bfcb182946c45 Mon Sep 17 00:00:00 2001
From: Henri Sivonen <hsivonen@hsivonen.fi>
Date: Tue, 21 Apr 2026 07:09:20 +0000
Subject: [PATCH] Bug 2033279 - Make --enable-rust-simd work with Rust 1.95.
r=firefox-build-system-reviewers,supply-chain-reviewers,ahochheiden
Differential Revision: https://phabricator.services.mozilla.com/D295287
---
.cargo/config.toml.in | 5 ++
Cargo.lock | 4 +-
Cargo.toml | 2 +
supply-chain/audits.toml | 6 ++
supply-chain/config.toml | 4 ++
.../rust/encoding_rs/.cargo-checksum.json | 2 +-
.../rust/encoding_rs/.cargo_vcs_info.json | 6 --
third_party/rust/encoding_rs/Cargo.toml | 60 ++++++++++---------
third_party/rust/encoding_rs/Cargo.toml.orig | 45 --------------
.../rust/encoding_rs/src/x_user_defined.rs | 2 +
10 files changed, 54 insertions(+), 82 deletions(-)
delete mode 100644 third_party/rust/encoding_rs/.cargo_vcs_info.json
delete mode 100644 third_party/rust/encoding_rs/Cargo.toml.orig
diff --git a/.cargo/config.toml.in b/.cargo/config.toml.in
index 8013ae5435dab..cabdee463415f 100644
--- a/.cargo/config.toml.in
+++ b/.cargo/config.toml.in
@@ -55,6 +55,11 @@ git = "https://github.com/hsivonen/any_all_workaround"
rev = "7fb1b7034c9f172aade21ee1c8554e8d8a48af80"
replace-with = "vendored-sources"
+[source."git+https://github.com/hsivonen/encoding_rs?rev=1236d1bc423e6ba35a06485f74a6304db2d703b5"]
+git = "https://github.com/hsivonen/encoding_rs"
+rev = "1236d1bc423e6ba35a06485f74a6304db2d703b5"
+replace-with = "vendored-sources"
+
[source."git+https://github.com/hsivonen/rust-harfbuzz?rev=9d58a23a98772a197291d04af93f7041b7093d95"]
git = "https://github.com/hsivonen/rust-harfbuzz"
rev = "9d58a23a98772a197291d04af93f7041b7093d95"
diff --git a/Cargo.lock b/Cargo.lock
index fea2f95fbb438..63b1f818d7971 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1914,11 +1914,11 @@ dependencies = [
[[package]]
name = "encoding_rs"
version = "0.8.35"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
+source = "git+https://github.com/hsivonen/encoding_rs?rev=1236d1bc423e6ba35a06485f74a6304db2d703b5#1236d1bc423e6ba35a06485f74a6304db2d703b5"
dependencies = [
"any_all_workaround",
"cfg-if",
+ "rustversion",
]
[[package]]
diff --git a/Cargo.toml b/Cargo.toml
index 49c695809f302..2648c32ae57e8 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -287,6 +287,8 @@ harfbuzz-sys = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a
harfbuzz = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a23a98772a197291d04af93f7041b7093d95" }
# Also vendor `harfbuzz-traits` to keep cargo-vendor happy.
harfbuzz-traits = { git = "https://github.com/hsivonen/rust-harfbuzz", rev = "9d58a23a98772a197291d04af93f7041b7093d95" }
+# Make --enable-rust-simd compatible with Rust 1.95
+encoding_rs = { git = "https://github.com/hsivonen/encoding_rs", rev = "1236d1bc423e6ba35a06485f74a6304db2d703b5" }
# objc 0.2.7 + fa7ca43b862861dd1cd000d7ad01e6e0266cda13
objc = { git = "https://github.com/glandium/rust-objc", rev = "4de89f5aa9851ceca4d40e7ac1e2759410c04324" }
diff --git a/supply-chain/audits.toml b/supply-chain/audits.toml
index 85b4037e03bdb..f4567ea6b6f94 100644
--- a/supply-chain/audits.toml
+++ b/supply-chain/audits.toml
@@ -2385,6 +2385,12 @@ who = "Mike Hommey <mh+mozilla@glandium.org>"
criteria = "safe-to-deploy"
delta = "0.8.31 -> 0.8.32"
+[[audits.encoding_rs]]
+who = "Henri Sivonen <hsivonen@hsivonen.fi>"
+criteria = "safe-to-deploy"
+delta = "0.8.35 -> 0.8.35@git:1236d1bc423e6ba35a06485f74a6304db2d703b5"
+importable = false
+
[[audits.enum-map]]
who = "Kershaw Chang <kershaw@mozilla.com>"
criteria = "safe-to-deploy"
diff --git a/supply-chain/config.toml b/supply-chain/config.toml
index 4cfd83dc2d608..15deefbec0574 100644
--- a/supply-chain/config.toml
+++ b/supply-chain/config.toml
@@ -39,6 +39,10 @@ notes = "This is the upstream code not yet released"
audit-as-crates-io = true
notes = "This is upstream plus a warning fix from bug 1823866."
+[policy.encoding_rs]
+audit-as-crates-io = true
+notes = "This is upstream plus a build fix for bug 2033279."
+
[policy.firefox-on-glean]
audit-as-crates-io = false
notes = "The crates.io version of this is just a placeholder to allow public crates to depend on firefox-on-glean."
diff --git a/third_party/rust/encoding_rs/.cargo_vcs_info.json b/third_party/rust/encoding_rs/.cargo_vcs_info.json
deleted file mode 100644
index 6e5d699759e43..0000000000000
--- a/third_party/rust/encoding_rs/.cargo_vcs_info.json
+++ /dev/null
@@ -1,6 +0,0 @@
-{
- "git": {
- "sha1": "2fa58aecf537cc76ff52c0eb3d5e9f8fda466844"
- },
- "path_in_vcs": ""
-}
\ No newline at end of file
diff --git a/third_party/rust/encoding_rs/Cargo.toml b/third_party/rust/encoding_rs/Cargo.toml
index 2adac351c2edf..0239315bab180 100644
--- a/third_party/rust/encoding_rs/Cargo.toml
+++ b/third_party/rust/encoding_rs/Cargo.toml
@@ -16,6 +16,7 @@ name = "encoding_rs"
version = "0.8.35"
authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
build = false
+autolib = false
autobins = false
autoexamples = false
autotests = false
@@ -39,33 +40,6 @@ categories = [
license = "(Apache-2.0 OR MIT) AND BSD-3-Clause"
repository = "https://github.com/hsivonen/encoding_rs"
-[profile.release]
-lto = true
-
-[lib]
-name = "encoding_rs"
-path = "src/lib.rs"
-
-[dependencies.any_all_workaround]
-version = "0.1.0"
-optional = true
-
-[dependencies.cfg-if]
-version = "1.0"
-
-[dependencies.serde]
-version = "1.0"
-optional = true
-
-[dev-dependencies.bincode]
-version = "1.0"
-
-[dev-dependencies.serde_derive]
-version = "1.0"
-
-[dev-dependencies.serde_json]
-version = "1.0"
-
[features]
alloc = []
default = ["alloc"]
@@ -84,4 +58,34 @@ fast-legacy-encode = [
less-slow-big5-hanzi-encode = []
less-slow-gb-hanzi-encode = []
less-slow-kanji-encode = []
-simd-accel = ["any_all_workaround"]
+simd-accel = [
+ "any_all_workaround",
+ "rustversion",
+]
+
+[lib]
+name = "encoding_rs"
+path = "src/lib.rs"
+
+[dependencies]
+cfg-if = "1.0"
+
+[dependencies.any_all_workaround]
+version = "0.1.0"
+optional = true
+
+[dependencies.rustversion]
+version = "1.0.19"
+optional = true
+
+[dependencies.serde]
+version = "1.0"
+optional = true
+
+[dev-dependencies]
+bincode = "1.0"
+serde_derive = "1.0"
+serde_json = "1.0"
+
+[profile.release]
+lto = true
diff --git a/third_party/rust/encoding_rs/Cargo.toml.orig b/third_party/rust/encoding_rs/Cargo.toml.orig
deleted file mode 100644
index 0f7639d5f879b..0000000000000
--- a/third_party/rust/encoding_rs/Cargo.toml.orig
+++ /dev/null
@@ -1,45 +0,0 @@
-[package]
-name = "encoding_rs"
-description = "A Gecko-oriented implementation of the Encoding Standard"
-version = "0.8.35"
-edition = '2018'
-authors = ["Henri Sivonen <hsivonen@hsivonen.fi>"]
-license = "(Apache-2.0 OR MIT) AND BSD-3-Clause"
-readme = "README.md"
-documentation = "https://docs.rs/encoding_rs/"
-homepage = "https://docs.rs/encoding_rs/"
-repository = "https://github.com/hsivonen/encoding_rs"
-keywords = ["encoding", "web", "unicode", "charset"]
-categories = ["text-processing", "encoding", "web-programming", "internationalization"]
-rust-version = "1.36"
-
-[features]
-default = ["alloc"]
-alloc = []
-simd-accel = ["any_all_workaround"]
-less-slow-kanji-encode = []
-less-slow-big5-hanzi-encode = []
-less-slow-gb-hanzi-encode = []
-fast-hangul-encode = []
-fast-hanja-encode = []
-fast-kanji-encode = []
-fast-gb-hanzi-encode = []
-fast-big5-hanzi-encode = []
-fast-legacy-encode = ["fast-hangul-encode",
- "fast-hanja-encode",
- "fast-kanji-encode",
- "fast-gb-hanzi-encode",
- "fast-big5-hanzi-encode"]
-
-[dependencies]
-cfg-if = "1.0"
-serde = { version = "1.0", optional = true }
-any_all_workaround = { version = "0.1.0" , optional = true }
-
-[dev-dependencies]
-serde_derive = "1.0"
-bincode = "1.0"
-serde_json = "1.0"
-
-[profile.release]
-lto = true
diff --git a/third_party/rust/encoding_rs/src/x_user_defined.rs b/third_party/rust/encoding_rs/src/x_user_defined.rs
index 7af7d5e3d69da..16f1a18d7f6ce 100644
--- a/third_party/rust/encoding_rs/src/x_user_defined.rs
+++ b/third_party/rust/encoding_rs/src/x_user_defined.rs
@@ -16,7 +16,8 @@ cfg_if! {
use simd_funcs::*;
use core::simd::u16x8;
use core::simd::cmp::SimdPartialOrd;
+ #[rustversion::since(1.95)]
use core::simd::Select;
#[inline(always)]
fn shift_upper(unpacked: u16x8) -> u16x8 {
@@ -1,14 +0,0 @@
Upstream-status: https://github.com/open-eid/DigiDoc4-Client/pull/1398
diff --git a/client/Application.cpp b/client/Application.cpp
index c979020..dac13d9 100644
--- a/client/Application.cpp
+++ b/client/Application.cpp
@@ -307,6 +307,7 @@ Application::Application( int &argc, char **argv )
{
setApplicationName(QStringLiteral("qdigidoc4"));
setApplicationVersion(QStringLiteral(VERSION_STR));
+ setDesktopFileName("ee.ria.qdigidoc4");
setOrganizationDomain(QStringLiteral("ria.ee"));
setOrganizationName(QStringLiteral("RIA"));
setWindowIcon(QIcon(QStringLiteral(":/images/Icon.svg")));
@@ -1,20 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Subject: Remove codex-core circular dev-dependencies.
codex-core has a dev-dependency on codex-arg0 which in turn depends on
codex-core. This causes cargo package to fail when resolving from the
vendor directory because codex-arg0 is not yet available at the time
codex-core is packaged.
--- a/codex-rs/core/Cargo.toml
+++ b/codex-rs/core/Cargo.toml
@@ -144,7 +144,6 @@
[dev-dependencies]
assert_cmd = { workspace = true }
assert_matches = { workspace = true }
-codex-arg0 = { workspace = true }
codex-otel = { workspace = true, features = [
"disable-default-metrics-exporter",
] }
@@ -1,30 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Subject: 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
@@ -423,17 +423,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/openai-oss-forks/tokio-tungstenite", rev = "132f5b39c862e3a970f731d709608b3e6276d5f6" }
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
-
-# Uncomment to debug local changes.
-# rmcp = { path = "../../rust-sdk/crates/rmcp" }
-
-[patch."ssh://git@github.com/openai-oss-forks/tungstenite-rs.git"]
-tungstenite = { git = "https://github.com/openai-oss-forks/tungstenite-rs", rev = "9200079d3b54a1ff51072e24d81fd354f085156f" }
@@ -1,26 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-04-14
License: ASL2.0
Subject: Fix race condition in codex-connectors cache test.
ALL_CONNECTORS_CACHE is a single global Option, not a map. When Rust's
test runner executes tests in parallel, the
list_all_connectors_merges_and_normalizes_directory_apps test can
overwrite the cache entry between the two calls in
list_all_connectors_uses_shared_cache, causing a key mismatch and a
spurious "cache should have been used" failure.
Fix by clearing the cache at the start of the cache test so it does not
depend on execution order relative to other tests.
--- a/codex-rs/connectors/src/lib.rs
+++ b/codex-rs/connectors/src/lib.rs
@@ -441,6 +441,9 @@
#[tokio::test]
async fn list_all_connectors_uses_shared_cache() -> anyhow::Result<()> {
+ // Clear any stale cache entry left by a concurrently running test.
+ *ALL_CONNECTORS_CACHE.lock().unwrap() = None;
+
let calls = Arc::new(AtomicUsize::new(0));
let call_counter = Arc::clone(&calls);
let key = cache_key("shared");
@@ -1,20 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-02-08
License: ASL2.0
Subject: Remove codex-core circular dev-dependencies.
codex-core has a dev-dependency on codex-arg0 which in turn depends on
codex-core. This causes cargo package to fail when resolving from the
vendor directory because codex-arg0 is not yet available at the time
codex-core is packaged.
--- a/codex-rs/core/Cargo.toml
+++ b/codex-rs/core/Cargo.toml
@@ -134,7 +134,6 @@
[dev-dependencies]
assert_cmd = { workspace = true }
assert_matches = { workspace = true }
-codex-arg0 = { workspace = true }
codex-otel = { workspace = true }
codex-utils-cargo-bin = { workspace = true }
core_test_support = { workspace = true }
@@ -1,16 +0,0 @@
Author: Danny Milosavljevic <dannym@friendly-machines.com>
Date: 2026-04-14
License: ASL2.0
Subject: Remove macOS-only libwebrtc git dependency.
--- a/codex-rs/realtime-webrtc/Cargo.toml
+++ b/codex-rs/realtime-webrtc/Cargo.toml
@@ -12,8 +12,5 @@
thiserror = { workspace = true }
tokio = { workspace = true, features = ["rt-multi-thread"] }
-[target.'cfg(target_os = "macos")'.dependencies]
-libwebrtc = { version = "0.3.26", git = "https://github.com/juberti-oai/rust-sdks.git", rev = "e2d1d1d230c6fc9df171ccb181423f957bb3c1f0" }
-
[lints]
workspace = true
@@ -1,20 +0,0 @@
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.
--- a/codex-rs/core/tests/common/lib.rs
+++ b/codex-rs/core/tests/common/lib.rs
@@ -283,7 +283,7 @@
use tokio::time::timeout;
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");
+1 -1
View File
@@ -1892,7 +1892,7 @@ presentation. The input files processed by pdfpc are PDF documents.")
(license license:gpl3+)))
(define-public paps
;; Fails to build in latest release.
;; Fails to build in lastest release.
(let ((commit "199b478ca3884df4c0786948aae09c7928c6498f")
(revision "0"))
(package
+1 -1
View File
@@ -510,7 +510,7 @@ of the same class using @code{JSON::Unmarshal}.")
@code{JSON::Unmarshal} in order to save duplication, it is intended to store a
separate JSON name for an attribute where the name of the JSON attribute might be
changed, either for aesthetic reasons or the name is not a valid Perl identifier.
It will of course also be needed in classes that are going to use
It will of course also be needed in classes thar are going to use
@code{JSON::Marshal} or @code{JSON::Unmarshal} for serialization/deserialization.")
(license license:artistic2.0)))
+2 -2
View File
@@ -359,7 +359,7 @@ MTP, and much more.")
(define-public perl-image-exiftool
(package
(name "perl-image-exiftool")
(version "13.55")
(version "12.70")
(source
(origin
(method url-fetch)
@@ -371,7 +371,7 @@ MTP, and much more.")
"Image-ExifTool-" version ".tar.gz")))
(sha256
(base32
"0rv6hiqd44npnjzcn5ig5d0rnpgbzkdp5bbi526561nl9b9q2k2z"))))
"1zmg5jsdqmr9mnmxg614brdgr9ddmspcc11rs4xkygnc8lj55cjc"))))
(build-system perl-build-system)
(arguments
(list #:phases
+1 -1
View File
@@ -311,7 +311,7 @@
;; This test fails on most architectures.
"sapi/cli/tests/upload_2G.phpt"))
;; Accommodate two extra openssl errors flanking the expected one:
;; Accomodate two extra openssl errors flanking the expected one:
;; random number generator:RAND_{load,write}_file:Cannot open file
;; This is due to an invalid $HOME, but changing it in the test
;; still prints the first one & changing it globally is overkill.
+9 -9
View File
@@ -143,8 +143,8 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(define-public plan9port
;; no releases
(let ((commit "b379c7cc9dd9a810a9873d444e9742fcad3f5997")
(revision "2"))
(let ((commit "f8681acb374fa0d5ed1568dbedb00a4abe1ca6f1")
(revision "1"))
(package
(name "plan9port")
(version (git-version "0.1.0" revision commit))
@@ -156,7 +156,7 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(file-name (git-file-name name version))
(sha256
(base32
"0mvchnbk9kywm9fsw0cb621g435kav4sd1facb71v0jy7xwzw1fz"))
"01343jvn8kr63i78h8xlgscn6wihdsr44xzh1cylvhigjbqw8n2x"))
(modules '((guix build utils)))
(snippet #~(for-each delete-file-recursively
'("font/luc" ;nonfree
@@ -171,8 +171,8 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(lambda _
(let ((dest (string-append #$output "/plan9")))
(substitute* "INSTALL"
;; Pass the check for freetype to install fontsrv.
(("\\[ -f a\\.out ]") "true"))
;; Install fontsrv, which is enabled in LOCAL.config.
(("rm -f bin/fontsrv") ""))
(delete-file "src/cmd/mk/mk.pdf")
;; TODO: substitute font in src/cmd/venti/srv/graph.c
(substitute* "src/cmd/acme/acme.c"
@@ -201,8 +201,8 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
(("luc/unicode.6.font")
"fixed/unicode.6x9.font"))
(substitute* "bin/9c"
(("[$][(]which uniq[)]")
"uniq"))
(("which")
(which "which")))
(substitute* "src/cmd/fontsrv/freetyperules.sh"
(("'\\$i'/freetype2")
(string-append "-I"
@@ -210,7 +210,8 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
"/include/freetype2")))
(with-output-to-file "LOCAL.config"
(lambda _
(format #t "CC9=~a~%" #$(cc-for-target))))
(format #t "CC9=~a~%" #$(cc-for-target))
(format #t "FONTSRV=fontsrv~%")))
(setenv "X11" #$libx11)
(setenv "PLAN9" (getcwd))
(setenv "PLAN9_TARGET" dest))))
@@ -240,7 +241,6 @@ reconstruct a Plan 9 terminal-like experience from a non-Plan 9 system.")
"troff"
"postscript"))
(install-file "rcmain" dest)
(install-file "config" dest)
(mkdir-p (string-append #$output "/bin"))
(symlink (string-append dest "/bin/9")
(string-append #$output "/bin/9")))))
+1 -1
View File
@@ -91,7 +91,7 @@
"--with-nologin=/run/apcupsd"
"--with-pwrfail-dir=/run/apcupsd"
;; Configure requires these, but we do not use the generated
;; Configure requires these, but we do not use the genenerated
;; apcupsd.conf, so in order to reduce dependencies of the package,
;; provide fake values.
(string-append "ac_cv_path_SHUTDOWN=/nope")

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