From: Jiri Kosina <[email protected]>

When uninstalling kernel RPM, we're unconditionally calling 
"new-kernel-pkg --remove". This is useless on systems which are based on 
'update-bootloader' script instead.

Support update-bootloader removal method as well in case the script is 
present; contrary to new-kernel-pkg, this needs to be done in %postun, 
otherwise update-bootloader will refuse to remove entry for kernel for 
which the binary still exists.

Signed-off-by: Jiri Kosina <[email protected]>
---
 scripts/package/mkspec | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/scripts/package/mkspec b/scripts/package/mkspec
index b6de63c..857c37d 100755
--- a/scripts/package/mkspec
+++ b/scripts/package/mkspec
@@ -143,6 +143,11 @@ echo "if [ -x /sbin/new-kernel-pkg ]; then"
 echo "new-kernel-pkg --remove $KERNELRELEASE --rminitrd 
--initrdfile=/boot/initramfs-$KERNELRELEASE.img"
 echo "fi"
 echo ""
+echo "%postun"
+echo "if [ -x /sbin/update-bootloader ]; then"
+echo "/sbin/update-bootloader --remove $KERNELRELEASE"
+echo "fi"
+echo ""
 echo "%files"
 echo '%defattr (-, root, root)'
 echo "/lib/modules/$KERNELRELEASE"

-- 
Jiri Kosina
SUSE Labs

Reply via email to