Hi,

I blogged a few days ago about the idea of an "online desktop." For our 
initial prototypes, we've taken a pretty ad hoc approach that tends to 
leak Mugshot specifics in a messy and undocumented way.

I brought up the idea of lots of different apps on the desktop taking 
advantage of online services and web sites, and we'd need clean APIs for 
that.

I don't want to write a bunch of hypothetical APIs in a vacuum but I 
picked two that we are already using and cleaned them up / genericized 
them to illustrate the idea:
   http://developer.mugshot.org/wiki/Online_Desktop_API

As background, the reason there are dbus APIs is that the Mugshot 
process is establishing a connection to mugshot.org via XMPP and sucking 
down a lot of information; this would be too expensive to do in every 
application. So the architecture is to have one or a few dedicated 
process(es) that go out to the Internet, and then other apps can get the 
info from these services. This also simplifies matters as we address 
offline operation and local caching, since the services can deal with it 
and not the individual apps.

The same basic concern would also apply to any other non-Mugshot service 
that we want to take advantage of, most likely.

Another aspect of this is that talking to most web service APIs is kind 
of a pain in the ass with weird authentication setups, XML parsing, and 
whatever. By adding the D-Bus layer we can make things a lot simpler for 
a typical app.

Comments and suggestions welcome.

Havoc
_______________________________________________
desktop-devel-list mailing list
desktop-devel-list@gnome.org
http://mail.gnome.org/mailman/listinfo/desktop-devel-list

Reply via email to