Announcing ConsoleKit

William Jon McCann mccann at jhu.edu
Thu Jan 18 12:30:17 PST 2007


Hi Fabian,

On 1/16/07, Fabian Steiner <lists at fabis-site.net> wrote:
> I am taking care of about 15 multiseat desktop computers (every computer
> has four screens, keyboards, mice) in our school at the moment and so
> far everything works quite well except the fact that we lack a
> possibility to assign proper device permissions to removeable devices
> (such as USB sticks, cameras, etc.). Up to now this often results in a
> race condition: The first user who mounts the device is the owner of it
> although it doesn't belong to them at all.
>
> Therefore we are really content about hearing your work on ConsoleKit
> progressing. Unfortunately, we still have some questions left about how
> it is expected to work in future:
>
> On multiseat systems multiple users can be active at the same time.
> Where and how do you configure that the
> devices that are plugged into a particular keyboard hub belong to the
> user who is active at :0/:1/:2/:3? Are there any proposals yet?
>
> Cheers,
> Fabian
>
> P.s. This [1] old discussion might also be of interest in that case.
>
> [1] http://thread.gmane.org/gmane.comp.freedesktop.hal/6124/focus=6124

I haven't seen David's work on the new PolicyKit and HAL with
ConsoleKit so I'm not sure about what is current.  But the last time
we discussed it we were going to focus on the fast-user-switching case
first and then get to the multi-seat case.

Your case seems very typical and your input and will be very helpful
in fleshing this out.

So, in ConsoleKit terminology the question you posed above is:
"Where and how are Devices associated with a Seat?"

The user, session, display and particular heirarchy of devices get
factored out because:

a) A Seat is a container of sessions that can be associated with (an
arbitrary set of) hardware
b) A Session has access to the hardware of the Seat when it is Active
c) The DISPLAY is not a primary key for the session but simply
metadata associated with it

Another question we need to answer is:
"Where and how are Sessions associated with a Seat?"

At the moment, all locally attached sessions (ie. not XDMCP) are
assigned to Seat1.  So, we haven't really tried to answer this yet.

Jon


More information about the hal mailing list