Commit Graph

34 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
ayaka 70fb21c35b backend: make DRM and libinput backends optional
Co-authored-by: Simon Ser <contact@emersion.fr>
2021-07-22 09:56:38 -04:00
ayaka ed1924800d render: make GLES2 renderer optional
Allow selecting whether the GLES2 renderer gets enabled.

Co-authored-by: Simon Ser <contact@emersion.fr>
2021-04-17 16:39:40 +02:00
Kenny Levinsen 95b657ba80 backend/session: Make libseat mandatory 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 de5347d0f2 xwayland: require xcb-icccm
This dependency is already required by many other widely used X11
programs, such as i3, Qt, and other XWMs. So it should be available
on most systems.

X11 support can be pretty broken without xcb-icccm, with focus issues
for instance. Let's just remove this --please-break-my-desktop footgun
option.
2021-03-29 12:24:26 +02:00
Ilia Bozhinov 37602e153b types: add wlr_xdg_foreign_registry 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
Jan Beich 8d2e8d8a06 xcursor: also look for cursor themes under ${datadir}/icons by default
Same as https://gitlab.freedesktop.org/wayland/wayland/commit/dd8891be36ec
2020-03-04 10:02:31 +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
Drew DeVault 58b2584863 Remove rootston 2019-08-09 08:34:59 +09:00
Drew DeVault fd0d7d0907 Add FreeRDP backend for remote desktop support 2019-04-08 08:09:07 -06:00
emersion bd5516d4ec
meson: yield xwayland option 2019-01-18 09:07:22 +01:00
Scott Anderson 70ae76304e backend/x11: Remove old input functions
This also allows us to remove xcb-xkb, since Xinput will now give us the
appropriate XKB modifiers with each event.
2018-11-13 10:55:03 +13:00
Scott Anderson fd3fa760d3 Revert "Revert "Merge pull request #1194 from ascent12/meson_feature""
This reverts commit 9c886f20b9.
2018-08-24 19:35:02 +12:00
Drew DeVault 9c886f20b9 Revert "Merge pull request #1194 from ascent12/meson_feature"
This breaks wlroots when used as a meson subproject.

This reverts commit dea311992e, reversing
changes made to 6db9c4b746.
2018-08-23 21:00:58 -04:00
Scott Anderson 584a3f8b6e Update examples to use new option
We use a dictionary to remove some code duplication.
2018-08-22 21:15:34 +12:00
Scott Anderson 560e96aa57 Update rootston to use new option 2018-08-22 20:41:25 +12:00
Scott Anderson 784c20c82f Use new options for X11 backend and Xwayland 2018-08-22 20:27:37 +12:00
Scott Anderson 94ed2fc7bb Use feature options for libcap/logind
We now use a combo choice between systemd/elogind as they are mutually
exclusive anyway.
2018-08-22 19:53:00 +12:00
Scott Anderson 3fa3dca6d5 Add new feature options
Bump minimum meson version to 0.47 for the feature.
2018-08-22 19:41:53 +12:00
florian.weigelt d68a27fd79 Add option to disable examples build
Compiling the examples is useful for testing and development, but less
useful for actual users of wlroots.
This commit adds the option --enable-examples to set weather to include
the examples at compilation or not. The default value is True, so the
current behaviour remains unchanged.
2018-05-05 09:50:10 +02:00
florian.weigelt 34be87a3f6 Add option to disable rootston build
Compiling the rootston example compositor is useful for testing and
development, but less useful for actual users of wlroots, who might
prefer sway or other compositors.
This commit adds the option --enable-rootston to set weather to include
rootston at compilation or not. The default value is True, so the
current compilation behaviour remains unchanged.
2018-05-05 09:40:02 +02:00
Danilo Spinella 046d909e7a Change meson option names to use hypen
Replace underscore with hypen in meson option names, following style
recommendations.

http://mesonbuild.com/Style-guide.html#naming-options
2018-04-02 23:35:03 +02:00
Cedric Sodhi 51141dd11e Minor corrections 2018-03-23 10:28:36 +01:00
Cedric Sodhi ebdabc2030 Make X11 fully optional
Make X11 Backend (in addition to XWayland) optional and small bug fix on XWayland includes.
2018-03-09 15:17:15 +01:00
Dominique Martinet f8428d1063 xcb errors: optional dependency with improved messages
Now message can look like:
[xwayland/xwm.c:991] xcb error: op ChangeProperty (no minor), code Window (no extension), value 6291465

instead of this one when the lib is not available:
[xwayland/xwm.c:999] xcb error: op 18:0, code 3, sequence 103, value 6291465

The value in case of Window is the window id, so we can tell what
function applied on which window which is a good start.
The sequence ought to be able to tell us more precisely which
invocation it was, but we never log it when calling functions
so is useless in practice and no longer logged.
2018-03-03 11:46:04 +01:00
Dominique Martinet 161ae2fcb4 meson build: make enable options work as auto/true/false
This makes meson fail if -Denable_systemd=true was set but not found
The default is now auto which is the old behaviour
2018-02-10 10:46:27 +01:00
Versus Void 9cab66f0f9 Make xwayland compile-time optional 2017-10-06 21:50:25 +00:00
dudemanguy 175f89f4ff Add elogind support
Resolves SirCmpwn/wlroots#146
2017-09-22 12:02:55 -05:00
Scott Anderson 75978636d9 Change meson to be more configurable
We move the warning options into the project's default_options, meaning
a user can configure them with `meson configure` and not need to edit
the file.

We also make it possible to disable logind/libcap even if they're
present.
2017-08-20 22:19:47 +12:00