Kernel Module Packages
Random musings…mostly to remind myself to think on this this weekend.
I think that the current ideas for creating kernel module packages are very complex and will lead to most packagers unable to get it right and small differences that may cause pain down the road. The smarts should be in the package updater and and package build system rather than in the packager.
Most of the complexity is the idea of creating a base package with a subpackage that actually contains the kernel module. This way you only have one source RPM. The base package contains no files so is never actually created, just the subpackage. Let’s scrap that and do something different. The build system is going to have to do special things with kernel module packages anyway. So for each package build it can also build a separate source package by doing the equivalent of :
rpmbuild -bs kernel-module-foo.spec [defines] --define \
"sourcepackage 1"
Where the %{release}
tag looks like:
Release: [release]%{!?sourcepackage:%(echo .%{kver} \| tr - \_)}
The other builds can either not build the source package (-bb) or simply ditch them.