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: