From baeae5f4c59fb1d7579744fb9cbba4fc03cd9c0c Mon Sep 17 00:00:00 2001 From: Simon Ruderich Date: Sat, 17 May 2014 15:55:44 +0200 Subject: [PATCH] herbstluftwm: add lock support for xscreensaver --- herbstluftwm/autostart | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) 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. -- 2.45.2