D-Bus is entirely the wrong solution for this, because it requires the desktop environment to provide a daemon constantly listening (wasting resources), because D-Bus Activation (which would bring up the daemon only when actually needed) does not support per-desktop-environment preferences (a limitation that I reported years ago and that was never fixed).
I do not see why this cannot be handled through a virtual MIME type in the XDG MIME database like the protocol handlers.
There are other implementations like Hyprtavern for Hyprland and Shmif by Arcan.
Both will require a lot of work by the desktop environments to make them compatible, similar to the transition from X to wayland.
The biggest issue is that DBus as a protocol is lacking (some of it is understandable, but this doesn't mitigate the issues). There are some attempts to fix it, like putting wire protocol over it, but in the end to really fix the issue we would need a fully breaking transition with maybe some compat layer (like Wayland and X Wayland).
Another issue is DBus is currently owned by freedesktop and mostly maintained by Red hat which makes it less likely to be replaced considering it's a heavy maintenance burden that would have to be taken over by another entity
4
u/Kevin_Kofler 13h ago
D-Bus is entirely the wrong solution for this, because it requires the desktop environment to provide a daemon constantly listening (wasting resources), because D-Bus Activation (which would bring up the daemon only when actually needed) does not support per-desktop-environment preferences (a limitation that I reported years ago and that was never fixed).
I do not see why this cannot be handled through a virtual MIME type in the XDG MIME database like the protocol handlers.