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>2023-04-13 22:13:50 +0200
commit7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81 (patch)
tree9af4852d7e5c80cce3f377f7ea4b92c78acdf003
parent4410c36726f236e4f561020c10491d7c08ce0149 (diff)
downloadurpmi-7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81.tar
urpmi-7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81.tar.gz
urpmi-7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81.tar.bz2
urpmi-7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81.tar.xz
urpmi-7d0ced8cbb1a311f20ce65a1e3e9b23130d93d81.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};