Настройка bootsplash в gentoo
Решил я облагородить процесс загрузки.
Погуглил, нашёл кучу инструкций, но все какие-то “бородатые”, а те, что не бородатые, те неполные. Пришлось часть додумывать
Делать бутсплеш будем для абстрактного gentoo в вакуме ядра версии 2.6.28. Исходники gentoo-sources. Они содержат необходимые патчи. Если исходники другие, то необходимо наложить патч fbsplash. Ядро собираю через genkernel
- Ставим необходимые пакеты
Добавляем в /etc/make.conf use-флаг fbcondecor. Ставим splashutils, и по желанию, темы
emerge splashutils splash-themes-gentooТемы также обитают на kde-look.org. Скачанные темы нужно поместить в /etc/splash -
Конфигуряем ядро
Сразу же выбираем тему и разрешение (тема должна это разрешение подерживать)
genkernel --olconfig --splash=emergence --splash-res=1280x1024 --menuconfig allКлюч gensplash является deprecatedНебольшое отступление. Я считаю, что самый удобный способ конфигуряния ядра – через menuconfig. Потому что в нём можно найти необходимую опцию по имени, можно посмотреть описание, и самое главное, только в нём можно увидеть зависимости, и блочащие опции. Для меня это было критично важно, так как у меня были включены опции блочащие fbcondecor
Для работы сплеша необходимы следующие опции
- Ядро должно быть модульное, и с поддержкой initrd
- Support for frame buffer devices (CONFIG_FB)
- Поддержка VESAFB (CONFIG_FB_VESA)
- Support for the Framebuffer Console Decorations (CONFIG_FB_CON_DECOR). Собственно, это самая важная опция, и она требует остальные
- Настройка загрузчика
Ядро и initrd собрали, теперь надо указать их в grub. Это будет выглядеть примерно так:
title gentooрежим vga=794 – это для разрешения 1280×1024. Для 1024×768 должно быть vga=791
kernel (hd0,0)/boot/kernel-genkernel-x86-2.6.28-gentoo-r1 root=/dev/sda1 resume=/dev/sda2 vga=794 splash=silent,theme:emergence console=tty1 quiet
initrd (hd0,0)/boot/initramfs-genkernel-x86-2.6.28-gentoo-r1
За сплеш отвечаетsplash=silent,theme:emergence console=tty1 quietТема должна быть указана. - добавляем fbcondecor в автозагрузку
rc-update add fbcondecor default - Reboot
Теперь у нас есть картинка при загрузке, и фоновая картинка в консолях. Любители разнообразия могут почитать /etc/conf.d/fbcondecor
Для смены картинки сплеша, необходимо переделать initrd и поменять конфиг grub. Initrd пересобирать так:genkernel --no-clean --no-mrproper --splash=emergence --splash-res=1280x1024 ramdisk
Возможная проблема: Прогресс-бар не доходит до 100% и блокирует вторую консоль. У меня было такое, из-за того, что в /etc/conf.d/modules были указаны несуществующие модули и об этом выдавалась ошибка



Я сделал все как здесь написано, splash появляется при загрузке, есть индикатор, доходит до 100%, но когда начинает гаснуть сплэш, картинка виснет и все. Можно перейти в другую консоль и перезапустить xdm. Тогда все работает – Х-сы запускаются. Также если перейти во время загрузки в verbose mode, то Х-сы грузятся нормально.Что делать?
Решено. echo ‘kdm’ >> /etc/conf.d/local.start
@ xwrs:
Проблема с запуском иксов, похоже.