Re: etch -> lenny upgrade fails, because @INC does not contain 5.10 paths
tag 482140 - unreproducible
On Fri, Oct 10, 2008 at 04:14:27PM +0200, Agustin Martin wrote:
> On Tue, Oct 07, 2008 at 05:51:20PM +0200, Daniel Leidert wrote:
> > Examining bug #482140 I found, that update-xmlcatalog fails during
> > dist-upgrade from Etch to Lenny with an Error, that Functions.pm cannot
> > be found in @INC (the same goes for defoma-app, IIRC there Copy.pm was
> > not found). The paths in @INC were only the generic paths and the 5.8
> > paths, but the 5.10 paths were missing.
> Finally reproduced. Do not know what gnome triggers here, probably changes
> package installation ordering, causing the error condition. Trying without
> gnome installed I could not reproduce the error.
Here's a simple recipe, starting with a clean Etch chroot:
# apt-get install docbook-xml
# sed -i s/etch/lenny/ /etc/apt/sources.list
# apt-get update
# apt-get -d install perl-modules docbook-xml
# cd /var/cache/apt/archives
# dpkg --unpack perl-modules_5.10.0-*.deb docbook-xml_4.5-5*.deb
Can't locate File/Spec/Functions.pm in @INC (@INC contains: /etc/perl
/usr/local/lib/perl/5.8.8 /usr/local/share/perl/5.8.8 /usr/lib/perl5
/usr/share/perl5 /usr/lib/perl/5.8 /usr/share/perl/5.8
/usr/local/lib/site_perl .) at /usr/sbin/update-xmlcatalog line 124.
BEGIN failed--compilation aborted at /usr/sbin/update-xmlcatalog line 124.
Removing obsolete conffile /etc/sgml/docbook-xml/3.1.7/dbgenent.ent ...
Unpacking replacement docbook-xml ...
# apt-get -f dist-upgrade
Setting up docbook-xml (4.5-5) ...
update-xmlcatalog: error: entity already registered
dpkg: error processing docbook-xml (--configure):
subprocess post-installation script returned error exit status 1
Errors were encountered while processing:
I still think the only options to fix this for sure are to change
the docbook-xml postinst or to make the package pre-depend on a fixed
Fortunately docbook-xml does seem to be the only package affected after all.
I've gone through my earlier list of packages using dh_installxmlcatalogs,
and there are only six packages with a newer version in Lenny than in
Etch. Out of these, all the other five can be upgraded succesfully with
the above recipe.
I think (but haven't systematically verified) that the other five
succeed because they re-register the same catalog information in the
postinst, so it doesn't matter that 'prerm upgrade' failed to remove
the old information.
(The update-xmlcatalog script only bails out with an error if asked to
add catalog information with an existing key but different contents. If
the key and the contents match existing data, it will just exit
For reference, the packages I've gone through are
Niko Tyni email@example.com