I’ve been working a bit more on DBus inspector. Python is so much fun and PyGTK just rocks. I love you, guys. :-)

Ok, not everything is working right yet. I tried making the app multithreaded, and putting the DBus handling into a second thread, but failed at that so far. Getting threading work right with Python and GTK and DBus is just too much, I guess. :-)

Here’s a screenshot: DBus inspector screenshot

You can grab the code temporarily from this location.

It’s rather crude, undocumented (fortunately Python code is quite easy to read) and still lacks some interesting parts (e.g. icons to differentiate between services, interfaces, methods, signals, … and of course actually displaying method signatures or even allowing you to invoke them…) - but it’s a start.

Note that DBus using applications support introspection at varying levels - NetworkManager doesn’t have a useful introspection description, and gaim goes the other way by apparently exposing every single method during DBus, so you can do the craziest stuff (but it’s hard to find the method you are actually looking for).