"Will this run Linux?"
8. 12. 2016

Aline Abler

Linux Lenovo HP Microsoft

Hello, we're TheAlternative, a student organization at the universities of Zurich, and we promote Free and Open Source Software. One of the largest is Linux in particular.

"Will this run Linux?" is the most common question we get at our support desk--especially during the Neptun Wave. And it's not always easy to answer. Many recent devices come with new but proprietary chipsets, for which the Linux drivers have yet to be developed. There's a multitude of issues that range from "touchpad not working" up to "screen flickers horribly". So it's understandable that someone interested in Linux would want to know this in advance.

Fortunately, Projekt Neptun has given us the opportunity to test some high-end laptops from their last Neptun Wave. And the good news is that most of the issues can be resolved by upgrading the Linux kernel in your Linux distribution of choice.

Why is this even a problem?

Laptop manufacturers are in a constant race to create faster, thinner, better devices--especially in their business lines, which is what Projekt Neptun offers. The new devices often come with new hardware, which in turn requires new drivers.

The hardware used by these laptops is developed by other manufacturers--Intel, Broadcom, Nvidia, to name a few--and these manufacturers also provide the drivers necessary to use the hardware. Unfortunately, most manufacturers only develop their good drivers for Windows and Mac OS X. These drivers are usually closed off, meaning noone except the manufacturer gets to see the sources for these drivers. Linux is sadly often forgotten in the driver support, which means the manufacturer has fewer or less functional releases ready for Linux.

This has a variety of reasons: For example, manufacturers of graphics card would not prioritize Linux drivers much, since most of the cards they sell will probably run with a Windows operating system. The sad truth is that Linux doesn't have a large enough market share on Desktop PCs, so most manufacturers don't feel any need to provide drivers.

Usually that's no big deal. The Linux kernel contains generic drivers that are created by the Linux kernel developers and can deal with most hardware. That is also the reason why you don't need any driver install CDs or similar on your Linux system. The drivers are already there, and they are loaded as required.

Still, these Linux drivers are not developed by the original manufacturers. They are developed by volunteers who work on the Linux kernel. And since the hardware in question is often proprietary, the developers need to reverse-engineer how it works. Imagine you'd have to write a manual for a machine of which you don't know how it works. You'd have to push all the buttons in turn and observe what they do. Maybe you even need to take the machine apart, see how the parts are connected, and try to guess how it works internally.

This is what the Linux kernel developers often have to do. And on top of that, they can only start this process once the hardware in question is released. When a manufacturer releases a certain piece of hardware, their Windows drivers are already done, but the development of the Linux drivers hasn't even started.

For that reason, Linux drivers usually lag behind the most recent hardware out there. When you buy a brand new laptop, it might take a few weeks--or even months, depending on how tricky it is to reverse engineer the hardware--until all the components work on Linux.

Under some circumstances it even happens that no drivers will be developed at all, be it due to encryption, lack of volunteers, no hardware donations to interested volunteers (they need to buy the device from their own money!) or manufacturers simply not releasing any form of technical documentation, which may be the final piece in the puzzle to understand the intricacies of a certain hardware component.

So, what about the Neptun devices?

We tested a selection of the laptops from the last Neptun Wave. Our tests were done in early October, so keep in mind that some things may already have changed. Also, due to time limits, we weren't able to test the laptops as extensively as we would have liked, so this report is neither complete nor guaranteed to be accurate. If Linux support is very important to you, we advise you to do more research before deciding to buy a certain laptop.

The general conclusion is that many things already do work--but only in the most recent Linux kernel. The kernel is the part of your operating systems that, among other things, deals with drivers. The Linux kernel is updated often and development is rapid--every two to four months a new minor release--so many Linux distributions prefer to ship with an older, "long time support" (LTS) kernel. This is a sane choice--it means that your system will run more stable. But it does have a disadvantage: If you don't have the most recent kernel, you don't have the most recent drivers for the most recent hardware.

For example, Ubuntu 16.04 LTS ships with Linux kernel 4.4. As of this articles writing, the most recent Linux kernel is version 4.8, so Ubuntu lags four minor versions behind. OpenSUSE Leap 42.1 comes with an even older version, Linux kernel 4.1.

Fortunately, it's possible to upgrade your Linux kernel. For Ubuntu, instructions can be found here. These instructions are for kernel 4.7, but they apply similarly to kernel 4.8. For OpenSUSE, instructions can be found here.

Upgrading the kernel solves many common issues, for example with the new Intel processor generation (Skylake). However, some issues are a bit more complicated or even unresolved as of now.

The best way to find out whether you need this upgrade is to simply test it. Install Linux, try whether everything works as expected--particularly WiFi and Sleep/Standby--and if something doesn't work, upgrade your kernel and test again.

Some devices also have further issues that the upgrade does not resolve, but you can still fix them using other methods:

Surface Pro 4

These devices use the brand-new Intel Precise Touch and Stylus Technology (IPTS), which apparently is particularly hard to reverse-engineer. Even though the device has been out for months, a driver for the device's touchscreen has only been developed a little while ago and is still quite unstable.

With this new driver, the touchscreen and pen work as expected, including the pen's pressure sensitivity option. However, the new driver has not made it into the Linux kernel, so manual compilation of the kernel is required.

For OpenSUSE, TheAlternative provides a repository containing the modified kernel, making it easy to install. But even then, some manual setup is required, and you need to copy some driver files from Windows to your Linux system.

So, even though the Surface Pro 4 technically works, it is a hassle to set up and does not run very stable. You should probably keep your Windows around for the time being. Eventually, though, the drivers should become better and run reliably. It's only a matter of time at this point.

Newest generation Lenovos

On many new Lenovo ThinkPad devices, an issue with processor states can cause crashes on suspend, or even cause Linux not to boot at all. This can be avoided by disabling these processor states altogether. To do that, you have to pass "intel_pstate=no_hwp" as a parameter to your kernel. A guide on how to do that can be found here.

Also, some Lenovo laptops come with a square fingerprint reader that uses encryption to transfer the fingerprint data over to your system. While this is a good thing and makes your fingerprint reader more secure, it unfortunately also means it's impossible to reverse-engineer a driver for this reader, so these fingerprint readers probably won't work on Linux in the near future.

Conclusion

Considering how new these devices are and how hard it is to write drivers for them, it is quite amazing how well they work--given you use the most recent kernel. Sure, there are some quirks that affect a few devices and still aren't resolved. But overall, Linux runs decently on most devices.

If you have any issues with your personal Linux system, you can go to TheAlternative.ch and ask for support. We will help you resolve your problems. And if you just want to meet us and discuss the latest Linux news, join our Stammtisch! More information can be found on our website.

Informations sur les commandes

Vous pouvez suivre l'état de la commande de votre ordinateur portable dans le compte client de notre partenaire commercial. Tu trouveras des informations à ce sujet dans la FAQ

Help Point : Veuillez réserver un rendez-vous

Notre personnel de support aux Help Points ETHZ, Bern vonRoll, UNIBAS et UNILU est à votre disposition. Si vous avez besoin d'une assistance technique, contactez-nous par courriel pour prendre rendez-vous.

Informations sur les commandes

Vous pouvez suivre l'état de la commande de votre ordinateur portable dans le compte client de notre partenaire commercial. Tu trouveras des informations à ce sujet dans la FAQ

Help Point : Veuillez réserver un rendez-vous

Notre personnel de support aux Help Points ETHZ, Bern vonRoll, UNIBAS et UNILU est à votre disposition. Si vous avez besoin d'une assistance technique, contactez-nous par courriel pour prendre rendez-vous.

Vous avez besoin d'aide ?