Commit graph

452 commits

Author SHA1 Message Date
Lilah Tascheter
9ba07f90f2
gnu: system: Remove useless boot parameters.
* gnu/system.scm (operating-system-boot-parameters,
operating-system-boot-parameters-file): Delete bootloader-menu-entries.
* gnu/system/boot.scm (boot-parameters)[bootloader-menu-entries]: Delete
field.
(read-boot-parameters): Don't read bootloader-menu-entries.
* tests/boot-parameters.scm (%grub-boot-parameters,
test-read-boot-parameters, test-read-boot-parameters): Don't include
bootloader-menu-entries.
("read, bootloader-menu-entries, default value"): Delete test.

Change-Id: I46d9cff4604dbfcf654b0820fdb77e72aecffbb4
2024-10-08 10:36:36 -04:00
Felix Lechner
b452d525d6
Move <boot-parameters> record to a separate file.
Required to avoid a missing dependency error on build-side.

* gnu/system.scm (<boot-parameters>): Move this record, and...
  (system-linux-image-file-name, %boot-parameters-version,
  bootable-kernel-arguments, ensure-not-/dev, read-boot-parameters,
  read-boot-parameters-file, boot-parameters->menu-entry):
  ...these procedures, to...

* gnu/system/boot.scm: ...this new file.

* gnu/machine/ssh.scm, gnu/system.scm, guix/scripts/system.scm,
  tests/boot-parameters.scm: Use new module above.

* gnu/local.mk (GNU_SYSTEM_MODULES): Add new module above.

* gnu/machine/ssh.scm (machine-boot-parameters): Don't private-import
  bootable-kernel-arguments.

Change-Id: I50cca8d2187879cd351b8e9332e1e114ca5096ae
2024-10-08 10:36:34 -04:00
Tobias Geerinckx-Rice
4e58dfee6c
system: Add privileged-programs to <operating-system>.
* gnu/system.scm (<operating-system>): Add new privileged-programs
field, that defaults to…
(%default-privileged-programs): …this new variable, renamed from…
(%setuid-programs): …this, which is now defined as the empty list.
* doc/guix.texi (Setuid Programs): Rename this…
(Privileged Programs): …to this.  Adjust all refs.  Update all mentions
of ‘setuid’ (whether in prose, variable names, or code samples) to use
the new ‘privilege[d]’ terminology instead.
(operating-system Reference, X Window, Invoking guix system)
(Service Reference): Adjust likewise.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
beb37ea4ad
system: Use privileged-program-service-type by default.
* gnu/system.scm (operating-system-default-essential-services)
(hurd-default-essential-services): Substitute
privileged-program-service-type for setuid-program-service-type.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
e364d1a494
system: Use /run/privileged/bin in search paths.
* gnu/system.scm (operating-system-etc-service):
Substitute /run/privileged/bin for deprecated /run/setuid-programs.
2024-08-11 02:00:00 +02:00
Tobias Geerinckx-Rice
0dffb851e0
system: Disallow file-like setuid-programs.
It has been a warning for well over a year now.  Now, with
privileged-programs coming, don't let's support nested deprecation
hacks.

* gnu/system.scm (<operating-system>):
Don't ‘sanitize’ the setuid-programs field.
(ensure-setuid-program-list): Delete syntax.
(%ensure-setuid-program-list): Delete variable.
2024-08-11 02:00:00 +02:00
Maxim Cournoyer
35ae95061e
system: Do not delete all nss-certs packages when they are the same object.
Calling 'delete' on the list of packages would delete *all* occurrences of a
given object, not just the first one.  This meant that if the user had
something like:

  (packages (cons nss-certs %base-packages))

In their operating system declaration, no nss-certs would end up in the final
list.  To guard against this, guard against this by checking that more than
one nss-certs package exist even after deduplication.

* gnu/system.scm (operating-system-packages): Guard against deleting all
nss-certs when a single nss-certs package object is listed multiple times.

Fixes: https://issues.guix.gnu.org/70850
Change-Id: Id93be9242e026fd2e96a442941df80b94664ef9a
2024-05-15 22:53:31 -04:00
nathan
c85a7e1b2b
system: Fix duplicate nss-certs check.
* gnu/system.scm (operating-system-packages): Because packages->manifest
allows other formats, don't assume it's a package object in the list.

Fixes: https://issues.guix.gnu.org/70624
Change-Id: I91c64ca2c463ef5c35fa23856e4622e364e58988
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2024-04-28 09:53:46 -04:00
Maxim Cournoyer
9593750698
system: Warn when multiple nss-certs packages are used.
This can happen due to users providing 'nss-certs' and adding it to the
%base-packages, which now include 'nss-certs'.

* gnu/system.scm (operating-system-packages): Warn when multiple nss-certs
packages are detected; keep only the latest one.

Change-Id: I6104f134ea1cc155ae9e8e0ae70bb5a38fc05800
Reported-by: Ian Eure <ian@retrospec.tv>
2024-04-26 07:05:50 -04:00
Jacob Hrbek
fdfd7667c6
system: Add 'nss-certs' to %base-packages-networking.
See the discussion at
<https://lists.gnu.org/archive/html/guix-devel/2024-04/msg00020.html>.

* gnu/system.scm (%base-packages-networking): Add nss-certs.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I24f336e4bb25561d0ec9344a1a4061d2ecc9aed8
2024-04-18 10:39:48 -04:00
Jean-Pierre De Jesus DIAZ
9f8e92cc7d
gnu: ath9k-htc-firmware: Split package.
* gnu/local.mk (dist_patch_DATA): Remove ath9k-htc-firmware-objcopy.patch.
* gnu/packages/firmware.scm (ath9k-htc-firmware): Remove.
(ath9k-htc-ar7010-firmware, ath9k-htc-ar9271-firmware): New variables.
* gnu/packages/patches/ath9k-htc-firmware-objcopy.patch: Delete file.
* gnu/system.scm (%base-firmware): Use new ath9k packages.

Change-Id: I86259e398427abd139c1f310a95bb15e2c03cee3
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2024-04-17 12:13:02 +02:00
Ludovic Courtès
29de2edfbb
system, home: Validate ‘services’ field value.
This guides newcomers who might stick a single (service …) form
in this field.

* gnu/services.scm (validate-service-list): New macro.
(%validate-service-list): New procedure.
* gnu/system.scm (<operating-system>)[services]: Add ‘sanitize’.
* gnu/home.scm (<home-environment>)[services]: Add ‘sanitize’.

Change-Id: I9e29bd9a078e87b627ab766fd669ba9de79f8473
2024-03-22 11:40:33 +01:00
Nicolas Graves
3378c1a9c6
system: Omit “root=” kernel argument when root device is “none”.
* gnu/system.scm (bootable-kernel-arguments): Fallback to tmpfs
if root is "none".

Change-Id: I35a656e71169dc786e5256d98a3c04c65043086d
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2024-02-19 18:42:56 +01:00
Ludovic Courtès
b973480dc9
system: hurd: Use the Shepherd 0.10.x.
* gnu/system.scm (hurd-default-essential-services): Remove reference to
‘shepherd-0.8’.
* gnu/system/hurd.scm (%base-packages/hurd): Replace ‘shepherd-0.8’ with
‘shepherd-0.10’.

Change-Id: I9f1800693cda456286450d3d0bb6f7e3da85d55e
2024-01-08 23:14:46 +01:00
Efraim Flashner
3e41b252cf
gnu: Adjust to removing ed.scm and nano.scm
This is a follow-up to f6817e71df and
e11e65a9ad.

* gnu/installer.scm, gnu/packages/algebra.scm, gnu/packages/base.scm,
gnu/packages/cook.scm, gnu/packages/lisp.scm,
gnu/packages/patchutils.scm, gnu/packages/version-control.scm,
gnu/packages/web-browsers.scm, gnu/system.scm: Adjust module imports.

Change-Id: I25e5519fa003c35a14b81c3dda37b24527858634
2023-12-25 19:58:21 +02:00
Tobias Geerinckx-Rice
2d8fac3fd9
system: Fix a blown FUSE.
I bungled up a merge conflict between 789f7e9 (gnu: fuse@3: Bind to
default FUSE variable.) and my other setuid-related changes.

* gnu/system.scm (%setuid-programs): Look for /bin/fusermount in
FUSE-2, not 3.

Reported by renngar[m] in #guix.
2023-07-30 02:00:00 +02:00
Tobias Geerinckx-Rice
789f7e9a3d
gnu: fuse@3: Bind to default FUSE variable.
* gnu/packages/linux.scm (fuse): Rename this…
(fuse-2): …to this, and…
(fuse-3): …rename this…
(fuse): …to this!
(fuse-static): Rename this…
(fuse-2-static): …to this.
Adjust all users.
2023-07-23 02:00:00 +02:00
Janneke Nieuwenhuizen
7f86dad611
system: hurd: Boot with pci.arbiter and rumpdisk.
* gnu/system.scm (hurd-multiboot-modules): Add commands for pci.arbiter and
rumpdisk.

Signed-off-by: Josselin Poiret <dev@jpoiret.xyz>
2023-07-13 18:59:06 +02:00
Ludovic Courtès
6a33f674b9
system: Fix reference to Hurd bug in comment.
* gnu/system.scm (hurd-multiboot-modules): Fix bug reference in
comment.
2023-05-10 00:23:52 +02:00
Maxim Cournoyer
3bacd3c76a
Merge 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
2023-04-14 17:15:08 -04:00
Bruno Victal
59878230f4
system: Remove obsolete GUIX_LOCPATH workaround.
* gnu/system.scm (operating-system-environment-variables): Do not set GUIX_LOCPATH.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-30 23:18:16 +02:00
Andreas Enge
ccb62d8feb
Merge remote-tracking branch 'origin/master' into core-updates 2023-03-20 18:49:06 +01:00
Bruno Victal
93918c67c5
services: etc-service: Deprecate etc-service procedure.
* gnu/services.scm (etc-service): Deprecate procedure.
* gnu/system.scm (operating-system-etc-service): Replace etc-service
with etc-service-type.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-16 12:37:03 +01:00
Bruno Victal
0f4a96ccd1
system: Remove redundant gexp-ungexp usage.
* gnu/system.scm (os-release): Convert to variable.
(operating-system-etc-service): Remove redundant gexp-ungexps.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-13 15:08:32 +01:00
Bruno Victal
02be907a12
system: Simplify nsswitch binding.
* gnu/system.scm (operating-system-etc-service): Simplify nsswitch binding.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-13 15:08:32 +01:00
Christopher Baines
7df09ee0ab
Merge 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
2023-03-02 10:55:08 +00:00
Bruno Victal
cb00e600ff
services: base: Deprecate 'host-name-service' procedure.
* doc/guix.texi (operating-system Reference): Reorder cross-reference.
Add an anchor to be used ...
(Base services): ... here by host-name-service-type. Document
host-name-service-type.
* gnu/services/base.scm: Export host-name-service-type.
(host-name-service): Deprecate procedure.
* gnu/system.scm (operating-system-default-essential-services): Use
host-name-service-type.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-03-03 17:55:31 +01:00
Bruno Victal
c742615b76
system: Do not export local-host-entries.
Unlike the deprecated 'local-host-aliases', there's no use for
local-host-entries since it's used to set the default value for
hosts-service-type. Given that this service-type is expected to be
extended, one presumes that when they explicitly override the service
default value they do not have much interest in the 'local-host-entries'
procedure.

* gnu/system.scm: Do not export local-host-entries.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-02-23 16:31:36 +01:00
Bruno Victal
802ea1f3a4
system: Deprecate hosts-file.
* gnu/system.scm (operating-system-hosts-file): Deprecate procedure.
(warn-hosts-file-field-deprecation): New procedure, helper for
deprecated variable.
(operating-system)[hosts-file]: Use helper to warn deprecated field.
(local-host-aliases): Mark as deprecated.
(local-host-entries): New procedure.
(operating-system-default-essential-services,
hurd-default-essential-services): Use hosts-service-type.  Use
'%operating-system-hosts-file' and 'local-host-entries'.
(default-/etc/hosts): Remove procedure.
(operating-system-etc-service): Remove hosts file.
* doc/guix.texi (operating-system Reference)
(Networking Services) (Virtualization Services): Rewrite documentation
entries to use hosts-service-type.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-02-09 01:07:47 +01:00
Efraim Flashner
4cf1acc7f3
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
2023-01-30 12:39:40 +02:00
Ludovic Courtès
086df6ef21
system: Define default 'PS1' in /etc/bashrc rather than ~/.bashrc.
Users can override 'PS1' in ~/.bashrc if they wish.

Previously, on Guix Home, the "default" 'PS1' would be set in ~/.bashrc
when 'home-bash-configuration-guix-defaults?' is true, preventing users
from overriding it via the 'environment-variables' field of
'home-bash-extension'.

* gnu/system/shadow.scm (%default-bashrc): Remove 'PS1' setting.
* gnu/system.scm (operating-system-etc-service): Define PS1 in
/etc/bashrc.
* gnu/home/services/shells.scm (add-bash-configuration): When
'home-bash-configuration-guix-defaults?' is true, add a default 'PS1' to
~/.bash_profile.
2023-01-05 15:00:27 +01:00
Maxim Cournoyer
bb689fda92
system: Add e2fsprogs to %base-packages-utils.
Rationale: Even when not using an ext file system, the utilities provided by
e2fsprogs are useful, for example to set the copy-on-write attribute of a
Btrfs file system.

* gnu/system.scm (%base-packages-utils): Add e2fsprogs.
2022-12-05 11:21:18 -05:00
Maxim Cournoyer
1603c78aa4
system: Rename and move %base-packages-disk-utilities.
Rationale: It is only used in INSTALLATION-OS and doesn't make sense to be
used in another context, given that file systems now automatically pull their
dependencies since commit 45eac6cdf5 (services:
Add file system utilities to profile).

* gnu/system.scm (%base-packages-disk-utilities): Deprecate and rename to...
* gnu/system/install.scm (%installer-disk-utilities): ... this.
(installation-os) [packages]: Adjust accordingly.
2022-12-05 10:38:41 -05:00
Efraim Flashner
26a200f71c
gnu: shadow: Merge in shadow-with-man-pages.
* gnu/packages/admin.scm (shadow)[arguments]: Add phase to install the
manpages. Make sure 'remove-groups comes after installing the manpages.
[properties]: Remove field.
(shadow-with-man-pages): Remove variable.
* gnu/system.scm (%base-packages-utils): Replace shadow-with-man-pages
with shadow.
2022-11-27 21:37:58 +02:00
Vagrant Cascadian
d3e982dccb
gnu: Fix typos.
* gnu/packages/emacs-xyz.scm (emacs-piem)[description]: Fix use of "This
  packages".
* gnu/packages/tex.scm (texlive-hardwrap)[description]: Fix spelling of
  "arbitrary".
* gnu/packages/cran.scm (r-shinymanager)[description]: Fix spelling of
  "authentication".
* gnu/packages/lisp-xyz.scm (sbcl-utils-kt)[description]: Fix spelling of
  "developed".
* gnu/packages/crates-io.scm (rust-fs-utils-1)[description]: Fix spelling of
  "filesystem".
  [synopsis]: Likewise.
* gnu/packages/haxe.scm (neko)[description]: Fix spelling of "functions".
* gnu/packages/animation.scm (swftools)[description]: Fix needless
  pluralization of "information".
* gnu/packages/lisp-xyz.scm (sbcl-slot-extra-options)[description]: Fix
  spelling of "inheritance".
* gnu/packages/emacs-xyz.scm (emacs-js-comint)[description]: Fix spelling of
  "interpreter".
* gnu/packages/coq.scm (coq-mathcomp-finmap)[description]: Fix spelling of
  "library".
* gnu/services/lightdm.scm (lightdm-configuration): Fix spelling of
  "mechanism".
* gnu/packages/emacs-xyz.scm (emacs-citar-org-roam)[synopsis]: Fix spelling of
  "package".
* gnu/packages/games.scm (freerct)[description]: Fix spelling of
  "responsibilities".
* gnu/packages/statistics.scm (r-mixedpower)[description]: Fix spelling of
  "separate".
* gnu/packages/accessibility.scm (espeakup)[description]: Fix spelling of
  "speech".
* gnu/packages/bioinformatics.scm (r-skitools)[synopsis]: Fix spelling of
  "utilities".
* gnu/packages/golang.scm (go-github-com-savsgio-gotils)[synopsis]: Fix
  spelling of "utilities".
  [description]: Likewise.
* gnu/system.scm (boot-file-system-service os): Fix spelling of "utilities".
2022-10-23 17:03:09 -07:00
Ludovic Courtès
3fb3bd3da5
system: hurd: Boot with the statically-linked 'exec' server.
This works around <https://issues.guix.gnu.org/58631>.

* gnu/system.scm (hurd-multiboot-modules): Use '/hurd/exec.static'
instead of 'ld.so /hurd/exec'.
2022-10-23 15:56:18 +02:00
Maxim Cournoyer
f78cfcd7d3
system: operating-system: Make the timezone field default to Etc/UTC.
* gnu/system.scm (<operating-system>) [timezone]: Default to "Etc/UTC".
2022-10-11 11:29:03 +00:00
Brice Waegeneire
45eac6cdf5
services: Add file system utilities to profile.
* gnu/services/base.scm (file-system-type->utilities)
(file-system-utilities): New procedures.
(file-system-service-type): Extend 'profile-service-type' with
'file-system-utilities'.
* gnu/system.scm (boot-file-system-service): New procedure.
(operating-system-default-essential-services): Use it.
(%base-packages): Remove 'e2fsprogs'.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-09-28 19:45:38 -04:00
Maxim Cournoyer
cbdfa54c77
gnu: system: Add fusermount3 to setuid-programs.
Fixes <https://issues.guix.gnu.org/47716>.

* gnu/system.scm (%setuid-programs): Add /bin/fusermount3 from the fuse-3
package.

Reported-by: raingloom <raingloom@riseup.net>
2022-07-14 15:16:23 -04:00
Ludovic Courtès
7046e77721
system: <operating-system> compiler truly honors the 'system' argument.
Fixes <https://issues.guix.gnu.org/55951>.

* gnu/system.scm (operating-system-compiler): Parameterize
'%current-system' and '%current-target-system' before calling
'operating-system-derivation'.
* tests/system.scm ("lower-object, %current-system sensitivity"): New
test.
2022-06-15 00:25:20 +02:00
Maxim Cournoyer
1d0d46b1c7
system: Fix typo, add doc.
* gnu/system.scm (operating-system-kernel-arguments): Fix typo in doc.
(boot-parameters->menu-entry): Add doc.
2022-06-06 11:29:51 -04:00
Maxim Cournoyer
39a9404c99
system: Improve warning when using LUKS mapped devices without UUIDs.
This corrects two problems with the previous mapped devices warning:

1. It wasn't clear how to correct the situation.
2. The output would be repeated multiple times, as many times as the procedure
is called during a system reconfigure.

* gnu/system.scm (operating-system-bootloader-crypto-devices): Memoize
procedure.  Include the mapped devices source location information in the
warnings.  Add a hint to help users fix the warning.
2022-05-21 00:12:31 -04:00
Ludovic Courtès
400c9ed3d7
services: shepherd: Default to version 0.9.
* gnu/services/shepherd.scm (scm->go): Define 'shepherd&co' and pass it
to 'with-extensions'.
(shepherd-configuration-file): Call 'start-in-the-background' when it is
defined.
(<shepherd-configuration>)[shepherd]: Default to SHEPHERD-0.9.
* gnu/system.scm (hurd-default-essential-services): Use SHEPHERD-0.8.
2022-04-07 00:08:56 +02:00
Ludovic Courtès
f43dce6ef9
system: Use 'shadow-with-man-pages' in %BASE-PACKAGES-UTILS.
* gnu/system.scm (%base-packages-utils): Replace SHADOW with
SHADOW-WITH-MAN-PAGES.
2022-03-21 23:03:35 +01:00
Ludovic Courtès
47960b5526
system: Improve 'read-boot-parameters' incompatibility diagnostic.
Previously, when reading an incompatible "parameters" file, 'guix
system' would print a warning and then crash with a wrong-type-arg
backtrace because code expects 'read-boot-parameters' to always return a
<boot-parameters> record.

* gnu/system.scm (read-boot-parameters): Upon incompatibility, raise an
error instead of returning #f.  Also raise a '&fix-hint' condition.
* tests/boot-parameters.scm ("read, construction, mandatory fields"):
Define 'test-read-boot-parameters' as a macro; expect
'formatted-message?' exceptions rather than #f returns.
2022-03-16 15:48:52 +01:00
Efraim Flashner
34ba6e0616
system: Set kernel name for riscv64-linux.
* gnu/system.scm (system-linux-image-file-name): Add option for riscv64.
2022-03-07 22:53:58 +02:00
Maxim Cournoyer
0dc019e19a
initrd: Use non-hyphenated kernel command-line parameter names.
This is to make it less surprising, given the common convention sets forth by
the kernel Linux command-line parameters.

* gnu/build/linux-boot.scm (boot-system): Rename '--load', '--repl', '--root'
and '--system' to 'gnu.load', 'gnu.repl', 'root' and 'gnu.system',
respectively.  Adjust doc.
(find-long-option): Adjust doc.
* gnu/installer/parted.scm (installer-root-partition-path): Adjust accordingly.
* gnu/system.scm (bootable-kernel-arguments): Add a VERSION argument and
update doc.  Use VERSION to conditionally return old style vs new style initrd
arguments.
(%boot-parameters-version): Increment to 1.
(operating-system-boot-parameters): Adjust doc.
(operating-system-boot-parameters-file): Likewise.
* gnu/system/linux-initrd.scm (raw-initrd, base-initrd): Likewise.
* doc/guix.texi: Adjust doc.
* gnu/build/activation.scm (boot-time-system): Adjust accordingly.
* gnu/build/hurd-boot.scm (boot-hurd-system): Likewise.
* gnu/packages/commencement.scm (%final-inputs-riscv64): Adjust comment.
2022-03-01 10:30:17 -05:00
Maxim Cournoyer
91755fe6b2
system: Streamline operating-system-boot-parameters-file a bit.
* gnu/system.scm (operating-system-boot-parameters-file)
[SYSTEM-KERNEL-ARGUMENTS?]: Remove unused argument (it had no callers) and
adjust doc, moving the self-referential tip to...
* gnu/system.scm (operating-system-boot-parameters): ... here, reworded for
clarity.

Suggested-by: Ludovic Courtès <ludo@gnu.org>
2022-03-01 10:30:17 -05:00
Maxim Cournoyer
4a3b8f4d59
system: Add a version field to the <boot-parameters> record.
This version field exposes the (already present) version information of a boot
parameters file.

* gnu/system.scm (%boot-parameters-version): New variable.
(<boot-parameters>)[version]: New field.
(read-boot-parameters): Use it.
(operating-system-boot-parameters-file): Likewise.
* tests/boot-parameters.scm (test-read-boot-parameters): Use
%boot-parameters-version as the default version value in the template.
2022-03-01 10:30:17 -05:00
Ludovic Courtès
671e6a8180
system: Allow 'chfn' to change the user's full name.
Fixes <https://issues.guix.gnu.org/52539>.
Reported by Jacob First <jacob.first@member.fsf.org>.

* gnu/build/accounts.scm (allocate-passwd): Add comment as to why
'real-name' is taken from PREVIOUS.  Add (not system?) to the
condition.
* gnu/system.scm (operating-system-etc-service) <login.defs>: Add
"CHFN_RESTRICT".
* gnu/system.scm (%setuid-programs): Add "chfn".
* gnu/system/pam.scm (base-pam-services): Add "chfn".
* doc/guix.texi (User Accounts): Document it.
2022-01-01 15:10:12 +01:00