- cross-posted to:
- linux@programming.dev
- linux@lemmy.world
- cross-posted to:
- linux@programming.dev
- linux@lemmy.world
cross-posted from: https://feditown.com/post/3071906
Edit: To clarify, this is not my personal blog. It’s just intended to raise awareness and spread it around here as well. I just don’t believe in editorializing titles
not a single one of those compositors implement the entire API surface you need.
Aegis has requested that those of us who wish to not see Talon on Linux die out do the following:
- Do not, for any reason, discuss Wayland support with him;
- As a community, gather together, and successfully implement the entire API surface needed for Talon on GNOME, KDE, and wlroots,
At which point a new Wayland backend will be considered for Talon.
I agree that it’s not up to Talon to implement the missing APIs in the compositors. However, I think the dev is doing a disservice to the users of Talon by not adding wayland support (ie making the calls to the APIs Talon needs to function). If Talon used those wayland protocols, users could point to the software and say it’s “not working on compositor because the compositor is missing wayland protocols”.
IMO its a much easier sell to the compositor people when they know a useful piece of software is actively trying to target those APIs.
That being said, I sure hope the situation improves. The state of accessibility on wayland is pitiful.
I don’t know how you add a call to an API that doesn’t exist
as a solo dev, I honestly feel for him. It’s just too much work to actually even think about when you have other environments to support
I don’t know how you add a call to an API that doesn’t exist
As far as I know, these messages are passed to the portal using dbus. So the app could just fire the correct dbus message with correct parameters (you can find the correct values in the Wayland specs). The portal, used by the compositor, then takes the message and runs the requested action or returns something like not implemented or unknown method.
The trickier part is testing when no portal supports the API calls.
But yeah, interoperability between systems can be a pain in the ass.
The process is analogous to sending an http request. Your app sets up the httpclient and points it to a URI and after sending the request you get back either the content with 200 status or 404. If you get 404 you can show the user a message like “this website doesnt support feature xyz”



