Its about the Xserver. AFAIK&IIRC you can have Dpi setting per Screen, not monitor.
yeah, your right. for the xorg.conf way to work a server layout and a screen section for each monitor would need to be added.
Hi dglt, to answer your question, no; the xrandr commands didn't give me what I wanted. I don't want to reduce the resolution of the screen in order to make things appear larger, I need and want the higher resolution. And no, the 1080p screen isn't right either. The photograph below shows how the displays actually appear:
The two terminal windows are "identical", except the one on the high resolution screen is too small to read comfortably, whereas the one on the 1080p screen is too large - look at the size of the cursor.
I really want to use the full resolution of both screens, but somehow scale things so that text, icons, windows etc. are exactly the same physical size on both screens.
This seems to require the ability to set different scaling (not dpi) for each display. I am sorry but I didn't really understand the other answers. As things are at the moment, I can't comfortably use Manjaro on this machine because of this problem.
I should mention that another OS, which I won't name here, copes with these two screens perfectly without me doing anything, which is what amateurs like me need and want. Perhaps the problem is with XFCE?
thats not what those xrandr commands would do, the only reason there is a lower resolution as the first command is because sometimes DPI wont change without also switching to and from different resolutions. xfce afaik does not have the ability to scale per screen but there are other methods you can try. once you find a set of xrandr commands that do what you want you can have the script run at startup and it will do it automatically for every boot.
lets try this:
xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.3x1.3 --right-of HDMI2
the numbers are deceiving, --scale 0.7x0.7 actually increases scaling, and 1.3x1.3 makes it smaller.
let me know how it goes, you can adjust the values until you feel it's just right. otherwise please post an updated output of
Why do you say that. IMHO you want what dpi does, technically, you just described it.
Dots per inch, relates/connects resolution to physical monitor's dimensions.
Why not? We should have a paradigm of what is user friendly.
But have you checked/confirmed what method is being used from the super secret OS?
Sorry for the delay, I have been away for a few days. The first thing I tried was the modified xorg configuration, edit/save/reboot - result is that both screens were blank! I will probably need to boot from a USB stick to edit or delete the file.
OK, it's me not understanding the terminology that you are using. I don't what is meant in Linux speak by display, screen or monitor. To me these are just different terms for the physical thing that I look at, but I think that to you guys they mean different things. As I think do pixels and dots. But I don't know what exactly.
The OS that I didn't name is Windows 10. I have no idea what method it uses; all I know is that when I booted after replacing an HD monitor with the UHD monitor it looked after the change in pixels from 1920x1080 to 3840x2160 silently without me having to do anything.
delete the .conf file i had you create, if you cant get to a desktop then use CTRL+ALT+F2 or f3,f4,f5 to get to a TTY and
sudo rm -rf /etc/X11/xorg.conf.d/20-intel.conf
once your back on the desktop after rebooting, have you tried using these to adjust scaling?
play with the numbers until you get the intended outcome. once you have that you can have GDM run it automatically when starting a session.
Thanks, After a bit of cogitating I used Ctrl-Alt-F2 to get to a terminal and managed to delete the .conf file after a bit of 'learning'
I then tried to adjust the display scaling with the xrandr command you suggested, which worked! Hurray!
Both displays are certainly a lot more comfortable on the eye with the settings you suggested.
I felt that 1.3x1.3 made the HD display perhaps a little small, so emboldened with my success I tried 1.2x1.2 - which caused that display to go blank. When I got it back by running the previous xrandr command there was this error message:
[david@DavidsOffice ~]$ xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.2x1.2 --right-of HDMI2 X Error of failed request: BadMatch (invalid parameter attributes) Major opcode of failed request: 140 (RANDR) Minor opcode of failed request: 7 (RRSetScreenSize) Serial number of failed request: 36 Current serial number in output stream: 37
1.3x1.3 works fine, but it won't take 1.2x1.2, 1.25x1.25 or 1.4x1.4. I guess there might be some scaling values that are not acceptable to the hardware?
Here is the current output of xrandr --prop.
[david@DavidsOffice ~]$ xrandr --prop Screen 0: minimum 8 x 8, current 6336 x 1512, maximum 32767 x 32767 HDMI1 connected 2496x1404+3840+0 (normal left inverted right x axis y axis) 530mm x 300mm EDID: 00ffffffffffff0009d1407845540000 2a14010380351e782e6081a6564a9c25 125054a56b80710081c081408180a9c0 b300d1c00101023a801871382d40582c 4500132b2100001a000000ff00584141 3030363830534c300a20000000fd0032 4c185311000a202020202020000000fc 0042656e5120473234323048440a00eb Content Protection: Undesired supported: Undesired, Desired, Enabled content type: No Data supported: No Data, Graphics, Photo, Cinema, Game aspect ratio: Automatic supported: Automatic, 4:3, 16:9 Broadcast RGB: Automatic supported: Automatic, Full, Limited 16:235 audio: auto supported: force-dvi, off, auto, on link-status: Good supported: Good, Bad non-desktop: 0 range: (0, 1) 1920x1080 60.00*+ 1680x1050 59.88 1600x900 60.00 1280x1024 75.02 60.02 1280x960 60.00 1152x864 75.00 1280x720 60.00 1152x720 59.97 1024x768 75.03 60.00 832x624 74.55 800x600 75.00 60.32 640x480 75.00 59.94 720x400 70.08 HDMI2 connected primary 2688x1512+0+0 (normal left inverted right x axis y axis) 610mm x 350mm EDID: 00ffffffffffff004c2d710d324e5030 191c0103803d23782a5fb1a2574fa228 0f5054bfef80714f810081c081809500 a9c0b300010104740030f2705a80b058 8a0060592100001e000000fd00184b1e 5a1e000a202020202020000000fc0055 3238453537300a2020202020000000ff 004854504b3630303139320a202001f4 020324f0495f10041f13031220222309 0707830100006d030c001000803c2010 60010203023a801871382d40582c4500 60592100001e023a80d072382d40102c 458060592100001e011d007251d01e20 6e28550060592100001e565e00a0a0a0 29503020350060592100001a00000000 00000000000000000000000000000067 Content Protection: Undesired supported: Undesired, Desired, Enabled content type: No Data supported: No Data, Graphics, Photo, Cinema, Game aspect ratio: Automatic supported: Automatic, 4:3, 16:9 Broadcast RGB: Automatic supported: Automatic, Full, Limited 16:235 audio: auto supported: force-dvi, off, auto, on link-status: Good supported: Good, Bad non-desktop: 0 range: (0, 1) 3840x2160 30.00*+ 25.00 24.00 29.97 23.98 2560x1440 59.95 1920x1080 60.00 50.00 59.94 30.00 24.00 29.97 23.98 1680x1050 59.88 1600x900 60.00 1280x1024 75.02 60.02 1440x900 59.90 1280x800 59.91 1152x864 75.00 1280x720 60.00 50.00 59.94 1024x768 75.03 70.07 60.00 832x624 74.55 800x600 72.19 75.00 60.32 56.25 720x576 50.00 720x480 60.00 59.94 640x480 75.00 72.81 66.67 60.00 59.94 720x400 70.08 VGA1 disconnected (normal left inverted right x axis y axis) link-status: Good supported: Good, Bad non-desktop: 0 range: (0, 1) VIRTUAL1 disconnected (normal left inverted right x axis y axis) non-desktop: 0 supported: 0, 1
Anyway, I am much happier with the screens as they are at the moment, so how do I get GDM to run this automatically when starting a session?
glad it worked out.
you can use a .desktop file and gdm will run it when it starts.
sudo nano /usr/local/share/display-scale.desktop
copy/paste these contents:
[Desktop Entry] Type=Application Name=Set xrandr display scale Exec=sh -c "xrandr --output HDMI2 --auto --scale 0.7x0.7 --output HDMI1 --auto --scale 1.3x1.3 --right-of HDMI2" NoDisplay=true X-GNOME-Autostart-Phase=DisplayServer
save/exit, then run these
sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop sudo ln -s /usr/local/share/display-scale.desktop /etc/xdg/autostart/display-scale.desktop
Thanks. I ran into a problem because I don't have a /greeter/ directory in my /usr/share/gdm/, the only thing in there is /env.d/
[david@DavidsOffice ~]$ sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop ln: failed to create symbolic link '/usr/share/gdm/greeter/autostart/display-scale.desktop': No such file or directory
#run this first sudo mkdir /usr/share/gdm/greeter/autostart/ #then this sudo ln -s /usr/local/share/display-scale.desktop /usr/share/gdm/greeter/autostart/display-scale.desktop
OK, did that and rebooted, but scaling reverted to original. Should I have also run the second command?
sudo ln -s /usr/local/share/display-scale.desktop /etc/xdg/autostart/display-scale.desktop
Thanks for your patience, that last step did it and now the displays are scaled on boot.
I would still like the HD screen to be scaled a little larger, do you know why xrandr works with 1.3x1.3 for that display but won't take 1.2x1.2, 1.25x1.25 or 1.4x1.4 - are there some scaling values that are not acceptable to the hardware?
possibly, i tested ridiculous values both large and small and it works for me so hardware limits are a possibility or maybe because your using 2 monitors the difference can only be allowed to a certain point?
OK. Thanks for all your help.
Does the new version of XFCE change this? I notice it has improved HiDPI support.
i really dont know, but you could always just try and see what happens
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.