A read-only mirror of https://github.com/hyprwm/hyprlock
Find a file
Maximilian Seidler 883fbdfe01
auth: implement a full pam conversation (#205)
* auth: implement a full pam conversation

* input-field: fixup failedAttempts and color change

Credits to @bvr-yr

* pam: set default module to hyprland

* input-field: backup previous asset

* auth: restart auth in onPasswordCheckTimer

* auth: immediately switch to waiting when input was submitted

* auth: remove redundant waitingForPamAuth

* auth: add inputRequested and reschedule submitInput

* auth: clear password buffer and handle submitInput before input is requested

* Revert "input-field: backup previous asset"

This reverts commit 89702945be6af4aa43f54688ad34a4ccba994a3e.

Without the backup we avoid rendering the prompt placeholder for one frame when the failText is not available.
Looks better this way.

* auth: fallback to su if pam_module not in /etc/pam.d

rare occasion where a path check even works on nix

* auth: rename inputSubmitted and resubmit callback

* auth: detach failText from the conversation

* fix rebase mistake

* auth: make sure prompt and failText are not reset when restarting auth

needed for labels

* auth: force update timers when the prompt changes

* auth: remove unused stuff
2024-04-10 22:41:31 +01:00
.github/workflows Nix & CI: init 2024-02-20 14:37:12 +02:00
nix widgets: add Shape + minor image improve (#266) 2024-04-10 17:24:17 +01: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 auth: implement a full pam conversation (#205) 2024-04-10 22:41:31 +01:00
.clang-format core: initial commit 2024-02-18 23:08:03 +00:00
.gitignore label: destroy texture (#230) 2024-03-26 00:37:36 +00:00
CMakeLists.txt cmake: bump ver to 0.3.0 2024-04-08 15:39:01 +01:00
flake.lock flake.lock: update 2024-03-28 12:40:29 +02:00
flake.nix Nix: refactor flake 2024-02-29 15:13:35 +02:00
LICENSE Initial commit 2024-02-18 16:10:12 +00:00
README.md README: fix a typo 2024-03-24 19:45:20 +02: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 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