Canoeboot 20240510 release.

Signed-off-by: Leah Rowe <info@minifree.org>
master 20240510
Leah Rowe 2024-05-10 08:32:59 +01:00
parent b9a58b7984
commit bed60ad131
5 changed files with 178 additions and 3 deletions

View File

@ -3,7 +3,7 @@ title: Progetto Canoeboot
x-toc-enable: true
...
Il progetto *Canoeboot* fornisce avvio [libero e open source](https://writefreesoftware.org/learn)
Il progetto *Canoeboot* fornisce avvio [libero](https://writefreesoftware.org/learn)
grazie al firmware basato su coreboot, sostituendo cosi', firmware BIOS/UEFI proprietario
su [alcune schede madri basate su Intel/AMD x86 o ARM](docs/hardware/),
in computer fissi e portatili. Inizializza l'hardware (controller di

View File

@ -4,7 +4,7 @@ x-toc-enable: true
...
The *Canoeboot* project provides
[free, open source](https://writefreesoftware.org/learn) (*libre*) boot
[free](https://writefreesoftware.org/learn) (*libre*) boot
firmware based on coreboot, replacing proprietary BIOS/UEFI firmware
on [specific Intel/AMD x86 and ARM based motherboards](docs/hardware/),
including laptop and desktop computers. It initialises the hardware (e.g. memory

View File

@ -1,3 +1,4 @@
canoeboot20240510.md
canoeboot20240504.md
canoeboot20231107.md
canoeboot20231103.md

View File

@ -5,7 +5,7 @@
Introduction
============
Canoeboot is a free/open source 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
operating system (e.g. Linux/BSD). It is specifically a *coreboot distribution*,
in the same way that Trisquel is a GNU+Linux distribution. It provides an automated

View File

@ -0,0 +1,174 @@
% Canoeboot 20240510 released!
% Leah Rowe
% 10 May 2024
Introduction
============
Canoeboot is a [free/libre](https://writefreesoftware.org/) BIOS/UEFI replacement
on x86 and ARM, providing
boot firmware that initialises the hardware in your computer, to then load an
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
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
to use as possible for non-technical users. From a project management perspective,
this works in *exactly* the same way as a GNU+Linux distro, providing the same type
of infrastructure, but for your boot firmware instead of your operating system.
It makes use of [coreboot](https://www.coreboot.org/) for hardware initialisation,
and then a payload such as [SeaBIOS](https://www.seabios.org/SeaBIOS)
or [GNU GRUB](https://www.gnu.org/software/grub/) to boot your operating
system; on ARM(chromebooks), we provide *U-Boot* (as a coreboot payload).
Canoeboot provides many additional benefits such as fast boot speeds, greater
security and greater customisation, but the *primary* benefit
is [software freedom](https://writefreesoftware.org/learn). With use of GRUB
in the flash, you can make use of many advanced features such as the ability
to [boot from an encrypted /boot partition](../docs/gnulinux/)
and [verify kernel GPG signature at boot time](../docs/gnulinux/grub_hardening.md).
If you're fed up of the control that proprietary UEFI vendors have over you,
then Canoeboot is *for you*. Although many would agree that it is a major step
forward for most users, it's actually a very old idea. Old is often better. It used to
be that computers were much more open for learning, and tinkering. Canoeboot
implements this old idea in spirit and in practise, helping you wrest back control.
Unlike the hardware vendors, Canoeboot does not see *you* as a *security threat*;
we regard the ability to use, study, modify and redistribute software freely to
be a human right that everyone *must* have, and the same is true of hardware.
Your computer is *your property* to use as you wish. Free Software protects you,
by ensuring that you always have control of the machine.
*This* new release, Canoeboot 20240510, released today 10 May 2024, is
a new *stable* release of Canoeboot. The *previous* release was
Canoeboot 20240504, just *6 days ago*. This is a minor release, with minimal
changes; if you already installed Canoeboot 20240504, you probably don't need
to update, but the *SeaBIOS* revision was updated, and has some fixes.
Changes in this release
=======================
*Extensive* changes have been made to the documentation and website, which you
may or may not notice. I won't say what they are. You'll just have to review the
git log yourself :)
There was originally a long-winded article about these changes, which could
have sparked a major international incident. They very nature and purpose of
those changes means that direct discussion of them, even in the most diplomatic way
possible and with the most amount of brevity, would completely defeat the purpose
of said changes. I've deleted that article, prior to publishing.
Said article will never be published. I will never discuss it. I will ignore
all questions, provocations or praise pertaining to said changes.
Not making reference to them in any way would also be bad; making
cryptic reference to it is optimal, so that is what I've done, now.
If you now go and look at said changes, I will say only one thing further:
Probably nothing will happen, but I'm leaving everything open to interpretation.
Who knows what will happen? Stay tuned to find out. Or not. Again, it could be
that *nothing* happens. In fact, it's extremely likely that *nothing* will
happen; we shall see.
The gravity of this change means that I *must* make reference to it, albeit
indirectly. What I will say is this: my opinions have not changed at all. I
remain resolute and steadfast in my resolve. I'm simply taking a completely
different approach from now on. It is an approach that those familiar with the
history of Canoeboot probably never expected I'd ever take.
ALSO:
Build system changes
-------------------
The following improvements have been made, most of them not affecting the
final build (the actual code that goes in-flash):
* bump seabios (payload) to the latest upstream revision as of today
* main `build` script: exit (with non-zero status) if not running it from the
main cbmk work directory (the design of cbmk makes this mandatory)
* merge `script/build/serprog` into `script/build/roms` - now you
run e.g. `./build roms serprog rp2040` instead of `./build serprog rp2040`
* merge `include/err.sh` into `include/option.sh`
* build/roms: more code cleanup in general
* build/roms: split up `main()` into smaller functions
* build/roms: allow status search by mismatch (e.g. list all targets that
are *not* stable, instead of only being able to list ones that are)
* Update the `README.md` file, applying the same change as described
above (adopt a neutral/concilliatory tone toward FSF/GNU, and don't tell
everyone Libreboot is a superior project that everyone should use).
Regarding SeaBIOS, the following upstream changes have been merged into
this Canoeboot release:
```
* e5f2e4c6 pciinit: don't misalign large BARs
* 731c88d5 stdvgaio: Only read/write one color palette entry at a time
* c5a361c0 stdvga: Add stdvga_set_vertical_size() helper function
* 22c91412 stdvga: Rename stdvga_get_vde() to stdvga_get_vertical_size()
* 549463db stdvga: Rename stdvga_set_scan_lines() to stdvga_set_character_height()
* c67914ac stdvga: Rename stdvga_set_text_block_specifier() to stdvga_set_font_location()
* aa94925d stdvga: Rework stdvga palette index paging interface functions
* 8de51a5a stdvga: Rename stdvga_toggle_intensity() to stdvga_set_palette_blinking()
* 96c7781f stdvga: Add comments to interface functions in stdvga.c
* 2996819f stdvga: Rename CGA palette functions
* 91368088 stdvgamodes: Improve naming of dac palette tables
* 70f43981 stdvgamodes: No need to store pelmask in vga_modes[]
* 1588fd14 vgasrc: Rename vgahw_get_linesize() to vgahw_minimum_linelength()
* d73e18bb vgasrc: Use curmode_g instead of vmode_g when mode is the current video mode
* 192e23b7 vbe: implement function 09h (get/set palette data)
* 3722c21d vgasrc: round up save/restore size
* 5d87ff25 vbe: Add VBE 2.0+ OemData field to struct vbe_info
* 163fd9f0 fix smbios blob length overflow
* 82faf1d5 Add LBA 64bit support for reads beyond 2TB.
* 3f082f38 Add AHCI Power ON + ICC_ACTIVE into port setup code
* 3ae88886 esp-scsi: terminate DMA transfer when ESP data transfer completes
* a6ed6b70 limit address space used for pci devices.
```
And that's all. If you installed Canoeboot 20240504, you probably don't need
to update to today's release. If you *didn't* install 20240504, then you may
aswell update to today's release (Canoeboot 20240510).
Hardware supported in this release
==================================
This release supports the following hardware:
### Servers (AMD, x86)
- [ASUS KFSN4-DRE motherboard](../docs/hardware/kfsn4-dre.md)
- [ASUS KGPE-D16 motherboard](../docs/hardware/kgpe-d16.md)
### Desktops (AMD, Intel, x86)
- [Acer G43T-AM3](../docs/hardware/acer_g43t-am3.md)
- [Apple iMac 5,2](../docs/hardware/imac52.md)
- [ASUS KCMA-D8 motherboard](../docs/hardware/kcma-d8.md)
- [Gigabyte GA-G41M-ES2L motherboard](../docs/hardware/ga-g41m-es2l.md)
- [Intel D510MO and D410PT motherboards](../docs/hardware/d510mo.md)
- [Intel D945GCLF](../docs/hardware/d945gclf.md)
### Laptops (Intel, x86)
- [Apple MacBook1,1 and MacBook2,1](../docs/hardware/macbook21.md)
- [Dell Latitude E6400, E6400 XFR and E6400 ATG, with Intel
GPU](../docs/hardware/e6400.md)
- [Lenovo ThinkPad R400](../docs/hardware/r400.md)
- [Lenovo ThinkPad R500](../docs/hardware/r500.md)
- [Lenovo ThinkPad T400 / T400S](../docs/hardware/t400.md)
- [Lenovo ThinkPad T500](../docs/hardware/t500.md)
- [Lenovo ThinkPad W500](../docs/hardware/t500.md)
- [Lenovo ThinkPad X200 / X200S / X200 Tablet](../docs/hardware/x200.md)
- Lenovo ThinkPad X301
- Lenovo ThinkPad X60 / X60S / X60 Tablet
### Laptops (ARM, with U-Boot payload)
- [ASUS Chromebook Flip C101 (gru-bob)](../docs/install/chromebooks.md)
- [Samsung Chromebook Plus (v1) (gru-kevin)](../docs/install/chromebooks.md)
Again, very minor release. I wasn't fully happy with the last one, specifically
the last Canoeboot release, so I decided to another quick one.
That is all.