=== features.in/grub ===

Добавление поддержки grub; требуется для инсталяторов, live/rescue;
реализуется в рамках stage1.

Самостоятельное творческое использование на данный момент подразумевает
изучение кусочков конфигурации, которые уже существуют.

Цели config.mk:

* use/grub/ui/% -- конфигурирование интерфейса (см. cfg.in/01gfxterm.cfg);
  при использовании автоматически добавляют grub в FEATURES;

* use/grub/timeout/% -- задание таймаута автозагрузки (в секундах);

* use/grub/%.cfg -- подключение кусочков конфигурации.

Переменные generate.mk:

* BOOTARGS -- дополнительные аргументы загрузчику;

* BOOTLOADER -- isolinux (реализовано с оглядкой на grub/grub4);

* BOOTVGA -- видеорежим, запрашиваемый у ядра (параметр vga=);

* GRUB_UI -- тип интерфейса (если указан gfxboot, то графический,
  иначе текстовый);

* GRUB_CFG -- дополнительные кусочки конфигурации (например, live_rw);

* GRUBTHEME -- имя темы grub, если не задана, то получает значение BRANDING
  за вычетом традиционной приставки alt-);

* DISABLE_LANG_MENU -- отключает меню выбора языка в grub, если задана.

Здесь производится первичная обработка конфигурационных данных,
окончательно проверяемых и используемых уже в инструментальном чруте.

Обратите внимание: фрагменты, соответствующие именам субпрофилей,
добавляются автоматически; это поведение при необходимости отключается
выставлением переменной grub_DIRECT и тогда вместо use/grub/*.cfg
следует применять прямое указание вида @$(call set,grub_CFG,...).

Установить дефолтный пункт:
Для того, чтобы установить конкретный дефолтный пункт
(пример для LiveCD без поддержки сессии):

  @$(call set,GRUB_DEFAULT,live)

Именем дефолтного пункта является --id.

Запуск iso образа с неправильно работающей в grub графике (только EFI):
На ESP-разделе образа можно отредактировать конфиг EFI/BOOT/grub.cfg,
добавив в его начало:

  GRUB_TERMINAL='console'

Если нужно включить последовательную консоль, пропишите в нём:

  GRUB_TERMINAL='console serial'

  GRUB_SERIAL_COMMAND='serial --unit=0 --speed=115200'