osboot build system (OSBoot-MaKe). osboot performs hardware initialization on your computer, using coreboot, to replace the proprietary BIOS/UEFI firmware on supported x86 computers. https://osboot.org/

Leah Rowe c8c030b31b fork lbmk 61ac6c3f0b26deadc2fb8355a8dd0d25b29baacd 1 year ago
blobs 91b6542ebc fixed b0rked descriptor 2 years ago
resources c8c030b31b fork lbmk 61ac6c3f0b26deadc2fb8355a8dd0d25b29baacd 1 year ago
.gitcheck a6e5c87407 added internal git package management 2 years ago
.gitignore d4690d0690 updated gitignore for new dependencies and blobs 2 years ago
COPYING df76c3eb63 Fork Libreboot 20160907 build system. Large parts have been re-written. 3 years ago
Makefile c8c030b31b fork lbmk 61ac6c3f0b26deadc2fb8355a8dd0d25b29baacd 1 year ago
README.md c8c030b31b fork lbmk 61ac6c3f0b26deadc2fb8355a8dd0d25b29baacd 1 year ago
blobutil 327a39ef05 added workaround for git credentials 2 years ago
build 5139ad4be4 added myself as a license holder to changes in last commit 2 years ago
download c8c030b31b fork lbmk 61ac6c3f0b26deadc2fb8355a8dd0d25b29baacd 1 year ago
modify 8614ee72ae assimilate lbmk c3a66c32750fa4a9a90ddb6383b09fdfb6ff77f5 2 years ago
projectname 6afa56e2a8 rename project back to osboot and delete grub background 2 years ago
update 8614ee72ae assimilate lbmk c3a66c32750fa4a9a90ddb6383b09fdfb6ff77f5 2 years ago

README.md

osboot project

Documentation can be found on https://osboot.org/

osboot is free / open source boot firmware that initializes the hardware in your computer and loads an operating system. It replaces the proprietary BIOS/UEFI firmware commonly loaded onto a computer. osboot is compatible with specific computer models that use the x86 architecture. User support is available at #osboot on Freenode IRC.

osboot can boot all of the most popular operating systems such GNU+Linux, BSD and even Windows. We recommend free operating systems (e.g. GNU+Linux) that comply with GNU Free System Distribution: https://gnu.org/distros/free-system-distribution-guidelines.html

Boot firmware is low-level software that executes when a computer is turned on. It brings the components (CPU, memory controller, peripherals etc) to a useful state enabling easy software development and/or usage. Boot firmware usually loads an operating system which provides a unified interface for application software.

osboot uses coreboot for hardware initialization.

coreboot is notoriously difficult to compile and install for most non-technical users. There are many complicated configuration steps required, and coreboot by itself is useless; coreboot only handles hardware initialization, and then jumps to a separate payload program. The payload program can be anything, for example a Linux kernel, bootloader (such as GNU GRUB), UEFI implementation (such as Tianocore) or BIOS implementation (such as SeaBIOS). While not quite as complicated as building a GNU+Linux distribution from scratch, it may aswell be as far as most non-technical users are concerned. In short, most people will not want to use coreboot for this reason. The coreboot project is geared towards developers and therefore it assumes that the user is highly technical, with deep knowledge of the hardware and how computers work in general.

In other words, you can't simply download and install coreboot, just as you can't simply download and install the Linux kernel, becasue it simply won't work the way the user wants. osboot solves this problem in a novel way: osboot is a coreboot distribution much like Debian is a GNU+Linux distribution.

osboot integrates coreboot and several payloads such as GNU GRUB, SeaBIOS and Tianocore. It provides an automated build system that downloads, patches (where necessary) and compiles coreboot, GNU GRUB, SeaBIOS, Tianocore and all the other software components needed to build a complete, working ROM image that you can install, replacing your current BIOS/UEFI firmware, much like a GNU+Linux distribution (e.g. Debian) provides an ISO image that you can use to replace your current operating system (e.g. Windows).

osboot provides these payload choices:

  • GNU GRUB (bootloader). This is the default on x86 (Intel/AMD) computers, capable of booting the majority of GNU+Linux and BSD operating systems. It has many advantages such as ability to load from encrypted partitions, verify GPG signatures of your Linux kernel and more. GRUB can additionally load and execute any other coreboot payload.
  • SeaBIOS. This implements traditional x86 BIOS interrupts and services, allowing most legacy operating systems (e.g. older Windows versions or DOS) to be used.
  • Tianocore. This implements UEFI services, allowing most modern operating systems to be used (e.g. Windows 10). Tianocore is less useful for free software users, because GNU GRUB boots GNU+Linux and BSD on its own, but it provides a familiar interface that a lot of people are already used to.

For each machine supported in osboot, separate ROM images are provided: with GRUB payload (and Tianocore+SeaBIOS both selectable in the boot menu), SeaBIOS on its own and other ROMs with Tianocore on its own. For most users, we recommend using GNU GRUB.

Additionally, osboot provides utilities to install osboot (such as flashrom), to configure it (e.g. cbfstool, ifdtool, me_cleaner) and user friendly documentation aimed purely at non-technical users. If you simply want to use the firmware, without getting too in-depth, osboot is for you!

osboot tries to provide updated releases on a regular basis, with tested ROM images per machine supported.

Why use osboot?

Because you have rights. The right to privacy, freedom of thought, freedom of speech and the right to read. In the context of computing, that means anyone can use free software.

Simply speaking, free software is software that is under the direct sovereignty of the user and, more importantly, the collective that is the community. osboot is dedicated to the Free Software community, with the aim of making free software at a low level more accessible to non-technical people.

Many people use proprietary boot firmware, even if they use GNU+Linux. Non-free boot firmware often contains backdoors , can be slow and have severe bugs. Development and support can be abandoned at any time. By contrast, osboot is a free software project, where anyone can contribute or inspect its code.

osboot is faster, more secure and more reliable than most non-free firmware. osboot provides many advanced features, like encrypted /boot/, GPG signature checking before booting a Linux kernel and more! osboot gives you control over your computing.

How is osboot different versus Libreboot?

osboot is becoming libreboot soon. the current state in libreboot will be swept away, 2021-style.

until then, libreboot is to be considered obsolete