Find a file
emersion 731ee24089
xdg-shell, xdg-shell-v6: don't emit unmap if surface is unmapped
Some clients create an xdg_surface, then create an xdg_toplevel,
but don't map it and destroy it right after. The xdg_surface ends
up in a state where it isn't mapped but role-specific resources
have been allocated. xdg_surface_unmap needs to free these
resources without emitting the unmap signal.
2018-03-21 20:11:53 +01:00
backend render: split render.h into wlr_renderer.h and wlr_texture.h 2018-03-19 23:16:29 +01:00
examples render: split render.h into wlr_renderer.h and wlr_texture.h 2018-03-19 23:16:29 +01:00
include gles2: allow to specify texture target type 2018-03-20 14:30:30 +01:00
protocol Add initial linux_dmabuf protocol support 2018-03-15 12:40:18 +01:00
render gles2: Honor alpha in fragment_src_external 2018-03-20 14:30:30 +01:00
rootston render: split render.h into wlr_renderer.h and wlr_texture.h 2018-03-19 23:16:29 +01:00
types xdg-shell, xdg-shell-v6: don't emit unmap if surface is unmapped 2018-03-21 20:11:53 +01:00
util Rename _strip_path to wlr_strip_path 2018-02-21 10:25:52 +01:00
xcursor Revert "ELF Visibility" 2018-02-19 18:01:27 -05:00
xwayland xwm.h: fix guard ifdef and remove wlr_ prefix from xwm_atoms_contains 2018-03-04 11:16:18 +01: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.build meson: use current_source_dir instead of source_root 2018-03-12 12:15:26 +01:00
meson_options.txt xcb errors: optional dependency with improved messages 2018-03-03 11:46:04 +01:00
README.md Remove Travis in favor of builds.sr.ht 2018-03-04 16:33:45 -05:00
wlroots.syms add _wlr_vlog to syms global 2018-02-24 12:12:05 -05: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.