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

Re: dpkg: error: duplicate file trigger interest for filename `/usr/lib/gtk-2.0/2.10.0/immodules' and package `libgtk2.0-0:amd64'



Hi there,

On Sat, Jun 23, 2012 at 07:29:43PM +0800, bsfmig wrote:
> Sorry for forwarding it to several lists but please understand my
> hurry and desperate as a normal non-developer user.

> System: Ubuntu 12.10 amd64
> This error keeps every package from installing, upgrading and
> removing, that is, it results in a completely broken state of dpkg.
> Please give a precise meaning and a working solution, thanks!

Please note that Ubuntu 12.10 is still under development.  It is strongly
recommended that you be familiar with Ubuntu bug reporting procedures if you
are going to run a development release.

In this case, please report a bug against the dpkg package in launchpad by
using the command 'ubuntu-bug dpkg' from the affected system, and attach the
files /var/lib/dpkg/triggers/File and /var/log/apt/term.log to the bug
report.

On Sat, Jun 23, 2012 at 08:02:59PM +0800, bsfmig wrote:
> Would you please tell me on this more precisely that what operation
> can I do now, or should I just wait for a Ubuntu fix?

To fix up your dpkg database, the following shell command should suffice:

 sed -n -e"s,/,\\\\\\\\/,g; s/:$(dpkg --print-architecture)$//p " \
       /var/lib/dpkg/triggers/File \
 | while read line; do
      sudo sed -i -e"/^$line$/d" /var/lib/dpkg/triggers/File
 done

Please file a bug report *first* before running this command, as this
modifies the contents of /var/lib/dpkg/triggers/File and we need to see the
original file from your system to correctly debug this.

On Sat, Jun 23, 2012 at 01:54:18PM +0200, Guillem Jover wrote:

> W/o having checked this at all, my first assumption is that this is
> caused by the Ubuntu specific change introduced in 1.16.3ubuntu2,
> which would generate duped entries for the native and foreign packages
> from the previous unqualified package names in the triggers database.

There should be no duplication of triggers here for the foreign arch.  I
think what's happening is that /var/lib/dpkg/triggers/File contains a
pre-existing line "/usr/lib/gtk-2.0/2.10.0/immodules libgtk2.0-0", and an
upgrade of libgtk2.0-0 after the upgrade of dpkg has now resulted in a
second line, "/usr/lib/gtk-2.0/2.10.0/immodules libgtk2.0-0:amd64", which
the change from 1.16.3ubuntu2 causes dpkg to see as a duplicate.

It was already my intention to canonicalize the package names on upgrade;
there just wasn't time to implement that before uploading 1.16.3ubuntu2,
which was a fix for a critical bug that would leave all amd64 desktop users
dead in the water.

> The correct fix would be to use the architecture from the owning
> package instead I guess.

By definition, the owning package here is always the package of the native
arch.  The arch qualification was added to the package spec for native-arch
M-A: same packages due to the mutability of the native arch (in the
cross-grading case), but there's no way this entry would ever have been
created in Ubuntu dpkg by a package other than the one dpkg considered
native at the time, and if there has been a cross-grade we have no record of
that anyway; so we should fix this up in all cases by marking this as
native.

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@ubuntu.com                                     vorlon@debian.org

Attachment: signature.asc
Description: Digital signature


Reply to: