01. Overview & Architecture

Profile: v0.9.6
Schema validatedSource pinned
Purpose
Fast, GPU-accelerated lock screen for Hyprland.
Compatibility
Any distro (Server: WAYLAND)
Desktop Part
Lock screens
Window Manager & Theme
Hyprland / Other

02. Installation & Deployment

Before you installThis changes your desktop configuration and installs packages. Run it as your normal user, never with sudo: it asks for sudo only where a step needs it (listed below).The guided installer shows its plan first. Files it would replace are kept unless you approve. Everything it copies, clones or appends to in your home folder is backed up and verified first, and --rollback restores it. Packages, sudo changes and the other commands listed under Impact are not undone.
IntegrityEach release from main builds the installers in GitHub Actions and signs them with a GitHub build attestation. Verify your download against the repository, not this website (Option B, step 2). If it does not verify, don't run it.
ImpactPackages: hyprlock
RecoveryGuided: backups in ~/.local/state/0xtsoa/backups/, undo with bash install.sh --rollback.Manual: the steps below only write in the download folder or run listed commands.
Option A: manual installAdvanced
Read the source at the reviewed commit, back up, then run each step yourself.
$git clone https://github.com/hyprwm/hyprlock ~/0xtsoa-review/hyprwm-hyprlock# 1. clone to a review folder
$git -C ~/0xtsoa-review/hyprwm-hyprlock checkout --detach 0332e40b8e56404f11cd79f859f208a4b9de8714# 2. the reviewed commit
Then the steps. Package commands are written for Arch; on other distros use your package manager.

Step-by-step deployment protocol

Step-by-step deployment
1Install hyprlock (Arch repos)
$sudo pacman -S --needed hyprlock
$# Other distros: see the upstream README
Option B: guided installerRecommended
The same steps as one script for any distro. It shows the plan first, keeps files you already have unless you approve replacing them, and backs up everything it changes in your home folder. Never pipe it into a shell.
$curl -fsSLo install.sh 'https://www.0xtsoa.dev/configs/hyprwm/hyprlock/install.sh'# 1. download
$gh attestation verify install.sh --repo nyharena25/0xTsoa --signer-workflow nyharena25/0xTsoa/.github/workflows/attest-installers.yml# 2. verify (GitHub CLI 2.49+, signed in)
$less install.sh# 3. read it
$bash install.sh --dry-run# 4. preview: changes nothing
$bash install.sh# 5. install (asks first)
$bash install.sh --rollback# undo the file changes
View script in browserOther options: --force (replace conflicts, backed up first), --yes, --help

03. Documentation & Guide

Source: hyprwm/hyprlockRef: 0332e40b8e
README.md|GitHub Flavored Markdown

hyprlock

Hyprland's simple, yet multi-threaded and GPU-accelerated screen locking utility.

Features

  • Uses the ext-session-lock protocol
  • Support for fractional-scale
  • Fully GPU accelerated
  • Multi-threaded resource acquisition
  • Blurred screenshot as the background
  • Native fingerprint support (using libfprint's dbus interface)
  • Some of Hyprland's eyecandy: gradient borders, blur, animations, shadows, etc.
  • and more...

How it looks

Docs / Configuration

See the wiki

Arch install

pacman -S hyprlock # binary x86 tagged release
# or
yay -S hyprlock-git # compiles from latest source

Building

Deps

You need the following dependencies

  • cairo
  • hyprgraphics
  • hyprlang
  • hyprutils
  • hyprwayland-scanner
  • mesa (required is libgbm, libdrm and the opengl runtime)
  • pam
  • pango
  • sdbus-cpp (>= 2.0.0)
  • wayland-client
  • wayland-protocols
  • xkbcommon

Sometimes distro packages are missing required development files. Such distros usually offer development versions of library package - commonly suffixed with -devel or -dev.

Building

Building:

cmake --no-warn-unused-cli -DCMAKE_BUILD_TYPE:STRING=Release -S . -B ./build
cmake --build ./build --config Release --target hyprlock -j`nproc 2>/dev/null || getconf _NPROCESSORS_CONF`

Installation:

sudo cmake --install build
GitHub Flavored Markdown (github-markdown-css)README snapshot at 0332e40b8e