Is there any Ubuntu flavor that handles HiDPI consistently?
Although I know how to tweak here and there..
I wonder if there is any Ubuntu 16.04 (or newer) variant that specializes or works 'out-of-the-box' with HiDPI screens.
For that matter, it would be interesting to know any good and recent Linux distribution that works well with HiDPI...
Update:
Thanks for you answers but I am not looking for a way to adjust my machine. I am aware of these tweaks and I am already using a few of them. My question was more towards which Ubuntu variant (such as Mate, Mint, etc.) handles HiDPI well. For Ubuntu Mate it is part of their roadmap but not there yet. I wonder if there is something already available.
Solution 1:
No, there isn't any so far--see Answerer's note at the end.
What is "consistent"
Before one disagrees with this answer, make sure to understand the question by OP. Given that one needs to manually set DPI value or scale factor of desktop environment, which varies for different monitors, we can't say Ubuntu "handles HiDPI consistently".
I would understand "consistent" as more towards out-of-box experience (Even OP has mentioned this in the question). That is, in terms of the ability of operating system to use appropriate settings for any given hardware and application software that respects the settings.
Does Ubuntu offer out-of-box experience for HiDPI support? No, or mostly uncertain.
HiDPI support for Ubuntu
Trusty Tahr (14.04) is the first Ubuntu release that explicitly mentioned HiDPI support. Even before the release, relevant information can be traced back to this dated message.
cairo 1.13 snapshot in the ubuntu-desktop ppa (Hi-DPI support testing)
Better support for Hi-DPI screen is a topic that is being discussed for the coming LTS [...]
From TrustyTahr/ReleaseNotes for 14.04:
- Support for High-DPI screens and desktop scaling
- Initial HiDPI support for LibreOffice
From XenialXerus/ReleaseNotes for 16.04:
- Improved HiDPI support in the greeter
- Support for scaling cursors in HiDPI environments
HiDPI support for others
From blog post Kubuntu and HiDPI Screen dated 16 February 2016, by Giri Alam:
Kubuntu/KDE is not perfect on HiDPI screen. Currently, there is no utility to automatically detect and scale the UI based on device screen resolution and Dots Per Inch (DPI) value, but the workaround to make Kubuntu more usable on HiDPI screen is quite simple.
From blog post Ubuntu MATE 16.10 Alpha 1 dated late June 2016, on Ubuntu MATE blog:
We have initial HiDPI support (almost) working. Don’t get too excited, this is an all or nothing implementation. When enabled all GTK3+ applications (not just MATE) will be rendered using high quality pixel doubling. If you have a 2160p display, it looks ace :-D
However, no mention of HiDPI support status in the final release note of Ubuntu MATE 16.10.
From GNOME Wiki HowDoI/HiDpi:
GNOME currently enables hi-dpi support when the screen resolution is at least 192 dpi and the screen height (in device pixels) is at least 1200.
From reddit thread of BudgieRemix dated mid-June 2016, prior to becoming Ubuntu Budgie:
There doesn't seem to be HiDPI Support in any native settings menus, or on the lock screen. Scaling on the lock/login screen was added to Ubuntu 16.04 for HiDPI monitors. [...] scales everything correctly with a scale factor of 2, however there is one issue. [The icons in the system tray] do not scale and do not appear correctly.
And the only replied answer:
None of the current members of the development team has a HiDPI monitor so we cannot reproduce the issues you raise :(
Overall HiDPI support
Although I have not quoted other sources here, most mentioned flavours for HiDPI support are Ubuntu GNOME and Ubuntu (Unity). Some mentioned Kubuntu/KDE and Xubuntu/Xfce, but not much information for hardware that actually worked for these flavours.
Disclaimers: This answer intends to review HiDPI support status, as 2016, for Ubuntu and its official flavours. The following limitations shall be noted.
Some flavours are not mentioned at all because those had no relevant information of HiDPI support
Non-Ubuntu flavours or unofficial derivatives are not mentioned, such as Linux Mint/Cinnamon, elementary OS/Pantheon
I don't have any HiDPI monitor or HiDPI supported hardware to verify above information; This answer solely quotes relevant information from the web
TL;DR The HiDPI support is work in progress, regardless of distribution and desktop environment. There isn't any Ubuntu flavour that handles HiDPI consistently yet.
Answerer's note: The HiDPI support may have improved since this answer was first written. Hence this answer is now a community wiki, so that anyone with minimum reputation can improve this post to keep up with how HiDPI support is being made consistent for newer releases of Ubuntu and the official flavours.
Solution 2:
The Problem
This is the strangest answer I've written. When upgrading to Ubuntu 16.04 I had to set scaling factor to 1.4 on this screen:
I know it says 1.5 but 1.4 worked better and I had also tried 1.25.
Next I had to go into Google Chrome and set "Large Font" in the settings. Alternatively I had tried setting zoom factor to 110% and 125%.
The Solution
I fixed this by acccident using Ctrl+Alt+F5, logging into the console and typing startx
. Then using Ctrl+Alt+F1, logging into to console and typing sudo reboot
.
Upon signing in all the icons and menu lines were super enlarged and I reset monitor scaling (in picture above) to 1.0. I then had to change Google-Chrome font size from "large" to "normal".
The Explanation
I wouldn't believe this solution myself unless it happened to me.
I then discovered the command xrandr --listmonitors
which shows:
$ xrandr --listmonitors
Monitors: 2
0: +*LVDS1 1920/382x1080/215+0+1080 LVDS1
1: +HDMI1 1920/1107x1080/623+0+0 HDMI1
Notice the screen size 382x215 millimeters for the 17" laptop display (LVDS1) and 1107x623 millimeters for the 50" TV. This plays an important role in the new DPI scaling I'm benefiting from, but I don't have the experience to explain it academically.
So yes it's an incredulous answer and I wouldn't believe it had it not happened to me. I believe there must be a better method such as reconfiguring X, perhaps by deleting a configuration file so it's automatically rebuilt but, I don't know that shorter solution.
The Proof
The end result is what is important: