#1 Le 27/04/2020, à 21:29
- Am7#9
[mate-desktop] Changeur de thème en fonction de l'heure & background
Salut à toutes et à tous.
Je fais une modification de ce poste car j'ai fais ce scripte sous debian testing avec un mate-desktop 1.24 .
Mais avec une version plus ancienne comme 1.20 ça ne fonctionne pas aussi bien.
Je vais donc vous poster le scripte corrigé pour une version de mate 1.20.
Si cela vous intéresse, je me suis fais un petit script qui permet de permuter d'un thème claire à un thème dark à une heure choisie.
De plus, le fond d'écran aussi change.
En ce qui me concerne, ça bascule en dark à 20h et rebascule en claire à 9h.
mate 1.24
#!/bin/bash
while :
do
heure=$(date +%H)
if [ $heure -ge "09" -a $heure -lt "20" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Radioactive-no-logo.jpg
fi
if [ $heure -ge "20" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Warm-no-logo.jpg
fi
if [ $heure -lt "09" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Warm-no-logo.jpg
fi
sleep 3
done
#thème claire de 9h à 19h59
#thème foncé de 20h à 8h59
mate 1.20
#!/bin/bash
while :
do
heure=$(date +%H)
if [ $heure -ge "09" -a $heure -lt "20" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray;
gsettings set org.mate.Marco.general theme Adwaita-gray;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Radioactive-no-logo.jpg
fi
if [ $heure -ge "20" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.Marco.general theme Adwaita-gray-dark;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Warm-no-logo.jpg
fi
if [ $heure -lt "09" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.Marco.general theme Adwaita-gray-dark
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/Debian-Mate-Warm-no-logo.jpg
fi
sleep 3
done
#thème claire de 9h à 19h59
#thème foncé de 20h à 8h59
A adapter avec vos thèmes et fonds d'écrans et vos préférences d'heures.
Il ne reste plus qu'à le rendre exécutable et de le lancer au démarrage de la session.
Dernière modification par Am7#9 (Le 01/05/2020, à 01:06)
debian bullseye sur disque externe, disque dur mort :-(
Hors ligne
#2 Le 29/04/2020, à 16:42
- LukePerp
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Originale comme idée, c'est cool
SI je comprends bien, le script change définit le thème au démarrage de la machine. En démarrant la machine à 17h disons, est-ce que le script change le thème à 20h sans redémarrer ?
Gamer inside - Ubuntu Mate dernière LTS - Intel i5, 16 Go - Dual boot Windows - Ethereum user
Hors ligne
#3 Le 29/04/2020, à 18:47
- Am7#9
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Hello.
Oui il définit le thème au démarrage du pc. Plus précisément, de ta session.
Donc si tu as configuré ta session pour que le scripte s'exécute,
il changera le thème (et aussi le fond d'écran) sauf si ce n'est pas l'heure.
Un exemple:
Tu as éteins ton pc à 23h. Dans notre cas on est en thème dark.
Le lendemain, à 8h30 tu rallumes ton pc, il serra toujours en dark. Il n'y a qu'à 9h que le thème
basculera en thème claire. Si tu l'allumes à 10h, il passera automatiquement en thème claire
au bout de quelques secondes après le démarrage de ta session.
Pour info, la boucle s'exécute toutes les 3 secondes.
Donc ça vérifie toutes les 3 secondes l'heure qu'il est en somme.
debian bullseye sur disque externe, disque dur mort :-(
Hors ligne
#4 Le 29/04/2020, à 19:20
- LukePerp
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Ah oui j'aime bien le concept. Je vais l'adopter après avoir fait une modif pour les saisons, à cause de la différence d’ensoleillement. Je pense ajouter un test sur le mois et définir les plages horaires en fonction.
Dernière modification par LukePerp (Le 29/04/2020, à 19:21)
Gamer inside - Ubuntu Mate dernière LTS - Intel i5, 16 Go - Dual boot Windows - Ethereum user
Hors ligne
#5 Le 29/04/2020, à 19:37
- Am7#9
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
C'est une idée de quelqu'un que je suis sur youtube. Adrien Linuxtricks.
Malheureusement, il n'a jamais dit comment il faisait. Quelque part tant mieux,
ça m'a forcé à réfléchir.
debian bullseye sur disque externe, disque dur mort :-(
Hors ligne
#6 Le 25/05/2020, à 14:08
- trois-nuits-par-semaine
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Super intéressant comme idée Je prends note ! (Je prend note du nom du youtubeur aussi )
Hors ligne
#7 Le 04/06/2020, à 15:12
- Am7#9
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Je me suis rendu compte il y a peu, que mon scripte fonctionne, oui, mais il initialise le thème toutes les 10 secondes.
Même quand le thème souhaité est activé et à l'heure souhaitée.
Je me suis demandé comment faire pour qu'il change le thème qu'une fois et qu'en suite, il ne fasse que vérifier l'heure qu'il est,
et de ne changer que lorsqu'il le faut.
Puis ce fameux Adrien D sur youtube que je suis, a fait un live hier dans lequel, il parle justement de ce passage en thème dark ou clair.
Pour celles et ceux que ça intéresse, la vidéo est là. La vidéos est longue
et je ne sais pu à quel moment il en parle. Mais la vidéo est très intéressante. Heureusement, il a un blogue sur lequel il met ses scriptes et autres combines.
Et voici donc son scripte.
Il utilise gnome mais il n'y a qu'à remplacer les commandes par celles qu'il faut pour mate.
C'était tout bête.
debian bullseye sur disque externe, disque dur mort :-(
Hors ligne
#8 Le 04/06/2020, à 16:19
- Am7#9
Re : [mate-desktop] Changeur de thème en fonction de l'heure & background
Du coup s'inspirant de son scripte j'ai adapté comme ça.
#!/bin/bash
while :
do
heure=$(date +%H)
themes=$(gsettings get org.mate.interface gtk-theme | sed -e "s/'//g")
if [ $heure -ge "09" -a $heure -lt "20" ]
then
if [ $themes != "Adwaita-gray" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray;
gsettings set org.mate.Marco.general theme Greybird;
gsettings set org.mate.interface icon-theme Adwaita;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/desktop/Ubuntu-Mate-Cold-no-logo.png
fi
fi
if [ $heure -ge "20" ]
then
if [ $themes != "Adwaita-gray-dark" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.Marco.general theme Greybird;
gsettings set org.mate.interface icon-theme Adwaita;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/desktop/Ubuntu-Mate-Warm-no-logo.png
fi
fi
if [ $heure -lt "09" ]
then
if [ $themes != "Adwaita-gray-dark" ]
then
gsettings set org.mate.interface gtk-theme Adwaita-gray-dark;
gsettings set org.mate.Marco.general theme Greybird;
gsettings set org.mate.interface icon-theme Adwaita;
gsettings set org.mate.background picture-filename /usr/share/backgrounds/mate/desktop/Ubuntu-Mate-Warm-no-logo.png
fi
fi
sleep 10
done
#thème claire de 9h à 19h59
#thème foncé de 20h à 8h59
Dernière modification par Am7#9 (Le 04/06/2020, à 16:23)
debian bullseye sur disque externe, disque dur mort :-(
Hors ligne