So, for context, I have an HDMI dummy plug that is disabled most of the time, but enabled through command-line to use as a virtual display for game streaming with Sunshine.
In GNOME settings, the display is disabled, and that works just fine. I can enable/disable it at will whenever I want to stream games using the new gdctl
utility added in GNOME 48.
I want this “monitor” to be disabled in GDM as well since it keeps trying to use the dummy plug as the default display and I can’t see any of the UI elements and have to type my password in blindly. I’ve copied over my monitor config from /home/user/.config/monitors.xml
to /var/lib/gdm/.config/monitors.xml
as per the Arch Wiki’s recommendations, but when I log out/reboot, nothing changes on GDM. It still tries to show the password entry UI on the dummy plug and my actual display just shows a gray screen.
I know the configs are different for X11 and wayland, but both GDM and GNOME are running under wayland, so that shouldn’t be the issue.
Any help would be appreciated.
I use Arch btw.
When you copy over your monitor config, are you correcting the ownership/permissions?
The little scriptlet I made to combat a previous nvidia/wayland multi-monitor headache boils down to:
sudo cp $HOME/.config/monitors.xml /var/lib/gdm/.config/ sudo chown gdm:gdm /var/lib/gdm/.config/monitors.xml
Maybe double check if GDM is ignoring wayland as well, I’ve definitely had that happen in the past too.
Just checked the ownership of the monitor config, it was
gdm:root
, so I changed the ownership togdm:gdm
and rebooted. Still facing the same issue.Didn’t see any error messages in the logs about not being able to load wayland, but just to confirm, I ran
loginctl show-session {gdm session id} -p Type
which returnsType=wayland
, so it’s definitely running under wayland. I have an AMD GPU though so I wouldn’t expect there to be any problems there.Not seeing anything else weird in the logs that are jumping out as strange to me either, so a bit at a loss here. Any other suggestions?
Yeah, seems like it should just be working…
You’ve probably already got this covered, but when you created your user
monitors.xml
config, did you have the dummy plug connected and disabled?Maybe the config:
- has it included as a monitor and enabled as part of the screen layout
- or possibly doesn’t include it at all, and then GDM just assumes it can/should use it as a new option?
Yes. Here’s the contents I currently have in
/var/lib/gdm/.config/monitors.xml
:<monitors version="2"> <configuration> <layoutmode>physical</layoutmode> <logicalmonitor> <x>0</x> <y>0</y> <scale>1</scale> <primary>yes</primary> <monitor> <monitorspec> <connector>DP-1</connector> <vendor>SAM</vendor> <product>Odyssey G93SC</product> <serial>HNTW700164</serial> </monitorspec> <mode> <width>5120</width> <height>1440</height> <rate>239.997</rate> </mode> <colormode>bt2100</colormode> </monitor> </logicalmonitor> <disabled> <monitorspec> <connector>HDMI-1</connector> <vendor>FUN</vendor> <product>Evanlak8K V2</product> <serial>0x00006410</serial> </monitorspec> </disabled> </configuration> </monitors>
The disabled dummy plug is the “Evanlak8K V2” device while my functional monitor is my Samsung Odyssey OLED G9. This config is the same as the one currently running on my GNOME desktop config, but in GDM still defaults to the enabled dummy plug, even with the fixed ownership.
At this point, do you think I should issue a report on GDM’s repository? Maybe the devs there would have more insight
Does this use any experimental options you enabled in your dconf?
Edit: Kontext: https://gitlab.gnome.org/GNOME/gdm/-/issues/224#note_2271241
My monitors.xml has two
<configuration>
blocks, with the only real difference being that one has<layoutmode>physical</layoutmode>
and the second has<layoutmode>logical</layoutmode>
. I don’t really think that’d be the issue here though, because if the dummy plug is listed as disabled it shouldn’t be trying to use it anyway…?I think you’re right in reporting it to the GDM repo, at a minimum someone there will know where to point you towards figuring this out. Maybe the GNOME Mutter repo might be a related stop for this too, seeing that’s the part generating the monitors.xml…
The things that are supposed to be simple are always the bits that suck the most!
Very well said. Thank you very much for your help. I wouldn’t have known to check the ownership issues or if GDM were properly running Wayland were it not for your help. I’ll reach out to the GNOME devs on the relevant repositories and see if they might be able to point me in the right direction. Thank you for your time and expertise.