for a *.deb we need libnotify-send or kdialog, so our dependencies are "libnotify-bin|kde-baseapps-bin". the problem is that if we try to install the final *.deb on kubuntu, the qapt-deb-installer always sais that it needs to install libnotify-bin, even if kde-baseapps-bin is installed. with dpkg -i it installs without libnotify. so i decided to report this bug Reproducible: Always Steps to Reproduce: 1. click on the deb Actual Results: qapt will open and needs to install some packages without need, because of OR depends Expected Results: qapt should use only depends that dpkg -i will use too control file: Package: forqapttest Version: 01 Section: games Priority: extra Architecture: all Essential: no Installed-Size: 8 Depends: libnotify-bin |kde-baseapps-bin Maintainer: buildsystem <buildsystem@nomailadress.com> Description: for qAPT test on qapt-deb-installer this will say it needs libnotify-bin but its only a OR dependency: libnotify-bin |kde-baseapps-bin
Created attachment 75753 [details] test deb
deb-installer::satisfyDepends (and possibly the other resolver functions in deb-installer) does not interpret or relationships correctly in that it would assume the first satisfactory package is the package that should be used to satisfy regardless of whether another package in the or relationship does already satisfy. e.g. with the demo deb libnotify-bin | kde-baseapps-bin ^ not installed but can be installed without error -> installer picks it because all is cool ^ installed, installer doesn't even look at it though because first dep already satisfies which is of course silly because an installed candidate always trumps a not installed candidate
Thank you for the bug report. As this report hasn't seen any changes in 5 years or more, we ask if you can please confirm that the issue still persists. If this bug is no longer persisting or relevant please change the status to resolved.