Alpine Linux on Redmi Book 16 Meteor Lake

Why Alpine Linux ?

For the past 8 years, I have installed Arch Linux almost every time. Initially, I made many mistakes that might have appeared as instability in the operating system, but I no longer think that. The reasons may be a combination of well-coded software like sway adhering to the KISS principle, the maturity of the operating system, and my own experience.

The Arch Wiki has accurately helped me solve most of my problems, even for other operating systems. It is also the best operating system for training neural networks, as most of the necessary drivers and libraries are available directly from the package manager.

Why Moving Out of Arch Linux?

  1. SystemD follows the opposite of the KISS principle; it works if you don’t want to understand, but it is too complex for what I use it for.
  2. Only x86 architecture (with other initiatives like Arch Linux ARM, but it doesn’t feel the same)

So Alpine Linux

  1. OpenRC
  2. x86, RISC-V, ARM
  3. PostmarketOS for smartphones
  4. Recommendation from Drew DeVault

Installation

Both Arch Linux and Alpine Linux are installed from the console with raw commands for the former, and scripts or raw commands for the latter. It is really useful to understand how it can be repaired.

It is mostly the same as the documentation, but I needed to create a custom Alpine image to include a missing firmware for an Intel AX211 Wi-Fi module.

Configuration

Alpine Linux recommends using the long-term support kernel (linux-lts) but my i7-155H platform takes advantage of the latest updates in the kernel, making linux-edge preferable.

Out of the box, the touchpad worked on linux-lts, but not on linux-edge. I didn’t find the cause and after some days, I installed Arch Linux alongside Alpine using LVM resizing. With the same kernel version, the touchpad works on Arch Linux. Around the same time, I read an issue on the Alpine Linux GitLab page and found people asking to enable more modules on the edge kernel.

So, I took a look at the module configuration in the aports repository, searching for differences between Arch and Alpine. First, I looked for subtleties and then examined everything that had some commonality with my platform (like all PCI Designware modules). Two months ago, I found the correct configuration for the touchpad by compiling the kernel with more modules, and it has been my daily driver since then.

Now, sleep is still not perfect, and the internal microphone is not working. I still need to add the nvme_core.default_ps_max_latency_us=0 kernel parameter because the NVME driver does not wake correctly after sleep.