Fractional Desktop Scaling

In my last computer upgrade, I went from a Lenovo X240 (screen resolution: 1366×768 on a 12.5″ display) to an X1 Carbon 4th Gen (screen resolution: 2560×1440 on a 14″ display). As it turns out, at its native resolution the Ubuntu Unity desktop on the X1 Carbon is simply too small to read. This wasn’t a problem until recently as I did most of my computing with an external monitor. But now I find getting up 2 flights of stairs difficult, I’m doing a lot more using the built-in panel, and experiencing this issue. Fortunately, X11 as shipped in Ubuntu 16.04 LTS has some sort of support for desktop scaling. Unfortunately, it’s a bit rudimentary. I use a scaling of 1.38, but still find that some dialogs look shonky and I have to do extra adjustment for some apps. But it’s just about workable.

I am considering an upgrade to Ubuntu 18.04 LTS where, famously, they have switched from Unity back to GNOME. GNOME does not support fractional scaling with X11 – you can only scale in whole numbers. It does do it with Wayland, experimentally, but Ubuntu decided (after giving it a go in the test releases) not to make Wayland the default for 18.04. I’d like to try this out, but the instructions I found online to do so don’t work with the LiveUSB version – so I’d have to take the plunge before being able to even try it.

So it seems I get the choice of 1x (everything too small) or 2x (everything too big). This is a significant loss of functionality; the X1 Carbon comes with screen options of 2560×1440 and 1920×1080, and it perversely makes me think I would have been better off getting the one with the lower resolution screen! As it is, using 2x gives an effective resolution of 1280×720, which is lower than the resolution of the X240 I used to use. The loss of vertical height is a particular pain point.

Can any reader of my blog suggest a way to solve or mitigate this problem? Is there a “compact” theme for GNOME that still looks like Unity? Are there ways of setting particular apps, like Firefox, Thunderbird or LibreOffice, to use less space or have a default zoom?