Commit graph

32 commits

Author SHA1 Message Date
nyorain
8e34692250 render/vulkan: add Vulkan renderer
This new renderer is implemented with the existing wlr_renderer API
(which is known to be sub-optimal for some operations). It's not
used by default, but users can opt-in by setting WLR_RENDERER=vulkan.

The renderer depends on VK_EXT_image_drm_format_modifier and
VK_EXT_physical_device_drm.

Co-authored-by: Simon Ser <contact@emersion.fr>
Co-authored-by: Jan Beich <jbeich@FreeBSD.org>
2021-10-18 11:51:13 +02:00
Simon Ser
6cb25ebad7 ci: switch to seatd-launch
This removes the need for the ad-hoc loop.

Because udev creates the symlinks in /dev/dri/by-path/, we need to
wait for it to consume all pending events before the chmod call.
Previously the delay needed for seatd to come up was enough to let
udev create the symlinks in time (by chance).
2021-09-14 12:47:19 +02:00
Simon Ser
88f65db87f ci: add smoke test
Add a very basic smoke test which uses VKMS to fire up the DRM
backend.
2021-08-08 22:13:33 +02:00
Simon Ser
f6ae028e99 ci: make Meson warnings fatal
New warnings can be hard to notice in CI, since CI will just pass in
that case. Meson sometimes uses warnings for important mistakes, e.g.
invalid option.

Let's turn warnings into errors so that we can spot these more easily.
2021-06-25 10:01:25 -04:00
Simon Ser
787842c459 ci: remove -Dlibseat from Alpine build
This build option doesn't exist anymore.
2021-06-25 10:01:25 -04:00
Kenny Levinsen
8d2a94b0df ci: Build both static and shared
This allows us to validate the objcopy trick in CI. It's basically free
to build both static and shared libraries anyway.

We only enable this for GCC builds right now, as Meson currently lacks
support for prelinking with other compilers.
2021-06-17 11:02:30 +02:00
Kenny Levinsen
21e8a940b8 ci: Add libseat-dev to alpine 2021-04-14 23:25:07 +02:00
Ryan Farley
b29ac8fbac util/uuid: replace with util/token, remove libuuid
Use 128-bit hexadecimal string tokens generated with /dev/urandom
instead of UUIDs for xdg-foreign handles, removing the libuuid
dependency. Update readme and CI. Closes #2830.

build: remove xdg-foreign feature

With no external dependencies required, there's no reason not to always
build it. Remove WLR_HAS_XDG_FOREIGN as well.
2021-04-11 19:09:36 +02:00
Kenny Levinsen
d50bbf0bbc backend/session: Remove logind backend
This is instead delegated to libseat.
2021-04-11 10:03:13 +02:00
Simon Ser
e8ad05913f ci: update xwayland dep on alpine
The xwayland package has changed its name.
2021-03-22 11:54:57 +01:00
Simon Ser
3504bb587d xwayland: add dependency on xwayland
Check that the pkg-config file is available. This will be required
in the future to check whether xwayland supports features such as
-listenfd, -initfd or -verbose.

If there's no pkg-config file, check that the Xwayland executable
is available.

This effectively makes our relationship with xwayland closer to what
a dynamic library is: checked at build-time, but can be overridden
at run-time.
2021-03-03 18:19:12 +01:00
Ilia Mirkin
ef94e7e847 backend/x11: use native cursors
Fixes #2659
2021-02-05 11:45:54 +01:00
Simon Zeni
826108373c ci: build tinywl 2021-01-07 14:39:04 +01:00
Ilia Bozhinov
bf4e2e0eac util: add support for generating UUIDs
Co-authored-by: Jason Francis <cycl0ps@tuta.io>
2021-01-05 20:32:56 +01:00
Kenny Levinsen
bad1e9afa8 session: Add libseat backend 2020-08-24 11:13:55 +02:00
Scott Anderson
906c0766df Remove libcap support
This is simply a false sense of security, and is worse than just using
setuid. CAP_SYS_ADMIN is an extremely serious capability that is
effectively as powerful as root.

It also required users to be in the input group, which allows any
process to keylog the entire system.
2020-04-29 10:39:09 +02:00
Scott Moreau
30308e35fa build: Add 'auto' to logind-provider combo option
The logind provider defaulted to systemd and in order to use elogind,
-Dlogin-provider=elogind was required. This adds 'auto' as a choice
for the login-provider option and sets it as default. Using 'auto',
the build will check for systemd first and if it's not found, try
to find and use elogind automatically.
2020-03-24 14:11:39 +01:00
Drew DeVault
ebdbe177d6 Drop RDP backend
Users interested in remote access to wlroots compositors should use
wayvnc:

https://github.com/any1/wayvnc
2020-01-10 19:38:39 +01:00
Simon Ser
a420d2c41e ci: add a build run with all features disabled
Closes: https://github.com/swaywm/wlroots/issues/1255
2019-12-29 12:24:03 -05:00
Simon Ser
18775fda0f Revert "ci: add xorgproto dep to Arch build"
This reverts commit 35bc3e662a.

Per [1], the dependency has been re-added and we shouldn't need to
explicitly install it anymore.

[1]: https://bugs.archlinux.org/task/64914
2019-12-23 07:49:55 -05:00
Simon Ser
35bc3e662a ci: add xorgproto dep to Arch build
Arch Linux maintainers are still figuring out whether they should ask
people to explicitely install it or make it a dependency of libxcb again
[1].  In the meantime, add it as an explicit dependency. I'll revert
this patch if they decide otherwise.

[1]: https://bugs.archlinux.org/task/64914
2019-12-21 08:50:59 -05:00
Jan Beich
6ae6b5dbb6 Test RDP backend on FreeBSD as well 2019-05-03 20:00:45 +03:00
Simon Ser
cf3b083c32 ci: enable Meson auto features
This makes it so we don't miss build failures because the CI misses a
dependency.
2019-04-29 10:49:05 -06:00
Jan Beich
27a87ac586 Switch to system epoll-shim.pc in FreeBSD build 2019-04-29 18:51:47 +03:00
Drew DeVault
fd0d7d0907 Add FreeRDP backend for remote desktop support 2019-04-08 08:09:07 -06:00
Jan Beich
421283935b Add xcb-errors to FreeBSD build
Test f8428d1063 at least somewhere to avoid build regressions.
2019-02-24 09:10:02 +01:00
Drew DeVault
d1409e3381 Use freebsd/latest for FreeBSD sr.ht builds 2019-02-12 09:57:56 -05:00
Jan Beich
bfd0254485 Update FreeBSD build
- Switch to packages
- Drop unused dependencies
2019-01-07 08:26:16 +00:00
sghctoma
615b25fafc Fix FreeBSD build manifest
Recent libinput-related changes in the ports tree made it necessary to
install devel/evdev-proto before x11/libinput.
2018-12-21 12:22:11 +01:00
emersion
7a2cef1ad0
ci: add Alpine build 2018-12-05 10:42:34 +01:00
emersion
18e26cba78
Disable Clang static analysis 2018-11-25 20:09:02 +01:00
Drew DeVault
320d5ea234 Add FreeBSD build 2018-10-27 10:33:27 -04:00