Attempting to update my packages failed with:
% sudo pkg upgrade
[10/19] Upgrading linux_base-c6 from 6.7_2 to 6.7_3...
sysctl: unknown oid 'compat.linux.osrelease'
linuxulator is not (kld)loaded, exiting
pkg: PRE-INSTALL script failed
It should be possible to upgrade the package w/o the linux kernel module loaded.
Hrm, I suspect this started happening after r415233.
Linux support is needed to run /compat/linux/sbin/ldconfig to update /compat/linux/etc/ld.so.cache. There are other linux packages that run other tools during installation. Kernel linux support is required when installing linux packages. We cannot do much about that.
There are things we *could* do:
- We could have some infrastructure that linux_base hooks into, in order to prevent the installation from starting rather than having it fail 75% of the way through (or prompt the user to kldload linux)
- For this specific case (ld.so.cache) we could have a FreeBSD port of Linux ldconfig
- We could queue post-install actions, and run them later
It may well be that requiring linux.ko to be loaded for pkg installation is the only reasonable approach. But we provide a terrible user experience by aborting the installation part way through, and will need to find some way to address that.
We have version 6.10
This is surely out-of-date. So I am closing here.
This problem persists, with linux_base-c7 7.4.1708_6