summaryrefslogtreecommitdiff
path: root/gnu/system
AgeCommit message (Expand)Author
2023-09-20image: Do not allow BIOS bootloader and GPT....When using grub-bootloader with a GPT image, GRUB will fail during installation with a cryptic error message. * gnu/system/image.scm (system-disk-image): Raise an error when trying to use a non-EFI compatible bootloader with a GPT image partitioning. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Mathieu Othacehe
2023-09-20image: Introduce the mbr-hybrid-raw image type....Until 209204e23b39af09e0ea92540b6fa00a60e6a0ae and d57cab764122af69d52d8cc9c843456044e5d7bc, the default image type used by "guix system image" was an MBR image with an ESP partition. Having both an MBR image and an ESP partition is handy because the image will boot on most x86 based systems using legacy BIOS and/or UEFI. We now have a distinction between MBR images and EFI images. Introduce a new MBR hybrid image type and default to it to restore the default behaviour. This also fixes the images section of (gnu ci) that was trying to install a BIOS bootloader on an EFI, GPT image and failing to do so. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Mathieu Othacehe
2023-09-17gnu: file-systems: Add variable %base-live-file-systems....* gnu/system/file-systems.scm (%base-live-file-systems): New variable. * gnu/system/install.scm (installation-os): Use %base-live-file-systems. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Nicolas Graves
2023-09-16system: hurd: Override locale-libcs harder....This really removes the locale-2.33 dependency running `guix system build bare-hurd.tmpl' on the Hurd, that somehow still managed to leak-in? * gnu/system/hurd.scm (%base-packages/hurd)[locale-libcs]: New field. Janneke Nieuwenhuizen
2023-09-16system: hurd: Add nss-certs to %base-packages/hurd....This fixes the recently added "rewrite-url, to-version specified" test. * gnu/system/hurd.scm (%base-packages/hurd): Add nss-certs. Janneke Nieuwenhuizen
2023-09-16system: hurd: Add procps to %base-packages/hurd....* gnu/system/hurd.scm (%base-packages/hurd): Add procps. Janneke Nieuwenhuizen
2023-09-16locale: Set %default-locale-definitions to glibc/hurd on the Hurd....* gnu/system/locale.scm (%default-locale-libcs): Use only glib/hurd when building on the Hurd. Janneke Nieuwenhuizen
2023-09-11system: vm-image: Remove duplicate packages....* gnu/system/examples/vm-image.tmpl (use-package-modules): Remove unneeded modules. (operating-system)[packages]: Remove nvi, wget. Efraim Flashner
2023-08-20Revert "gnu: system: Add home-directory-permissions field to <user-account>."...This reverts commit e9a5eebc785cb843034b38c5c5a6dd10904bdf2a, which as far as I can tell breaks system roll-backs thusly: [...] In gnu/build/accounts.scm: 239:27 3 (_ #<<password-entry> name: "root" password: "x" uid: 0 gid: 0 real-name: "System >) In unknown file: 2 (string-join ("root" "x" "0" "0" "System administrator" "/root" #t) ":" #<undefined>) In ice-9/boot-9.scm: 1685:16 1 (raise-exception _ #:continuable? _) 1685:16 0 (raise-exception _ #:continuable? _) ice-9/boot-9.scm:1685:16: In procedure raise-exception: In procedure string-append: Wrong type (expecting string): #t Tobias Geerinckx-Rice
2023-08-25gnu: system: Add home-directory-permissions field to <user-account>....* gnu/system/accounts.scm (<user-account>)[home-directory-permissions]: New field. (user-account-home-directory-permissions): New accessor. * gnu/build/activation.scm (activate-users+groups): Use home directory permission bits from the user account object. * doc/guix.texi (User Accounts): Document new field. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> David Thompson
2023-08-25image: Add mbr-raw-image-type and use by default....* gnu/system/image.scm (mbr-disk-image, mbr-raw-image-type): New variables. (qcow2-image-type): Inherit mbr-disk-image. * guix/scripts/system.scm (%default-options): Use mbr-raw-image-type by default. * gnu/tests/install.scm (run-install): Use mbr-raw in the tests. * doc/guix-cookbook.texi (Guix System Image API): Update the list of image types. * doc/guix.texi (Invoking guix system, System Images, image-type Reference): Add mbr-raw and switch documented default to it. Josselin Poiret
2023-08-22examples: Avoid duplicate SDDM service for Plasma on aarch64-linux....This is a followup to cf28f46930f1ea4087d84c162cfacfcdff842b1f. * gnu/system/examples/plasma.tmpl (services): Remove both 'gdm-service-type' and 'sddm-service-type' from %DESKTOP-SERVICES. Ludovic Courtès
2023-08-21examples: Avoid 'modify-services' to remove GDM....This led to a 'tests/guix-system.sh' failure on aarch64-linux: …/plasma.tmpl:60:13: error: modify-services: service 'gdm' not found in service list This is because 'gdm-service-type' is not among %DESKTOP-SERVICES on that architecture. * gnu/system/examples/plasma.tmpl (services): Use 'remove' rather 'modify-services' + 'delete'. Ludovic Courtès
2023-08-11Merge remote-tracking branch 'origin/master' into kde-updates宋文武
2023-08-03examples: Add plasma operating-system example template....* gnu/system/examples/plasma.tmpl: New file. * Makefile.am (EXAMPLES): register it. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Zheng Junjie
2023-08-08file-systems: Use cgroups v2....cgroup v2 is the next generation of the control groups API. This patch replaces the cgroup v1 file systems with the unified cgroup v2 file system. cgroup v2 allows for things like containerd/podman to run rootless containers and opens guix system up to running things like Kubernetes. Thanks to Hilton Chain <hako@ultrarare.space> for suggesting the Docker service change. * gnu/system/file-systems.scm (%control-groups): Change to a single "cgroup2" mount point. * gnu/services/docker.scm (docker-shepherd-service): Trim 'requirement' field accordingly. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Sam Lockart
2023-07-26system: accounts: Export <user-account>.Maxim Cournoyer
2023-07-13system: hurd: Add netdde to %base-packages/hurd....* gnu/system/hurd.scm (%base-packages/hurd): Add netdde. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen
2023-07-13services: childhurd: Bump default qemu memory to 2048MB....When booting with pci-arbiter and rumpdisk and using 1024MB of memory for qemu, booting hangs, or seems to hang, at the end of the rumpdisk boot messages. At least 1200MB is required, currently. * gnu/services/virtualization.scm (<hurd-vm-configuration>)[memory-size]: Bump to 2048. * gnu/system/examples/bare-hurd.tmpl: Suggest using 2048 here too. Update example `guix system image' and "qemu" command lines too. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen
2023-07-07image: Prefer gpt partition table for efi images...* gnu/system/image.scm (efi-disk-image): Use gpt partition-table-type. (efi32-disk-image): Use gpt partition-table-type. (qcow2-image-type): Use mbr partition-table-type explicitly. * gnu/tests/image.scm: Assert partition table type of efi-disk-image. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Sergey Trofimov
2023-06-24linux-container: Pass '--disable-chroot' to 'guix-daemon'....This allows for the use of Guix within a non-privileged Docker container produced by 'guix system image -t docker'. * gnu/system/linux-container.scm (containerized-operating-system): Change 'guix-configuration' to add "--disable-chroot". Ludovic Courtès
2023-06-18uuid: Fix NTFS UUID stringification....Previously, (ntfs-uuid->string (string->ntfs-uuid"5234ED0D34ECF53F")) would yield "5234EDD34ECF53F". Reported by sughosha in #guix. * gnu/system/uuid.scm (ntfs-uuid->string): Pad hex bytes with zero when needed. Tobias Geerinckx-Rice
2023-06-19gnu: image: Build partitions with only necessary inputs....* gnu/system/image.scm (system-disk-image)[partition-image]: Adjust the inputs used by the image-builder to only use the packages necessary to build that partition. Efraim Flashner
2023-06-17gnu: Use target-hurd?, system-hurd? instead of hurd-target?, hurd-system?....* gnu/packages/hurd.scm (hurd-target?): Remove. (hurd-system?): Move to... * guix/utils.scm (system-hurd?): ...here. * gnu/packages/*: Update all users, removing (gnu packages hurd) include where now unused. Janneke Nieuwenhuizen
2023-06-14system: images: Add unmatched module....* gnu/system/images/unmatched.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Efraim Flashner
2023-06-14gnu: image: Add support for unformatted partitions....* gnu/build/image.scm (make-unformatted-image): New procedure. (make-partition-image): Add support for unformatted partition. * gnu/system/image.scm (system-disk-image)[partition->gpt-type]: Add case for using unformatted partition uuid. Efraim Flashner
2023-06-09linux-container: Adjust to 'modify-services' semantic change....This is a followup to dbbc7e946131ba257728f1d05b96c4339b7ee88b: 'nscd-service-type' isn't necessarily present in OS, so we cannot use the 'modify-services' as it would now error out. This was happening with the "guix system docker-image" test in 'tests/guix-system.sh'. * gnu/system/linux-container.scm (containerized-operating-system): Use 'filter-map' instead of 'remove' + 'modify-services'. Ludovic Courtès
2023-06-09system: account: Fix default value....Fixes a regression introduced in 66ecffbeba0685ff2f1071db8aeb2393986afb97. * gnu/system/shadow.scm (account-service-type)[default-value]: Change to the empty list. Ludovic Courtès
2023-05-21system: pam: Change 'stop' method to return #f....When the 'stop' method returns a truth value, shepherd interprets it as potential failure and logs it. * gnu/system/pam.scm (pam-shepherd-service): Change 'stop' method to return #f. Ludovic Courtès
2023-05-16services: Add default values....* gnu/services.scm (boot-service-type, activation-service-type, etc-service-type, profile-service-type): Add default-value. * gnu/system/shadow.scm (account-service-type): Add default-value. Andrew Tropin
2023-05-12system: default-skeletons: Merge search-paths of multiple profiles....Fixes <https://issues.guix.gnu.org/20255>. * gnu/system/shadow.scm (default-skeletons)[bash_profile, zprofile]: Merge search-paths from multiple profiles via "guix package". 宋文武
2023-05-11system: pam: Let PAM extensions add shepherd requirements....* gnu/system/pam.scm (<pam-extension>): New record type. (pam-shepherd-service): Add Shepherd synchronization point. * gnu/services/mail.scm (dovecot-shepherd-service) * gnu/services/lightdm.scm (lightdm-shepherd-service) * gnu/services/mail.scm (opensmtpd-shepherd-service) * gnu/services/sddm.scm (sddm-shepherd-service) * gnu/services/ssh.scm (lsh-shepherd-service, openssh-shepherd-service) * gnu/services/xorg.scm (slim-shepherd-service, gdm-shepherd-service) * gnu/services/base.scm (greetd-shepherd-services): Add PAM requirement. * gnu/system/pam.scm (/etc-entry, extend-configuration, pam-root-service-type, pam-root-service) * gnu/services/authentication.scm (pam-ldap-pam-service) * gnu/services/base.scm (pam-limits-service-type) (greetd-pam-service) * gnu/services/desktop.scm (pam-gnome-keyring) * gnu/services/kerberos.scm (pam-krb5-pam-service) * gnu/services/pam-mount.scm (pam-mount-pam-service): Adapt to use pam-extension. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-04-19locale: Add glibc 2.33 to '%default-locale-libcs'....Fixes <https://issues.guix.gnu.org/62934>. Reported by Brian Cully <bjc@spork.org>. * gnu/system/locale.scm (%default-locale-libcs): Add GLIBC-2.33. Ludovic Courtès
2023-04-14Merge branch 'master' into core-updates....Conflicts: gnu/local.mk gnu/packages/build-tools.scm gnu/packages/certs.scm gnu/packages/check.scm gnu/packages/compression.scm gnu/packages/cups.scm gnu/packages/fontutils.scm gnu/packages/gnuzilla.scm gnu/packages/guile.scm gnu/packages/ibus.scm gnu/packages/image-processing.scm gnu/packages/linux.scm gnu/packages/music.scm gnu/packages/nss.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/qt.scm gnu/packages/ruby.scm gnu/packages/shells.scm gnu/packages/tex.scm gnu/packages/video.scm gnu/packages/vulkan.scm gnu/packages/web.scm gnu/packages/webkit.scm gnu/packages/wm.scm Maxim Cournoyer
2023-03-30system: hurd: Use shepherd-0.8 in the package list....* gnu/system/hurd.scm (%base-packages/hurd): Change shepherd to shepherd-0.8, since the former uses fibers, and thus conflicts with the shepherd-0.8 we use in the default essential services. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-03-26linux-container: Remove hosts-service-type when network is shared....Fixes <https://issues.guix.gnu.org/61627>. * gnu/system/linux-container.scm (container-essential-services): When shared-network? is true, remove the hosts-service-type service kind. Pierre Langlois
2023-03-20Merge remote-tracking branch 'origin/master' into core-updatesAndreas Enge
2023-03-07system: Update skeleton gdbinit....* gnu/system/shadow.scm (default-skeleton): Update gdbinit to search for more debug packages in guix-home and the system profile. (skeleton-directory): Move .gdbinit to .config/gdb/gdbinit. Efraim Flashner
2023-03-05file-systems: Remove deprecated 'title' field helper procedures....* gnu/system/file-systems.scm (<file-system>): Change constructor name to 'file-system'. (report-deprecation, device-expression, process-file-system-declaration, file-system): Remove macros. (file-system-title): Remove procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-02Merge remote-tracking branch 'savannah/master' into core-updates...Conflicts: gnu/local.mk gnu/packages/autotools.scm gnu/packages/cmake.scm gnu/packages/gnuzilla.scm gnu/packages/haskell.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/samba.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/wxwidgets.scm Christopher Baines
2023-03-03services: dbus: Deprecate 'dbus-service' procedure....* doc/guix.texi (Desktop Services): Replace with 'dbus-root-service-type'. Document dbus-configuration. * gnu/services/dbus.scm (dbus-service): Define with 'define-deprecated'. * gnu/services/desktop.scm (desktop-services-for-system): Replace with dbus-root-service-type. * gnu/system/install.scm (%installation-services): Ditto. * gnu/tests/base.scm (%avahi-os): Ditto. * gnu/tests/docker.scm (%docker-os): Ditto. * gnu/tests/lightdm.scm (minimal-desktop-services): Ditto. * gnu/tests/virtualization.scm (%libvirt-os): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'udev-service' procedure....* doc/guix.texi (Base Services): Replace udev-service with udev-service-type. Document <udev-configuration>. Use @defun @-commands for udev-rules-service, udev-rule and file->udev-rule. * gnu/services/base.scm (udev-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use udev-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'syslog-service' procedure....* doc/guix.texi (Base Services): Replace syslog-service with syslog-service-type. * gnu/services/base.scm (%default-syslog.conf): Place before <syslog-configuration>. (syslog-service-type): Set default value. (syslog-service): Deprecate procedure. (%base-services): Use syslog-service-type. * gnu/system/hurd.scm (%base-services/hurd): Ditto. * gnu/system/install.scm (%installation-services): Ditto. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'nscd-service' procedure....* doc/guix.texi (Application Setup): Compress @cindex entries. (Base Services): Compress @cindex entries. Delete %nscd-default-configuration. Replace 'nscd-service' with 'nscd-service-type'. * gnu/services/base.scm (%nscd-default-configuration): Deprecate variable. (nscd-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use nscd-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'agetty-service' procedure....* doc/guix.texi (Base Services): Replace agetty-service with agetty-service-type. * gnu/services/base.scm (agetty-service): Deprecate procedure. * gnu/system/examples/beaglebone-black.tmpl (operating-system)[services]: Use agetty-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'mingetty-service' procedure....* doc/guix.texi (Base Services): Replace mingetty-service with mingetty-service-type. * gnu/services/base.scm (mingetty-service): Deprecate procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-03-03services: base: Deprecate 'login-service' procedure....* doc/guix.texi (Base Services): Replace with login-service-type. * gnu/services/base.scm (login-service): Deprecate procedure. * gnu/system/install.scm (%installation-services): Use login-service-type. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Bruno Victal
2023-02-26file-systems: Validate 'no-diratime flag....This follows up on commit c0773455397746b10194bc14c7cef144f4095b65, and adds a comment to avoid this in future. * gnu/system/file-systems.scm (invalid-file-system-flags): Add 'no-diratime to the list of KNOWN-FLAGS. Tobias Geerinckx-Rice
2023-02-08system: Source .profile in skeleton bash_profile....Make it consistent with bash_profile generated by Guix Home. * gnu/system/shadow.scm (default-skeletons)[bash_profile]: Source .profile in skeleton bash_profile. Andrew Tropin
2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner