D-BUS: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
 
(3 intermediate revisions by 3 users not shown)
Line 1: Line 1:
D-BUS is a message bus system, rather like Appletalk and DCOM, that allows applications to send messages to one another. [[Sugar]] uses D-BUS extensively, and requires that all apps interact with it via D-BUS.
[http://en.wikipedia.org/wiki/D-BUS D-BUS] is a message bus system, rather like AppleScript and DCOM, that allows applications to send messages to one another. [[Sugar]] uses D-BUS extensively, and requires that all apps interact with it via D-BUS.


The [[GCompris]] activity is a native (C language) app which uses glib to implement D-BUS ability. See [http://svn.gnome.org/viewcvs/gcompris/branches/gcomprixo/src/gcompris/dbus.c?revision=3041&view=markup dbus.c] for the code.
The [[GCompris]] activity is a native (C language) app which uses glib to implement D-BUS ability. See [http://svn.gnome.org/viewcvs/gcompris/branches/gcomprixo/src/gcompris/dbus.c?revision=3041&view=markup dbus.c] for the code.
Line 19: Line 19:
* Object Type Registry Service -- MIME-type registry service
* Object Type Registry Service -- MIME-type registry service
* Sugar Console Service
* Sugar Console Service

D-BUS services can also be used from Squeak EToys: http://etoys-squeak-and-sugar.blogspot.com/2010/01/dbus-and-etoys-dbus-interface.html

Look at the code on the D-BUS SqueakSource repository: http://squeaksource.com/dbus.html


==References==
==References==

Latest revision as of 04:14, 7 July 2010

D-BUS is a message bus system, rather like AppleScript and DCOM, that allows applications to send messages to one another. Sugar uses D-BUS extensively, and requires that all apps interact with it via D-BUS.

The GCompris activity is a native (C language) app which uses glib to implement D-BUS ability. See dbus.c for the code.

D-BUS Services on the OLPC-XO

The python code for the following services is in share/<service> , while much of the code that uses them is in site-packages/sugar or in share/activities .

  • NetworkManager -- Standard Linux desktop component that provides a D-BUS API for controlling network connectivity
  • Activity DBus API -- Describes the API an activity must implement on D-BUS in order to interact with the Sugar desktop
    • Activity Service (Python implementation of the Activity DBus API)
    • Activity Factory Service (Python implementation of the Activity-launching Factory DBus API)
  • Presence Service DBus API -- friend discovery and collaboration primitives, including a description of the Telepathy API
    • Telepathy Connection Manager
    • Telepathy StreamEngine
  • Data Store Service (Journal) -- the core data-storage operation of the laptop
  • Clipboard Service -- manages cross-activity sharing of data and files
  • Hardware Manager Service -- provides access to the OLPC-specific hardware on the laptop
  • Activity Registry Service -- registry of installed activity bundles on the laptop
  • Object Type Registry Service -- MIME-type registry service
  • Sugar Console Service

D-BUS services can also be used from Squeak EToys: http://etoys-squeak-and-sugar.blogspot.com/2010/01/dbus-and-etoys-dbus-interface.html

Look at the code on the D-BUS SqueakSource repository: http://squeaksource.com/dbus.html

References

D-BUS website.