In some cases users will want to remove kernels from their systems
outside an update workflow. This is fairly painful to do manually so
add a command to handle the operation which removes both the /boot
data and configuration files as well as the /usr data.
The default symlink for a kernel type will remain as this is something
that the update mechanism should be in control of and figuring out
what would be the fallback is out of cbm's scope.
Signed-off-by: William Douglas <william.douglas@intel.com>
Add the cli command list-kernels which will display the currently
available kernels that can be booted on the system and highlight the
kernel which will be used for the next boot.
Also add the cli command set-kernel which will set the given kernel as
the default to be used for booting (until the next update or
set-kernel is run).
Add the ability for clr-boot-manager to handle removing content from
the kernel commandline. The removal configuration files are formatted
exactly the same as the add configuration files. The matches are done
line-by-line so that:
"option-a option-b"
in a removal file would only delete exactly that string unlike:
"option-a
option-b"
in a removal file which would try to remove "option-a" and "option-b"
separately.
This change is designed to make it simpler to maintain clr-boot-manager
by switching to the much easier meson build system. Care is taken to
preserve the original functionality, but this will allow us to avoid
repeated issues of "failed distcheck", etc.
Additionally, a new test entry point is now included for Travis, to ensure
all relevant codepaths are properly tested. This now enables us to trivially
merge multiple runs into a single coverage report so that we can test the
code base in various "deployments".
To alleviate the issue of distributing without a `make distcheck` target,
this change vendors the `git-archive-all.sh` script into `scripts/` and
provides a port of the `budgie-desktop` `mkrelease.sh` script to quickly
and easily create a signed distribution tarball straight from git, along
with the submodules (i.e. nica).
Lastly, we'll only build the bootvar support + systemd-shim when we've
actually selected this bootloader, to ensure the project can still be built
without needing gnu-efi/efivar.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
This newly exposed option should be made apparent to integrators and users
alike so that they are able to firmly debug issues with CBM now, and in the
future.
Signed-off-by: Ikey Doherty <michael.i.doherty@intel.com>