Ho modificato un tema per grub2 per il mio kubuntu karmic (anche per ubuntu), cercando qualche repo nuovo ho trovato una guida su sourceslist.eu(se non c'era non combinavo nulla) e l'ho adattata al mio tema.
Il tema modificato è il sora v0.3, quando passate sopra alle icone dei sistemi operativi cambia facendovi vedere un monitor con una anteprima del desktop, è anche tradotto in italiano parzialmente.
Consiglio di avere a portata di mano un cd del grub nel caso si facciate errori o che la mia guida ne contenesse,
purtroppo non posso garantire nulla.
Comunque ecco il risultato

:
chi vuole provarlo ecco la guida con i file necessari:Installazione tramite pacchetti binari1) Aggiungere questa riga alla vostra /etc/apt/sources.list:
deb http://ppa.launchpad.net/bean123ch/burg/ubuntu karmic main
deb-src http://ppa.launchpad.net/bean123ch/burg/ubuntu karmic main
Per farlo basta eseguire tramite terminale:
sudo add-apt-repository ppa:bean123ch/burg
Poi usate i seguenti comandi per scaricare e installare i pacchetti (compreso emulatore del grub cosi potete vedere il risultato delle vostre modifiche senza riavviare):
sudo apt-get update && sudo apt-get dist-upgrade
sudo apt-get install grub-pc grub-emu
Dopo di ciò, dovete installare il nuovo boot manager nel MBR o partizione del settore d’avvio, per esempio:
sudo grub-install "(hd0)"
sudo update-grub
Ogni volta che effettuate qualche modifica alla configurazione del grub dovete sempre aggiornare tramite “sudo update-grub”.
Prima di fare qualsiasi modifica alla configurazione del grub riavviate il vostro pc. Una volta arrivati al Grub2 digitate “c” per passare alla console del Grub2. Nella console eseguite il comando:
vbeinfo
A questo punto vi verranno visualizzate tutte le risoluzioni supportate dal Grub2 che cambiano ovviamente in base alla vostra scheda video.
Vi riporto un esempio su come si presenta il testo:
640×400x8
640×480x8
800×600x8
1024×768x8
1280×1024x8
640×400x16
640×480x16
800×600x16
1024×768x16
1280×1024x16
1680x1050x32
Scegliete fra quelle elencate una risoluzione che meglio si adatta al vostro schermo ricordando che i primi due valori corrispondono alla risoluzione vera e propria mentre il terzo valore corrisponde all’ampiezza di banda passante dello slot espressa in bits.
1.Nel mio caso ho considerato come risoluzione:
1680×1050x32NB: è la risoluzione settata di default nel tema
Una volta esserci annotati con precisione la risoluzione, premiamo “Esc” oppure digitiamo “reboot” e poi invio per tornare al menù e poi bootiamo in K/ubuntu
Prima di tutto ci creiamo una copia di backup dell’attuale configurazione funzionante:
sudo cp /boot/grub/grub.cfg /boot/grub/grub.cfg.backup
Ora estraiamo il tema tramite il menù contestuale del vostro file
scaricate il tema di kubuntu/ubuntu(ce ne sono anche altri nell'archivio) da qui:
http://rapidshare.de/files/48980169/grub2-tema-kubuntu.7z.htmlsudo tar xzf ~/grub2-tema-kubuntu.7z
spostate la cartella in /boot/grub/
sudo mv themes /boot/grub/
Ora aprite il file /etc/default/grub con il vostro editor di testo preferito (nano, gedit, kate…):
sudo kate /etc/default/grub
e incollate in coda al file le seguenti righe (modificanto
GRUB_GFXMODE= con la vostra risoluzione scelta):
GRUB_THEME=kubuntu
GRUB_GFXMODE=1680x1050x32
GRUB_FOLD=1
Salvate e uscite dall’editor di testo.
Editate /etc/grub.d/40_custom (non so se serve ancora con gli ultimi update di burg)
sudo kate /etc/grub.d/40_custom
aggiungente le seguenti righe (cambiando
set gfxmode = con la vostra risoluzione scelta):
set gfxmode="1680x1050"
set gfxfont="Unifont Regular 16"
loadfont /boot/grub/themes/fonts/unifont.pf2
loadfont /boot/grub/themes/fonts/aqui.pf2
loadfont /boot/grub/themes/fonts/edges.pf2
loadfont /boot/grub/themes/fonts/lime.pf2
loadfont /boot/grub/themes/fonts/7x13B.pf2
loadfont /boot/grub/themes/fonts/smoothansi.pf2
loadfont /boot/grub/themes/fonts/Helvetica-Bold-14.pf2
insmod vbe
insmod png
insmod coreui
. /boot/grub/themes/kubuntu/clean/theme.cfg
salvate e chiudete.
A seconda che utilizziate gnome o kde installate i pacchetti gettext o gettext-kde (Utilità GNU per l’internazionalizzazione):
kubuntu:
sudo apt-get install gettext-kde
per ubuntu:
sudo apt-get install gettext
Ora aggiornate la configurazione del Grub2 eseguendo:
sudo update-grub
per vedere il risultato inviate questo comando:
sync ; sudo grub-emu
è gia carino ma si può fare di più ecco come:
PersonalizzazioneCome avrete notato nonstante nelle cartelle icons siano presenti le icone, non vengono visualizzate correttamente.
Questo si spiega facilmente aprendo il file /boot/grub/grub.cfg e il file /boot/grub/themes/kubuntu/icons/icons.txt.
Nel file /boot/grub/themes/kubuntu/icons/icons.txt sono definite delle classi in base alle quali vengono visualizzati i diffenti loghi.
class {
Ubuntu { image = "/boot/grub/themes/kubuntu/icons/kubuntu.png:/boot/grub/themes/kubuntu/icons/kubuntu-desktop.png" }
Ubuntu1 { image = "/boot/grub/themes/kubuntu/icons/kubuntu.png:/boot/grub/themes/kubuntu/icons/kubuntu-recovery.png" }
Memtest { image = "/boot/grub/themes/kubuntu/icons/memtest.png:/boot/grub/themes/kubuntu/icons/memtest-desktop.png" }
MacOSX { image = "/boot/grub/themes/kubuntu/icons/macosx.png:/boot/grub/themes/kubuntu/icons/leopard-desktop.png" }
Windows { image = "/boot/grub/themes/kubuntu/icons/windowsxp.png:/boot/grub/themes/kubuntu/icons/windowsxp-desktop.png" }
unknown { image = "/boot/grub/themes/kubuntu/icons/unknow.png:/boot/grub/themes/kubuntu/icons/Unknow-desktop.png" }
Windows1 { image = "/boot/grub/themes/kubuntu/icons/windows7.png:/boot/grub/themes/kubuntu/icons/windows7-desktop.png" }
Windows2 { image = "/boot/grub/themes/kubuntu/icons/vista.png:/boot/grub/themes/kubuntu/icons/windows_vista-desktop.png" }
}
N.B: er chi
ha Ubuntu e vuole visualizzare l'icona correttamente deve modificare la prima e la seconda riga in questo modo:
Ubuntu { image = "/boot/grub/themes/kubuntu/icons/ubuntu.png:/boot/grub/themes/kubuntu/icons/ubuntu-desktop.png" }
Ubuntu1 { image = "/boot/grub/themes/kubuntu/icons/ubuntu.png:/boot/grub/themes/kubuntu/icons/kubuntu-recovery.png" }
se volete migliorare ulteriormente l'aspetto bisognerà a modificare /boot/grub/grub.cfg che ci permetterà di aggiungere classi, però ogni volta che si aggiorna il grub o il kernel si devono rifare questi cambiamenti.
Nel /boot/grub/grub.cfg si può vedere che ogni entry del menù del grub è associato ad una classe.
Le due voci relative a Ubuntu sono associate alla classe linux:
### BEGIN /etc/grub.d/10_linux ###
menuentry “Ubuntu GNU/Linux, with Linux 2.6.32-020632-generic” –-class Ubuntu --menu menu_Ubuntu {
insmod ext2
set root=(hd0,5)
search –no-floppy –fs-uuid –set dfd3610b-2bb6-4e89-aa7a-e7f70540bebc
linux /boot/vmlinuz-2.6.32-020632-generic root=UUID=dfd3610b-2bb6-4e89-aa7a-e7f70540bebc ro quiet splash
initrd /boot/initrd.img-2.6.32-020632-generic
}
menuentry “Ubuntu GNU/Linux, with Linux 2.6.32-020632-generic (recovery mode)” –-class Ubuntu1 --menu menu_Ubuntu {
insmod ext2
set root=(hd0,5)
search –no-floppy –fs-uuid –set dfd3610b-2bb6-4e89-aa7a-e7f70540bebc
linux /boot/vmlinuz-2.6.32-020632-generic root=UUID=dfd3610b-2bb6-4e89-aa7a-e7f70540bebc ro single
initrd /boot/initrd.img-2.6.32-020632-generic
}
### END /etc/grub.d/10_linux ###
-- class Ubuntu1 (il recovery mode per capirci) è stata modificata in modo da avere una diversa icona quando selezionato
la parte della memoria da cambiare:
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry "Memory test (memtest86+)" --class Memtest {
linux16 /boot/memtest86+.bin
}
menuentry "Memory test (memtest86+, serial console 115200)" --class Memtest {
linux16 /boot/memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###
dovete aggiungere
--class Memtest se volete visualizzare correttamente l'icona a essa associata.
La parte degli altri sistemi operativi:
### BEGIN /etc/grub.d/30_os-prober ###
menuentry "Windows XP (on /dev/sdb1)" --class Windows {
insmod ntfs
set root=(hd1,1)
search --no-floppy --fs-uuid --set 0cb4f6fdb4f6e85a
drivemap -s (hd0) ${root}
chainloader +1
}
menuentry "Mac OS X (on /dev/sdc1)" --class MacOSX {
insmod hfsplus
set root=(hd2,1)
search --no-floppy --fs-uuid --set f8bfb559c77b9402
chainloader +1
}
menuentry "Windows 7 (loader) (on /dev/sdd1)" --class Windows1 {
insmod ntfs
set root=(hd3,1)
search --no-floppy --fs-uuid --set 3a382c45382c028d
chainloader +1
}
menuentry "Windows Vista (loader) (on /dev/sde1)" --class Windows2 {
insmod ntfs
set root=(hd4,1)
search --no-floppy --fs-uuid --set 3a382c45382c028d
chainloader +1
}
### END /etc/grub.d/30_os-prober ###
riassumendo:
Windows XP = --class Windows
Windows 7 = --class Windows1
Windows Vista = --class Windows2
MacOSX = --class MacOSXLe classi per windows e mac (se ce li avete installati naturalmente) che dovete associare come vedete, o modificare il file /boot/grub/themes/kubuntu/icons/icons.txt in modo che possano combaciare.
ora che avete modificato il tutto potete vedere come vi è venuto il vostro grub:
sync ; sudo grub-emu
in fine se volete cambiare lo sfondo basta sostituire l'immagine che sta /boot/grub/themes/kubuntu/background.png
se qualcuno è in grado di fare qualche script per automatizzare qualche procedura è ben accetta
---------------------------
ATTENZIONE: E’ sempre meglio conservarvi una copia di backup del file /boot/grub/grub.cfg in quanto tale file non dovrebbe essere editato così come è scritto ad inizio file (# DO NOT EDIT THIS FILE) visto che viene generato automaticamente da “/usr/sbin/grub-mkconfig” ogni volta che eseguiamo “sudo update-grub” oppure ogni volta che installiamo un nuovo kernel. Se abbiamo una copia di backup possiamo eventualmente ripristinare le modifiche perse.
In alternativa per rendere le modifiche persistenti potete andare ad editare i file /etc/grub.d/10_linux (e modificare la classe da “ubuntu” o “ubuntu1") per quanto riguarda K/Ubuntu e /etc/grub.d/30_os-prober per quanto riguarda windows (aggiungendo la classe “–class windows”) e gli altri sistemi operativi. In questo modo quando si effettuerà “sudo update-grub” non perderete le modifiche effettuate.
Inoltre se effenduando delle modifiche ai file di configurazione del grub, il grub stesso non dovesse partire a causa di una errata configurazione vi si può porre rimedio in due modi.
O tramite la console del grub si carica il backup di una configurazione funzionante del grub (grub.cfg):
configfile (hd0,X)/boot/grub/grub.conf.backup
Dove la X va sostituita con il numero identificativo della partizione dove si trova Ubuntu (nel mio caso (hd0,5) .Poi si avvia Ubuntu e si cerca di correggere i possibili errori di configurazione.
Oppure dovete accedere tramite il cd live di Ubuntu ed editare usando nano il file /boot/grub/grub.cfg commentando o eliminando le righe del file header (contenute tra ### BEGIN /etc/grub.d/00_header ### e ### END /etc/grub.d/00_header ###, tranne l’ultima (set timeout=5)). Una volta riavviato dovrebbe essere visualizzato il vecchio grub. Quindi entrate in Ubuntu e cercate di porre rimedio ripristinando eventuali modifiche effettuate ai file di configurazione del grub.
Per esempio potete commentare le ultime due righe che avevate aggiunto al file /etc/default/grub oppure se avete inserito una risoluzione errata provate a cambiare risoluzione.
Fonti:
http://www.sourceslist.eu/guide/guida-allinstallazione-e-alla-configurazione-dei-temi-per-il-grub2/http://groups.google.com/group/burg-develspero che vi gusta
saluti Orange