Hi Petter,

Thanks a lot for the additions to the manual!

There was a lot more than I expected.  ;-)  For now, I’ve focused on the
improvements to the “System Installation” section, leading to commit
dedb8d5.

It turned out to be more work than I expected because I had to find out
what the differences were (some paragraphs had been moved to a single
line, which made it hard to spot the differences), and then ended up
doing a few things differently to preserve consistency.

In the future, it would be awesome if you could send more focused
patches and make sure the diffs don’t show unrelated “noise.”

Petter <pet...@mykolab.ch> skribis:

> +Open the file in one of the editors. We'll now walk you through the updates 
> you need to make in the operating-system declaration in turn from top to 
> bottom.
> +
> +@table @asis
> +@item @samp{host-name}
> +Will be the name for this system. It'll be used for identifying this system 
> on the network and should be unique amongst the computers in your LAN(s). You 
> may also see it in shell prompts. Use ASCII letters and digits only unless 
> you know what you're doing.
> +
> +@item @samp{timezone}
> +This value must match a supported timezone exactly. To find the value you 
> need here you can run the command
> +@example
> +tzselect
> +@end example
> +and answer its questions. When it asks "Is the above information OK?" answer 
> "1" (Yes). The value in the last line of output is the value to use in your 
> configuration.
> +To get a shell prompt for running commands you can change virtual console 
> (Ctrl-Alt-F#), or close the editor.
> +
> +@item @samp{locale}
> +This value must match a supported locale exactly. To get a list of supported 
> locales and their typing run the command
> +@example
> +ls /run/current-system/locale/@var{X.Y}
> +@end @samp{example}
> +where X.Y is the libc version (just press TAB at this level). Find the 
> locale you want in the listed output and take note of exactly how it is typed 
> (trailing / is not included in the name).
> +To get a shell prompt for running commands you can change virtual console 
> (Ctrl-Alt-F#), or close the editor.
> +
> +@item @samp{bootloader}
> +Update the @samp{device} argument according to the comment in the example 
> configuration. Typical value is @var{/dev/sda}, note there's no trailing 
> digit. This will instruct the installation to install GRUB to the MBR of your 
> disk. This is fine even if you're going to use the boot loader in your boot 
> firmware, it will just be unused in this case.
> +@end table

I did not include this as is because I think most of it is redundant
with (or should be covered by) the “operating-system Reference” section.

I have not yet integrated the bits about setting up an encrypted root
etc. because I first want the bits below to be fixed in the code.

> +@subsection Booting a fully encrypted system
> +
> +@emph{This chapter is only for systems with encrypted boot.}
> +
> +To be able to boot with encrypted boot you need a system with GRUB flashed 
> into the boot firmware, like with Coreboot/Libreboot.

It’s not clear to me how much of it is specific to Coreboot/Libreboot.
It seems like it could equally well work when GRUB is spawned by a
random proprietary BIOS no?

> +@table @asis
> +@item Manual steps to boot your fully encrypted system
> +Press @kbd{c} in GRUB to enter command mode.

Seems to me that GuixSD should automatically DTRT when installing on an
encrypted root file system.  See <http://bugs.gnu.org/21843>.

> +menuentry "GuixSD (current)" @{
> +  cryptomount @var{grub-partition}
> +  set root=(crypto0)
> +  set guix_system=/var/guix/profiles/system
> +  linux  $@{guix_system@}/kernel/bzImage --root=@var{your-root-partition} 
> --system=$@{guix_system@} --load=$@{guix_system@}/boot
> +  initrd $@{guix_system@}/initrd
> +@}

I think this sort of answers the above bug report, no?

Thanks a lot for your feedback on this!

Ludo’.

Reply via email to