SHARE
TWEET
Untitled
a guest
Sep 15th, 2017
90
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
- #!/bin/bash
- # Only works with bash since dash does not support "< <"
- # Configuration
- LOCKED_TIMEOUT=5 # Screen timeout when account locked
- # Lock screen
- if hash gnome-screensaver-command 2>/dev/null; then
- echo "Using gnome-screensaver-command"
- gnome-screensaver-command -l
- elif hash mate-screensaver-command 2>/dev/null; then
- echo "Using mate-screensaver-command"
- mate-screensaver-command -l
- else
- echo "No screensaver or lock screen command found"
- fi
- # Set screen timeout to 5 seconds
- xset dpms $LOCKED_TIMEOUT
- # Wait for login to restore dpms
- while read -r x; do
- case "$x" in
- *"boolean true"*)
- echo SCREEN_LOCKED
- ;;
- *"boolean false"*)
- echo SCREEN_UNLOCKED
- xset dpms 30*60
- exit 0
- ;;
- esac
- done < <(dbus-monitor --session "type='signal',interface='org.mate.ScreenSaver'")
- exit 0
- # Ubuntu Gnome
- dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'"
- # Ubuntu Unity
- dbus-monitor --session "type=signal,interface=com.canonical.Unity.Session,member=Unlocked"
- # Ubuntu Mate
- dbus-monitor --session "type='signal',interface='org.mate.ScreenSaver'"
RAW Paste Data
