People get confused when some software (VirtualBox, etc) does not work as
expected (or at all) after a major upgrade.
We have a nice way to deal with this when using sources, namely including
PORTS_MODULES in /etc/make.conf, but we lack something similar for binary
updates.
This patch retrieves a list of kernel modules installed from packages and
advises the user to recompile from ports to avoid problems.
Note that AFAIK there is no way to tell if a port needed the base sources at
build time so ports like sysutils/lsof will not be detected since it doesn't
install a kernel module.
Future plans include:
- Suggest the user to include the src component if it is not selected but there are kernel modules installed from packages.
- Have a way of record if a port needs the kernel sources (USES=kmod works only for kernel modules and other ports might need sources in base other than the kernel's. USES=basesrc?).
- Ideally, if the user agrees, bootstrap a ports collection and rebuild/reinstall those ports at the proper stage of the major upgrade.