Marius Schwarz wrote:
The precompiled kmod-nvidia packages where hell, because they
sometimes
needed days to get online.
While people where waiting, the system did not boot into the newest
kernel as the needed driver was missing.
DNF just needs to prevent the upgrade as long as the kmod is not available.
I think that this can actually be enforced through boolean dependencies
nowadays, without requiring any special handling in DNF: the kmod-nvidia
metapackage should not just have a:
Requires: kmod-nvidia-%{latest_kernel_version}
as in the past, but also a:
Requires: (kmod-nvidia-bin > %{latest_kernel_version} if kernel >
%{latest_kernel_version})
where kmod-nvidia-%{latest_kernel_version}:
Provides: kmod-nvidia-bin = %{latest_kernel_version}
Requires: kernel = %{latest_kernel_version}
So this will forbid installing a newer kernel unless there is also a newer
kernel module to go with it (and the Requires in the module enforces that
the versions also have to actually correspond).
Kevin Kofler