1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-06 21:20:33 +02:00
Commit Graph

164414 Commits

Author SHA1 Message Date
Rutherther
ab63e29e90 installer: Drop uri from provenance log.
To synchronize the artifacts made from Cuirass, pre-inst-env
and time-machine, drop the url from provenance sexp.

* gnu/installer.scm (provenance-sexp): Drop url.

Change-Id: Ibe2515abdc92853ce06c0381dd03cc61b2077335
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:46 +01:00
Rutherther
e2857e21fa system: install: Remove current-guix url override.
Prefer parameterization of current-guix in release artifacts
generation.

* gnu/system/install.scm (%installation-service): Use (current-guix)
directly in guix service configuration.

Change-Id: Ifa363465e6a4f6936d0e51eaf1b33872519e2b0a
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:46 +01:00
Rutherther
105dbf7dee vm-image.tmpl: Remove current-guix url override.
This simplifies things thanks to the release artifacts now, they have been
rewritten to Guile and can now supply current-guix-package as a parameter, as
was intended. That way the checkout is not leaked for the release artifacts.

* gnu/system/examples/vm-image.tmpl
(guix-package-commit): Remove variable.
(operating-system): Use (current-guix) directly.
* gnu/system/examples/vm-image-efi.tmpl: Likewise.

Change-Id: Iabf1bb5bbb86b9984bfb87ba0543782a6dce3192
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:45 +01:00
Rutherther
d226cc4933 image: system-iso9660-image: Propagate image-name to derivation name.
* gnu/system/image.scm (system-iso9660-image): Use name from image-name
instead of hardcoded image.iso.

Change-Id: I3cea3857729c2eb7d6728f650db7fb33cf4c8c8a
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:44 +01:00
Rutherther
8ba84edf99 linux-initrd: Support more virtio modules in initrd.
Adds mmio and scsi modules for virtio. scsi one is needed for using
virtio-scsi-pci, that can be a common option on aarch64, where only two
options pop up for mounting disks:
- virtio-scsi-pci
- virtio-blk

While virtio-blk should generally be preferred, sometimes virtio-scsi-pci pops
up first on the internet, so people can use it.

virtio-mmio is a necessity on Aarch64 for virtio-blk to work.

* gnu/system/linux-initrd.scm (default-initrd-modules): Add virtio_mmio and
virito_scsi.

Change-Id: Ia8fabb5594893ef1712359d27d482d9f44dc89c0
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:42 +01:00
Rutherther
b7a1223052 system: vm-image-efi.tmpl: Add example efi vm image.
This is a copy of vm-image.tmpl, but with
efi bootloader. Since user ends up with this
config in their /run/current-user/configuration.scm
and the regular way to continue is to copy
that file and reconfigure off of it, it seems
better to just keep distinct configuration.

Moreover xf86-video-intel is removed,
because it doesn't compile on aarch64.

* gnu/system/examples/vm-image-efi.tmpl

Change-Id: I0f72ac5a775339ee84cb1a4046ca5a8deca0e2ea
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:42 +01:00
Rutherther
9e7e40b8bd services: xorg: Return only supported packages in %default-xorg-modules.
The xorg modules are used inside of services that's thunked. So we can
make them depend on the %current-system.

* gnu/services/xorg.scm
(default-xorg-modules): New variable.
(%default-xorg-modules): Return result of (default-xorg-modules).

Change-Id: I10f722e52d598ce3e83ef3f200b3bd953bc08e17
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:41 +01:00
Rutherther
0801604990 gnu: make-iso9660-image: Do not compress any kernel, compress man pages.
Because the linux image is called differently based on the architectures,
see system-linu/-image-file-name from gnu/system.scm, the kernel image
on aarch64, mips and armhf has still been compressed. This means that
grub cannot boot.

Man pages have moved from gz to zst, so compress them as well.

* gnu/build/image.scm (make-iso9660-image): Do not compress Image, vmlinuz and
zImage; Compress all man pages.

Change-Id: I68b35f383c84ff231865d580aa9e79d9fd88ace1
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:40 +01:00
Rutherther
5623e63313 system: installation-os: Support efi-only.
Aarch64 doesn't support grub-pc, so we cannot
use the regular grub-bootloader, grub-efi-bootloader
has to be used.

Since neither packages nor bootloader are thunked,
there seems to be no other choice than using something
from the outside environment, such as an environment
variable to decide what bootloader to use.

For convenience, a procedure is made to be used from
other Guile code, instead of relying on environment
variables.

* gnu/system/install.scm
(make-installation-os): New variable; Use grub-efi-bootloader when
efi-only? is #t; Use bootloader package in packages instead of grub-pc.
(installation-os): Replace with call of make-installation-os with default
arguments.

Change-Id: I34ec8da6079617f39805b3e1168bad4a42d84cab
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:39 +01:00
Rutherther
efc32c6684 image: Add /boot/efi filesystem if operating-system specifies it.
Instead of forgetting about the /boot/efi system completely, re-add it
with proper label. This way lightweight.tmpl, desktop.tmpl still
boot when supplied to guix system image. That was the reason for
removing /boot/efi file-system in the first place. Removing it however
means the target system cannot be reconfigured by default, as the
esp is not mounted.

* gnu/system/image.scm
(partition-has-flag?): New variable.
(root-partition?): Use it.
(find-partition-with-flag): New variable.
(find-root-partition): Use it.
(find-esp-partition): New variable.
(operating-system-for-image): Add /boot/efi file-system with proper
label instead of removing it completely.

Change-Id: I3ef2120059d8bbf76170d10ae718cb0de637f453
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:39 +01:00
Rutherther
20157dae27 image: Add qcow2-gpt image type.
qcow2 is a mbr-hybrid image. But on aarch64, we
have to use grub-efi bootloader. For that bootloader,
gpt should be used and Guix errors if it isn't (due to
failed check in Guix code). So it's impossible to generate
qcow2 type aarch64 image without using customized bootloader.
One would have to define their own image instead of using
the ones pre-defined.

* gnu/system/system.scm (qcow2-gpt-image-type): New variable.
* doc/guix.texi: Document qcow2-gpt and its use.

Change-Id: I93f0880c7ca2d3f934067c12dd1143ad20828333
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:38 +01:00
Rutherther
2576c66e47 image: operating-system-for-image: Support AArch64 iso.
Let the user decide for grub/grub-efi in cases where
grub-hybrid is unsupported. This is the case on
aarch64, where grub-pc is not supported, so only
grub-efi can be used.

* gnu/system/image.scm (operating-system-for-image):
Do not replace bootloader with grub-mkrescue-bootloader
for iso9660 when grub-hybrid is not supported.

Change-Id: Icd2b68155935b1d9599c1b0df22f0c80a2e36d6a
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 23:00:37 +01:00
Noé Lopez
587fd2dad4 etc: Add AppArmor profile for the daemon.
* .gitignore: Add etc/apparmor.d/tunables/guix.
* Makefile.am (nodist_apparmor_profile_DATA)
(nodist_apparmor_profile_tunables_DATA): Define it.
* configure.ac: Generate etc/apparmor.d/tunables/guix. Add
--with-apparmor-profile-dir option.
* etc/apparmor.d/guix-daemon: New file.
* etc/apparmor.d/tunables/guix.in: New file.
* doc/guix.texi: Document AppArmor profiles.
* gnu/packages/package-management.scm (guix): Add future changes commented.

Change-Id: Iac7df9d642383cc46a2d450c3badef31199ab041
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-22 22:48:57 +01:00
Aaron Covrig
a2df6c460f gnu: pius: Update to 3.0.0-0.5f7c10b.
* gnu/packages/gnupg.scm (pius)[source]: Switch to git-fetch.
[build-system]: Switch to pyproject-build-system.
[arguments]<#:check>: Execute project test script.
[native-inputs]: Add python-setuptools.
[home-page]: Update url.

Change-Id: I8d1228789cde2de4dda67a07f9859bb47e510608
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
Modified-by: Cayetano Santos <csantosb@inventati.org>
2025-12-22 18:56:48 +01:00
jgart
5ecec89784 gnu: Add hare-mcron.
* gnu/packages/hare-apps.scm (hare-mcron): New variable.

Change-Id: I324f5711cf359ac996111f6adcb71db5ff68dda5
2025-12-22 10:44:13 -06:00
jgart
5192dc2ff3 gnu: trealla: Update to 2.88.1.
* gnu/packages/prolog.scm (trealla): Update to 2.88.1.

Change-Id: I8770e77950a53ef0284fe50248bed5fab01d70a0
2025-12-22 10:18:17 -06:00
Ashvith Shetty
4b25873c12 services: Modernize redis service.
* gnu/services/databases.scm
(redis-configuration): Rewrite using `define-configuration'.
(redis-shepherd-service): Honor it.
* doc/guix.texi (Database Services) <redis>: Regenerate
documentation.

Change-Id: I5b99822ca3d8d23fb5133497d00eada0336d0c65
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #2158
2025-12-22 15:42:39 +01:00
Yelninei
b00a27c427 gnu: shepherd@1.0: Don't inherit package arguments.
Followup to e1038aee6d.

Previously when cross compiling the fibers directory was reset to fibers 1.3
because evaluating the arguments of shepherd@0.10 with '(package-arguments
shepherd-0.10)' kept the reference to the fibers input of shepherd@0.10.

Work around this by not using 'substitute-keyword-arguments' and replacing
'this-package-input' with 'search-input-file'.

* gnu/packages/admin.scm (shepherd-1.0)[arguments]:
Replace 'substitute-keyword-arguments' with explicit arguments.
Use search-input-file in 'set-fibers-directory phase to search for the cross fibers.

Change-Id: Ia1061d8cea531569385f4a0136cfd22f27ce5a0e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Merges: #4672
2025-12-22 15:42:39 +01:00
Ashish SHUKLA
09eda1627e gnu: drawterm: Update to 20251123.
* gnu/packages/plan9.scm (drawterm): Update to 20251123.
(drawterm-wayland)[inputs]: Add libdecor.

Closes: guix/guix#4894
Change-Id: Ibd869ee9acfb5d6aef0d58c13f6477fc2ac8ba47
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-12-22 18:06:24 +08:00
Ashish SHUKLA
0efdde91f6 gnu: labwc: Update to 0.9.3.
* gnu/packages/wm.scm (labwc): Update to 0.9.3.

Closes: guix/guix#4981
Change-Id: I3f80aed5a365b2713dc9f5f0272bb225f3004c5e
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-12-22 18:06:24 +08:00
Patrick Norton
9ce8160844 gnu: nml: Update to 0.8.1.
* gnu/packages/game-development.scm (nml): Update to 0.8.1.
[arguments]: Fix test phase.

Closes: guix/guix#5004
Change-Id: I03b80af19d809295411b85df491d7423837e6f59
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-12-22 18:06:23 +08:00
Andy Tai
1dfcd17b4d gnu: monado: update to 25.1.0.
* gnu/packages/graphics.scm (monado): Update to 25.1.0.

Change-Id: Idd4bc66f1fd03fb9805647424dec0d5cda8bc123
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2025-12-22 10:33:29 +01:00
bdunahu
46d1961908 gnu: Add iaito.
* gnu/packages/engineering.scm (iaito): New variable.

Change-Id: I82f84d09b31dca5373b290c1b5c4388e86941bc0
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-12-22 15:54:59 +09:00
Cayetano Santos
4de4d270fb gnu: Add python-cocotbext-axi.
* gnu/packages/electronics.scm (python-cocotbext-axi): New variable.

Change-Id: I1ca017ef9d9253f01dd74f25de04ed2551b4a620
2025-12-22 07:50:15 +01:00
Cayetano Santos
fb62e8f046 gnu: Add python-cocotb-test.
* gnu/packages/electronics.scm (python-cocotb-test): New variable.

Change-Id: Iefe86be6c6d15280694e79b13ec013056346be01
2025-12-22 07:50:15 +01:00
Cayetano Santos
b063cd4aa7 gnu: python-cocotb: Complete tests.
* gnu/packages/electronics.scm (python-cocotb)[arguments]: Add
’run-examples #:phase.

Change-Id: I3347baa3d21e6aec80d4e72a4d67dbe003bd8c2e
2025-12-22 07:50:15 +01:00
Stuart Dilts
228154a5bd gnu: cl-xkbcommon: Update to 0.2.0.
* gnu/packages/lisp-xyz.scm (cl-xkbcommon): Update to 0.2.0.
Change-Id: I6ce2c9115ad6b1b0926dcceae83270ffaa1dc4d8
Signed-off-by: jgart <jgart@dismail.de>
2025-12-21 20:54:48 -06:00
Hugo Buddelmeijer
4281704a25 build: Make /etc/hosts a regular file again.
Commit 7c70a1080a0823fd3dd0f7ee83e5d7654ab6a872 ("gnu/system: Simplify the
creation of /etc (was: Turn /etc/localtime into a symlink)") made all of the
files under /etc other than sudoers symlinks to their store target.  This
causes a problem at least for the vpn-slice service, which expects to be able
to write to said file.

* gnu/build/activation.scm (activate-etc): Special-case /etc/hosts to make it
a regular file.

Change-Id: Ia42dacd8731edba5e72442ab0399bdc3f7101989
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
Fixes: #4800
2025-12-22 10:46:52 +09:00
Maxim Cournoyer
cb8db48a17 gnu: luanti-mineclonia: Lint synopsis and description.
* gnu/packages/luanti.scm (luanti-mineclonia)
[synopsis]: Drop leading article.
[description]: Use double spaces.

Change-Id: I3c0decb3135cbdeb925636633e16bc3a9267f53a
2025-12-22 09:05:17 +09:00
Maxim Cournoyer
a448bfa85a gnu: luanti-mineclonia: Update to 0.118.1.
* gnu/packages/luanti.scm (luanti-mineclonia): Update to 0.118.1.

Change-Id: I788954d1372921e70a36cca77fc4d70f84811295
2025-12-22 09:05:17 +09:00
Sharlatan Hellseher
8148ca8437 gnu: grammalecte: Switch to pyproject, fix build.
* gnu/packages/dictionaries.scm (grammalecte):
[build-system]: Switch to pyproject-build-system.
[arguments] <tests?>: No tests.
[native-inputs]: Add python-setuptools.

Change-Id: Ief9385fc1dab0f77430843c7a5a2343a2c3e25a1
2025-12-21 23:30:45 +00:00
Sharlatan Hellseher
6168d37404 gnu: podman-compose: Use unittest.
* gnu/packages/containers.scm (podman-compose):
[arguments] <test-backend, test-flags>: Use unittest as seen in
project's GitHub Actons.
<phases>: Remove 'pre-check.
[native-inputs]: Remove python-pytest and python-wheel.

Change-Id: I6da2f7f4c55f4cd22919d7f7827b2be58993f2e2
2025-12-21 22:20:16 +00:00
Foster Hangdaan
992bcd7eed gnu: podman-compose: Update to 1.5.0.
* gnu/packages/containers.scm (podman-compose): Update to 1.5.0.
[arguments] <test-flags>: Only run tests in `tests/unit`.
[arguments] <phases>: Add before-checks phase to fix a ModuleNotFoundError.

Change-Id: Ia9b8900bd71c848559b067d48e7eb4bf212f0f73
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-12-21 22:18:22 +00:00
Francisco-Galindo
303b10692b gnu: Add python-simpy.
* gnu/packages/simulation.scm (python-simpy): New variable.

Change-Id: Ic95e6b0656dc2e2deffb543491c64ad5ae14632c
Modified-by: Sharlatan Hellseher <sharlatanus@gmail.com>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-12-21 22:08:56 +00:00
Hugo Buddelmeijer
4d033008a2 gnu: python-2.7: Hide CVE-2023-36632
* gnu/packages/python.scm (python-2.7):  Hide CVE-2023-36632

Change-Id: Ifd217b0ecfb0ef5025fbc313c6c7a7e771501c77
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-12-21 22:08:55 +00:00
Sergey Trofimov
5b7f0a952c gnu: emacs-yeetube: Simplify locate-binaries phase.
* gnu/packages/emacs-xyz.scm (emacs-yeetube)
[arguments]<#:phases>{locate-binaries}: Reduce code duplication.

Change-Id: Ibe5ae19ec7877a81b80f28052680feab7fb154ab
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2025-12-21 18:02:14 +01:00
Sergey Trofimov
724d0cc753 gnu: emacs-yeetube: Update to 2.1.10.
* gnu/packages/emacs-xyz.scm (emacs-yeetube): Update to 2.1.10.

Change-Id: I6db1e506b050454cd9b95292c95800370ea6da03
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2025-12-21 18:02:05 +01:00
Cayetano Santos
b172762c2d gnu: Remove python-urllib3-next.
* gnu/packages/python-web.scm (python-urllib3-next): Delete variable.

Change-Id: If58db641c59c3a2e63e1b043a1840dac0f7ae327
2025-12-21 17:54:25 +01:00
Cayetano Santos
5b0873aeb1 gnu: xkcdpass: Modernize package.
* gnu/packages/password-utils.scm (xkcdpass)[source]: Use direct #:url.
[home-page]: Move before synopsis.

Change-Id: I6ba4325818f2c6deff3b67a22b48f0cb4cdda929
2025-12-21 17:47:01 +01:00
moksh
e235f6d978 gnu: xkcdpass: Switch to pyproject-build-system.
* gnu/packages/password-utils.scm (xkcdpass):
  [build-system]: Change to pyproject-build-system.
  [arguments] <test-backend>: Use "unittest".
  [native-inputs]: Add python-setuptools.

Change-Id: I5d441bde3e1cce3e466e07ecfb69ef47b28b67ec
Signed-off-by: Cayetano Santos <csantosb@inventati.org>
2025-12-21 17:45:05 +01:00
Cayetano Santos
99d7436c1f gnu: python-canvasapi: Update to 3.4.0.
* gnu/packages/python-web.scm (python-canvasapi): Update to 3.4.0.
[native-inputs]: Remove python-urllib3-1.26 and python-wheel; add python-urllib3.

Change-Id: I565de1aa396b54d028019a90a1b31f75434cdcf4
2025-12-21 17:39:56 +01:00
Hugo Buddelmeijer
b1a4c062ce gnu: roguebox-adventures: Fix build.
* gnu/packages/games.scm (roguebox-adventures): Fix build.
[inputs]: Remove python-tmx.

Closes: guix/guix#4995
Change-Id: I67f7736b935d7cb5e03f5b4a89e5aa5487668e19
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2025-12-21 19:39:06 +08:00
Ian Eure
1434b4e6c7 gnu: python-pypresence: Update to 4.6.1 and fix the build.
* gnu/packages/messaging.scm (python-pypresence): Update to 4.6.1.
(native-inputs): Add build/test inputs.
(arguments): Declare the build backend.
(arguments): Disable tests.

Change-Id: I798ea40f4be2a1b15a7eed23673529b3a8a0cb41
2025-12-20 14:12:32 -08:00
moksh
cb927b546e gnu: librewolf: Update to 146.0.1-1 [security-fixes].
contains fixes for:
CVE-2025-14860: Use-after-free in the Disability Access APIs component
CVE-2025-14861: Memory safety bugs fixed in Firefox 146.0.1

* gnu/packages/librewolf.scm (librewolf): Update to 146.0.1-1.

Change-Id: I0dc2c26bf6b301cd04ce2897b3688f4a3a102e24
2025-12-20 11:06:07 -08:00
Alexey Abramov
4eef7ffd5e gnu: dvdbackup: Fix build with libdvdread 6.1.0+.
* gnu/packages/patches/dvdbackup-with-libdvdread-6.1.0+.patch: Add the
patch to fix the build.
* gnu/local.mk: Ship it.
* gnu/packages/video.scm: Use it.
2025-12-20 10:24:55 -08:00
Alexey Abramov
d392af43c5 gnu: libdvdnav: Update to 6.1.1.
* gnu/packages/video.scm (libdvdnav): Update to 6.1.1.
2025-12-20 10:24:55 -08:00
Alexey Abramov
63182d1ac9 gnu: Add lsdvd.
* gnu/packages/video.scm (lsdvd): New variable.
2025-12-20 10:24:54 -08:00
Rutherther
d7fd4eab51 services: shared-cache: Require user-file-systems.
Newly user-file-systems should be required by services
that do operations with mounts.

Change-Id: Ib0438bb2e783e1d7131dcea6a8c166e83850de81
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-20 13:37:12 +01:00
Dariqq
32988df493 services: file-systems: Reverse order of unmounting manual mounts.
* gnu/services/base.scm (file-system-shepherd-services): Reverse order of
mount-points in service 'user-file-systems.

Change-Id: I68df0c22bc6bacdc866b9adf62e7059f20e5842f
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-20 13:37:11 +01:00
Dariqq
9aa7f05639 services: file-systems: Make user-file-systems depend on file-systems.
Previously 'user-file-systems depended only on 'file-systems without any requirements.
This inverts the logic to have
file-systems <- user-file-systems <- user-processes

to ensure that all user mounts are already unmounted when shepherd managed
file systems get unmounted.

Fixes: guix/guix#4445
Fixes: guix/guix#1703

* gnu/services/base.scm (file-system-shepherd-services): Remove requirement
of 'file-systems on 'user-file-systems.
Add dependency of 'user-file-systems on 'file-systems.
(file-system-service-type): Add 'user-file-systems to user-processes extension.

Change-Id: I9d89f682fb4b4673fa135d17b2b188788b9f8db1
Signed-off-by: Rutherther <rutherther@ditigal.xyz>
2025-12-20 13:37:11 +01:00