[Bug 831768] Re: aptitude cannot handle conflicts with multiarch enabled
Daniel Hartwig
831768 at bugs.launchpad.net
Fri Sep 14 02:48:45 UTC 2012
** Description changed:
[Impact]
* Inability to use aptitude on multi-arch systems. Any action which
results in a packaging conflict, or otherwise broken package, invokes
the problem resolver which will proceed to remove *all* foreign-arch
packages.
The packages are removed always, even if they are unrelated to the
problem being resolved. In the usual case, the problem resolver is
unable to find any solution which does not involve removing all foreign-
arch packages.
* Complete lack of upstream support for aptitude, regardless of whether
any specific issue appears to be related to multi-arch.
Upstream does not provide any support for aptitude where it is installed on a multi-arch system unless all of these conditions are met:
- it is at least version 0.6.6; and
- attached multiarch-conflicts.patch is applied.
At this point Ubuntu is 100% provider of support for aptitude on
Oneiric, Precise, and Quantal.
[Fix]
As attached. Update the problem resolver to be more informed about multi-arch packages and specifically the implicit package relations associated
with them.
[Test Case]
1. Enable multiarch (should be automatic on new oneiric systems)
2. Install an i386 package on amd64 (like flashplugin-installer:i386)
3. Mark something with a lot of dependencies for installation
4. On the confirmation screen, try to remove on of the dependencies (aptitude will now fail to perform upgrades when there's a package conflict w/out removing the i386 libs)
This renders aptitude painful on a multiarch enabled system (default in
oneiric).
[Workaround]
1. If you can survive without 32 bit libraries, just comment out the single line in /etc/dpkg/dpkg.cfg.d/multiarch; or
2. Use another package manager (e.g. apt-get, synaptic, or Software Center)
3. Disable the problem resolver by adding this line in /etc/apt/apt.conf:
Aptitude::ProblemResolver::StepLimit "0";
[Regression Potential]
* Patch is of moderate size but requires someone with strong APT
knowledge to verify.
* Some package relations, particularly conflicts and breaks, may be
wrongly ignored and packages not identified as broken by aptitude. This
can leave a system in a broken state and/or result in dpkg errors.
* Any complex dependency situation is potentially handled incorrectly.
* Already in Wheezy and Sid, suitable for Quantal.
** Do not even consider applying this patch to SRU without it being
first thoroughly inspected by a seasoned APT person. If you have never
looked deep in to the workings of, say, class pkgProblemResolver
(libapt-pkg) or the aptitude problem resolver, then you are probably
underqualified to inspect the patch. **
+ * None of the regression potential has any consideration given to
+ Ubuntu-specific factors. An Ubuntu dev. should consider reviewing and
+ updating as appropriate, at least to remove this notice.
+
[Original Report]
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: aptitude 0.6.4-1ubuntu2
Architecture: amd64
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to aptitude in Ubuntu.
https://bugs.launchpad.net/bugs/831768
Title:
aptitude cannot handle conflicts with multiarch enabled
Status in aptitude:
Fix Released
Status in “aptitude” package in Ubuntu:
Triaged
Status in “aptitude” source package in Oneiric:
Triaged
Status in “aptitude” source package in Precise:
Confirmed
Status in Baltix GNU/Linux:
Incomplete
Status in “aptitude” package in Debian:
Fix Released
Bug description:
[Impact]
* Inability to use aptitude on multi-arch systems. Any action which
results in a packaging conflict, or otherwise broken package, invokes
the problem resolver which will proceed to remove *all* foreign-arch
packages.
The packages are removed always, even if they are unrelated to the
problem being resolved. In the usual case, the problem resolver is
unable to find any solution which does not involve removing all
foreign-arch packages.
* Complete lack of upstream support for aptitude, regardless of
whether any specific issue appears to be related to multi-arch.
Upstream does not provide any support for aptitude where it is installed on a multi-arch system unless all of these conditions are met:
- it is at least version 0.6.6; and
- attached multiarch-conflicts.patch is applied.
At this point Ubuntu is 100% provider of support for aptitude on
Oneiric, Precise, and Quantal.
[Fix]
As attached. Update the problem resolver to be more informed about multi-arch packages and specifically the implicit package relations associated
with them.
[Test Case]
1. Enable multiarch (should be automatic on new oneiric systems)
2. Install an i386 package on amd64 (like flashplugin-installer:i386)
3. Mark something with a lot of dependencies for installation
4. On the confirmation screen, try to remove on of the dependencies (aptitude will now fail to perform upgrades when there's a package conflict w/out removing the i386 libs)
This renders aptitude painful on a multiarch enabled system (default
in oneiric).
[Workaround]
1. If you can survive without 32 bit libraries, just comment out the single line in /etc/dpkg/dpkg.cfg.d/multiarch; or
2. Use another package manager (e.g. apt-get, synaptic, or Software Center)
3. Disable the problem resolver by adding this line in /etc/apt/apt.conf:
Aptitude::ProblemResolver::StepLimit "0";
[Regression Potential]
* Patch is of moderate size but requires someone with strong APT
knowledge to verify.
* Some package relations, particularly conflicts and breaks, may be
wrongly ignored and packages not identified as broken by aptitude.
This can leave a system in a broken state and/or result in dpkg
errors.
* Any complex dependency situation is potentially handled incorrectly.
* Already in Wheezy and Sid, suitable for Quantal.
** Do not even consider applying this patch to SRU without it being
first thoroughly inspected by a seasoned APT person. If you have
never looked deep in to the workings of, say, class pkgProblemResolver
(libapt-pkg) or the aptitude problem resolver, then you are probably
underqualified to inspect the patch. **
* None of the regression potential has any consideration given to
Ubuntu-specific factors. An Ubuntu dev. should consider reviewing and
updating as appropriate, at least to remove this notice.
[Original Report]
ProblemType: Bug
DistroRelease: Ubuntu 11.10
Package: aptitude 0.6.4-1ubuntu2
Architecture: amd64
To manage notifications about this bug go to:
https://bugs.launchpad.net/aptitude/+bug/831768/+subscriptions
More information about the foundations-bugs
mailing list