Last active
August 29, 2015 14:00
-
-
Save steveblamey/11344909 to your computer and use it in GitHub Desktop.
Turn off gnome auto screen-lock when connected to specific wireless networks
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh -e | |
# Turn off gnome auto screen-lock when connected to specific wireless networks | |
# USAGE | |
# Add the following to /etc/pam.d/gdm-password, just after pam_gnome_keyring.so in the auth block: | |
# auth optional pam_exec.so quiet /usr/local/sbin/pam_auth_inhibit_lock | |
# Hat tip - md, http://blog.bofh.it/debian/id_444 | |
WIRELESS_IFACE=wlan0 | |
AUTH_ESSID=orchard | |
AUTH_USER=steve | |
# return the ESSID of this interface | |
current_essid() { | |
/sbin/iwconfig $1 | sed -nre '/ESSID/s/.*ESSID:"([^"]+)".*/\1/p' | |
} | |
# automatically unlock only for these users | |
case "$PAM_USER" in | |
"") echo "This program must be run by pam_auth.so!" | |
exit 1 | |
;; | |
$AUTH_USER) ;; | |
*) exit 1 | |
;; | |
esac | |
CURRENT_ESSID=$(current_essid $WIRELESS_IFACE) | |
# automatically turn off auto screen-lock when connected to these networks, | |
# otherwise turn on auto screen-lock | |
case "$CURRENT_ESSID" in | |
$AUTH_ESSID) | |
su -c "DISPLAY=:0 gsettings set org.gnome.desktop.screensaver lock-enabled false" $AUTH_USER | |
exit 1 | |
;; | |
*) | |
su -c "DISPLAY=:0 gsettings set org.gnome.desktop.screensaver lock-enabled true" $AUTH_USER | |
exit 1 | |
;; | |
esac | |
exit 6 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment