aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiquel Sabaté Solà <msabate@suse.com>2020-12-03 09:14:14 +0100
committerMiquel Sabaté Solà <msabate@suse.com>2020-12-03 09:14:14 +0100
commite3ad8501ed50167487441172b5666882d25269e9 (patch)
tree58fc8fd666eddf51ef518057fff299ed15545fdb
parent07801f7145cb7529bbd66a160bcf5847ceab537a (diff)
downloaddotfiles-e3ad8501ed50167487441172b5666882d25269e9.tar.gz
dotfiles-e3ad8501ed50167487441172b5666882d25269e9.zip
Improved locking of screen
Signed-off-by: Miquel Sabaté Solà <msabate@suse.com>
-rw-r--r--.i3/config11
-rwxr-xr-xbin/lock.sh32
2 files changed, 37 insertions, 6 deletions
diff --git a/.i3/config b/.i3/config
index 8b37bfc..586eac5 100644
--- a/.i3/config
+++ b/.i3/config
@@ -59,8 +59,8 @@ bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
-# Cool lock. Thanks franky!
-bindsym $mod+l exec xlock -mode eyes
+# Execute my own lock and setup xautolock for it.
+bindsym $mod+l exec ~/bin/lock.sh
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
@@ -149,10 +149,6 @@ bindsym $mod+Shift+z move container to workspace back_and_forth; workspace back_
# mouse and click to get focus if I'm using it.
focus_follows_mouse no
-# Bindings for specific applications.
-bindsym $mod+Shift+f [class="Firefox"] focus
-bindsym $mod+Shift+t [class="Tor"] focus
-
# Scrot
bindsym Print exec scrot -u
@@ -236,6 +232,9 @@ exec --no-startup-id xset b off
exec --no-startup-id xset -dpms
exec --no-startup-id xset s off
+# Enforce mi layout on startup
+exec --no-startup-id setxkbmap mi
+
# Network manager
# NOTE: uncomment this if you are in a laptop
# exec --no-startup-id nm-applet
diff --git a/bin/lock.sh b/bin/lock.sh
new file mode 100755
index 0000000..26397d5
--- /dev/null
+++ b/bin/lock.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+# Copyright (C) 2020 Miquel Sabaté Solà <mikisabate@gmail.com>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+icon="$HOME/doc/imatges/lock.png"
+tmpbg='/tmp/screen.png'
+
+# Take a screenshot, then convert do fancy stuff to make it fuzzy, and then set
+# the lock icon at the center
+
+scrot "$tmpbg"
+convert "$tmpbg" -scale 10% -scale 1000% "$tmpbg"
+
+convert "$tmpbg" "$icon" -geometry +650+300 -composite -matte "$tmpbg"
+# convert "$tmpbg" "$icon" -gravity center -composite -matte "$tmpbg" # NOTE: On the laptop
+
+i3lock -e -n -i "$tmpbg"
+
+# Turn the screen of after some delay.
+sleep 60; pgrep i3lock && xset dpms force off