This month has been a little bit more quiet than others. I’ve spent a fair bit of time working on gamescope for Valve. As usual I’ve been fixing bugs and improving gamescope itself, but I’ve also worked on the rest of the ecosystem. I’m plumbing format modifiers support to Mesa’s VA-API frontend (both for buffer import and export). This will hopefully allow VA-API to work better with Vulkan, which heavily relies on format modifiers. I’ve also been working on reducing frame latency on Xwayland: in some cases Xwayland will delay the buffers by a frame’s worth of time, we definitely want to avoid this.
My other main focus this month has been soju and gamja. One of the annoyances I’ve been trying to solve with soju is that each time I setup a new IRC client I need to manually configure a new connection for each network the bouncer is connected to. If I want to connect to a new network, I also need to re-configure all my existing clients. I’d like these kind of things to Just Work.
soju first tried to solve this issue by multiplexing multiple networks on a
single IRC connection, appending a “/<network>” suffix to all channels and
nicknames. This works reasonably well, but breaks edge use-cases, doesn’t look
good, and is a pretty big hack. This month I’ve been working on an IRC
extension to allow clients to discover and manage the bouncer networks. Not
only this allows clients to properly display all bouncer networks (with live
updates), but this also allows clients to expose some UI to manage the networks
(something so far done via a special
BouncerServ IRC service). All of these
features are completed and living in a branch, I’d like to do some more testing
and gather more feedback from other developers before finalizing the work.
Here’s how it looks like from gamja (pretty much what you’d expect):
gamja also has a brand new UI to add, edit and delete networks:
taiite is working on supporting this extension for his terminal client, senpai.
Apart from IRC, I’ve been collaborating with other Wayland developers on new protocols. The xdg-activation protocol I’ve talked about last month is almost complete. Roman Gilg has been reviving discussions about input method editors (allowing e.g. virtual keyboards and CJK input), as there is still a lot of work to be done in this area.
Last but not least, I’ve been doing some planning for the next Sway release. It doesn’t look like we have any blocker anymore, so I’ll start the release candidates soon™.
That’s all, see you next month!