On Mon, Jul 09, 2012 at 02:00:14PM +0200, David Kalnischkies wrote: > Hi, > > while playing around with the APT code regarding architecture-specific > dependencies I stumbled over the handling of Provides in that context: > > Package: pkga > Status: install ok installed > Architecture: i386 > Provides: foo > > Package pkgb > Architecture: amd64 > Conflicts: foo:amd64 > > > The result with dpkg (1.16.7): > dpkg: regarding .../pool/pkgb_1_amd64.deb containing pkgb: > pkgb conflicts with foo:amd64 > pkga provides foo and is present and installed. > > > Even more interesting, if I change this conflict to a depends dpkg happily > installs the package and dpkg --audit gives no indication that a dependency > is unsatisfied (same problem with depends if no architecture is specified). > > Shouldn't provides be limited by the architecture their provider can work on? > Or did I miss something here? > > > Best regards > > David Kalnischkies
Imho a Povides creates an alias for the package. So Package: pkga Status: install ok installed Architecture: i386 Provides: foo should behave identical to Package: foo Status: install ok installed Architecture: i386 Note that the behaviour of a real package changes depending on the Multi-Arch setting and the same should be true for a provided package. The only difference with a provides should be that provides don't have a version. MfG Goswin -- To UNSUBSCRIBE, email to debian-dpkg-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/20120718103526.GA5976@frosties