A modular Wayland compositor library
Go to file
Drew DeVault 5f48c7fddd
Merge pull request #847 from bpinto/bugfix/compilation-without-xwayland-support
rootston: fix compilation without XWayland support
2018-04-07 19:20:25 -04:00
backend backend/{x11,headless}: use default if supplied refresh is invalid 2018-04-05 22:48:00 -04:00
examples Add input-inhibitor example client 2018-04-03 14:06:52 -04:00
include Merge pull request #825 from emersion/surface-iterators 2018-04-05 23:06:29 -04:00
protocol Add wlr_xdg_output_manager 2018-04-05 12:40:30 -04:00
render egl: silence dmabuf error when extension is not present 2018-04-04 09:28:07 +02:00
rootston rootston: fix compilation without XWayland support 2018-04-07 23:29:04 +01:00
types Fix destruction of popups without grabs 2018-04-07 12:21:21 -04:00
util Fix damage tracking for rotated surfaces 2018-03-26 15:31:08 -04:00
xcursor Revert "ELF Visibility" 2018-02-19 18:01:27 -05:00
xwayland Emit xwayland unmap signal before unmapping 2018-04-06 14:13:52 -04:00
.build.yml Change .build.yml upstream to GitHub 2018-03-03 23:11:06 -05:00
.editorconfig Add wlr_primary_selection_device_manager and wlr_primary_selection_source 2017-12-22 19:20:12 +01:00
.gitignore update .gitignore 2018-03-03 15:23:26 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2017-12-27 10:39:53 -05:00
glgen.sh Change glapi.sh to generate both files 2017-11-22 14:04:29 +13:00
LICENSE Initial commit 2017-04-25 11:32:52 -04:00
meson_options.txt Change meson option names to use hypen 2018-04-02 23:35:03 +02:00
meson.build Install include directory into includedir 2018-04-03 16:56:32 +02:00
README.md Remove Travis in favor of builds.sr.ht 2018-03-04 16:33:45 -05:00
wlroots.syms render/gles2: make wlr_renderer_begin take viewport size 2018-03-21 07:37:09 +01:00

wlroots

Pluggable, composable modules for building a Wayland compositor.

This is a WIP: status

Contributing

See CONTRIBUTING.md

Building

Install dependencies:

  • wayland
  • wayland-protocols
  • EGL
  • GLESv2
  • DRM
  • GBM
  • libinput
  • udev
  • pixman
  • systemd (optional, for logind support)
  • elogind (optional, for logind support on systems without systemd)
  • libcap (optional, for capability support)
  • asciidoc (optional, for man pages)

Run these commands:

meson build
ninja -C build

(On FreeBSD, you need to pass an extra flag to prevent a linking error: meson build -D b_lundef=false)

Running the Reference Compositor

wlroots comes with a reference compositor called rootston that demonstrates the features of the library.

After building, run rootston from a terminal or VT with:

./build/rootston/rootston

Now you can run windows in the compositor from the command line or by configuring bindings in your rootston.ini file.