Skip to content

Instantly share code, notes, and snippets.

Last active November 20, 2021 10:15
What would you like to do?
i3 Blurred Lock Screen
# i3lock blurred screen inspired by /u/patopop007 and the blog post
# Timings are on an Intel i7-2630QM @ 2.00GHz
# Dependencies:
# imagemagick
# i3lock
# scrot (optional but default)
SCREENSHOT="scrot $IMAGE" # 0.46s
# Alternate screenshot method with imagemagick. NOTE: it is much slower
# SCREENSHOT="import -window root $IMAGE" # 1.35s
# Here are some imagemagick blur types
# Uncomment one to use, if you have multiple, the last one will be used
# All options are here:
#BLURTYPE="0x5" # 7.52s
#BLURTYPE="0x2" # 4.39s
#BLURTYPE="5x2" # 3.80s
BLURTYPE="2x8" # 2.90s
#BLURTYPE="2x3" # 2.92s
# Get the screenshot, add the blur and lock the screen with it
convert $IMAGE -blur $BLURTYPE $IMAGE
i3lock -i $IMAGE
Copy link

Chabam commented Mar 10, 2017

A quick suggestion to improve the time to render the blurred image, you could reduce the size of the screen cap before applying the blur:
convert $IMAGE -resize 50%
convert $IMAGE -blur $BLURTYPE $IMAGE
Then put back to 200% to get back to orginal size
convert $IMAGE -resize 200%

Copy link

ghost commented Sep 11, 2017

Thanks !!!
Inspired from this project, here a little boost i3lock++

Copy link

darddan commented Feb 22, 2018

I know it's been some time since you published this gist. I used this method until today, but because I use an older computer it would take me 2-5 seconds to take the screenshot, add the effect and then run the i3lock. i3lock-blur flickers and doesnt work in my computer.
I've forked scrot and added a blur option and an option to add an icon here: darddan/scrot
Running scrot -B 5 -i icon.png output.png generates a blurred screenshot with an icon over it in about 300 milliseconds.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment