mirror of
https://github.com/ItsDrike/dotfiles.git
synced 2025-06-29 04:00:42 +00:00
Add lockscreen management script
This commit is contained in:
parent
d4dbe64515
commit
0619e887a3
3 changed files with 50 additions and 18 deletions
44
home/.local/bin/scripts/lockscreen
Executable file
44
home/.local/bin/scripts/lockscreen
Executable file
|
@ -0,0 +1,44 @@
|
|||
#!/bin/sh
|
||||
|
||||
if [ "$1" = "start" ]; then
|
||||
MODE="start"
|
||||
elif [ "$1" = "stop" ]; then
|
||||
MODE="stop"
|
||||
elif [ "$1" = "toggle" ]; then
|
||||
if pidof -s xss-lock > /dev/null 2>&1; then
|
||||
MODE="stop"
|
||||
else
|
||||
MODE="start"
|
||||
fi
|
||||
elif [ "$1" = "lock" ]; then
|
||||
MODE="lock"
|
||||
else
|
||||
echo "Invalid command usage, use: lockscreen [start/stop/toggle/lock]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ "$MODE" = "start" ]; then
|
||||
echo "Starting xss-lock"
|
||||
# Set X11 lockscreen delays (DPMS)
|
||||
xset s on
|
||||
xset s 600 10 # Dim screen after 10 minutes, lock 10s later
|
||||
|
||||
# XSS lock with xsecurelock
|
||||
xss-lock -n /usr/lib/xsecurelock/dimmer -l -- xsecurelock &
|
||||
elif [ "$MODE" = "stop" ]; then
|
||||
echo "Stopping xss-lock"
|
||||
# Remove X11 lockscreen delays (DPMS)
|
||||
xset s off
|
||||
# Stop XSS lock
|
||||
killall xss-lock
|
||||
elif [ "$MODE" = "lock" ]; then
|
||||
# Send a DPMS trigger if xss-lock is running to inform it
|
||||
# about the lockstate, if it's not running, run xsecurelock directly
|
||||
if pidof -s xss-lock > /dev/null 2>&1; then
|
||||
echo "Locking screen - using DPMS (xss-lock active)"
|
||||
xset s activate
|
||||
else
|
||||
echo "Locking screen - running xsecurelock directly (xss-lock isn't running)"
|
||||
xsecurelock
|
||||
fi
|
||||
fi
|
Loading…
Add table
Add a link
Reference in a new issue