Go to file
Daniel De Graaf dafbef3ade Unlock the screen on SIGUSR1
When the screen is locked using ext_session_lock, killing swaylock will
leave the session locked.  This is normally desirable if the kill is due
to the OOM killer or swaylock crashing, but can be undesirable if an
unlock is desired.  This adds a signal handler for SIGUSR1 if using
ext_session_lock.
2022-09-24 12:15:53 +02:00
completions bash-completion: localize variables 2022-03-27 11:28:13 +02:00
include Use mlock for password buffer 2022-06-15 10:49:32 +02:00
pam Remove FreeBSD-specific PAM configuration 2020-01-06 13:18:25 -07:00
.build.yml Remove references to pango 2019-01-23 12:20:24 +00:00
.editorconfig Add editorconfig 2021-11-19 09:20:25 +01:00
.gitignore Convert swaylock into standalone project 2019-01-13 21:16:47 -05:00
background-image.c Fix loss of clarity with odd-sized centered image 2022-09-10 20:04:31 +02:00
cairo.c Remove unused functions in common code 2019-01-13 21:19:43 -05:00
comm.c Use mlock for password buffer 2022-06-15 10:49:32 +02:00
LICENSE MIT license 2019-01-13 21:21:09 -05:00
log.c Implement logging and remove wlroots dependency 2019-01-14 23:30:54 -05:00
loop.c Unlock the screen on SIGUSR1 2022-09-24 12:15:53 +02:00
main.c Unlock the screen on SIGUSR1 2022-09-24 12:15:53 +02:00
meson_options.txt Set version in project file 2019-02-05 14:19:14 +01:00
meson.build Use mlock for password buffer 2022-06-15 10:49:32 +02:00
pam.c Use mlock for password buffer 2022-06-15 10:49:32 +02:00
password-buffer.c Use mlock for password buffer 2022-06-15 10:49:32 +02:00
password.c Use mlock for password buffer 2022-06-15 10:49:32 +02:00
pool-buffer.c pool-buffer: handle zero-sized buffers 2021-02-17 16:50:38 +01:00
README.md Drop xdg-output requirement 2022-03-10 10:31:51 +01:00
render.c Remove redundant function render_frames() 2022-03-20 22:54:39 +01:00
seat.c seat: NULL-check on keyboard.modifiers event 2022-02-10 09:40:06 +01:00
shadow.c Use mlock for password buffer 2022-06-15 10:49:32 +02:00
swaylock.1.scd Unlock the screen on SIGUSR1 2022-09-24 12:15:53 +02:00
unicode.c Delete whole utf8 character on backspace 2022-03-22 22:11:27 +01:00
wlr-input-inhibitor-unstable-v1.xml Convert swaylock into standalone project 2019-01-13 21:16:47 -05:00
wlr-layer-shell-unstable-v1.xml Fix some typos 2021-04-12 21:28:59 +02:00

swaylock

swaylock is a screen locking utility for Wayland compositors. It is compatible with any Wayland compositor which implements one of the following Wayland protocols:

  • ext-session-lock-v1, or
  • wlr-layer-shell and wlr-input-inhibitor

See the man page, swaylock(1), for instructions on using swaylock.

Release Signatures

Releases are signed with E88F5E48 and published on GitHub. swaylock releases are managed independently of sway releases.

Installation

From Packages

Swaylock is available in many distributions. Try installing the "swaylock" package for yours.

Compiling from Source

Install dependencies:

  • meson *
  • wayland
  • wayland-protocols *
  • libxkbcommon
  • cairo
  • gdk-pixbuf2 **
  • pam (optional)
  • scdoc (optional: man pages) *
  • git *

* Compile-time dep
** Optional: required for background images other than PNG

Run these commands:

meson build
ninja -C build
sudo ninja -C build install

On systems without PAM, you need to suid the swaylock binary:

sudo chmod a+s /usr/local/bin/swaylock

Swaylock will drop root permissions shortly after startup.