doc: Improve UEFI/BIOS bootloader documentation.
Partly fixes <https://bugs.gnu.org/30312>. * doc/guix.texi (Preparing for Installation): Add note on how to choose between UEFI and BIOS. (Using the Configuration System)[Bootloader]: New subsubsection. (Bootloader Configuration): Expound on the bootloader type and target. * gnu/system/examples/desktop.tmpl: Switch to UEFI. * gnu/system/examples/bare-bones.tmpl: Explicitly mention "legacy" and "BIOS" in the comments.
This commit is contained in:
parent
a043b5b81a
commit
fc0e663f78
|
@ -8636,6 +8636,17 @@ must have the @code{esp} flag set. E.g., for @command{parted}:
|
||||||
parted /dev/sda set 1 esp on
|
parted /dev/sda set 1 esp on
|
||||||
@end example
|
@end example
|
||||||
|
|
||||||
|
@quotation Note
|
||||||
|
@vindex grub-bootloader
|
||||||
|
@vindex grub-efi-bootloader
|
||||||
|
Unsure whether to use EFI- or BIOS-based GRUB? If the directory
|
||||||
|
@file{/sys/firmware/efi} exists in the installation image, the you should
|
||||||
|
probably perform an EFI installation, using @code{grub-efi-bootloader}.
|
||||||
|
Otherwise you should use the BIOS-based GRUB, known as
|
||||||
|
@code{grub-bootloader}. @xref{Bootloader Configuration}, for more info on
|
||||||
|
bootloaders.
|
||||||
|
@end quotation
|
||||||
|
|
||||||
Once you are done partitioning the target hard disk drive, you have to
|
Once you are done partitioning the target hard disk drive, you have to
|
||||||
create a file system on the relevant partition(s)@footnote{Currently
|
create a file system on the relevant partition(s)@footnote{Currently
|
||||||
GuixSD only supports ext4 and btrfs file systems. In particular, code
|
GuixSD only supports ext4 and btrfs file systems. In particular, code
|
||||||
|
@ -8964,6 +8975,27 @@ Below we discuss the effect of some of the most important fields
|
||||||
fields), and how to @dfn{instantiate} the operating system using
|
fields), and how to @dfn{instantiate} the operating system using
|
||||||
@command{guix system}.
|
@command{guix system}.
|
||||||
|
|
||||||
|
@unnumberedsubsubsec Bootloader
|
||||||
|
|
||||||
|
@cindex legacy boot, on Intel machines
|
||||||
|
@cindex BIOS boot, on Intel machines
|
||||||
|
@cindex UEFI boot
|
||||||
|
@cindex EFI boot
|
||||||
|
The @code{bootloader} field describes the method that will be used to boot
|
||||||
|
your system. Machines based on Intel processors can boot in ``legacy'' BIOS
|
||||||
|
mode, as in the example above. However, more recent machines rely instead on
|
||||||
|
the @dfn{Unified Extensible Firmware Interface} (UEFI) to boot. In that case,
|
||||||
|
the @code{bootloader} field should contain something along these lines:
|
||||||
|
|
||||||
|
@example
|
||||||
|
(bootloader-configuration
|
||||||
|
(bootloader grub-efi-bootloader)
|
||||||
|
(target "/boot/efi"))
|
||||||
|
@end example
|
||||||
|
|
||||||
|
@xref{Bootloader Configuration}, for more information on the available
|
||||||
|
configuration options.
|
||||||
|
|
||||||
@unnumberedsubsubsec Globally-Visible Packages
|
@unnumberedsubsubsec Globally-Visible Packages
|
||||||
|
|
||||||
@vindex %base-packages
|
@vindex %base-packages
|
||||||
|
@ -9074,8 +9106,7 @@ management, power management, and more, would look like this:
|
||||||
@include os-config-desktop.texi
|
@include os-config-desktop.texi
|
||||||
@end lisp
|
@end lisp
|
||||||
|
|
||||||
@cindex UEFI
|
A graphical system with a choice of lightweight window managers
|
||||||
A graphical UEFI system with a choice of lightweight window managers
|
|
||||||
instead of full-blown desktop environments would look like this:
|
instead of full-blown desktop environments would look like this:
|
||||||
|
|
||||||
@lisp
|
@lisp
|
||||||
|
@ -20697,21 +20728,30 @@ The type of a bootloader configuration declaration.
|
||||||
The bootloader to use, as a @code{bootloader} object. For now
|
The bootloader to use, as a @code{bootloader} object. For now
|
||||||
@code{grub-bootloader}, @code{grub-efi-bootloader},
|
@code{grub-bootloader}, @code{grub-efi-bootloader},
|
||||||
@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported.
|
@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported.
|
||||||
|
|
||||||
|
@vindex grub-efi-bootloader
|
||||||
@code{grub-efi-bootloader} allows to boot on modern systems using the
|
@code{grub-efi-bootloader} allows to boot on modern systems using the
|
||||||
@dfn{Unified Extensible Firmware Interface} (UEFI).
|
@dfn{Unified Extensible Firmware Interface} (UEFI). This is what you should
|
||||||
|
use if the installation image contains a @file{/sys/firmware/efi} directory
|
||||||
|
when you boot it on your system.
|
||||||
|
|
||||||
|
@vindex grub-bootloader
|
||||||
|
@code{grub-bootloader} allows you to boot in particular Intel-based machines
|
||||||
|
in ``legacy'' BIOS mode.
|
||||||
|
|
||||||
Available bootloaders are described in @code{(gnu bootloader @dots{})}
|
Available bootloaders are described in @code{(gnu bootloader @dots{})}
|
||||||
modules.
|
modules.
|
||||||
|
|
||||||
@item @code{target}
|
@item @code{target}
|
||||||
This is a string denoting the target onto which to install the
|
This is a string denoting the target onto which to install the
|
||||||
bootloader. The exact interpretation depends on the bootloader in
|
bootloader.
|
||||||
question; for @code{grub-bootloader}, for example, it should be a device
|
|
||||||
name understood by the bootloader @command{installer} command, such as
|
The interpretation depends on the bootloader in question. For
|
||||||
@code{/dev/sda} or @code{(hd0)} (for GRUB, @pxref{Invoking
|
@code{grub-bootloader}, for example, it should be a device name understood by
|
||||||
grub-install,,, grub, GNU GRUB Manual}). For
|
the bootloader @command{installer} command, such as @code{/dev/sda} or
|
||||||
@code{grub-efi-bootloader}, it should be the path to a mounted EFI file
|
@code{(hd0)} (@pxref{Invoking grub-install,,, grub, GNU GRUB Manual}). For
|
||||||
system.
|
@code{grub-efi-bootloader}, it should be the mount point of the EFI file
|
||||||
|
system, usually @file{/boot/efi}.
|
||||||
|
|
||||||
@item @code{menu-entries} (default: @code{()})
|
@item @code{menu-entries} (default: @code{()})
|
||||||
A possibly empty list of @code{menu-entry} objects (see below), denoting
|
A possibly empty list of @code{menu-entry} objects (see below), denoting
|
||||||
|
|
|
@ -10,8 +10,9 @@
|
||||||
(timezone "Europe/Berlin")
|
(timezone "Europe/Berlin")
|
||||||
(locale "en_US.utf8")
|
(locale "en_US.utf8")
|
||||||
|
|
||||||
;; Assuming /dev/sdX is the target hard disk, and "my-root" is
|
;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the
|
||||||
;; the label of the target root file system.
|
;; target hard disk, and "my-root" is the label of the target
|
||||||
|
;; root file system.
|
||||||
(bootloader (bootloader-configuration
|
(bootloader (bootloader-configuration
|
||||||
(bootloader grub-bootloader)
|
(bootloader grub-bootloader)
|
||||||
(target "/dev/sdX")))
|
(target "/dev/sdX")))
|
||||||
|
|
|
@ -11,11 +11,11 @@
|
||||||
(timezone "Europe/Paris")
|
(timezone "Europe/Paris")
|
||||||
(locale "en_US.utf8")
|
(locale "en_US.utf8")
|
||||||
|
|
||||||
;; Assuming /dev/sdX is the target hard disk, and "my-root"
|
;; Use the UEFI variant of GRUB with the EFI System
|
||||||
;; is the label of the target root file system.
|
;; Partition mounted on /boot/efi.
|
||||||
(bootloader (bootloader-configuration
|
(bootloader (bootloader-configuration
|
||||||
(bootloader grub-bootloader)
|
(bootloader grub-efi-bootloader)
|
||||||
(target "/dev/sdX")))
|
(target "/boot/efi")))
|
||||||
|
|
||||||
;; Specify a mapped device for the encrypted root partition.
|
;; Specify a mapped device for the encrypted root partition.
|
||||||
;; The UUID is that returned by 'cryptsetup luksUUID'.
|
;; The UUID is that returned by 'cryptsetup luksUUID'.
|
||||||
|
|
Loading…
Reference in New Issue