A cyberpunk screen locker for Wayland compositors. Uses the ext-session-lock-v1 protocol to lock your session with a neon-soaked matrix rain animation, password ring UI, and optional YubiKey (U2F) authentication.
- ext-session-lock-v1 — secure, compositor-level session locking
- Matrix rain — animated katakana/latin rain in cyan, pink, and red
- Password ring — minimal dot-based password indicator with shake-on-fail
- Wallpaper support — PNG wallpapers with dark tint overlay; per-user or system-wide
- YubiKey / U2F — optional FIDO U2F unlock via PAM (
pam-u2f) - Grace period — configurable window where any keypress unlocks instantly
- Multi-output — renders independently on every connected display
- Key repeat — respects compositor repeat rate/delay settings
- Wayland compositor with
ext-session-lock-v1support (Sway, Hyprland, etc.) wayland-client,wayland-protocols(>= 1.25)cairo,pango(pangocairo)libpngxkbcommonpammesonandninja(build)
pam-u2f— for YubiKey authentication
meson setup build
ninja -C build
sudo ninja -C build installPAM configs are installed to /etc/pam.d/neonlock and /etc/pam.d/neonlock-u2f.
# Basic lock
neonlock
# With wallpaper
neonlock -w ~/Pictures/wallpaper.png
# With 5-second grace period
neonlock -g 5- Path given via
-w/--wallpaper(file or directory) ~/.config/neonlock/wallpapers//usr/share/neonlock/wallpapers/- Solid background only
| Flag | Description |
|---|---|
-w, --wallpaper <path> |
Wallpaper image or directory |
-g, --grace <seconds> |
Grace period (any key unlocks) |
-h, --help |
Show help |
-v, --version |
Show version |
