Contributions to the Wayland ecosystem

The Wayland display server protocol has been one of my interests since Iโ€™ve been able to run a compositor on FreeBSD for the first time. I have contributed a bunch of little things around the whole ecosystem.

FreeBSD porting

As Iโ€™ve been using FreeBSD on the desktop, Iโ€™ve been involved in Wayland porting early on.

Back in late 2016 I started with Sway which was still based on wlc then. Later I maintained a fork of Weston with FreeBSD support and a bunch of other experiments. I have landed a few Weston patches upstream since Iโ€™ve been finding and fixing interesting bugs by using Weston daily :) Later, while considering various options for creating compositors, I have experimented with making a Rust binding to libweston.

I have been upstreaming fixes to other related libraries such as libinput too.

When Sway switched to its own wlroots library, I ported it to FreeBSD too. Other wlroots compositors started appearing soon after, and among them I found Wayfire.

Wayfire development

When I saw Wayfire for the first time, I became a big fan instantly โ€” it was a Compiz-inspired compositor, designed to be a flexible base for desktop environments, which is exactly what I wanted. Wayfire has definitely been one of my favorite projects to work on.

I have landed a lot of patches over the years, starting of course with FreeBSD build fixes, perhaps most famously adding vswipe, the touchpad swipe gesture desktop switcher plugin, and working on other things like various bug fixes, tracking wlroots updates, adding CI and so on. Iโ€™ve been also involved in the external plugin world, perhaps most notably with the GSettings config backend.

Wayland support everywhere

I have also contributed a bunch of Wayland-related patches to various projects including: