| LFS a FBsplash |
|
|
|
| Zhlédnutí: 1901 | ||||||||
| Napsal filbar | ||||||||
| Sobota, 29 červenec 2006 | ||||||||
| Aktualizováno ( Úterý, 01 srpen 2006 ) | ||||||||
|
Jelikož se vývoj originálního bootsplash pozastavil(posledni verze patche je pro jádro 2.6.15), musel jsem se teda poohlédnout po jiném řešení grafického bootování. Nemusel jsem hledat dlouho. Vyspělé řešení jsem nalezl na stránkách příbuzného projektu Gentoo, které používá na bootsplash postavené FBsplash.
Pro instalaci budeme potřebovat balíčky: splashutils-1.1.9.10, miscsplashutils-0.1.3, a splashutils-lfs, dále 2 patche na jádro: fbsplash-0.9.2-r5-2.6.16.patch a vesafb-tng-1.0-rc1-r3-2.6.16.patch. Na stránkách projektu FBSplash sice existují o něco novější verze jako splashutils-1.3 a miscsplashutils-0.1.4, ale ty jsem nezkoušel. Nejspíše by měly fungovat také. Nejnovější patche na jádro označené git-20060629 se mi rovněž nepodařilo úspěšně aplikovat na vanilla jádro, proto uvádím o něco starší verzi. Na závěr bude potřeba nějaké téma, které si obstaráte nejlépe ze sídla bootsplash, které si později překonvertujete do potřebného formátu pomocí dodaného scriptu, nebo můžete využít mé téma. JádroNejprve bude potřeba si obstarat vanilla jádro z kernel.org, nebo jeho mirrorů a rozbalit jej. Na rozbalené jádro aplikujeme patche fbsplash, který přidává podporu pro grafické bootování a vylepšenou verzi vesy(vesafb-tng), která sice neni nutná, ale funguje mnohem lépe než ta standartní, např. po hibernaci do paměti jsem s klasicou VESou měl po probuzení problémy s textovými konsolami, kdy neprve nefungovaly vůbec a v 2.6.17 se mi přebarvilo písmo do oranžova. Toto všechno s vesafb-tng již funguje správně. Pokud používáte patche ze suspend2, tak s nimi nebudete mít žádný problém, patche se snášejí naprosto v pořádku. Patche aplikujeme v adresáři s rozbaleným jádrem pomocí příkazů: patch -Np1 -i cesta_ke_staženému_patchi/fbsplash-0.9.2-r5-2.6.16.patch Poté je třeba jádro nově nakonfigurovat jádro. Pro textový režim spustíme make menuconfig. V grafice můžeme použít make xconfig.Nejprve se podíváme do části Device Drivers->Graphics Support, kde se ujistíme, že není zaškrnuta volba Enable Tile Blitting Support. V případě, zaškrnutí by totiž nebylo možné povolit Support for the framebuffer splash. Dále se ujistíme, že máme do jádra zakompolováno Support for frame buffer devices a VESA VGA graphics support. Pokud jsme aplikovali patch vesafs-tng, můžeme se zde také rozhodnout, jestli jej použijeme. V případě nové VESY zde ještě musíme nastabit rozlišení a frekvenci fb konzol. Protože budeme během bootování potřebovat klávesu pro přepínání mezi textovým a grafickým režim zajistíme, aby pod Device Drivers->Input Device Support bylo zakompilována do jádra položka Event Interface. GrafikaNež se nám jádro zkompiluje, můžeme si připravit grafické rozhraní bootování-tj obrázek. Buďto odsud, anebo ze stránek bootsplash si stáhneme motiv a nainstalujeme jej do adresáře /etc/bootsplash. Poté si rozbalíme balíček splashutils-1.1.9.10, kde v podadresáři scripts najdeme skript bootsplash2fbsplash. Jako jeho parametr zadáme jméno tématu, které máme nainstalováno v adresáři /etc/bootsplash. Ve výsledku se vytvoří adresář /etc /splash/téma. Pokud použijete téma z těchto stránek, stačí jej rozbalit do adresáře /etc/splash, již je z formátu bootsplash překonvertováno. GRUBV mezičase si také můžeme připravit konfiguraci zavaděče systému. Protože v systému LFS je ve výchozím stavu používan GRUB, tak se v tomto návodu zaměřím pouze na něj. Pro případ problémů si vytvořte novou položku, ve které stačí pouze změnit řádek kernel, kde přidáte: SplashutilsPokud se již jádro zkompilovalo, přejdeme do rozbaleného adresáře splashutils a provedeme symbolický odkaz do adresáře s nově zkompilovaným jádrem Linuxu pod jménem linux: ln -s cesta/k/jádru/linux-verze linux Protože LFS nepoužívá klibc a klcc, je třeba provést změnu v souboru Makefile, aby řádek začínající na KLCC vypadal takto: KLCC = gcc Další soubor, který musíme upravit má jméno daemon.c. Zde si na začátku najděte řádku #include <linux/input.h> a změňte jí na: #include "/usr/include/linux/input.h" protože ve výchozím stavu se bere soubor z jádra, se kterým kompilace zkončí chybou. Nyní již můžeme splashutils zkompilovat a nainstalovat: make MiscsplashutilsDále zkompilujeme a nainstalujeme balíček miscsplashutils: make Tento balíček se nainstaloval do adresáře /lib/splash/bin. V adresáři /lib/splash ještě vytvoříme adresáře cache a tmp. Splashutils-lfsTím jsme již téměř u konce a stačí nainstalovat balíček splashutils-lfs. Ten můžeme nainstalovat buď ručně anebo automaticky pomocí příkazu ./install.sh v adresáři s rozbaleným balíčkem. Pokud se rozhodneme pro ruční instalaci, ani ta není o moc složitější. Nejprve si musíme překopírovat soubory functions a splash-functions do adresáře /etc/rc.d/init.d. Soubor splash-functions zajišťuje většinu funkcionality splashe. Původní soubor functions bylo třeba upravit, aby bral postup bootování ze jména symbolického odkazu na službu. Protože došlo k přejmenování některých funkcí je třeba rovněž přepsat soubor iptables v /etc/rc.d/init.d a ifup s ifdown v /etc/sysconfig/network-devices/. Soubor splash-etc zajišťuje spuštění splashe při vstupu do runlevelu. Při přesunu jej přejmenujte na splash a pokud chcete, aby se spouštěl pouze z úrovně 5, která je ve výchozím stavu grafická zadejte v adresáři /etc/rc.d/rc5.d příkaz ln -s ../init.d/splash S00splash. Pokud chcete mít v grafice i vypínání a restartování zadejte v adresářích /etc/rc.d/rc0.d a /etc/rc.d/rc6.d/ příkaz ln -s ../init.d/splash K00splash. Soubor splash-con způsobí zapnutí grafického pozadí na všech textových konzolích. Taktéž jej umístěte do /etc/rc.d/init.d/ a z požadované úrovně proveďte odkaz ln -s ../init.d/splash-con S99splash-con. Pokračujeme zkopírováním souboru splash-sbin do adresáře /sbin, jako soubor splash Jako poslední nás čeká zkopírování splash.conf do adresáře /etc/splash. Tento soubor si prohlédněte a proveďte v něm případné změny, např.: pokud máte jiné téma než výchozí Linuxsp, tak upravte řádek SPLASH_THEME=. Teď už by mělo stačit systém restartovat a při startu s novým jádrem by vás měla přivítat grafické bootování.
Powered by !JoomlaComment 3.22
3.22 Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved." |
||||||||
| < Předch. | Další > |
|---|