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

Re: Multiarch interfaces: print foreign arches, pkgname I/O



On Mon, Dec 12, 2011 at 04:17:15PM +0100, Raphael Hertzog wrote:
> On Mon, 12 Dec 2011, Sven Joachim wrote:
> > With dpkg from your pu/multiarch/full branch, this does not work:
> > | # dpkg -i /var/cache/apt/archives/libc-bin_2.13-22_amd64.deb 
> > | dpkg: error processing /var/cache/apt/archives/libc-bin_2.13-22_amd64.deb (--install):
> > |  libc-bin:amd64 2.13-22 (Multi-Arch: foreign) is not co-installable with libc-bin:i386 2.13-22 (Multi-Arch: foreign) which is currently installed
> 
> Hum, right, it does not work currently. I mixed because I called
> cross-grade some tests in the test-suite that ensure that we can switch
> between various kind of M-A packages.
> 
> So this is currently not supported "as-is" and it would require
> supplementary work. It could be fixed though and made to work with a
> supplementary --force option.

Should it even require any forcing?  Multi-Arch: foreign basically says
that the package is just as good no matter what architecture it is (as
long as you can execute binaries of that architecture).  It seems to me
that if both packages are M-A: foreign then dpkg should just let you
install one over the top of the other as if it were an upgrade.

Such a change would make crossgrades much easier, and doesn't seem to
make anything else worse: for example if apt decides it needs to switch
architectures of an M-A: foreign package (I can't currently think of a
concrete reason why other than crossgrades or explicit requests, but
never mind) it probably has a good reason and it doesn't seem to help
anything for dpkg to require a --force option for it.

(Ian suggested this when I mentioned the problem to him in the pub
recently; I'd been playing with crossgrading a chroot.)

-- 
Colin Watson                                       [cjwatson@debian.org]


Reply to: