On Mon, 11 Mar 2013 19:58:03 +0100, Kevin Kofler kevin.kofler@chello.at wrote:
Honza Horak wrote:
This doesn't solve all the issues -- if package like akonadi-mysql says "Requires: mysql-server", then Oracle MySQL either wouldn't satisfy that requirement or (in case it includes "Provides: mysql-server") RPM choosing behavior would be ambiguous.
And it should not satisfy it.
We now changed the Requires in akonadi-mysql to mariadb-server to be sure of what we get.
This dependency is a problem. It makes it impossible to install MySQL-server on a KDE system since mariadb-server and MySQL-server conflict.
This would all be solvable if the packages were installable in parallel, which is also the recommended solution [1]. This would require some renaming, but it has several benefits:
- Users can choose to install either MySQL or MariaDB, or both. - Package maintainers can choose to depend on one or the other. - Package maintenance becomes easier since the packages don't mess around with the same filenames.
A common virtual provide should solve dependencies for applications that don't care which server they get. With that virtual provide comes the upgrade issues around choosing a default. Could this be solved by bumping the epoch of mariadb-server? Wouldn't that make yum choose the highest versioned package, which would always be mariadb-server? Epoch bumping may not be the prettiest solution, but if it works, we could do:
If existing MySQL users are to be forced over to MariaDB: mysql*: virtual provides mariadb*: provides mysql*, epoch 1 mysql-community*: provides mysql*, epoch 0 (*)
If existing MySQL users are to remain on MySQL: real-mysql*: virtual provides mariadb*: provides real-mysql*, epoch 1 mysql* provides real-mysql*, epoch 0
Using alternatives could also be considered. In any case, the packages have to be installable in parallel.
Regards,
Norvald H. Ryeng
(*) The name "MySQL" crashes with the standalone packages at dev.mysql.com, and I think I read something about a problem with case sensitive names in one of the mailing list threads. The software is called "MySQL Community Server", so we suggest the "mysql-community" prefix. The same prefix is already used by OpenSuSE.
[1] https://fedoraproject.org/wiki/Packaging:Conflicts#Common_Conflicting_Files_...