Recently I received an ASUS ZenBook Flip 14 as a work laptop from my employer, and had the chance to check out Linux support of the device. I decided to write an article, and a summary on which features worked out of the box, and what adjustments were needed to make the remaining stuff work. Let’s see what I managed to put together!

Antergos Linux with Gnome dual-booting Windows

UPDATE: Antergos is now discontinued :(

I use Antergos as my choice of Linux distribution, because it’s really close to Arch, it is only extended with a very thin repository of theirs, and their installer is marvelous. You really should check it out, if you like the simplicity of Arch, and the fact that it just works, but you don’t like the manual installation method for whatever reason.

The reason I chose Gnome was that in my I experience, Gnome was more mature in terms of handling touchscreens. KDE, that I used on my desktops, and non-convertible laptops, is just perfect for those scenarios, but interaction on a KDE desktop is optimized for keyboard and mouse usage. However, fractional scaling is much better on KDE than on Gnome at the moment, so check your priorities.

Strange installation issue

For dual-boot installation I followed Antergos’ official guide. Before that, I shrinked the Windows partition from inside Windows, because it was encrypted with BitLocker as a factory default.

My first attempt to install Antergos failed for an unknown reason (it even said that in a dialog before reboot), and after that, the Antergos installer didn’t boot. I tried several installation media, but all failed, so I tried to format the Antergos partition from Windows, and voilà, the installer could boot again. I’m not sure why this happened though. Then I could successfully install Antergos on second try withtout issues.

Setting up hardware features

Compared to a traditional desktop where always everything just works with Linux, the following features needed revision:

  • Battery life
  • Touchscreen
  • Pen
  • Bluetooth
  • Wifi
  • Screen rotation
  • Disable keyboard and touchpad when rotated beyond 180°
  • Special fn buttons
  • Sound
  • Fingerprint sensor

Let’s look at them one by one.

Battery life

For better battery life, the standard on Linux now is TLP. I followed the ArchWiki article. To be honest, I didn’t notice any difference between Linux without TLP, Linux with TLP, or Windows, so I installed it, but nothing amazing happened, except that the battery life was already great out of the box. One thing I couldn’t manage to work is the long term battery life saver feature of Asus. On Windows, there is a Battery Health application, that can set the charging threshold to 100%, 80%, and 60% for longest battery health. This is not available for Asus laptops in TLP, only for ThinkPads.

Touchscreen, Pen, Wifi, Bluetooth

I bundled these together in this article, because these features worked out of the box without the need to set anything up. I was surprised that even the pen worked including the pressure levels. The buttons do something totally different, than on Windows, but they work, they just need to be remapped in case I want to use them.

Screen rotation

Screen rotation needed only to install iio-sensor-proxy from the AUR, as stated in the ArchWiki Tablet PC article. Since I used Antergos, and opted in for AUR, I could install it with yaourt:

yaourt -S iio-sensor-proxy

I’m not sure if you have to restart your session after installing it, but you don’t have to configure anything further, the screen should now rotate as the PC is rotated physically.

Disable keyboard and touchpad when fliped beyond 180°

This is both easy, and not. Disabling the keyboard is not even needed, as it is disabled by hardware I guess (or Linux does this automatically, but I doubt it).

Special fn buttons

This section is only a report about that don’t expect fn+F2 (airplane mode), and fn+F7 (screen off) work out of the box. They emmit, so you can remap them, or run your own command.

UPDATE: I use KDE now, and fn+F2 (airplane mode) now works.

Sound

Other thing that was mysterious at first is the sound. I noticed the sound fading out, and muting completely when I start to play something or just adjust the volume and have a beep played. I was extremely sad, because I didn’t want to boot into Windows for playing music. Then I realized, that in Windows the audio was really quiet, and there also was a mode switcher, so I thought maybe they conflict with using sound without those settings. I then found out that this problem only occurs when I don’t power down the laptop completely before coming back to Linux from Windows. So this is solved, it’s only I have to hit shutdown instead of reboot in Windows every time I want to switch to Linux, and we’re done. (Still strange though)

Fingerprint sensor

This is where the bad part comes. Fingerprint sensor almost never works on laptops. I’m most probably lucky, because I have in my Asus an ELAN fingerprint sensor (or some fingerprint sensor that needs the ELAN driver, I’m not really into this), and this has some initial support in libfprint somewhere in some fork, but the reality is, I never could manage to make it work. Whenever I succeed, I’ll update the article, and look into editing the ArchWiki, posting the required stuff to AUR for easier installation, but right now, it doesn’t work for me. I couldn’t even find the device in the output of lsusb, so I’m not sure what to do.

Some notes on Gnome installation

Gnome doesn’t support fractional scaling, but you can enable it if you chose to go with Wayland. This feature is not supported on X unfortunately. I understand how they try to move to Wayland, but it still is very immature compared to X, that I chose to go with. But fractional scaling is important on a device like this, if you want to use it like a tablet.

Also Antergos installs LightDM by default which is crap with Gnome. Using Gnome should mean using GDM as well. But GDM then causes trouble with your bluetooth headsets. You can manually apply the changes from the linked wiki page, but there is a package in the AUR, called pulseaudio-bluetooth-a2dp-gdm-fix, that does the work for you, but make sure to install this one AFTER you logged in at least once using GDM, because I installed them simultaneously, and I debugged hours why GDM won’t start at all.

My last advice with a Gnome + Arch(ish) combination is to install Gnome Software with both PackageKit and Flatpak support. This enables you a Play Store-like app center, that you can use to install software blazingly fast, as you don’t even have to enter your password (only for uninstallation).