A modular Wayland compositor library
Go to file
Drew DeVault d466cc117f Don't reset exclusive between layer shell passes
This is not the intended behavior of exclusive zones, the second pass is
meant to respect the usable area.
2018-04-02 14:55:17 -04:00
backend Merge pull request #792 from emersion/x11-backend-blank-cursor 2018-04-02 10:21:07 -04:00
examples examples: get wlr_renderer from the backend 2018-04-01 16:57:29 -04:00
include Merge pull request #800 from emersion/untie-gles2-renderer-texture 2018-04-02 10:32:04 -04:00
protocol Address @emersion's feedback 2018-03-27 18:50:32 -04:00
render Untie wlr_gles2_renderer and wlr_gles2_texture 2018-04-01 16:07:50 -04:00
rootston Don't reset exclusive between layer shell passes 2018-04-02 14:55:17 -04:00
types annotate wlr-output-layout coord variables 2018-04-01 00:17:27 -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 xwayland: specify xwm cursor stride in bytes 2018-03-31 00:22:58 -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 Minor corrections 2018-03-23 10:28:36 +01:00
meson.build backend/x11: make xcb-xkb optional, remove global state 2018-03-28 00:26:15 -04: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.