System and Session Bus
John (J5) Palmieri
johnp at redhat.com
Wed Mar 22 13:32:56 PST 2006
On Mon, 2006-03-20 at 09:20 +0100, Oliver Frommel wrote:
> > - What is the point in having a separate session bus when
> > > a system bus is already running?
> > The system bus is there to provide coordination between system-wide services
> > that are independent
> > of individual users and their apps running, while the session bus is there
> > for "desktop communication" primarily,
> > that is, to provide coordination and communication between apps that an
> > individual user would run (as opposed
> > to apps/services that the "system would run").
> Ok, thank you so far.
> Can you provide any more actual use cases / examples for
> both busses? For instance if I want to make use of HAL
> I have to connect to the system bus, right?
> In order to have my application communicate with other
> programs running in my desktop session I would connect to
> my session bus. In practice that would mean most applications
> would need to connect to both busses.
> When I list the interface names of both busses on FC5 I get:
> [u'org.freedesktop.DBus', u':1.7', u':1.8',
> u'org.freedesktop.NetworkManagerInfo', u'org.freedesktop.Avahi',
> u':1.10', u'com.redhat.CupsDriverConfig', u':1.1',u':1.2',
> u'org.freedesktop.Hal', u':1.3', u':1.4', u':1.5',
> u'com.redhat.PrintDriverSelection', u':1.6']
> [u'org.freedesktop.DBus', u':1.3', u':1.0', u':1.1',
> So what is the purpose and difference of the printer services
> that are available on the respective busses.
The printing services are all a first pass implementing some of my ideas
about giving limited privileges to non-root users for things like
configuring hardware. It is being revamped currently but the idea is
the same. You have a service running as root that listens on the system
bus for configuration change requests (com.redhat.CupsDriverConfig).
You have a service running as the current console user that listens for
requests for input on the system bus (com.redhat.PrintDriverSelection).
com.redhat.PrinterManager is a bit different. It seems to be used to
pop up a password dialog most likely for authenticating to a secure
printer. Colin wrote that and I am not sure who uses the service.
John (J5) Palmieri <johnp at redhat.com>
More information about the dbus