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
20240612 [1]   OOjs UI icon edit-ltr-progressive.svg / 12 June 2024;5 months ago (12 June 2024)
Preview release 20241008 (October 8, 2024;45 days ago (2024-10-08)) [±] [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 and open-source software project based on coreboot, aimed at replacing some of the proprietary BIOS or UEFI firmware on supported X86-64- and AArch64-based computers. Libreboot performs the basic machine setup such as CPU initialization or memory controller initialization necessary to load and run a 32-bit or 64-bit operating system, such as Linux or FreeBSD.

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">Free software</span> Software licensed to be freely used, modified and distributed

    Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, and distribute it and any adapted versions. Free software is a matter of liberty, not price; all users are legally free to do what they want with their copies of a free software regardless of how much is paid to obtain the program. Computer programs are deemed "free" if they give end-users ultimate control over the software and, subsequently, over their devices.

    <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.

    The GNU C Library, commonly known as glibc, is the GNU Project implementation of the C standard library. It provides a wrapper around the system calls of the Linux kernel and other kernels for application use. Despite its name, it now also directly supports C++. It was started in the 1980s by the Free Software Foundation (FSF) for the GNU operating system.

    <span class="mw-page-title-main">UEFI</span> Technical specification for firmware architecture

    Unified Extensible Firmware Interface is a specification for the firmware architecture of a computing platform. When a computer is powered on, the UEFI-implementation is typically the first that runs, before starting the operating system. Examples include AMI Aptio, Phoenix SecureCore, TianoCore EDK II, InsydeH2O.

    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.

    <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 which 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.

    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, those types of code are mostly used for proprietary firmware images. While generally redistributable, they 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">TianoCore EDK II</span> Reference software implementation for UEFI

    TianoCore EDK II is the reference implementation of UEFI by Intel. EDK is the abbreviation for EFI Development Kit and is developed by the TianoCore community. TianoCore EDK II is the de facto standard generic UEFI services implementation.

    <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. Leah Rowe (12 June 2024). "Libreboot 20240612 released!" . Retrieved 25 June 2024.
    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.