[pkg-kde-talk] Re: kdelibs4c2a <-> kdelibs-bin circular
dependency - advice requested
Bill Allombert
Bill.Allombert at math.u-bordeaux1.fr
Fri Jan 20 22:17:32 UTC 2006
> as simpler, and involving virtually no work on the part of 3rd party
> maintainers (only a handful of packages depend on kdelibs-bin directly, and
> the new kdelibs4c2a can Provide: kdelibs-bin).
>
> Since the separation between kdelibs-bin and kdelibs4c2a is not functional
> (i.e. they are always used together) keeping them apart seems unnecessary,
> and (as far as I can tell) only satisfies the notion that libraries and
> programs should be separate, even when, in this case, they are not used
> separately. But if people view my solution as too radical, then your
> proposal seems OK at first consideration.
I have taken a bit of time to look at the packages.
One issue I am unsure is how kdelibs4c2 use kdelibs-bin ? I will assume
the library forks kdelibs-bin daemons.
Currently kdelibs4c2 is a pure librarie packages. It has an exact-version
depend on kdelibs-bin and kdelibs-bin as a >= version depend on
kdelibs4c2.
This is messy because the exact-version dependency cannot be satisfied
during upgrade, so there is a definite possibility kdelibs4c2 launch
a old, incompatible, daemon.
We normally want to allow several major versions of pure libraries
packages to be co-installable, however the same-version dependencies
prevent that. However if multi-arch is implemented, there still the
possibility to have both 32bit and 64bit at the same time.
As far as I understand the design of KDE IPC allows 32bit and 64bit
processes to work together, so it might make sense to install
kdelibs4c2-32bit, kdelibs4c2-64bit and kdelibs-bin-32bit.
If you merge kdelibs-bin in kdelibs4c2, then kdelibs5 will have to
conflict with kdelibs4c2. I don't think this is a big deal given
the exact-version depdends will forbid kdelibs4c2 and kdelibs5 to
be co-installable.
Alternatively, you can fix the co-installability problem by versioning
the path to the binaries, e.g. moving them to /usr/lib/kdelibs4/ and
make sure the libraries use the correct path.
Cheers,
Bill.
More information about the pkg-kde-talk
mailing list