#1 Le 11/11/2022, à 04:55
- loupmana
Fond d'écran aléatoire au démarrage (GRUB)
Bonjour,
J'ai modifié le script "grub" du répertoire "/etc/default" afin de mettre un fond d'écran au démarrage. Cela fonctionne bien.
Mais pour que ça soit encore mieux, j'aimerais générer un fond d'écran aléatoire. Cela fonctionne seulement à moitié.
En effet, un nombre est bien généré aléatoirement mais pas à chaque démarrage, ça le fait seulement si on tape "update-grub" dans le terminal.
Sauriez-vous m'aider ?
Voici le code du fichier de configuration "grub"
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT='2'
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=30
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=1024x768,1280x1024,640x480
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
ALEATOIRE=echo $RANDOM(%30)
if($ALEATOIRE<15)
then
GRUB_THEME="/boot/grub/themes/Antergos/theme1.txt";
elif($ALEATOIRE>15)
then
GRUB_THEME="/boot/grub/themes/Antergos/theme2.txt";
elif($ALEATOIRE==15)
then
GRUB_THEME="/boot/grub/themes/Antergos/theme3.txt";
fi
Comme vous pouvez le voir à la fin de ce code, il y a trois fichiers .txt. Un pour chaque thème.
La seule chose qui diffère de l'un à l'autre, c'est la ligne : desktop-image: "wallpaper.jpg"
# Global Property
title-text: ""
title-font: "Verdana"
title-color: "#5698fc"
message-font: "Verdana"
message-color: "#000000"
message-bg-color: "#f6f6f6"
desktop-image: "wallpaper.jpg"
desktop-color: "#000000"
terminal-box: "menu_bkg_*.png"
terminal-font: "Verdana"
+ image {
id = "__archlogo__"
left = 37%
width = 25%
top = 2%
height = 19%
}
# Show the boot menu
+ boot_menu {
left = 30%
width = 40%
top = 29%
height = 50%
item_font = "Verdana"
selected_item_font = "Verdana"
item_color = "#5698fc"
selected_item_color = "#5698fc"
item_height = 38
item_padding = 15
item_spacing = 5
icon_width = 32
icon_height = 32
item_icon_space = 20
selected_item_pixmap_style= "select_bkg_*.png"
menu_pixmap_style = "menu_bkg_*.png"
scrollbar = true
scrollbar_width = 24
scrollbar_thumb = "sb_thumb_*.png"
scrollbar_frame = "sb_frame_*.png"
}
# Show logo and circular progress
+ circular_progress
{
id = "__timeout__"
left = 40
top = 150
width = 105
height = 105
num_ticks = 33
ticks_disappear = false
start_angle = -67
end_angle = -67
center_bitmap = "archlogo.png"
tick_bitmap = "tick.png"
}
# Show an informational message.
+ hbox {
top = 100%-35
left = 33%
+ label {text = "Enter: " font = "Verdana" color = "#FFFFFF" align = "left"}
+ label {text = "Boot Selection " font = "Verdana" color = "#FFFFFF" align = "left"}
+ label {text = "E: " font = "Verdana" color = "#FFFFFF" align = "left"}
+ label {text = "Edit Selection " font = "Verdana" color = "#FFFFFF" align = "left"}
+ label {text = "C: " font = "Verdana" color = "#FFFFFF" align = "left"}
+ label {text = "GRUB Commandline" font = "Verdana" color = "#FFFFFF" align = "left"}
}
Hors ligne
#2 Le 11/11/2022, à 09:19
- lann
Re : Fond d'écran aléatoire au démarrage (GRUB)
Effectivement, il faut que tu passes la commande update-grub pour que le fond d'écran soit pris en compte.
Tu ne peux pas le faire au démarrage du PC car ce sera trop tard.
Essayes de le faire à l'extinction ou au redémarrage du PC
Dernière modification par lann (Le 11/11/2022, à 09:19)
<Modéré>
Hors ligne
#3 Le 16/11/2022, à 21:56
- loupmana
Re : Fond d'écran aléatoire au démarrage (GRUB)
Merci de votre réponse. Oui si je refais la commande "update-grub", ça marche à priori à chaque fois, mais ça m'oblige à le refaire avant chaque extinction, d'autant plus que je ne suis pas toujours sur Ubuntu. Je démarre sous Windows et éteins le PC comme tel. Y a-t-il un autre moyen ?
Hors ligne
#4 Le 16/11/2022, à 22:15
- matrix-bx
Re : Fond d'écran aléatoire au démarrage (GRUB)
Bonsoir,
Je tenterais de voir ce que ça donne en renommant les images (pas dit que ça fonctionne ceci dit).
Ou avec un liens symbolique qui change de cible à chaque démarrage (ou extinction comme on veux).
Dernière modification par matrix-bx (Le 16/11/2022, à 22:18)
Utilisations des balises de mises en formes.
Hors ligne
#5 Le 01/12/2022, à 22:13
- loupmana
Re : Fond d'écran aléatoire au démarrage (GRUB)
Pour le moment, je n'ai pas réussi à faire ce que je voulais. Le code que j'ai donné plus haut ne fonctionne pas bien. Auriez-vous d'autres idées ?
Et je me demandais aussi s'il était possible de faire un "update-grub" ou commande équivalente depuis la console Windows ?
Hors ligne
#6 Le 01/12/2022, à 22:54
- Watael
Re : Fond d'écran aléatoire au démarrage (GRUB)
faire un "update-grub" ou commande équivalente depuis la console Windows
a priori, ça sent le gaz ! vous sentez, vous aussi ?
il faut toujours surveiller attentivement ce type de mise à jour (parce qu'on modifie les entrailles du démarrage). on ne fait pas ça à l'aveugle !
Connected \o/
Welcome to sHell. · eval is evil.
Hors ligne
#7 Le 07/12/2022, à 22:08
- loupmana
Re : Fond d'écran aléatoire au démarrage (GRUB)
Oui bien-sûr je sais qu'il faut faire attention. On ne modifie jamais directement le fichier de configuration « grub.cfg » qui se trouve dans /boot/grub/grub.cfg
Mais c'est moins risqué de modifier (avec la commande gedit grub) les scripts suivants (qui modifieront à leur tour le fichier grub.cfg) :
« grub » du chemin /etc/default/grub
« 40_custom » du chemin /etc/grub.d/
Hors ligne