A read-only mirror of https://github.com/hyprwm/hyprlock
Find a file
Tom Englund 58c93d8de8
core: fix a few reported leaks by asan (#349)
* widgets: add missing virtual destructor

destructor is missing and as a consequence all sub classes gets wrongly
destructed reported as "new-delete-type-mismatch" by asan.

* gatherer: free memory allocated by pango

with pango_parse_markup its up to the caller of the function to free the
pointer to the text returned stored in this buf.

* core: add destructor and free devices

add a destructor and free both drmDevice and gbmDevice, leaks reported
by asan.

* core: free xkb allocated state and keymap

free xkb state and keymap on destruction to prevent leak on exit and
less asan spam.

* locksurface: destroy the surface frame on done

the callback was never being destroyed and is leaking on each
frameCallback creation, call wl_callback_destroy in onCallback() and
free the memory. reported with asan.
2024-05-25 20:05:37 +02:00
.github/workflows Nix & CI: init 2024-02-20 14:37:12 +02:00
nix nix/hm-module: remove 2024-05-21 19:45:18 +03:00
pam Adding a pam configuration file (#115) 2024-03-02 01:49:44 +02:00
protocols background: add screenshot 2024-02-21 21:39:14 +00:00
src core: fix a few reported leaks by asan (#349) 2024-05-25 20:05:37 +02:00
.clang-format core: initial commit 2024-02-18 23:08:03 +00:00
.gitignore core: Add support for JPEG and WEBP background images (#286) 2024-04-24 18:06:14 +01:00
CMakeLists.txt cmake: macro-prefix-map, compile_commands.json (#338) 2024-05-20 23:00:28 +01:00
flake.lock flake.lock: update 2024-04-15 23:55:44 +03:00
flake.nix nix/hm-module: remove 2024-05-21 19:45:18 +03:00
LICENSE Initial commit 2024-02-18 16:10:12 +00:00
README.md readme: Fixed getconf command in build instructions (#326) 2024-05-13 15:21:54 +01:00

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

See the wiki

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