#1 Le 07/05/2020, à 17:10
- hervax
[Résolu] Script en sortie de veille
Bonjour à tous !
Après le passage de 18.04 à 20.04, mon fond d'écran xplanetfx ne fonctionnait plus. Hésitant à installer Python2 juste pour ce fond d'écran, j'ai suivi les instructions de cette page pour installer xplanet et les scripts de mise en oeuvre du fond d'écran.
Tout fonctionne et le fond d'écran se met bien à jour toutes les 10 minutes. J'ai même ajouté un script qui se lance tous les 1er du mois pour changer la texture de base de la Terre, en se basant sur les fichiers "blue marble" de la NASA.
Mon souci, c'est que j'aimerais que le script de mise à jour (/usr/local/bin/xplanet-bg) se lance en sortie de veille, pour ne pas avoir à attendre jusqu'à 10 minutes pour la prochaine mise à jour.
A cet effet, j'ai créé fichier "xplanet-sleep" dans le dossier "/lib/systemd/system-sleep/" et je l'ai rendu exécutable. Il contient les instructions suivantes, mais cela ne fonctionne pas et je ne comprends pas pourquoi :
#!/bin/sh
case $1 in
post)
/usr/local/bin/xplanet-bg
;;
esacQuelqu'un aurait une idée ?
Dernière modification par hervax (Le 10/05/2020, à 17:42)
Asus X202e Dual Boot Win8 - Ubuntu 12.10
Acer Swift 5 Dual Boot Win10 - Ubuntu 20.04
Hors ligne
#2 Le 07/05/2020, à 17:37
- ylag
Re : [Résolu] Script en sortie de veille
Bonjour,
Sous toute réserve: Si echo "$DISPLAY" retourne la valeur :0, essaie de passer la variable d'environnement DISPLAY=:0 dans la ligne de commande de ton script:
#!/bin/sh
case $1 in
post)
DISPLAY=:0 /usr/local/bin/xplanet-bg
;;
esacVu dans cette discussion (même si c'est pas tout à fait similaire):
System-sleep script not executed
A+
Dernière modification par ylag (Le 07/05/2020, à 17:46)
Hors ligne
#3 Le 08/05/2020, à 09:35
- hervax
Re : [Résolu] Script en sortie de veille
Merci pour ta proposition. Malheureusement, il n'y a pas de changement ![]()
Asus X202e Dual Boot Win8 - Ubuntu 12.10
Acer Swift 5 Dual Boot Win10 - Ubuntu 20.04
Hors ligne
#4 Le 08/05/2020, à 10:00
- alduc31
Re : [Résolu] Script en sortie de veille
Salut,
Le script de sortie de veille est exécuté en tant que root je pense.
Peut-être comme ça :
#!/bin/sh
case $1 in
post)
runuser -l UTILISATEUR -c 'sleep 5; DISPLAY=:0 /usr/local/bin/xplanet-bg' &
;;
esacEn remplaçant UTILISATEUR par ton login.
J'ai mis une temporisation de 5s (sleep 5 [à adapter au besoin]) pour attendre que le réseau se reconnecte.
UX305FA (5Y10) & UX330CAK (7Y30) avec Groovy (20.10, Openbox)
Hors ligne
#5 Le 08/05/2020, à 10:30
- ylag
Re : [Résolu] Script en sortie de veille
Bonjour,
Peut-être faut-il s'assurer que le processus s'arrête lors de la mise en veille?
Ça pourrait donner quleque chose comme:
case $1 in
pre)
killall /usr/local/bin/xplanet-bg
done
;;
post)
runuser -l UTILISATEUR -c 'sleep 5; DISPLAY=:0 /usr/local/bin/xplanet-bg' &
;;
esac
done
;;
esac?
Hors ligne
#6 Le 08/05/2020, à 10:38
- alduc31
Re : [Résolu] Script en sortie de veille
Le script est donné ici : https://doc.ubuntu-fr.org/xplanet
A priori il ne tourne pas en tache de fond ![]()
UX305FA (5Y10) & UX330CAK (7Y30) avec Groovy (20.10, Openbox)
Hors ligne
#7 Le 09/05/2020, à 01:37
- hervax
Re : [Résolu] Script en sortie de veille
Merci à tous les deux !
Effectivement, le script ne tourne pas en tâche de fond. Mais le fait d'ajouter l'utilisateur semble fonctionner. Voici à quoi ressemble mon script maintenant (j'ai ajouté une notification pour en vérifier le fonctionnement) :
#!/bin/bash
case $1 in
post)
sleep 5
runuser -l herve -c 'DISPLAY=:0 notify-send "Mise à jour de xplanet"'
runuser -l herve -c 'DISPLAY=:0 /usr/local/bin/xplanet-bg'
;;
esacMerci encore, et bon week-end !
Asus X202e Dual Boot Win8 - Ubuntu 12.10
Acer Swift 5 Dual Boot Win10 - Ubuntu 20.04
Hors ligne