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

Bug#425803: #425803 [FIXED 2007-11]: upgrade fails ... (still fails here)



"A. Costa" <agcosta@gis.net> wrote:

> Which packages are these, (some or all)?  And what if I need them, do I
> reinstall only to fail again?
>
> Thanks for the advice, though I'm not a fan of the "try this" school of
> help; in the long run it's better to know the reason why something
> should work, why it fails, or how it's supposed to work, what it does.

Definitely.  So here's a short explanation:  Some files below /etc/texmf
used to be conffiles long ago and were later dropped or moved elsewhere
(at least for etch, if not sarge).  Due to the handling of removed
conffiles in older dpkg versions, they would still hang around on such
old and updated installations.

Therefore the postrm script of tetex-base in etch has code to remove
those obsolete conffiles upon purge, so that after removal and purging
of tetex-base in etch, /etc/texmf should be empty.  Now the problem is
that in the packages of texlive_2007, some of these files are again
conffiles at the exact same places.  We have solved this problem by
creating an updated tetex-base package which does not remove those files
upon purge.

However, if the package is already in state "rc" (removed, but conffiles
still installed), then the update won't reach it.  This might happen to
some users of sid and testing.  The consequence is that if someone
purges tetex-base after upgrading to texlive_2007, these conffiles are
removed.

For some of these files, this results in failed format generation.  And
now comes a correction to what I wrote earlier: The packages in sid and
lenny which provide these files already have a fix included in their
postinst: The strictly necessary files will always be resurrected, even
if "--force-confmiss" is not given.

On your system, texlive-base-bin failed to configure because modes.mf is
missing.  modes.mf is provided by texlive-base.

Now there's a new problem: texlive-base depends on texlive-base-bin.
Therefore its postinst script (which would resurrect modes.mf) will not
be run until texlive-base-bin's was successful, but that won't happen
until modes.mf is present - a circle.

To break the circle, you can run

dpkg -i --force-depends /var/cache/apt/archives/texlive-base_2007-10_all.deb

which will resurrect modes.mf.  After that, either dpkg tries to
configure tl-base-bin itself (I'm not sure, but I don't think so with
force-depends), or you can run "dpkg --configure -a".  



Do you remember when you purged tetex-base and which texlive packages
you installed afterwards?  We should really make sure that this won't
happen upon normal upgrades...

Regards, Frank

-- 
Frank Küster
Single Molecule Spectroscopy, Protein Folding @ Inst. f. Biochemie, Univ. Zürich
Debian Developer (teTeX/TeXLive)



Reply to: