One tweak was needed was to specify the library after the compilation unit, to avoid an undefined reference to sd_get_seats:
$ gcc -Wall -std=gnu99 -DHOST_X_SERVER=\"/usr/bin/X\" -DNESTED_X_SERVER=\"/usr/bin/Xephyr\" -DDEFAULT_DISPLAY=\":90\" -DDEFAULT_XKBLAYOUT=\"br\" multi-seat-xephyr.c -lsystemd-login -o multi-seat-xephyr It looks like the example given makes more sense starting from 'seat0' rather than 'seat-1'. Anyway, I realised the wrapper script passes keyboard and mouse options to Xephyr. As Xephyr doesn't support udev tags, would it make sense to specify the touchscreen via a custom xorg.conf? Thanks, Daniel On 3 March 2014 23:54, Daniel J Blueman <[email protected]> wrote: > On 3 March 2014 23:26, Laércio de Sousa <[email protected]> wrote: >> Em 03/03/2014 12:19, "Daniel J Blueman" <[email protected]> escreveu: >>> On 3 March 2014 22:52, Laércio de Sousa <[email protected]> wrote: >>> > Em 02/03/2014 17:38, "Laércio de Sousa" <[email protected]> escreveu: >>> >> Em 02/03/2014 16:22, "Daniel J Blueman" <[email protected]> escreveu: >>> >> > Using Ubuntu 13.10 i686 and the superb work in the ubuntu-multiseat >>> >> > PPA, I run a configured X server on a dual-output Intel GPU (started >>> >> > from a modified lightdm upstart script [1]): >>> >> > # /usr/bin/Xorg :0 -nolisten tcp vt7 >>> >> > >>> >> > then start configured [2] lightdm, which in turn runs the Xephyr >>> >> > wrapper [3]. Both user sessions start; so far so good. >>> >> > >>> >> > Since I need to also attach touchscreen and sound to the screens, I >>> >> > have to use udev tags, so I assign a mouse the 'seat1' tag [4,5] and >>> >> > it isn't listed in 'loginctl seat-status seat0' as expected, but it >>> >> > doesn't move the cursor on the second head (or first). >>> >> > >>> >> > loginctl shows only a single seat, despite both Xephyr servers being >>> >> > passed '-seat seat0' and '-seat1' (which isn't listed in 'Xephyr >>> >> > -help): >>> >> > $ loginctl list-seats >>> >> > SEAT >>> >> > seat0 >>> >> > >>> >> > 1 seats listed. >>> >> > >>> >> > Any idea what I'm missing? >>> [] >>> >> In order to create a new seat in logind, you need to have at least one >>> >> device udev-tagged as master-of-seat attached to it. Try to write a >>> >> udev >>> >> rule that tags one of your seat1 devices as master-of-seat. >>> > >>> > Moreover, you also need a Xephyr built with configure option >>> > --enable-kdrive-evdev (like the one available in Multiseat PPA). Then >>> > you >>> > need to pass explictly the devpaths of your input devices to Xephyr with >>> > options -keybd and -mouse. Xephyr doesn't recognize option -seat >>> > directly. >>> >>> Yes, that seems to be what I'm finding. The updated udev rules [1] >>> work nice [2], but the mouse from the Xephyr seat0 can move onto the >>> seat1 screen, despite: > [] >>> For the system I'll be setting up, there will be three touchscreen >>> monitors with sound via HDMI on a triple-output Intel GPU, so I'm out >>> of luck with the -mouse and -keybd options. >>> >>> Maybe you or Richard know if anyone has had any luck with eg MDM or >>> other solutions (Wayland?), rather than Xephyr? >> >> Well... I'm working on a binary wrapper for Xephyr (see >> http://launchpad.net/multi-seat-xephyr) that does almost everything you >> want. I've used it quite well in openSUSE, but I didn't package it for >> Ubuntu yet. Maybe I can build the Ubuntu package this week. > > Wow, that's a good plan. I'll take a look into this, and as a backup, > see if I can get Weston (Wayland) running nicely, as it'll have much > less overhead. > > Thanks again, > Daniel > -- > Daniel J Blueman -- Daniel J Blueman -- Mailing list: https://launchpad.net/~ubuntu-multiseat Post to : [email protected] Unsubscribe : https://launchpad.net/~ubuntu-multiseat More help : https://help.launchpad.net/ListHelp

