Re: Multi-platform dbus (was: Ige-mac-integration: New version with Cocoa interface available)



On May 18, 2010, at 12:33 PM, Paul Davis wrote:

> 
> 
> On Tue, May 18, 2010 at 3:21 PM, Matthias Clasen <matthias clasen gmail com> wrote:
> On Tue, May 18, 2010 at 3:15 PM, John Ralls <jralls ceridwen us> wrote:
> 
> > (It would be useful to have a (g)dbus-quartz that uses OSX's facilities instead of dbus-daemon, for example; that would allow the Gtk application to participate more in the OSX ecosystem. The same is probably also true for MSWin. But that's a separate discussion.)
> 
> its a separate discussion, certainly. but i'd also note that i think its pretty misguided to seek to "unify" things there. DBus is not just an IPC API, its a system-level *concept* with lots of semantics. applications that use DBus (whether via gdbus or not) are not just out to "use whatever the OS provides" - they get a very specific set of semantics. if they really, really need this for their apps to function, DBus is available for most platforms. 
> 
> put another way, gdbus is NOT a wrapper around "system IPC APIs". its a wrapper around DBus. its really entirely unrelated to GApplication or GtkApplication except that on linux, a lot of the functionality that seems related to what these objects seem to be about is implemented using DBus (at least when FD.org is involved).

Sure. But dbus provides services which are provided by notifications and AppleEvents on OSX. If a supposedly cross-platform  application supports only the dbus way, it turns out to be pretty autistic on OSX. I don't think that it's all that common for OSX users (aside from the few Fink and MacPorts users who are trying to replicate an entire Linux environement) to run more than one or two dbus-using apps, and they aren't able to communicate with other OSX application or OSX itself unless those channels are separately implemented.

So maybe g_dbus isn't the right place for the abstraction layer; it could be one of the implementation layers. 

Regards,
John Ralls



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]