openSUSE Tumbleweed Now Ships with GRUB2-BLS by Default for New Installs

openSUSE Tumbleweed switches to GRUB2-BLS as default, improving boot speed, compatibility, and systemd integration.

openSUSE Tumbleweed has officially replaced its traditional GRUB2 boot loader with GRUB2-BLS when installing the system via YaST. It is a variant of the traditional GRUB2 that supports the Boot Loader Specification (BLS) — a modern standard defining how Linux systems store and manage boot entries.

Instead of using a single large configuration file like grub.cfg, GRUB2-BLS reads small, individual text files (called Type #1 entries) located in /boot/efi/loader/entries. Each file describes how to boot a kernel, including its initrd and command line options.

The switch follows a trend that began with openSUSE MicroOS, which uses systemd-boot—a lightweight, fast, and fully BLS-compliant boot loader developed as part of the systemd project. GRUB2-BLS, by contrast, remains GRUB at its core but incorporates patches from Fedora that add support for the Boot Loader Specification’s Type #1 entries.

With the latest YaST installer, the transition to GRUB2-BLS occurs automatically during a default installation. The process now creates a larger EFI System Partition (ESP)—typically around 1 GB—since kernels and initrds are now placed directly inside the ESP under /boot/efi/opensuse-tumbleweed.

For users who prefer a different boot loader, such as the traditional GRUB2 or systemd-boot, YaST still allows manual selection during the installation’s final configuration screen under “Installation Settings > Booting.”

YaST allows you to select the older GRUB2 boot manager during the installation process.
YaST allows you to select the older GRUB2 boot manager during the installation process.

According to devs, by adopting GRUB2-BLS, the distro aims to simplify the integration of new features—most notably, systemd-based full-disk encryption that leverages TPM2 or FIDO2 hardware tokens when available.

Additionally, in a traditional GRUB2 setup, the boot menu and kernel parameters are defined inside a single, automatically generated file called grub.cfg. With GRUB2-BLS, this workflow changes completely as the grub.cfg file is no longer used to store boot entries, and the boot menu is built dynamically from the Type #1 entries.

Lastly, once again, with openSUSE Tumbleweed’s switch to GRUB2-BLS, the new boot loader becomes the default only for fresh installations performed through YaST. Existing systems using GRUB2-EFI will continue to function as before. According to the openSUSE Factory mailing list discussion, an automatic migration from grub2-efi to grub2-bls is not planned.

For more information, see the announcement.

Bobby Borisov

Bobby Borisov

Bobby, an editor-in-chief at Linuxiac, is a Linux professional with over 20 years of experience. With a strong focus on Linux and open-source software, he has worked as a Senior Linux System Administrator, Software Developer, and DevOps Engineer for small and large multinational companies.

Leave a Reply

Your email address will not be published. Required fields are marked *