- Track installed version in ${zfsbootmenu_module_root}/zbm-release
- Install zbm-release as /etc/zbm-release in ZFSBootMenu images
- Add releng/version.sh to manage repository versioning
- Mark post-release development versions as part of release tagging
- Improve version handling in ZFSBootMenu build containers:
* zbm-builder.sh: allow temporary, writable overlays of /zbm
* releng/docker/build-init.sh: update ZBM version when possible
* releng/docker/image-build.sh: install git in standard images
Remove kboot.conf, this was primarily used when POWER9/petitboot was
still being targeted. Update syslinux.cfg to demonstrate how to boot
fixed name files. Install examples/ via Makefile.
All core ZFSBootMenu libraries / hooks / binaries have been moved to a
generic 'zfsbootmenu' directory intended to be installed in /usr/share.
The dracut-specific module-setup.sh script has been moved to a 'dracut'
directory and it, along with the 'initcpio' hook scripts, have been
adapted to use common tooling in 'zfsbootmenu/install-helpers.sh'. Both
of these refer to the core components in '/usr/share/zfsbootmenu' when
creating a new image. The zbm-kcl utilit looks there by default.
The testing tools are now capable of producing images with mkinitcpio.
Co-authored-by: Zach Dykstra <dykstra.zachary@gmail.com>
Co-authored-by: Andrew J. Hesford <ajh@sideband.org>
By default, PREFIX now affects all components except etc/zfsbootmenu.
Paths for configuration files, dracut modules, man pages, example
contents and binaries are now individually configurable.
Defaults preserve expected paths in xbps-src.
A new `zfsbootmenu_teardown` dracut option has been added to
`module-init.sh` that, when set to a path that refers to an executable,
will install the named executable as `/libexec/zfsbootmenu-teardown` in
the initramfs. In `kexec_kernel`, if `/libexec/zfsbootmenu-teardown` is
found to exist and be executable, the script will be run immediately
before the final `kexec` call to jump into the new kernel.
* Add a basic Makefile, that copies files to to the system. Limited
test on a Void linux system only.
* Clean up the README.md to include more detailed documentation on
integration with rEFInd and efibootmgr, how to use generate-zbm, and
other tidbits.
* Remove the VERSION file loading from generate-zbm, prefer the internal
version string now. This simplifies deployment greatly.