La personalizzazione grafica della shell  è una delle malattie dell’utente linuxiano comune.

Come già visto in altri post, uno dei metodi è l’utilizzo del bootpslash grafico. Diversamente da bootsplash però potrebbe interessare per gli amanti della shell predefinita, cambiare solo il logo di bot; per intenderci il tux (in alto a sinistra) che all’avvio viene caricato dal kernel, con un immagine personale.

NB: prima di cominciare assicuriamoci di avere i sorgenti del kernel installati e il link simbolico alla versione del kernel in uso verso la dir /usr/src/linux. Nel caso non ci sia basterà quindi creare il link simbolico:

~# ln -s /usr/src/linux-2.6.x.x /usr/src/linux

Sistemati link e sorgenti kernel procederemo a salvare la nostra immagine (quella scelta per sostituire il tux logo)  in formato png: con un programma di grafica, esempio: Gimp (o quello che più preferite)

Ci basterà fare il solito “Salva con nome” e selezionare l’estensione giusta. Una volta ottenuta l’immagine png, click destro e scegliamo “Image -> Mode -> Indexed”, naturalmente per la versione italiana sarà una cosa del tipo: “Immagine -> Modalità -> Indicizzata”.

NB: Scegliamo 224 colori, che e’ il numero massimo di colori che il kernel riesce a gestire. Non ci resta che salvarla sempre in formato png.

Ora che avremo l’immagine non resta che convertirla in formato *.ppm . Tale conversione risulta estremamente facile grazie ai tool di default presenti nel sistema. In specifico grazie a: pngtopnm e pnmtoplainpnm. La sintassi è:

~# pngtopnm immagine.png | pnmtoplainpnm > /usr/src/linux/drivers/video/logo/logo_linux_clut224.ppm

NB: immagine.png sarà l’immagine scelta da noi precedentemente convertita in formato *.png

Non resta che effettuare le normali operazioni di compilazione del kernel:

~# make menuconfig

NB: controlliamo prima nel caso non lo avessimo fatto di avere abilitati:

Graphics Support ->
        [*] Support for frame buffer devices
        [*] VESA VGA graphics support

    Console display driver support ->
        [*] Video mode selection support

        <*> Framebuffer Console support

        [*]Select compiled-in fonts
        [*]VGA 8x16 font

    Logo configuration->
        [*]Bootup logo
        [*] Standard 224-color Linux logo

Dopo le necessarie verifiche:

~# make -j5 bzImage
~# make -j5 modules
~# make modules_install

Completata la compilazione non ci resta che copiare la nuova immagine kernel nella directory /boot e modificare lilo stando attenti che sia abilitata la modalità grafica __vga=791. Esempio:

~# cp /usr/src/linux/arch/i386/boot/bzImage /boot/image-linux
~# vi /etc/lilo.conf

NB: decommentiamo la modalità framebuffer scelta e commentiamo le altre:

# VESA framebuffer console @ 1024x768x64k
vga=791
# VESA framebuffer console @ 1024x768x32k
# vga=790
# VESA framebuffer console @ 1024x768x256
# vga=773

NB:  modifichiamo chiaramente il percorso dell’immagine kernel.

image = /boot/image-linux   # immagine kernel compilata con il nuovo logo
  root = /dev/hdaX          # percorso device root 
  label = Slack
  read-only

Salvate le modifiche non resta che restartare lilo:

~# lilo -v

# End