[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: multiple database support with dbconfig-common : metapackages ?



On 28/09/2009 23:05, Boyd Stephen Smith Jr. wrote:
On Monday 28 September 2009 15:09:15 Jérémy Lal wrote:
Instead of depending on :
sqlite3 | postgresql-client | mysql-client,
libdbd-sqlite3-ruby | libdbd-pg-ruby | libdbd-mysql-ruby
as bugzilla, drupal, and others do, which i think is
confusing the user; is it desirable to do as roundcube package, i.e.
providing three metapackages ? Each package providing the correct
dependencies for each db type.

Then it would give :
redmine depends on redmine-mysql | redmine-pgsql | redmine-sqlite

IANADD, TINASOODP.

As a user, I think you are on the right track here.  The first set of
dependencies would be "satisfied" by sqlite3 and libdbd-pg-ruby, which might
leave redmine installed but completely non-functional.  AFAIK, there's no way
to express (pkg1&  pkg2) | (pkg3&  pkg4) without the intervening meta-
packages.
The only other way i found to not end up with a non-functional package was
to put the three libdbd packages as dependencies, which is not very good
either.
However, I am a bit surprised that you need to depend on both libdbd-pg-ruby
and postgresql-client.  Shouldn't libpq5 (desciprion: PostgrSQL client
libraries), brought in as a dependency of libdbd-pg-ruby be enough of a
client?  postgresql-client is only the front-end binaries.
I wasn't clear. The package uses dbconfig-common to create database, and dbconfig
uses one of those db client packages (sqlite3 | postgresql-client | mysql-client)
at config time. The runtime only uses libdbd-(pg|mysql|sqlite3)-ruby.

Regards,
Jérémy.





Reply to: