Take Major Action on D-Bus in Linux Now
D-Bus: A Crucial Component Overlooked by Linux Users
Although often overlooked by everyday Linux users, D-Bus has been an integral part of Linux distributions for nearly two decades. Unlike inter-process communication through Unix sockets, which is faster, D-Bus facilitates communication in a bus-like manner for easier usage. It has replaced certain existing IPC buses in Gnome and KDE desktop environments, becoming the de facto standard.
Issues with D-Bus and Proposal for an Alternative
However, D-Bus is not without its faults, which has drawn criticism from experts like [Vaxry], who penned an article arguing that D-Bus should be phased out in favor of using hyprwire. A broader context is provided by [Brodie Robertson], whose analysis reveals intriguing details, such as Arch Linux developing its own D-Bus implementation rather than using the standardized version.
There are also security issues associated with D-Bus, such as CVE-2018-19358, which relates to the risks of using an unlocked keyring. Any application on this bus can read the contents, representing a serious vulnerability. The developers' response at Gnome has been typical, downplaying the risks as “it works as designed.”
Advantages of Hyprwire
Among the reasons why the proposed IPC bus, hyprwire/hyprtavern, would be superior include real security permissions, message validation, and solid documentation. After nearly two decades, the documentation for D-Bus is largely comprised of poorly documented code, with many files filled with TODOs and unfinished sketches.
Though [Vaxry] does not expect the hyprwire alternative to be adopted anytime soon, there is hope that it will bring significant improvements, preventing Linux from getting bogged down in D-Bus for another few decades.