Libreboot

Last updated

Libreboot
Original author(s) Leah Rowe
Developer(s) Leah Rowe
Initial release12 December 2013;10 years ago (2013-12-12)
Stable release 20230625 (June 25, 2023;11 months ago (2023-06-25)) [±] [1]
Preview release 20240225 (February 25, 2024;3 months ago (2024-02-25)) [±] [2]
Repository codeberg.org/libreboot/lbmk
Written in C, Shell, Python
Type Open-source firmware
License GNU General Public License, version 3
Website libreboot.org

Libreboot (briefly known as GNU Libreboot [3] [4] ) is a free software project based on coreboot, aimed at replacing some of the proprietary BIOS firmware contained in some computers, though does require certain vendor code on some platforms as that code may not have been replaced with libre software. Libreboot is a lightweight system designed to perform tasks necessary to load and run a 32-bit or 64-bit operating system.

Contents

Characteristics

Libreboot is established as a distribution of coreboot, but with some [5] proprietary binary blobs removed from coreboot. [6] Libreboot makes coreboot easy to use by automating the build and installation processes. [7] [8] [9] [10]

On some devices, Libreboot developers have reverse engineered the firmware from Intel and created a utility to create a free firmware that meets the specifications from Intel. [11] Hardware support includes but is not limited to the ASUS KGPE-D16, [12] ThinkPad T400, [13] [14] X60 [7] [8] and X200. [14] [15] Libreboot is officially endorsed by the upstream coreboot project. [16]

History

The Libreboot project was started in December 2013 [6] as a distribution of coreboot, which excludes non-free binary blobs. Coreboot began as LinuxBIOS in 1999 at Los Alamos National Labs (LANL), and was renamed "coreboot" in 2008. [17]

Libreboot has been endorsed by the Free Software Foundation, and was an official part of the GNU Project since May 2016. In January 2017, the project's maintainer Leah Rowe pulled Libreboot from the GNU Project, after a months-long dispute with the Free Software Foundation which oversees GNU. [18] [19]

Reception

In 2015, Kyle Rankin stated in Linux Journal that Libreboot "greatly simplified and automated" the flashing process, "with a few caveats". [7] [8] In 2016, Bryan Cockfield stated in Hackaday that Libreboot installation was "harrowing" and "not as easy as you'd think". [9]

    Related Research Articles

    <span class="mw-page-title-main">GNU Project</span> Free software project

    The GNU Project is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaboratively developing and publishing software that gives everyone the rights to freely run the software, copy and distribute it, study it, and modify it. GNU software grants these rights in its license.

    <span class="mw-page-title-main">UEFI</span> Operating system and firmware specification

    Unified Extensible Firmware Interface is a specification that defines the architecture of the platform firmware used for booting the computer hardware and its interface for interaction with the operating system. Examples of firmware that implement the specification are AMI Aptio, Phoenix SecureCore, TianoCore EDK II, InsydeH2O. UEFI replaces the BIOS which was present in the boot ROM of all personal computers that are IBM PC compatible, although it can provide backwards compatibility with the BIOS using CSM booting. Intel developed the original Extensible Firmware Interface (EFI) specification. Some of the EFI's practices and data formats mirror those of Microsoft Windows. In 2005, UEFI deprecated EFI 1.10.

    coreboot Open-source computer firmware

    coreboot, formerly known as LinuxBIOS, is a software project aimed at replacing proprietary firmware found in most computers with a lightweight firmware designed to perform only the minimum number of tasks necessary to load and run a modern 32-bit or 64-bit operating system.

    Advanced Configuration and Power Interface (ACPI) is an open standard that operating systems can use to discover and configure computer hardware components, to perform power management, auto configuration, and status monitoring. It was first released in December 1996. ACPI aims to replace Advanced Power Management (APM), the MultiProcessor Specification, and the Plug and Play BIOS (PnP) Specification. ACPI brings power management under the control of the operating system, as opposed to the previous BIOS-centric system that relied on platform-specific firmware to determine power management and configuration policies. The specification is central to the Operating System-directed configuration and Power Management (OSPM) system. ACPI defines hardware abstraction interfaces between the device's firmware, the computer hardware components, and the operating systems.

    <span class="mw-page-title-main">Richard Stallman</span> American free software activist and GNU Project founder (born 1953)

    Richard Matthew Stallman, also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to use, study, distribute, and modify that software. Software that ensures these freedoms is termed free software. Stallman launched the GNU Project, founded the Free Software Foundation (FSF) in October 1985, developed the GNU Compiler Collection and GNU Emacs, and wrote all versions of the GNU General Public License.

    In the context of free and open-source software, proprietary software only available as a binary executable is referred to as a blob or binary blob. The term usually refers to a device driver module loaded into the kernel of an open-source operating system, and is sometimes also applied to code running outside the kernel, such as system firmware images, microcode updates, or userland programs. The term blob was first used in database management systems to describe a collection of binary data stored as a single entity.

    <span class="mw-page-title-main">Linux</span> Family of Unix-like operating systems

    Linux is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution (distro), which includes the kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses and recommends the name "GNU/Linux" to emphasize the use and importance of GNU software in many distributions, causing some controversy.

    gNewSense Linux distribution

    gNewSense was a Linux distribution, active from 2006 to 2016. It was based on Debian, and developed with sponsorship from the Free Software Foundation. Its goal was user-friendliness, but with all proprietary and non-free software removed. The Free Software Foundation considered gNewSense to be composed entirely of free software.

    <span class="mw-page-title-main">Trisquel</span> Linux distribution based on Ubuntu

    Trisquel is a computer operating system, a Linux distribution, derived from another distribution, Ubuntu. The project aims for a fully free software system without proprietary software or firmware and uses a version of Ubuntu's modified kernel, with the non-free code removed. Trisquel relies on user donations. Its logo is a triskelion, a Celtic symbol. Trisquel is listed by the Free Software Foundation as a distribution that contains only free software.

    Flashrom is a software utility published under an open source license that can detect, read, verify, erase, or write EEPROMs using interfaces such as the Low Pin Count (LPC), FWH, parallel, and Serial Peripheral Interface (SPI). It can be used to flash firmware images such as BIOS or coreboot, or to backup existing firmware.

    <span class="mw-page-title-main">Linux-libre</span> Version of the Linux kernel without proprietary code

    According to the Free Software Foundation Latin America, Linux-libre is a modified version of the Linux kernel that contains no binary blobs, obfuscated code, or code released under proprietary licenses. In the Linux kernel, they are mostly used for proprietary firmware images. While generally redistributable, binary blobs do not give the user the freedom to audit, modify, or, consequently, redistribute their modified versions. The GNU Project keeps Linux-libre in synchronization with the mainline Linux kernel.

    <span class="mw-page-title-main">SeaBIOS</span> Open-source implementation of x86 BIOS

    SeaBIOS is an open-source implementation of an x86 BIOS, serving as a freely available firmware for x86 systems. Aiming for compatibility, it supports standard BIOS features and calling interfaces that are implemented by a typical proprietary x86 BIOS. SeaBIOS can either run on bare hardware as a coreboot payload, or can be used directly in emulators such as QEMU and Bochs.

    <span class="mw-page-title-main">LibreCMC</span> Computer operating system

    LibreCMC is a Linux-libre distribution for computers with minimal resources, such as the Ben NanoNote, ath9k-based Wi-Fi routers, and other hardware with emphasis on free software. Based on OpenWrt, the project's goal is to aim for compliance with the GNU Free System Distribution Guidelines and ensure that the project continues to meet these requirements set forth by the Free Software Foundation (FSF). LibreCMC does not support ac or ax due to a lack of free chipsets.

    <span class="mw-page-title-main">Librem</span> Computer line by Purism featuring free software

    Librem is a line of computers manufactured by Purism, SPC featuring free (libre) software. The laptop line is designed to protect privacy and freedom by providing no non-free (proprietary) software in the operating system or kernel, avoiding the Intel Active Management Technology, and gradually freeing and securing firmware. Librem laptops feature hardware kill switches for the microphone, webcam, Bluetooth and Wi-Fi.

    <span class="mw-page-title-main">Purism (company)</span> Computer manufacturer focusing on software freedom

    Purism, SPC is an American computer technology corporation based in San Francisco, California and registered in the state of Washington.

    <span class="mw-page-title-main">LinuxBoot</span> Free software firmware project

    LinuxBoot is a free software project aimed at replacing most of the Driver Execution Environment (DXE) modules in Unified Extensible Firmware Interface (UEFI) firmware with the Linux kernel. LinuxBoot must run on top of hardware initialisation software in order to start. This can be the Pre-EFI Initialization (PEI) part of UEFI, coreboot, or U-Boot. It can boot Linux through the kexec syscall, but is also able to boot Windows with a different method.

    <span class="mw-page-title-main">Framework Computer</span> American computer company

    Framework Computer, Inc. is an American laptop computer manufacturer. The company positions itself as a proponent of the right to repair movement, and their laptops are designed to be easy to disassemble, with replaceable parts.

    Open-source firmware is firmware that is published under an open-source license. It can be contrasted with proprietary firmware, which is published under a proprietary license or EULA.

    References

    1. "Libreboot - Libreboot news". Libreboot. Retrieved 6 November 2023.
    2. "Libreboot - Libreboot news". Libreboot. Retrieved 29 April 2024.
    3. "List of GNU software packages on 22 May 2016". GNU project. 22 May 2016. Archived from the original on 22 May 2016. Retrieved 22 August 2016.
    4. "[Libreboot] GNU Libreboot, version 20160818 released". lists.gnu.org. Archived from the original on 18 October 2019. Retrieved 22 August 2021.
    5. "Binary Blob Reduction Policy". 1 November 2023. Archived from the original on 1 November 2023. Retrieved 1 November 2023.
    6. 1 2 Bärwaldt, Erik. "Liberated » Linux Magazine". Linux Magazine . Archived from the original on 22 August 2021. Retrieved 22 August 2021.
    7. 1 2 3 Rankin, Kyle (28 September 2015). "Libreboot on an X60, Part I: the Setup". Linux Journal . Archived from the original on 22 August 2021. Retrieved 22 August 2021.
    8. 1 2 3 Rankin, Kyle (28 October 2015). "Libreboot on an x60, Part II: the Installation". Linux Journal . Archived from the original on 22 August 2021. Retrieved 22 August 2021.
    9. 1 2 Cockfield, Bryan (16 December 2016). "Harrowing Story Of Installing Libreboot On ThinkPad". Hackaday . Archived from the original on 7 September 2021. Retrieved 22 August 2021.
    10. Nardi, Tom (20 August 2018). "Installing LibreBoot The (Very) Lazy Way". Hackaday . Archived from the original on 24 November 2020. Retrieved 22 August 2021.
    11. Vaughan-Nichols, Steven J. "Taurinus X200: Now the most 'Free Software' laptop on the planet". ZDNet . Archived from the original on 26 August 2021. Retrieved 6 September 2021.
    12. "Minifree Ltd.'s GNU+Linux Computers". Linux Journal . Retrieved 2 May 2023.
    13. Biggs, John (11 August 2017). "The Minifree Libreboot T400 is free as in freedom". TechCrunch . Retrieved 2 May 2023.
    14. 1 2 Benchoff, Brian (28 October 2016). "Apple Sucks Now, Here's A ThinkPad Buyer's Guide". Hackaday . Retrieved 2 May 2023.
    15. "Flash ROMs with a Raspberry Pi". Linux Journal . Retrieved 3 May 2023.
    16. "coreboot for end users". coreboot.org. Retrieved 25 June 2023.
    17. Sun, Jiming; Jones, Marc; Reinauer, Stefan; Zimmer, Vincent (2015), "Building coreboot with Intel FSP", Embedded Firmware Solutions: Development Best Practices for the Internet of Things, Berkeley, CA: Apress, pp. 55–95, doi: 10.1007/978-1-4842-0070-4_4 , ISBN   978-1-4842-0070-4, archived from the original on 6 May 2024, retrieved 27 May 2023
    18. Hall, Christine (6 January 2017). "GNU Officially Boots Libreboot". FOSS Force. Archived from the original on 6 May 2024. Retrieved 7 June 2023.
    19. Hall, Christine (16 September 2016). "Libreboot Leaves GNU Claiming Gender Identity Discrimination by FSF". FOSS Force. Archived from the original on 6 May 2024. Retrieved 7 June 2023.