Dual monitor setup problem with right-hand display as primary


I’m trying to figure out how to set up dual monitors under Leap with the right-hand monitor as the primary. If I set it up that way (using “gnomesu nvidia-settings”) and save the X configuration file, when I reboot, the righthand display is primary, but it’s set as the left-hand side of the screen - so that moving the cursor to the right edge of the right screen wraps around to the left edge of the left screen.

If I set my left-hand monitor as primary, then the mouse moves between the screens as it should. It seems obvious that the primary designation is overriding the screen layout.

Any suggestions on how to fix it?

Here’s the contents of /etc/X11/xorg.conf:

# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings:  version 375.39  (buildmeister@swio-display-x86-rhel47-09)  Tue Jan 31 20:46:35 PST 2017

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

Section "Files"

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

Section "InputDevice"

    # generated from data in "/etc/sysconfig/mouse"
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "IMPS/2"
    Option         "Device" "/dev/input/mice"
    Option         "Emulate3Buttons" "yes"
    Option         "ZAxisMapping" "4 5"

Section "InputDevice"

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

Section "Monitor"

    # HorizSync source: edid, VertRefresh source: edid
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "HAR HL24XD2"
    HorizSync       15.0 - 76.0
    VertRefresh     55.0 - 71.0
    Option         "DPMS"

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "GeForce GTX 770"
    BusID          "PCI:1:0:0"

Section "Screen"

# Removed Option "nvidiaXineramaInfoOrder" "DFP-1"
# Removed Option "metamodes" "DVI-D-0: nvidia-auto-select +1920+0, HDMI-0: nvidia-auto-select +0+0"
# Removed Option "metamodes" "HDMI-0: nvidia-auto-select +0+0, DVI-D-0: nvidia-auto-select +1920+0"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    Option         "Stereo" "0"
    Option         "nvidiaXineramaInfoOrder" "DFP-3"
    Option         "metamodes" "HDMI-0: nvidia-auto-select +0+0, DVI-D-0: nvidia-auto-select +1805+0"
    Option         "SLI" "Off"
    Option         "MultiGPU" "Off"
    Option         "BaseMosaic" "off"
    SubSection     "Display"
        Depth       24

For reference: HDMI-0 is the left-hand monitor and DVI-D-0 is the right-hand monitor. I want DVI-D-0 (DFP-3) to be primary, but doing so sets it to +0+0 and HDMI-0 (DFP-1) to +1805+0. The file above was generated with DVI-D-0 set as primary.

I guess your DE overrides global settings of xorg. Try first to launch, then add to autostart (profile) such command

nvidia-settings --assign CurrentMetaMode="HDMI-0: nvidia-auto-select +0+0, DVI-D-0: nvidia-auto-select +1805+0"

This one works for me under Ubuntu 14.04 and gnome-flashback (HDMI on the right):

nvidia-settings --assign CurrentMetaMode="HDMI-0: nvidia-auto-select +1360+0, VGA-0: nvidia-auto-select +0+0"

You may also want to enable “Force Full Composition Pipeline” if you have vsync issues.

Open nvidia-settings as root (su), make your decisions and close nvida-settings without any savings.

It will be saved automatically.

Delete or rename your /etc/X11/xorg.conf File.

Ok, looks like maybe I got ahead of myself. I initially tried to configure with Settings -> Display but it didn’t seem to take. Googling suggested everything needed to be done in nvidia-settings. Just to check, though, I went and tried it again with Display-Settings and it works fine.

Apologies for the false alarm.