Commit graph

162839 commits

Author SHA1 Message Date
Reepca Russelstein
fb42611b8f
daemon: Use slirp4netns to provide networking to fixed-output derivations.
Previously, the builder of a fixed-output derivation could communicate with an
external process via an abstract Unix-domain socket.  In particular, it could
send an open file descriptor to the store, granting write access to some of
its output files in the store provided the derivation build fails—the fix for
CVE-2024-27297 did not address this specific case.  It could also send an open
file descriptor to a setuid program, which could then be executed using
execveat to gain the privileges of the build user.

With this change, fixed-output derivations other than “builtin:download”
and “builtin:git-download” always run in a separate network namespace
and have network access provided by a TAP device backed by slirp4netns,
thereby closing the abstract Unix-domain socket channel.

* nix/libstore/globals.hh (Settings)[useHostLoopback, slirp4netns]: new
fields.
* config-daemon.ac (SLIRP4NETNS): new C preprocessor definition.
* nix/libstore/globals.cc (Settings::Settings): initialize them to defaults.
* nix/nix-daemon/guix-daemon.cc (options): add --isolate-host-loopback option.
* doc/guix.texi: document it.
* nix/libstore/build.cc (DerivationGoal)[slirp]: New field.
(setupTap, setupTapAction, waitForSlirpReadyAction, enableRouteLocalnetAction,
 prepareSlirpChrootAction, spawnSlirp4netns, haveGlobalIPv6Address,
 remapIdsTo0Action): New functions.
(initializeUserNamespace): allow the guest UID and GID to be specified.
(DerivationGoal::killChild): When ‘slirp’ is not -1, call ‘kill’.
(DerivationGoal::startBuilder): Unconditionally add CLONE_NEWNET to FLAGS.
When ‘fixedOutput’ is true, spawn ‘slirp4netns’.
When ‘fixedOutput’ and ‘useChroot’ are true, add setupTapAction,
waitForSlirpReadyAction, and enableRouteLocalnetAction to builder setup
phases.
Create a /etc/resolv.conf for fixed-output derivations that directs them to
slirp4netns's dns address.
When settings.useHostLoopback is true, supply fixed-output derivations with a
/etc/hosts that resolves "localhost" to slirp4netns's address for accessing
the host loopback.
* nix/libutil/util.cc (keepOnExec, decodeOctalEscaped, sendFD, receiveFD,
  findProgram): New functions.
* nix/libutil/util.hh (keepOnExec, decodeOctalEscaped, sendFD, receiveFD,
  findProgram): New declarations.
* gnu/packages/package-management.scm (guix): add slirp4netns input for linux
  targets.
* tests/derivations.scm (builder-network-isolated?): new variable.
  ("fixed-output derivation, network access, localhost", "fixed-output
  derivation, network access, external host"):
  skip test case if fixed output derivations are isolated from the network.

Change-Id: Ia3fea2ab7add56df66800071cf15cdafe7bfab96
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-06-24 10:07:57 -04:00
Reepca Russelstein
be8aca0651
daemon: add and use spawn.cc and spawn.hh.
This adds a mechanism for manipulating and running "spawn phases" similarly to
how builder-side code manipulates "build phases".  The main difference is that
spawn phases take a (reference to a) single structure that they can both read
from and write to, with their writes being visible to subsequent phases.  The
base structure type for this is SpawnContext.

It also adds some predefined phase sequences, namely basicSpawnPhases and
cloneSpawnPhases, and exposes each of the actions performed by these phases.

Finally, it modifies build.cc to replace runChild() with use of this new code.

* nix/libutil/util.cc (keepOnExec, waitForMessage): new functions.
* nix/libutil.util.hh (keepOnExec, waitForMessage): add prototypes.
* nix/libutil/spawn.cc, nix/libutil/spawn.hh: new files.
  (addPhaseAfter, addPhaseBefore, prependPhase, appendPhase, deletePhase,
  replacePhase, reset_writeToStderrAction, restoreAffinityAction,
  setsidAction, earlyIOSetupAction, dropAmbientCapabilitiesAction,
  chrootAction, chdirAction, closeMostFDsAction, setPersonalityAction,
  oomSacrificeAction, setIDsAction, restoreSIGPIPEAction, setupSuccessAction,
  execAction, getBasicSpawnPhases, usernsInitSyncAction, usernsSetIDsAction,
  initLoopbackAction, setHostAndDomainAction, makeFilesystemsPrivateAction,
  makeChrootSeparateFilesystemAction, statfsToMountFlags, bindMount,
  mountIntoChroot, mountIntoChrootAction, mountProcAction, mountDevshmAction,
  mountDevptsAction, pivotRootAction, lockMountsAction, getCloneSpawnPhases,
  runChildSetup, runChildSetupEntry, cloneChild, idMapToIdentityMap,
  unshareAndInitUserns): new procedures.
* nix/local.mk (libutil_a_SOURCES): add spawn.cc.
  (libutil_headers): add spawn.hh.
* nix/libstore/build.cc (restoreSIGPIPE, DerivationGoal::runChild,
  childEntry): removed procedures.
  (DerivationGoal::{dirsInChroot,env,readiness}): removed.
  (execBuilderOrBuiltin, execBuilderOrBuiltinAction,
  clearRootWritePermsAction): new procedures.
  (DerivationGoal::startBuilder): modified to use a CloneSpawnContext if
  chroot builds are available, otherwise a SpawnContext.

Change-Id: Ifd50110de077378ee151502eda62b99973d083bf

Change-Id: I76e10d3f928cc30566e1e6ca79077196972349f8

spawn.cc, util.cc, util.hh changes

Change-Id: I287320e63197cb4f65665ee5b3fdb3a0e125ebac
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-06-24 10:07:56 -04:00
Reepca Russelstein
7173c2c0ca
daemon: Implement ‘deletePath’ in terms of the *at functions.
deletePath needs to be able to operate securely in unfriendly environments,
where adversaries may be concurrently modifying the files being operated on.
For example, directories that we are currently recursing through may be
replaced with symbolic links.

We err on the side of early failure here: if a file or directory is
concurrently modified in a way that causes one of the system calls to fail, we
throw an exception immediately instead of trying to adapt to the change.

Note that we use fstat instead of fstatat for verifying the directory's
st_mode field because AT_EMPTY_PATH is linux-specific.

* nix/libutil/util.cc (_deletePathAt): new procedure.
(_deletePath): use it.

Change-Id: I7ccfe6f1f74dbab95617b24034494e0f63030582
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-06-24 10:07:55 -04:00
Ludovic Courtès
a183afa8e2
tests: Test network access from fixed-output derivations.
* tests/derivations.scm ("fixed-output derivation, network access, localhost")
("fixed-output derivation, network access, external host"): New tests.

Change-Id: Iec164981a12ffef1bcb6a63ed9c2f1f363c53d80
Signed-off-by: John Kehayias <john.kehayias@protonmail.com>
2025-06-24 10:07:52 -04:00
Yelninei
6f1c5aed8a
gnu: screen: Fix build with gcc-14.
* gnu/packages/screen.scm (screen):
[#:configure-flags]: Add -Wno-error=int-conversions and
-Wno-error=incompatible-pointer-types to CFLAGS.

Change-Id: I14166477ff104ed1e64b9deebb89e032b50f69f9
Signed-off-by: Zheng Junjie <z572@z572.online>
2025-06-24 21:42:16 +08:00
fanquake
8e874ded5c
gnu: mingw-w64-tools: Update to 13.0.0.
* gnu/packages/mingw.scm (mingw-w64-tools): Update to 13.0.0.

Change-Id: Ie83c32f24eb6028864c96267b48a795a266269cf
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 12:54:25 +01:00
fanquake
a1d2015184
gnu: mingw-w64: Update to 13.0.0.
* gnu/packages/mingw.scm (make-mingw-w64): Update to 13.0.0.

Change-Id: I5d4f639c20828202eca82a396588fcde6d79511d
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 12:54:21 +01:00
Dariqq
141f96127e
gnu: power-profiles-daemon: Update to 0.30.
Fixing #506.

* gnu/packages/freedesktop.scm (power-profiles-daemon): Update to 0.30.
[#:phases]: In 'wrap-program add GI_TYPELIB_PATH to the wrapper.

Change-Id: Ie5d45a8326d8925a5fb790c8effb6365a82e1b71
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 12:48:39 +01:00
Ashish SHUKLA
63405dce98
gnu: libcgroup: Update to 3.2.0.
* gnu/packages/linux.scm (libcgroup): Update to 3.2.0.

Change-Id: Ib92d482f15af39d6e908414c345b3677479c3288
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 12:44:52 +01:00
Sharlatan Hellseher
9f31f50ad3
gnu: python-cantools: Update to 40.2.3.
Fixing #787.

* gnu/packages/python-xyz.scm (python-cantools): Update to 40.2.3.
[arguments] <phases>: Remove 'build-doc and 'install-doc; add
'set-version.
[propagated-inputs]: Remove python-parameterized.
[native-inputs]: Remove python-sphinx and texinfo; add
python-parameterized, python-pytest, python-setuptools,
python-setuptools-scm, and python-wheel.

Change-Id: I57b20e8df1406795c8a22a38bec470e6294dabbf
2025-06-24 12:38:21 +01:00
Sharlatan Hellseher
8a8da2a0f4
gnu: python-bitstruct: Update to 8.21.0.
* gnu/packages/python-xyz.scm (python-bitstruct): Update to 8.21.0.
[build-system]: Use pyproject.
[native-inputs]: Add python-pytest, python-setuptools-next, and
python-wheel.
[description]: Start from a new line, apply fill-column indentation.

Change-Id: I669b99d5687d173e9d9667d3e7339a2d5bf62006
2025-06-24 12:38:21 +01:00
Maxim Cournoyer
c1d307d80a
gnu: Add emacs-defaultencrypt.
* gnu/packages/emacs-xyz.scm (emacs-defaultencrypt): New variable.
(emacs-default-encrypt): Mark it as deprecated by the above.

Change-Id: I391e8edb489aa463344401fd691727734a47e428
Signed-off-by: Andreas Enge <andreas@enge.fr>
2025-06-24 12:10:18 +02:00
Cayetano Santos
04d8217436
gnu: pass-tomb: Correct completions path.
* gnu/packages/password-utils.scm (pass-tomb): Correct completions path.

Change-Id: I487b723e3e8f5616001d80491bf595c48b0a46e2
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:54:14 +01:00
Cayetano Santos
b46e2f8012
gnu: pass-tomb: Use G-expressions.
* gnu/packages/password-utils.scm (pass-tomb): Use G-expressions.

Change-Id: Ic0eae41184d0beffe08caa47c3cafdcb58fa7480
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:54:05 +01:00
Cayetano Santos
09950f17e7
gnu: pass-tomb: Update to 1.3-0.f4f34f4.
* gnu/packages/password-utils.scm (pass-tomb): Update to 1.3-0.f4f34f4.

Change-Id: I45ead3c1e8475d38e76627f334afc2eb7440c8ec
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:53:39 +01:00
Maxim Cournoyer
51533dfc9b
gnu: Add git-repo-go.
* gnu/packages/version-control.scm (git-repo-go): New variable.

Change-Id: I8b7b45bdd24eabf8f30cb4febeb9338ffadbb0d9
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:50:08 +01:00
Maxim Cournoyer
13d4df966c
gnu: Add go-github-com-h2non-gock.
* gnu/packages/golang-check.scm (go-github-com-h2non-gock): New variable.

Change-Id: I9d441873043d474110c3e723222da2ef02bed9a0
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:35:29 +01:00
Maxim Cournoyer
ceb72c6a40
gnu: Add go-github-com-nbio-st.
* gnu/packages/golang-check.scm (go-github-com-nbio-st): New variable.

Change-Id: I7a2b0d463c5a8d784b6e50814eacb45352cda590
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:30:06 +01:00
Maxim Cournoyer
99ff113083
gnu: Add go-github-com-h2non-parth.
* gnu/packages/golang-xyz.scm (go-github-com-h2non-parth): New variable.

Change-Id: I5ef3d0b600295aef0764de93363c01a8c27822a5
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:30:06 +01:00
Maxim Cournoyer
e869996a33
gnu: Add go-github-com-jiangxin-multi-log.
* gnu/packages/golang-xyz.scm (go-github-com-jiangxin-multi-log): New variable.

Change-Id: I0dea0ad989acfca443c836dedc7abdc5a2ae6332
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:30:00 +01:00
Maxim Cournoyer
b586469706
gnu: Add go-github-com-jiangxin-goconfig.
* gnu/packages/golang-vcs.scm (go-github-com-jiangxin-goconfig): New variable.

Change-Id: I16784102273da77fb76697c3344e4912e83cb30f
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:26:34 +01:00
Maxim Cournoyer
847b3dacd3
gnu: Add go-github-com-jiu2015-gotestspace.
* gnu/packages/golang-check.scm (go-github-com-jiu2015-gotestspace): New variable.

Change-Id: I4a7c627f14eb5d392c66a04e8e2c2aef7ca8921f
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-24 10:20:41 +01:00
Ashish SHUKLA
2b179d6a86
gnu: zfs: Update to 2.3.3.
* gnu/packages/file-systems.scm (zfs): Update to 2.3.3.

Change-Id: If6afca963e4de757d6163e2247a18e08f374c941
Signed-off-by: Zheng Junjie <z572@z572.online>
2025-06-24 14:46:56 +08:00
jgart
5c779b837c
gnu: lem: Update to 0025e1c.
* gnu/packages/text-editors.scm (lem): Update to 0025e1c.

Change-Id: I02ef7ea08ec985845eba16afcad1fc56b593b5f7
2025-06-24 02:42:23 -04:00
Mark Walker
4def93b9d4
gnu: Add ghc-hcodecs.
* gnu/packages/haskell-xyz.scm (ghc-hcodecs): New variable.

Change-Id: I3b03f9eb430e076f1055f17e28ae161925795c56
Signed-off-by: jgart <jgart@dismail.de>
2025-06-24 02:37:04 -04:00
jgart
e6dfa60b0b
gnu: trealla: Update to 2.75.0.
* gnu/packages/prolog.scm (trealla): Update to 2.75.0.

Change-Id: I29748a9864eee07d698e055eab50a3c458b2814c
2025-06-24 02:37:04 -04:00
Anderson Torres
9e5644ae68
gnu: icewm: Update to 3.8.0.
* gnu/packages/wm.scm (icewm): Update to 3.8.0.

Change-Id: I446a5a4b3ac4e53837cbd9b2d20caf8a893a68dc
Signed-off-by: Zheng Junjie <z572@z572.online>
2025-06-24 14:13:10 +08:00
Janneke Nieuwenhuizen
994b24e875
gnu: gcc-14: Update to 14.3.0.
* gnu/packages/gcc.scm (gcc-14): Update to 14.3.0.

Change-Id: I50b3c47f1e1c80129e2aee7a37e0fa6c57a3f9fc
Signed-off-by: Zheng Junjie <z572@z572.online>
2025-06-24 09:28:11 +08:00
Adrien 'neox' Bourmault
5d96ad23ed
gnu: speed-dreams: Update to 2.4.2.
* gnu/packages/games.scm (speed-dreams): Update to 2.4.2.

Change-Id: I7f9eb4ac45faa098da323ea3d9a9402e0a410bb2
Signed-off-by: Adrien 'neox' Bourmault <neox@gnu.org>
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:11:30 -04:00
Adrien 'neox' Bourmault
292faf9484
gnu: speed-dreams-data: Update to 2.4.2.
* gnu/packages/games.scm (speed-dreams-data): Update to 2.4.2.

Change-Id: I78207633d2a9eec0f8a1df5faa9d336ba6d19ab2
Signed-off-by: Adrien 'neox' Bourmault <neox@gnu.org>
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:11:30 -04:00
Maxim Cournoyer
256cbc1347
gnu: Add pls.
* gnu/packages/perl.scm (pls): New variable.

Change-Id: I76938567bbaedf355a49fb84e4d5964cea253d09
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:59 -04:00
Maxim Cournoyer
3f91b6221e
gnu: Add perl-tidy.
* gnu/packages/perl.scm (perl-tidy): New variable.

Change-Id: Ie5a7686c64331119d4432d001630eb29df10e4fe
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:59 -04:00
Maxim Cournoyer
89274de654
gnu: Add perl-io-async.
* gnu/packages/perl.scm (perl-io-async): New variable.

Change-Id: Ib44bcdfaef11ee81898aca8be30d59a3369575d5
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:59 -04:00
Maxim Cournoyer
ee9982cec1
gnu: Add perl-future-queue.
* gnu/packages/perl.scm (perl-future-queue): New variable.

Change-Id: I18203e511e09f928e19f2813e23e6adc486211c7
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:59 -04:00
Maxim Cournoyer
be65fc39fb
gnu: Add perl-future.
* gnu/packages/perl.scm (perl-future): New variable.

Change-Id: Idf22bd2ba31c01da6bee9756f5fba337e8f7aedb
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:59 -04:00
Maxim Cournoyer
a2723f3c94
gnu: Add perl-test-metrics-any.
* gnu/packages/perl-check.scm (perl-test-metrics-any): New variable.

Change-Id: Ief6b39d8a48907df8a2f0c34b09462ad3eba17ca
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Maxim Cournoyer
db4d3110b4
gnu: Add perl-test-future-io-impl.
* gnu/packages/perl-check.scm (perl-test-future-io-impl): New variable.

Change-Id: I7e3421f12c5f62ad3da2da13b01d40431736498c
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Maxim Cournoyer
071de28f36
gnu: Add perl-struct-dumb.
* gnu/packages/perl-check.scm (perl-struct-dumb): New variable.

Change-Id: Id5e384d1b174b0626cff093d43e18e551a67df73
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Maxim Cournoyer
84929efaba
gnu: Add perl-metrics-any.
* gnu/packages/perl.scm (perl-metrics-any): New variable.

Change-Id: I0df9c005d5cf8d0214c52bce9c504c7d2de8d5fe
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Maxim Cournoyer
597119f739
gnu: Add perl-pod-markdown.
* gnu/packages/perl.scm (perl-pod-markdown): New variable.

Change-Id: Ic298dbd9a1257d7d7cfb66d61897fa972c1078e2
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Maxim Cournoyer
87b786649a
gnu: Add perl-ppr.
* gnu/packages/perl.scm (perl-ppr): New variable.

Change-Id: I9a0ea9aa0c7eb6fb4faad3bac717b69e019d45aa
Signed-off-by: jgart <jgart@dismail.de>
2025-06-23 20:06:58 -04:00
Danny Milosavljevic
fd256bb786
gnu: mono@2.4.2.3: Make it reproducible.
* gnu/packages/patches/mono-2.4.2.3-fix-parallel-builds.patch: New file.
* gnu/packages/patches/mono-2.4.2.3-reproducibility.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add references to those patches.
* gnu/packages/dotnet.scm (mono-2.4.2.3)[source]: Use those patches.
[arguments]<#:phases>[disable-mono-mini-timestamps]: New phase.

Change-Id: Ib0a57d2e93b8b72c10fa9854a77eadeee578266c
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 23:05:44 +01:00
Danny Milosavljevic
4f10384b54
gnu: mono@1.9.1: Make it reproducible.
* gnu/packages/patches/mono-1.9.1-reproducibility.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/dotnet.scm (mono-1.9.1)[source]: Add it.
[arguments]<#:make-flags>: Add NO_SIGN_ASSEMBLY.
<#:phases>[delete-mdb]: New phase.
[disable-signing]: New phase.

Change-Id: I094692a1aa74d7737fa781e88582e8a0a3a27dbb
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 23:05:27 +01:00
Nico Rikken
d0ba40a7a5
gnu: ansel: Update to 0.0.0-1.b51cfa3.
* gnu/packages/photo.scm (ansel): Update to 0.0.0-1.b51cfa3.
[source]: Omit the redundant .git suffix.

Change-Id: Ied9b4acada8c18543a251dd74eb402d2deffb4c6
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 21:56:53 +01:00
John Kehayias
14fb6ad4bf
gnu: pass-git-helper: Update to 3.3.0.
* gnu/packages/password-utils.scm (pass-git-helper): Update to 3.3.0.
[build-system]: Switch to pyproject-build-system.
[arguments]<#phases>: Don't replace check phase but make a pre-check phase to
just to set HOME.
[native-inputs]: Add python-pytest-cov, python-setuptools, and python-wheel.

Change-Id: I2d06c647b6edd7ec83d611b398ca3faa6a22480c
2025-06-23 16:55:07 -04:00
Thomas Zdyrski
c16785a11e
gnu: perl-pdf-api2: Update to 2.047.
* gnu/packages/perl.scm (perl-pdf-api2): Update to 2.047.

Change-Id: Ifb756e19c1525cb7d2609a2680ab4ac59d12f602
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 21:11:37 +01:00
Cayetano Santos
7876cc4480
gnu: tomb: Update to 2.11.
* gnu/packages/crypto.scm (tomb): Update to 2.11. Use G-expressions.
[home-page]: Fix URL.
[phases]{check}: Respect #:tests? parameter.
[native-inputs]: Remove sudo; add which. Remove labels.
[inputs]: Add argon2. Remove labels.

Change-Id: I01c24feac7f5b9088469f0f3ac982557293223db
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 21:05:06 +01:00
Danny Milosavljevic
6f71a2a3a0
gnu: emacs-aio: Source from maintained fork.
The upstream emacs-aio repository is unmaintained with numerous open
issues.  Notably, native compilation is broken on Emacs 30.  Change the
package source to a fork merging several open PRs and fixing native
compilation.

* gnu/packages/emacs-xyz.scm (emacs-aio)[source]: Switch to recent fork.

Change-Id: Idc6a344595690bf7688c7571abd67b1c5a81faa0
2025-06-23 21:56:11 +02:00
Ashish SHUKLA
43de32782f
gnu: tuxedo-keyboard: Update to 4.14.1.
* gnu/packages/linux.scm (tuxedo-keyboard): Update to 4.14.1.

Change-Id: Ie2da4824051bd7fb14e0a52acf808e9dcecc5e30
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 20:44:16 +01:00
Ashish SHUKLA
65017fbc42
gnu: ugrep: Update to 7.5.0.
* gnu/packages/search.scm (ugrep): Update to 7.5.0.

Change-Id: Id541539e0ebd1885c04ccaa4daa16af6c1e12d51
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-06-23 20:33:02 +01:00