Releases: isantop/kernelstub
Kernelstub 4.0.0 Beta 2
This is the second pre-release of the Kernelstub 4.0 series.
The 4.0 series is a very large departure from previous versions. This series marks the beginning of support for adding arbitrary entries to a boot menu, in a new framework called multiboot. New entries can point to alternate kernel images (arbitrary versions, realitime/lowlatency, etc), as well as Linux OS installations outside of the main system installation (for dual-boot purposes). For Linux OSs which aren't currently mounted, kernelstub will automatically mount them and copy the kernel and initramfs images onto the ESP for booting, just like the regular OS. Entries can have separate options from one another (for creating a single-user rescue mode) as well as different kernel paths or root partitions (for adding a Recovery Partition).
Entries don't even have to point to linux-type OSs. You can have the entry point at any arbitrary path on the ESP for booting Windows or other OSs. It can even start entries which don't point at an OS at all, like the EFI Shell.
New features since 4.0.0-b1:
- Added the ability for kernelstub to automatically detect the kernel and initramfs paths, if none are supplied on
the command line. This pulls from a list of common paths, otherwise will return a failure condition and throw an exception. - Added Unit Testing for many of the different ways code can fail. This is expected to get more comprehensive as more failure modes are discovered.
- Command-wide options are now supported.
Bug fixes since 4.0.0-b1:
- The index property now correctly falls back if one is not supplied.
- Option parsing has been fixed to correct an issue where multiple options with quotation marks caused errors.
- Inline documentation of code/docstrings are now much more complete.
New features in the 4.0 series:
- Multiboot Support - manage and boot multiple arbitrary entries from your ESP.
- Rewritten framework to offer improved reliability and simpler code maintenance.
- New Command Line Interface with subcommand structure for adding, maintaining, and modifying different entries.
- Support for modifying systemd-boot settings (Boot menu timeout, default entry, etc.)
- Library-based architecture allows other python 3 programs to use parts of kernelstub code for simpler function.
- API includes functions for OS information, disk manipulation, and information retrieval.
Bug fixes in the 4.0 series:
- Kernelstub should be even more reliable in day-to-day operation, which helps ensure against no-boot scenarios.
- Reliability of detecting UUIDs is improved.
- Supports multiple kernels through multiboot (#26 )
Known Issues in the 4.0 series:
- Support for adding entries directly to the NVRAM is removed. Entries must be added to systemd-boot. Pending further study, this feature may return in a later release, or be permanently deprecated.
Kernelstub 3.1.0
Kernelstub now includes support for logging to the systemd journal in addition to file and console logging. If the systemd
support is installed from pip3 (or the equivalent distro package is installed from your package manager, e.g. python3-systemd
in debian-based distros), kernelstub will automatically log to both journald and the log file. Otherwise it will fall back to using the log-file only.