Bug#798724: kde-runtime: kwalletd in kde-runtime is missing org.kde.kwalletd5.service
On Saturday, September 12, 2015 07:13:00 PM Scott Kitterman wrote:
> On Saturday, September 12, 2015 11:01:15 PM Gregor Riepl wrote:
...
> > May I suggest making kde-runtime depend on libkf5wallet-bin?
> > That would be the most appropriate place, I think...
>
> No. kde-runtime is KDE4 and will eventually go away. It's not surprising
> not everything works when recommends are disabled, but I'll have a look and
> see if there should be a dependency relationship somewhere.
OK. I took a look and I believe I understand the situation. Out of the
binary packages built from the kwallet-kf5 source package, three are relevant
to this issue: libkf5wallet-bin, libkf5wallet5, and libkwalletbackend5-5.
Package: libkf5wallet-bin
Depends: libkf5wallet5 (>= 4.96.0), libkwalletbackend5-5 (>= 4.96.0)
Package: libkf5wallet5
Depends: libkwalletbackend5-5 (= 5.13.0-1)
Recommends: libkf5wallet-bin (= 5.13.0-1)
Package: libkwalletbackend5-5
Depends:
Recommends: libkf5wallet-bin (= 5.13.0-1)
That's done that way to prevent a dependency loop (and an example of why
turning off Recommends is a bad idea.
Looking externally, neither libkwalletbackend5-5 nor libkf5wallet-bin have
external rdepends, but libkf5wallet5 does:
$reverse-depends libkf5wallet5
Reverse-Depends
===============
* kate
* kio
* konversation
* ksshaskpass
* kwalletmanager
* libkf5khtml5
* libkf5wallet-bin
* libkf5wallet-dev
* libkf5wallet5-dbg
* libkf5webkit5
* plasma-desktop
* plasma-nm
* plasma-workspace
kwalletmanager is a depends of kde-standard.
Based on this, it's quite easy to see how if a user doesn't install recommends
they end up with a broken kwallet. While I generally think that if you
disable recommends and something breaks, it's not a bug, in this case, because
recommends are only being used to avoid a dependemcy loop, I think it is a
bug.
Proposed fix (for comment):
Since libkf5wallet5 is what is pulled in by other packages, it's the one that
should have a hard depends on libkf5wallet-bin and libkwalletbackend5-5 to
ensure users get a working system. Those two packages can then Recommend
libkf5wallet5 so there's still no loop. Here's what I propose:
Package: libkf5wallet-bin
Depends: libkwalletbackend5-5 (>= 4.96.0)
Recommends: libkf5wallet5 (>= 4.96.0)
Package: libkf5wallet5
Depends: libkwalletbackend5-5 (= 5.13.0-1), libkf5wallet-bin (= 5.13.0-1)
Package: libkwalletbackend5-5
Depends:
Recommends: libkf5wallet5 (= 5.13.0-1)
Comments? If no one objects, I'll stage this for upload soon.
Scott K
Reply to: