Commit Graph

34 Commits

Author SHA1 Message Date
Simon Zeni d70d74ad4f ci/archlinux: enable address and undefined sanitizers 2021-11-19 16:42:14 +00:00
Simon Ser 8bc1086cac s/GitHub/GitLab/ 2021-11-01 18:54:26 +00:00
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