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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
gnu: Add hare-mcron. * gnu/packages/hare-apps.scm (hare-mcron): New variable. Change-Id: I324f5711cf359ac996111f6adcb71db5ff68dda5
gnu: trealla: Update to 2.88.1. * gnu/packages/prolog.scm (trealla): Update to 2.88.1. Change-Id: I8770e77950a53ef0284fe50248bed5fab01d70a0
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
gnu: shepherd@1.0: Don't inherit package arguments. Followup to e1038aee6da92263f0c3d2fdb91d46ee5b63d2ec. 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
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>
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>
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>