Kernels: Difference between revisions

From Alpine Linux
(fix link to -virt config)
(added wikilinks and reference to akms)
 
(22 intermediate revisions by 7 users not shown)
Line 1: Line 1:
Alpine Linux has [//pkgs.alpinelinux.org/packages?name=linux-*&branch=edge several kernels] designed to suit different situations.
Alpine Linux has several kernels (see {{Pkg|linux-*}}) designed to suit different situations.


* [//git.alpinelinux.org/aports/tree/main/linux-lts linux-lts] is the stock modular kernel and is configured for a generous selection of hardware.
* {{Pkg|linux-lts}} — Long-term support kernel, configured for a generous selection of hardware
* linux-virt ([//git.alpinelinux.org/aports/tree/main/linux-lts linux-lts], see the -virt configs) is recommended for Alpine Linux guests, and disables most hardware in favor of a commonly-virtualized subset of drivers.
** {{Pkg|linux-virt}} — Long-term support kernel, configured for VM guests (disables most hardware in favor of a commonly-virtualized subset of drivers)
* [//git.alpinelinux.org/aports/tree/main/linux-rpi linux-rpi] is optimized for the Raspberry Pi.
* {{Pkg|linux-stable}} &mdash; Stable kernel, configured for a generous selection of hardware <i>Only supported in <code>community</code>. For Alpine 3.22 and older there was {{pkg|linux-edge|branch=v3.21|arch=}}, see [[Release_Notes_for_Alpine_3.23.0#linux-stable_replaces_linux-edge]]</i>


For installing a custom kernel, see [[Custom Kernel]]. To select a specific kernel or firmware packages during installation from the Alpine ISO, simply install the desired kernel flavor and firmware packages with <code>apk add</code> before running <code>setup-alpine</code>.
* {{pkg|linux-rpi|arch=}} &mdash; Raspberry Pi's kernel, configured for the Raspberry Pi. <i>For Alpine 3.18 and older there is also {{pkg|linux-rpi2|branch=v3.18|arch=}} and {{pkg|linux-rpi4|branch=v3.18|arch=}} optimized for the Raspberry Pi 2 and 4 respectively.</i>
* {{Pkg|linux-openpax}} &mdash; Kernel with OpenPAX patches which provide a layer of defense against memory safety-related vulnerabilities. <i>Only supported in <code>community</code></i>
 
For installing a custom kernel, see [[Custom Kernel]]. To select a specific kernel or firmware packages during installation from the Alpine ISO, simply install the desired kernel flavor and firmware packages with {{ic|apk add}} before running {{ic|setup-alpine}}.


== Firmware ==
== Firmware ==


The [//pkgs.alpinelinux.org/package/edge/main/x86/linux-firmware linux-firmware] meta-package is included in the [[Installation|default installation]], and depends on all firmware. This is a large download, and you may be better served by installing [//pkgs.alpinelinux.org/packages?name=linux-firmware-*&branch=edge only the firmwares you need], or [//pkgs.alpinelinux.org/package/edge/main/x86/linux-firmware-none linux-firmware-none] if you do not require any firmware. If you're unsure which firmware you need, boot up with no firmware installed and run <code>dmesg | grep firmware</code> to get an idea. Be aware that most firmware is nonfree.
The {{Pkg|linux-firmware}} meta-package is included in the [[Installation|default installation]], and depends on all firmware. It is a large download and due to this reason, installation of this package can produce errors on [[Installation#Diskless Mode|diskless]] or [[Installation#Data Disk Mode|data disk]] modes. If such errors occur, switch to [[Installation#System Disk Mode|system disk]] mode.
 
You may be better served by installing only the firmware you need (see {{Pkg|linux-firmware-*}}), or {{Pkg|linux-firmware-none}} if you do not require any firmware. If you're unsure which firmware you need, boot with no firmware installed and run below command to to get an idea. {{Cmd|<nowiki># dmesg|grep firmware</nowiki>}}
 
Be aware that most firmware is non-free.
 
[[Alpine kernel module support|Alpine kernel module support]](AKMS) page has information on the out-of-tree kernel module driver packages available in Alpine Linux and [[Alpine kernel module support#Using AKMS|how to use]] them.
 
== Experimental Kernels ==
 
Some kernels are not well tested and are therefor only available in the testing repository. Use at your own risk.
 
* {{pkg|linux-asahi|arch=aarch64}} &mdash; Apple Silicon devices, see https://asahilinux.org/
* {{pkg|linux-elm|arch=aarch64}} &mdash; Elm chromebooks
* {{pkg|linux-gru|arch=aarch64}} &mdash; Gru chromebooks
* {{Pkg|linux-eswin}} &mdash; [https://github.com/jmontleon/linux-eswin Linux lts kernel] - RISC-V
* {{pkg|linux-sophgo|arch=riscv64}} &mdash; Sophgo RISC-V SoC's
* {{pkg|linux-p550|arch=riscv64}} &mdash; SiFive P550 RISC-V SoC's
* {{pkg|linux-starfive|arch=riscv64}} &mdash; Starfive RISC-V SoC's
* {{pkg|linux-jh7100|arch=riscv64}} &mdash; Starfive JH7100 SoC
* {{pkg|linux-spacemit|arch=riscv64}} &mdash; SpacemiT RISC-V SoC's
 
== See also ==


* [[Custom Kernel]]
* [[How to build the Alpine Linux kernel]]
* [https://wiki.archlinux.org/title/Kernel Kernel - Archwiki]


[[category:Kernel]]
[[category:Kernel]]

Latest revision as of 09:37, 9 December 2025

Alpine Linux has several kernels (see linux-*) designed to suit different situations.

  • linux-rpi — Raspberry Pi's kernel, configured for the Raspberry Pi. For Alpine 3.18 and older there is also linux-rpi2 and linux-rpi4 optimized for the Raspberry Pi 2 and 4 respectively.
  • linux-openpax — Kernel with OpenPAX patches which provide a layer of defense against memory safety-related vulnerabilities. Only supported in community

For installing a custom kernel, see Custom Kernel. To select a specific kernel or firmware packages during installation from the Alpine ISO, simply install the desired kernel flavor and firmware packages with apk add before running setup-alpine.

Firmware

The linux-firmware meta-package is included in the default installation, and depends on all firmware. It is a large download and due to this reason, installation of this package can produce errors on diskless or data disk modes. If such errors occur, switch to system disk mode.

You may be better served by installing only the firmware you need (see linux-firmware-*), or linux-firmware-none if you do not require any firmware. If you're unsure which firmware you need, boot with no firmware installed and run below command to to get an idea.

# dmesg|grep firmware

Be aware that most firmware is non-free.

Alpine kernel module support(AKMS) page has information on the out-of-tree kernel module driver packages available in Alpine Linux and how to use them.

Experimental Kernels

Some kernels are not well tested and are therefor only available in the testing repository. Use at your own risk.

See also