X-Git-Url: https://git.friedersdorff.com/?a=blobdiff_plain;f=states%2Fsway%2Ffiles%2Flock;h=230369e613ccb98a329665b305372b820a0623f2;hb=cc380a1eeb2fd611cfb96574b44dd00e2e168b92;hp=936b955c261c5eaa930b13763ebf0979433f984d;hpb=f795dba46e9dbb0d42d1476363526782387d63af;p=max%2Fsaltfiles.git diff --git a/states/sway/files/lock b/states/sway/files/lock index 936b955..230369e 100644 --- a/states/sway/files/lock +++ b/states/sway/files/lock @@ -4,28 +4,22 @@ NAG_MSG="Smartcard is still plugged in, not locking! \ Remove now to lock." NOLOCK_MSG="Smartcard was not removed, did not lock!" -LOCK_CMD="systemctl suspend" +gpg --card-status > /dev/null +if [ $? -ne 2 ]; then + swaynag -m "$NAG_MSG" --type warning& -if [ $(pgrep -c lock.magnesium) -gt 1 ]; then - exit -else - gpg --card-status > /dev/null - if [ $? -ne 2 ]; then - swaynag -m "$NAG_MSG" --type warning& + counter=0 + while [ $? -ne 2 ]; do + if [ $counter -gt 20 ]; then + pkill -f "$NAG_MSG" + swaynag -m "$NOLOCK_MSG" --type error& + exit + fi - counter=0 - while [ $? -ne 2 ]; do - if [ $counter -gt 20 ]; then - pkill -f "$NAG_MSG" - swaynag -m "$NOLOCK_MSG" --type error& - exit - fi - - sleep 1 - counter=$(bc <<<"${counter}+1") - gpg --card-status > /dev/null - done - pkill -f "$NAG_MSG" - fi - $LOCK_CMD + sleep 1 + counter=$(bc <<<"${counter}+1") + gpg --card-status > /dev/null + done + pkill -f "$NAG_MSG" fi +pkill -u ${UID} swayidle --signal USR1