diff --git a/src/tools-evaluation.md b/src/tools-evaluation.md index ae8359d..0b5609a 100644 --- a/src/tools-evaluation.md +++ b/src/tools-evaluation.md @@ -48,15 +48,21 @@ belong to the procedure. In addition, there are architecture specifics to take into account. Thus, there are multiple implementations of kexec, which are Linux programs that offer their own interfaces again to pass extra arguments. Besides those standalone implementations, there are also specialized boot loaders based -on kexec that have their own extra logic, such as FreeBSD's kload or petitboot. - -| tool | language | license | usage | -| ---------------------------------------------------------------------------------------------------------------------------------------- | --------- | ------------ | ---------------- | -| [kexec-tools](https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git) ([GitHub mirror](https://github.com/horms/kexec-tools)) | C | GPLv2 | Heads, Petitboot | -| [systemd](https://systemd.io/) (wrapper) | C | LGPL-2.1+ | systemd on UEFI | -| [kexecboot](https://github.com/kexecboot/kexecboot) | C | GPLv2 | ? | -| u-root (CLI+mod) | Go | BSD 3-Clause | Google et al | -| [kexlinux](https://github.com/im-0/kexlinux) | Rust | LGPL-3.0+ | ? | +on kexec that have their own extra logic, such as FreeBSD's kboot or petitboot. + +> [!NOTE] +> The various tools differ in behavior. Some may not pass a new device tree to +> the next kernel. Pick the most suitable implementation and possibly adjust it. + +| tool | language | license | usage | +| ---------------------------------------------------------------------------------------------------------------------------------------- | --------- | ------------ | ------------------------- | +| [kexec-tools](https://git.kernel.org/pub/scm/utils/kernel/kexec/kexec-tools.git) ([GitHub mirror](https://github.com/horms/kexec-tools)) | C | GPLv2 | Heads | +| [kexec-lite](https://github.com/antonblanchard/kexec-lite) (unmaintained, some open PRs and issues, forks may exist) | C | GPLv2 | [Petitboot](petitboot.md) | +| [systemd](https://systemd.io/) (wrapper) | C | LGPL-2.1+ | systemd on UEFI | +| [kexecboot](https://github.com/kexecboot/kexecboot) | C | GPLv2 | ? | +| [kboot](https://github.com/freebsd/freebsd-src/tree/bfa3613/stand/kboot) (FreeBSD) | C | BSD-2-Clause | Netflix | +| u-root (CLI+mod) | Go | BSD 3-Clause | Google et al | +| [kexlinux](https://github.com/im-0/kexlinux) | Rust | LGPL-3.0+ | ? | ## Boot configuration and menus