From 0207768fc9149461a010d7bf85cd5460b5d839e9 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 4 Jul 2018 14:36:07 +0200 Subject: doc: Mention the build environment. * doc/contributing.texi (Running Guix Before It Is Installed): Add a note about having the dependencies available. --- doc/contributing.texi | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/contributing.texi b/doc/contributing.texi index ca44b3b0b0..8feb519b0a 100644 --- a/doc/contributing.texi +++ b/doc/contributing.texi @@ -108,7 +108,9 @@ actually installing them. So that you can distinguish between your ``end-user'' hat and your ``motley'' costume. To that end, all the command-line tools can be used even if you have not -run @code{make install}. To do that, prefix each command with +run @code{make install}. To do that, you first need to have an environment +with all the dependencies available (@pxref{Building from Git}), and then +simply prefix each command with @command{./pre-inst-env} (the @file{pre-inst-env} script lives in the top build tree of Guix), as in@footnote{The @option{-E} flag to @command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set -- cgit 1.4.1 From fc0e663f782896f542d008c871d21b9cf636a75c Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 5 Jul 2018 11:44:46 +0200 Subject: doc: Improve UEFI/BIOS bootloader documentation. Partly fixes . * 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. --- doc/guix.texi | 60 ++++++++++++++++++++++++++++++------- gnu/system/examples/bare-bones.tmpl | 5 ++-- gnu/system/examples/desktop.tmpl | 8 ++--- 3 files changed, 57 insertions(+), 16 deletions(-) (limited to 'doc') diff --git a/doc/guix.texi b/doc/guix.texi index 841bc2a34f..a913c2ea3d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8636,6 +8636,17 @@ must have the @code{esp} flag set. E.g., for @command{parted}: parted /dev/sda set 1 esp on @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 create a file system on the relevant partition(s)@footnote{Currently 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 @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 @vindex %base-packages @@ -9074,8 +9106,7 @@ management, power management, and more, would look like this: @include os-config-desktop.texi @end lisp -@cindex UEFI -A graphical UEFI system with a choice of lightweight window managers +A graphical system with a choice of lightweight window managers instead of full-blown desktop environments would look like this: @lisp @@ -20697,21 +20728,30 @@ The type of a bootloader configuration declaration. The bootloader to use, as a @code{bootloader} object. For now @code{grub-bootloader}, @code{grub-efi-bootloader}, @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 -@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{})} modules. @item @code{target} This is a string denoting the target onto which to install the -bootloader. The exact interpretation depends on the bootloader in -question; for @code{grub-bootloader}, for example, it should be a device -name understood by the bootloader @command{installer} command, such as -@code{/dev/sda} or @code{(hd0)} (for GRUB, @pxref{Invoking -grub-install,,, grub, GNU GRUB Manual}). For -@code{grub-efi-bootloader}, it should be the path to a mounted EFI file -system. +bootloader. + +The interpretation depends on the bootloader in question. For +@code{grub-bootloader}, for example, it should be a device name understood by +the bootloader @command{installer} command, such as @code{/dev/sda} or +@code{(hd0)} (@pxref{Invoking grub-install,,, grub, GNU GRUB Manual}). For +@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{()}) A possibly empty list of @code{menu-entry} objects (see below), denoting diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index cb6d2623db..b763258e52 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -10,8 +10,9 @@ (timezone "Europe/Berlin") (locale "en_US.utf8") - ;; Assuming /dev/sdX is the target hard disk, and "my-root" is - ;; the label of the target root file system. + ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the + ;; target hard disk, and "my-root" is the label of the target + ;; root file system. (bootloader (bootloader-configuration (bootloader grub-bootloader) (target "/dev/sdX"))) diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index e8740407d0..ea21e1df66 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -11,11 +11,11 @@ (timezone "Europe/Paris") (locale "en_US.utf8") - ;; Assuming /dev/sdX is the target hard disk, and "my-root" - ;; is the label of the target root file system. + ;; Use the UEFI variant of GRUB with the EFI System + ;; Partition mounted on /boot/efi. (bootloader (bootloader-configuration - (bootloader grub-bootloader) - (target "/dev/sdX"))) + (bootloader grub-efi-bootloader) + (target "/boot/efi"))) ;; Specify a mapped device for the encrypted root partition. ;; The UUID is that returned by 'cryptsetup luksUUID'. -- cgit 1.4.1 From 900e6d40518d9b47e5d18cc532ce29a9c352c12d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 5 Jul 2018 11:52:55 +0200 Subject: doc: Mention ARM and AArch64 bootloaders. * doc/guix.texi (Bootloader Configuration): Mention ARM and AArch64. Add missing uses of @code. --- doc/guix.texi | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'doc') diff --git a/doc/guix.texi b/doc/guix.texi index a913c2ea3d..fde28b4a07 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -20739,8 +20739,12 @@ when you boot it on your system. @code{grub-bootloader} allows you to boot in particular Intel-based machines in ``legacy'' BIOS mode. +@cindex ARM, bootloaders +@cindex AArch64, bootloaders Available bootloaders are described in @code{(gnu bootloader @dots{})} -modules. +modules. In particular, @code{(gnu bootloader u-boot)} contains definitions +of bootloaders for a wide range of ARM and AArch64 systems, using the +@uref{http://www.denx.de/wiki/U-Boot/, U-Boot bootloader}. @item @code{target} This is a string denoting the target onto which to install the @@ -20776,7 +20780,7 @@ The output terminals used for the bootloader boot menu, as a list of symbols. GRUB accepts the values: @code{console}, @code{serial}, @code{serial_@{0-3@}}, @code{gfxterm}, @code{vga_text}, @code{mda_text}, @code{morse}, and @code{pkmodem}. This field -corresponds to the GRUB variable GRUB_TERMINAL_OUTPUT (@pxref{Simple +corresponds to the GRUB variable @code{GRUB_TERMINAL_OUTPUT} (@pxref{Simple configuration,,, grub,GNU GRUB manual}). @item @code{terminal-inputs} (default: @code{'()}) @@ -20785,7 +20789,7 @@ symbols. For GRUB, the default is the native platform terminal as determined at run-time. GRUB accepts the values: @code{console}, @code{serial}, @code{serial_@{0-3@}}, @code{at_keyboard}, and @code{usb_keyboard}. This field corresponds to the GRUB variable -GRUB_TERMINAL_INPUT (@pxref{Simple configuration,,, grub,GNU GRUB +@code{GRUB_TERMINAL_INPUT} (@pxref{Simple configuration,,, grub,GNU GRUB manual}). @item @code{serial-unit} (default: @code{#f}) -- cgit 1.4.1 From 63899cc7745e9a856c21c4d2c5d2ca7ab38b2d9f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 5 Jul 2018 11:54:23 +0200 Subject: doc: Update package count. * doc/guix.texi (Limitations): Update number. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/guix.texi b/doc/guix.texi index fde28b4a07..28b0a0d43e 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8329,7 +8329,7 @@ More and more system services are provided (@pxref{Services}), but some may be missing. @item -More than 6,500 packages are available, but you might +More than 7,500 packages are available, but you might occasionally find that a useful package is missing. @item -- cgit 1.4.1 From 56b4dabc2ba3446ff212e0d4d9e2df15fc25e88f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 5 Jul 2018 22:13:23 +0200 Subject: doc: Mention translations of the manual. * doc/guix.texi (Top): Add note about l10n. * doc/htmlxref.cnf: Add "guix.fr". --- doc/guix.texi | 9 +++++++++ doc/htmlxref.cnf | 4 +++- 2 files changed, 12 insertions(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/guix.texi b/doc/guix.texi index 28b0a0d43e..04bf34b0fa 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -96,6 +96,15 @@ Edition @value{EDITION} @* This document describes GNU Guix version @value{VERSION}, a functional package management tool written for the GNU system. +@c TRANSLATORS: You can replace the following paragraph with information on +@c how to join your own translation team and how to report issues with the +@c translation. +This manual is also available in French (@pxref{Top,,, guix.fr, Manuel de +référence de GNU Guix}). If you would like to translate it in your native +language, consider joining the +@uref{https://translationproject.org/domain/guix-manual.html, Translation +Project}. + @menu * Introduction:: What is Guix about? * Installation:: Installing Guix. diff --git a/doc/htmlxref.cnf b/doc/htmlxref.cnf index c1ce636495..c139d805c8 100644 --- a/doc/htmlxref.cnf +++ b/doc/htmlxref.cnf @@ -1,7 +1,7 @@ # htmlxref.cnf - reference file for free Texinfo manuals on the web. # Modified by Ludovic Courtès for the GNU Guix manual. -htmlxrefversion=2016-08-03.13; # UTC +htmlxrefversion=2018-07-05.20; # UTC # Copyright 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc. # @@ -391,6 +391,8 @@ guile-rpc node ${GS}/guile-rpc/manual/html_node/ guix mono ${GS}/guix/manual/guix.html guix node ${GS}/guix/manual/html_node/ +guix.fr mono ${GS}/guix/manual/fr/guix.html +guix.fr node ${GS}/guix/manual/fr/html_node/ gv mono ${GS}/gv/manual/gv.html gv node ${GS}/gv/manual/html_node/ -- cgit 1.4.1 From c35f77c5a07690fc9d369ed4b751a5a9e5de6cf1 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 5 Jul 2018 22:16:10 +0200 Subject: doc: Update URL of the Emacs-Guix manual. * doc/htmlxref.cnf (EMACS_GUIX): Update URL. --- doc/htmlxref.cnf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc') diff --git a/doc/htmlxref.cnf b/doc/htmlxref.cnf index c139d805c8..bed037cbec 100644 --- a/doc/htmlxref.cnf +++ b/doc/htmlxref.cnf @@ -219,7 +219,7 @@ emacs node ${EMACS}/html_node/emacs/ easejs mono ${GS}/easejs/manual/easejs.html easejs node ${GS}/easejs/manual/ -EMACS_GUIX = https://alezost.github.io/guix.el/manual/latest +EMACS_GUIX = https://emacs-guix.gitlab.io/website/manual/latest emacs-guix mono ${EMACS_GUIX}/emacs-guix.html emacs-guix node ${EMACS_GUIX}/html_node/ -- cgit 1.4.1