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

dpkg and a symlink that gets a directory



Hi,

I think I have raised this somewhere before, but I can't remember or
find it in the list archives. In the tetex-bin package, there is a
symlink:

/usr/share/texmf/web2c --> /var/lib/texmf/web2c

Now I want to make /usr/share/texmf/web2c an ordinary directory with
some static files in it, while /var/lib/texmf/web2c will still be found
by TeX because of a configuration change. But I encounter a strange
problem:

If I install the new package, the symlink is removed, but the directory
/usr/share/texmf/web2c is not created. It only works if I remove the
symlink in preinst; but then I get the strange error message:

Unpacking replacement tetex-bin ...
rm: cannot remove `/usr/share/texmf/web2c': Is a directory
Setting up tetex-bin (2.0.2-16.2) ...

The error messages is _not_ from preinst, it's after this, I tested
this. And the truth is that /usr/share/texmf/web2c is nonexistent before
unpacking, and is a directory after unpacking that should _not_ be
removed, and _is_ not removed in this case.

Well, then I created a dummy package that contains a symlink to a
directory, installed it, and then installed the next version which has
an ordinary directory instead of a symlink. Here, the symlink is kept,
and the contents of the new directory is put into the destination
directory. 

Is this a known problem of dpkg, and is it documented anywhere?

If I add a preinst to the dummy package that removes the symlink before
unpacking, then all goes well, and the strange error message that I get
with tetex-bin does not occur. 

Any ideas what could be the cause of this error?

TIA, Frank
-- 
Frank Küster, Biozentrum der Univ. Basel
Abt. Biophysikalische Chemie



Reply to: