diff options
author | Ludovic Courtès <[email protected]> | 2022-06-08 14:53:16 +0200 |
---|---|---|
committer | Ludovic Courtès <[email protected]> | 2022-06-08 14:53:16 +0200 |
commit | 091eb323ba2787ce64a1fb2796e7e06dbee6037c (patch) | |
tree | 446a869245541bd48f303caef76e4c24f6e7d0bb /doc | |
parent | 05fef7bfc60058763f5a64ec0feaf3876b56281d (diff) | |
parent | 0c5299200ffcd16370f047b7ccb187c60f30da34 (diff) |
Merge branch 'master' into staging
Diffstat (limited to 'doc')
-rw-r--r-- | doc/guix-cookbook.texi | 9 | ||||
-rw-r--r-- | doc/guix.texi | 70 |
2 files changed, 61 insertions, 18 deletions
diff --git a/doc/guix-cookbook.texi b/doc/guix-cookbook.texi index b4dc9f864c..06fb872177 100644 --- a/doc/guix-cookbook.texi +++ b/doc/guix-cookbook.texi @@ -2533,8 +2533,9 @@ Let's dive in the set up! @node Basic setup with manifests @subsection Basic setup with manifests -A Guix profile can be set up @emph{via} a so-called @emph{manifest specification} that looks like -this: +A Guix profile can be set up @i{via} a @dfn{manifest}. A manifest is a +snippet of Scheme code that specifies the set of packages you want to +have in your profile; it looks like this: @lisp (specifications->manifest @@ -2547,8 +2548,8 @@ this: "package-N")) @end lisp -@pxref{Invoking guix package,,, guix, GNU Guix Reference Manual}, for -the syntax details. +@xref{Writing Manifests,,, guix, GNU Guix Reference Manual}, for +more information about the syntax. We can create a manifest specification per profile and install them this way: diff --git a/doc/guix.texi b/doc/guix.texi index 2bfff7c2ff..96d545698f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -103,6 +103,7 @@ Copyright @copyright{} 2021 Josselin Poiret@* Copyright @copyright{} 2022 Remco van 't Veer@* Copyright @copyright{} 2022 Aleksandr Vityazev@* Copyright @copyright{} 2022 Philip M@sup{c}Grath@* +Copyright @copyright{} 2022 Karl Hallsby@* Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -324,8 +325,8 @@ Invoking @command{guix build} * Debugging Build Failures:: Real life packaging experience. Foreign Architectures -* Using cross-compilation:: Build for foreign architecture using cross-compilation. -* Using native builds:: Build for foreign architectures natively. +* Cross-Compilation:: Cross-compiling for another architecture. +* Native Builds:: Targeting another architecture through native builds. System Configuration @@ -3457,7 +3458,7 @@ The typical use case is to define these environment variables in the shell: @example -$ eval `guix package --search-paths` +$ eval $(guix package --search-paths) @end example @var{kind} may be one of @code{exact}, @code{prefix}, or @code{suffix}, @@ -12473,8 +12474,8 @@ If a log is unavailable locally, and unless @option{--no-substitutes} is passed, the command looks for a corresponding log on one of the substitute servers (as specified with @option{--substitute-urls}). -So for instance, imagine you want to see the build log of GDB on MIPS, -but you are actually on an @code{x86_64} machine: +So for instance, imagine you want to see the build log of GDB on +@code{aarch64}, but you are actually on an @code{x86_64} machine: @example $ guix build --log-file gdb -s aarch64-linux @@ -15238,12 +15239,12 @@ requires emulation, using the QEMU program for instance. @end enumerate @menu -* Using cross-compilation:: Build for foreign architecture using cross-compilation. -* Using native builds:: Build for foreign architectures natively. +* Cross-Compilation:: Cross-compiling for another architecture. +* Native Builds:: Targeting another architecture through native builds. @end menu -@node Using cross-compilation -@section Using cross-compilation +@node Cross-Compilation +@section Cross-Compilation @cindex foreign architectures The commands supporting cross-compilation are proposing the @@ -15290,8 +15291,8 @@ penaly compared to emulation using QEMU. There are however higher risks that some packages fail to cross-compile because few users are using this mechanism extensively. -@node Using native builds -@section Using native builds +@node Native Builds +@section Native Builds The commands that support impersonating a specific system have the @option{--list-systems} and @option{--system} options. @@ -36270,8 +36271,8 @@ The type of a bootloader configuration declaration. @cindex BIOS, bootloader The bootloader to use, as a @code{bootloader} object. For now @code{grub-bootloader}, @code{grub-efi-bootloader}, -@code{grub-efi-netboot-bootloader}, @code{extlinux-bootloader} and -@code{u-boot-bootloader} are supported. +@code{grub-efi-netboot-bootloader}, @code{grub-efi-removable-bootloader}, +@code{extlinux-bootloader} and @code{u-boot-bootloader} are supported. @cindex ARM, bootloaders @cindex AArch64, bootloaders @@ -36340,6 +36341,20 @@ NFS servers, you also need a properly configured DHCP server to make the booting over netboot possible. For all this we can currently only recommend you to look for instructions about @acronym{PXE, Preboot eXecution Environment}. +@vindex grub-efi-removable-bootloader +@code{grub-efi-removable-bootloader} allows you to boot your system from +removable media by writing the GRUB file to the UEFI-specification location of +@file{/EFI/BOOT/BOOTX64.efi} of the boot directory, usually @file{/boot/efi}. +This is also useful for some UEFI firmwares that ``forget'' their configuration +from their non-volatile storage. Like @code{grub-efi-bootloader}, this can only +be used if the @file{/sys/firmware/efi} directory is available. + +@quotation Note +This @emph{will} overwrite the GRUB file from any other operating systems that +also place their GRUB file in the UEFI-specification location; making them +unbootable. +@end quotation + @item @code{targets} This is a list of strings denoting the targets onto which to install the bootloader. @@ -36348,7 +36363,8 @@ The interpretation of targets depends on the bootloader in question. For @code{grub-bootloader}, for example, they should be device names 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}, they should be mount +GNU GRUB Manual}). For @code{grub-efi-bootloader} and +@code{grub-efi-removable-bootloader} they should be mount points of the EFI file system, usually @file{/boot/efi}. For @code{grub-efi-netboot-bootloader}, @code{targets} should be the mount points corresponding to TFTP root directories served by your TFTP @@ -36603,6 +36619,19 @@ As for @command{guix package --search}, the result is written in @code{recutils} format, which makes it easy to filter the output (@pxref{Top, GNU recutils databases,, recutils, GNU recutils manual}). +@cindex service type definition, editing +@cindex editing, service type definition +@item edit +Edit or view the definition of the given service types. + +For example, the command below opens your editor, as specified by the +@env{EDITOR} environment variable, on the definition of the +@code{openssh} service type: + +@example +guix system edit openssh +@end example + @item reconfigure Build the operating system described in @var{file}, activate it, and switch to it@footnote{This action (and the related actions @@ -39439,6 +39468,19 @@ guix home container config.scm -- herd status The command to run in the container must come after @code{--} (double hyphen). +@cindex service type definition, editing +@cindex editing, service type definition +@item edit +Edit or view the definition of the given Home service types. + +For example, the command below opens your editor, as specified by the +@env{EDITOR} environment variable, on the definition of the +@code{home-mcron} service type: + +@example +guix home edit home-mcron +@end example + @item reconfigure Build the home environment described in @var{file}, and switch to it. Switching means that the activation script will be evaluated and (in |