« Back to home

Ubuntu On The GPD Pocket 2

Posted on

GPD Pocket 2 running vanilla Ubuntu 18.10 Previously I wrote up my first impressions of the GPD Pocket 2 as well as a quick follow-up with some more details.

At the time I was running an Ubuntu MATE image respun specifically for the GPD Pocket series. The main draw of this image was the promise of certain things working out of the box: essentially it fixes screen rotation, scaling and touch screen alignment, which have been an issue on the GPD Pocket series because they use screens manufactured for tablets, and the screens are both physically small and high resolution.

All of that was fine, but unfortunately the MATE image had its own issues. The biggest was severe graphical tearing when scrolling, most apparent when browsing the web. A secondary issue was that the MATE desktop was not optimized for touch - for instance, many dropdowns could not be navigated via touch (I suppose navigation relies on a hovering cursor, which does not exist with touch). So you could tap to reveal the Wifi dropdown, but you’d have to use the arrow keys and RETURN (or the optical “mouse”) to actually choose a network. Finally, MATE’s window manager would occasionally crash when a menu bar dropdown was open and you tap on an application “below” it. This didn’t happen in all applications (I mostly noticed this in Firefox), and is easy enough to avoid with some self-discipline, but it was quite annoying.

After reading positive reports from others trying various Ubuntu flavours on the GPD Pocket subreddit, I decided to jump ship from MATE.

I’m happily running Ubuntu 18.10 now, but I also tried Ubuntu 18.04 and Xubuntu 18.04. Here’s what I thought of each.

Ubuntu 18.04 LTS

I really wanted (well, still want) to use the an LTS release on this computer. I care very little for bleeding-edge features on my GNU/Linux install - I prefer stability, particularly on a computer built with such oddball hardware. I’m happy to say I noticed no graphical tearing on 18.04 LTS. However he usual Xorg rotation fix via config files did not work for some reason. I put them in place (into /etc/X11/xorg.conf.d/), but Xorg just ignored them. I tried the GUI rotation settings instead, but no luck here either: the settings app allowed me to choose between different screen orientations, but there was no Apply button. I considered familiarizing myself more with how Xorg works and how configs are applied to try and troubleshoot this, but I was trying to arrive at a working system within one evening (and have a usable machine the next day), so I moved on.

Xubuntu 18.04 LTS

I had never run Xubuntu or the XFCE desktop environment, but I wanted to try it because a fellow Pocket 2 owner on Reddit had reported a good experience with it.

Out of the box I saw some tearing, though not as bad as on MATE. I did not try to fix this via config files (which may well have eliminated tearing completely), because I hit other issues: For one, XFCE was not well optimized for touch screens or small HiDPI screens. The default font scaling was far too small. You can increase font scaling via the settings, but not by much unless you like truncated text allover your GUI (both horizontally and vertically). I have to admit I wasn’t impressed by XFCE’s aesthetic in general, but that’s a matter of personal preference (and I suppose my years as an Apple user have left their mark).

Under Xubuntu, dropping in the Xorg config files fixed desktop orientation, but the login window was not rotated correctly. Some quick googling revealed a way to fix this, but after I applied that fix, suspend & resume behaviour became unstable. The computer would resume with a black screen after closing and reopening the lid. I may have messed up somewhere (maybe something about the scaling changes or some other setting I touched), and I suppose this could have been fixable fix some trial and error - but to I did not like XFCE very much to begin with and I still had vanilla Ubuntu 18.10 to try, so again I moved on.

Ubuntu 18.10

This is the one I stuck with, and I’m very happy so far.

With just a little bit of tinkering (see below), vanilla Ubuntu 18.10 runs like a charm on the Pocket 2. In particular, Gnome 3 deals beautifully with touch input.

Unlike MATE or XFCE, Gnome treats touch input as a first-class citizen. It’s close to Windows 10, which is the gold standard for touch screen interaction among “traditional” desktop OSes1. All dropdown menus can be navigated entirely by touch, press-and-hold brings up context menus, and most GUI applications can be scrolled by swiping (Firefox stands out for missing this - which is why I mostly use Chromium on the Pocket and Pocket 2). On the Pocket some UI elements are very small and difficult to hit with a finger, but that’s about the only negative I can come up with.

I also love the built-in window management features of Gnome 3 - you can use the super key and arrow keys to minimize/maximize application windows or snap them to either side of the screen (Windows 10 has the same feature built in).

Performance of the Pocket under Ubuntu is perfectly adequate (as in: I would not expect any more than that from a computer this tiny) and battery life is great. I have yet to drive the battery close to zero, but the system tells me I should get more than 10 hours on a full charge.

Of course, given the non-standard hardware used by GPD, I had to do some things to get everything to behave well:

  • fix rotation, touchscreen alignment and tearing (there was some, not as bad as MATE) by using Xorg config files as detailed here
  • install the Gnome Tweaks tool (sudo apt install gnome-tweak-tool) and set the font-scaling higher. I use 1.2x. The default 1x makes for very tiny text and UI elements
  • increase default magnification in the browser (Chrome does this natively, Firefox needs a plugin (I use Fixed Zoom), and increase the terminal’s default font size.
  • fix the on-screen keyboard popping up all the time when touching a text input field - very annoying, but fortunately there is a Gnome extension to stop this behaviour

What now?

I’m pretty happy with my current setup. Out of every GNU/Linux distro and flavour I have run on either Pocket, Ubuntu 18.10 on the Pocket 2 has been the most pleasing by far. Gnome 3 works great with touch and all the basic issues are easy to fix. If you want to run GNU/Linux on the Pocket 2, you’re not already invested in a particular distro, and you’d like everything to work with minimal fuss, I’m happy to recommend Ubuntu 18.10 with the fixes mentioned above. Personally, I’m ever so slightly uncomfortable running a non-LTS release, so I’ll revisit 18.04 sooner or later (probably when 18.04.2 comes out in a few months) to dig in some more and see if I can get the screen orientation fix to stick (I might try MATE again if they provide their own respin for the LTS release, as they have alluded to).

  1. This wouldn’t be a complete article without a little jab at Apple, so here we go: Dear Apple, for god’s sake, please make your laptops work with touch input. You’ve taken an almost dogmatic stance on refusing to include touch screens on your laptop line, and it’s getting ridiculous. Do I think touch should be the main way to navigate a laptop’s UI? Hell no. But at this point we, your customers, have acquired the instinctive knowledge that screens can be touched to do stuff. Being able to quickly scroll a webpage, pinch-zoom an image or tap to dismiss an alert is a nice convenience. It’s something I catch myself trying to do all the time on my work MacBook Pro, and it’s mildly jarring if nothing happens. In a couple of years, your laptops will feel like an anachronism. Somebody once cautioned against being trapped by dogma. I know this is kind of a sacred cow for you, Apple, but your products' usability could really benefit from a pragmatic compromise here and there. ↩︎