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

Re: Multiarch file overlap summary and proposal



Jonathan Nieder <jrnieder@gmail.com> writes:

> Jonathan Nieder wrote:
>> David Kalnischkies wrote:
>
>>> Why would it be intuitive to add a specific value for the arch attribute with
>>> apt-get install foo   # arch |= native
>>> but remove all values of the attribute with
>>> apt-get remove foo    # arch &= ~all-architectures
>>> ?
> [...]
>> But I really think this is something anyone can get used to.  In the
>> examples you listed above:
>>
>>  apt-get install foo;	# install foo with default arch-list (native)
>>  apt-get remove foo;	# remove foo
>>
>> If foo is installed for no architectures, that does not mean it is
>> installed with an empty architecture list.  It means it is simply not
>> installed.
>
> Ok, now I think I figured out the inconsistency you are pointing to.
> If i386 is the native architecture, what would you expect the
> following sequence of commands to do?
>
> 	apt-get install linux-image-3.2.0-1-amd64:amd64
>
> 	... wait a few weeks ...
>
> 	apt-get install linux-image-3.2.0-1-amd64
>
> I would expect it to install the kernel with 'Architecture: amd64' and
> then to upgrade it.
>
> So the proposed semantics are not quite 'arch |= native'.  They are
> more like 'arch defaults to native for non-installed packages'.
>
> Jonathan

Assuming linux-image-3.2.0-1-amd64:i386 still exists I would expect apt
to install that if it has a equal or greater version than the installed
linux-image-3.2.0-1-amd64:amd64.

Current apt behaviour is a bit strange there though:

mrvn@frosties:~% apt-cache policy acl
acl:
  Installed: 2.2.51-4
  Candidate: 2.2.51-5
  Version table:
     2.2.51-5 0
        500 http://ftp.de.debian.org/debian/ sid/main amd64 Packages
 *** 2.2.51-4 0
        100 /var/lib/dpkg/status

mrvn@frosties:~% apt-cache policy acl:i386
acl:i386:
  Installed: (none)
  Candidate: 2.2.51-5
  Version table:
     2.2.51-5 0
        500 http://ftp.de.debian.org/debian/ sid/main i386 Packages

I would expect something like:

mrvn@frosties:~% apt-cache policy acl
acl:
  Installed: 2.2.51-4 amd64
  Candidate: 2.2.51-5 amd64
  Version table:
     2.2.51-5 0
        500 http://ftp.de.debian.org/debian/ sid/main amd64 Packages
        499 http://ftp.de.debian.org/debian/ sid/main i386 Packages
 *** 2.2.51-4 0
        100 /var/lib/dpkg/status amd64


But it seems my patch to reduce the pin of non-native architectures is
not in current apt and policy doesn't list all archs for M-A:foreign
packages.

MfG
        Goswin


Reply to: