Skip to content

Arch Linux initramfs generation tools (read-only mirror)

License

Notifications You must be signed in to change notification settings

archlinux/mkinitcpio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

README

mkinitcpio is a modular initramfs image creation utility. 🐏

1. Dependencies

mkinitcpio has the following dependencies.

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:
  • Meson

  • Asciidoctor (or alternatively a2x from AsciiDoc.py) to create man pages

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

  • ShellCheck for tests

Instructions for building are available in CONTRIBUTING.adoc.

2. Contributing

mkinitcpio development happens on the Arch Linux GitLab instance: https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio. 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 documentation 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.