fedops blog

Privacy in Computing

Sun 08 April 2018

Choosing a Distro

Posted by fedops in Privacy   

If you're running a server or a virtual machine, the question of the distribution comes down to personal preference more than anything else. Software selection in the repositories, apt-get versus yum/dnf, systemd yes or no - plenty degrees of freedom, but within your chosen boundaries one distro is going to be pretty much as good as the next. I tend to call that a layer 8 or 9 problem; politics and religion, more than anything else.

On a laptop, the situation is dramatically different. Performance is less of an absolute requirement, but other issues come to the forefront:

Efficiency

Battery runtime needs to be comparable to what the same device achieves under Windows. This requires an up to date kernel, north of version 4.9, and is hampered by more exotic hardware components.

Power Management

Proper function of the power button, support of lid close and open events, and proper ACPI support. Sometimes the ACPI tables in the BIOS create problems, although this tends to be less commonplace nowadays.

Multiple graphics card support

Many new laptops come with two graphics cards: an in-chip one like the Intel HD620, plus a discrete physical graphics chip like the nVidia MX120 or MX150. The trick is in enabling the discrete chip only in demanding 3D situations, and switching to the integrated one as much as possible for efficiency and heat reasons.

Lack of optimization in this area means increased power consumption and, as a consequence, more fan runtime.

One way of preventing problems is to specifically select a laptop with only integrated chipset graphics. Consider your performance requirements and choose accordingly.

Fan Control

This is an area that can be well controlled using packages like lm_sensors and a host of vendor-specific kernel modules. Availability of a kernel module for the vendor you are considering is a definite plus. With the right combination, Linux will offer finer-grained control than Windows.

Webcam, Sound

Most webcams tend to be USB-connected, and sound hardware is a bit of a commodity these days, so support for these can be expected.

Convenience buttons

These include dedicated or double-duty keys used to adjust audio volume, screen and keyboard brightness, flight mode, and other functions. Current desktop environments like Gnome and KDE offer good support out of the box.

Wireless Technologies

Make sure the Bluetooth and Wifi chipsets used in the laptop you are considering are standard off the shelf components. The usual suspects like Intel, Atheros, and Realtek tend to have well-working modules, while chincy off-brand chips may give you problems.

Be aware that half-baked support in this area may prevent power management and system sleep and resume to work properly.

Crippled UEFI/BIOS Setups

Some UEFI BIOSes are questionable, including some that will prevent the user from disabling Secure Boot. The latter can turn out to be a problem with some distros, although most mainstream flavors nowadays have their kernel code properly configured to pass the certificate check. This could become a problem, though, if you are planning on running hypervisors like Virtualbox. I personally would not buy a laptop that didn't give me the choice of having Secure Boot turned on or off.

"Toy" Addons

For me this encompasses ambient light sensors and fingerprint readers. Tastes differ obviously, but I personally have never seen an ambient light sensor that worked well enough to use it. Fingerprint readers specifically and biometric ID in general is something I regard skeptically. Ever tried changing your fingerprint?

Anyway, ambient light sensors seem to be hit-and-miss, while I know of no Linux-supported fingerprint sensors as of now. No doubt this is due to their manufacturers not releasing programming specs, and it will change over time. For now, though, plan on doing without. Keep an eye on the fprint and fingerprint-gui projects if you are interested in this.

Good, Now What?

So assuming you've done your homework, selected a suitable laptop that should be supported well by your chosen distro, then the last step is to actually test it. Most distributions these days offer a Live CD or USB image that can be started up without actually installing it.

My recommendation is to create a thumb drive with your chosen distro, and actually run it on a laptop. It would be advantageous to have a brick-and-mortar store to go to and try it out; most major vendors will allow you to boot from a thumb drive if you promise not to wreck their installation. If you want to or have to mail-order, at least this approach will allow you to test the device while leaving Windows alone so you can send it back undamaged in case you don't like it.