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

Bug#183845: tetex-bin: texconfig hangs forever in postinst with defunct child



Package: tetex-bin
Version: 2.0.2-1
Severity: normal


Similar to the now-closed #182125, the postinst hangs forever when
installing tetex-bin.  After poking at it for a while I finally
determined the problem relates to me having typed "su" instead of "su -"
to do the install.

Here is the relevant install dialog:

Preparing to replace libkpathsea3 2.0.1-2 (using .../libkpathsea3_2.0.2-1_i386.d
eb) ...
Unpacking replacement libkpathsea3 ...
Preparing to replace tetex-bin 2.0.1-2 (using .../tetex-bin_2.0.2-1_i386.deb) ..
.
Unpacking replacement tetex-bin ...
Preparing to replace tetex-base 2.0.1-3 (using .../tetex-base_2.0.2-1_all.deb) .
..
Unpacking replacement tetex-base ...
Preparing to replace tetex-doc 2.0.1-3 (using .../tetex-doc_2.0.2-1_all.deb) ...
Unpacking replacement tetex-doc ...
Preparing to replace tetex-extra 2.0.1-3 (using .../tetex-extra_2.0.2-1_all.deb)
 ...
Unpacking replacement tetex-extra ...

...

Setting up tetex-base (2.0.2-1) ...
Installing new version of config file /etc/texmf/dvips/mt-yy.map ...
Installing new version of config file /etc/texmf/dvips/mt-plus.map ...

Setting up tetex-bin (2.0.2-1) ...
Installing new version of config file /etc/texmf/texmf.d/95NonPath.cnf ...
Regenerating /etc/texmf/texmf.cnf ... done
Regenerating /etc/texmf/fmtutil.cnf ... done
Regenerating /etc/texmf/updmap.cfg ... done
Running initex. This may take some time. ...
dpkg: error processing tetex-bin (--configure):
 subprocess post-installation script killed by signal (Interrupt)
Setting up tetex-doc (2.0.2-1) ...
mktexlsr: Updating /usr/local/lib/texmf/ls-R...
mktexlsr: Updating /var/lib/texmf/ls-R...
mktexlsr: Updating /var/cache/fonts/ls-R...
mktexlsr: Done.


The "killed by signal (Interrupt)" above is when I finally ^C'd the
postinst after realizing it was hung.

After killing it off, I reproduced the problem again with "dpkg
--configure --pending".  This is the process tree for configure at the time of the hang:

12909 pts/2    S      0:02  |       \_ dpkg --configure --pending
12910 pts/2    S      0:01  |           \_ /usr/bin/perl -w /usr/share/debconf/frontend /var/lib/dpkg/info/tetex-bin.postinst configure 2.0.1-2
12916 pts/2    S      0:00  |               \_ /bin/sh /var/lib/dpkg/info/tetex-bin.postinst configure 2.0.1-2
13022 pts/2    S      0:00  |                   \_ /bin/sh /usr/bin/texconfig init
13032 pts/2    Z      0:00  |                       \_ [texconfig] <defunct>

lsof tells me:

COMMAND     PID     USER   FD   TYPE     DEVICE     SIZE      NODE NAME
tetex-bin 12916     root    1w   REG        3,7      994        29 /tmp/texkPaeHl
texconfig 13022     root    1w   REG        3,7      994        29 /tmp/texkPaeHl

The contents of that file are:

--- start: /tmp/texkPaeHl ---

texconfig has found the following environment variables set:

 
AFMFONTS = $
AFMFONTS
 GFFONTS
GLYPHFONTS = 
GLYPHFONTS
 MPMEMS
MPPOOL = 
MPPOOL
 OVPFONTS
PKFONTS = 
PKFONTS
 TEXFONTMAPS
TEXFONTS = 
TEXFONTS
 TEXMFINI
TEXPICTS = 
TEXPICTS
 VFFONTS
XDVIFONTS = 
XDVIFONTS
 XDVIVFS
 = 


This path prohibits a default expansion. as it contains no : at either
end, nor :: somewhere in the middle.  Please make sure, that these paths
are ok, and otherwise change or unset them.  If you continue with wrong
values for the above variables, texconfig might run into trouble when
locating files on the disk.

Note that you can refer to the default path by giving an "empty" path
component (i.e. a colon in front or in the end, or a doubled colon
somewhere in the middle).

If you set TEXINPUTS, e.g. to :~/TeX/macros, (La)TeX will search along
the default path and then in ~/TeX/macros.

For more information, see the Kpathsea and the teTeX manual.

Press RETURN to continue (or Control-C to abort)...

--- end: /tmp/texkPaeHl ---

This led me to wonder if my environment had somehow gotten munged.  It
was then that it dawned on me I had typed "su" instead of "su -".

While it could be argued that everyone should always install as "su -"
anyway, it is an innocent enough mistake to make, and if it happens it
shouldn't result in the postinst hanging like this.  I think a bit of
thought needs to go into ensuring the postinst doesn't hang forever
waiting for user input that it will never get (e.g. redirect input?)

Thanks,
Ben Armstrong <synrg@debian.org>

-- System Information:
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux bgpc 2.4.20 #1 Fri Feb 21 21:53:39 AST 2003 i686
Locale: LANG=C, LC_CTYPE=C

Versions of packages tetex-bin depends on:
ii  debconf                    1.2.31        Debian configuration management sy
ii  debianutils                2.4           Miscellaneous utilities specific t
ii  dpkg                       1.10.9        Package maintenance system for Deb
ii  ed                         0.2-19        The classic unix line editor
ii  libc6                      2.3.1-14      GNU C Library: Shared libraries an
ii  libgcc1                    1:3.2.3-0pre3 GCC support library
ii  libkpathsea3               2.0.2-1       shared libkpathsea for teTeX
ii  libpng12-0                 1.2.5-10      PNG library - runtime
ii  libstdc++5                 1:3.2.3-0pre3 The GNU Standard C++ Library v3
ii  libwww0                    5.4.0-5       The W3C WWW library
ii  libxaw7                    4.2.1-6       X Athena widget set library
ii  perl                       5.8.0-17      Larry Wall's Practical Extraction 
ii  t1lib1                     1.3.1-1       Type 1 font rasterizer library - r
ii  tetex-base                 2.0.2-1       basic teTeX library files
ii  xlibs                      4.2.1-6       X Window System client libraries
ii  zlib1g                     1:1.1.4-10    compression library - runtime

-- debconf information:
* tetex-bin/hyphen: 
  tetex-bin/oldcfg: true
* tetex-bin/cnf_name: 
* tetex-bin/use_debconf: true
* tetex-bin/groupname: users
  tetex-bin/userperm: false
  tetex-bin/groupperm: true
* tetex-bin/lsr-perms: true




Reply to: