improved wording in the freedom status page
Signed-off-by: Leah Rowe <leah@libreboot.org>c20230710
parent
d972c61cfa
commit
78a99c7625
|
@ -6,77 +6,39 @@ x-toc-enable: true
|
||||||
Introduction
|
Introduction
|
||||||
============
|
============
|
||||||
|
|
||||||
The short version of the story is: *all* boards currently supported by Libreboot
|
|
||||||
can be initialised in coreboot with *free*, *libre* or *open source* code, that
|
|
||||||
the user can study in great depth and adapt for their purposes, but there are
|
|
||||||
certain caveats and pitfalls that the user must know about for certain machines.
|
|
||||||
|
|
||||||
As many readers may know, coreboot (which Libreboot uses for hardware
|
As many readers may know, coreboot (which Libreboot uses for hardware
|
||||||
initialisation) is nominally *Free As In Freedom*, *libre* or *open source*
|
initialisation) is nominally *Free As In Freedom*, *libre* or *open source*
|
||||||
software; albeit, coreboot attempts to provide free code to initialise each
|
software; albeit, coreboot attempts to provide free code to initialise each
|
||||||
machine. The coreboot developers work very hard to reverse engineer as much
|
machine. The coreboot developers work tirelessly to reverse engineer as much
|
||||||
functionality as possible, so as to provide freely licensed source code.
|
functionality as possible, so as to provide freely licensed source code.
|
||||||
These people are to be celebrated, for Libreboot could not exist without such
|
|
||||||
efforts by them.
|
|
||||||
|
|
||||||
On *some* boards that coreboot supports, certain binary blobs are required.
|
On *some* (not all) platforms, coreboot *requires* certain
|
||||||
This may be for things like video framebuffer initialisation, setting up the
|
[blobs](https://en.wikipedia.org/wiki/Binary_blob) for things
|
||||||
memory controllers and so on. A binary blob is, in this context, any software
|
like raminit. *All* boards currently supported by Libreboot can be initialised
|
||||||
that only comes as executable binary code *with source code unavailable*. This
|
entirely with *free*, *libre* or *open source* code from *coreboot* itself,
|
||||||
makes it harder (but not impossible) to study how such programs work, and those
|
because Libreboot currently only focuses on such mainboards. Libreboot's goal is
|
||||||
blobs often come with restrictions on either their usage and/or distribution.
|
to eventually support *all* mainboards from coreboot.
|
||||||
|
|
||||||
The purpose of this document is to clearly describe the presence (or lack) of
|
A more *pragmatic* [binary blobs reduction policy](news/policy.md) was adopted
|
||||||
binary blobs, on each given hardware platform or, within each platform,
|
by Libreboot during November 2022, as part of an ongoing campaign to support
|
||||||
specific mainboard variations. Such information was either absent or poorly
|
more hardware (from coreboot) within Libreboot, so as to provide *many more*
|
||||||
worded on the Libreboot website, so it was decided that formal documentation
|
people with coreboot which, regardless of blob status, *does* provide increased
|
||||||
should be written. The reason for such absence was that Libreboot previously
|
software freedom compared to fully proprietary boot firmware which is what most
|
||||||
provided support *only* for those boards that do *not* require binary blobs in
|
people would otherwise use; Libreboot's modern policy is thus pragmatic, further
|
||||||
the main flash IC for boot firmware, so no such documentation was required.
|
advancing the cause of *software freedom*.
|
||||||
|
|
||||||
A more *pragmatic* policy was published during November 2022, with a view to
|
This page documents how Libreboot's [binary blob reduction
|
||||||
helping as many people as possible install coreboot, even on less-than-ideal
|
policy](news/policy.md), adopted in November 2022, is implemented in practise,
|
||||||
hardware (while continuing to also support the more freedom-friendly hardware).
|
especially that line which says: *"if a blob can be avoided, it must be
|
||||||
Libreboot still has strict standards about precisely *what* blobs are allowed,
|
avoided."*
|
||||||
which you can read in the following document, thus:
|
|
||||||
|
|
||||||
[Binary blob reduction policy](news/policy.md)
|
Libreboot's *previous* policy was to *ban all binary blobs*. This actively
|
||||||
|
*harmed* the Free Software movement, by reducing the number of people who can
|
||||||
In this article, you will learn of all the ways (in practise) that Libreboot
|
realistically use coreboot because, to this day, nothing quite like Libreboot
|
||||||
implements this *blob reduction policy*, especially that line in it which says,
|
yet exists. Libreboot's main purpose is to make coreboot *as easy to use as
|
||||||
quote, "if a blob can be avoided, it must be avoided".
|
possible* for normal, non-technical users who like the idea of coreboot but
|
||||||
|
who are otherwise not competent to configure it from scratch. Such harm
|
||||||
Why does this matter?
|
was *corrected*, in November 2022.
|
||||||
---------------------
|
|
||||||
|
|
||||||
The *practical goal* of the Libreboot project is to support as much hardware of
|
|
||||||
coreboot compatibility as possible, fully tested with pre-compiled ROM images
|
|
||||||
and easy flashing instructions, aimed at non-technical users so as to bring in
|
|
||||||
as many users as possible into the coreboot community. With more users, many
|
|
||||||
more people are exposed to coreboot and this will inevitably lead to more
|
|
||||||
people developing coreboot, which is a critical project in the libre software
|
|
||||||
movement. With more developers, more *users* will be able to achieve a level of
|
|
||||||
freedom or *sovereignty* in their computing and, thus, the cycle shall continue.
|
|
||||||
|
|
||||||
This goal exists because the *ideological goal* of Libreboot is to spread
|
|
||||||
software freedom by whatever means necessary, to as many people as possible.
|
|
||||||
Universal access to source code, the ability to study and change the code or
|
|
||||||
redistribute it, and run it infinitely for any purpose is extremely important.
|
|
||||||
Such freedom should be the *default* for all software. This makes coreboot
|
|
||||||
extremely useful, even in cases where a binary blob is needed for certain
|
|
||||||
functionality. Freedom should be the *default* for all software, and it is the
|
|
||||||
purpose of *Libreboot* to help establish such a reality.
|
|
||||||
|
|
||||||
The *policy* of the Libreboot project, within that goal, is to provide such
|
|
||||||
hardware support with as *few* binary blobs as possible, ideally *none* as is
|
|
||||||
the case with many configurations that Libreboot supports. Libreboot *will*
|
|
||||||
attempt to support any given piece of hardware, even in cases where *full*
|
|
||||||
software freedom is not possible; for example, if coreboot requires a blob for
|
|
||||||
raminit on a given board, the blob would be provided by Libreboot.
|
|
||||||
|
|
||||||
*You can read Libreboot's blob reduction/minimalisation policy in more detail.
|
|
||||||
Please read the document, titled: [Binary Blob Reduction
|
|
||||||
Policy](news/policy.md).*
|
|
||||||
|
|
||||||
Coreboot architecture
|
Coreboot architecture
|
||||||
---------------------
|
---------------------
|
||||||
|
|
Loading…
Reference in New Issue