Bootsplash в ArchLinux с помощью fbsplash

ArchLinux bootsplash — fbsplashЧто такое fbsplash?
fbsplash обеспечивает графическую среду во время загрузки системы c использования linux framebuffer, причем обеспечивает это в userspace (bootsplash)
Обеспечивает сей пакет только базовую функциональность сплеш-заставки в процессе загрузки и выключения компьютера. Для более тесной интеграции с ArchLinux существует пакет fbsplash-extras с дополнительными скриптами, позволяющий видеть ход загрузки/выключения системы (имена демонов, ход проверки файловых систем), иконки и прочие мелкие полезности...
Так же fbsplash обеспечивает обои и рамку в консоли если ядро поддерживает fbcondecor).

Устанавливаем
Так как по мнению истинных арчеводов сие от лукавого, то пакеты fbsplash-extras и fbsplash находятся в AUR, оттуда их и ставим, не забывая о какой-нибуть теме сплеш-заставки, к примеру fbsplash-theme-arch-black, которая устанавливается как зависимость от fbsplash-extras.
К сожалению во многих темах отсутствует поддержка некоторых разрешений экрана. Но для стандартной (если это так можно назвать) темы есть дополнение в виде fbsplash-theme-arch-black-extras поддерживающий много других разрешений монитора (1024x600, 1152x720, 1152x768, 1280x720, 1280x768, 1280x800, 1280x854, 1280x960, 1366x768, 1400x1050, 1440x1050, 1440x900, 1440x960, 1680x1050, 1920x1080, 1920x1200, 2048x1080, 2048x1536, 768x576), посему не забываем поставить и его. В общем
yaourt -S fbsplash fbsplash-theme-arch-black fbsplash-extras fbsplash-theme-arch-black-extras

В AUR находится достаточно тем (искать fbsplash-theme), так же можно найти их и на развалах opendesktop.org, kde-look.org и прочих look'ах...

Базовая настройка
Все настройки хранятся в файле /etc/conf.d/splash, там их не мало, но нас в первую очередь интересует тема. Поэтому устанавливаем её для своего разрешения экрана
SPLASH_THEMES="
    arch-black
    arch-black/1024x600.cfg
"

где arch-black это имя темы (каталог с темой в /etc/splash/), а 1024x600 это существующее в теме разрешение.
Конфиг достаточно хорошо прокомментирован (английским языком), обратите внимание на опцию SPLASH_XSERVICE
Особо ленивым или не желающим разбираться что да как в конфиге хватит только изменения темы, остальное можно оставить по умолчанию.

Linux kernel
А теперь включаем сие дело в init-образ ядра.
Добавляем в /etc/mkinitcpio.conf хук fbsplash сразу после udev, должно получится что-то вроде
HOOKS="блаблабла udev fbsplash блаблабла"
Если вы используете uswsusp и хотите в нем поддержки сплеш-экрана, то необходимо поставить из AUR uswsusp-fbsplash и использовать хук fbsplash несколько иначе
HOOKS="base udev блаблабла uresume fbsplash блаблабла"
(ну и о fbcondecor не забываем)
После сих действий пересобираем init-образ
mkinitcpio -p kernel26

Правим параметры загрузки ядра. При использовании KMS выставляем разрешение фреймбуфера через video (например, video=1024x600), или без него с помощью vga (допустим, nomodeset vga=789) и дополняем строками для splash-заставки, получаем что-то вроде (пример для grub)
kernel /path/to/kernel root=/dev/bla ro video=1024x600 console=tty1 quiet logo.nologo splash=silent,fadein,fadeout,theme:arch-black
Где arch-black имя темы, а logo.nologo отключает встроенный механизм вывода логотипа ядра...
Сохраняем, уходим в ребут и радуемся заставке =)

ВНИМАНИЕ!!! После каждого изменения настроек не забывайте пересоздать init образ, средствами mkinitcpio

Обратите внимание что если разрешение в загрузчике grub/lili/grub2(или что вы там используете) отличается от того что во фреймбуфере то в самом начале загрузки можно будет видеть немного строк о загрузке ядра вместо самого bootsplash.

Конечно не все так идеально — меня просто бесит момент между отключением splash и загрузкой иксов), но вполне годно. К тому же стандартной загрузки нас никто не лишает — во время показа splash-заставки можно нажать F2 и увидеть привычную загрузку...
FIL 11-02-2011
при включении что-то не работает...пишет что не найдена тема arch-black
Прохожий 11-02-2011
С зен-ядром и nvidia подружить не удалось, печаль-беда.
muhas 11-02-2011
@FIL когда пишет? при сборе образа (тогда видимо ошибка в конфиге в путях)? или при начале загрузке(тогда проверяй разрешение экрана и темы)? иле ещё когда? всё правильно сделал?

@Прохожий zen не пользовал, но с нвидиа вроде судя по отзывам должно работать, хотя на официальном арчефоруме пару раз поднимались проблемы с nvidia и fbsplash
FIL 11-02-2011
Starting udevd
Failed to found theme 'arch-black'
Wait 10 sec for /dev/disk/by-uuid/балаба
может диск не успевает инициализироваться? ибо при выключении же все работает...
muhas 11-02-2011
ы)))
когда избавишься от Wait 10 должно пройти, что-то помню такое... хотя вроде тема собирается в initrd
tchgefest 11-02-2011
Я использую plymouth,мне кажется он в настройке проше
muhas 11-02-2011
@tchgefest, о, я даже не слышал о таком. надо посмотреть... судя по описанию по сути то же, скринами не поделишься?
Guest 11-02-2011
Всем привет!.
# Fil решил проблему?
"Starting udevd
Failed to found theme 'arch-black'
Wait 10 sec for /dev/disk/by-uuid/балаба",
а то у меня идентичная ситуация (( при выключении робит
mii 11-02-2011
У меня было тоже самое "Failed to found theme 'arch-black'". Разрешение в консоли у меня с помощью uvesafb (для которого прописывал HOOK v86d). Когда поставил его перед fbsplash (HOOKS="base udev v86d fbsplash ...") заработало и при загрузке.
PS: "Waiting 10 seconds for device" остался.
tchgefest 11-02-2011
Скринов нет,извиняюсь
Но ставил вот https://wiki.archlinux.org/index.php/Plymouth
Именно английское wiki
Правда оговорюсь,я первоначально установил archbang.
FIL 11-02-2011
Ну поставил v86d вроде как заработало, правдо через одно место...По середине загрузки экран "лочиться", а уже разлочить можно когда иксы загрузились
Guest 11-02-2011
#tchgefest
А какую ты тему выбрал по умолчанию? У меня Archbang netbook(MSI U100). Мучался с fbsplash запустил, поставил v86d и в Xorg.conf прописал драйвер заместо intel поставил vesa и убрал в rc.conf модули для intel, только после этого заработало. Решил попробовать Plymouth, делал от сюда https://wiki.archlinux.org/index.php/Plymouth работает, но с темой не поял какую выбрать надо.
tchgefest 11-02-2011
cat /etc/plymouth/plymouthd.conf
# Administrator customizations go in this file
#[Daemon]
#Theme=fade-in
[Daemon]
Theme=spinfinity
yaourt -Ql plymouth
tchgefest 11-02-2011
Muhas.Спасибо,сегодня попробовал все работает
тема вот такая
SPLASH_THEMES=(
arch-black
arch-banner-icons/1024x768.cfg
arch-banner-noicons/1024x768.cfg
)
muhas 11-02-2011
@tchgefest как впечатления? лучше/хуже plymouth?

@FIL v86d? i915 и так же работает на ура MODULES="intel_agp i915... в /etc/mkinitcpio.conf и красота. или у тя другая видюха но тоже через v86d?
кстати, по поводу Wait 10 sec for /dev/ - можно в массив модулей в mkinitcpio попробывать добавить файлуху к примеру как-то так
MODULES="intel_agp i915 processor thermal ata_piix fan ahci jbd ext4 edd"

@Guest кстати, у меня тоже MSI U100 (видео в посте как-раз с него) - забей на v86d

читал новости о выход шестого дебьяна и в коммментах тоже упоминали plymouth - обязательно надо посмотреть как руки дойдут
tchgefest 11-02-2011
Впечатления нормальные Я все ставил на MSI U130
Мне кажется,что настройка plymouth попроше,да не забудьте они межу собой конфликтуют при установке fbsplash пришлось удалить plymouth
Guest 11-02-2011
Я бы забил на v86d но пока так не сделал писало, "Failed to found theme 'arch-black'"почему то не находило тему ((( я так и не понял почему так, хотя при выходе работало.
tchgefest 11-02-2011
У меня только ошибка идет при загрузке сети и acpid
Под значками error
А в остальном все хорошо
При ребуте вообще все хорошо
Guest 11-02-2011
#tchgefest а ты с v86d сделал или без него ?
tchgefest 11-02-2011
Без него конечно.Вот где скачать можно,что получилось
Говорю сразу качество отвратное и 40 метров все добро весит.
Вот смотрим http://narod.ru/disk/5179403001/fbsplash.JPG.tar.bz2.html
Все стоит на MSI U130,от archbang осталось скорей всего название.
Хороший дистр(я про ARCHlinux) для установки на недобук с флешки.
Сейчас стоит fbslash
Я думаю автор блога извинит меня.
Guest 11-02-2011
Как так ?? почему у меня без v86d тему не находит ?? никак не пойму. Можешь написать поподробней, что и как делал. (если не трудно) у меня к стати тоже archbang но как замечено мало, что от него осталось )
tchgefest 11-02-2011
Все поставил как Muhas написал.
Единственно в archbang используется grub2,а не grub.
У меня вот такая строка в /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="nologo quiet vga=791 console=tty1 splash=silent,fadein,fadeout,theme:arch-banner-icons"
Потом сделал grub-mkconfig -o /boot/grub/grub.cfg
А все остальное как выше,ну и в wiki заглянул.
У меня,что Muhas написал (я про grub), не заработает.Интуиция сработала.
Muhas может тему откроешь в http://archlinux.org.ru/
Может тоже кому скучно.
muhas 11-02-2011
повторюсь
по поводу Wait 10 sec for /dev/ - можно в массив модулей в mkinitcpio попробывать добавить файлуху к примеру как-то так
MODULES="intel_agp i915 processor thermal ata_piix fan ahci jbd ext4 edd"

или попробуйте через fallback загрузится

@tchgefest да как-то я на арчефоруме редкий гость, если зайду и увижу тему там может тоже поучаствую, а самому лениво. лучше в список рассылки
surf 11-02-2011
А почему бы попросту не грузиться на ренлевл 3?
muhas 11-02-2011
@surf это ты к чему? что 3 что 5, для fbsplash вроде как почти все-равно
tchgefest 11-03-2011
У меня после нового pacman -Syu
при загрузке выдал ошибку
На фразе init
muhas 11-03-2011
можно перефразировать в подробностях?
tchgefest 11-03-2011
Я заметил,что синтаксис файла /etc/conf.d/splash
Вместо ( ) скобок в секции SPLASH_THEMES=
Теперь используется " "
Посмотри http://pastebin.com/qTYCKGSF
muhas 11-03-2011
ага, конфиг малость изменился после последнего апдйета fbsplash, но до обдавления ядра это было незаметно ибо образ ядра не пересоздовался... сегодня загрузился тоже сплеш не сразу увидел поменял конфиг, сделал mkinitcpio но в ребут уходить лениво - вроде должно работать...
tchgefest 11-03-2011
Работать будет
Я изменил строку 14(это у меня),изменил () на ""
и 39 строку закоментил [b]#SPLASH_EFFECTS=$(e=();IFS=',';for w in $splash;do [[ $w == fade* ]]&&e+=($w);d$[/b]
поставил SPLASH_EFFECTS="fadein,fadeout"
Я заметил только тогда,у меня в zch алиас прописан
вот такой alias y="yaourt -Syu --aur --noconfirm".
Я его запустил и ушел.
А у меня и ядро обновилось и все остальное.Вот поэтому и заметил.
Сейчас все нормально
muhas 11-03-2011
так же не заметил, привык что fbsplash после апдейта пишет одно и тоже, ан нет - в этот раз не тоже, но уже не прочитал. ща перезагружался - работает как и раньше... Поправил пост
tchgefest 11-07-2011
Как fbsplash поживает,у меня ребут работает,а
вот загрузка нет,картинки нет
muhas 11-07-2011
@tchgefest работает как и раньше, ни единого изменения не заметил...