Please, check the permissions again with sudo.
And perhaps you should edit the file leaving only one <configuration> section.
It seems there’s a bug, I’m not sure if it is still relevant, but there’s a workaround as well.
My testing abilities are currently limited, so we need to wait for someone with dual-monitor setup.
I’ve managed to test the dual-monitor setup.
Everything is configured by default with no workarounds: Fedora 30, Gnome Shell, GDM, Wayland, Intel video.
First of all, I’ve been using a solution @vgaetera provided for quite a few Fedora versions on my desktop (not laptop) computer at work. I vouch for it, it works.
Secondly, I did some testing just now. In my case I edit ~gdm/.config/monitors.xml either by moving line <primary>yes</primary> to one monitor, then another, or by setting primary to yes for one monitor, and to no for another. I save the file, then just press [Ctrl-Alt-F1] to switch to gdm login screen – and I see the change right away. I don’t need to reboot, close session, etc. Then I switch back to my current workspace (for me it’s at [Ctrl-Alt-F2]), change the file again, switch to gdm to see the change applied.
Also – just to be safe – please check
cat /etc/gdm/custom.conf | grep Wayland
Is the line WaylandEnable=false commented (as it is by default) or not?
loginctl indicates that GDM session is terminated automatically in several seconds if you switch back to your own one, so there’s usually no need to terminate it manually to apply the settings.
I just tried again and it still doesn’t work. I don’t understand it as the after the login the menu bar is correctly displayed on the external monitor. I played a bit around with the primary setting in the ~gdm/.config/monitors.xml file but the behavior is always the same. the login screen is displayed on the notebook display. Might there be a setting overruling the monitors.xml file? such as some x configuration file or so?
By default there isn’t, as it works for me and @vgaetera at least. Also I found it as a proper solution several Fedora versions ago, and it worked for me ever since.
So basically it looks like gdm ignores monitors.xml file in your case. You can try to verifiy it by playing, for example, with scale settings in the file (changing scale works for me).
Is it a fresh F30 install or have you upgraded?
Do you, by any chance, use proprietary NVidia driver?
One other thought. You can try the following.
Uncomment #WaylandEnable=false in /etc/gdm/custom.conf – to force GDM to start in xorg, not wayland.
Login into “Gnome on Xorg” session.
Delete and recreate your monitors.xml, then copy it to ~gdm – as you did earlier.
I think (not sure) that under xorg you’ll have to reboot or at least logout to apply the new monitor.xml.
Basically, monitors.xml under for xorg and gdm is different (primarily “connector” fields would be different for the same monitors). If you generate your monitors.xml in a wayland session, it won’t apply to Xorg session and vice versa. Also there can be cases when gdm runs under Xorg though it’s configured to run under wayland.
So maybe (a) your gdm session runs under Xorg, and/or (b) monitors.xml will be applied correctly when you force gdm to run under Xorg. You’ll have additional info and will decide how to proceed from there.
Thank you I really appreciate your help on this issue. I dont understand why it doesnt work for me. I think your assumption regarding gdm ignoring my monitors.xml file is correct. When I change the file directly nothing happens after I logout and login again. Changing settings i.e. in the gnome-control-center display will change the content of the monitors.xml file. also within the desktop environment everything is correct. Its just that the login screen doesnt respect the settings. The F30 is not fresh. I installed F28 and upgraded since then. I dont think i have a properietary NVidia driver but I might be wrong. How can I check that?
Also I disabled Wayland used Xorg deleted and recreated the monitors.xml copied it to ~gdm but that didnt work as well.
So at least it seems to be consistently ignored under both Xorg and Wayland.
Then question regarding NVidia is null, moreover, if you had proprietary drivers you would’ve installed them manually ==> you would know you use them.
I have no more ideas. All the questions/bugs I could find regarding monitors.xml being ignored were either about Xorg ↔ Wayland confusion or about some settings in the file which gdm wouldn’t support (such as screen rotation, for example).
That’s totally as expected. Your own graphical settings (“within the desktop environment”) are stored in a configuration specific to your user account. Login screen runs under it’s own user (named gdm), so it has it’s own graphical settings stored under gdm’s account.
Yep, but these changes are again specific to your user account and doesn’t apply to other users including gdm user.
This is why you’ve had to manually copy monitors.xml to gdm’s home directory – so that settings you’ve configured for yourself could be applied for gdm (on the login screen).
They’re been ignored… the question is why – and sadly I don’t know what else to try to pinpoint this “why”.
One more question. I have no notebook to check, I have a desktop with two monitors.
On the login screen – is the second monitor actually on and displaying sonmething? It should have a grey background and you should be able to move your mouse pointer to it, and see your mouse pointer moving.
Ok ) then I have no idea how to debug this. Maybe someone more knowledgeable will chime in.
You can try to create a bugreport, maybe even you should. Problem is, even if it’s bug (and not some configs remained from F28, let’s say), it isn’t easily reproducible by other people (it works as intended for me and others), and as such would be hard for developers to act upon. But maybe they’ll tell you what information you need to provide and how to get it to make the bugreport more useful.
I finally figured it out. I had some experimental gnome feature running.
gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"
I’ve configured this when I set up the notebook and forgot about it. It turns out that when I disable this setting and apply the above steps one more time I get the login screen on my external monitor. This is kind of embarrassing. Anyways thanks a lot for your support.