http://bugzilla.opensuse.org/show_bug.cgi?id=1182666 http://bugzilla.opensuse.org/show_bug.cgi?id=1182666#c55 --- Comment #55 from B <kerossin@pm.me> --- (In reply to Stefan Dirsch from comment #53)
Hmm. I believe the behaviour is correct. You need to look for %triggerpostun script, not the %postun script.
My bad, this was probably my first time seriously looking into triggers/scripts of an RPM. But yes, this looks correct, I just wanted to find out for myself how it happens and to confirm that.
# rpm --triggers -q nvidia-gfxG05-kmp-default triggerpostun scriptlet (using /bin/sh) -- kernel-default for dir in $(find /lib/modules -mindepth 1 -maxdepth 1 -type d); do if [ ! -d $dir/kernel ]; then test -d $dir/updates && rm -f $dir/updates/nvidia*.ko fi done
modules in updates/ are only removed if there is no kernel/ subdir any longer, i.e. no modules are longer installed.
Also during an update %triggerpostun is the last which is being executed.
https://docs.fedoraproject.org/en-US/packaging-guidelines/Scriptlets/#orderi...
At that time there should exist a /lib/modules/<kernel-version>/kernel/ directory.
Now this is where I think the problem is. In this particular situation - a minor kernel version bump seems to be handled neither like a regular kernel update and neither like a normal package update. This "update" is basically a normal uninstall of the old version, there's no /lib/modules/$kernel/kernel/ directory anymore because it belongs to kernel-default package, the triggerpostun then deletes those Nvidia modules, a normal installation of the new kernel-default begins. So I think were back to the same solutions where something should be done from the kernel packaging side. I think potentially it's not just a problem with Nvidia drivers but other packages that handle modules in a similar fashion could be affected. -- You are receiving this mail because: You are on the CC list for the bug.