booster-um config file is located at /etc/booster-um.yaml
. It is empty by default, but here is an example configuration:
sign_uki: true
sbsign: false
colors: true
efistub: true
microcode: true
low_memory: false
enable_splash: true
remove_leftovers: true
generate_fallback: true
cmdline: >
root=LABEL=arch_root
rw
quiet
loglevel=3
udev.log_level=3
sysrq_always_enabled=1
fallback_cmdline: >
root=LABEL=arch_root
rw
sysrq_always_enabled=1
kernel_config:
cmdline_per_kernel: false
share_default_cmdline: false
default_initramfs: [default, fallback]
default_splash: /usr/share/systemd/bootctl/splash-arch.bmp
linux:
# splash:
# cmdline:
# fallback_cmdline:
initramfs: [default]
booster_config: |
compression: zstd
extra_files: busybox,fsck,fsck.ext4
linux-lts:
splash: false
# cmdline:
# fallback_cmdline:
initramfs: [fallback]
# linux-zen:
efistub_config:
default_entry: linux
append_entries: true
sbsign_config:
pcr_banks: sha1,sha256,sha384,sha512
pcr_private_key: /path/to/pcr-private-key.pem
pcr_public_key: /path/to/pcr-public-key.pem
secureboot_private_key: /path/to/DB.key
secureboot_certificate: /path/to/DB.crt
sign_uki: true
sbsign: false
colors: true
efistub: true
microcode: true
low_memory: false
enable_splash: true
remove_leftovers: true
generate_fallback: true
cmdline: >
root=LABEL=arch_root
rw
quiet
fallback_cmdline: "root=LABEL=arch_root rw"
-
sign_uki
manages the UKI signing. If enabled,sbctl
(orsbsign
), will sign generated UKI files. If it is not specified, its value is set totrue
-
sbsign
manages UKI signing using thesbsign
tool. If enabled,sbsign
will be used instead ofsbctl
. After enabling this type of signing, the options in thesbsign_config
node can be set arbitrarily. If it is not specified, its value is set tofalse
-
colors
colors the output of the booster-um. If it is not specified, its value is set totrue
-
efistub
manages EFI entries. If enabled,booster-um
will create a new EFI entry. If it is not specified, its value is set tofalse
-
microcode
manages the inclusion of the microcode images (intel-ucode and amd-ucode). If it is not specified, its value is set totrue
-
low_memory
is an option that prevents high memory usage, especially when fallback images are generated. Instead of generating initramfs in parallel, booster-um will generate initramfs one by one. This is certainly slower, but takes up less memory. If it is not specified, its value is set tofalse
-
enable_splash
is an option that enables splash screen. If you want to disable splash for all specified or unspecified kernels underkernel_config
node, set it tofalse
. By default this option is enabled and/usr/share/systemd/bootctl/splash-arch.bmp
splash will be used (you can change it withdefault_splash
option underkernel_config
node) -
remove_leftovers
manages the removal of leftovers when generating the UKI files. Besides the vmlinuz and booster files, EFI entries, fallback images and kernel cmdlines are treated as leftovers, they will be removed ifefistub
,cmdline_per_kernel
,generate_fallback
options are disabled. If enabled, leftovers will always be removed after generating UKI files. Leftovers will always be removed if you manually delete the UKI for the specified kernel or all installed kernels (booster-um -r <package>
orbooster-um -R
/booster-um -C
). If it is not specified, its value is set totrue
-
generate_fallback
manages the creation of fallback (universal) UKI files. Only fallback images will be generated ifuniversal
flag is enabled in the/etc/booster.yaml
config. If it is not specified, its value is set tofalse
-
cmdline
is the default kernel cmdline and is used by all kernels. Ifcmdline
is not defined here, booster-um will try to use the cmdline from/etc/kernel/cmdline
file. If cmdline is not defined neither in the config nor in the/etc/kernel/cmdline
file, the current cmdline from/proc/cmdline
will be used. Kernel parameters can be written in multiple lines after the>
sign. For example:cmdline: > root=LABEL=arch_root rw quiet
-
fallback_cmdline
is same ascmdline
but for fallback kernel images. If it is not defined here, booster-um will try to use the cmdline from/etc/kernel/fallback-cmdline
file. If cmdline is not defined neither in the config nor in the/etc/kernel/fallback-cmdline
file, the current cmdline from/proc/cmdline
will be used
kernel_config:
cmdline_per_kernel: false
share_default_cmdline: false
default_initramfs: [default, fallback]
default_splash: /path/to/splash.bmp
linux:
cmdline: >
root=LABEL=arch_root
rw
quiet
fallback_cmdline: "root=LABEL=arch_root rw"
initramfs: [default]
booster_config: |
compression: zstd
extra_files: busybox,fsck,fsck.ext4
linux-lts:
splash: false
cmdline: "root=LABEL=arch_root rw quiet"
fallback_cmdline: "root=LABEL=arch_root rw"
initramfs: [fallback]
pkgbase
= kernel package name (linux, linux-lts, linux-zen, etc.)
kernel_config
node provides kernel configuration:
-
cmdline_per_kernel
manages the creation of the cmdline per kernel. If this option is enabled, each kernel will use a separate cmdline which can be defined underpkgbase
node within thecmdline
option. If it is not specified, its value is set tofalse
-
share_default_cmdline
allows default cmdline to be shared with the cmdline of the specified kernel pkgbase under thekernel_config
node. The default cmdlinecmdline
,fallback_cmdline
or/etc/kernel/cmdline
,/etc/kernel/fallback-cmdline
files will be used as a shared cmdline for all kernels. That means that the kernel cmdline specified underpkgbase
node, will be added to the default cmdline. This option only takes effect if thecmdline_per_kernel
option is enabled. By default this option is set tofalse
-
default_initramfs
array provides initramfs type configuration for all other unspecified kernels. You can specify up to two types,default
andfallback
. if not defined, its values will bedefault
andfallback
Note: If you specified
fallback
type, you must enablegenerate_fallback
, otherwise it will generatedefault
images only
-
default_splash
a picture to display during boot. This is the default splash for all unspecified kernels underkernel_config
node. The argument is a path to a BMP file. The default/usr/share/systemd/bootctl/splash-arch.bmp
picture will be used if this path is invalid or not specified. To disable splash screen for all unspecified pkgbases underkernel_config
node, simply set this option tofalse
or leave it blank, for example:# valid options kernel_config: default_splash: default_splash: '' default_splash: "" default_splash: false
-
pkgbase
(kernel package name, below as$pkgbase
) node provides additional configuration for specified kernel package name:-
splash
a picture to display during boot for the specified kernel. To disable splash screen for specified kernel pkgbase, simply set this option tofalse
or leave it blank. Ifsplash
is not defined, thedefault_splash
option outside the$pkgbase
node, will be used -
cmdline
is the cmdline for the specified kernel. This cmdline will be applied if thecmdline_per_kernel
option is enabled. Ifcmdline
is not defined here, booster-um will try to use the cmdline from/etc/kernel/$pkgbase.cmdline
file. If cmdline is not defined neither in the config nor in the/etc/kernel/$pkgbase.cmdline
, booster-um will try to use the defaultcmdline
outside thekernel_config
node -
fallback_cmdline
is same ascmdline
but for fallback kernel images. If it is not defined here, booster-um will try to use the cmdline from/etc/kernel/$pkgbase-fallback.cmdline
file. If cmdline is not defined neither in the config nor in the/etc/kernel/$pkgbase-fallback.cmdline
, booster-um will try to use the defaultfallback_cmdline
outside thekernel_config
node -
initramfs
provides initramfs type configuration for specified kernel. Here you can specify up to two types,default
andfallback
. If it is not defined, thedefault_initramfs
will be used -
booster_config
provides additional booster configuration for specified kernel. Booster configuration can be written in multiple lines after the|
sign. You can read here about booster configuration. For example:booster_config: | compression: lz4 extra_files: busybox,fsck,fsck.ext4
Note: If you enable
universal
flag here, booster-um will only create a fallback UKI for the specified kernel even ifgenerate_fallback
is disabled, orinitramfs
(default_initramfs
) has the fallback type specified. -
efistub_config:
default_entry: linux
append_entries: true
efistub_config
node provides additional efistub configuration:default_entry
makes sure that the EFI entry of the specified kernel is the first in the EFI boot order. If fallback UKI is generated for the specified kernel, its EFI entry will be added after the default entry. After changing its value, it is enough to regenerate all images (booster-um -G
)append_entries
takes care of where new EFI entries will be added to the boot order. If enabled , newly created EFI entries will be added to the end of the boot order, otherwise they will be added to the beginning. If it is not specified, its value is set totrue
sbsign_config:
pcr_banks: sha1,sha256,sha384,sha512
pcr_private_key: /path/to/pcr-private-key.pem
pcr_public_key: /path/to/pcr-public-key.pem
secureboot_private_key: /path/to/DB.key
secureboot_certificate: /path/to/DB.crt
sbsign_config
node providessbsign
configuration:pcr_banks
a comma separated list of PCR banks to sign a policy forpcr_private_key
a path to a private key to use for signing PCR policiespcr_public_key
a path to public key to use for signing PCR policiessecureboot_private_key
a path to a private key to use for signing of the UKI filesecureboot_certificate
a path to a certificate to use for signing of UKI file