fontanon/udev-discover — pull request #10 by shatsky (2014-08-17 10:02:03+00:00)
Title: Basic multiseat configuration support

**This pull request is not meant for merge yet**
This is my first attempt to write code using gtk/glade/dbus; it should be first reviewed by somebody with a proper knowledge of these fields. There are likely some things that should be rewritten.
One question is about the .ui file: I have edited it using Glade 3.18, which changed the order of definitions, causing a big obscure diff. What is the right way to work with it?

This commit enables basic systemd/logind multiseat configuration (which is based on assigning seat udev tags to devices which are tagged as seat-attachable).
Requirements for testing:
* multiseat-capable PC: two sets of peripheral devices; monitors should be attached to 2 different video cards, at least one of them should be working under an open-source driver (maybe, a single card with multiple connectors can be sufficient with the latest kernel>3.15 which has a modeset-nodes feature, but I'm not sure)
* logind (in any systemd-enabled distro or latest Ubuntu)
* multiseat-capable display manager: GDM3

How to use:
* "Device"->"Attach to seat" submenu will be available for devices which are tagged as seat-attachable (e. g. videocard framebuffers, input devices, usb hubs)
* initially you will only have seat0; all seat-attachable devices are considered to be attached to it
* you can attach selected seat-attachable device to any of existing seats or a new one ("Device"->"Attach to seat"->"New seat...")
* you should attach at least one "master-of-seat" device (these are video card framebuffer devices) to a seat to make it visible on logind interface; after that, GDM should automatically start Xorg with a greeter on a display connected to that video card