115 lines
3.7 KiB
Plaintext
115 lines
3.7 KiB
Plaintext
# ─────────────────────────────────────────────────────────────────────────────
|
|
# hyprlock — lock screen
|
|
#
|
|
# Tokyo Night Moon, matching quickshell/config/Theme.qml:
|
|
# accent #82aaff fg #c8d3f5 dim #828bb8 bg #222436 red #ff757f
|
|
#
|
|
# 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(34, 36, 54, 1.0)
|
|
|
|
zindex = -1
|
|
}
|
|
|
|
# ── Clock ───────────────────────────────────────────────────────────────────
|
|
label {
|
|
monitor =
|
|
text = cmd[update:1000] date +"%-I:%M"
|
|
color = rgba(200, 211, 245, 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(130, 139, 184, 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(130, 170, 255, 0.9)
|
|
inner_color = rgba(46, 47, 61, 0.85)
|
|
font_color = rgba(200, 211, 245, 1.0)
|
|
check_color = rgba(130, 170, 255, 1.0)
|
|
fail_color = rgba(255, 117, 127, 1.0)
|
|
|
|
dots_size = 0.25
|
|
dots_spacing = 0.3
|
|
dots_center = true
|
|
|
|
placeholder_text = <span foreground="##828bb8"><i>Password</i></span>
|
|
fail_text = <span foreground="##ff757f"><i>$FAIL ($ATTEMPTS)</i></span>
|
|
|
|
fade_on_empty = false
|
|
hide_input = false
|
|
}
|
|
|
|
# ── User ────────────────────────────────────────────────────────────────────
|
|
label {
|
|
monitor =
|
|
text = $USER
|
|
color = rgba(200, 211, 245, 0.9)
|
|
font_size = 16
|
|
font_family = Adwaita Sans
|
|
position = 0, -110
|
|
halign = center
|
|
valign = center
|
|
}
|