Jeżeli często używamy konsoli framebuffer, to może znudzić się nam standardowe czarne tło.
Możemy wtedy urozmaicić sobie miejsce pracy wyświetlając w tle "tapetę". Może to wyglądać tak:
Aby uzyskać taki efekt potrzebujemy:
Najpierw rozpakujemy łatkę:
# xz -d bootsplash-X.X.X.diff.xz
następnie kopiujemy ją do katalogu ze żródłami kernela:
# cp bootsplash-X.X.X.diff /usr/src/linux
i patchujemy jądro komendą wykonywaną w katalogu ze źródłami:
# patch -p1 < bootsplash-X.X.X.diff
Nie bedę opisywał tutaj sposobu budowy jądra systemu, jest na ten temat w sieci bardzo wiele
poradników. Opcje potrzebne do uruchomienia bootsplasha to:
General setup ->
[*] Initial RAM filesytems and RAM disk (initramfs/initrd) support
Device Drivers ->
Graphics Support ->
Console display driver support ->
<*> Framebuffer Console support
Device Drivers ->
Graphics Support ->
Bootsplash Configuration ->
[*] Bootup splash screen
Następnie kompilujemy i instalujemy jądro. Dekompresujemy do katalogu /etc/
(
# tar Jxvf bootsplash.tar.xz -C /etc/) archiwum
zawierające plik konfiguracyjny i tapety. Następnie tworzymy plik initrd. Jest on
niezbedny
aby tapeta była widziana zaraz po starcie jądra. Robimy to używając programu splash (możemy go skopiowac do
katalogu /usr/bin):
# splash -s -f /etc/bootsplash/bootsplash-1024x768.cfg > /boot/splashinit
Następnie musimy tak skonfigurować bootloadera aby uruchamiał jądro w trybie 1024x768 16bit.
Podam przykład dla
/etc/lilo.conf, trzeba
dodać lub zmienić te linijki:
vga=791
initrd=/boot/splashinit
Instalujemy lilo poleceniem
# lilo.
Teraz możemy zmienić lokalny skrypt startowy (np. /etc/rc.d/rc.local) aby tapeta była wyświetlana na
wszystkich terminalach. Oto przykład dla 4 terminali wirtualnych:
for i in 0 1 2 3 ;
do
/usr/bin/splash -s -u$i -n /etc/bootsplash/bootsplash-1024x768.cfg;
done
Tapete możemy zmienic edytujac plik /etc/bootsplash/bootsplash-1024x768.cfg, sekcja:
jpeg=sciezka_do_pliku. Pliki graficzne to jpeg 1024x768.
Po zmianie obrazu trzeba wykonac polecenie
tworzące splashinit i przeładować lilo.