Habia entrado en la situacion de que gnome-power-manager no andaba y xscreensaver se trababa, asi que decidi que era hora de simplificar toda esa basura y resumirla a un script. El script es basatante simple, guarda el valor x del mouse y el valor 1 de /proc/interrupts (este valor es un numero que cambia cuando tocamos una tecla en el teclado) en variables y entra en un loop que cada 5 segundos le suma 5 a una variable que llamariamos "segundos", ahora en cada loop se vuelve a fijar estos 2 valores y si cambiaron la variable es reseteada a 0, entonces recien cuando no se toque el mouse ni el teclado por 1200 segundos el monitor se apaga con xset.
#!/bin/bash
# Power of the fucking monitor without
# fucking gnome-power-manager or xscreensaver.
# Alvare-ClrnD / 2.66 @ 3.52
a=`/usr/local/bin/mousepos | head -n 1`
c=`awk "NR == 3 {print \\$2}" /proc/interrupts`
b=0
while true;do
sleep 5
if [ "$a" -eq "`/usr/local/bin/mousepos | head -n 1`" ] && [ "$c" -eq "`awk "NR == 3 {print \\$2}" /proc/interrupts`" ];then
b=$(($b+5))
else
a=`/usr/local/bin/mousepos | head -n 1`
c=`awk 'NR == 3 {print $2}' /proc/interrupts`
b=0
fi
if [ $b -gt 600 ];then
xset dpms force off # Shutdown screen
b=0
fi
done
No hay comentarios:
Publicar un comentario