exorcism 2
parent
8d8642db1a
commit
67930fa5df
|
@ -32,7 +32,7 @@ works on all aspects of libreboot, such as:
|
|||
and generally keeps the project going. Without Leah, there would be no Libreboot!
|
||||
* The build system (lbmk, short for libreboot Make). This is the automated build
|
||||
system that sits at the heart of libreboot; it downloads, patches, configures
|
||||
and compiles the relevant components like coreboot, GNU GRUB and generates
|
||||
and compiles the relevant components like coreboot, GRUB and generates
|
||||
the libreboot ROM images that you can find in release archives.
|
||||
* Upstream work on coreboot, when necessary (and other projects that libreboot
|
||||
uses). This means also working with people from outside of the libreboot
|
||||
|
@ -73,7 +73,7 @@ The people and companies that work on coreboot are numerous, and they make the
|
|||
libreboot project what it is. The libreboot project makes heavy use of coreboot, to
|
||||
provide hardware initialization.
|
||||
|
||||
GNU GRUB
|
||||
GRUB
|
||||
--------
|
||||
|
||||
GRUB is the bootloader used by libreboot. It goes without saying that the GRUB
|
||||
|
@ -178,7 +178,8 @@ Jeroen Quint
|
|||
------------
|
||||
|
||||
Contributed several fixes to the libreboot documentation, relating to
|
||||
installing Parabola with full disk encryption on libreboot systems.
|
||||
installing on Arch-based systems with full disk encryption on libreboot
|
||||
systems.
|
||||
|
||||
Joshua Gay
|
||||
----------
|
||||
|
@ -234,9 +235,7 @@ created Libreboot IRC channel, when Leah did not know how to
|
|||
use IRC, and also handed +F founder status to Leah for the channel. As an FSF
|
||||
sysadmin, it was Lisa's job to maintain a lot of the infrastructure used by
|
||||
Libreboot; at the time, mailing lists on the GNU Savannah website were used by
|
||||
the Libreboot project. Lisa was also the one who originally encouraged Leah to
|
||||
have Libreboot join the GNU project (a decision that was later, rather
|
||||
regrettably, reversed). When Paul Kocialkowski was a member of the project in
|
||||
the Libreboot project. When Paul Kocialkowski was a member of the project in
|
||||
2016, she helped him get help from the FSF; he was the leader of the Replicant
|
||||
project at the time, which had funding from the FSF, and the FSF authorized him
|
||||
to use some of that funding for his work on Libreboot, thanks to Lisa's
|
||||
|
@ -409,7 +408,7 @@ low level.
|
|||
|
||||
When Swift Geek was a member of the project, his role was largely providing
|
||||
user support (in the IRC channel), and conducting research. Swift Geek knows a
|
||||
lot about hardware. Swift Geek also did some upstream development on GNU GRUB.
|
||||
lot about hardware. Swift Geek also did some upstream development on GRUB.
|
||||
|
||||
Swift Geek has provided technical advice on numerous occasions, to Leah Rowe,
|
||||
and helped her to improve her soldering skills in addition to teaching her
|
||||
|
|
|
@ -32,7 +32,7 @@ x-toc-enable: true
|
|||
і загалом підтримує проект. Без Лії не було би Libreboot!
|
||||
* Система збірки (lbmk, скорочення від libreboot Make). Це автоматизована
|
||||
система збирання, яка лежить в серці libreboot; він завантажує, патчить, налаштовує
|
||||
та компілює відповідні компоненти, такі як coreboot, GNU GRUB, і генерує образи ROM
|
||||
та компілює відповідні компоненти, такі як coreboot, GRUB, і генерує образи ROM
|
||||
libreboot, які ви можете знайти в архівах випусків.
|
||||
* Апстрім робота над coreboot, коли необхідно (та іншими проектами, які libreboot
|
||||
використовує). Це також означає роботу з людьми поза межами проекту libreboot,
|
||||
|
@ -73,7 +73,7 @@ x-toc-enable: true
|
|||
проект libreboot таким, яким він є. Проект libreboot активно використовує coreboot
|
||||
для ініціалізації обладнання.
|
||||
|
||||
GNU GRUB
|
||||
GRUB
|
||||
--------
|
||||
|
||||
GRUB - це завантажувач, який використовується libreboot. Само собою зрозуміло, що
|
||||
|
@ -180,7 +180,7 @@ Libreboot (lbmk), були натхненні розмовами з Денисо
|
|||
------------
|
||||
|
||||
Додав кілька виправлень до документації libreboot, пов'язаної зі
|
||||
встановленням Parabola з повним дисковим шифруванням у системах libreboot.
|
||||
встановленням Arch з повним дисковим шифруванням у системах libreboot.
|
||||
|
||||
Джошуа Гей
|
||||
----------
|
||||
|
@ -247,11 +247,9 @@ libreboot, а також кілька змін у системі збірки.
|
|||
IRC-канал Libreboot, коли Лія не знала, як користуватися
|
||||
IRC, а також передала +F статус засновника для каналу. Як системний
|
||||
адміністратор FSF, роботою Лізи було підтримувати велику частину інфраструктури,
|
||||
яку використовує Libreboot; на той час списки розсилки на веб-сайті GNU Savannah
|
||||
використовувалися проектом Libreboot. Ліза також була тією, хто спочатку
|
||||
заохочував Лію приєднатися Libreboot до проекту GNU (рішення, яке пізніше,
|
||||
більше на жаль, було скасовано). Коли Пол Коціалковскі був учасником проекту в
|
||||
2016 році, вона допомогла йому отримати допомогу від FSF; на той час він був
|
||||
яку використовує Libreboot; на той час списки розсилки на веб-сайті Savannah
|
||||
використовувалися проектом Libreboot. Коли Пол Коціалковскі був
|
||||
учасником проекту в 2016 році, вона допомогла йому отримати допомогу від FSF; на той час він був
|
||||
керівником проекту Replicant, який фінансував FSF, і FSF дозволив
|
||||
йому використати частину цього фінансування для його роботи над Libreboot, завдяки Лізи
|
||||
підтримці, коли вона працювала у FSF.
|
||||
|
@ -434,7 +432,7 @@ Swift Geek
|
|||
|
||||
Коли Swift Geek був учасником проекту, його роль здебільшого полягала в
|
||||
наданні підтримки користувачам (на каналі IRC) і проведенні досліджень. Swift Geek знає
|
||||
багато про апаратне забезпечення. Swift Geek також зробив деяку апстрім розробку GNU GRUB.
|
||||
багато про апаратне забезпечення. Swift Geek також зробив деяку апстрім розробку GRUB.
|
||||
|
||||
Swift Geek неодноразово надавав технічні поради Лії Роу
|
||||
та допоміг їй покращити її навички паяння, а також навчив її
|
||||
|
|
|
@ -22,7 +22,7 @@ you read this article.
|
|||
Boot BSD, using SeaBIOS
|
||||
=======================
|
||||
|
||||
On x86 platforms, libreboot/libreboot both provide the choice of GNU GRUB and/or
|
||||
On x86 platforms, libreboot/libreboot both provide the choice of GRUB and/or
|
||||
SeaBIOS payload. GRUB can technically boot BSD kernels, but the code is
|
||||
poorly maintained and unreliable for this use-case scenario; on BIOS systems,
|
||||
GRUB can chainload BSD bootloaders, but on bare metal (as coreboot payload),
|
||||
|
|
|
@ -44,11 +44,11 @@ Python
|
|||
Python2 is unused by lbmk or anything that it pulls down as modules. You
|
||||
should ensure that the `python` command runs python 3, on your system.
|
||||
|
||||
GNU Make
|
||||
Make
|
||||
========
|
||||
|
||||
libreboot Make includes a file called `Makefile`. You can still use
|
||||
the `lbmk` build system directly, or you can use GNU Make. The `Makefile`
|
||||
the `lbmk` build system directly, or you can use Make. The `Makefile`
|
||||
simply runs `lbmk` commands. However, using `lbmk` directly will offer you
|
||||
much more flexibility; for example, the Makefile currently cannot build single
|
||||
ROM images (it just builds all of them, for all boards).
|
||||
|
@ -97,7 +97,7 @@ To build release archives:
|
|||
|
||||
make release
|
||||
|
||||
Build without using GNU Make
|
||||
Build without using Make
|
||||
============================
|
||||
|
||||
The `Makefile` is included just for *compatibility*, so that someone who
|
||||
|
@ -123,7 +123,7 @@ Separate scripts also exist:
|
|||
|
||||
sudo ./build dependencies void
|
||||
|
||||
Technically, any GNU+Linux distribution can be used to build libreboot.
|
||||
Technically, any Linux distribution can be used to build libreboot.
|
||||
However, you will have to write your own script for installing build
|
||||
dependencies.
|
||||
|
||||
|
|
|
@ -44,11 +44,11 @@ Python
|
|||
Python2 не використовується lbmk або будь-чим, що завантажується в якості модулів. Ви
|
||||
маєте переконатись, що команда `python` виконує python 3 на вашій системі.
|
||||
|
||||
GNU Make
|
||||
Make
|
||||
========
|
||||
|
||||
libreboot Make включає файл, який названо `Makefile`. Ви досі можете
|
||||
використовувати систему побудови `lbmk` безпосередньо, або ви можете використовувати GNU Make. `Makefile`
|
||||
використовувати систему побудови `lbmk` безпосередньо, або ви можете використовувати Make. `Makefile`
|
||||
просто виконує команди `lbmk`. Однак, використання `lbmk` безпосередньо запропонує вам
|
||||
набагато більше гнучкості; наприклад, Makefile наразі не може побудувати один
|
||||
образ ROM (він лише будує всі з них, для всіх плат).
|
||||
|
@ -97,7 +97,7 @@ libreboot. Якщо ви тільки хочете побудувати обме
|
|||
|
||||
make release
|
||||
|
||||
Побудова без використання GNU Make
|
||||
Побудова без використання Make
|
||||
============================
|
||||
|
||||
`Makefile` включено лише для *сумісності*, щоб якщо хтось
|
||||
|
@ -123,7 +123,7 @@ libreboot включає сценарій, який автоматично вс
|
|||
|
||||
sudo ./build dependencies void
|
||||
|
||||
Технічно, будь-який дистрибутив GNU+Linux може бути використано для побудови libreboot.
|
||||
Технічно, будь-який дистрибутив Linux може бути використано для побудови libreboot.
|
||||
Однак, вам потрібно буде написано свій власний сценарій для встановлення залежностей
|
||||
побудови.
|
||||
|
||||
|
|
|
@ -1,25 +1,25 @@
|
|||
---
|
||||
title: Installing GNU+Linux
|
||||
title: Installing Linux
|
||||
x-toc-enable: true
|
||||
...
|
||||
|
||||
# Introduction
|
||||
|
||||
This guide assumes that you are using the GNU GRUB bootloader directly.
|
||||
This guide assumes that you are using the GRUB bootloader directly.
|
||||
If you're using SeaBIOS, it's quite intuitive and works similarly to other BIOS
|
||||
software; refer to the documentation on <https://seabios.org/SeaBIOS>.
|
||||
|
||||
This guide explains how to prepare a bootable USB for libreboot systems that
|
||||
can be used to install several GNU+Linux distributions. For this guide, you
|
||||
can be used to install several Linux distributions. For this guide, you
|
||||
will only need a USB flash drive and the `dd` utility (it's installed into all
|
||||
GNU+Linux distributions, by default).
|
||||
Linux distributions, by default).
|
||||
|
||||
These instructions are intended to be generic, applicable to just about any
|
||||
GNU+Linux distribution.
|
||||
Linux distribution.
|
||||
|
||||
## Prepare the USB Drive in GNU+Linux
|
||||
If you downloaded your ISO while on an existing GNU+Linux system, here is how
|
||||
to create the bootable GNU+Linux USB drive:
|
||||
## Prepare the USB Drive in Linux
|
||||
If you downloaded your ISO while on an existing Linux system, here is how
|
||||
to create the bootable Linux USB drive:
|
||||
|
||||
Connect the USB drive. Check `lsblk`, to confirm its device name
|
||||
(e.g., **/dev/sdX**):
|
||||
|
@ -32,7 +32,7 @@ it's not mounted:
|
|||
sudo umount /dev/sdb
|
||||
|
||||
Overwrite the drive, writing your distro ISO to it with `dd`. For example, if
|
||||
we are installing *Foobarbaz* GNU+Linux, and it's located in our Downloads
|
||||
we are installing *Foobarbaz* Linux, and it's located in our Downloads
|
||||
folder, this is the command we would run:
|
||||
|
||||
sudo dd if=~/Downloads/foobarbaz.iso of=/dev/sdb bs=8M; sync
|
||||
|
@ -44,17 +44,17 @@ That's it! You should now be able to boot the installer from your USB drive
|
|||
[This page](https://wiki.netbsd.org/tutorials/how_to_install_netbsd_from_an_usb_memory_stick/)
|
||||
on the NetBSD website shows how to create a NetBSD bootable USB drive, from
|
||||
within NetBSD itself. You should the `dd` method documented there. This will
|
||||
work with any GNU+Linux ISO image.
|
||||
work with any Linux ISO image.
|
||||
|
||||
## Prepare the USB drive in FreeBSD
|
||||
[This page](https://www.freebsd.org/doc/handbook/bsdinstall-pre.html) on the
|
||||
FreeBSD website shows how to create a bootable USB drive for installing
|
||||
FreeBSD. Use the `dd` method documented. This will work with any GNU+Linux ISO
|
||||
FreeBSD. Use the `dd` method documented. This will work with any Linux ISO
|
||||
image.
|
||||
|
||||
## Prepare the USB drive in LibertyBSD or OpenBSD
|
||||
If you downloaded your ISO on a LibertyBSD or OpenBSD system, here is how to
|
||||
create the bootable GNU+Linux USB drive:
|
||||
create the bootable Linux USB drive:
|
||||
|
||||
Connect the USB drive. Run `lsblk` to determine which drive it is:
|
||||
|
||||
|
@ -109,7 +109,7 @@ menu, converted from the usual ISOLINUX menu provided by that distro.
|
|||
|
||||
## Booting ISOLINUX Images (Manual Method)
|
||||
These are generic instructions. They may or may not be correct for your
|
||||
distribution. You must adapt them appropriately, for whatever GNU+Linux
|
||||
distribution. You must adapt them appropriately, for whatever Linux
|
||||
distribution it is that you are trying to install.
|
||||
|
||||
If the `ISOLINUX parser` or `Search for GRUB configuration` options won't work,
|
||||
|
@ -160,7 +160,7 @@ USB drive in the way that you specified.
|
|||
## Troubleshooting
|
||||
Most of these issues occur when using libreboot with coreboot's `text-mode`
|
||||
with libgfxinit for video initialization. This mode is useful for text mode
|
||||
payloads, like `MemTest86+`, which expect `text-mode`, but for GNU+Linux
|
||||
payloads, like `MemTest86+`, which expect `text-mode`, but for Linux
|
||||
distributions it can be problematic when they are trying to switch to a
|
||||
framebuffer, because no mode switching support is present (Linux/BSD kernels
|
||||
do Kernel Mode Setting, so they are able to initialize a frame buffer in bare
|
||||
|
|
|
@ -6,8 +6,8 @@ x-toc-enable: true
|
|||
Before you follow this guide, it is advisable that you have the ability to
|
||||
flash externally, just in case something goes wrong.
|
||||
|
||||
This guide assumes that you use the GNU GRUB bootloader as your default
|
||||
payload. In this configuration, GNU GRUB is flashed alongside coreboot and runs
|
||||
This guide assumes that you use the GRUB bootloader as your default
|
||||
payload. In this configuration, GRUB is flashed alongside coreboot and runs
|
||||
on *bare metal* as a native coreboot payload and does *not* use BIOS or UEFI
|
||||
services (but it *can* load and execute SeaBIOS, in addition to any other
|
||||
coreboot payload, by chainloading it).
|
||||
|
@ -38,7 +38,7 @@ As for the ROM, there are mainly three methods for obtaining a libreboot ROM
|
|||
image:
|
||||
|
||||
1. Dump the contents of the the main *boot flash* on your system, which already
|
||||
has libreboot installed (with GNU GRUB as the default payload). Extract the
|
||||
has libreboot installed (with GRUB as the default payload). Extract the
|
||||
GRUB configuration from *that* ROM image.
|
||||
2. Extract it from a libreboot ROM image supplied by the libreboot project, on
|
||||
the libreboot website or mirrors of the libreboot website.
|
||||
|
@ -107,7 +107,7 @@ flashed, versus the new ROM image.
|
|||
|
||||
The `internal` option assumes that internal read/write is possible; this is
|
||||
when you read from and/or write to the boot flash from an operating systems
|
||||
(usually GNU+Linux) that is *running on* the target system.
|
||||
(usually Linux) that is *running on* the target system.
|
||||
|
||||
In other cases, you may need to connect an SPI programmer externally (with the
|
||||
machine powered down) and read the contents of the boot flash.
|
||||
|
@ -117,7 +117,7 @@ machine powered down) and read the contents of the boot flash.
|
|||
Extract grub.cfg
|
||||
================
|
||||
|
||||
libreboot images that use the GNU GRUB bootloader will have *two* configuration
|
||||
libreboot images that use the GRUB bootloader will have *two* configuration
|
||||
files in CBFS:
|
||||
|
||||
* `grub.cfg`
|
||||
|
|
|
@ -1,21 +1,21 @@
|
|||
---
|
||||
title: Hardening GNU GRUB
|
||||
title: Hardening GRUB
|
||||
x-toc-enable: true
|
||||
...
|
||||
|
||||
This article only applies to those people who use the GNU GRUB bootloader as
|
||||
their default payload (options besides GNU GRUB are also available in
|
||||
libreboot). Whenever this article refers to GNU GRUB, or configuration files
|
||||
used in GNU GRUB, it is referring exclusively to those files hosted in CBFS
|
||||
(coreboot file system) in the libreboot ROM image. In this configuration, GNU
|
||||
This article only applies to those people who use the GRUB bootloader as
|
||||
their default payload (options besides GRUB are also available in
|
||||
libreboot). Whenever this article refers to GRUB, or configuration files
|
||||
used in GRUB, it is referring exclusively to those files hosted in CBFS
|
||||
(coreboot file system) in the libreboot ROM image. In this configuration,
|
||||
GRUB is running on *bare metal* as a coreboot payload (instead of relying on
|
||||
BIOS or UEFI services, like it does on *most* x86 based configurations).
|
||||
|
||||
This guide deals with various ways in which you can harden your GNU GRUB
|
||||
This guide deals with various ways in which you can harden your GRUB
|
||||
configuration, for security purposes. These steps are optional, but *strongly*
|
||||
recommended by the libreboot project.
|
||||
|
||||
GNU GRUB provides *many* advanced security features, which most people don't
|
||||
GRUB provides *many* advanced security features, which most people don't
|
||||
know about but are fully documented on the libreboot website. Read on!
|
||||
|
||||
This article doesn't cover how to dump your ROM, or flash a new one. Please
|
||||
|
@ -27,14 +27,14 @@ know what you're doing.
|
|||
GRUB secure boot with GPG
|
||||
=========================
|
||||
|
||||
GNU GRUB contains code, based on [GnuPG](https://gnupg.org/), that can verify
|
||||
GRUB contains code, based on [GPG](https://gnupg.org/), that can verify
|
||||
PGP signatures on *any* type of file, on any storage medium supported by
|
||||
GNU GRUB (it supports basically everything, including CBFS which is short
|
||||
GRUB (it supports basically everything, including CBFS which is short
|
||||
for coreboot file system and it is what we will focus on in this article).
|
||||
We will be using this functionality to verify the signature of a Linux kernel,
|
||||
at boot time. In conjunction with reproducible builds (both libreboot and your
|
||||
Linux kernel), this can greatly improve system security; Debian is an excellent
|
||||
example of a GNU+Linux distribution that is fully reproducible nowadays (in
|
||||
example of a Linux distribution that is fully reproducible nowadays (in
|
||||
stable releases).
|
||||
|
||||
For your reference: a reproducible build is one where, given a precise (and
|
||||
|
@ -52,7 +52,7 @@ repository). More information about reproducible builds can be found here:
|
|||
Reproducibility is a key goal of the libreboot project, though it has not yet
|
||||
achieved that goal. However, it is an important part of any secure system. We
|
||||
suggest that, when securing your libreboot system as instructed by this guide,
|
||||
you should also use a reproducible GNU+Linux distribution (because checking GPG
|
||||
you should also use a reproducible Linux distribution (because checking GPG
|
||||
signatures on a non-reproducible binary, such as a Linux kernel, is meaningless
|
||||
if that binary can be compromised as a result of literally not being able to
|
||||
verify that the source code *actually* corresponds to the provided binary,
|
||||
|
@ -65,7 +65,7 @@ circumstances under *controlled conditions*.
|
|||
|
||||
This tutorial assumes you have a libreboot image (ROM) that you wish to modify,
|
||||
which from now on we will refer to simply as *`my.rom`*. It should go without
|
||||
saying that this ROM uses the GNU GRUB bootloader as payload. This page shows
|
||||
saying that this ROM uses the GRUB bootloader as payload. This page shows
|
||||
how to modify grubtest.cfg, which means that signing and password protection
|
||||
will work after switching to it in the main boot menu and bricking due to
|
||||
incorrect configuration will be impossible. After you are satisfied with the
|
||||
|
@ -119,13 +119,13 @@ signatures in any other location (unless the software is modified accordingly).
|
|||
|
||||
It's worth noting that this is not your LUKS password but, rather, a password
|
||||
that you must enter in order to use *restricted* functionality (such as the
|
||||
GNU GRUB terminal for executing commands). This behaviour protects your system
|
||||
from an attacker simply booting a live USB key (e.g. live GNU+Linux
|
||||
GRUB terminal for executing commands). This behaviour protects your system
|
||||
from an attacker simply booting a live USB key (e.g. live Linux
|
||||
distribution) for the purpose of flashing modified boot firmware, which from
|
||||
your perspective is *compromised* boot firmware. *This should be different than
|
||||
your LUKS passphrase and user password.*
|
||||
|
||||
GNU GRUB supports storing salted, hashed passwords in the configuration file.
|
||||
GRUB supports storing salted, hashed passwords in the configuration file.
|
||||
This is a far more secure configuration, because an attacker cannot simply read
|
||||
your password as *plain text* inside said file.
|
||||
|
||||
|
@ -153,7 +153,7 @@ installing GRUB version 2. Generate a key by giving it a password:
|
|||
|
||||
NOTE: This utility is included under the `grub/` directory, when you build
|
||||
GRUB using the libreboot build system. Run the following commands (assuming
|
||||
you have the correct build dependencies installed) to build GNU GRUB, from the
|
||||
you have the correct build dependencies installed) to build GRUB, from the
|
||||
libreboot Git repository:
|
||||
|
||||
./download grub
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
---
|
||||
title: GNU+Linux guides
|
||||
title: Linux guides
|
||||
x-toc-enable: true
|
||||
...
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ date.
|
|||
|
||||
[GRUB](https://www.gnu.org/software/grub/) already has excellent
|
||||
documentation, but there are aspects of libreboot that deserve special
|
||||
treatment. libreboot provides the option to boot GNU GRUB directly, running on
|
||||
treatment. libreboot provides the option to boot GRUB directly, running on
|
||||
bare metal (instead of using BIOS or UEFI services).
|
||||
|
||||
[The Linux section](../gnulinux/) also has libreboot-specific guides for
|
||||
|
@ -18,7 +18,7 @@ setup. [A similar section exists for BSD operating systems](../bsd/)
|
|||
GRUB keyboard layouts
|
||||
=====================
|
||||
|
||||
It is possible to use *any* keymap in GNU GRUB.
|
||||
It is possible to use *any* keymap in GRUB.
|
||||
|
||||
Custom keyboard layout
|
||||
----------------------
|
||||
|
|
|
@ -42,9 +42,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
This is a desktop board using intel hardware (circa \~2009, ICH7
|
||||
southbridge, similar performance-wise to the ThinkPad X200. It can make
|
||||
|
@ -53,7 +53,7 @@ for quite a nifty desktop. Powered by libreboot.
|
|||
NOTE: D410PT is another name and it's the same board. Flash the exact same
|
||||
ROM and it should work.
|
||||
|
||||
NOTE: This board has a working framebuffer in Grub, but in GNU+Linux in
|
||||
NOTE: This board has a working framebuffer in Grub, but in Linux in
|
||||
native resolution the display is unusable due to some raminit issues.
|
||||
This board can however be used for building a headless server.
|
||||
|
||||
|
|
|
@ -43,9 +43,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|--------------|
|
||||
| **GNU GRUB** | Doesn't work |
|
||||
| **GRUB** | Doesn't work |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Doesn't work |
|
||||
| **SeaBIOS with GRUB** | Doesn't work |
|
||||
</div>
|
||||
If you just want flashing instructions, go to
|
||||
[../install/d945gclf.md](../install/d945gclf.md)
|
||||
|
|
|
@ -43,9 +43,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-------|
|
||||
| **GNU GRUB** | Slow! |
|
||||
| **GRUB** | Slow! |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
This is a desktop board using intel hardware (circa \~2009, ICH7
|
||||
southbridge, similar performance-wise to the ThinkPad X200. It can make
|
||||
|
@ -60,7 +60,7 @@ using an IDE SATA adapter. The SATA ports do work, but it's IDE emulation. The
|
|||
emulation is slow in DMA mode sia SeaBIOS, so SeaBIOS is configured to use PIO
|
||||
mode on this board. This SeaBIOS configuration does not affect the Linux kernel.
|
||||
|
||||
You need to set a custom MAC address in GNU+Linux for the NIC to work.
|
||||
You need to set a custom MAC address in Linux for the NIC to work.
|
||||
In /etc/network/interfaces on debian-based systems like Debian or
|
||||
Devuan, this would be in the entry for your NIC:\
|
||||
hwaddress ether macaddressgoeshere
|
||||
|
|
|
@ -43,9 +43,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
Information to be written soon, but this board is merged in libreboot.
|
||||
|
||||
|
|
|
@ -137,7 +137,7 @@ handling.
|
|||
How to find what EC version you have (i945/GM45)
|
||||
------------------------------------------------
|
||||
|
||||
In GNU+Linux, you can try this:
|
||||
In Linux, you can try this:
|
||||
|
||||
grep 'at EC' /proc/asound/cards
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ Flashing instructions can be found at
|
|||
[../install/](../install/) - note that external
|
||||
flashing is required (e.g. RPi), if the proprietary (ASUS) firmware is
|
||||
currently installed. If you already have libreboot/libreboot/coreboot, by default
|
||||
it is possible to re-flash using software running in GNU+Linux on the kcma-d8,
|
||||
it is possible to re-flash using software running in Linux on the kcma-d8,
|
||||
without using external hardware.
|
||||
|
||||
If you currently have the ASUS firmware, please ignore the above link and
|
||||
|
@ -170,7 +170,7 @@ considerations:
|
|||
version of coreboot nowadays)
|
||||
- SAS (via PIKE 2008 module) requires non-free option ROM (and
|
||||
SeaBIOS) to boot from it (theoretically possible to replace, but you
|
||||
can put a kernel in CBFS or on SATA and use that to boot GNU, which
|
||||
can put a kernel in CBFS or on SATA and boot from that, which
|
||||
can be on a SAS drive. The linux kernel can use those SAS drives
|
||||
(via PIKE module) without an option ROM).
|
||||
NOTE: SeaBIOS can load PCI-E option ROMs, and by default it will do so in
|
||||
|
|
|
@ -43,9 +43,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------------|
|
||||
| **GNU GRUB** | Partially works |
|
||||
| **GRUB** | Partially works |
|
||||
| **SeaBIOS** | Partially works |
|
||||
| **SeaBIOS with GNU GRUB** | Partially works |
|
||||
| **SeaBIOS with GRUB** | Partially works |
|
||||
</div>
|
||||
|
||||
This is a server board using AMD hardware (Fam10h). It can also be used
|
||||
|
|
|
@ -24,7 +24,7 @@ Flashing instructions can be found at
|
|||
[../install/\#flashrom](../install/#flashrom) - note that external
|
||||
flashing is required, if the proprietary (ASUS) firmware is
|
||||
currently installed. If you already have libreboot, by default it is
|
||||
possible to re-flash using software running in GNU+Linux on the
|
||||
possible to re-flash using software running in Linux on the
|
||||
KGPE-D16, without using external hardware.
|
||||
|
||||
CPU compatibility
|
||||
|
@ -85,7 +85,7 @@ Current issues {#issues}
|
|||
- LRDIMM memory modules are currently incompatible
|
||||
- SAS (via PIKE 2008 module) requires non-free option ROM (and
|
||||
SeaBIOS) to boot from it (theoretically possible to replace, but you
|
||||
can put a kernel in CBFS or on SATA and use that to boot GNU, which
|
||||
can put a kernel in CBFS or on SATA and boot from that, which
|
||||
can be on a SAS drive. The linux kernel can use those SAS drives
|
||||
(via PIKE module) without an option ROM).
|
||||
- SeaBIOS lacked serial console support out-of-the-box in release 20160907
|
||||
|
|
|
@ -46,9 +46,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
The MacBook1,1 and MacBook2,1 are very similar to the
|
||||
ThinkPad X60. It shares some hardware with the X60 such as the chipset.
|
||||
|
@ -237,7 +237,7 @@ The MacBook2,1 overheats a lot with libreboot, we still don't know why but a sim
|
|||
|
||||
Macfanctld is available on the default repos of many distributions.
|
||||
|
||||
For example, to install macfanctld on an Arch-based distro (Parabola, ...), you would run as root
|
||||
For example, to install macfanctld on an Arch-based distro, you would run as root
|
||||
|
||||
pacman -S macfanctld
|
||||
|
||||
|
@ -285,8 +285,8 @@ AltGr". Select this. The keypad enter key will then act as an AltGr
|
|||
everywhere.
|
||||
|
||||
|
||||
For Parabola or other systemd-based distributions you can enable AltGr
|
||||
manually. Simply add the line
|
||||
For Arch-based distributions you can enable AltGr manually. Simply add the
|
||||
line:
|
||||
|
||||
KEYMAP_TOGGLE=lv3:enter_switch
|
||||
|
||||
|
|
|
@ -47,9 +47,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
It is believed that all or most R400 laptops are compatible. See notes
|
||||
about [CPU
|
||||
|
|
|
@ -46,9 +46,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
This board as basically identical to the T500, and has very similar disassembly.
|
||||
You must take it apart and flash the chip externally.
|
||||
|
|
|
@ -46,9 +46,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
Introduction
|
||||
============
|
||||
|
|
|
@ -46,9 +46,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
Introduction
|
||||
============
|
||||
|
|
|
@ -44,9 +44,9 @@ P*: Partially works with blobs
|
|||
|
||||
| ***Payloads supported*** | |
|
||||
|---------------------------|-----------|
|
||||
| **GNU GRUB** | Works |
|
||||
| **GRUB** | Works |
|
||||
| **SeaBIOS** | Works |
|
||||
| **SeaBIOS with GNU GRUB** | Works |
|
||||
| **SeaBIOS with GRUB** | Works |
|
||||
</div>
|
||||
|
||||
Introduction
|
||||
|
|
|
@ -44,9 +44,9 @@ P*: Частково працює з бінарними компонентами
|
|||
|
||||
| ***Корисні навантаження*** | |
|
||||
|-----------------------------|-----------|
|
||||
| **GNU GRUB** | Працює |
|
||||
| **GRUB** | Працює |
|
||||
| **SeaBIOS** | Працює |
|
||||
| **SeaBIOS з GNU GRUB** | Працює |
|
||||
| **SeaBIOS з GRUB** | Працює |
|
||||
</div>
|
||||
|
||||
Вступ
|
||||
|
|
|
@ -17,7 +17,7 @@ Installing libreboot
|
|||
Documentation related to operating systems
|
||||
============================
|
||||
|
||||
- [GNU+Linux Guides](gnulinux/)
|
||||
- [Linux Guides](gnulinux/)
|
||||
- [How to install BSD on an x86 host system](bsd/)
|
||||
|
||||
Information for developers
|
||||
|
|
|
@ -17,7 +17,7 @@ libreboot. Новини, включаючи оголошення про випу
|
|||
Документація, яка має відношення до операційних систем
|
||||
============================
|
||||
|
||||
- [Керівництва GNU+Linux](gnulinux/)
|
||||
- [Керівництва Linux](gnulinux/)
|
||||
- [Як встановити BSD на x86 хостову систему](bsd/)
|
||||
|
||||
Інформація для розробників
|
||||
|
|
|
@ -48,7 +48,7 @@ Here is an image of the flash chip:\
|
|||
![](https://av.libreboot.org/ga-g41m-es2l/ga-g41m-es2l.jpg)
|
||||
|
||||
Internal flashing is possible. Boot with the proprietary BIOS and
|
||||
GNU+Linux. There are 2 flash chips (one is backup).
|
||||
Linux. There are 2 flash chips (one is backup).
|
||||
|
||||
Flash the first chip:
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ Payload names
|
|||
|
||||
### grub
|
||||
|
||||
ROM images with just `grub` in the file name will start first with the GNU GRUB
|
||||
ROM images with just `grub` in the file name will start first with the GRUB
|
||||
payload. They may or may not also provide other payloads in the menu, such as
|
||||
memtest86+, SeaBIOS, Tianacore and so on.
|
||||
|
||||
|
@ -123,7 +123,7 @@ an option in the boot menu.
|
|||
### seabios\_withgrub
|
||||
|
||||
ROM images that have `seabios_withgrub` in the file name start with SeaBIOS
|
||||
first, but also have GNU GRUB available in the boot menu when you press ESC.
|
||||
first, but also have GRUB available in the boot menu when you press ESC.
|
||||
|
||||
### seabios\_grubfirst (DEFUNCT, WAS INTENDED ONLY FOR DESKTOPS)
|
||||
|
||||
|
@ -221,7 +221,7 @@ Run flashrom on host CPU
|
|||
------------------------
|
||||
|
||||
You can simply take any ROM image from the libreboot project, and flash it.
|
||||
Boot a GNU+Linux distribution on the target device, and install flashrom.
|
||||
Boot a Linux distribution on the target device, and install flashrom.
|
||||
|
||||
In some cases, this is not possible or there are other considerations. Please
|
||||
read this section *carefully*.
|
||||
|
@ -314,10 +314,10 @@ MacBook2,1 can be flashed internally.
|
|||
|
||||
#### ASUS KFSN4-DRE?
|
||||
|
||||
Simply boot GNU+Linux with the default vendor firmware, and flash it internally,
|
||||
Simply boot Linux with the default vendor firmware, and flash it internally,
|
||||
but before you do: take a push pin, remove the metal pin, and superglue the
|
||||
plastic part to the chip. Then remove the chip after you booting your
|
||||
GNU+Linux system. Install a new chip, and flash *that*.
|
||||
Linux system. Install a new chip, and flash *that*.
|
||||
|
||||
This board uses LPC flash in a PLCC32 socket. This coreboot page shows an
|
||||
example of the push pin as a proof of concept:
|
||||
|
@ -349,8 +349,8 @@ Here are a list of targets:
|
|||
* ThinkPad T60 with ATI GPU: flash the Headless T60 ROM (no video init, but you
|
||||
can get a serial console on the RS232 port if you use the Advanced Dock or
|
||||
Advanced Mini Dock. Connect to it from another machine, using null modem
|
||||
cable and USB serial adapter; GNU Screen can connect to the serial console
|
||||
and you will run it at 115200 baud rate. agetty/fgetty in GNU+Linux can give
|
||||
cable and USB serial adapter; *Screen* can connect to the serial console
|
||||
and you will run it at 115200 baud rate. agetty/fgetty in Linux can give
|
||||
you a serial console in your OS)
|
||||
|
||||
Download and build flashrom, using the instructions
|
||||
|
|
|
@ -244,9 +244,10 @@ The nvmutil source code is located under `util/nvmutil/` in the
|
|||
lbmk repository. A makefile is included there, for you to build an
|
||||
executable.
|
||||
|
||||
The nvmutil programs will work just fine, on any BSD operating
|
||||
system, or unix-like system such as GNU+Linux, Chimera Linux or
|
||||
Alpine Linux. You must be sure to have toolchains installed, for
|
||||
The nvmutil programs will work just fine, on any modern BSD Unix operating
|
||||
system, or unix-like system such as Linux.
|
||||
|
||||
You must be sure to have toolchains installed, for
|
||||
building; a normal libc, C compiler and linker should be enough.
|
||||
GCC and LLVM have all these things included, so use whichever one
|
||||
you want.
|
||||
|
|
|
@ -202,4 +202,4 @@ You should see something like this:
|
|||
|
||||
![](https://av.libreboot.org/t400/boot0.jpg) ![](https://av.libreboot.org/t400/boot1.jpg)
|
||||
|
||||
Now [install GNU+Linux](../gnulinux/).
|
||||
Now [install Linux](../gnulinux/).
|
||||
|
|
|
@ -31,7 +31,7 @@ libreboot is running.
|
|||
|
||||
*Internal* flashing means that the host CPU on your system can re-program the
|
||||
SPI flash, using an on-board SPI programmer (which all boards have). You do this
|
||||
from GNU+Linux, with flashrom.
|
||||
from Linux, with flashrom.
|
||||
|
||||
*This* guide that you're reading now is for using an *external* programmer. It
|
||||
is called *external* because it's not the *internal* one on your mainboard.
|
||||
|
@ -314,7 +314,7 @@ the problem here is that it gave Microsoft free reign to define whatever
|
|||
dependencies they liked (as per apt-get rules), and every time you updated,
|
||||
you would be pinging Microsoft servers. Do you think that is strange?
|
||||
|
||||
Microsoft shouldn't have *any* access to your GNU+Linux system! This was the
|
||||
Microsoft shouldn't have *any* access to your Linux system! This was the
|
||||
commit that Raspbian added to their distro, which added this what should rightly
|
||||
be called a security vulnerability, intentionally:
|
||||
|
||||
|
@ -361,7 +361,7 @@ script is also applicable to newer ubuntu versions
|
|||
If the `ubuntu2004` script complains about missing dependencies, just modify
|
||||
the script and remove those dependencies. The script is located
|
||||
at `resources/scripts/build/dependencies/ubuntu2004` and it is written for
|
||||
Ubuntu 20.04, but it should work fine in other GNU+Linux distributions that use
|
||||
Ubuntu 20.04, but it should work fine in other Linux distributions that use
|
||||
the `apt-get` package manager.
|
||||
|
||||
A `flashrom/` directory will be present, with a `flashrom` executable inside
|
||||
|
|
|
@ -221,4 +221,4 @@ You should see something like this:
|
|||
|
||||
![](https://av.libreboot.org/t400/boot0.jpg) ![](https://av.libreboot.org/t400/boot1.jpg)
|
||||
|
||||
Now [install GNU+Linux](../gnulinux/).
|
||||
Now [install Linux](../gnulinux/).
|
||||
|
|
|
@ -258,4 +258,4 @@ You should see something like this:
|
|||
|
||||
![](https://av.libreboot.org/t500/0062.jpg)
|
||||
|
||||
Now [install GNU+Linux](../gnulinux/).
|
||||
Now [install Linux](../gnulinux/).
|
||||
|
|
|
@ -87,7 +87,7 @@ You should see something like this:
|
|||
|
||||
![](https://av.libreboot.org/x200/disassembly/0019.jpg)
|
||||
|
||||
Now [install GNU+Linux](../gnulinux/).
|
||||
Now [install Linux](../gnulinux/).
|
||||
|
||||
X200S and X200 Tablet users: GPIO33 trick will not work.
|
||||
--------------------------------------------------------
|
||||
|
@ -141,7 +141,7 @@ probably setting something in memory and loading the ROM, plus a payload program
|
|||
that does the flashing; Lenovo BIOS then probably sees that and runs that, instead
|
||||
of setting PRx and going for normal boot. It is theoretically possible that we
|
||||
could discover how this works, by debugging the Lenovo BIOS update utility (in
|
||||
Windows), and then replicate what it is doing, with some tool for GNU+Linux,
|
||||
Windows), and then replicate what it is doing, with some tool for Linux,
|
||||
then load a flashrom binary into memory and the ROM to flash (for the BIOS
|
||||
region). You would do this with GPIO33 grounded, and the payload program would
|
||||
actually flash the entire chip, with just a normal libreboot image.
|
||||
|
|
|
@ -87,7 +87,7 @@ Tablet (для цих систем потрібно повністю видал
|
|||
|
||||
![](https://av.libreboot.org/x200/disassembly/0019.jpg)
|
||||
|
||||
Тепер [встановлюйте GNU+Linux](../gnulinux/).
|
||||
Тепер [встановлюйте Linux](../gnulinux/).
|
||||
|
||||
Користувачі X200S та X200 Tablet: трюк GPIO33 не спрацює.
|
||||
--------------------------------------------------------
|
||||
|
@ -135,7 +135,7 @@ internal -w rom.rom:
|
|||
яка виконує перепрошивання; тоді Lenovo BIOS, ймовірно, бачить це та запускає це замість
|
||||
встановлення PRx і переходу до нормального завантаження. Теоретично можливо, що ми
|
||||
зможемо дізнатися, як це працює, налагодивши утиліту оновлення BIOS Lenovo (у
|
||||
Windows), а потім відтворивши її дії за допомогою якогось інструменту для GNU+Linux,
|
||||
Windows), а потім відтворивши її дії за допомогою якогось інструменту для Linux,
|
||||
а потім завантаживши двійковий файл flashrom в пам'ять та ROM для прошивки (для BIOS
|
||||
регіона). Ви б зробили це з заземленням GPIO33, і програма корисного навантаження
|
||||
фактично прошиє весь чіп, лише звичайним образом libreboot.
|
||||
|
|
|
@ -80,7 +80,7 @@ The lbmk design also helps to ease copyright licensing and compliance, because
|
|||
each part of lbmk is literally its own separate program. With this design, it
|
||||
means that most scripts do not directly link/embed/include each other. Because
|
||||
of this, it's much easier to have different licenses in use for different
|
||||
files. Generally speaking, lbmk is GNU GPLv3+, but it's perfectly OK, for
|
||||
files. Generally speaking, lbmk is GPLv3+, but it's perfectly OK, for
|
||||
example, to add files that are GPLv2 or other licenses. By comparison, if you
|
||||
were to have a C program under GPLv3, you could not \#include C libraries that
|
||||
are GPLv2, at least not directly, or there would be many pitfalls to avoid at
|
||||
|
@ -95,7 +95,7 @@ otherwise make whatever changes you like. As such, this is a reference guide
|
|||
for libreboot development.
|
||||
|
||||
Libreboot is a *coreboot distro*, focusing on integration. As such, direct
|
||||
development on software such as coreboot, GNU GRUB, SeaBIOS etc should ideally
|
||||
development on software such as coreboot, GRUB, SeaBIOS etc should ideally
|
||||
be done upstream, or if it's a project hosted by libreboot (such as ich9utils)
|
||||
developed in the corresponding separate repository.
|
||||
|
||||
|
@ -107,20 +107,20 @@ busybox+linux distribution, with musl libc, plus u-root, and implement a
|
|||
linux-based bootloader setup similar to Heads, but do it *lbmk-style*. The
|
||||
lbmk build system is designed for absolute simplicity and modularity, making
|
||||
it easy to understand and maintain. It intentionally avoids use of rather
|
||||
complicated programs such as GNU Autoconf; the Makefile in lbmk is just bolted
|
||||
complicated programs such as Autoconf; the Makefile in lbmk is just bolted
|
||||
on but it not required. The `lbmk` build system is a *non-design*; it evolved
|
||||
over time, into what it is today. Its modularity and simplicity of non-design
|
||||
allows you to easily rewrite large parts of it, whenever you want to do so.
|
||||
|
||||
lbmk is largely written in GNU BASH, and this is unlikely to change in the
|
||||
future. However, lbmk integrates several projects such as coreboot, GNU GRUB
|
||||
lbmk is written in POSIX shell scripts, and this is unlikely to change in the
|
||||
future. However, lbmk integrates several projects such as coreboot, GRUB
|
||||
or SeaBIOS, and these all have *their* own build systems aswell. The `lbmk`
|
||||
build system is the glue that puts all of these together to produce ROM images
|
||||
for users, in a completely automated fashion. The purpose of `lbmk` is to
|
||||
provide an *unattended* build process, with as little user interaction as
|
||||
possible. Thus, `lbmk` is an *automated build system*. It says on the libreboot
|
||||
home page that libreboot is a *coreboot distribution* in much the same way that
|
||||
Debian is a *GNU+Linux distribution*, and `lbmk` is what implements that!
|
||||
Alpine Linux is a *Linux distribution*, and `lbmk` is what implements that!
|
||||
|
||||
Continue reading, and you will learn of each file contained in `lbmk`. This
|
||||
document largely pertains to the version of `lbmk` as hosted in `lbmk.git`,
|
||||
|
@ -169,7 +169,7 @@ the license that most parts of `lbmk` are released under.
|
|||
Makefile
|
||||
========
|
||||
|
||||
For use with GNU Make, this is a frontend to `lbmk`, which can be used to run
|
||||
For use with *GNU* Make, this is a frontend to `lbmk`, which can be used to run
|
||||
various commands in `lbmk`.
|
||||
|
||||
Use of this file is purely optional, and largely beneficial if you simply want
|
||||
|
@ -229,7 +229,7 @@ download
|
|||
This is the main BASH script for downloading various components used by `lbmk`.
|
||||
For example, this script downloads coreboot. Scripts called by `download` may
|
||||
also apply patches and such, to the corresponding project; for example, it will
|
||||
apply custom patches to GNU GRUB.
|
||||
apply custom patches to GRUB.
|
||||
|
||||
This runs scripts in `resources/scripts/download`. For example:
|
||||
|
||||
|
@ -349,7 +349,7 @@ to a non-native arch means that necessary crossgcc-arch will be compiled and be
|
|||
available when building roms, but not necessarily built or discovered when
|
||||
individual scripts are called manually.*
|
||||
|
||||
The `payload_grub` entry specifies whether or not GNU GRUB is to be included in
|
||||
The `payload_grub` entry specifies whether or not GRUB is to be included in
|
||||
ROM images.
|
||||
|
||||
The `payload_grub_withseabios` entry specifies whether or not SeaBIOS is to
|
||||
|
@ -375,7 +375,7 @@ other than `default`, which is the default if the option is missing.
|
|||
The `grub_scan_disk` option specifies can be `ahci`, `ata` or `both`, and it
|
||||
determines which types of disks are to be scanned, when the `grub.cfg` file in
|
||||
GRUB payloads tries to automatically find other `grub.cfg` files supplied by
|
||||
your GNU+Linux distribution. On some machines, setting it to `ata` or `ahci`
|
||||
your Linux distribution. On some machines, setting it to `ata` or `ahci`
|
||||
can improve boot speed by reducing delays; for example, trying to scan `ata0`
|
||||
on a ThinkPad X60 with the optical drive may cause GRUB to hang, so on that
|
||||
machine it is advisable to set this option to `ahci` (becuse the default HDD
|
||||
|
@ -652,7 +652,7 @@ you want to provide some explanations about specific files.
|
|||
resources/grub/background/
|
||||
==========================
|
||||
|
||||
Splash screen images applied duing startup when using the GNU GRUB payload.
|
||||
Splash screen images applied duing startup when using the GRUB payload.
|
||||
|
||||
resources/grub/config/grub.cfg
|
||||
==============================
|
||||
|
@ -690,13 +690,13 @@ code.
|
|||
resources/grub/modules.list
|
||||
===========================
|
||||
|
||||
This file defines all modules that are to be included in builds of GNU GRUB.
|
||||
This file defines all modules that are to be included in builds of GRUB.
|
||||
They are standalone builds, created using the `grub-mkstandalone` utility.
|
||||
|
||||
resources/grub/patches/
|
||||
=======================
|
||||
|
||||
This directory contains custom patches for GNU GRUB.
|
||||
This directory contains custom patches for GRUB.
|
||||
|
||||
resources/memtest86plus/patch/
|
||||
==============================
|
||||
|
@ -1038,7 +1038,7 @@ Command: `./download flashrom`
|
|||
resources/scripts/download/grub
|
||||
===============================
|
||||
|
||||
This downloads and patches GNU GRUB.
|
||||
This downloads and patches GRUB.
|
||||
|
||||
Command: `./download grub`
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ If powertop doesn't work, another way (reduces battery life slightly)
|
|||
is to add *processor.max\_cstate=2* to the *linux* line in grub.cfg,
|
||||
using [this guide](../gnulinux/grub_cbfs.md).
|
||||
|
||||
High Pitched Whining Noise on Idle in Parabola
|
||||
High Pitched Whining Noise on Idle in Arch-based distros
|
||||
==============================================================
|
||||
|
||||
The following removes most of the noise. It reduces what is a high
|
||||
|
@ -91,14 +91,14 @@ included inside the ROM. Connect your null modem cable to the serial
|
|||
port on the dock and connect the other end to a 2nd system using your
|
||||
USB Serial adapter.
|
||||
|
||||
On the 2nd system, you can try this (using GNU Screen):
|
||||
On the 2nd system, you can try this (using `screen`):
|
||||
|
||||
sudo screen /dev/ttyUSB0 115200
|
||||
|
||||
How to quit GNU Screen: Ctrl+A then release and press K, and then press
|
||||
How to quit Screen: Ctrl+A then release and press K, and then press
|
||||
Y.
|
||||
|
||||
There are also others like Minicom but I like GNU Screen
|
||||
There are also others like Minicom but Screen works nicely.
|
||||
|
||||
By doing this before booting the X60/T60, you will see console output
|
||||
from libreboot. You will also see GRUB displaying on the serial output,
|
||||
|
@ -280,7 +280,7 @@ using more power) non-stop, which will drain battery life if this is a
|
|||
laptop. If power usage is a concern, then you should not use this.
|
||||
(we're also not sure whether this workaround is appropriate)*
|
||||
|
||||
To disable c-states, do this in GNU+Linux:
|
||||
To disable c-states, do this in Linux:
|
||||
|
||||
```
|
||||
for i in /sys/devices/system/cpu/cpu/cpuidle/state/disable;
|
||||
|
|
|
@ -169,12 +169,12 @@ Statically linked
|
|||
|
||||
Libreboot includes statically linked executables in some releases, built from
|
||||
the available source code. Those executables have certain libraries built into
|
||||
them, so that the executables will work on many GNU+Linux distros.
|
||||
them, so that the executables will work on many Linux distros.
|
||||
|
||||
Libreboot 20160907 was built in Trisquel GNU+Linux, version 7.0 64-bit.
|
||||
Libreboot 20160907 was built in Trisquel Linux, version 7.0 64-bit.
|
||||
Some older Libreboot releases will have been built in Trisquel 6.0.1.
|
||||
|
||||
To comply with GNU GPL v2, Trisquel 6 and 7 source ISOs are supplied by the
|
||||
To comply with GPL v2, Trisquel 6 and 7 source ISOs are supplied by the
|
||||
Libreboot project. You can find these source ISOs in the `ccsource` directory
|
||||
on the `rsync` mirrors.
|
||||
|
||||
|
|
|
@ -169,12 +169,12 @@ crontab. Ця сторінка розповідає вам, як викорис
|
|||
|
||||
Libreboot включає статично зв'язані виконувані файли в деяких випусках, побудовані з
|
||||
доступного джерельного кода. Ці виконувані файли мають деякі бібліотеки, вбудовані в
|
||||
них, так щоб виконувані файли працювали на багатьох дистрибутивах GNU+Linux.
|
||||
них, так щоб виконувані файли працювали на багатьох дистрибутивах Linux.
|
||||
|
||||
Libreboot 20160907 було побудовано в Trisquel GNU+Linux, версія 7.0 64-біти.
|
||||
Libreboot 20160907 було побудовано в Trisquel Linux, версія 7.0 64-біти.
|
||||
Деякі старіші випуски Libreboot буде побудовано в Trisquel 6.0.1.
|
||||
|
||||
Для дотримання GNU GPL v2, Trisquel 6 та 7 джерельні ISO постачаються
|
||||
Для дотримання GPL v2, Trisquel 6 та 7 джерельні ISO постачаються
|
||||
проектом Libreboot. Ви можете знайти ці джерельні ISO в директорії `ccsource`
|
||||
на дзеркалах `rsync`.
|
||||
|
||||
|
|
18
site/faq.md
18
site/faq.md
|
@ -84,7 +84,7 @@ service when you connect the ethernet cable:
|
|||
|
||||
sudo service network-manager restart
|
||||
|
||||
On Parabola, you can try:
|
||||
On systemd-based distros, you might try:
|
||||
|
||||
sudo systemctl restart network-manager
|
||||
|
||||
|
@ -102,7 +102,7 @@ Loading the option ROM from the PIKE2008 module on either ASUS KCMA-D8
|
|||
or KGPE-D16 causes the system to hang at boot. It's possible to use
|
||||
this in the payload (if you use a linux kernel payload, like linuxboot),
|
||||
or to boot (with SeaGRUB and/or SeaBIOS) from regular SATA and then use
|
||||
it in GNU+Linux. The Linux kernel is capable of using the PIKE2008
|
||||
it in Linux. The Linux kernel is capable of using the PIKE2008
|
||||
module without loading the option ROM.
|
||||
|
||||
How to save kernel panic logs on thinkpad laptops?
|
||||
|
@ -678,11 +678,11 @@ boot just fine, using the bootloader (GRUB) that is in the flash chip.
|
|||
This also means that even if you remove the HDD or SSD, you'll still
|
||||
have a functioning bootloader installed which could be used to boot a
|
||||
live distribution installer from a USB flash drive. See
|
||||
[How to install GNU+Linux on a libreboot system](../docs/gnulinux/grub_boot_installer.md)
|
||||
[How to install Linux on a libreboot system](../docs/gnulinux/grub_boot_installer.md)
|
||||
|
||||
Nowadays, other payloads are also provided. If you're using the SeaBIOS payload,
|
||||
then the normal MBR bootsector is used on your HDD or SSD, like you would
|
||||
expect. So the above paragraphs only apply to the GNU GRUB payload.
|
||||
expect. So the above paragraphs only apply to the GRUB payload.
|
||||
|
||||
Do I need to re-flash when I re-install a distribution?
|
||||
-------------------------------------------------------------------------------------------
|
||||
|
@ -802,7 +802,7 @@ is transparent to the user of the drive.
|
|||
HDDs and SSDs are quite complex, and these days contain quite complex
|
||||
hardware which is even capable of running an entire operating system (by
|
||||
this, we mean that the drive itself is capable of running its own
|
||||
embedded OS), even GNU+Linux or BusyBox/Linux.
|
||||
embedded OS), even Linux.
|
||||
|
||||
SSDs and HDDs are a special case, since they are persistent storage
|
||||
devices as well as computers.
|
||||
|
@ -968,12 +968,12 @@ as these are generally much safer.
|
|||
Operating Systems
|
||||
=================
|
||||
|
||||
Can I use GNU+Linux?
|
||||
Can I use Linux?
|
||||
--------------------------------------------------
|
||||
|
||||
Absolutely! It is well-tested in libreboot, and highly recommended. See
|
||||
[installing GNU+Linux](../docs/gnulinux/grub_boot_installer.md) and
|
||||
[booting GNU+Linux](../docs/gnulinux/grub_cbfs.md).
|
||||
[installing Linux](../docs/gnulinux/grub_boot_installer.md) and
|
||||
[booting Linux](../docs/gnulinux/grub_cbfs.md).
|
||||
|
||||
Any recent distribution should work, as long as it uses KMS (kernel mode
|
||||
setting) for the graphics.
|
||||
|
@ -983,7 +983,7 @@ Fedora won't boot? (may also be applicable to Redhat/CentOS)
|
|||
|
||||
On Fedora, by default the grub.cfg tries to boot linux in 16-bit mode. You
|
||||
just have to modify Fedora's GRUB configuration.
|
||||
Refer to [the GNU+Linux page](docs/gnulinux/).
|
||||
Refer to [the Linux page](docs/gnulinux/).
|
||||
|
||||
Can I use BSD?
|
||||
----------------------------------
|
||||
|
|
|
@ -84,7 +84,7 @@ Ethernet не працює на моєму X200/T400/X60/T60, коли я йог
|
|||
|
||||
sudo service network-manager restart
|
||||
|
||||
На Parabola ви можете спробувати:
|
||||
На systemd ви можете спробувати:
|
||||
|
||||
sudo systemctl restart network-manager
|
||||
|
||||
|
@ -102,7 +102,7 @@ Ethernet не працює на моєму X200/T400/X60/T60, коли я йог
|
|||
або KGPE-D16 викликає зависання системи під час завантаження. Можна використовувати
|
||||
це в корисному навантаженні (якщо ви використовуєте корисне навантаження ядра linux, таке як linuxboot),
|
||||
або завантажитись (з SeaGRUB та/або SeaBIOS) зі звичайного SATA, а потім використовувати
|
||||
це в GNU+Linux. Ядро Linux здатне використовувати PIKE2008
|
||||
це в Linux. Ядро Linux здатне використовувати PIKE2008
|
||||
модуль без завантаження Option ROM.
|
||||
|
||||
Як зберегти журнали паніки ядра на ноутбуках Thinkpad?
|
||||
|
@ -679,11 +679,11 @@ HDD або SSD під час встановлення нового дистри
|
|||
Це означає, що навіть якщо ви виймете жорсткий диск або твердотільний накопичувач, у вас всеодно
|
||||
буде встановлено функціонуючий завантажувач, який можна використовувати для завантаження програми
|
||||
встановлення дистрибутива з флеш-пам'яті USB. Див.
|
||||
[Як інсталювати GNU+Linux у системі libreboot](../docs/gnulinux/grub_boot_installer.md)
|
||||
[Як інсталювати Linux у системі libreboot](../docs/gnulinux/grub_boot_installer.md)
|
||||
|
||||
В даний час також передбачені інші корисні навантаження. Якщо ви використовуєте корисне навантаження SeaBIOS,
|
||||
тоді на вашому HDD або SSD використовується звичайний завантажувальний сектор MBR, як і слід було
|
||||
очікувати. Отже, наведені вище параграфи стосуються лише корисного навантаження GNU GRUB.
|
||||
очікувати. Отже, наведені вище параграфи стосуються лише корисного навантаження GRUB.
|
||||
|
||||
Чи потрібно мені перепрошивати, коли я перевстановлю дистрибутив?
|
||||
-------------------------------------------------------------------------------------------
|
||||
|
@ -803,7 +803,7 @@ AHCI/SATA), який програмне забезпечення ОС може
|
|||
Жорсткі диски та твердотільні накопичувачі є досить складними, і сьогодні містять досить складне
|
||||
обладнання, яке навіть здатне запускати цілу операційну систему (під цим ми маємо
|
||||
на увазі, що сам диск здатний запускати свою власну вбудовану ОС), навіть
|
||||
GNU+Linux або BusyBox/Linux.
|
||||
Linux або BusyBox/Linux.
|
||||
|
||||
SSD та HDD є особливим випадком, оскільки вони є постійними пристроями зберігання,
|
||||
а також комп'ютерами.
|
||||
|
@ -969,12 +969,12 @@ WWAN, підключення до мережі 3g/4g (наприклад, GSM).
|
|||
Операційні системи
|
||||
=================
|
||||
|
||||
Чи я можу використовувати GNU+Linux?
|
||||
Чи я можу використовувати Linux?
|
||||
--------------------------------------------------
|
||||
|
||||
Абсолютно! Він добре перевірений в libreboot, та дуже рекомендований. Подивіться
|
||||
[встановлення GNU+Linux](../docs/gnulinux/grub_boot_installer.md) та
|
||||
[запуск GNU+Linux](../docs/gnulinux/grub_cbfs.md).
|
||||
[встановлення Linux](../docs/gnulinux/grub_boot_installer.md) та
|
||||
[запуск Linux](../docs/gnulinux/grub_cbfs.md).
|
||||
|
||||
Будь-який сучасний дистрибутив має працювати, допоки він використовує KMS (kernel mode
|
||||
setting) для графіки.
|
||||
|
@ -984,7 +984,7 @@ Fedora не завантажується? (також може бути заст
|
|||
|
||||
У Fedora типово grub.cfg намагається завантажити linux в 16-розрядному режимі.
|
||||
Вам просто потрібно змінити конфігурацію GRUB Fedora.
|
||||
Зверніться до [сторінки GNU+Linux](docs/gnulinux/).
|
||||
Зверніться до [сторінки Linux](docs/gnulinux/).
|
||||
|
||||
Чи я можу використовувати BSD?
|
||||
----------------------------------
|
||||
|
|
|
@ -34,9 +34,9 @@ notabug (bucts is also there):
|
|||
You can download any of these repositories, make whatever changes you like, and
|
||||
then submit your changes using the instructions below.
|
||||
|
||||
It is recommended that you build libreboot (all parts of it) in a GNU+Linux
|
||||
It is recommended that you build libreboot (all parts of it) in a Linux
|
||||
distribution. For example, the build system (lbmk) is untested on BSD systems.
|
||||
Install `git` in your GNU+Linux system, and download one of the repositories.
|
||||
Install `git` in your Linux system, and download one of the repositories.
|
||||
|
||||
Development of libreboot is done using the Git version control system.
|
||||
Refer to the [official Git documentation](https://git-scm.com/doc) if you don't
|
||||
|
|
|
@ -35,8 +35,8 @@ notabug (bucts is also there):
|
|||
потім надіслати свої зміни, дотримуючись інструкцій нижче.
|
||||
|
||||
Рекомендовано створювати libreboot (усі його частини) у дистрибутиві
|
||||
GNU+Linux. Наприклад, система збірки (lbmk) не перевірена на системах BSD.
|
||||
Встановіть `git` у вашій системі GNU+Linux, і завантажте одне із сховищ.
|
||||
Linux. Наприклад, система збірки (lbmk) не перевірена на системах BSD.
|
||||
Встановіть `git` у вашій системі Linux, і завантажте одне із сховищ.
|
||||
|
||||
Розробка libreboot виконується за допомогою системи контролю версій Git.
|
||||
Зверніться до [офіційної документації Git](https://git-scm.com/doc), якщо ви не
|
||||
|
|
|
@ -6,7 +6,7 @@ x-toc-enable: true
|
|||
Libreboot est un micrologiciel de démarrage [libéré](freedom-status.md)
|
||||
qui initialise le matériel (càd le contrôleur mémoire, CPU,
|
||||
périphériques) sur [des ordinateurs x86/ARM spécifiques](docs/hardware/)
|
||||
et lance un chargeur d'amorçage pour votre système d'exploitation. [GNU+Linux](docs/gnulinux/) et [BSD](docs/bsd/) sont bien supportés. C'est un
|
||||
et lance un chargeur d'amorçage pour votre système d'exploitation. [Linux](docs/gnulinux/) et [BSD](docs/bsd/) sont bien supportés. C'est un
|
||||
remplacement pour le micrologiciel UEFI/BIOS propriétaire.
|
||||
Des canaux d'aide sont disponibles
|
||||
dans le canal [\#libreboot](https://web.libera.chat/#libreboot) sur le serveur IRC [Libera](https://libera.chat/).
|
||||
|
@ -51,7 +51,7 @@ pas de fournir un Coreboot déblobbé; ceci n'est simplement qu'une
|
|||
des politiques de Libreboot, une importante certes, mais qui n'est qu'un
|
||||
aspect mineur de Libreboot.
|
||||
|
||||
De la même façon que *Debian* est une distribution GNU+Linux, Libreboot
|
||||
De la même façon que *Alpine Linux* est une distribution Linux, Libreboot
|
||||
est une *distribution coreboot*. Si vous voulez compilé une image ROM
|
||||
en partant des bases, vous devez alors effectuer une configuration experte
|
||||
de Coreboot, GRUB et n'importe quel autre logiciel dont vous avez besoin
|
||||
|
|
|
@ -7,7 +7,7 @@ The `libreboot` project provides
|
|||
[libre](freedom-status.md) *boot
|
||||
firmware* that initializes the hardware (e.g. memory controller, CPU,
|
||||
peripherals) on [specific Intel/AMD x86 and ARM targets](docs/hardware/), which
|
||||
then starts a bootloader for your operating system. [GNU+Linux](docs/gnulinux/)
|
||||
then starts a bootloader for your operating system. [Linux](docs/gnulinux/)
|
||||
and [BSD](docs/bsd/) are well-supported. It replaces proprietary BIOS/UEFI
|
||||
firmware. Help is available
|
||||
via [\#libreboot](https://web.libera.chat/#libreboot)
|
||||
|
@ -51,7 +51,7 @@ In fact, Libreboot tries to stay as close to *stock* coreboot as possible,
|
|||
for each board, but with many different types of configuration provided
|
||||
automatically by the Libreboot build system.
|
||||
|
||||
In the same way that *Debian* is a GNU+Linux distribution, `libreboot` is
|
||||
In the same way that *Alpine Linux* is a *Linux distribution*, `libreboot` is
|
||||
a *coreboot distribution*. If you want to build a ROM image from scratch, you
|
||||
otherwise have to perform expert-level configuration of coreboot, GRUB and
|
||||
whatever other software you need, to prepare the ROM image. With *libreboot*,
|
||||
|
|
|
@ -7,7 +7,7 @@ x-toc-enable: true
|
|||
[вільну](freedom-status.md) *завантажувальну
|
||||
прошивку*, яка ініціалізує апаратне забезпечення (наприклад, контролер пам'яті, ЦП,
|
||||
периферію) на [конкретних цілях Intel/AMD x86 та ARM](docs/hardware/), що
|
||||
потім розпочинає завантажувач для вашої операційної системи. [GNU+Linux](docs/gnulinux/)
|
||||
потім розпочинає завантажувач для вашої операційної системи. [Linux](docs/gnulinux/)
|
||||
та [BSD](docs/bsd/) добре підтримуються. Це заміняє пропрієтарну BIOS/UEFI
|
||||
прошивку. Допомога доступна
|
||||
через [\#libreboot](https://web.libera.chat/#libreboot)
|
||||
|
@ -45,7 +45,7 @@ Coreboot помітно складний для встановлення для
|
|||
Чим libreboot відрізняється від звичайного coreboot?
|
||||
---------------------------------------------
|
||||
|
||||
Таким же самим чином, як *Debian* це дистрибутив GNU+Linux, `libreboot` це
|
||||
Таким же самим чином, як *Debian* це дистрибутив Linux, `libreboot` це
|
||||
*дистрибутив coreboot*. Якщо ви хочете зібрати образ ROM з нуля, вам
|
||||
інакше довелось би виконати налаштування експертного рівня coreboot, GRUB та
|
||||
будь-якого іншого потрібного програмного забезпечення, для підготування образа ROM. З *libreboot*,
|
||||
|
|
|
@ -36,7 +36,6 @@ Revision notes (22nd June 2014)
|
|||
April 2014)
|
||||
- Made "DeJavu Sans Mono" the default font in GRUB (fixes border
|
||||
corruption).
|
||||
- re-added background image in GRUB (meditating GNU)
|
||||
- added 6 more images:
|
||||
- coreboot\_ukqwerty.rom (UK Qwerty keyboard layout in GRUB)
|
||||
- coreboot\_serial\_ukqwerty.rom (UK Qwerty keyboard layout in
|
||||
|
@ -60,8 +59,7 @@ Revision notes (22nd June 2014)
|
|||
modifying it easier)
|
||||
- Renamed X60\_binary.tar.gz and X60\_source.tar.gz to
|
||||
libreboot\_bin.tar.gz and libreboot\_src.tar.gz, respectively.
|
||||
- Replaced "GNU GRUB version" with "FREE AS IN FREEDOM" on GNU
|
||||
GRUB start screen.
|
||||
- Replaced GRUB version with "FREE AS IN FREEDOM" on the GRUB start screen.
|
||||
- Added sha512.txt files in libreboot\_src and libreboot\_bin. (inside
|
||||
the archives)
|
||||
- Added libreboot\_bin.tar.gz.sha512.txt and
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
Revisions for r20140903 (6th beta) (3rd September 2014)
|
||||
-------------------------------------------------------
|
||||
|
||||
- Added modified builddeb\* scripts for Parabola GNU+Linux-libre:
|
||||
- Added modified builddeb\* scripts for Arch-based distros:
|
||||
buildpac, buildpac-flashrom, buildpac-bucts (courtesy of Noah
|
||||
Vesely)
|
||||
- Documentation: updated all relevant areas to mention use of
|
||||
|
|
|
@ -55,15 +55,10 @@ Changes for this release (latest changes first, earliest changes last)
|
|||
links to info about the ethernet controller (Intel 82573).
|
||||
- Documentation: x60\_security.html and t60\_security.html: added
|
||||
notes about DMA and the docking station.
|
||||
- Documentation: configuring\_parabola.html: basic post-install steps
|
||||
for Parabola GNU+Linux (helpful, since libreboot development is
|
||||
being moved to Parabola at the time of writing).
|
||||
- builddeps-coreboot: use 'make crossgcc-i386' instead of 'make
|
||||
crossgcc'. Libreboot only targets x86 at the time of writing.
|
||||
- ROM images no longer include SeaBIOS. Instead, the user adds it
|
||||
afterwards. Documentation and scripts updated.
|
||||
- docs/images/encrypted\_parabola.html: Notes about linux-libre-grsec
|
||||
- Documentation: encrypted\_parabola.html: add tutorial for encrypted
|
||||
Parabola GNU+Linux installation.
|
||||
- Documentation: added more info about wifi chipsets
|
||||
|
||||
|
|
|
@ -113,8 +113,8 @@ Changes for this release (latest changes first, earliest changes last)
|
|||
- build: Only generate the GRUB configurations once (re-use on all
|
||||
images)
|
||||
- Only build 2 GRUB payload executables, re-use on all boards.
|
||||
- resources/utilities/grub-assemble/gen.txtmode.sh: Use GNU BASH\
|
||||
resources/utilities/grub-assemble/gen.vesafb.sh: Use GNU BASH
|
||||
- resources/utilities/grub-assemble/gen.txtmode.sh: Use BASH\
|
||||
resources/utilities/grub-assemble/gen.vesafb.sh: Use BASH
|
||||
- scripts (error handling): Replace exit with exit 1 (make debugging
|
||||
easier)
|
||||
- Move most files in CBFS to GRUB memdisk, except grub.cfg and
|
||||
|
|
|
@ -55,7 +55,7 @@ installed r20150126 don't really need to update to this release.
|
|||
- docs/hardware/: update list of compatible T60 LCD panels
|
||||
- docs/: more clarification of libreboot's stated purpose.
|
||||
- build-release: include the commitid file in the release archives
|
||||
- docs/: Further emphasize the GNU+Linux requirement.
|
||||
- docs/: Further emphasize the Linux requirement.
|
||||
- lenovobios\_firstflash: fix BASH errors
|
||||
- lenovobios\_secondflash: fix BASH errors
|
||||
- docs/install/x200\_external.html: Tell user to switch MAC address.
|
||||
|
|
|
@ -139,7 +139,7 @@ Changes for this release, relative to r20150208 (earliest changes last, recent c
|
|||
- coreboot-libre: don't delete the .spd.hex files (they are not
|
||||
blobs)
|
||||
- build/release/archives: don't put rmodtool in libreboot\_util
|
||||
- docs/install/x200\_external.html: recommend installing GNU+Linux at
|
||||
- docs/install/x200\_external.html: recommend installing Linux at
|
||||
the end
|
||||
- docs/install/x200\_external.html: add more photos, improve
|
||||
instructions
|
||||
|
|
|
@ -120,7 +120,7 @@ LVDS higher resolution LCD panels (T400, T500). (thanks Arthur Heymans)
|
|||
Massively improved GRUB configuration, making it easier to boot more
|
||||
encrypted systems automatically, and generally a more useful menu for
|
||||
booting the system (thanks go to Klemens Nanni of the autoboot project).
|
||||
Libreboot now uses the grub.cfg provided by the installed GNU+Linux
|
||||
Libreboot now uses the grub.cfg provided by the installed Linux
|
||||
distribution automatically, if present, switching to that configuration.
|
||||
This is done across many partitions, where libreboot actively searches
|
||||
for a configuration file (also on LVM volumes and encrypted volumes).
|
||||
|
|
|
@ -13,7 +13,7 @@ Libreboot is free (as in freedom) boot firmware, which initializes the hardware
|
|||
can run. Libreboot then starts a bootloader to load your operating system. It
|
||||
replaces the proprietary BIOS/UEFI firmware typically found on a computer.
|
||||
Libreboot is compatible with specifical computer models that use the Intel/AMD
|
||||
x86 architecture. Libreboot works well with GNU+Linux and BSD operating systems.
|
||||
x86 architecture. Libreboot works well with Linux and BSD operating systems.
|
||||
|
||||
The last Libreboot release, version 20160907, was released on September 7th
|
||||
in 2016. *This* new release, Libreboot 20210522, is being released today on May
|
||||
|
@ -224,9 +224,9 @@ compared to the Libreboot 20160907 build system:
|
|||
and on those it completely stalls (it gets to the logo screen, but crashes,
|
||||
so it never reaches the UEFI shell program). Getting Tianocore to work is
|
||||
a priority for the *next* Libreboot release; Tianocore is free software, and
|
||||
can work quite well but it does need some maintenance first. GNU+Linux distros
|
||||
can work quite well but it does need some maintenance first. Linux distros
|
||||
expect it nowadays (on x86), though the linux kernel can still run on bare
|
||||
metal and that is unlikely to change (so, GNU GRUB payload will always be
|
||||
metal and that is unlikely to change (so, GRUB payload will always be
|
||||
possible on x86). lbmk doesn't actually build tianocore. Instead, it modifies
|
||||
the *coreboot* build system, and uses the coreboot build system with a dummy
|
||||
board config, selecting Tianocore as the payload, and then it copies the
|
||||
|
@ -282,7 +282,7 @@ are greatly improved and there are *more* systems documented now.
|
|||
GRUB
|
||||
====
|
||||
|
||||
In GNU GRUB payloads, a much more recent version is used. The difference is
|
||||
In GRUB payloads, a much more recent version is used. The difference is
|
||||
literally: the GRUB version that Libreboot 20160907 uses was released 5 years
|
||||
ago. The version that this new Libreboot release uses is from *a few days ago*.
|
||||
|
||||
|
@ -293,7 +293,7 @@ payload complaining about missing modules.
|
|||
|
||||
In particular, GRUB now supports LUKSv2. In the Libreboot 20160907 release, it
|
||||
was necessary to downgrade LUKSv2 to LUKSv1 if you were doing a fully encrypted
|
||||
GNU+Linux installation (where the GRUB payload was expected to decrypt the /boot
|
||||
Linux installation (where the GRUB payload was expected to decrypt the /boot
|
||||
directory).
|
||||
|
||||
Keymaps are mostly the same, but now Colemak keyboard layout is supported. It
|
||||
|
@ -303,7 +303,7 @@ documentation and then re-build the ROM from source.
|
|||
The default GRUB configuration in Libreboot is much more automated now, with
|
||||
less hardcoded functionality. It's more optimized in general, especially on
|
||||
ICH7 platforms (e.g. ThinkPad X60, T60). Other features are implemented, such
|
||||
as automatically booting an installed GNU+Linux distro from an external USB
|
||||
as automatically booting an installed Linux distro from an external USB
|
||||
HDD or SSD (or flash drive!)
|
||||
|
||||
In GRUB payloads, SeaBIOS is no longer used to start GRUB, on any platform in
|
||||
|
@ -312,7 +312,7 @@ produce a so-called "SeaGRUB" payload has been abandoned. We simply use a
|
|||
standard SeaBIOS setup now. SeaBIOS is available in the GRUB menu (GRUB can
|
||||
load and execute any other coreboot payload).
|
||||
|
||||
One could argue that it's a GNU GRUB setup!
|
||||
One could argue that it's a GRUB setup!
|
||||
|
||||
Anyway, Libreboot 20160907 used GRUB at git commit ID
|
||||
7f2a856faec951b7ab816880bd26e1e10b17a596 March 2016.
|
||||
|
@ -320,7 +320,7 @@ Anyway, Libreboot 20160907 used GRUB at git commit ID
|
|||
This new Libreboot releases used GRUB c0e647eb0e2bd09315612446cb4d90f7f75cb44c
|
||||
from May 10th, 2021.
|
||||
|
||||
Download GNU GRUB from the upstream repository and check every commit
|
||||
Download GRUB from the upstream repository and check every commit
|
||||
since then.
|
||||
|
||||
GM45/X4X now set 352MiB VRAM by default
|
||||
|
@ -686,7 +686,7 @@ coreboot 4.12
|
|||
This is relevant for Tianocore, a UEFI payload, which libreboot currently
|
||||
does not integrate for any boards, but Tianocore integration is planned in
|
||||
the future. Tianocore provides the option to use any UEFI-compliant operating
|
||||
system, and this benefits GNU+Linux distributions aswell (it Just Works).
|
||||
system, and this benefits Linux distributions aswell (it Just Works).
|
||||
SMMSTORE is basically UEFI's answer to CMOS "NVRAM". it is a way to store
|
||||
configurations, in SPI flash. it's handled via SMM interrupts (SMIs). NOTE:
|
||||
SMMSTOREv2 is also becoming a thing now
|
||||
|
|
|
@ -10,7 +10,7 @@ Libreboot is free (as in freedom) boot firmware, which initializes the hardware
|
|||
can run. Libreboot then starts a bootloader to load your operating system. It
|
||||
replaces the proprietary BIOS/UEFI firmware typically found on a computer.
|
||||
Libreboot is compatible with specifical computer models that use the Intel/AMD
|
||||
x86 architecture. Libreboot works well with GNU+Linux and BSD operating systems.
|
||||
x86 architecture. Libreboot works well with Linux and BSD operating systems.
|
||||
|
||||
The last Libreboot release, version 20210522, was released on May 22nd
|
||||
in 2021. *This* new release, Libreboot 20211122, is released today on November
|
||||
|
|
|
@ -10,7 +10,7 @@ Libreboot is free (as in freedom) boot firmware, which initializes the hardware
|
|||
can run. Libreboot then starts a bootloader to load your operating system. It
|
||||
replaces the proprietary BIOS/UEFI firmware typically found on a computer.
|
||||
Libreboot is compatible with specifical computer models that use the Intel/AMD
|
||||
x86 architecture. Libreboot works well with GNU+Linux and BSD operating systems.
|
||||
x86 architecture. Libreboot works well with Linux and BSD operating systems.
|
||||
|
||||
The last Libreboot release, version 20211122, was released on November 22nd
|
||||
in 2021. *This* new release, Libreboot 20220710, is released today on July
|
||||
|
@ -24,13 +24,7 @@ Build from source
|
|||
-----------------
|
||||
|
||||
*This* release was build-tested on Debian 11. Your mileage may vary, with
|
||||
other distros. Portability is very much a goal for a future release; in
|
||||
particular, I want to port the Libreboot build system and everything it uses
|
||||
to build properly on OpenBSD, but I'm also interested in non-GNU Linux distros
|
||||
such as Alpine Linux.
|
||||
|
||||
Much of the Libreboot build system relies on GNU-specific features, in the
|
||||
BASH implementation of `sh`.
|
||||
other distros.
|
||||
|
||||
Work done since the 20211122 release:
|
||||
-------------------------------------
|
||||
|
@ -41,7 +35,7 @@ Work done since the 20211122 release:
|
|||
now a snapshot of the current Libreboot documentation, as per the time of
|
||||
release.
|
||||
* grub.cfg: Many performance improvements, improving the boot speeds
|
||||
when using the GNU GRUB payload (courtesy Ferass 'Vitali64' EL HAFIDI with
|
||||
when using the GRUB payload (courtesy Ferass 'Vitali64' EL HAFIDI with
|
||||
additional improvements made by Leah Rowe)
|
||||
* GM45/ICH9M laptops: Disable PECI in coreboot, to work around a microcode bug
|
||||
causing SpeedStep (and possibly other CPU features) to fail.
|
||||
|
@ -136,113 +130,3 @@ begun on this project. My efforts are currently focused on the Linux distro.
|
|||
|
||||
What I want is a fork of GRUB, optimized to run on bare metal as a coreboot
|
||||
payload, on x86 and ARM platforms.
|
||||
|
||||
Planned osboot/Libreboot merger
|
||||
-------------------------------
|
||||
|
||||
**NOTE: As of November 2022,
|
||||
[osboot has merged with and become part of Libreboot](merge.md), but
|
||||
the old repos at <https://notabug.org/osboot/> still exist and shall be
|
||||
preserved.**
|
||||
|
||||
*The plans below are a guiding principle, but the details may change, when
|
||||
or if (most likely when) this decision is implemented.*
|
||||
|
||||
In general, more hardware support is always a focus of the Libreboot project.
|
||||
With this in mind, a fundamental policy change in planned in the next release.
|
||||
|
||||
Read the policies of Libreboot and osboot. They differ, but the guiding
|
||||
philosophy behind them is exactly the same:
|
||||
|
||||
* <https://libreboot.org/news/policy.html>
|
||||
* <https://osboot.org/news/policy.html> (this will redirect to _newpolicy.html_
|
||||
on libreboot.org, and the current _policy.html_ will redirect
|
||||
to _oldpolicy.html_, on the libreboot site, when the decision is implemented)
|
||||
|
||||
The differences are clear, but they are not entirely irreconcilable. I had
|
||||
initially started *osboot* to be its own project, but I have concluded for some
|
||||
time now that this level of separation is inefficient. I've thought of a better
|
||||
way to run both projects. I initially planned to do an osboot release at the
|
||||
same time as a new Libreboot release, but this will no longer be done.
|
||||
|
||||
*This is the last Libreboot release*, under the current policy. The next
|
||||
Libreboot release will be conducted under a new policy, that accomodates both
|
||||
the current Libreboot policy and current osboot policy.
|
||||
|
||||
Basically, the differences between lbmk and osbmk are quite minor and osboot
|
||||
merely adds a few new features for platforms it supports that Libreboot does
|
||||
(can)not under current policy. This is not to say that the differences are
|
||||
not substantial, for those parts of osboot that do differ, but the overall
|
||||
structure and design of both build systems (libreboot and osboot) is exactly
|
||||
the same, and they're both easily adaptable.
|
||||
|
||||
What I want to do is refactor parts of the osboot build system so that you
|
||||
can pass an option (e.g. environmental variable) at build-time, which will
|
||||
dictate that any modules downloaded/built, and any ROMs built, will be created
|
||||
under current Libreboot policy.
|
||||
|
||||
Example, Libreboot-style, blobless:
|
||||
|
||||
FSDG= ./build boot roms all
|
||||
|
||||
Example, Osboot-style:
|
||||
|
||||
./build boot roms all
|
||||
|
||||
An option in `board.cfg` for each board would specify whether the given board
|
||||
can actually be built and booted this way, per current Libreboot policy.
|
||||
Therefore, a version of the current guidelines will still be made available.
|
||||
The *new* osboot-derived guidelines would be a separate document.
|
||||
|
||||
Where `board.cfg` does specify that FSDG is possible, non-FSDG configs can
|
||||
still be made available (for example: include microcode updates and don't
|
||||
provide microcode-related mitigations), while also providing FSDG compliant
|
||||
configs (no microcode updates, and related issues mitigated via patches if
|
||||
possible, e.g. PECI disable patch to fix SpeedStep on GM45/ICH9M machines).
|
||||
|
||||
This would then become the Libreboot build system, and the documentation on
|
||||
libreboot would integrate everything from osboot too, accomodating this new
|
||||
policy change. The Libreboot project would therefore have two policies:
|
||||
|
||||
* Current one, if building with FSDG option
|
||||
* Osboot one, if building without FSDG option
|
||||
|
||||
FSDG is the FSF guideline that Libreboot currently complies with, and which
|
||||
this release (Libreboot 20220710) adheres to.
|
||||
|
||||
Under this planned change, *two* sets of ROM images would be provided in
|
||||
the next Libreboot release:
|
||||
|
||||
* Limited subset, built based on current Libreboot policy. These sets would
|
||||
be similar to what you currently see in Libreboot releases.
|
||||
* Expanded set, based on current osboot policy
|
||||
|
||||
Under that next release, with the change made, both sets of ROM images would
|
||||
be built from the same source archive.
|
||||
|
||||
When this merger is conducted, the <https://osboot.org/> site will shut down
|
||||
and redirect (HTTP 301) to <https://libreboot.org/>. A new fusion of Libreboot
|
||||
and osboot will be born, continuing on *libreboot.org*.
|
||||
|
||||
This would then open up the Libreboot project to support more hardware, far
|
||||
more than it currently supports. The documentation would also be greatly
|
||||
improved, to more thoroughly specify what issues exist (if any) on a given
|
||||
board, as per *current Libreboot blob policy* and from an OSHW perspective.
|
||||
|
||||
The reason for this planned merger is pragmatic: I want to help more people
|
||||
to increase the amount of freedom they have, and most hardware currently
|
||||
supported by Libreboot is nearly impossible to find these days. In other words,
|
||||
it's a choice between abandoning Libreboot and focusing only on osboot, which
|
||||
itself is a new project that has to completely establish itself again, or to
|
||||
instead continue using the Libreboot name, and implementing this newly
|
||||
pragmatic decision as a means of *continuity*.
|
||||
|
||||
Even if more hardware is added to Libreboot under the current policy, I think
|
||||
this new change of direction is fundamentally *good*, because Libreboot is
|
||||
mainly about making coreboot as easy to use as possible. My feelings about
|
||||
this are already written in the current osboot policy.
|
||||
|
||||
I believe the Libreboot project is in a position to help people regardless, by
|
||||
focusing on the wider set of supported coreboot hardware while still catering
|
||||
to the existing Libreboot users (precisely the reason why the merger is
|
||||
planned, in exactly the manner as described above).
|
||||
|
|
|
@ -26,17 +26,7 @@ Build from source
|
|||
-----------------
|
||||
|
||||
*This* release was build-tested on Debian 11. Your mileage may vary, with
|
||||
other distros. Portability is very much a goal for a future release; in
|
||||
particular, I want to port the Libreboot build system and everything it uses
|
||||
to build properly on OpenBSD, but I'm also interested in non-GNU Linux distros
|
||||
such as Alpine Linux.
|
||||
|
||||
Much of the Libreboot build system relies on GNU-specific features, in the
|
||||
BASH implementation of `sh`.
|
||||
|
||||
Build-testing of x86 ROM images has been done on Arch Linux, latest version
|
||||
as of November 2022, but ARM was not tested at that time; it should simply be
|
||||
a matter of dependencies needed in pacman, so it should be possible to use it.
|
||||
other distros.
|
||||
|
||||
Work done since last release
|
||||
============================
|
||||
|
|
|
@ -76,7 +76,7 @@ as cost, and deployment strategies for libre systems to replace current
|
|||
proprietary systems; more importantly, it would require them to study ways of
|
||||
reducing (or eliminating) the need for citizens to use proprietary software
|
||||
for interactions with the state. The bill also promotes the principle
|
||||
of *copyleft* licensing, such as GNU GPL; regardless of how you feel about
|
||||
of *copyleft* licensing, such as the GPL; regardless of how you feel about
|
||||
copyleft versus permissive (BSD-style) licensing, the advancement of *any*
|
||||
libre software on such massive scale will help the entire movement.
|
||||
|
||||
|
|
|
@ -85,7 +85,7 @@ Imagine a world where such liberties over software are commonplace, actually
|
|||
the default everywhere! Imagine a world where it's considered as important as
|
||||
the ability to freely learn mathematics, or physics, as required reading
|
||||
material in schools. *Imagine a world where any five year old can install a
|
||||
libre operating system such as GNU+Linux, and Computer Science is mandatory in
|
||||
libre operating system such as Linux/BSD, and Computer Science is mandatory in
|
||||
schools from a young age. Imagine filing your tax returns with Libre Software,
|
||||
exclusively. Imagine not even thinking about that, because it became the norm.*
|
||||
|
||||
|
@ -178,12 +178,12 @@ javascript enabled, if you wish)
|
|||
They will try to trick the law makers by claiming things such as:
|
||||
|
||||
* **"Open Source is insecure / you will get hacked"** - nothing could be
|
||||
further from the truth! Free operating systems such as GNU+Linux, FreeBSD and
|
||||
further from the truth! Free operating systems such as Linux, FreeBSD and
|
||||
especially OpenBSD, are among the most secure operating systems available.
|
||||
* **"Open Source is used by criminal hackers"** - here, they use the
|
||||
term *hacker* to describe someone who illegally gains access to someone
|
||||
elses computer. Don't fall for it. Maintainers of libre operating systems
|
||||
like GNU+Linux distros or the BSDs are actively working to make the internet
|
||||
like Linux distros or the BSDs are actively working to make the internet
|
||||
and computers in general *more secure*
|
||||
* **"Software authors deserve to be paid!"** - In fact, many libre software devs
|
||||
are *paid* to work on Open Source! Many companies, including big ones,
|
||||
|
@ -221,7 +221,7 @@ They will try to trick the law makers by claiming things such as:
|
|||
pure nonsense, because the very freedoms provided by libre software (access
|
||||
to source code, ability to work on it yourself, and see what others did)
|
||||
means that people generally do not add malware to public software sources,
|
||||
because they'd be discovered instantly. *Distributions* of GNU+Linux and
|
||||
because they'd be discovered instantly. *Distributions* of Linux and
|
||||
other free operating systems are often maintained by many people, who verify
|
||||
the safety of each software package that they provide; they are also usually
|
||||
provided by each *distro*, in a central repository unlike with, say, Windows
|
||||
|
@ -241,7 +241,7 @@ They will try to trick the law makers by claiming things such as:
|
|||
If you're familiar with the *Matrix* films, proprietary operating systems like
|
||||
Windows/MacOS are basically like the Matrix; bland, no individuality, no
|
||||
independent thought, everything tightly controlled. By contrast, libre operating
|
||||
systems (such as GNU+Linux distributions or the BSDs) are like zion/io; vibrant,
|
||||
systems (such as Linux distributions or the BSDs) are like zion/io; vibrant,
|
||||
full of life, buzzing with activity, everything loose and free, and everyone
|
||||
is different (a highly diverse culture of people from all walks of life, acting
|
||||
in common cause but nonetheless individuals).
|
||||
|
|
Loading…
Reference in New Issue