1
Fork 0
mirror of https://https.git.savannah.gnu.org/git/guix.git/ synced 2025-07-09 23:50:47 +02:00

Merge 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
This commit is contained in:
Efraim Flashner 2023-01-30 11:33:18 +02:00
commit 4cf1acc7f3
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
740 changed files with 619028 additions and 314277 deletions

View file

@ -38,6 +38,7 @@
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module (guix packages)
#:use-module (guix deprecation)
#:use-module (guix derivations)
#:use-module (guix profiles)
#:use-module ((guix utils) #:select (substitute-keyword-arguments))
@ -49,9 +50,6 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages disk)
#:use-module (gnu packages file-systems)
#:use-module (gnu packages firmware)
#:use-module (gnu packages gawk)
#:use-module (gnu packages guile)
@ -265,7 +263,8 @@ VERSION is the target version of the boot-parameters record."
(packages operating-system-packages ; list of (PACKAGE OUTPUT...)
(default %base-packages)) ; or just PACKAGE
(timezone operating-system-timezone) ; string
(timezone operating-system-timezone
(default "Etc/UTC")) ; string
(locale operating-system-locale ; string
(default "en_US.utf8"))
(locale-definitions operating-system-locale-definitions ; list of <locale-definition>
@ -575,6 +574,14 @@ marked as 'needed-for-boot'."
(service file-system-service-type
(map add-dependencies file-systems)))
(define (boot-file-system-service os)
"Return a service which adds, to the system profile, packages providing the
utilities for the file systems marked as 'needed-for-boot' in OS."
(let ((file-systems (filter file-system-needed-for-boot?
(operating-system-file-systems os))))
(simple-service 'boot-file-system-utilities profile-service-type
(file-system-utilities file-systems))))
(define (mapped-device-users device file-systems)
"Return the subset of FILE-SYSTEMS that use DEVICE."
(let ((targets (map (cut string-append "/dev/mapper/" <>)
@ -720,13 +727,14 @@ bookkeeping."
(define known-fs
(map file-system-mount-point (operating-system-file-systems os)))
(let* ((mappings (device-mapping-services os))
(root-fs (root-file-system-service))
(other-fs (non-boot-file-system-service os))
(swaps (swap-services os))
(procs (service user-processes-service-type))
(host-name (host-name-service (operating-system-host-name os)))
(entries (operating-system-directory-base-entries os)))
(let* ((mappings (device-mapping-services os))
(root-fs (root-file-system-service))
(boot-fs (boot-file-system-service os))
(non-boot-fs (non-boot-file-system-service os))
(swaps (swap-services os))
(procs (service user-processes-service-type))
(host-name (host-name-service (operating-system-host-name os)))
(entries (operating-system-directory-base-entries os)))
(cons* (service system-service-type entries)
(service linux-builder-service-type
(linux-builder-configuration
@ -757,7 +765,7 @@ bookkeeping."
(operating-system-setuid-programs os))
(service profile-service-type
(operating-system-packages os))
other-fs
boot-fs non-boot-fs
(append mappings swaps
;; Add the firmware service.
@ -848,6 +856,8 @@ of PROVENANCE-SERVICE-TYPE to its services."
(cons* procps psmisc which
shadow ;for 'passwd'
e2fsprogs ;for lsattr, chattr, etc.
guile-3.0-latest
;; The packages below are also in %FINAL-INPUTS, so take them from
@ -886,25 +896,12 @@ of PROVENANCE-SERVICE-TYPE to its services."
;; many people are familiar with, so keep it around.
iw wireless-tools))
(define %base-packages-disk-utilities
;; A well-rounded set of packages for interacting with disks, partitions
;; and filesystems.
(list parted gptfdisk ddrescue
;; We used to provide fdisk from GNU fdisk, but as of version 2.0.0a
;; it pulls Guile 1.8, which takes unreasonable space; furthermore
;; util-linux's fdisk is already available, in %base-packages-linux.
cryptsetup mdadm
dosfstools
btrfs-progs
f2fs-tools
jfsutils
xfsprogs))
(define-deprecated %base-packages-disk-utilities #f '())
(define %base-packages
;; Default set of packages globally visible. It should include anything
;; required for basic administrator tasks.
(append (list e2fsprogs)
%base-packages-artwork
(append %base-packages-artwork
%base-packages-interactive
%base-packages-linux
%base-packages-networking
@ -1050,6 +1047,9 @@ fi
(bashrc (plain-file "bashrc" "\
# Bash-specific initialization.
# Provide a default prompt. The user's ~/.bashrc can override it.
PS1='\\u@\\h \\w${GUIX_ENVIRONMENT:+ [env]}\\$ '
# The 'bash-completion' package.
if [ -f /run/current-system/profile/etc/profile.d/bash_completion.sh ]
then
@ -1482,8 +1482,14 @@ a list of <menu-entry>, to populate the \"old entries\" menu."
(cross-libc target))
glibc))
(exec-server-command
(list (file-append libc "/lib/ld.so.1") "exec"
(file-append hurd "/hurd/exec") "'$(exec-task=task-create)'")))
;; XXX: Run the statically-linked 'exec' to work around
;; <https://issues.guix.gnu.org/58631>, which manifests on some
;; machines.
;; (list (file-append libc "/lib/ld.so.1") "exec"
;; (file-append hurd "/hurd/exec") "'$(exec-task=task-create)'")
(list (file-append hurd "/hurd/exec.static") "exec"
"'$(exec-task=task-create)'")))
(list root-file-system-command exec-server-command)))
(define* (operating-system-boot-parameters os root-device