4 ms·
I agree, the OP title is a bit misleading. I use dbus every day on my laptop and it works totally fine - I don't notice its existence. I'm all for improvements
by TD-Linux 12y ago
I agree, the OP title is a bit misleading.
I use dbus every day on my laptop and it works totally fine - I don't notice its existence. I'm all for improvements, but I'm quite patient and quite happy to wait this one out.
- reidrac 12y agoI made a silly desktop app some time ago and it used DBUS to get notifications from NetworkMonitor when the system went online/offline. Nothing too fancy, very few lines of code. When I was implementing that, I managed to get several segfaults from my Python code. All together seemed a little bit fragile to me :( That was 5 years ago, things are probably better now (to be fair, I don't know what was causing the crashes; NM was 0.8 back then), but when I read Linus comments I can help to think he's probably right. This is an anecdote and all, but my point is that until I had to use it... DBUS was pretty good and was working fine :)
- belorn 12y agoWere you using threads? Python really should not crash, but combine it with library imports implemented in c and threads, and you get really subtle race conditions which result in segfaults. I have myself been force to debug why Python segfaulted, and it was a standard library call which internally used threading, and that caused a conflict with a c library that was not threading safe.
- reidrac 11y agoSorry, it wasn't Python. It was a system component that crashed as consequence of my Python code using DBUS.
- CHY872 12y agoTwo years ago I had to use DBus to connect to a Bluetooth device from Java. In the end, after a few minutes of good work the connection between the adapter and the peripheral would timeout (or someone would go out of range), the whole thing would stall and we'd never get another message from BlueZ, be able to connect to any device ever again. It was without doubt the worst development experience I ever had. Worse, you couldn't reload the dbus library and start over because then Java would scream and crash. So we had to restart the JVM, and BlueZ, etc. I'm sure I was doing something wrong, but if I can't get it to work properly in a matter of weeks then it's not just my fault.
- outworlder 11y ago> When I was implementing that, I managed to get several segfaults from my Python code Well, it wasn't really DBus' fault then, was it?
- reidrac 11y agoI didn't mean to say my Python code was the one crashing with a segfault. Apologies if my comment wasn't clear enough. I just did a search in my bugzilla account at Red Hat (Fedora distro) but I couldn't find a report for that specific crash. The closest I can find is a report on a crash of notification-daemon (could be related though, as it uses DBUS to advertise a service). I'm surprised I didn't file a bug report, but there you are.
- morlockhq 11y agoI'm not a software engineer or gifted hacker. Given that, I was able to use dbus to come up with a quick solution for a department feature in an afternoon using Pidgin's libpurple dbus bindings through purple-remote to create a presence tracker and simple announcement bot with bash. A little digging into Pidgin's DBUS Howto gave me all the documentation that I needed. It just took a lunch hour to have something functional up and running without any real in depth programming knowledge required or needed. In an afternoon, I'd hacked up an RSS feed that showed everyone in the department's current presence as reported by their IM status and that feed could then be consumed by the required apps. I don't know about dbus' other merits or flaws, but it did help me solve a specific problem quickly. This was a dead simple use case though. At the time, I assumed that people more knowledgeable than me could do a hell of a lot more with it.
- dingaling 12y ago> I use dbus every day on my laptop and it works totally fine My laptop appears to run fine despite dbus, if the hundreds of daily 'Failed to connect to socket' messages are any indication.
- anc84 12y agoMaybe your laptop would be much faster if dbus was faster.