mirror of
https://github.com/hyprwm/hyprlock.git
synced 2024-12-22 05:19:48 +01:00
A read-only mirror of https://github.com/hyprwm/hyprlock
318c00d6d0
* core: handle rerendering when frameCallback is pending * core: log when skipping label updates * asyncResourceGatherer: remove busy and use loopMutex Makes getAssetById fail less often and thus labels get more stable updates * asyncResourceGatherer: revision locking `assetsMutex` was not needed, since `apply` only gets called from the main thread and resources are also only aquired via the main thread. `preloadTargets`, previously kinda guarded by the `busy` flag are now locked as suggested in #367 (but via a copy of `peloadTargets`). `apply` now returns a boolean so that the locking of preloadTargets in combination with checking `preloadTargets.empty()` is a bit nicer. * asyncResourceGatherer: remove explicit template arg for unique lock |
||
---|---|---|
.github/workflows | ||
nix | ||
pam | ||
protocols | ||
src | ||
.clang-format | ||
.gitignore | ||
CMakeLists.txt | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md |
hyprlock
Hyprland's simple, yet multi-threaded and GPU-accelerated screen locking utility.
Features
- uses the secure ext-session-lock protocol
- full support for fractional-scale
- fully GPU accelerated
- multi-threaded resource acquisition for no hitches
How it looks
Docs / Configuration
Arch install
yay -S hyprlock-git
Building
Deps
You also need the following dependencies
- wayland-client
- wayland-protocols
- mesa
And the development libraries for the following
- cairo
- libdrm
- pango
- xkbcommon
- pam
- hyprlang >= 0.4
- libmagic (file-devel on Fedora)
Development libraries are usually suffixed with -devel
or -dev
in most distro repos.
You also need to install mesa-libgbm-devel
on some distros like RPM based ones where its not
bundled with the mesa package.
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