[SOLUTION] Dual monitor setup borked by recent update to NVIDIA 450 driver (Ubuntu 20.04.01, X11, Viper III laptop)

PhilWillG

New member
I have a Viper III and two external monitors with NVIDIA 2060 GPU running Ubuntu 20.04.01 and Gnome (X11 windowing; in other words an out of the box Ubuntu install).

After an update yesterday to the 450 version of the Nvidia GPU drivers I had a few issues:

1) Nvidia drivers were not loaded
2) Monitor connected to Thunderbolt was not detected (well, it would not display anything anyway)
3) Gnome login screen was "displayed" on the monitor that was off so I could not see it.

Here's what I did to solve it (some Googling and some random stabs at stuff).

I am assuming a "vanilla", out of the box Ubuntu / Gnome setup, like mine, and a bash shell *and that you're OK with the command shell). There are lots of "reboots" in these steps and I might not have needed them all:

1) Find the "Additional Drivers" application (it should be in the installed applications in a standard Ubuntu/Gnome install) and choose the "NVIDIA driver metapackage" (I picked the 1st one in the list), it had reverted to Nouveau and the PC was using onboard graphics
2) Reboot (when logging in, the login prompt might be on the "off" screen but login "in the dark" - just press <space> and type your password, press enter)
3) sudo apt update
4) sudo apt dist-upgrade
5) Reboot (again login in the dark again)
6) Right click desktop and go to display settings (or get there some other way), set the monitors up properly how you like them in terms of layout and resolution
- the Thunderbolt one in my setup would got get max. resolution at this point so it set the refresh rate to 60Hz and rebooted (again) and then set the correct resolution and rebooted (again)
7) When your monitors are all tickety-boo for you, you need to copy your settings to the gdm "user"...
8) sudo cp ~/.config/monitors.xml ~gdm/.config/monitors.xml
- the destination file did not exist prior to this copy but if it had I would have saved a copy with something like cp ~gdm/.config/monitors.xml/ .
9) sudo chown gdm:gdm ~gdm/.config/monitors.xml
10) Reboot again - it was all fixed at this point.

Here are the commands again for you to copy/paste (remember, the fourth one might not work, don't worry if the file does not exist):

sudo apt update
sudo apt dist-upgrade
sudo cp ~/.config/monitors.xml ~gdm/.config/monitors.xml
cp ~gdm/.config/monitors.xml/ .
sudo chown gdm:gdm ~gdm/.config/monitors.xml


Note the tilde characters in these steps (this one: ~): the one before 'gdm' does not have a following slash: ~/path in bash means my home directory but ~gdm/path means the home directory of the user 'gdm'. 'gdm' is an "internal" user that is just the "Gnome Desktop Manager".

Kudos to this thread from elsewhere for the vital bit that I would not have worked out on my own.
 
Top