<holyfoot@askmonty.org> writes:
message: MDEV-3882 .deb upgrade from mysql to mariadb fails due to apt-get considering it a downgrade. The libmysqlclient18 package and all the dependencies on it removed. The libmariadbclient18 set to provide the libmysqlclient's functions and conflicts with all the libmysqlclients.
=== modified file 'debian/dist/Debian/control' --- a/debian/dist/Debian/control 2012-08-23 13:32:03 +0000 +++ b/debian/dist/Debian/control 2013-01-29 09:56:54 +0000 @@ -13,7 +13,9 @@ Vcs-Bzr: bzr://lp:maria Package: libmariadbclient18 Section: libs Architecture: any -Depends: mariadb-common, libmysqlclient18 (= ${source:Version}), ${shlibs:Depends}, ${misc:Depends} +Depends: mariadb-common, ${shlibs:Depends}, ${misc:Depends} +Provides: libmysqlclient18 +Conflicts: libmysqlclient10, libmysqlclient12, libmysqlclient14, libmysqlclient15, libmysqlclient16, libmysqlclient18
Are you sure this works? The original reason for introducing a libmysqlclient18 package in the first place (with all the problems in introduces) is that there are standard packages with a versioned dependency on libmysqlclient18. And versioned dependencies can not (used not to?) be satisfied by a Provides: Eg. the following gives 143 packages with versioned dependencies on libmysqlclient18: apt-cache rdepends libmysqlclient18|(read x; read x; while read x; do apt-cache show $x|grep ^Depends: | perl -nle 'print "'"$x:"' $1" if /libmysqlclient18[ \t]*\(([^)]+)\)/' ; done) You need to test a number of these that they are still installable when MariaDB is installed, also on old .deb distros (ie. Ubuntu 8.04). On the other hand, if this works then it is a nice solution for sure, and could also solve other issues. A related issue is that we might get the distro mysql-common package or the MariaDB mysql-common package somewhat at random, depending on which has the newer version number on any given day. I believe we made it so we work with the distro mysql-common package as well as the MariaDB one, it it will not necessarily cause any problems. It does seem a bit of a mess though, maybe we should just drop the mysql-common package from our repos? - Kristian.