I am trying to run multiple simultaneous instances of Sway running on different monitors (with different GPUs). I made two different config files disabling all but one monitor and disabling all but one keyboard and mouse.
I made an sh file to run both instances (I also added a sleep in the middle).
It didn't work (only one ran); my guess is that I would have to disable the other GPU on each instance but this is not something that I found possible in the manual pages.
Is this actually at all doable in sway/wlroots?
This is called multiseat and is possible with systemd/logind. This is referring to a different multiseat than the wayland one, so be careful of the terminology. It'll work with more than just sway; anything that uses logind properly should work.
loginctl command, assign your GPU and input devices you want to be on the other seat.loginctl seat-status seat0.loginctl attach seat1 /sys/path/to/device.More info:
https://www.freedesktop.org/wiki/Software/systemd/multiseat/
https://github.com/swaywm/wlroots/pull/1063
Most helpful comment
This is called multiseat and is possible with systemd/logind. This is referring to a different multiseat than the wayland one, so be careful of the terminology. It'll work with more than just sway; anything that uses logind properly should work.
loginctlcommand, assign your GPU and input devices you want to be on the other seat.You can get all of the devices associated with the default seat (seat0) with
loginctl seat-status seat0.Then identify which device is your GPU and new input devices, and attach them like
loginctl attach seat1 /sys/path/to/device.More info:
https://www.freedesktop.org/wiki/Software/systemd/multiseat/
https://github.com/swaywm/wlroots/pull/1063