Linux

Linux 5.7 is the latest released version.

Linux Features

Linux bugs

  • The AMD Ryzen 1 is freezing in idle or under low load from time to time, at least once every day. A workaround is to use the kernel boot paramter rcu_nocbs=0-X (X=Number of CPU threads -1) on Arch Linux kernel (support has been added since Linux 4.15). The kernel parameter is required for desktop (and mobile???) Ryzen’s except the new Raven Ridge desktop like APU’s Ryzen 3 2200G/Ryzen 5 2400G.
  • Patches to compress the Linux kernel with Zstd are still not merged yet.

Linux Hardware Vendors

Some hardware vendors are selling at least some of their notebooks and desktops with Linux and Coreboot:

  • Purism
  • System76

Without Coreboot:

  • Tuxedo
  • Dell
  • Lenovo

Linux-git and Linux-next

Sometimes the stable version of Linux is not enough if you got some brand new hardware. Then you have to compile and install a Linux development snapshot from Git. In Arch Linux we have the gladly the AUR user repository. As somebody has created already a PKGBUILD we just have to type the following to get the Linux mainline development version of Linus:

yay linux-git

Or if you need the next development version, then type:

yay linux-next

If you confirm the PKGBUILD you can start the compile process. It will basically to the following:

  1. Download dependencies
  2. Compile
  3. Install with pacman

Compiling the full kernel will take a long time, if not done already make sure to use all CPU threads, read Pacman & Makepkg.

If there is a new release candidate (RC) provided by the package linux-git in AUR I would recommend to compile the kernel again to get all security changes and improvements.

Microcode

The microcode for Intel is usually installed by default (package intel-ucode). Install the AMD one with the following command:

sudo pacman amd-code

The adjust the boot loader entry, see below.

Linux-lts

On Arch Linux it is recommended to install a normal Linux plus a Linux-lts package in case something goes wrong with a new release or a package upgrade. In this case you can still boot the other kernel just fine. After installing Linux-lts add a bootloader entry.

Linux-hardened

Arch Linux provides with Linux-hardened a kernel with better security defaults. If you run a server and/or you want to use AppArmor, then this kernel is recommended.

Add Bootloader Entry

Before being able to boot to the new kernel, you will have to edit your bootloader config to switch to linux-git or linux-next. In the example below a new config file arch-linux-git.conf for systemd-boot entry will be added, but it can have another name depending from you Arch Linux distribution or if you use another bootloader like grub.

nano /boot/loader/entries/arch-linux-git.conf
title Arch Linux-git
linux /vmlinuz-linux-git
initrd /amd-ucode.img
initrd /intel-ucode.img
initrd /initramfs-linux-git.img
options root=UUID=9bede0c8-d51c-45a5-8ae5-eb30c4a4b235 rw quiet

If this is done, you can boot to the new kernel. After the UEFI/Bios screen press several times enter to get the systemd-boot menu, or if this change should be permanent, define the default like this:

$ nano /boot/loader/loader.conf
default arch-linux-git
timeout 0

VKMS

VKMS is a virtual kernel modesetting driver. It is developed as a google summer of code project in 2018 and first work has been merged to Linux 4.19. You can use it on a headless machine providing display output of Wayland or X11 without needing a real GPU, but it could use one if available as well. Wayland process will be added probably until end of 2018.