
Fast and secure initramfs generator

Booster makes early boot feel lighter, faster, and more dependable. It builds compact initramfs images that move your Linux system from firmware to the real root filesystem with minimal fuss and strong encrypted-boot support.
Instead of packing a large generic early userspace, Booster discovers what your machine actually needs and builds a focused image around it. The result is a lean boot image with the drivers, unlock tools, filesystem support, and recovery paths your host needs, without carrying a kitchen sink into every reboot.
Booster is built around a simple promise: early boot should be quick, clear, secure, and pleasant to operate.
Highlights:
systemd-cryptenroll TPM2 and FIDO2 tokens, including native FIDO2 support through Booster's plugin path.Booster is a strong fit for encrypted laptops, developer workstations, servers with remote recovery needs, minimal Linux systems, and boot setups that should stay understandable years after you configured them.
Booster treats full-disk encryption as a first-class workflow, not an add-on.
It can unlock LUKS devices from kernel parameters, /etc/crypttab, GPT autodiscovery, direct root= references to LUKS containers, keyfiles, detached headers, and hardware-backed tokens.
Supported unlock styles include:
systemd-cryptenroll TPM2 and FIDO2 tokens.Booster's token orchestration is designed to make encrypted boot feel polished. Non-interactive tokens can race in the background, PIN-based tokens are prompted in a deterministic order, and the regular passphrase prompt appears as a fallback instead of blocking the whole boot forever.
Recent FIDO2 improvements make the experience smoother:
enable_fido2: true.crypttab entry with fido2-device= can cause Booster to bundle the FIDO2 plugin automatically.By default, Booster builds a host-specific image. It looks at the current system, includes the modules and tools needed to boot it, and leaves out unnecessary pieces. That keeps the image easier to audit, faster to generate, and faster to execute during boot.
When you need a broader image, --universal includes a wider set of modules for rescue scenarios, portable media, or systems where hardware may change.
Booster supports practical real-world boot layouts, including:
UUID=, LABEL=, PARTUUID=, PARTLABEL=, HWPATH=, WWID=, or /dev/..../etc/crypttab.When something goes wrong, Booster gives you useful ways to see what happened.
Use booster.log=debug,console for detailed boot logs, add busybox for an emergency shell, or enable network support to retrieve logs from an unbootable machine.
Booster also includes image-inspection commands so you can verify what was built before rebooting:
booster ls /boot/booster-linux.img
booster cat /boot/booster-linux.img /init
booster unpack /boot/booster-linux.img /tmp/booster-image
Install the official package:
pacman -S booster
The package creates Booster images in /boot/:
$ ls -lh /boot/booster-*.img
-rwxr-xr-x 1 root root 3.9M Dec 10 20:51 /boot/booster-linux.img
Install Booster with:
xbps-install -S booster
Then regenerate the initramfs for an already installed kernel:
xbps-reconfigure -f linux
Install Booster with:
apk add booster
Then read /usr/share/doc/booster/README.alpine for setup-specific bootloader instructions.
Booster is not in Fedora's repositories. Build the RPM from a checkout:
dnf install rpm-build golang gcc git-core libfido2-devel rubygem-ronn-ng systemd-rpm-macros
./packaging/fedora/createpkg.sh
dnf install ~/rpmbuild/RPMS/x86_64/booster-*.rpm
Then select Booster as the generator in /etc/kernel/install.conf, so images are rebuilt on kernel updates:
initrd_generator=booster
You can also build an image directly:
booster build /boot/booster-linux.img
For a more portable image with a wider hardware set:
booster build --universal /boot/booster-linux.img
After creating the image, point your bootloader at it. For full configuration details, see the Booster manpage.
Create a host-specific image:
booster build booster.img
Create an image for a specific kernel:
booster build --kernel-version 6.8.9-arch1-1 /boot/booster-linux.img
Inspect the generated image:
booster ls /boot/booster-linux.img
Regenerate packaged images after changing /etc/booster.yaml:
/usr/lib/booster/regenerate_images
Generate a Unified Kernel Image when your distribution provides systemd-ukify:
/usr/lib/booster/regenerate_uki build /boot/EFI/Linux
Booster is intentionally small to configure. A simple encrypted laptop often needs no large config file at all. Add only the features your boot path needs: