Setting up a basic multiseat setup on Suse is extraordinarily easy, the steps are this: 1) Install LightDM, 2) make it your default display manager, 3) Reboot and assign your devices, 4) Reboot once more to multiple usable desktops.
Now, multiseat does have a lot of moving pieces, but it is not nearly as complicated as a page such as this makes it seem like it has to be: https://wiki.archlinux.org/index.php/xorg_multiseat (That is good information, and it will benefit you to read it. However, you do not have to know all that stuff.) If you have never set up a multiseat computer before, I would encourage you to do so either on a spare computer or a spare hard drive separated from your main install. I’ll give information in more detail for each step.
Before you begin, there are hardware requirements for multiseat. Currently, multiseat systems are attached to your videocard address. So if you want 2, 3, or 4 people (or more!) using your computer simultaneously, you need that many video cards and video card slots. Additionally, extra keyboards and mice are necessary. It is not uncommon for motherboards these days to have multiple PCI-E slots, and I have had very good luck setting up multiseat with Radeon cards from several different generations.
**1) Installing LightDM and 2) making it your default display manager
**The default display manager for KDE5, SDDM, only has experimental support for multiseat and some features are not fully developed. This is why it is necessary to switch to lightDM. There are easy to follow instructions for switching the display manager here: https://en.opensuse.org/SDB:Change_Display_Manager
LightDM offers configuration options in its conf file, but this is not required. How LightDM comes from Suse’ servers as installed is sufficient and will automatically work.
**3) Assigning devices
**For the purpose of assigning devices to a seat, you need to start with your video card. The video card is what actuates the seat. In order to get a full list of the devices recognized by the operating system, issue the following command at a terminal:loginctl seat-status seat0
When you are creating your first seat, seat1, I would recommend only assigning a video card and then rebooting. No other devices are required to get multiseat to work. A video card device address will look something like this in your terminal results:
/sys/devices/pci0000:00/0000:00:02.0/0000:01:00.0/drm/card0
/sys/devices/pci0000:00/0000:00:04.0/0000:02:00.0/drm/card1
/sys/devices/pci0000:00/0000:00:03.0/0000:03:00.0/drm/card2
Card 0 should stay with the default seat0. Once you have identified your card 1, copy the full code: /sys/devices/pci0000:00/0000:00:04.0/0000:02:00.0/drm/card1 and then issue the following command:
loginctl attach seat1 /sys/devices/pci0000:00/0000:00:04.0/0000:02:00.0/drm/card1
This command is what will create seat1, and when giving it a valid video card address the seat will be created. A prompt will appear which will require the root password.
Now, you can reboot. Just so it is stated: please make sure at least one of your monitors is hooked up to your second video card.
4) Reboot once more to multiple usable desktops.
When rebooting is complete, you should have two login screens. You may not have assigned any keyboards and mice, so now is when that should be done. When creating a seat for the first time for testing purposes, a keyboard and mouse is not required. But once you have two login screens, you can assign your USB devices in real-time and they will start working on the second seat immediately. (at least, that is how it is working for me. Only the video card requires a hard reboot) It may be wise for you to reboot after assigning your USB devices just to be safe.
USB devices can be assigned individually, or they can be assigned by port. Loginctl gives a sort of tree view as follows:├ /sys/devices/pci0000:00/0000:00:12.0/usb3
│ (usb:usb3)
│ ├ /sys/devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.2/0003:046D:C52B.0006/input/input5
│ │ (input:input5) “Logitech Unifying Device. Wireless PID:101b”
│ └ /sys/devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.2/0003:046D:C52B.0006/input/input6
│ (input:input6) “Logitech Unifying Device. Wireless PID:200a”
What this means is you have two options. You can assign this logitech device by itself as follows:
loginctl attach seat1 /sys/devices/pci0000:00/0000:00:12.0/usb3/3-1/3-1:1.2/0003:046D:C52B.0006/input/input5
Doing this, you have assigned that specific device to the seat. Your other option is this:loginctl attach seat1 /sys/devices/pci0000:00/0000:00:12.0/usb3
This assigns the USB port, so that anything plugged into those specific ports will belong to user 2 using the second seat. This gives you a little more administrative control over how your multiseat setup will function.
**That’s it! ** But do not forget to create other users. If you have user login 3 already logged in and you attempt to log in again using user login 3, the second log in will fail.(it will not kick the first login off)
Now, again, I want to stress that you should do this on a test system. That may just be a drive, a partition, or it could be a secondary computer. That is up to you. But multiseat is a great feature of Linux based distros and not enough people know fully how to leverage it. And yes, once you have lightDM installed you can have your users using different desktops. That is, user on seat 0 may decide to use KDE but user on seat 1 may choose XFCE or something else. I wrote this with a second seat in mind, and for first time multiseaters, I would recommend only trying to do a second seat on your first try. But these instructions will work for your third, fourth, etc seat just the same.
If I can answer any questions or offer help, feel free to ask.