maria-developers team mailing list archive
-
maria-developers team
-
Mailing list archive
-
Message #05088
Re: [Commits] Rev 3653: MDEV-3882 .deb upgrade from mysql to mariadb fails due to apt-get considering it a downgrade. in file:///home/hf/wmar/mdev-3882/
<holyfoot@xxxxxxxxxxxx> 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.