Hi, I'd like to propose a slight change for the package version substvars in order to ease handling of arch-specific rebuilds of multi-binary packages that have arch-independent portions. Problem: The arch-dependent and arch-independent packages usually depend on each other with a versioned dependency, where the version is substituted in with ${Source-Version}. Normally, this looks like this: foo 1.0-1 -> foo-data 1.0-1 foo-data 1.0-1 -> foo 1.0-1 However, if an arch-specific rebuild becomes necessary, the dependencies look like this: foo 1.0-1.0.1 -> foo-data 1.0-1.0.1 foo-data 1.0-1 -> foo 1.0-1 Both packages are uninstallable now. Thus, I propose two new substvars, and to change the meaning of ${Source-Version} slightly: Source-Version Current source/arch-indep version, i.e. last version from the changelog that is not an arch- specific rebuild Binary-Version Current arch-dep version, i.e. last version from the changelog Next-Source-Version The lowest version that the next source upload could have (Source-Version plus NMU field incremented by one) Now, we can write the following: Package: foo Depends: foo-data (= ${Source-Version}) ... Package: foo-data Depends: foo (>= ${Source-Version}), foo (<< ${Next-Source-Version} which would yield foo 1.0-1.0.1 -> foo-data 1.0-1 foo-data 1.0-1 -> foo (>= 1.0-1), foo (<< 1.0-1.1) which are both fulfillable. The Binary-Version substitution is needed when two arch-dependent packages depend on each other. Questions? Comments? Simon
Attachment:
pgphk6ecbeNh7.pgp
Description: PGP signature