a case for data packages

Harald Sitter sitter at kde.org
Mon Jan 26 16:45:37 UTC 2015


こんばんは

after we had previously rendered a jolly nice case against the need
for data packages for libs on account of multiarch being lovely and
allowing overwrites if the files are the same, we have now realized
that we did not consider all cases.

data packages are back on the table \o/

lib packages only ought to contain libfoo.so.x and libfoo.so.x.y*

I hear you ask why...

dpkg: error processing archive
/var/cache/apt/archives/libkf5filemetadata3_5.6.0-0ubuntu1~ubuntu15.04~ppa3_i386.deb
(--unpack):
 trying to overwrite
'/usr/share/locale/es/LC_MESSAGES/kfilemetadata.mo', which is also in
package libkf5filemetadata2:i386 5.5.95-0ubuntu1

now this is me being incompetent, alas, my incompetency is exactly why
we need data packages. kfilemetadata had a version bump and I forgot
to conflict the old packagename. the general assumption underlying
this conflict is absolutely sensible: version3 wants version3
translations not version2 translations.

without data packages it exposes us to the trap I fell for where we
could introduce an unnecessary file conflict if we forget to add
appropriate replaces/conflicts.

with a data package that would not have happened because the
libpackage would have
Depends: libkf5filemetadata-data (>= source:Version)
which still represents the underlying assumption: version3 wants
version3 translations. it does however not require any additional
action from the packager to make an upgrade transit as intended. if
-data cannot be upgraded, the lib cannot be upgraded holding both on
them on account of an incomplete transition.

so yeah, all hail the data packages -.-

cheerio
HS



More information about the kubuntu-devel mailing list