Créer un thème sur GFXBoot (Grub Legacy graphique)

Introduction

GFXBoot (ou Grub-GFX) est un gestionnaire de démarrage basé sur Grub Legacy, mais qui permet d'être graphique. Il est possible d'ajouter une image de fond, mettre des couleurs, changer la police, ...

Le fichier qui sera modifié sera /boot/grub/menu.lst. Je vous conseille fortement de faire une sauvegarde de ce fichier. Ainsi, si jamais vous faites une fausse manipulation, il vous sera possible à partir d'un live CD de revenir à l'ancienne version.

1 $> cp /boot/grub/menu.lst /boot/grub/menu.lst.save

Nous devrons aussi ajouter une archive cpio, qui sera notre thème.

Réalisation du thème

Voici le thème que j'utilise : http://www.dewep.net/Fichier-E144F811/theme-opensuse.cpio.

J'ai pris un thème trouvé sur internet que j'ai modifié pour avoir le rendu que je souhaitai.

Nous nous baserons sur ce thème pour la suite de cet article.

Grub Screenshot

Extraire l'archive

Commençons par extraire cette archive. Créez un dossier, puis extraire l'archive dedans :

1 $> cpio -i < ../theme_opensuse.cpio

Les configurations du thème se trouve dans le fichier gfxboot.cfg.

Les principales configurations

Changer la police du menu :

1 font.large=fichier.fnt

Changer la police des autres textes :

1 font.normal=fichier.fnt

Mettre une image de fond (fichier .jpg) :

1 background=background.jpg

Les catégories de configurations à appliquer :

1 layout=1920x1080,boot

Taille de l'écran :

1 screen.size=1920x1080

Position du menu :

1 mainmenu.pos=x,y

Il y a plein d'autres configurations possibles, le fichier est pas mal commenté.

Les fichiers polices (.fnt)

Pour ajouter une nouvelle police, il faut avoir un fichier fnt.

La commande gfxboot-font permet de convertir une police au format ttf au format fnt.

Pour la police ubuntu par exemple :

1 $> gfxboot-font -v -c ISO-8859-15 -p . -f UbuntuMono-B.ttf:size=30 ubuntu.fnt > ubuntu.log
  • UbuntuMono-B.ttf : nom du fichier ttf présent dans le dossier courant (-p .)
  • size=30 : taille de la police
  • ubuntu.fnt : fichier de destination

Le fichier ubuntu.log est facultatif, il permet juste de voir si la police a bien été traitée.

Recréer l'archive

Le fichier filelist contient la liste des fichiers à archiver. Si vous avez créé une nouvelle police, pensez à l'ajouter.

Pour recréer l'archive cpio :

1 $> cpio -o < filelist > ../mon_theme.cpio

Le fichier /boot/grub/menu.lst

Sélectionner automatiquement le dernier utilisé OS lancé :

1 default saved

Nombre de secondes avant que l'OS sélectionné se lance automatiquement :

1 timeout 15

Le chemin vers votre archive cpio créé précédemment :

1 gfxmenu (hd0,2)/boot/mon_theme.cpio

Doc.ubuntu-fr.org : (hdX,Y) se détermine ainsi : X=numéro du disque, numéroté à partir de 0. Si vous n'avez qu'un disque X=0 ; si vous en avez deux et que /boot est sur le second, X=1, s'il est sur le premier, toujours X=0. Grub ne fait pas la différence entre les disques IDE, SATA. Il leur attribue un numéro en fonction de leur ordre de détection.

Annexe

Quelques liens utiles si vous souhaitez d'autres informations :


Linux Grub GFXBoot

Article publié le 31 Janvier 2013.

Commentaires