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

Re: HELP with luatex diversions ...



On So, 29 Nov 2009, Norbert Preining wrote:
> Second try: do the same with added --rename
> Effect: dpkg-divert dies because a file /usr/bin/texdoc already exists?
> Huh??? Well, probably the one from texlive-base.

More details on that. I removed the set -e so that the rest continues,
the log of update from texlive-base 2007 + luatex 0.40.5  --> dist-upgrade
to luatex 0.46.0-2 (only locally present, contains the code with --rename):
-----
...
Unpacking replacement texlive-base ...
Replacing files in old package luatex ...
...
Preparing to replace luatex 0.40.6-1+b1 (using .../luatex_0.46.0-2_amd64.deb) ...
Removing `diversion of /usr/bin/texdoc to /usr/bin/texdoc.notluatex by luatex'
dpkg-divert: rename involves overwriting `/usr/bin/texdoc' with
  different file `/usr/bin/texdoc.notluatex', not allowed
Removing `diversion of /usr/share/man/man1/texdoc.1.gz to /usr/share/man/man1/texdoc.notluatex.1.gz by luatex'
Unpacking replacement luatex ...
-----

Why on earth???

ls -l /usr/bin/texdoc* gives:
lrwxrwxrwx 1 root root  9 Nov 29 17:20 /usr/bin/texdoc -> texdoclua
lrwxrwxrwx 1 root root 48 Nov 29 17:21 /usr/bin/texdoc.notluatex -> ../share/texmf-texlive/scripts/texdoc/texdoc.tlu

and dpkg -S /usr/bin/texdoc:
diversion by luatex from: /usr/bin/texdoc
diversion by luatex to: /usr/bin/texdoc.notluatex
texlive-base: /usr/bin/texdoc

So it it seems that the following happened:
- dpkg unpacks new texlive-base
- dpkg diverts texdoc to texdoc.notluatex -> ../haer/texmf-texlvie....
  (which is CORRECT)
- dpkg prepares to unpack luatex, calls preinst
- at this stage the /usr/bin/texdoc is still a link to texdoclua, so
  removing the diversion and reinstating the old contents (which is the
  new contents) does not work

But how can one circumvent that???

My idea was put it into the postinst ... but there we go:
-----
....
Unpacking replacement texlive-base ...
Replacing files in old package luatex ...
...
Removing `diversion of /usr/bin/texdoc to /usr/bin/texdoc.notluatex by luatex'
dpkg-divert: rename involves overwriting `/usr/bin/texdoc' with
  different file `/usr/bin/texdoc.notluatex', not allowed
....
----
Bummer.

$ dpkg -S /usr/bin/texdoc 
diversion by luatex from: /usr/bin/texdoc
diversion by luatex to: /usr/bin/texdoc.notluatex
texlive-base: /usr/bin/texdoc

$ ls -l /usr/bin/texdoc*
lrwxrwxrwx 1 root root  9 Nov 29 17:41 /usr/bin/texdoc -> texdoclua
lrwxrwxrwx 1 root root 48 Nov 29 17:42 /usr/bin/texdoc.notluatex -> ../share/texmf-texlive/scripts/texdoc/texdoc.tlu

So same problem. But in the second case I *really* do not understand 
that problem?

Argggrummmpfffff
Giving up.

Best wishes

Norbert

-------------------------------------------------------------------------------
Dr. Norbert Preining                                        Associate Professor
JAIST Japan Advanced Institute of Science and Technology   preining@jaist.ac.jp
Vienna University of Technology                               preining@logic.at
Debian Developer (Debian TeX Task Force)                    preining@debian.org
gpg DSA: 0x09C5B094      fp: 14DF 2E6C 0307 BE6D AD76  A9C0 D2BF 4AA3 09C5 B094
-------------------------------------------------------------------------------
ABERCRAVE (vb.)
To strongly desire to swing from the pole on the rear footplate of a
bus.
			--- Douglas Adams, The Meaning of Liff


Reply to: