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

Bug#367559: tetex-base: Package cannot be installed: fmtutil failed



severity 367559 normal
stop

(this should never have been critical, anyway, serious would have been
correct as long as we could suspect that it was a teTeX problem)

Loris Bennett <loris.bennett@gmx.de> wrote:

> Hello Ralf,
>
> dpkg -S /usr/share/texmf/tex/context/base/cont-en.tex
>
> results in:
>
> dpkg: /usr/share/texmf/tex/context/base/cont-en.tex not found.
>
> However, searching for cont-en.tex on the debian website tells me that
> it is part of tex/tetex-base.

Yes, but tetex-base installs the file in /usr/share/texmf-tetex/..., not
in /usr/share/texmf.  So this means that somebody (you) installed the
ConTeXt files into /usr/share/texmf, without using a deb package.  

This should never have been done - local installs should go into
/usr/local/share/texmf.  In any case, putting the files you have into
/usr/share/texmf or /usr/local/share/texmf results in the configure
error, but it's a local misconfiguration and not a Debian bug.  

I'm still keeping this bug open - more often than not discussing such
things led to improvements in the documentation.

> I came across a posting from last year on the kanotix site in which
> someone complains that the version of ConTeXt included in the
> distribution is old, being from 2003. My version is, however, even older:
>
> -rw-r--r-- 1 root root 958 Sep 28  2002 cont-en.tex
>
> although my version of kanotix (2005-04) is more recent than that of
> the guy who wanted a more recent version of ConTeXt.

I'm not familiar with kanotix at all - are there regular releases, so
that this situation is unexpected, or does it instead provide some files
to download and create your own iso image?

> I don't really understand why there is any problem, since if
> tetex-base contains the file, any spurious version that already exists
> on my system should just get overwritten, shouldn't it?

No, because tetex-base's version is in a different TEXMF tree - and the
problem shows up because /usr/share/texmf is searched before
/usr/share/texmf-tetex/. 

> If there is anything I can do to provide you with more information
> which could help localise the problem, let me know.

>From the information we have so far it seems clear that the ConTeXt
files in /usr/share/texmf are not from a Debian package, but from some
local installation.  Or alternatively, Kanotix messes things up.  It
would be good to know which of the two.

And for you to fix the problem, you have to check which files below
/usr/share/texmf/ are under dpkg control and which are not.  After that,
you can probably remove those which are not (or at least move them to a
place where they are not found by TeX).

This command should give you a list of files in /usr/share/texmf that
are handled by dpkg in the file dpkgfiles.list:

dpkg -S usr/share/texmf/ | sed -e 's/^.*: //' | sort > dpkgfiles.list

This gives a list of all files:

find /usr/share/texmf/ | sort > allfiles.list

You can compare them:

diff -u dpkgfiles.list allfiles.list 

or get a list of files not under dpkg's control:

diff -u dpkgfiles.list allfiles.list | grep ^+

and move them to a backup location:

mkdir /some/backup/directory
for file in \
   `diff -u dpkgfiles.list allfiles.list | grep ^+/ | \
    sed -e 's/^[+]//' | grep -v '^/usr/share/texmf/$'`; \
  do \
    newdir=`dirname $file`; \
    cp $file ${newdir#/usr/share/texmf/}/`basename $file`; \
done

Or in one line for copying:

for file in `diff -u dpkgfiles.list allfiles.list | grep ^+/ | sed -e 's/^[+]//' | grep -v '^/usr/share/texmf/$'`; do newdir=`dirname $file`; echo cp $file ${newdir#/usr/share/texmf/}/`basename $file`; done

After this, I think it should work.

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



Reply to: