LinuxCommandLibrary

blurlock

Lock screen with a blurred background

TLDR

Lock the screen to a blurred screenshot of the current screen

$ blurlock
copy

Lock the screen and disable the unlock indicator (removes feedback on keypress)
$ blurlock [[-u|--no-unlock-indicator]]
copy

Lock the screen and don't hide the mouse pointer
$ blurlock [[-p|--pointer]] [default]
copy

Lock the screen and show the number of failed login attempts
$ blurlock [[-f|--show-failed-attempts]]
copy

SYNOPSIS

blurlock [OPTIONS]

PARAMETERS

--help
    Print help information and exit.

--version
    Print version information and exit.

--socket PATH
    Unix socket path to listen on (default: $XDG_RUNTIME_DIR/blurlock/lock).

--image FILE
    Path to image file for blurred background (overrides screen capture).

--color COLOR
    Background color as #RRGGBB or #RRGGBBAA (default: #000000cc).

DESCRIPTION

Blurlock is a lightweight, blur-effect screenlocker for wlroots-based Wayland compositors like Sway and River. It captures the current screen content, applies a configurable blur filter, and overlays it during lock, allowing secure session protection with visual continuity.

Users authenticate via password entry directly on the blurred background. It supports custom background images and colors, making it highly customizable. Blurlock uses xdg-desktop-portal for screenshot capture and integrates with systemd-logind for proper session handling.

Key advantages include minimal CPU/GPU usage, no flickering on lock/unlock, and IPC socket support for programmatic control (e.g., lock/unlock via swaymsg). Ideal for privacy-focused Wayland users seeking an alternative to swaylock with native blur effects.

Installation typically via package managers (e.g., Arch: blurlock-git) or from source with meson and ninja. Bind to hotkeys in your compositor config for quick access.

CAVEATS

Requires wlroots compositor and xdg-desktop-portal; no X11 support. May need polkit for logind integration. IPC socket must be accessible.

IPC COMMANDS

Send via socat: lock, unlock, status. Example: socat - $XDG_RUNTIME_DIR/blurlock/lock <<< lock.

SWAY INTEGRATION

Bind in sway config: bindsym $mod+Shift+l exec blurlock.

HISTORY

Developed by Daniel Eklöf (dnkl) starting 2023; hosted on Codeberg. Part of Wayland tooling suite including foot terminal and swaybg. Active maintenance with wlroots API updates.

SEE ALSO

swaylock(1), swaymsg(1), loginctl(1), xdg-desktop-portal(1)

Copied to clipboard