Je suis sur Ubuntu 18.04. J'ai fait une nouvelle installation, tout est beau et assez stable, mais je ne vois pas les notifications urgentes en mode plein écran (par exemple, les vidéos YouTube dans Google Chrome, les films sur MPV, Totem ou VLC). J'ai essayé d'utiliser --urgency-critical
et -u critical
, et j'ai vu qu'ils fonctionnaient normalement, car je devais cliquer sur le bouton X pour les supprimer, mais cette commande ne les met pas au premier plan, comme dans 17.10. Je ne comprends pas si c'est un bug de Gnome Shell ou si je dois faire quelque chose de nouveau. C'est vraiment énervant car je ne vois pas la notification de batterie faible et mon ordinateur portable s'éteint chaque fois que je regarde un film. Je dois me contrôler, pas à l'aise, vraiment. Quelqu'un connaît une solution de contournement ou quelque chose?
Oui c'est très énervant. Pour contourner le problème, j'utilise la boîte de dialogue zenity
de warning
. Il présente l'avantage de s'afficher même sur des applications en plein écran:
zenity --warning --text='Battery Low' --no-wrap
Obtenir le pourcentage de batterie actuel par programme via un script est très facile, mais vous devrez effectuer un peu de recherche, en raison de la variabilité entre les systèmes et les fabricants. Commencez à partir de ici .
Voici la configuration de mon script:
C'est batteryLevel.sh :
#!/bin/bash
upower -i /org/freedesktop/UPower/devices/battery_BAT1 | grep percentage | sed -r 's/[^0-9]*([0-9]+).*/\1/'
C'est batteryStatus.sh :
#!/bin/bash
upower -i /org/freedesktop/UPower/devices/battery_BAT1 | grep state | sed -r 's/.*\:\ +(.*)/\1/'
Enfin, c’est batteryInfoNotify.sh :
#!/bin/bash
upperThreshold=99
lowerThreshold=20
echo upperThreshold=$upperThreshold
echo lowerThreshold=$lowerThreshold
zenity --info --text='Battery level monitoring started...' --no-wrap 2>&1 >/dev/null
while [[ true ]]; do
status=$(~/Scripts/batteryStatus.sh)
level=$(~/Scripts/batteryLevel.sh)
msg="Battery Level now is $level%"
echo "Battery $level% and $status"
case $status in
charging | fully-charged)
if [[ $level -gt $upperThreshold ]]; then
echo 'Upper threshold crossed...'
zenity --warning --text="$msg" --no-wrap --timeout=8 >/dev/null 2>&1
espeak -v en+m7 -p 60 "$msg"
fi
;;
discharging)
if [[ $level -lt $lowerThreshold ]]; then
echo 'Lower threshold crossed...'
zenity --warning --text="$msg" --no-wrap --timeout=8 >/dev/null 2>&1
espeak -v en+m7 -p 60 "$msg"
fi
;;
*)
echo unexpected battery status
;;
esac
sleep 30s
done
Tous ces éléments se trouvent dans mon ~/Scripts
et batteryInfoNotify.sh
est appelé au démarrage de la session à chaque fois car je l’ai configuré de cette manière dans GNOME Startup Appications
.