Libreboot 20230625 released!

Leah Rowe

25 June 2023


Return to index

Article published by: Leah Rowe

Date of publication: 25 June 2023

IMPORTANT ADVICE: PLEASE READ THESE INSTRUCTIONS BEFORE INSTALLING/UPDATING LIBREBOOT.

Introduction

Libreboot provides boot firmware for supported x86/ARM machines, starting a bootloader that then loads your operating system. It replaces proprietary BIOS/UEFI firmware on x86 machines, and provides an improved configuration on ARM-based chromebooks supported (U-Boot bootloader, instead of Google’s depthcharge bootloader). On x86 machines, the GRUB and SeaBIOS coreboot payloads are officially supported, provided in varying configurations per machine. It provides an automated build system for the configuration and installation of coreboot ROM images, making coreboot easier to use for non-technical people. You can find the list of supported hardware in Libreboot documentation.

Libreboot’s main benefit is higher boot speed, better security and more customisation options compared to most proprietary firmware. As a libre software project, the code can be audited, and coreboot does regularly audit code. The other main benefit is freedom to study, adapt and share the code, a freedom denied by most boot firmware, but not Libreboot! Booting Linux/BSD is also well supported.

This new release, Libreboot 20230625, released today 25 June 2023, is a new stable release of Libreboot. The previous stable release was Libreboot 20220710, released on 10 July 2022.

A note about the changelog

The changes listed here are relative to Libreboot 20230423, not 20220710. Therefore, to get a full list of changes since 20220710 (the previous stable release, where releases in-between then and now were testing), you should read the 20221214, 20230319, 20230413 and 20230423 announcements before reading the 20230625 change log, in order to get a complete picture.

Build from source

This release was build-tested on Debian Sid, as of 25 June 2023. Your mileage may vary, with other distros. Refer to Libreboot documentation.

Work done since last release

New mainboards now supported:

These boards were added to Libreboot:

The focus has been on stability, auditing the build system and fixing bugs, thus hardware support is not greatly improved since the last release. Moving forward, the next Libreboot release will be a testing release and will focus on hardware support in addition to payloads (linux boot, UEFI etc).

No-microcode ROMs available

Since Libreboot 20221214 and up, CPU microcode is included by default on all applicable x86 mainboards. However, Libreboot provided (and still provides) documentation for how to manually remove it.

Such removal is still possible, but this release now provides two sets of ROM images for each x86 mainboard: one set of ROMs will contain CPU microcode, and another set excludes them. For more context, see Binary Blob Reduction Policy and Freedom Status.

An earlier article was written about this, here

Massive build system audit

The full change log below will list all build system changes, but may not provide the overall picture, so to be clear: the Libreboot build system has undergone an intense audit since the last release. Over half of it has been re-written, or heavily re-factored. The logic is much cleaner now (better coding style, based on the OpenBSD coding style) and many bugs are fixed.

An earlier article was written about this, here

Full list of build system changes

Certain build system changes will not be listed here in detail, if they pertain to general code style cleanup/re-factoring, as already alluded to in the section above. However, specific bug fixes will be listed here, some of which are also referenced in the article linked above.

Newest changes first, oldest changes last:

Hardware supported in this release

All of the following are believed to boot, but if you have any issues, please contact the Libreboot project. They are:

Desktops (AMD, Intel, x86)

Laptops (Intel, x86)

Laptops (ARM, with U-Boot payload)

Downloads

You can find this release on the downloads page. At the time of this announcement, some of the rsync mirrors may not have it yet, so please check another one if your favourite one doesn’t have it.

Post-release errata

When building ROM images from the release archives, the following error is observed in some cases, depending on distro:

In file included from src/lib/version.c:4:
build/build.h:10:32: error: 'libreboot' undeclared here (not in a function)
   10 | #define COREBOOT_MAJOR_VERSION libreboot-20230625
      |                                ^~~~~~~~~
src/lib/version.c:35:46: note: in expansion of macro 'COREBOOT_MAJOR_VERSION'
   35 | const unsigned int coreboot_major_revision = COREBOOT_MAJOR_VERSION;
      |                                              ^~~~~~~~~~~~~~~~~~~~~~

This happened when a user tried to build for ThinkPad W541 on an Arch Linux system. The fix is available here:

https://browse.libreboot.org/lbmk.git/patch/?id=f34e07ae27e3e6e8508cdebcbd09fdf73fca302d

Apply this patch to your local release archive, and it should fix the issue.

Markdown file for this page: https://libreboot.org/news/libreboot20230625.md

Subscribe to RSS for this site

Site map

This HTML page was generated by the Untitled Static Site Generator.