blank X
c5e3ca6249
Alexander Orzechowski (1): xdg-foreign: Fix crash on destroy of degenerate surface Isaac Freund (3): wlr_texture: remove wlr_texture_from_wl_drm() from header foreign-toplevel: send enter if needed on output bind tinywl: fix check whether client is focused or not Kirill Primak (3): scene/subsurface_tree: fix handling subsurface destruction compositor: damage the whole buffer on viewport src change subsurface: unlock cached state on commit if desynced Simon Ser (4): backend: error out in autocreate without libinput support scene: schedule an output frame on wl_surface.frame scene: try to import buffers as textures before rendering build: bump version to 0.15.1 Tadeo Kondrak (1): input_method_v2: improve mapping detection Thomas Hebb (1): render/gles2: don't constrain shm formats to ones that support reading nyorain (1): vulkan: Fix imported image layout -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEENP+VJs/vDpejQOLkD9574OiPXkgFAmH8RzEACgkQD9574OiP XkjPGw/+KdgxXeVJ1Typ8fp9ZfhGTW3sJVREpMpnLra/1lA4LQ1jUDFfvXEPAveI UjgGiyoBpBWcWgj0jS0GgcTE2ExnGlkd9Y6pImM0zUTQ1mQF8hPxyThQiJNDpBix 42lqWtIqYPQObJnXa19SpebNCw/TbHoF/0sHR8I/a0o2PgVT9LGIsqI1nAYH7H/e lUR5paZU5G60lQdePhTIOv7MuXNt7fgtpizw/WNMqz0Cl+1weoIAtXv2UWZM39wW hhK2e02n8GncLYQn459xqf5UfkCnie9u6BCL4PMuEm+sOsYH5sQzsUFfQjBsNCqL ztgFssPwW6v/vImvWclvD0DAOgPK0kMEg0RWlBOKfTTxBewloKp4MIY/udKX9+5S b8ALOizzS0vL/lTFc+o4XBELE/X9f0S0Sv+mtWXD4xuOMREPUaijJ5LyOmDf6gG5 K/CB5T2pdQqNC9UdTGMPlauSFVqliBO7hyQSHl3tr5/ZjQZ3tGFL+szp7b62Rb5r ChQCUC6NvDhcKzZaPwL9py005yk0LT5oEXVxRJId6ipWuGn+XBnBoWWckpy/3Zpu cnacvsxyKaQS3Uts13UlVW4ojr3wolDzBqDPQGU8xsqQcbgcbjGLxkPFDIWT++3D XzBx6bRBTKr1EJRoEROuSl0xDEaWJlZt1XUGPLP1Uxew4DSrXOg= =mFoc -----END PGP SIGNATURE----- gpgsig -----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEE+M9eMyy2C5F27kiEzBX8gix/YfUFAmIphlUACgkQzBX8gix/ YfVWfA/8C+GEw9/P2s+eKBdK6jIB9H0as/yjLCDQDmAX2iAIGdnJ+4ojd2C6xDMK mUDRU1UOufafXMdaFa7DXeWYGkHII62K3qxdVD737bCRApkBGLVC9h11QuWgcYYC BxeduZouZ1npRtTxINBCC5TXKDWkt0cvQDrD7pnL+AH+ny5WvOnRO1CaPXCgnc7v hqdrVAtHRdAkYBBHuu9WgMpvVzkS3KXr7NaWLpRdGa7nWpkKX9aoa0tNjCL86TPq QHDMhQnPxghxJl6xc9rhDWJYcYCUxJ4W4ABbyqkkP64wBtjnDJVh7LWRx4qnFNIO ky0E3JM6A5YZ/N0fdOIsxvJ2YOpqYYXhKS8NJa2a+Wnsw+QEHe8hnST4UWGcQERf qX0hghKhuYNxpm4vrB3rOPwbcQIdjGo2jlEH4GG3gENduekvvdGAr5qcXDH+5pol 7iwrbARI3T6kTplx/iDvHk5wYGKwj5oatXy4AKwbBt+DNDakF6Vf9RGLKOtC2cty YS607osq9kUUX47RCSP11W3zb84cAtJNw5eHmQzVPJ+hAlGsaMdDVUbUGgJiruVe pyYeSKxKyFTao3SYSizZwJB0mwYXWsDsVdf4c6mbdr3w5MBWslrliCof9vzSQSq3 KAiGawPiT+ar87kyQMaCaMl0ZLaXG7g/MXKNsRp/Ss437nhknqg= =6/3L -----END PGP SIGNATURE----- Merge tag '0.15.1' into dkondor-upstream-pr-2551 wlroots 0.15.1 Alexander Orzechowski (1): xdg-foreign: Fix crash on destroy of degenerate surface Isaac Freund (3): wlr_texture: remove wlr_texture_from_wl_drm() from header foreign-toplevel: send enter if needed on output bind tinywl: fix check whether client is focused or not Kirill Primak (3): scene/subsurface_tree: fix handling subsurface destruction compositor: damage the whole buffer on viewport src change subsurface: unlock cached state on commit if desynced Simon Ser (4): backend: error out in autocreate without libinput support scene: schedule an output frame on wl_surface.frame scene: try to import buffers as textures before rendering build: bump version to 0.15.1 Tadeo Kondrak (1): input_method_v2: improve mapping detection Thomas Hebb (1): render/gles2: don't constrain shm formats to ones that support reading nyorain (1): vulkan: Fix imported image layout |
||
---|---|---|
.builds | ||
backend | ||
docs | ||
examples | ||
include | ||
protocol | ||
render | ||
tinywl | ||
types | ||
util | ||
xcursor | ||
xwayland | ||
.editorconfig | ||
.gitignore | ||
.gitlab-ci.yml | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
meson.build | ||
meson_options.txt | ||
wlroots.syms |
README.md
blankie/wlroots - dkondor-upstream-pr-2551
This branch "frontports" https://gitlab.freedesktop.org/wlroots/wlroots/-/merge_requests/2551, should be updated when there's a new wlroots version and be unmaintained when the pull request above is merged
wlroots
Pluggable, composable, unopinionated modules for building a Wayland compositor; or about 60,000 lines of code you were going to write anyway.
- wlroots provides backends that abstract the underlying display and input hardware, including KMS/DRM, libinput, Wayland, X11, and headless backends, plus any custom backends you choose to write, which can all be created or destroyed at runtime and used in concert with each other.
- wlroots provides unopinionated, mostly standalone implementations of many Wayland interfaces, both from wayland.xml and various protocol extensions. We also promote the standardization of portable extensions across many compositors.
- wlroots provides several powerful, standalone, and optional tools that implement components common to many compositors, such as the arrangement of outputs in physical space.
- wlroots provides an Xwayland abstraction that allows you to have excellent Xwayland support without worrying about writing your own X11 window manager on top of writing your compositor.
- wlroots provides a renderer abstraction that simple compositors can use to avoid writing GL code directly, but which steps out of the way when your needs demand custom rendering code.
wlroots implements a huge variety of Wayland compositor features and implements them right, so you can focus on the features that make your compositor unique. By using wlroots, you get high performance, excellent hardware compatibility, broad support for many wayland interfaces, and comfortable development tools - or any subset of these features you like, because all of them work independently of one another and freely compose with anything you want to implement yourself.
Check out our wiki to get started with wlroots. Join our IRC channel: #sway-devel on Libera Chat.
wlroots is developed under the direction of the sway project. A variety of wrapper libraries are available for using it with your favorite programming language.
Building
Install dependencies:
- meson
- wayland
- wayland-protocols
- EGL and GLESv2 (optional, for the GLES2 renderer)
- Vulkan loader, headers and glslang (optional, for the Vulkan renderer)
- libdrm
- GBM
- libinput (optional, for the libinput backend)
- xkbcommon
- udev
- pixman
- libseat
If you choose to enable X11 support:
- xwayland (build-time only, optional at runtime)
- libxcb
- libxcb-render-util
- libxcb-wm
- libxcb-errors (optional, for improved error reporting)
Run these commands:
meson build/
ninja -C build/
Install like so:
sudo ninja -C build/ install
Contributing
See CONTRIBUTING.md.