> 1. [...] The common solution, found in proprietary solutions like
> Userful Multiseat and Windows Multipoint Server, to do the right
> seat assignment for input devices is an interface of kind
>
> "Please press F<x> key in the keyboard in front of this display",
>
> where <x> is 1 for the first seat, 2 for the second seat, etc. If
> the keyboard is connected to a hub, all other devices connected to
> the same hub are automatically assigned to that seat. It would be
> nice if LightDM could implement such an interface for seat
> assignment.
That is way down the road, and should be the topic of another bug
report. This bug report should only be about adding *basic* multiseat
support. We must learn how to walk before we can run.
>
> 2. Before systemd-logind, all multiseat settings were DISPLAY-oriented,
That is incorrect; the ":0" in [Seat:0] has nothing to do with the
DISPLAY. The part after the colon is an arbitrary string. You can
use [Seat:Bob] if you want to; it makes no difference (other than for
logging, and only if you install the version of LightDM from my PPA
which has some logging improvements).
> but now IMHO it makes more sense to write these settings in a more
> "seat id"-oriented fashion. In lightdm.conf, instead of having
>
> [Seat:1]
> (...)
> xserver-seat=seat-1
> (...)
>
> I propose something like
>
> [seat-1]
> (...)
> xserver-display=:1
> (...)
Due to user switching, it does not make sense to have an
'xserver-display' setting for a seat -- a single LightDM seat might be
associated with multiple X displays.
> This approach is specially useful for autologin. It make more sense
> to assign autologin users to seat ids than DISPLAY values. I want,
> for example, user "bob" loggind automatically in seat-1, regardless
> of which is the value of DISPLAY environment variable on that seat.
That is currently possible with the version of LightDM in my PPA:
[Seat:foo]
xserver-seat=seat-1
autologin-user=bob
Note that it is important to keep the LightDM seat name and the X seat
name independent because LightDM isn't just for launching X.
> 1. [...] The common solution, found in proprietary solutions like
> Userful Multiseat and Windows Multipoint Server, to do the right
> seat assignment for input devices is an interface of kind
>
> "Please press F<x> key in the keyboard in front of this display",
>
> where <x> is 1 for the first seat, 2 for the second seat, etc. If
> the keyboard is connected to a hub, all other devices connected to
> the same hub are automatically assigned to that seat. It would be
> nice if LightDM could implement such an interface for seat
> assignment.
That is way down the road, and should be the topic of another bug
report. This bug report should only be about adding *basic* multiseat
support. We must learn how to walk before we can run.
>
> 2. Before systemd-logind, all multiseat settings were DISPLAY-oriented,
That is incorrect; the ":0" in [Seat:0] has nothing to do with the
DISPLAY. The part after the colon is an arbitrary string. You can
use [Seat:Bob] if you want to; it makes no difference (other than for
logging, and only if you install the version of LightDM from my PPA
which has some logging improvements).
> but now IMHO it makes more sense to write these settings in a more
> "seat id"-oriented fashion. In lightdm.conf, instead of having
>
> [Seat:1]
> (...)
> xserver-seat=seat-1
> (...)
>
> I propose something like
>
> [seat-1]
> (...)
> xserver-display=:1
> (...)
Due to user switching, it does not make sense to have an
'xserver-display' setting for a seat -- a single LightDM seat might be
associated with multiple X displays.
> This approach is specially useful for autologin. It make more sense
> to assign autologin users to seat ids than DISPLAY values. I want,
> for example, user "bob" loggind automatically in seat-1, regardless
> of which is the value of DISPLAY environment variable on that seat.
That is currently possible with the version of LightDM in my PPA:
[Seat:foo] seat=seat- 1 user=bob
xserver-
autologin-
Note that it is important to keep the LightDM seat name and the X seat
name independent because LightDM isn't just for launching X.