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

Re: cross-overwrites in packages



Cross posting to -mentors, for obvious reasons.

On Mon, Sep 06, 1999 at 11:41:43AM +0100, Gordon Russell wrote:
> I have just updated blt and blt-dev. One of the changes was to move
> something from blt to blt-dev, and another change was to move something
> from blt-dev to blt. Now when apt updates to the new versions it reports
> errors in both packages wrt trying to overwrite a file which belongs to
> the other package.
> 
> - Firstly, according to the packaging manual, --force-overwrite is the
>   default installation method, so why is an error (and not just a warning
>   reported).

In the unstable period, --force-overwrite should be turned off to catch
these errors.

> - Secondly, what is the fix? Do I make blt replace blt-dev, and blt-dev
>   replace blt?
Do this:

Package: blt
[...]
Replaces: blt-dev (<= OLD_VERSION)

Package: blt-dev
[...]
Replaces: blt (<= OLD_VERSION)

Obviously, OLD_VERSION is the version of the packages that included those
files.

> Surely this is not the best solution??

Yes, it is. The Replaces: field in the control file doesn't mean "replace
that whole package with this one"[1] but "replace files in this package with
files from this one".

[1] For that, use combination of Replaces: and Conflicts: .

-- 
enJoy -*/\*- don't even try to pronounce my first name


Reply to: