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

Re: Splitting package



Shachar Shemesh wrote:

Benjamin Cutler wrote:

    The debian/control file should look something like:

Package: foo-common
Conflicts: foo (<< 7.6.5-2)
Replaces: foo (<< 7.6.5-2)

Why the "Replaces"? I would have expected that would only be necessary if there
> was no longer any "foo" package.

The "Replaces" is necessary to ensure smooth upgrades. When one upgrades from foo 7.6.5-1 to foo + foo-common 7.6.5-2, APT may install the new foo-common before upgrading foo, and discover that foo-common overwrites a file in the old foo package. This would cause an error without the "Replaces" line. ("Replaces" means that the replacing package may overwrite files in the replaced package; it doesn't necessarily mean that one package is a replacement as a whole for the other.)

(And don't forget to have the new "foo" Depend upon foo-common!)

regards,

--
Kevin B. McCarty <kmccarty@princeton.edu>   Physics Department
WWW: http://www.princeton.edu/~kmccarty/    Princeton University
GPG: public key ID 4F83C751                 Princeton, NJ 08544



Reply to: