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

Re: foomatic-db{,-xml} rename in Ubuntu



Sorry, I did not know that a package rename is such complicated in Debian, in Ubuntu it is processed very quickly. Also I did not know that there is a Build-Conflicts concept. This is a great thing for such a situation.

In the last days I looked for you on IRC (#ubuntu-devel) and did not find you. So I talked with Ubuntu developers and no one has given me any hint that package renaming is too complex for Debian or that a Build-Conflicts would be a much easier solution. They even did not find it a good idea to have a physical package named foomatic-db and a virtual package with the same name.

The scenario was that the build process started with foomatic-db (the XMLs) not installed and foomatic-db-compressed-ppds installed. The latter is not conflicting with the build process, only not containing the needed files. This can either have happened that foomatic-db-compressed-ppds got already installed with the base system of the chroot and so the build dependency "foomatic-db" was already fulfilled when the process reached the step of installing the build dependencies or the buildd (or apt) realy gave priority to the virtual package on the "foomatic-db" install request.

Now there are two reasons for a package to depend on foomatic-db, once, the need of PPD files for a printer driver delivered by the package (the most common case) and second, the need of the Foomatic XML files to pre-build PPD files for a compressed PPD package to be shipped with the driver. The latter is always a build dependency and not a runtime dependency, with this the foomatic-db XML package has the character of a -dev package. My concept was then to use the name "foomatic-db" as all the time before to get PPD files and to introduce a new name "foomatic-db-xml" to explicitly request XML files.

So I think, one thing I could do in Ubuntu is to rename foomatic-db-xml back to foomatic-db and use a build conflict against foomatic-db-compressed-ppds in all driver packages which now depend on foomatic-db-xml. How is this working exactly. Is it simply setting

Build-Depends: foomatic-db
Build-Conflicts: foomatic-db-compressed-ppds

in each package which needs the Foomatic XML database for building? Does the buildd then uninstall foomatic-db-compressed-ppds (if it got already installed with the base system) and then install foomatic-db (the XML database)?

After having changed all driver packages which currently depend on foomatic-db-xml I would rename that back to foomatic-db (there was no release inbetween, so the transitional package foomatic-db-xml could be removed before release of Ubuntu Oneiric).

   Till


On 07/30/2011 03:56 PM, Didier Raboud wrote:
Hi Till,

I noticed your 20110722-0ubuntu2 [0] upload on Ubuntu and I must say that I am
far from happy with this change mostly because it happenned without any
previous discussion (although I was available on IRC and email the whole
week).

Any binary package rename in Debian takes time (NEW processing, although fast
these days). Given all sorts of issues renames bring, that's never a thing I
do easily.

Furthermore, I don't think the problem it wants to address is correctly
adressed by this change: if the buildds pull -compresed-ppds when they should
not, then adding Build-Conflicts to the concerned packages is the right thing
to do, I think. So unless you can convince me otherwise, I am not ready to
merge you binary package rename.

Some more things about the Git repository:I would really appreciate if you
could "git-import-orig" the upstream releases before pushing your changes to
the master branch, that really helps in separating the upstream changes from
the debian/ work.

Finally, I really hope we can make our collaboration better; that means
communication and coordination. As I already offerred (and will continue to
do), I would be more than happy to review your changes and upload them to
Debian directly, from which Ubuntu would only have to sync. I the current
times of non-freeze on both sides, not doing so is a waste of forces I think.

I am still convinced that this would be a work reduction for both of us.

Cheers,

OdyX

[0] http://anonscm.debian.org/gitweb/?p=collab-maint/foomatic-
db.git;a=commit;h=bcdf7de0088a48b17d648d27666d120feb322c19



Reply to: