Multiarch preparations needed for etch dpkg
Matt Taggart and others <firstname.lastname@example.org> writes:
> Hi debian-dpkg,
> Several people have been working on a project we've been calling "multiarch",
> to seamlessly support running applications for multiple different binary
> targets on the same system. The main example being running i386-linux-gnu
> applications on amd64-linux-gnu systems, but many other working combinations
> exist. More info on Debian's multiarch efforts at
> Part of implementing multiarch requires changes to dpkg.
I've added another section to the wiki above listing the changes I
would like to see implemented in etch dpkg in preparation for a future
multiarch dpkg. I still think multiarch can be done in the current
dpkg, esspecialy since I have an implementation that is 90% there.
The listed changes are linked on the main page or directly under
This comes down to 3 small changes with little to no impact on the
current system but enabling features for the future:
- Introduce the Multi-Arch field so sources can already set it
- Store meta data with an arch tag when Multi-Arch: yes is set
(Note that no package yet sets this. This is so packages can start
using Multi-Arch: yes without confusing future dpkg about file
I propose to use /var/lib/dpkg/info/<pkg>.<arch>.install as syntax.
- Allow arch specific depends
I propose to use "Depends: <pkg>:<arch> (>= 1.2-3)" as syntax for
thses. While for etch no package should use them dpkg should accept
them so installing etch+1 debs can go without hitch.
(Note that this also impacts on apt and aptitude)
The wiki has more details on each of the 3 steps.
I'm preparing patches for this but I would like to hear any comments,
specificaly on the syntax to be used, before I submit any. No point
in submitting a patch if the syntax then has to be changed.
If those 3 changes are accepted into dpkg for etch then there should
be no special steps needed in etch+1 to convert a system from uni-arch
to multi-arch. A simple dpkg upgrade should do the trick.