# ───────────────────────────────────────────────────────────────────────────── # hyprlock — lock screen. # # GENERATED FILE. Edit hyprlock.conf.template and re-run # quickshell/scripts/panama-theme-apps; editing this copy is overwritten on the # next colour scheme change. # # The colours here follow the desktop's light/dark setting. They used to be # hardcoded Tokyo Night Moon, which meant the one screen you see most often # stayed dark when everything else went light. # # hyprlock takes rgba(r, g, b, a) in DECIMAL rather than hex, which is why the # template carries "R, G, B" triples where the rest of Panama uses hex. The two # Pango markup values are the exception and want ##rrggbb. # # hyprlang syntax, not Lua — hyprlock is a separate project from Hyprland. # ───────────────────────────────────────────────────────────────────────────── general { hide_cursor = true # 2 = auto. Matters at the 1.5x fractional scale this display runs. fractional_scaling = 2 # 0 = GPU-accelerated screencopy. 1 is a CPU fallback and is very slow at # 4500x3000. screencopy_mode = 0 fail_timeout = 2000 } auth { pam:enabled = true pam:module = hyprlock } # ── Background ────────────────────────────────────────────────────────────── # `path = screenshot` grabs the desktop at lock time and blurs it in place, # which is what GNOME does. # # Caveat: this uses screencopy. If the desktop is ever switched to full-time # HDR (see hypr/overrides.lua), this background may come back black — that is # the same upstream screencopy bug, not a hyprlock misconfiguration. background { monitor = path = screenshot blur_passes = 3 blur_size = 8 noise = 0.0117 contrast = 0.9 brightness = 0.8 vibrancy = 0.17 vibrancy_darkness = 0.05 # Shown if the screenshot is unavailable. color = rgba(@BG@, 1.0) zindex = -1 } # ── Clock ─────────────────────────────────────────────────────────────────── label { monitor = text = cmd[update:1000] date +"%-I:%M" color = rgba(@FG@, 1.0) font_size = 120 font_family = Adwaita Sans Light position = 0, 260 halign = center valign = center } label { monitor = text = cmd[update:60000] date +"%A, %B %-d" color = rgba(@MUTED@, 1.0) font_size = 24 font_family = Adwaita Sans position = 0, 160 halign = center valign = center } # ── Password field ────────────────────────────────────────────────────────── input-field { monitor = size = 340, 52 position = 0, -40 halign = center valign = center outline_thickness = 2 rounding = 26 outer_color = rgba(@ACCENT@, 0.9) inner_color = rgba(@FIELD@, 0.85) font_color = rgba(@FG@, 1.0) check_color = rgba(@ACCENT@, 1.0) fail_color = rgba(@ERROR@, 1.0) dots_size = 0.25 dots_spacing = 0.3 dots_center = true placeholder_text = Password fail_text = $FAIL ($ATTEMPTS) fade_on_empty = false hide_input = false } # ── User ──────────────────────────────────────────────────────────────────── label { monitor = text = $USER color = rgba(@FG@, 0.9) font_size = 16 font_family = Adwaita Sans position = 0, -110 halign = center valign = center }