How to persist display settings?
I my display configuration to remain like this:
Yet after each reboot, it resets to:
How to have it persistent?
My xrandr
output:
Screen 0: minimum 8 x 8, current 4920 x 1920, maximum 32767 x 32767
eDP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 309mm x 174mm
1920x1080 60.0*+ 59.9 48.0
1680x1050 60.0 59.9
1600x1024 60.2
1400x1050 60.0
1600x900 60.0
1280x1024 60.0
1440x900 59.9
1280x960 60.0
1368x768 60.0
1360x768 59.8 60.0
1152x864 60.0
1280x720 60.0
1024x768 60.0
1024x576 60.0
960x540 60.0
800x600 60.3 56.2
864x486 60.0
640x480 59.9
720x405 60.0
640x360 60.0
DP1 disconnected (normal left inverted right x axis y axis)
DP1-1 disconnected (normal left inverted right x axis y axis)
DP1-2 disconnected (normal left inverted right x axis y axis)
DP1-3 connected primary 1080x1920+1920+0 left (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080 60.0*+
1680x1050 60.0
1600x900 60.0
1280x1024 75.0 60.0
1280x800 59.8
1152x864 75.0
1280x720 60.0
1024x768 75.1 60.0
832x624 74.6
800x600 75.0 60.3
640x480 75.0 60.0
720x400 70.1
HDMI1 connected 1920x1080+3000+0 (normal left inverted right x axis y axis) 477mm x 268mm
1920x1080 60.0*+
1680x1050 59.9
1600x900 60.0
1280x1024 75.0 60.0
1280x800 59.9
1152x864 75.0
1280x720 60.0
1024x768 75.1 60.0
832x624 74.6
800x600 75.0 60.3
640x480 75.0 60.0
720x400 70.1
HDMI2 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
If I made no typo, the command:
xrandr --output eDP1 --pos 0x0 --output DP1-3 --pos 1920x0 --rotate left --output HDMI1 --pos 3000x0
should set up the screens like in the image (please try first). To make it stick on next login, add to startup applications:
/bin/bash -c "sleep 15 && xrandr --output eDP1 --pos 0x0 --output DP1-3 --pos 1920x0 --rotate left --output HDMI1 --pos 3000x0"
Add it to Startup Applications
Choose Dash > Startup Applications > Add. Add the (second) command above. The sleep 15
is to make sure the desktop is fully loaded, else the setup will likely break or be overruled by local procedures.
Explanation
Using xrandr
, you can get information on the current screen setup. In the output you posted, three screens appear to be connected (which we expected :) ):
eDP1 connected 1920x1080+0+0
DP1-3 connected primary 1080x1920+1920+0
HDMI1 connected 1920x1080+3000+0
The section:
1920x1080+0+0
gives us information on the screen's resolution (1920x1080
) and its position in the whole picture; the coordinates from the top left corner of the combined screens' layout (+0+0
, which is x/y).
Subsequently, we can set the position of a screen, using the command:
xrandr --output eDP1 --pos 0x0
and its rotation:
xrandr --output eDP1 --rotate left
In case we need to set up a layout with multiple sreens, we need to run the sequence of commands from the left to the right screen.