[Bug 988889] [NEW] [packaging] hard dependency on mysql backend, breaks other programs

Zorael 988889 at bugs.launchpad.net
Thu Apr 26 14:08:27 UTC 2012


Public bug reported:

Kubuntu 12.04 x86_64. Kubuntu PPAs added.

Akonadi has a hard dependency on akonadi-backend-mysql despite there being other backends available. By extension, this means that mysql-{server,client}-core-5.1 needs to be installed to get a working plasma workspace. Please see LP bug 923189 for some more information about this decision;
> https://bugs.launchpad.net/ubuntu/+source/akonadi/+bug/923189

There are MySQL drop-in replacements (such as Percona; https://launchpad.net/percona-server - admittedly not in our repos) that conflict/replace the mysql packages. Our akonadi packaging makes KDE mutually exclusive with those, even though the necessary backend functionality may be attained by installing a different akonadi backend. Please see this thread on ubuntuforums.org;
> http://ubuntuforums.org/showthread.php?t=1960064

I'm not versed in the art of packaging, but two obvious solutions spring
to mind. In reverse order of difficulty;

1. Influence the packaging of everything related to mysql (our own
MySQL, Percona, equavilents) to provide a 'mysqld' virtual package, and
have the implementations provide it in turn. It's a neat solution for
sure but requires effort. However, akonadi-server would still depend on
mysql (whatever flavor) and eat space.

2. Make akonadi-server depend on a virtual 'akonadi-backend' package and
have all the backends provide it. Akonadi can recommend the (best
supported default) mysql backend and suggest the others, but still
depend on the virtual one so as to always enforce there being a backend
installed. Most users won't be affected and will still just use the
mysql one, and those with special requirements (eg "cannot/must
not/don't want to install mysql") get alternatives.

To test the second solution, I built akonadi-server locally (source from
precise main) after these quick modifications to debian/control. It
built nicely and I'm now running with only akonadi-backend-sqlite
installed. Please see the attached patch for an example. (Semi-related
is that there's still a akonadi-backend-virtuoso virtual package that
nothing seems to provide anymore?)

Worthy of consideration here is KDE bug 298314 that makes it impossible to actually change to an akonadi backend other than mysql and postgresql (via the akonadi kcm). Those who opt out of akonadi-backend-{my,postgre}sql will be greeted with an Akonadi crash upon login unless they manually edit ~/.config/akonadi/akonadiserverrc and specify the backend to use there.
> https://bugs.kde.org/show_bug.cgi?id=298314

** Affects: akonadi (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: kubuntu

-- 
You received this bug notification because you are a member of Kubuntu
Bugs, which is subscribed to akonadi in Ubuntu.
https://bugs.launchpad.net/bugs/988889

Title:
  [packaging] hard dependency on mysql backend, breaks other programs

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/akonadi/+bug/988889/+subscriptions




More information about the kubuntu-bugs mailing list