====== Unlock by wifi SSID ====== To disable the screen lock when connected to a specific wifi ssid (e.g. at home), the following script can be used for Gnome and Cinnamon systems. sudo vi /etc/NetworkManager/dispatcher.d/99-disable-screen-lock Replace SSID and USERNAME with the relevant entries. Uncomment the three lines and connect/disconnect to log the exact SSID name in a test file if necessary. On Linux Mint 22, the SSID in the CONNECTION_ID variable appears to be prefixed with "Auto ". #!/bin/bash -e trusted_essid="Auto SSID" user="USERNAME" #date >> /home/$user/test #echo "$CONNECTION_ID $2" >> /home/$user/test #echo "" >> /home/$user/test if [ "$2" = "up" ]; then if [ "$CONNECTION_ID" = "$trusted_essid" ]; then if [ `sudo -u $user gsettings get org.gnome.desktop.screensaver lock-enabled` = "true" ]; then touch /home/$user/.screen_lock_temporarily_disabled sudo -u $user dbus-launch gsettings set org.gnome.desktop.screensaver lock-enabled 'false' sudo -u $user dbus-launch gsettings set org.cinnamon.settings-daemon.plugins.power lock-on-suspend 'false' sudo -u $user dbus-launch gsettings set org.cinnamon.desktop.screensaver lock-enabled 'false' sudo -u $user dbus-launch gsettings set org.cinnamon.desktop.lockdown disable-lock-screen 'true' #killall cinnamon-screensaver #sleep 5s #sudo -u cinnamon-screensaver --disable-locking & fi fi fi if [ "$2" = "down" ]; then if [ -f /home/$user/.screen_lock_temporarily_disabled ]; then sudo -u $user dbus-launch gsettings set org.gnome.desktop.screensaver lock-enabled 'true' sudo -u $user dbus-launch gsettings set org.cinnamon.settings-daemon.plugins.power lock-on-suspend 'true' sudo -u $user dbus-launch gsettings set org.cinnamon.desktop.screensaver lock-enabled 'true' sudo -u $user dbus-launch gsettings set org.cinnamon.desktop.lockdown disable-lock-screen 'false' rm /home/$user/.screen_lock_temporarily_disabled #killall cinnamon-screensaver #sleep 5 #sudo -u cinnamon-screensaver & fi fi exit 0 sudo chmod +x /etc/NetworkManager/dispatcher.d/99-disable-screen-lock