parent
ced8eb21a7
commit
c518cff3d0
|
@ -21,9 +21,9 @@ Canoeboot's build system (called *cbmk*).
|
||||||
|
|
||||||
The homepage of Canoeboot says that Canoeboot is a *coreboot distro*, providing
|
The homepage of Canoeboot says that Canoeboot is a *coreboot distro*, providing
|
||||||
the necessary integration of coreboot, payloads and utilities so as to provide
|
the necessary integration of coreboot, payloads and utilities so as to provide
|
||||||
releases, much like Linux distros do for your operating system, but here we are
|
releases, much like GNU+Linux distros do for your operating system, but here we are
|
||||||
concerned about the *boot firmware* instead. Canoeboot is to coreboot, what
|
concerned about the *boot firmware* instead. Canoeboot is to coreboot, what
|
||||||
Debian is to Linux. It provides easier, more automated configuration and
|
Debian is to GNU+Linux. It provides easier, more automated configuration and
|
||||||
installation.
|
installation.
|
||||||
|
|
||||||
The build system, cbmk, *is* that coreboot distro, at its very core. You can
|
The build system, cbmk, *is* that coreboot distro, at its very core. You can
|
||||||
|
@ -75,18 +75,18 @@ This concerns system requirements when *building* Canoeboot.
|
||||||
Operating system
|
Operating system
|
||||||
----------------
|
----------------
|
||||||
|
|
||||||
Any sensible Linux distribution will do. Canoeboot's build system is regularly
|
Any sensible GNU+Linux distribution will do. Canoeboot's build system is regularly
|
||||||
testing on all the major distros. Please do report bugs if you encounter
|
testing on all the major distros. Please do report bugs if you encounter
|
||||||
issues.
|
issues.
|
||||||
|
|
||||||
These distros, specifically, are the *most* well-tested:
|
These distros, specifically, are the *most* well-tested:
|
||||||
|
|
||||||
* Debian Linux
|
* Debian
|
||||||
* Arch Linux
|
* Arch
|
||||||
* Fedora Linux
|
* Fedora
|
||||||
|
|
||||||
NOTE: Some patching is also done for non-glibc-based systems, such as
|
NOTE: Some patching is also done for non-glibc-based systems, such as
|
||||||
Alpine Linux, though we currently do not have an automated way to install
|
Alpine, though we currently do not have an automated way to install
|
||||||
build dependencies for these distros.
|
build dependencies for these distros.
|
||||||
|
|
||||||
NOTE: **Linux** is assumed. BSD systems may work, for parts of the build system,
|
NOTE: **Linux** is assumed. BSD systems may work, for parts of the build system,
|
||||||
|
@ -136,7 +136,7 @@ lot of space. However, Canoeboot is always expanding as it's developed.
|
||||||
|
|
||||||
At least 50GB of free disk space is therefor recommended.
|
At least 50GB of free disk space is therefor recommended.
|
||||||
|
|
||||||
We *actually* recommend 100GB, because Canoeboot will also have a Linux distro
|
We *actually* recommend 100GB, because Canoeboot will also have a small kernel
|
||||||
in flash on a future release. On our testing, disk I/O does not seem to be a
|
in flash on a future release. On our testing, disk I/O does not seem to be a
|
||||||
major bottleneck, so any HDD or SSD will do, but we obviously recommend a
|
major bottleneck, so any HDD or SSD will do, but we obviously recommend a
|
||||||
fast NVMe (PCI-E) SSD if you can.
|
fast NVMe (PCI-E) SSD if you can.
|
||||||
|
@ -711,7 +711,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
|
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
|
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
|
GRUB payloads tries to automatically find other `grub.cfg` files supplied by
|
||||||
your Linux distribution. On some machines, setting it to `ata` or `ahci`
|
your GNU+Linux distro. On some machines, setting it to `ata` or `ahci`
|
||||||
can improve boot speed by reducing delays; for example, trying to scan `ata0`
|
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
|
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
|
machine it is advisable to set this option to `ahci` (becuse the default HDD
|
||||||
|
|
|
@ -17,7 +17,7 @@ NO BASHISMS
|
||||||
|
|
||||||
Canoeboot's build system, cbmk (CanoeBoot MaKe) is written entirely in POSIX
|
Canoeboot's build system, cbmk (CanoeBoot MaKe) is written entirely in POSIX
|
||||||
shell (sh) scripts. This is thanks to the work done by Ferass El Hafidi on
|
shell (sh) scripts. This is thanks to the work done by Ferass El Hafidi on
|
||||||
the *Libreboot* build system, lbmk (LibreBoot MaKe), upon which Canoeboot is
|
the *Canoeboot* build system, cbmk (CanoeBoot MaKe), upon which Canoeboot is
|
||||||
based (Canoeboot's version is called *cbmk*, short for CanoeBoot MaKe).
|
based (Canoeboot's version is called *cbmk*, short for CanoeBoot MaKe).
|
||||||
|
|
||||||
Here is an *excellent* introduction to posix `sh` scripting:
|
Here is an *excellent* introduction to posix `sh` scripting:
|
||||||
|
|
|
@ -10,7 +10,7 @@ Introduction
|
||||||
|
|
||||||
Canoeboot is a free/libre BIOS/UEFI replacement on x86 and ARM, providing
|
Canoeboot is a free/libre BIOS/UEFI replacement on x86 and ARM, providing
|
||||||
boot firmware that initialises the hardware in your computer, to then load an
|
boot firmware that initialises the hardware in your computer, to then load an
|
||||||
operating system (e.g. Linux/BSD). It is specifically a *coreboot distribution*,
|
operating system (e.g. GNU+Linux). It is specifically a *coreboot distribution*,
|
||||||
in the same way that Trisquel is a GNU+Linux distribution. It provides an automated
|
in the same way that Trisquel is a GNU+Linux distribution. It provides an automated
|
||||||
build system to produce coreboot ROM images with a variety of payloads such as
|
build system to produce coreboot ROM images with a variety of payloads such as
|
||||||
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
||||||
|
@ -262,7 +262,7 @@ are highlighted in bold:
|
||||||
* coreboot/fam15h: More fixes, e.g. disable `-Werror` on binutils 2.32, and
|
* coreboot/fam15h: More fixes, e.g. disable `-Werror` on binutils 2.32, and
|
||||||
patch GNAT to make it work a bit nicer when built with newer host toolchains.
|
patch GNAT to make it work a bit nicer when built with newer host toolchains.
|
||||||
These boards were build-tested in mid-January 2024, confirmed to once again
|
These boards were build-tested in mid-January 2024, confirmed to once again
|
||||||
build on Debian Sid, Gentoo and Arch Linux, up to date as of that time.
|
build on Debian Sid, Gentoo and Arch, up to date as of that time.
|
||||||
* GRUB: Disable `-Werror` when building, to prevent treating warnings as errors.
|
* GRUB: Disable `-Werror` when building, to prevent treating warnings as errors.
|
||||||
This fixes the build on several distros, where CFLAGS is very strict.
|
This fixes the build on several distros, where CFLAGS is very strict.
|
||||||
* Updated the dependencies config for archlinux packages (added pandoc)
|
* Updated the dependencies config for archlinux packages (added pandoc)
|
||||||
|
|
|
@ -12,7 +12,7 @@ like how Trisquel is a GNU+Linux distribution. It provides an automated
|
||||||
build system to produce coreboot ROM images with a variety of payloads such as
|
build system to produce coreboot ROM images with a variety of payloads such as
|
||||||
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
||||||
to use as possible for non-technical users. From a project management perspective,
|
to use as possible for non-technical users. From a project management perspective,
|
||||||
this works in *exactly* the same way as a Linux distro, providing a source-based
|
this works in *exactly* the same way as a GNU+Linux distro, providing a source-based
|
||||||
package manager (called cbmk) which patches sources and compiles coreboot images.
|
package manager (called cbmk) which patches sources and compiles coreboot images.
|
||||||
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
||||||
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
||||||
|
@ -790,7 +790,7 @@ moved to the `default` tree, patching the *libgfxinit* submodule.
|
||||||
The `fam15h_udimm` and `fam15h_rdimm` trees have been consolidated into
|
The `fam15h_udimm` and `fam15h_rdimm` trees have been consolidated into
|
||||||
a single `fam15h` tree. This contains the ASUS KGPE-D16 and KCMA-D8 ports,
|
a single `fam15h` tree. This contains the ASUS KGPE-D16 and KCMA-D8 ports,
|
||||||
based on coreboot's `4.11_branch` tree, with Canoeboot's special build fixes
|
based on coreboot's `4.11_branch` tree, with Canoeboot's special build fixes
|
||||||
that make it compile on modern distros, such as Debian Sid or Arch Linux.
|
that make it compile on modern distros, such as Debian Sid or Arch.
|
||||||
|
|
||||||
U-Boot
|
U-Boot
|
||||||
------
|
------
|
||||||
|
|
|
@ -20,7 +20,7 @@ like how Trisquel is a GNU+Linux distribution. It provides an automated
|
||||||
build system to produce coreboot ROM images with a variety of payloads such as
|
build system to produce coreboot ROM images with a variety of payloads such as
|
||||||
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
||||||
to use as possible for non-technical users. From a project management perspective,
|
to use as possible for non-technical users. From a project management perspective,
|
||||||
this works in *exactly* the same way as a Linux distro, providing a source-based
|
this works in *exactly* the same way as a GNU+Linux distro, providing a source-based
|
||||||
package manager (called cbmk) which patches sources and compiles coreboot images.
|
package manager (called cbmk) which patches sources and compiles coreboot images.
|
||||||
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
||||||
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
||||||
|
|
|
@ -24,7 +24,7 @@ like how Trisquel is a GNU+Linux distribution. It provides an automated
|
||||||
build system to produce coreboot ROM images with a variety of payloads such as
|
build system to produce coreboot ROM images with a variety of payloads such as
|
||||||
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
GNU GRUB or SeaBIOS, with regular well-tested releases to make coreboot as easy
|
||||||
to use as possible for non-technical users. From a project management perspective,
|
to use as possible for non-technical users. From a project management perspective,
|
||||||
this works in *exactly* the same way as a Linux distro, providing a source-based
|
this works in *exactly* the same way as a GNU+Linux distro, providing a source-based
|
||||||
package manager (called cbmk) which patches sources and compiles coreboot images.
|
package manager (called cbmk) which patches sources and compiles coreboot images.
|
||||||
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
|
||||||
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
|
||||||
|
@ -98,7 +98,7 @@ Bug fixes
|
||||||
---------
|
---------
|
||||||
|
|
||||||
Several fixes were made to prevent build errors on the latest Debian Sid
|
Several fixes were made to prevent build errors on the latest Debian Sid
|
||||||
and Arch Linux, as of 6 January 2025. Fedora 41 was also tested, fixing
|
and Arch, as of 6 January 2025. Fedora 41 was also tested, fixing
|
||||||
various issues.
|
various issues.
|
||||||
|
|
||||||
The following bug fixes have been merged (in descending order from the latest
|
The following bug fixes have been merged (in descending order from the latest
|
||||||
|
|
Loading…
Reference in New Issue