hyprlock - это утилита для блокировки экрана Hyprland.
epmi hyprlock
Обратите внимание: в образах с Hyprland файл
~/.config/hypr/hyprlock.conf— это символическая ссылка на/etc/ximperdistro/hyprland/hypr/hyprlock.conf!
Чтобы изменить настройки, выполните следующие команды:rm ~/.config/hypr/hyprlock.conf cp /etc/ximperdistro/hyprland/hypr/hyprlock.conf ~/.config/hypr/hyprlock.confНе редактируйте
/etc/ximperdistro/hyprland/hypr/hyprlock.confнапрямую!
Настройка выполняется с помощью файла конфигурации в ~/.config/hypr/hyprlock.conf.
Категория
general {
# ...
# ...
}
| Имя | Описание | Тип | По умолчанию |
|---|---|---|---|
| hide_cursor | Скрывает курсор | bool | false |
| ignore_empty_input | Пропускает проверку, если пароль не введён | bool | false |
| immediate_render | Заставляет hyprlock немедленно начать отрисовку виджетов | bool | false |
| text_trim | Обрезает текст — полезно для удаления завершающего переноса строки из вывода команды | bool | true |
| fractional_scaling | Использовать ли дробное масштабирование. 0 — отключено, 1 — включено, 2 — автоматически | int | 2 |
| screencopy_mode | Режим снятия скриншота: 0 — GPU-ускоренный, 1 — через CPU (медленно) | int | 0 |
| fail_timeout | Задержка (мс) до сброса интерфейса после неудачной аутентификации | int | 2000 |
Категория
auth {
# ...
# ...
}
| Имя | Описание | Тип | По умолчанию |
|---|---|---|---|
| pam:enabled | Включает аутентификацию через PAM | bool | true |
| pam:module | PAM-модуль, используемый для аутентификации | str | hyprlock |
| fingerprint:enabled | Включает параллельную аутентификацию по отпечатку пальца через fprintd | bool | false |
| fingerprint:ready_message | Сообщение, отображаемое, когда fprintd готов сканировать отпечаток | str | (Scan fingerprint to unlock) |
| fingerprint:present_message | Сообщение, отображаемое, когда палец помещён на сканер | str | Scanning fingerprint |
| fingerprint:retry_delay | Задержка (мс) перед повторным сканированием | int | 250 |
Категория
animations {
# ...
# ...
}
| Имя | Описание | Тип | По умолчанию |
|---|---|---|---|
| enabled | Включает анимации | bool | true |
Ключевые слова animation и bezier можно использовать так же, как и hyprland.conf.
Например:
bezier = linear, 1, 1, 0, 0
animation = fade, 1, 1.8, linear
Следующие клавиши и комбинации клавиш описывают поведение hyprlock по умолчанию:
| Входные данные | Описание |
|---|---|
| ESC | Очистить буфер |
| Ctrl + u | Очистить буфер |
| Ctrl + Backspace | Очистить буфер |
Вся настройка внешнего вида Hyprlock осуществляется с помощью виджетов.
widget_name {
monitor =
...
}
Будут заменены следующие переменные в параметрах текста виджета.
$USER - имя пользователя (например, linux-user)$DESC - Полное имя пользователя (например, «Пользователь Linux»)$TIME - текущее время в 24-часовом формате (например, 13:37)$TIME12 - текущее время в 12-часовом формате (например, 1:37 PM)$LAYOUT - текущая раскладка клавиатуры$ATTEMPTS - неудачные попытки аутентификации$FAIL - причина последнего сбоя аутентификации$PAMPROMPT - последнее приглашение pam auth$PAMFAIL - последняя причина сбоя аутентификации в PAM$FPRINTPROMPT - последнее приглашение для авторизации по отпечатку пальца$FPRINTFAIL — последняя причина сбоя аутентификации по отпечатку пальцаВесь отображаемый текст поддерживает разметку Pango.
<br/>. Не забудьте включить переводы строк (allow_breaks="true").left, center, right, none.top, center, bottom, none.position и size можно указать в пикселях или в процентах от размера вывода.
Некоторые виджеты поддерживают тень. В них можно использовать:
| Имя | Описание | Тип | По умолчанию |
|---|---|---|---|
| shadow_passes | Проходы для shadow, 0 для отключения | bool | false |
| shadow_size | Размер тени | bool | false |
| shadow_color | Цвет тени | bool | false |
| shadow_boost | Непрозрачность тени | bool | true |
Некоторые виджеты кликабельны. А именно label, image и shape.
При нажатии на них можно запускать произвольные команды, настроив в виджете следующую опцию:
| Имя | Описание | Тип | По умолчанию |
|---|---|---|---|
| onclick | команда, запускаемая при нажатии | str | [[Пусто]] |
Рисует фоновое изображение или заполняет цветом.
Если path пустой или отсутствует — будет использован цвет.
Если path — screenshot, будет сделан снимок экрана рабочего стола при запуске.
| Переменная | Описание | Тип | По умолчанию |
|---|---|---|---|
| monitor | Монитор, на котором рисовать | str | [[Empty]] |
| path | Путь к изображению, screenshot или пусто для заливки цветом |
str | [[Empty]] |
| color | Цвет фона по умолчанию | color | rgba(17, 17, 17, 1.0) |
| blur_passes | Количество проходов размытия. 0 — отключает размытие | int | 0 |
| blur_size | Размер размытия (дистанция) | int | 7 |
| noise | Уровень шума | float | 0.0117 |
| contrast | Изменение контраста для размытия | float | 0.8916 |
| brightness | Изменение яркости для размытия | float | 0.8172 |
| vibrancy | Увеличение насыщенности размытых цветов | float | 0.1696 |
| vibrancy_darkness | Сила эффекта vibrancy на тёмных участках | float | 0.05 |
| reload_time | Интервал в секундах между перезагрузкой. 0 — по сигналу SIGUSR2. Игнорируется, если путь — screenshot | int | -1 |
| reload_cmd | Команда для получения нового пути. Если пусто — используется старый путь | str | [[Empty]] |
| crossfade_time | Время перекрёстного перехода между фонами в секундах. Отрицательное значение — без перехода | float | -1.0 |
| zindex | Z-индекс виджета | int | -1 |
✓ С тенью
✓ Кликабельно
Рисует изображение.
Если path пустой или отсутствует — ничего не отображается.
| Переменная | Описание | Тип | По умолчанию |
|---|---|---|---|
| monitor | Монитор, на котором рисовать | str | [[Empty]] |
| path | Путь к изображению | str | [[Empty]] |
| size | Масштаб изображения относительно меньшей стороны | int | 150 |
| rounding | Отрицательные значения делают изображение круглым | int | -1 |
| border_size | Толщина границы | int | 0 |
| border_color | Цвет границы | gradient | rgba(221, 221, 221, 1.0) |
| rotate | Поворот в градусах против часовой стрелки | int | 0 |
| reload_time | Интервал перезагрузки в секундах. 0 — по сигналу SIGUSR2 | int | -1 |
| reload_cmd | Команда получения нового пути. Не использовать команды “follow” вроде tail -F |
str | [[Empty]] |
| position | Позиция изображения | layoutxy | 0, 0 |
| halign | Горизонтальное выравнивание | str | center |
| valign | Вертикальное выравнивание | str | center |
| zindex | Z-индекс виджета | int | 0 |
✓ С тенью
✓ Кликабельно
Рисует фигуру.
| Переменная | Описание | Тип | По умолчанию |
|---|---|---|---|
| monitor | Монитор, на котором рисовать | str | [[Empty]] |
| size | Размер фигуры | layoutxy | 100, 100 |
| color | Цвет фигуры | color | rgba(17, 17, 17, 1.0) |
| rounding | Отрицательные значения делают фигуру круглой | int | -1 |
| rotate | Поворот в градусах против часовой стрелки | int | 0 |
| border_size | Толщина границы | int | 0 |
| border_color | Цвет границы | gradient | rgba(0, 207, 230, 1.0) |
| xray | Если true, создаёт "прозрачное окно" (прямоугольник без поворота) | bool | false |
| position | Позиция фигуры | layoutxy | 0, 0 |
| halign | Горизонтальное выравнивание | str | center |
| valign | Вертикальное выравнивание | str | center |
| zindex | Z-индекс виджета | int | 0 |
✓ С тенью
Рисует поле ввода пароля.
| Переменная | Описание | Тип | По умолчанию |
|---|---|---|---|
| monitor | Монитор, на котором рисовать | str | [[Empty]] |
| size | Размер поля ввода | layoutxy | 400, 90 |
| outline_thickness | Толщина обводки | int | 4 |
| dots_size | Размер точек [0.2 - 0.8] | float | 0.25 |
| dots_spacing | Расстояние между точками [-1.0 - 1.0] | float | 0.15 |
| dots_center | Центрировать точки, иначе выравниваются по левому краю | bool | true |
| dots_rounding | Округление точек | int | -1 |
| dots_text_format | Символ(ы) для отображения ввода, по умолчанию — скруглённые прямоугольники | str | [[Empty]] |
| outer_color | Цвет обводки | gradient | rgba(17, 17, 17, 1.0) |
| inner_color | Цвет внутреннего блока | color | rgba(200, 200, 200, 1.0) |
| font_color | Цвет текста | color | rgba(10, 10, 10, 1.0) |
| font_family | Шрифт | str | Noto Sans |
| fade_on_empty | Затемнение поля при отсутствии ввода | bool | true |
| fade_timeout | Задержка перед затемнением в миллисекундах | int | 2000 |
| placeholder_text | Текст по умолчанию, отображаемый в поле | str | <i>Input Password...</i> |
| hide_input | Отображать индикатор ввода как в swaylock, а не точки | bool | false |
| hide_input_base_color | Базовый цвет для генерации случайных цветов при hide_input | color | rgba(153, 170, 187) |
| rounding | -1 означает полное округление (овал/круг) | int | -1 |
| check_color | Цвет при ожидании результата аутентификации | gradient | rgba(204, 136, 34, 1.0) |
| fail_color | Цвет при неудачной аутентификации | gradient | rgba(204, 34, 34, 1.0) |
| fail_text | Текст при неудачной аутентификации | str | <i>$FAIL <b>($ATTEMPTS)</b></i> |
| capslock_color | Цвет при включенном CapsLock | gradient | [[Empty]] |
| numlock_color | Цвет при включенном NumLock | gradient | [[Empty]] |
| bothlock_color | Цвет при включенном CapsLock и NumLock одновременно | gradient | [[Empty]] |
| invert_numlock | Изменять цвет, если NumLock выключен | bool | false |
| swap_font_color | Иенять местами цвет шрифта и фона при событиях смены цвета | bool | false |
| position | Позиция поля ввода | layoutxy | 0, 0 |
| halign | Горизонтальное выравнивание | str | center |
| valign | Вертикальное выравнивание | str | center |
| zindex | Z-индекс виджета | int | 0 |
✓ С тенью
✓ Кликабельна
Рисует текстовую метку.
| Переменная | Описание | Тип | По умолчанию |
|---|---|---|---|
| monitor | Монитор, на котором рисовать | str | [[Empty]] |
| text | Текст для отображения | str | Sample Text |
| text_align | Выравнивание многострочного текста (center/right/left) | str | center |
| color | Цвет текста | color | rgba(254, 254, 254, 1.0) |
| font_size | Размер шрифта | int | 16 |
| font_family | Семейство шрифта | str | Sans |
| rotate | Поворот в градусах против часовой стрелки | int | 0 |
| position | Позиция метки | layoutxy | 0, 0 |
| halign | Горизонтальное выравнивание | str | center |
| valign | Вертикальное выравнивание | str | center |
Поле text поддерживает подстановку переменных и выполнение shell-команд. Пример:
text = cmd[update:1000] echo "<span foreground='##ff2222'>$(date)</span>"
update: — время в миллисекундах.update:<время>:1 или update:<время>:true и отправив SIGUSR2 процессу hyprlock. В этом случае <время> может быть 0.$ATTEMPTS[<строка>], который отображает <строка>, если нет неудачных попыток. Допустима разметка Pango. Пустая строка ("") — скрывает вывод.$LAYOUT[<en>,<ru>,<de>] заменяет индексы раскладок. Можно использовать значения из hyprland.conf. Символ ! скрывает раскладку: $LAYOUT[!] скроет раскладку по умолчанию (индекс 0), покажет остальные.AsyncResourceGatherer.SIGUSR1 — разблокирует hyprlock. Например, можно переключиться на другую TTY и выполнить:pkill -USR1 hyprlock
SIGUSR2 — обновляет метки и изображения. См. выше.