Re: architecture-specific dependencies on virtual packages
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
Reply to: