Skip to content

Arch Linux initramfs generation tools (read-only mirror)


Notifications You must be signed in to change notification settings


Repository files navigation


mkinitcpio is a modular initramfs image creation utility. 🐏

1. Dependencies

mkinitcpio has the following dependencies.

  • GNU awk

  • A static build of busybox installed at /usr/lib/initcpio/busybox

  • kmod

  • util-linux

  • bsdtar from libarchive

  • GNU Coreutils

  • Bash

  • GNU Binutils

  • GNU Diffutils

  • GNU Findutils

  • GNU Grep

  • gzip (the default initramfs compressor for Linux < 5.9)

  • zstd (the default initramfs compressor for Linux ≥ 5.9)

Optional dependencies:
  • systemd: for systemd-based initramfs

  • xz: for lzma and xz initramfs compression/decompression

  • bzip2: for initramfs compression/decompression

  • lzop for lzo initramfs compression/decompression

  • lz4 for initramfs compression/decompression

  • systemd-ukify: build UKIs using ukify instead of objcopy

Build time dependencies:
  • Asciidoctor (or alternatively a2x from to create man pages

  • Bash Automated Testing System (bats) and bats-assert for tests

  • ShellCheck for tests

2. Contributing

mkinitcpio development happens on the Arch Linux GitLab instance: All issues and merge request should be submitted there.

Development discussion can be held in the #archlinux-projects IRC channel on Libera Chat and the arch-projects mailing list.

Before contributing, make yourself familiar with the Arch Linux code of conduct and mkinitcpio coding style.

3. User documentation

Primary usage documention is available in the mkinitcpio(8), lsinitcpio(1) and mkinitcpio.conf(5) man pages.

A comprehensible user guide is available in the mkinitcpio article on ArchWiki.

4. License

This project is licensed under the terms of the GPL-2.0-only. See LICENSE.

Copyright 🄯 mkinitcpio contributors. See the AUTHORS file or git log for the full list of authors.