akms icon indicating copy to clipboard operation
akms copied to clipboard

Alpine Kernel Module Support – aka DKMS for Alpine Linux

= Alpine Kernel Module Support (AKMS) :proj-name: akms :gh-name: jirutka/{proj-name}

AKMS is a tool that enables building out-of-tree (external) Linux kernel modules from source for each installed kernel on the user’s system in an automated and organized fashion. The concept is to have kernel modules automatically rebuilt when a new kernel version is installed.

AKMS is inspired by https://github.com/dell/dkms[DKMS] (Dynamic Kernel Module Support) used on many Linux distributions. It has been designed specifically for https://alpinelinux.org/[Alpine Linux] and https://gitlab.alpinelinux.org/alpine/apk-tools[APK]; implemented with simplicity, reliability, and security in mind.

See the following manual pages for more information.

== Manual Pages

  • link:akms.8.adoc[akms(8)]
  • link:akms.conf.5.adoc[akms.conf(5)]
  • link:AKMBUILD.5.adoc[AKMBUILD(5)]

== Requirements

.Runtime:

  • http://pubs.opengroup.org/onlinepubs/9699919799/utilities/V3_chap02.html[POSIX-sh] compatible shell with pipefail (e.g. Busybox ash, ZSH, bash, …)
  • env, grep, install, mount, umount, sed, su, tr (Busybox or GNU)
  • depmod from https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git[kmod]
  • https://gitlab.alpinelinux.org/alpine/apk-tools[apk-tools]
  • https://github.com/containers/bubblewrap[bubblewrap]
  • Linux kernel with OverlayFS and namespaces

.Build:

  • https://www.gnu.org/software/make/[GNU Make]
  • http://asciidoctor.org/[Asciidoctor] (for building man pages)

== Installation

Install package https://pkgs.alpinelinux.org/packages?name={proj-name}[{proj-name}] on Alpine Linux v3.15 or later:

[source, sh, subs="+attributes"] apk add {proj-name}

== License

This project is licensed under http://opensource.org/licenses/MIT/[MIT License]. For the full text of the license, see the link:LICENSE[LICENSE] file.