From: Simon Ruderich Date: Sat, 17 May 2014 13:55:44 +0000 (+0200) Subject: herbstluftwm: add lock support for xscreensaver X-Git-Url: https://ruderich.org/simon/gitweb/?a=commitdiff_plain;h=baeae5f4c59fb1d7579744fb9cbba4fc03cd9c0c;p=config%2Fdotfiles.git herbstluftwm: add lock support for xscreensaver --- diff --git a/herbstluftwm/autostart b/herbstluftwm/autostart index 3c4fcd7..1fbb591 100755 --- a/herbstluftwm/autostart +++ b/herbstluftwm/autostart @@ -66,7 +66,7 @@ hc keybind $mod-Shift-c close hc keybind $mod-q reload hc keybind $mod-Shift-q quit # Find an existing screen locker. -for locker in xtrlock ''; do +for locker in xscreensaver xtrlock ''; do if installed "$locker"; then break fi @@ -74,9 +74,17 @@ done if test -z "$locker"; then echo 'No screen locker found!' | notify 60 fi +# Additional options. +locker_pre= +if test x"$locker" = xxscreensaver; then + # Start xscreensaver if it's not already running. xscreensaver-command + # ensures xscreensaver is availble for the current X session. + locker_pre='xscreensaver-command -time >/dev/null 2>&1 || xscreensaver &' + locker='xscreensaver-command -lock' +fi # Lock the screen. The sleep is necessary to allow xtrlock to grab the # keyboard input. -hc keybind $mod-z spawn sh -c "sleep 1 && exec $locker" +hc keybind $mod-z spawn sh -c "$locker_pre sleep 1; exec $locker" # Tag key bindings. Create tags 1 to 9 with bindings to switch and move # windows to them.