Commit Graph

50 Commits

Author SHA1 Message Date
Simon Ser
6213fa0a7c build: bump version to 1.7.1 2023-01-27 12:23:16 +01:00
Simon Ser
84598b08f2 build: use configuration data for SYSCONFDIR and SWAYLOCK_VERSION 2022-12-05 11:02:41 +01:00
Simon Ser
ee8d4ff655 build: drop intermediate protocols static lib 2022-12-05 11:02:41 +01:00
Simon Ser
dcba5bcb9f build: move completions to separate file 2022-12-05 11:02:41 +01:00
nerdopolis
d9e71c87c7 Fix build on Debian Stable 2022-11-28 08:12:06 +01:00
Simon Ser
9ec4541030 build: find native wayland-scanner 2022-11-27 14:13:37 +01:00
Simon Ser
1c77805930 build: bump to version 1.7 2022-11-27 14:07:27 +01:00
Alexander Orzechowski
cc2779330f meson: Clean up client_protocols 2022-09-26 19:58:53 +02:00
Robin Ebert
bdeb891378 Use mlock for password buffer 2022-06-15 10:49:32 +02:00
Rick van Schijndel
fad5bc2f61 wayland-scanner: use native version to support cross-compilation
Cross-compilation support was broken in 55c018a350 because wayland-scanner from the host system is used with that change.
This patch changes it back to use wayland-scanner from the build system.
For normal (non-cross) compilation this shouldn't change anything.

Meson also uses the build machine wayland-scanner binary:
- c649a2b8c5/mesonbuild/modules/unstable_wayland.py (L48-L53)
2022-04-26 05:41:28 +02:00
Simon Ser
2813756a19 Drop xdg-output requirement
Rely on wl_output v4 instead.
2022-03-10 10:31:51 +01:00
Simon Ser
c80733a06a build: stop using sh to generate man pages 2022-02-02 15:44:41 +01:00
Simon Ser
55c018a350 build: lookup wayland-scanner dep, require 1.15 2022-02-02 15:42:29 +01:00
Simon Ser
c74a129246 build: stop aligning assignments
More consistent with our code style.
2022-02-02 15:35:52 +01:00
Simon Ser
2107830b1e build: explicitly set check arg for run_command
References: https://github.com/mesonbuild/meson/issues/9300
2022-02-02 15:34:13 +01:00
Simon Ser
1d1c75b631 Add support for ext-session-lock-v1
This is a new protocol to lock the session [1]. It should be more
reliable than layer-shell + input-inhibitor.

[1]: https://gitlab.freedesktop.org/wayland/wayland-protocols/-/merge_requests/131
2022-02-02 15:30:45 +01:00
Simon Ser
978ce49894 build: add Meson subproject fallback for wayland-protocols
This allows building swaylock with a local wayland-protocols.
2022-02-02 15:30:45 +01:00
Simon Ser
386f8f4241 build: bump Meson min version to 0.58
The next commit will need that version. Adjust the build to not
trigger deprecation warnings.
2022-02-02 15:30:45 +01:00
Michael Vetter
5da2b1d861 Set version to 1.6
It seems this gets forgotten before doing a release.
Like last time: https://github.com/swaywm/swaylock/pull/84

So this time I will try differently and set it to the (probably)
next version number :-)
2020-01-23 07:30:27 -07:00
Eli Schwartz
89f1ede511 fish-completion: use the correct fallback directory
fish completions should never be installed to share/fish/completions/ as
that directory is reserved exclusively for completions shipped as part
of the fish source code.

Use the same vendor_completions.d/ directory which the default fish
configuration uses.
2020-01-22 09:19:47 -07:00
Eli Schwartz
3baa500c5e completion: use pkg-config to get install location for bash/fish
Both shells provide pkg-config files which declare their designated
completionsdir. Use this as the primary source of truth.
2020-01-22 09:19:47 -07:00
Namkhai B
dee002155b Remove FreeBSD-specific PAM configuration
Something in FreeBSD's PAM modules changed, and
now using the "passwd" configuration file fails to unlock
2020-01-06 13:18:25 -07:00
Michael Vetter
a9b274eb6c Adapt version number to actual release 2019-05-23 09:43:51 +03:00
emersion
076d442c03
Fix --version when building from tarball 2019-02-12 23:25:56 +01:00
Michael Vetter
3515c4b453 Set version in project file
Let's set the version in the meson file instead of declaring it outside.

In case git is installed we use the git hash as version. Instead it
isn't (like on a clean build system), let's use the version defined in
the project.
2019-02-05 14:19:14 +01:00
Jan Beich
c163f0a0c7 Add man-pages option like swaywm/sway@ba16f16e4d 2019-01-24 23:23:30 +01:00
Ian Fan
b87e2a4916 Remove references to pango 2019-01-23 12:20:24 +00:00
Drew DeVault
f0353900ae
Merge pull request #22 from swaywm/meson-options
Add Meson feature options
2019-01-22 09:11:36 -05:00
Connor E
2e330473eb Remove unused pango.c 2019-01-22 14:59:39 +01:00
Connor E
291bae1e44 Remove VLAs. 2019-01-18 12:27:42 +00:00
emersion
667fea6a8f
Add Meson feature options 2019-01-18 08:58:57 +01:00
Michael Weiss
710a711fd7
Replace old Sway references with swaylock 2019-01-17 17:18:20 +01:00
emersion
0c7932a3af
Move PAM into a child process 2019-01-17 09:53:23 +01:00
emersion
2e50a3cb96
Add a pam Meson option 2019-01-16 22:45:38 +01:00
Brian Ashworth
dff6b63725 Remove list.c
This replaces all occurrences of `list_t` with `wl_list` to eliminate
the need for `list.c`
2019-01-15 09:26:18 +01:00
Brian Ashworth
e3935ad143 Implement logging and remove wlroots dependency
This implements a simpler version of the wlroots logger for swaylock.
With this logger, the dependency on wlroots can be dropped. This also
adds a debug flag and disables debugging output by default
2019-01-14 23:30:54 -05:00
Drew DeVault
fcf1bd4ebe Add datadir
And actually tested it as if I weren't a dumbass
2019-01-14 19:48:31 -05:00
Drew DeVault
1409f16aa6 Remove enable-tray properly 2019-01-14 19:44:09 -05:00
Drew DeVault
eba966c92b Add completions 2019-01-14 19:38:03 -05:00
Drew DeVault
4f44a3b2bd Add README.md, compile man pages 2019-01-13 21:24:33 -05:00
Drew DeVault
b90637e2a6 Convert swaylock into standalone project 2019-01-13 21:16:47 -05:00
Drew DeVault
c7776e7804 Fix swaylock w/shadow on glibc, improve security
Today I learned that GNU flaunts the POSIX standard in yet another
creative way. Additionally, this adds some security improvements,
namely:

- Zeroing out password buffers in the privileged child process
- setuid/setgid after reading /etc/shadow
2018-10-06 12:20:12 -04:00
Arkadiusz Hiler
e184e5987f Add support for installing binaries with DT_RPATH
It's better to use DT_RPATH dynamic section of the elf binary to store
the paths of libraries to load instead of overwriting LD_LIBRARY_PATH
for the whole environment, causing surprises. This solution is much more
transparent and perfectly suitable for running contained installations
of wayland/wlroots/sway.

The code unsetting the LD_LIBRARY_PATH/LD_PRELOAD was also deleted as
it's a placebo security at best - we should trust the execution path
that leads us to running sway, and it's way too late to care about those
variables since we already started executing our compositor, thus we
would be compromised anyway.
2018-09-30 15:37:01 +03:00
Drew DeVault
64259db8d6 Add support for building swaylock without PAM
This involves setuid'ing swaylock, which then forks and drops perms on
the parent process. The child process remains root and listens on a pipe
for requests to validate passwords against /etc/shadow.
2018-09-28 13:53:01 +02:00
sghctoma
2376a9c5d7 Add FreeBSD-specific PAM configuration
The "login" PAM configuration means somathing entirely different on
FreeBSD than on Linux: if you try to authenticate as the calling user,
it OKs the request without prompting for password. The "passwd" config
implements the desired functionality, therefore it should be used by
swaylock.
2018-08-30 09:58:57 +02:00
Bruno Pinto
780b15be32 [swaylock] Install pam module 2018-04-20 01:29:47 +01:00
Drew DeVault
3f21cd441b Add password buffer, refactor rendering/surfaces 2018-04-04 18:47:48 -04:00
Drew DeVault
aead06f43c Link swaylock to xkbcommon 2018-04-04 18:47:48 -04:00
Drew DeVault
1ca6d92c34 Split seat code into its own file 2018-04-04 18:47:48 -04:00
Drew DeVault
2d1a44703b Initial swaylock port 2018-04-04 18:47:48 -04:00