[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

kdelibs: breaking the circular dependency


There exists a (necessary) circular dependency between kdelibs-bin and 
kdelibs4c2a. kdelibs-bin is linked to kdelibs4c2a. Also, every KDE 
application needs the binaries in kdelibs-bin to function properly (it 
contains very basic services without which a KDE application will be 
useless, if it starts at all). Yet hardly any packages depend on 
kdelibs-bin. So to break the circular dependency by removing kdelibs4c2a's 
dependency on kdelibs-bin would require that all KDE packages be 
re-uploaded with a kdelibs-bin dependency manually added. Not fun. And 
every KDE-using system would still need both kdelibs-bin and kdelibs4c2a, 
so the gain/pain ratio would be small.

Instead, the KDE team proposes to simply merge kdelibs-bin into kdelibs4c2a. 
The general practice of separating libraries and programs makes no sense 
for kdelibs, given the close two-way ties between the two. Multiple 
versions of the KDE libraries can't be installed side-by-side. And this 
close relationship means that KDE was never a good candidate for multiarch 
anyway (only one copy of kdelibs-bin means KDE applications of only one 
architecture), so mixing programs and libs in one package won't cost anyone 
anything, in practice. But since this change will stretch policy, which 
prefers that libraries and programs be split, we'd like the blessing of the 
Release Team before committing ourselves.

For the rare package which actually depends on kdelibs-bin, kdelibs4c2a will 
still "Provides: kdelibs-bin". So the 'transition' should be utterly 
painless, and require no work or changes by anyone (beyond the obvious 
kdelibs packaging changes).

The removal of this circular dependency should, hopefully, make future 
transitions easier, avoiding difficulties such as those encountered by 
users during the Woody to Sarge upgrade. Post-Etch, KDE 4 will require a 
kdelibs transition, and this will be tied to a move from Qt3 to Qt4. 
Getting kdelibs' circular dependencies straightened out before Etch may 
help later on.

This message follows a slightly more detailed discussion, starting here:

Please CC pkg-kde-talk@lists.alioth.debian.org on responses.

Christopher Martin

Attachment: pgpitSWhl5OnS.pgp
Description: PGP signature

Reply to: