Control Your Linux Desktop with D-Bus
Now that you know how to perform D-Bus calls and how to handle D-Bus signals, you can get started automating tasks on your desktop. If you are a Linux power user, D-Bus definitely should be in your vocabulary.
There is much more to D-Bus than I could show you in this article, but with qdbusviewer, qdbus, dbus-send and dbus-monitor, you can explore the possibilities yourself. If you want to create some more complex automation tasks with D-Bus, the Python and Ruby programming languages are a good fit. Consider the tutorials mentioned in the Resources, and then just let your imagination flow.
If you're a software developer, the part I didn't cover here is registering a service. This is the other side of the D-Bus story. If you register a service, you can provide objects to other applications via D-Bus.
D-Bus Bindings: www.freedesktop.org/wiki/Software/DBusBindings
Python D-Bus Tutorial: dbus.freedesktop.org/doc/dbus-python/doc/tutorial.html
Ruby D-Bus Tutorial: trac.luon.net/data/ruby-dbus/tutorial/index.html
Koen Vervloesem has been a freelance journalist since 2000, writing mainly about free and open-source software. He has Master's degrees in computer science and philosophy and cannot decide which is the most interesting domain. In the meantime, he likes to think “I code, therefore I am.”
- Bruce Nikkel's Practical Forensic Imaging (No Starch Press)
- Transitioning to Python 3
- Progress on Privacy
- Linux Journal December 2016
- Stepping into Science
- Radio Free Linux
- CORSAIR's Carbide Air 740
- FutureVault Inc.'s FutureVault
- The Tiny Internet Project, Part II
- A Better Raspberry Pi Streaming Solution