Свое Boot logo или пингвины при старте ядра

Переношу сюда тему, чтобы не искать потом. Итак: кастомизация Boot logo - те самые пингвины, которые показывают количество ядер.
Можно сделать своё лого.

У многих Boot logo (пингвины, показывающие количество потоков или ядер) не работает из коробки. В связи с этим небольшая памятка.

  1. В /boot/grub/grub.cfg в стоке linux предлагается убрать слово quiet (рядом со splash).
  2. В ядре (.config) отключить (закомментировать) #CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER=y Поставить is not set
  3. Включить boot logo в ядре: Device Drivers->Graphics->Boot logo (то, которое 224)
  4. Включить в ядре поддержку Framebuffer (вариативно, от системы)
  5. Поставить в grub.cfg нужный режим, например, vga=0x317 для 1024х768 (можно разными способами сделать).

Кастомизация (создание своего) Boot logo

  1. Заходим в /usr/src/linux/drivers/video/logo
  2. Удалим файлы: logo_linux_clut224.c и logo_linux_clut224.o (они генерируются при компиляции ядра)
  3. Отредактируем файл logo_linux_clut224.ppm в редакторе gimp по своему вкусу.
  4. Установим пакет netpbm
  5. Отредактируем количество цветов программой: ppmquant

ppmquant 224 logo_linux_clut224.ppm > logo_linux_clut224.ppm

  1. Переведем в ASCII формат лого: pnmnoraw logo_linux_clut224.ppm > logo_linux_clut224.ppm

Для конвертации можно использовать промежуточный файл, предварительно переименовав logo_linux_clut224.ppm.

Логотип готов. Осталось перекомпилировать ядро.

P.S. Кстомизированное мной Boot Logo: logo_linux_clut224.ppm — Яндекс Диск
Пример: IMG-20240307-16313232 hosted at ImgBB — ImgBB

1 Like
  1. Лучше сделать так:
    ppmquant 224 logo_linux_clut224.ppm > logo_linux_clut224_TEMPORARY.ppm
  2. pnmnoraw > logo_linux_clut224_TEMPORARY.ppm > logo_linux_clut224.ppm

P.S.
Необходимо использовать временный файл для редактирования цветов, иначе файл может стать нечитаемым.