[arch-general] [OT] What is wrong with DBus anyway?

Arvid Picciani aep at exys.org
Fri Dec 4 13:49:58 EST 2009


Sounds like either this discussion is worth discussing again.
I'll try hard not to trip anyone...

Jan de Groot wrote:

> Really, you're just having a 100% anti-dbus attitude, but somehow you're
> fine with Bonobo. 
 > Maybe you didn't know, but Bonobo is worse than dbus.
 > It's a complicated slow framework with a lot of design mistakes.

I honestly had no idea what it is.
Looks like the ignorance goes both ways.

 >I think that is because emacs decided to be an operating system instead
 >of a text editor. Seriously, when I read the last release notes, I
 >though: "WTF does a text editor need dns-sd for?"

That' why fellow minimalists use vim, and call me a whiner. heh.
Yeah, there is worse people then me...
On a related note, i had now contact with lots of people of the OTHER 
side of the argument, ie the minimalists, off list.  Sorry to say, 
they're even more retarded, in that some even think glibc should be 
removed ( and replaced with _what_? ) or that they think dbus should be 
removed but then whine about their gui breaking (dude, whats your point?).
Additionaly i researched on some market players behind dbus. Besides the 
smell of money and taste of blood, there are some professional people 
behind this, who may have an agenda hostile to some people, but they get 
stuff done. And whoever gets stuff done, wins in FOSS world. It's that 
easy, and i have no objection to easy politics.

> Note that a lot of work has been duplicated in applications when they
> were ported to single-instance applications using dbus. 

Err. 10 lines of code? I don't even want to know how much code 
duplication dbus type system implies. But yeah depend on how you argue.

-  dbus vs some other non unified crap that does basicly the same:
clear that dbus wins, since code duplication can't be any useful.

-  dbus vs system v ipc
clear that system v wins, since it worked 20 years ago, still does
and is ridiculously simple.

Similar some people here have argued that compared to ubuntu, archlinux 
is pretty unix. Well compared to ubuntu, everything wins. That's not fair :P

> This has been
> fixed by using the libunique library. 

Which could use standard mechanics instead of something unrelated like 
dbus. But i'm glad they abstracted that into a library, so it can be 
replaced with 10 lines of system v ipc code. I should propably smack 
some upstream people on that one next fosdem.
Everyone doing their own dbus code and then realizing it breaks would 
have been a serious facepalm, considered that this is exactly what 
people trip on who remember corba. Seriously guys, can we PLEASE at 
least avoid doing the same mistakes again?  corba sucks, and anyone 
disagreeing please instantly press the kill button on your MUA, or just 
shoot yourself. University here is inventing an object rpc for java 
right now, and its just corba restricted to java. I'm so raging on 
peoples inability to see past mistakes.

At this moment anjuta, brasero,
> devhelp, gnome-bluetooth, gnome-control-center, gnome-disk-utility,
> gnome-power-manager, nautilus and totem use this library for their
> single-instance functionality. 

I'm totally fine with that. I never objected to gnome using d-bus. They 
have a valid reason to do so.  The problem is, they don't have a valid 
reason to force everyone else to use it.

> Gedit uses its own complicated way and
> should switch to this library also if possible.

I have used gedit, but that's my own damn fault. It's all the upstream 
who's been stupid.

 >You're talking crap. Examples of other IPC frameworks are bonobo and
 >dcop. Both launched the daemon on initial usage.

Well here is your part of the ignorance.
You're as much qualified to talk about unix, as i am to talk about 
gnome. This isn't going to lead anywhere unless you do your homework.

 >Dbus also launches a sesion bus when it's needed, but for the system
 >bus, things are different. You can't run a system bus as normal user,
 >unless you install dbus as setuid root and make some code to launch the
 >system bus on request.

I have to understand the obcurity behind all this. Why can't they use 
unix sessions? What's a system bus and why can't they use system v for 
that? But well, here's my part of the ignorance again. I don't even want 
to know what kind of ugly code they all ran before dbus. I've seen dcop 
and actually liked it. As long i could just kill it and things still 
worked (well kde tripped on it i think, but thats irrelevant to me)

 > xfce terminal has a patch in our svn for it.

I so raged on that. I mean, its a terminal...  thankfully there is urxvt.

 > I don't mind if xfce terminal can't open new
 > tabs or windows when dbus goes down, but please don't kill the
 > ones  that are open.

Well even then, how are you supposed to fix the problem when you can't 
open a terminal? I mean, if you're a kde user, you can't
- open a terminal, since the terminal needs dbus
- open the menu to open xterm, since the menu needs dbus
- kill X because they disabled that, and only us old timers enable it.

and if you're really unlucky you get dbus to crash hal to crash your gfx 
driver, so your only option left is the power button.
This is a valid reason why i call people windows users. I can't see
anyone capable of staying calm in such a situation unless they were
forced to use windows in life, and are just happy linux doesn't spit
fire. There were times where we laughed at DOS beeing a cripeled fake 
copy of an OS. And then they won. for some yet to discover reason.
Maybe they invoked godwin.

-- 
Arvid
Asgaard Technologies


More information about the arch-general mailing list