Multiseat-setup broken by 10-amdgpu-nvidia-drm-outputclass.conf

Today i found the SOURCE of the problem !
A few days ago 2 new files where introduced by an update. These files are in /usr/share/X11/xorg.conf.d :

 ls -la /usr/share/X11/xorg.conf.d/*.con*                                                                                                        
-rw-r--r-- 1 root root   92 19. Mai 2020  /usr/share/X11/xorg.conf.d/10-amdgpu.conf
-rw-r--r-- 1 root root  424 23. Apr 14:17 /usr/share/X11/xorg.conf.d/10-amdgpu-nvidia-drm-outputclass.conf
-rw-r--r-- 1 root root 1099 16. Mai 2020  /usr/share/X11/xorg.conf.d/10-evdev.conf
-rw-r--r-- 1 root root  426 23. Apr 14:17 /usr/share/X11/xorg.conf.d/10-intel-nvidia-drm-outputclass.conf
-rw-r--r-- 1 root root 1350 13. Apr 18:11 /usr/share/X11/xorg.conf.d/10-quirks.conf
-rw-r--r-- 1 root root   92 16. Mai 2020  /usr/share/X11/xorg.conf.d/10-radeon.conf
-rw-r--r-- 1 root root 1429 16. Apr 07:55 /usr/share/X11/xorg.conf.d/40-libinput.conf

the new files are 10-amdgpu-nvidia-drm-outputclass.conf and 10-intel-nvidia-drm-outputclass.conf

I did rename these 2 files to .conx instead of .conf
Now if I reboot, lightdm works, and both seats do work again.

What happened ?
The error-message of Xorg.0.log says:

[ 10.495] (EE) No ServerLayout section called "seat0"

When there is no config-file using any Section “ServerLayout” the automatic seat-management works with the seats defined within loginctl . How to multiseat in Manjaro

But when there is a .conf - file with an Section “ServerLayout”, xorg will use only these layouts. In the file 10-amdgpu-nvidia-drm-outputclass.conf is a section defining “layout”.

So this prevents xorg to use the layout “seat0”. No ServerLayout section called "seat0"

cat /usr/share/X11/xorg.conf.d/10-amdgpu-nvidia-drm-outputclass.conx                                                                       [130]
Section "ServerLayout"
    Identifier "layout"
    Option "AllowNVIDIAGPUScreens"
EndSection

Section "OutputClass"
    Identifier "AMDgpu"
    MatchDriver "amdgpu"
    Driver "amdgpu"
EndSection

Section "OutputClass"
    Identifier "nvidia"
    MatchDriver "nvidia-drm"
    Driver "nvidia"
    Option "AllowEmptyInitialConfiguration"
    ModulePath "/usr/lib/nvidia/xorg"
    ModulePath "/usr/lib/xorg/modules"
EndSection

by renaming the 2 config-files to .conx, xorg will ignore them and will automagicaly use seat0 and seat1 defined by loginctl.
All you have to do:

sudo mv /usr/share/X11/xorg.conf.d/10-amdgpu-nvidia-drm-outputclass.conf /usr/share/X11/xorg.conf.d/10-amdgpu-nvidia-drm-outputclass.conx       
sudo mv /usr/share/X11/xorg.conf.d/10-intel-nvidia-drm-outputclass.conf /usr/share/X11/xorg.conf.d/10-intel-nvidia-drm-outputclass.conx

P.S. renaming these files does help temporarily. But with the next update they may reapear. Better seems to : 2nd try

3 Likes