[systemd-devel] Someone working on gui for multiseat?

Colin Guthrie gmane at colin.guthr.ie
Mon Feb 11 01:39:04 PST 2013

'Twas brillig, and Stef Bon at 11/02/13 08:45 did gyre and gimble:
> 2013/2/8 Lennart Poettering <lennart at poettering.net>:
>> On Fri, 08.02.13 12:27, Stef Bon (stefbon at gmail.com) wrote:
>>>> No, udev contains the information which devices together make up a
>>>> seat. Hence, it is also udev where it is stored whether something is
>>>> used in "docking station" style or in "new seat" style.
>>> Can you please tell me where?
>> Bus calls such as AttachDevice() (and hence "loginctl attach-device"
>> too, which is just a wrapper around that bus call) drop in udev rules
>> files for this in /etc/udev/rules.d.
> Look this is getting us nowhere.
> You do not seem to understand my point.
> How does this rule look like? I'm asking because I cannot immagine one.

But calling those methods will generate and write the rule for you. In
order to imagine the rule, just make the call and see what results from it.

In actual fact, what does it really matter what the rule looks like. You
shouldn't really worry about the rules directly as the API should be
sufficient for you without caring what they look like.

> Earlier in this thread I've described the scenario of the first
> plugable device being a docking station, and every next plugable
> device an extra seat.
> This logic can't be done with "simple" rules like in udev. Plugable
> devices do not have unique id like partitions on block devices have,
> so the rules can only be very generic. Every plugable device is a seat
> or a docking station. There can't be something like I've described
> above, the first a docking station, and every next an extra seat.
> Isn't it?

I'm not sure Lennart agreed that the first one should be a docking
stating and every other an extra seat. I mean the devices are varied.
Some are marketed as docking stations, others as seats and it's likely
best to treat them like that regardless of how many you plug in. After
the initial defaults, then the udev rules should be able to override that.

I'm not sure about unique ids, but I would have thought that the
pluggable devices would have been easier to identify individually via
serial numbers that were actually different in each device precisely for
this reason. Failing that, the USB port used can be part of the
identifier I guess. Either way, there will be some way to nail things down.

> In my opinion the setting of the tags "seat" in udev is not the best
> place. They should be grouped in udev, and the group of devices is
> made an extra seat or docking station by GDM or any other service like
> logind, that I do not know.

I think udev is the right place personally. Having some separate system
to do this seems incorrect and counter intuitive to me.

> A gui/message on the screen of the admin that a group of devices is
> detected and asking to the user what to do is in my opinion also very
> nice.

Yup, that would be quite friendly generally speaking but may also be
quite obtrusive. I think doing what the device is marketed as by default
makes sense, but having a GUI to change that might be better. Too many
pop-ups is likely something to be careful of.



Colin Guthrie

Day Job:
  Tribalogic Limited http://www.tribalogic.net/
Open Source:
  Mageia Contributor http://www.mageia.org/
  PulseAudio Hacker http://www.pulseaudio.org/
  Trac Hacker http://trac.edgewall.org/

More information about the systemd-devel mailing list