Control which Wayland protocol extensions are available to which clients on any Wayland compositor
- Supports yaml configuration (see configuration.md)
- Can be used as a library by Wayland compositor developers
- Can be preloaded into any compositor without rebuilding it
- wayland-server
- yaml-cpp
- Install dependencies
meson setup buildninja -C buildsudo ninja -C build install
- Run your Wayland compositor with
LD_PRELOADset to/path/to/libwlbouncer-preload.so - ex:
LD_PRELOAD=/usr/local/lib/libwlbouncer-preload.so sway
- Link to the
wlbouncerpkgconfig package - Include
wlbouncer.h - Call
wl_bouncer_init_for_display()after creating a Wayland display - DO NOT call
wl_display_set_global_filter()(it will replace wlbouncer's filter)
BOUNCER_CONFIG: set path to wlbouncer.yaml configuration file (can be overridden by compositor when wlbouncer is not preloaded)BOUNCER_DEBUG: if set to any value, wlbouncer will print what it's doingBOUNCER_KEEP_LD_PRELOAD: when wlbouncer is preloaded into a Wayland compositor it will clearLD_PRELOADby default (so it's not preloaded into every descendant process of the compositor). Setting this to any value will prevent this behavior