summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <thierry.vignaud@gmail.com>2022-12-10 13:46:22 +0100
committerThierry Vignaud <thierry.vignaud@gmail.com>2022-12-10 14:15:07 +0100
commit68bce8446c6482c98be2f2867fd12d6db1decebd (patch)
tree46e21abe62e009da350ee9a84dbaf94e41552864
parentd920a1fbb6e5cdc79097bf988065ef75bc15b304 (diff)
downloadurpmi-68bce8446c6482c98be2f2867fd12d6db1decebd.tar
urpmi-68bce8446c6482c98be2f2867fd12d6db1decebd.tar.gz
urpmi-68bce8446c6482c98be2f2867fd12d6db1decebd.tar.bz2
urpmi-68bce8446c6482c98be2f2867fd12d6db1decebd.tar.xz
urpmi-68bce8446c6482c98be2f2867fd12d6db1decebd.zip
Workaround removing real life kernels
Rationale: testsuite didn't covered the "kmod(vboxdrv.ko)" provides. So we were skipping eg virtualbox-kernel-6.0.9-desktop-1.mga9 because it provided "kmod(vboxdrv.ko)[== 7.0.4]" which was needed because virtualbox-7.0.4-1.mga9.x86_64 requires "kmod(vboxdrv.ko)" We need a better fix as in check if a (non orphaned) pkg still provides the property instead.
-rw-r--r--urpm/orphans.pm3
1 files changed, 3 insertions, 0 deletions
diff --git a/urpm/orphans.pm b/urpm/orphans.pm
index 11bd555e..aea64fb4 100644
--- a/urpm/orphans.pm
+++ b/urpm/orphans.pm
@@ -544,6 +544,9 @@ sub _all_unrequested_orphans {
foreach my $prop ($pkg->requires, $pkg->recommends_nosense) {
my $n = URPM::property2name($prop);
foreach my $p (@{$provides{$n} || []}) {
+ # FIXME: hackish in order to fix orphaning kernels with virtualbox installed on mga9+
+ # TODO: check if something else that's not orphaned still provides it instead
+ next if $n eq 'kmod(vboxdrv.ko)';
my $pfn = $p->fullname;
if ($p != $pkg && $l{$pfn} && $p->provides_overlap($prop)) {
delete $l{$pfn};