coreboot and Libreboot Explained: Open Source Firmware for Your PC

coreboot and Libreboot Explained: Open Source Firmware for Your PC

Every PC runs firmware before the operating system: the BIOS or UEFI that initialises the processor, memory, and devices, then finds a bootloader. That firmware is normally proprietary, large, and rarely updated. coreboot is the open source alternative, and Libreboot 26.10 just made it easier to use by switching to UEFI by default.

What firmware does

At power on, firmware has to:

  1. Initialise the CPU and memory controller (RAM training)
  2. Set up chipset, PCIe, USB, and storage controllers
  3. Provide an interface the OS expects (UEFI or legacy BIOS)
  4. Find and start a bootloader

Vendor UEFI firmware does all of this in one large proprietary package. Our BIOS vs UEFI explainer covers the interface side.

How coreboot is different

coreboot splits the job in two:

  • coreboot itself does the minimum hardware initialisation, quickly, then hands off
  • A payload provides the boot interface
PayloadProvidesGood for
EDK2 (Tianocore)UEFIBooting modern Linux, Windows, Secure Boot
SeaBIOSLegacy BIOSOlder operating systems
GRUBGRUB directly in flashEncrypted boot without a separate bootloader
U-BootU-BootARM and some x86 setups
LinuxBootA Linux kernel as the bootloaderServers

Because coreboot only does what is necessary, machines often boot noticeably faster, and the code can be audited.

coreboot distributions

Building coreboot yourself means configuring it for your exact board. Most people use a distribution that provides tested images:

  • Libreboot: ready-made images for older ThinkPads, OptiPlexes, some desktops and servers, and now many Chromebooks, with a policy of reducing proprietary code where possible. 26.10 makes EDK2 UEFI the default on x86
  • Dasharo: commercially supported coreboot with UEFI for specific desktops, laptops, and network appliances, from 3mdeb
  • MrChromebox: UEFI firmware for Chromebooks, letting them run standard Linux distributions
  • Vendor firmware: System76, Star Labs, NovaCustom, and others ship coreboot-based firmware from the factory, with updates through their own tools or fwupd

The blob question

On modern Intel and AMD hardware, some proprietary pieces are unavoidable:

  • CPU microcode, which fixes processor bugs, including security issues
  • Memory initialisation code from Intel (FSP) or AMD
  • The Intel Management Engine or AMD Platform Security Processor firmware, a separate processor inside the chipset

coreboot can run with these blobs and still replace everything else. Libreboot keeps them to the minimum the hardware needs. Fully blob-free firmware is only possible on some older platforms, which is why the free software community’s favourite machines are often older ThinkPads.

Should you flash it?

Reasons to: faster boot, firmware you can inspect and update yourself, continued updates for machines the vendor abandoned, features like GRUB-in-flash for fully encrypted boot, and turning Chromebooks into normal Linux laptops.

Reasons not to:

  • Bricking risk. A wrong image or interrupted flash can leave the machine dead. Recovery needs an external SPI programmer (a cheap CH341A or a Raspberry Pi) and a clip on the flash chip
  • Some machines need external flashing even the first time, because the vendor firmware locks the flash chip
  • You may lose vendor features, such as some power management or Secure Boot defaults, depending on the image
  • Not every model is supported, and support for a model does not mean every revision of it

The basic process

Steps differ by machine, so always follow the instructions for your exact model. The outline:

  1. Read and save the original firmware, twice, and compare the copies:
sudo flashprog -p internal -r backup1.rom
sudo flashprog -p internal -r backup2.rom
sha256sum backup1.rom backup2.rom
  1. Copy the backups somewhere off the machine
  2. Prepare the image for your exact model, inserting machine-specific data such as the MAC address if the instructions say so
  3. Flash, internally if the board allows it, or with an external programmer
  4. Keep the external programmer handy until you have confirmed the machine boots

flashprog and flashrom are the standard flashing tools.

Secure Boot and coreboot

With an EDK2 payload, you can enable UEFI Secure Boot. Some coreboot distributions ship it off by default or without Microsoft’s keys; our guides to Secure Boot and enrolling your own keys explain the setup.

Frequently Asked Questions

What is coreboot?

coreboot is an open source project that replaces the proprietary firmware on a computer’s motherboard. It initialises the hardware, such as the CPU and RAM, as quickly as possible, then hands off to a payload that loads your operating system.

What is the difference between coreboot and Libreboot?

coreboot is the underlying project. Libreboot is a distribution of coreboot that provides ready-made, tested ROM images for specific machines, with an easy build system and a policy of minimising proprietary code. Dasharo and MrChromebox are other coreboot distributions.

Is coreboot completely free of proprietary code?

Usually not on modern hardware. Intel and AMD platforms need binary components such as microcode, memory initialisation code, and the Intel Management Engine firmware. Libreboot reduces these where possible; fully blob-free builds only exist for some older machines.

Can flashing coreboot brick my computer?

Yes. A bad image or an interrupted flash can leave a machine that will not start. Recovery usually means an external SPI programmer and a clip attached to the flash chip. Always save a backup of the original firmware and follow the instructions for your exact model.

Can I boot Windows with coreboot?

Yes, with a UEFI payload such as EDK2, which Libreboot 26.10 now uses by default on x86 and which Dasharo and MrChromebox firmware also use. Older payloads such as SeaBIOS can boot legacy BIOS operating systems.

Which computers can run coreboot?

Mainly older business laptops and desktops such as many ThinkPads and Dell OptiPlexes, many Chromebooks, some servers and boards, and machines from vendors that ship coreboot, including System76, Star Labs, NovaCustom, and some Protectli devices.