aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 721265ae935f5c1cf767fb1d560c2e984a43970e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# wlroots [![](https://api.travis-ci.org/swaywm/wlroots.svg)](https://travis-ci.org/swaywm/wlroots)

Pluggable, composable modules for building a
[Wayland](http://wayland.freedesktop.org/) compositor.

This is a WIP: [status](https://github.com/swaywm/wlroots/issues/9)

## Contributing

See [CONTRIBUTING.md](https://github.com/swaywm/wlroots/blob/master/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

Run windows on the compositor with the display variable set:

```bash
# run gtk apps like this
gnome-calculator --display=wayland-0

# run QT apps like this
qgit -platform wayland

# run X11 apps like this
DISPLAY=:1 firefox
```