1

I have a dual monitor setup and I rotate one of my screens to the left. It is currently working as expected, and is a simple configuration.

enter image description here

The saved /etc/X11/xorg.conf looks like:

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 440.82

Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" 0 0 InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" Option "Xinerama" "0" EndSection

Section "Files" EndSection

Section "Module" Load "dbe" Load "extmod" Load "type1" Load "freetype" Load "glx" EndSection

Section "InputDevice"

# generated from default
Identifier     "Mouse0"
Driver         "mouse"
Option         "Protocol" "auto"
Option         "Device" "/dev/psaux"
Option         "Emulate3Buttons" "no"
Option         "ZAxisMapping" "4 5"

EndSection

Section "InputDevice"

# generated from default
Identifier     "Keyboard0"
Driver         "kbd"

EndSection

Section "Monitor"

# HorizSync source: edid, VertRefresh source: edid
Identifier     "Monitor0"
VendorName     "Unknown"
ModelName      "Philips PHL 241B8Q"
HorizSync       85.0 - 85.0
VertRefresh     48.0 - 76.0
Option         "DPMS"

EndSection

Section "Device" Identifier "Device0" Driver "nvidia" VendorName "NVIDIA Corporation" BoardName "GeForce GTX 1060 3GB" EndSection

Section "Screen"

Removed Option "nvidiaXineramaInfoOrder" "DFP-5"

Removed Option "nvidiaXineramaInfoOrder" "DFP-3"

Removed Option "metamodes" "DP-2: nvidia-auto-select +1080+420 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}, DP-0: nvidia-auto-select +0+0 {rotation=left, ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"

Identifier     "Screen0"
Device         "Device0"
Monitor        "Monitor0"
DefaultDepth    24
Option         "Stereo" "0"
Option         "nvidiaXineramaInfoOrder" "DFP-5"
Option         "metamodes" "DP-0: nvidia-auto-select +0+0 {rotation=left, ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}, DP-2: nvidia-auto-select +1080+420 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"
Option         "SLI" "Off"
Option         "MultiGPU" "Off"
Option         "BaseMosaic" "off"
SubSection     "Display"
    Depth       24
EndSubSection

EndSection

Now when I turn the screens off, things get Ubuntu-y. When I turn them back on, the rotate left setting will be unapplied, and the screens will sometimes be in reversed order, i.e., adjusting settings for the screen on the left will change settings for the screen on the right, and the right screen will need to be dragged over so the screens swap places and then apply the rotate setting.

enter image description here

It's not the end of the world, but every time I turn my screens on I have to play this little guessing game with the Nvidia UI - rotate the screen, apply, oops that was one of Ubuntu's trick cases where I need to move the right screen over to be the left screen, drag right screen over to left, rotate left screen, save, finally working - all because the saved Xorg config doesn't load the config like it's meant to.

Been a Ubuntu desktop user for 5 years now but this stuff is honestly just embarrassing, the need to debug something as simple as a monitor configuration.

Lewis
  • 49

1 Answers1

1

I had the same issue and I managed to resolve it by manually editing my ~/.conf/monitors.xml file.

Apparently the Gnome settings (stored in monitors.xml) overrule the NVidia/X11 settings.

I had also tried to use the Gnome settings UI to fix my screen layout and that must have somehow generated a lot of weird virtual monitors in the monitors.xml file.

Lesson learned: Never use GUI for any settings.

Bort
  • 11
  • Welcome to Ask Ubuntu, and thank you for submitting an answer. It would be helpful if you could edit your answer and add more details on what should be edited in the ~/.conf/monitors.xml file. Adding more specifics will make your answer more likely to get up voted. – guttermonk Mar 07 '21 at 17:03