From Mageia wiki
Revision as of 18:33, 30 August 2018 by Martinw (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Summary

Switch from using ISOLINUX + gfxboot to using GRUB2 for booting Live and Classic Installer ISOs

Owner

  • Name: Martin Whitaker (martinw)
  • Email: mageia@martin-whitaker.me.uk

Resources

ISO builders.

Current status

  • Targeted release: Mageia 7
  • Last updated: 2018/08/30
  • Percentage of completion: 100%

A new version of draklive, draklive2, has been created in the drakiso git repository and the corresponding changes to draklive-config in the user/martinw/use-grub2 branch of draklive-config. This supports language selection in the boot menu.

drakiso provides a second tool, drakclassic, for building the classic installer ISOs. Much code is shared between the two tools. drakclassic is intended to be a replacement for bcd.

Development of the new tool has exposed a couple of bugs and missing features in other tools, which have now been fixed:

grub2 does not support translation of label text in the theme file

gendistrib deletes master hdlist files when media.cfg links directly to them

It also requires the latest version of xorriso (1.4.8).

Detailed Description

GRUB2 is already used when booting these ISOs on UEFI machines. I propose we also use it for booting on non-UEFI machines.

Why it would be good for Mageia to include it

  • Provides the same UI regardless of whether the user uses UEFI or legacy boot
    • gives consistent look and feel
    • should allow the documentation on the Wiki to be simplified
  • Many features of the old gfxboot system are unused or partially/completely broken
    • and gfxboot is incredibly hard to fix and maintain

Test case

Software / Packages Dependencies

Requires grub2.

What could disrupt development of this new feature

This feature should be independent of any other development.

Planning

draklive needs to be modified to support use of GRUB2. I propose creating a new version that doesn't support legacy options. There is a lot of functionality in draklive that is not needed for creating the Live ISOs - dropping this functionality would simplify draklive, which would aid future maintenance. I have already prototyped this once (but unfortunately lost it due to a disk failure), so know what needs to be done.

The bcd scripts need to be modified to support use of GRUB2. Again I propose this should replace rather than add functionality.

Contingency

Continue using ISOLINUX + gfxboot.

Release Notes

Documentation

N/A.