[Bug 1015567] Re: upgrade failed: mixed non-coinstallable and coinstallable package instances present
David Lang
david at lang.hm
Fri Sep 28 23:52:03 UTC 2012
Dmitrijs,
The problem is that people who tripped over this bug cannot use the
normal methods to upgrade to get the fix. We greatly appriciate that the
bug is now fixed so this won't trash everyone else's systems, but the
question is how to fix the systems that this bug already trashed.
I got out of it by editing /var/lib/dpkg/status to add an arch entry
when one wasn't present.
However, most people are not going to be comfortable doing that, so what
can they do?
I suspect that this is going to require downloading a fixed dpkg binary
from somewhere, and then running something with that to get the fix
properly.
I could find the package, download it, extract it, and replace the
binary, but there is probably a much cleaner way to do this, but it will
take someone who knows the debian packaging internals better than I do
to identify what is the minimum safe thing to do.
David Lang
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dpkg in Ubuntu.
https://bugs.launchpad.net/bugs/1015567
Title:
upgrade failed: mixed non-coinstallable and coinstallable package
instances present
Status in “dpkg” package in Ubuntu:
Fix Released
Status in “dpkg” source package in Quantal:
Fix Released
Bug description:
This is the bug which was warned about in [0]
The easy analysis that you can run, with solutions proposed to recover is in [1]
The minimal test case goes like this:
1) install non-multiarch package for native architecture with some config files
2) remove non-multiarch package (not purge)
3) rm /var/lib/dpkg/info/lp1015567.list
4) install multiarch package for foreign architecture, optionally with the same config file
5) upgrading dpkg will result in:
mixed non-coinstallable and coinstallable package instances present
To easily reproduce the problem, I created a test case packages, see
lp:~dmitrij.ledkov/+junk/lp1015567-test
bzr branch lp:~dmitrij.ledkov/+junk/lp1015567-test
cd lp1015567-test
debuild
pbuilder-dist precise create
echo "HOOKDIR=~/pbuilder/hookdir" >> ~/.pbuilderrc
cp ../lp1015567-test*_all.deb ~/pbuilder/hookdir
pbuilder-dist precise execute F10lp1015567
[0] http://lists.debian.org/msgid-search/20120310083539.GA15353@gaara.hadrons.org
[1] http://lists.debian.org/msgid-search/20120315080224.GA18049@rivendell.home.ouaza.com/firsthit
--
TODO
natty, oneiric, precise are suspected they may corrupt dpkg database as stated in [0]
it is possible to use script from [1] to fix up the dpkg database
Should this be done in dpkg or in update-manager?
One solution is to mark the: rc non-ma package as ma:same
Should this be backported to natty, oneiric, precise?
--
ORIGINAL DESCRIPTION
This morning I decided to upgrade precise -> quantal.
I replaced 'precise' -> 'quantal' in /etc/apt/sources.list, apt-get update && apt-get dist-upgrade.
the upgrade failed. Attempts to 'apt-get -f install' look like:
$ sudo apt-get -f install --assume-yes
Reading package lists...
Building dependency tree...
Reading state information...
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
erlang-crypto python-avahi erlang-xmerl erlang-syntax-tools libsctp1
lksctp-tools libmozjs185-1.0 libopenal-data erlang-runtime-tools
erlang-mnesia erlang-public-key python-desktopcouch-records erlang-inets
erlang-ssl python-desktopcouch-application erlang-base
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
empathy empathy-common eog evolution-data-server-common
gir1.2-gnomebluetooth-1.0 gir1.2-rb-3.0 gnome-desktop-data
gnome-desktop3-data gnome-screensaver libcamel-1.2-33 libebook-1.2-13
libecal-1.2-11 libedataserver-1.2-16 libedataserverui-3.0-1
libgnome-bluetooth10 libgnome-desktop-3-4 libgnomekbd-common libgnomekbd8
libmusicbrainz5-0 librhythmbox-core6 libsane-common libunity-core-5.0-5
nautilus-data unity unity-common unity-services
Suggested packages:
empathy-call
The following packages will be REMOVED:
libgnome-desktop-3-2
The following NEW packages will be installed:
libcamel-1.2-33 libebook-1.2-13 libecal-1.2-11 libedataserver-1.2-16
libgnome-bluetooth10 libgnome-desktop-3-4 libgnomekbd8 libmusicbrainz5-0
librhythmbox-core6 libsane-common
The following packages will be upgraded:
empathy empathy-common eog evolution-data-server-common
gir1.2-gnomebluetooth-1.0 gir1.2-rb-3.0 gnome-desktop-data
gnome-desktop3-data gnome-screensaver libedataserverui-3.0-1
libgnomekbd-common libunity-core-5.0-5 nautilus-data unity unity-common
unity-services
16 upgraded, 10 newly installed, 1 to remove and 1058 not upgraded.
81 not fully installed or removed.
Need to get 0 B/7,509 kB of archives.
After this operation, 12.2 MB of additional disk space will be used.
dpkg: error: parsing file '/var/lib/dpkg/status' near line 10165 package 'libcanberra-gtk-module:i386':
mixed non-coinstallable and coinstallable package instances present
E: Sub-process /usr/bin/dpkg returned an error code (2)
Potentially useful information, I do have /etc/apt/sources.list.d entries for 'google-musicmanager.list' and 'google-talkplugin.list', which contain, repspectively:
deb http://dl.google.com/linux/musicmanager/deb/ stable main
and
deb http://dl.google.com/linux/talkplugin/deb/ stable main
ProblemType: Bug
DistroRelease: Ubuntu 12.04
Package: dpkg 1.16.3ubuntu2
ProcVersionSignature: Ubuntu 3.2.0-25.40-generic 3.2.18
Uname: Linux 3.2.0-25-generic x86_64
ApportVersion: 2.0.1-0ubuntu8
Architecture: amd64
Date: Wed Jun 20 09:30:38 2012
EcryptfsInUse: Yes
InstallationMedia: Ubuntu 11.10 "Oneiric Ocelot" - Release amd64 (20111012)
ProcEnviron:
TERM=screen-bce
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: dpkg
UpgradeStatus: Upgraded to precise on 2011-11-07 (226 days ago)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/1015567/+subscriptions
More information about the foundations-bugs
mailing list