hypr-dotfiles/hypr/scripts/lock.sh
Jeena 4c497ed538 fix(hyprlock): make input field always visible
With fade_on_empty=true, a 0.3-alpha inner_color and placeholder_text=$LAYOUT
(which resolves empty under fcitx5), the empty input field faded to nothing —
only the clock rendered and there was no visible way to type the password.

- fade_on_empty = false
- inner_color alpha 0.3 -> 0.6
- static placeholder 'Enter password' instead of $LAYOUT

Also document the graceful emergency unlock (pkill -USR1 hyprlock) in
lock.sh: SIGTERM/SIGKILL on a running lock latches Hyprland's crashed-
lockscreen state, requiring hl.clear_crashed_lockscreen() to recover.

Clarify in hyprlock.conf that the fingerprint auth block is for Chester and
is a no-op on machines without fprintd (e.g. Rutherford).
2026-08-29 09:34:30 +09:00

16 lines
634 B
Bash
Executable file

#!/bin/bash
# Prevent multiple hyprlock instances (second instance breaks the lock screen)
pidof hyprlock && exit 0
# --- Emergency unlock (from TTY or SSH) ---
# If the lock screen ever misbehaves, unlock GRACEFULLY with:
# pkill -USR1 hyprlock
# Do NOT kill it with SIGTERM/SIGKILL: Hyprland detects the lock screen dying
# while locked and latches a "crashed lockscreen" state that then requires:
# hyprctl --instance 0 eval "hl.clear_crashed_lockscreen()"
hyprctl switchxkblayout all 0
fcitx5-remote -s keyboard-us-dvorak
wpctl set-mute @DEFAULT_AUDIO_SINK@ 1
hyprlock --no-fade-in && wpctl set-mute @DEFAULT_AUDIO_SINK@ 0