mkinitcpio.conf - mkinitcpio configuration file
mkinitcpio will attempt to read from a configuration file each
time it is invoked, /etc/mkinitcpio.conf by default. This file
defines several variables which describe the contents of the image to be
generated. In addition to the "main" configuration file, drop-in
configuration snippets are read from /etc/mkinitcpio.conf.d/*.conf.
These drop-ins have higher precedence and override the main configuration
file.
MODULES
Defines an array of additional modules which should be
added to the image. Dependencies (including other modules and necessary
firmware), will also be added to the image. At runtime, the modules in this
array which were successfully added to the image will be explicitly
loaded.
FILES
Defines an array of additional files which should be
added to the image. Files are added as is, and parent directories will be
added if needed. Files specified in this variable will override previously
added files of the same path.
BINARIES
Defines an array of additional binaries which should be
added to the image. These are assumed to be dynamic ELF binaries, and
necessary shared library dependencies will automatically be added. However, it
is not considered an error to specify a non-ELF binary in this variable.
Parent directories will be added if needed. Files specified in this variable
will override previously added files of the same path.
HOOKS
Defines an array of hooks which will be run during the
build process. Order is important, as it defines the order in which hooks will
be run during bootup. Use mkinitcpio’s -L flag to list all
available hooks, and the -H flag to display the help text for a
specific hook.
COMPRESSION
Defines a program to filter the generated image through.
The kernel understands the compression formats yielded by the
zstd(1),
gzip(1),
bzip2(1),
lz4(1),
lzop(1),
lzma(1), and
xz(1) compressors. If unspecified, this setting
defaults to
zstd compression for Linux ≥ 5.9 and gzip
compression for Linux < 5.9. In order to create an uncompressed image,
define this variable as
cat.
It is not hard to realize that a filter such as a tac or
rev will cause mkinitcpio to report success but generate a
useless image. Similarly, using a compression program not listed above may
generate an equally useless image, despite being "valid".
COMPRESSION_OPTIONS
Defines an array of additional options to be passed to
the compression program. This option is generally not used. It can be
potentially dangerous and may cause invalid images to be generated without any
sign of an error.
MODULES_DECOMPRESS
Switch (
yes/
no) to decide whether loadable
kernel modules and their firmware should remain compressed or be uncompressed
during initramfs creation. Disabled by default to avoid recompressing the
files using a lower compression and to reduce RAM usage during early boot.
Enable to allow further decreasing image size when using high compression
(e.g.
xz -9e or
zstd --long --ultra -22) at the expense of
increased RAM usage at early boot.
Note that any compressed files will be placed in the uncompressed
early CPIO to avoid double compression.
mkinitcpio is maintained by the Arch Linux community. Refer to the
AUTHORS file for a full list of contributors.
Copyright 🄯 mkinitcpio contributors. GPL-2.0-only.