changement de l’image d’arrière plan de grub 2

La nouveauté la plus visible dans la version de développement de ubuntu, Karmic Koala, est l’intégration de la version 2 du chargeur de démarrage grub. Par rapport à l’ancienne version, cette nouvelle version apporte entre autres la possibilité d’avoir une interface graphique un peut plus élaborée[1]. Avec la version alpha 2 de Karmic, grub 2 fait son entrée mais il garde l’apparence « classique » de grub 1 en y ajoutant un peut de couleur bleu :).

grub2

En attendant que l’équipe artistique de ubuntu nous crée une belle interface graphique j’ai tenté de faire le plus simple à savoir changer l’image d’arrière plan de grub.

    Attention les opérations qui vont suivre contiennent des instructions qui risquent d’endommager votre système.

Pour changer l’arrière plan nous avons besoin en premier lieu de l’image. En ce qui me concerne j’ai opté pour l’image de l’arrière plan de la fenêtre de connexion.

gdm background

Cette image doit être redimensionnée à la taille 640×480 avec un codage sur 8 bits. Pour cela nous aurons besoin d’un outil de manipulation d’images et ça sera ImageMagick qui est disponibles dans les dépôts ubuntu.

Voici donc les étapes à suivre :

  • Installation de ImageMagik
      sudo apt-get install imagemagick
  • Création d’une copie de l’image qui se trouve normallement dans le répertoire /usr/share/gdm/themes/Human. Bien sure vous pouvez choisir n’importe quelle autre image.
      cp /usr/share/gdm/themes/Human/background.png $HOME
  • Conversion de l’image à la taille et à la pourfendeur demandées.
      convert $HOME/background.png -resize 640x480! -depth 8 $HOME/background640.png
  • Ça y est notre image est prête. Intéressons nous maintenant au fichier de configuration du thème de grub 2, le fichier /etc/grub.d/05_debian_theme. Ce fichier contient une ligne que nous devons adapté selon notre besoin. Cette ligne (la 16ème) contient initialement :

      for i in {/boot/grub,/usr/share/images/desktop-base}/a.{png,tga} ; do

    On peut interpréter cette ligne comme suit : le système cherche dans les répertoires /boot/grub et /usr/share/images/desktop-base une image nommée a et avec l’extension png ou tga. Donc ce qu’il nous reste à faire est de placer notre image dans l’un des deux répertoires de recherche et de remplacer le nom par défaut par le nom de notre image et voici les étapes à suivre :

  • Copie de l’image vers l’un des répertoires de recherce, par exemple /boot/grub
      sudo cp $HOME/background640.png /boot/grub/background640.png
  • Création d’une copie de sauvegarde du fichier de configuration.
      sudo cp /etc/grub.d/05_debian_theme /etc/grub.d/05_debian_theme.backup
  • Modification de la ligne des paramètres dans le fichier de configuration.
      for i in {/boot/grub,/usr/share/images/desktop-base}/background640.{png,tga} ; do
  • Une fois le fichier sauvegardé, il faut metre à jour le chargeur de démarrage grub :

      sudo update-grub

    Si tout se passe bien vous devez avoir un résultat semblable à celui là :

      Generating grub.cfg ...
      Found Debian background: background640.png
      Found linux image: /boot/vmlinuz-2.6.31-1-generic
      Found initrd image: /boot/initrd.img-2.6.31-1-generic
      Found memtest86+ image: /boot/memtest86+.bin
      done

    Il faut s’assurer que la ligne Found Debian background: background640.png est affichée. Si elle n’apparait pas il faut vérifier le nom de l’image et l’emplacement et refaire la mise à jour de grub. Si tout se passe bien un petit redémarrage et voilà le résultat :

    grub2 avac la nouvelle image d'arrière plan.

    Il est possible que le texte ne soit pas lisible sur le nouveau fond, dans ce cas il faut modifier les couleurs pour le texte sélectionné et non sélectionné. Les modifications sont à faire dans le fichier de configuration /etc/grub.d/05_debian_theme et en particulier dans les deux lignes suivantes (lignes 39 et 40) :

      set color_normal=white/black
      set color_highlight=red/black

    Il faut varier uniquement la première couleur (en gras). La ligne color_normal correspond au texte non sélectionné et la ligne color_highlight correspond au texte sélectionné. Il ne faut pas oublier de faire la mise ç jour de grub après chaque modification.

    [1]: finalement les nouveaux arrivants à ubuntu ne seront plus surpris par l’affreux écran noir qui les accueil lors du premier démarrage du système.