Hi everyone,

I am currently missing two things:

 * There is no description how to boot LFS from a GPT partitioned disk
   on UEFI firmware - the background of this proposal is that many new
   UEFI setups hide legacy support in a relly terrible way. Some setups
   use labels like "Operating system support: Windows 7" to enable the
   CSM. The current situation is that every UEFI includes an CSM, but
   Microsofts requirements to OEMs only say that there must be a
   possibility to disable secure boot. So in the short term PCs without
   CSM will appear. I would take the task of adding gnu-uefi and
   gummiboot to chapter 6 and write chapter 8.5 "Using gummiboot to
   setup the boot process (UEFI)". I would keep 8.5 as simple as
   possible - no cascade of bootloaders with preloader.efi. So the
   users have to disable secure boot.
 * I successfully built most of chapter 5 on Raspberry Pi (running
   Raspbian). This takes lots of patience, but the differences in
   configuration and the patches required are surprisingly small. So if
   you want me to, I would provide you with a hand full of changes to
   the book, of course this would finally culminate in adding chapter
   8.6 "Raspberry Pi: Setting up the boot process" - are you
   interested? I think the additional complexity introduced is quite
   small and since the Raspberry Pi nowadays is many people's entry to
   linux, why not make it their starting point for LFS?

Regarding booting there is also one aspect where I wonder how to provide a clean and simple solution: Booting large hard disks (512B sectors and larger than 2TB) on ordinary BIOS systems. This works with a GPT (I will not cover an overly complex compat MBR partition table). As bootloader I usually use extlinux in combination with syslinux' compatibility MBR. This just requires a partition marked "legacy_boot" that fits within the fist 2TB of the hard disk. It is also possible using GRUB, in this case GRUB requires a small partition (without FS, just for GRUBs binary data). The extlinux solution is more simple, thus I prefer this one. If the decision which bootloader to cover was up to me, I would go with the syslinux family - but since GRUB is used as default on nearly every "normal" distro out there I fully understand that GRUB was chosen as default.

Regarding my first point we could also go with GRUB. But this would require building a separate GRUB installation for a different target architechture (in this case x86_64 UEFI) and a quite different approac to build an GRUB image that is a valid EFI binary. It would also require to move to GRUB 2.02 Beta (at least for UEFI), since GRUB 2.00 has lots of bugs regarding UEFI boot. You also have to fiddle around with graphics mode with GRUB due to the reason that GRUB really acts as a bootloader whereas gummiboot just chainloads EFI binaries. GRUB acting as a bootloader also means that a 32 bit kernel can be started on 64 bit machines - this is not possible with gummiboot. But in my opinion the simplicity speaks in favor of gummiboot.

Yours,
Mattias

--
Mattias Schlenker - Freier IT-Fachredakteur und -autor
                             redakt...@mattiasschlenker.de
Mattias Schlenker - IT-Consulting, Softwareentwicklung
                            consult...@mattiasschlenker.de

Address__ August-Bebel-Str. 74 - D-04275 LEIPZIG - GERMANY
Call me! (VoIP)__________________________ +49 341 39290767
Call me! (PoTS + Faksimile)______________ +49 341 30393578
Call me if it's urgent! (Mobile)_________ +49 163  6953657
VATIN_________________________________________ DE240998538

Fork me!____________________ https://github.com/mschlenker
Website.__________________ http://www.mattiasschlenker.de/
My books!___________ http://www.arduino-hausautomation.de/
Google+_________ https://www.google.com/+MattiasSchlenker1
Xing_______ https://www.xing.com/profile/Mattias_Schlenker

-- 
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to