wok-6.x annotate xorg-xset/stuff/xset-screensaver.sh @ rev 18515
xorg-xset: add gui for screensaver configuration
author | Xander Ziiryanoff <psychomaniak@xakep.ru> |
---|---|
date | Sat Oct 24 23:56:53 2015 +0200 (2015-10-24) |
parents | |
children | 45dbe89f4307 |
rev | line source |
---|---|
psychomaniak@18515 | 1 #!/bin/sh |
psychomaniak@18515 | 2 # |
psychomaniak@18515 | 3 case $(id -u) in |
psychomaniak@18515 | 4 0) path=/etc/xdg ;; |
psychomaniak@18515 | 5 *) path=${XDG_CONFIG_HOME:-$HOME/.config} ;; |
psychomaniak@18515 | 6 esac |
psychomaniak@18515 | 7 |
psychomaniak@18515 | 8 AutostartFile="$path/autostart/xset-screensaver.desktop" |
psychomaniak@18515 | 9 launcher='/usr/share/applications/xorg-xset.desktop' # Must be same as package name |
psychomaniak@18515 | 10 |
psychomaniak@18515 | 11 exec_d() |
psychomaniak@18515 | 12 { |
psychomaniak@18515 | 13 cmd=$(cat $AutostartFile | grep Exec | sed 's/Exec=//') ; $cmd |
psychomaniak@18515 | 14 } |
psychomaniak@18515 | 15 |
psychomaniak@18515 | 16 [ -f $AutostartFile ] && exec_d |
psychomaniak@18515 | 17 |
psychomaniak@18515 | 18 case $LC_ALL in |
psychomaniak@18515 | 19 C|POSIX|en*) lang='=' ;; |
psychomaniak@18515 | 20 *) lang='\['${LC_ALL%_*} ;; |
psychomaniak@18515 | 21 esac |
psychomaniak@18515 | 22 |
psychomaniak@18515 | 23 val=$(yad --title="$(cat $launcher | grep Name$lang | cut -d= -f2)" \ |
psychomaniak@18515 | 24 --scale --max-value=18000 --mark=1h.:3600 \ |
psychomaniak@18515 | 25 --mark="$(cat $launcher | grep Comment$lang | cut -d= -f2)":0 \ |
psychomaniak@18515 | 26 --mark="120min.(2h.)":7200 --mark="180min.(3h.)":10800 \ |
psychomaniak@18515 | 27 --mark="240min.(4h.)":14400 --mark="300min.(5h.)":18000 \ |
psychomaniak@18515 | 28 --page=1800 --step=60 --geometry=630x42+10+100 \ |
psychomaniak@18515 | 29 --value=$(xset q | grep timeout | cut -d' ' -f5) \ |
psychomaniak@18515 | 30 --window-icon="preferences-desktop-screensaver" ) |
psychomaniak@18515 | 31 |
psychomaniak@18515 | 32 [ -z $val ] || cat > $AutostartFile <<EOT |
psychomaniak@18515 | 33 [Desktop Entry] |
psychomaniak@18515 | 34 Type=Application |
psychomaniak@18515 | 35 Name=xset screensaver timeout |
psychomaniak@18515 | 36 Exec=xset dpms $val $val $val s $val $val |
psychomaniak@18515 | 37 EOT |
psychomaniak@18515 | 38 |
psychomaniak@18515 | 39 exec_d |
psychomaniak@18515 | 40 |
psychomaniak@18515 | 41 # Notes: 'xset s' max val is 32767, 'xset dpms' limit is unknown |
psychomaniak@18515 | 42 exit 0 |