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

Bug#538399: /usr/bin/apt-get: fails to upgrade dependencies



2009/7/25 Goswin von Brederlow <goswin-v-b@web.de>:
> Michal Suchanek <hramrach@centrum.cz> writes:
>
>> Package: apt
>> Version: 0.7.21
>> Severity: important
>> File: /usr/bin/apt-get
>>
>>
>> This is a mojor problem. Unless you always use dist-upgrade (as opposed
>> to only installing security upgrades) and always use only one repository
>> you will likely get in this situation.
>>
>> You have two packages - typically libA and libA-dev where libA-dev
>> requires exact version of libA. And you try to install pacakge B that
>> requires a newer vesion of libA. Apt fails to do that.
>>
>> # ia32-apt-get  install xinput/unstable
>> Reading package lists... Done
>> Building dependency tree
>> Reading state information... Done
>> Selected version 1.4.2-1 (Debian:unstable) for xinput
>> Some packages could not be installed. This may mean that you have
>> requested an impossible situation or if you are using the unstable
>> distribution that some required packages have not yet been created
>> or been moved out of Incoming.
>> The following information may help to resolve the situation:
>>
>> The following packages have unmet dependencies:
>>   xinput: Depends: libxi6 (>= 2:1.2.0) but 2:1.1.4-1 is to be installed
>> E: Broken packages
>> # ia32-aptitude  install
>> xinput/unstable
>> Reading package lists... Done
>> Building dependency tree
>> Reading state information... Done
>> Reading extended state information
>> Initializing package states... Done
>> Writing extended state information... Done
>> The following packages are BROKEN:
>>   xinput
>> 0 packages upgraded, 1 newly installed, 0 to remove and 25 not upgraded.
>> Need to get 16.0kB of archives. After unpacking 77.8kB will be used.
>> The following packages have unmet dependencies:
>>   xinput: Depends: libxi6 (>= 2:1.2.0) but 2:1.1.4-1 is installed.
>> The following actions will resolve these dependencies:
>>
>> Upgrade the following packages:
>> libxi-dev [2:1.1.4-1 (stable, testing, now) -> 2:1.2.1-2 (unstable)]
>> libxi6 [2:1.1.4-1 (stable, testing, now) -> 2:1.2.1-2 (unstable)]
>>
>> Score is -10
>>
>> Accept this solution? [Y/n/q/?]
>
>
>> APT::Default-Release "lenny";
>
> I believe that behaviour is as expected.
>
> ia32-apt-get  install xinput/unstable
>
> Means that you override the default release for *only* xinput and all
> other packages remain with lenny pinned highest. apt-get then refuses
> to install a package that is not pinned highest (the lenny package in
> your case).

As I see it pinning is only a hint as to what packages I prefer. For
one, if I install an unstable package and a newer version is uploaded
into unstable then that version should be installed, too, regardless
of pinning other repository higher.

>
> Now, aptitude on the other hand happily breaks the pining restrictions
> and installs the unstable version that has a lower pin than the stable
> version. Something I would even consider a bug.

OK, I would then need a really-install command for apt-get that really
installs packages.

apt-get is pretty much useless for me otherwise.

Note that aptitude does not just break the pinning, It says that it
needs to upgrade the packages and offers that as a solution but
apt-get plain refuses to do anything and does not give very insightful
messages either.

The reason why a different version of the library is installed (which
actually means the library is held back) is not shown. It might be
that something else requires the old version, the new version
conflicts with something, it breaks apt pinnig, whatever else.

>
>
> What you should do is
>
> ia32-apt-get -t sid install xinput
> or
> ia32-apt-get -t unstable install xinput
>
> One of the two works the other doesn't. -t is a bit picky iirc.

I guess it should have been
 -t sid install
or
 install -t sid

and that only one works is yet another bug which is already reported
(and unfixed) iirc.

This, however, installs all dependencies from sid, not just the ones
that have to be installed from sid.

Thanks

Michal



Reply to: