« Return to Thread: tetex on Vista

Re: tetex on Vista

by Michael Boulet :: Rate this Message:

Reply to Author | View in Thread

I received identical error messages on a recent WinXP w/ CYGWIN=nontsec install. Looking through /var/log/setup.log.full, I found that the tetex post-install script (/etc/postinstall/post-texmf.sh) was generating a lot of non-fatal errors regarding unwritable directories (/usr/share/texmf, /var/cache/fonts). ls and stat reported that the directories are indeed read-only; however, I was successfully able to touch a new file in each. Such behavior seems identical to the read-only DOS directory attribute problem referenced in: http://www.cygwin.com/ml/cygwin/2007-10/msg00606.html

I think that the fix for the read-only attribute will correct the problem with the tetex install (or at least my problem). As a short term solution, I edited several script files called by post-texmf.sh to remove directory writability tests. I also removed a couple of chmod commands that copied directory permissions to files (thereby making them read-only). I then deleted files '/var/cache/fonts/ls-R', '/var/lib/texmf/ls-R', & '/usr/share/texmf/ls-R' and reran post-texmf.sh (actually post-texmf.sh.done). I suspect that deleting the 'ls-R' files is not necessary.

Below is diff's output of changes to the tetex-bin script files:

diff ./old/fmtutil /bin/fmtutil
512d511
<   test -w "$destdir" || abort "format directory \`$destdir' is not writable"
diff ./old/mktexlsr /bin/mktexlsr
106d105
<   test -w "$db_dir" || { echo "$progname: $db_dir: directory not writable. Skipping..." >&2; continue; }
110,111d108
<     # Use same permissions as parent directory, minus x,s, or t bits.
<     chmod `kpsestat -xst "$db_dir"` "$db_file"
140,142d136
<   # To be really safe, a loop.
<   until PERMS=`kpsestat = "$db_file"`; do sleep 1; done
<   chmod $PERMS "$db_file_tmp"
diff ./old/texlinks /bin/texlinks
193d192
<   kpseaccess -w "$symlinkdir" || return 1
280,281d278
<     kpseaccess -w $d \
<       || { errmsg "$d: no write permissions. Skipping..."; continue; }
diff ./old/updmap /bin/updmap
826d825
<     test -w "$d" || abort "output directory \`$d' is not writable"
841c840
<   if test -d "$dir" && test -w "$dir"; then
---
>   if test -d "$dir"; then


The default installation of Cygwin tetex does not seem to have the
right permissions for Vista to be happy (with User Account Protection
turned on, as is default).  Here is an example of an error message:

$ latex filename.tex
This is pdfeTeXk, Version 3.141592-1.21a-2.2 (Web2C 7.5.4)
  file:line:error style messages enabled.
  %&-line parsing enabled.
kpathsea: Running mktexfmt latex.fmt
tcfmgr: config file `tcfmgr.map' (usually in $TEXMFMAIN/texconfig) not found.
fmtutil: config file `fmtutil.cnf' not found.
I can't find the format file `latex.fmt'!

 « Return to Thread: tetex on Vista