Newsgroup: it.comp.software.tex
Titolo: tetex slackware current

Cerco una (spero non improbabile) somma di coincidenze:
ho provato ad aggiornare alla "current" Slackware,
ma la compilazione (ovviamente c'è Tetex) fallisce.
Ricevo sempre messaggi del tipo:
kpathsea: Running mktexmf ecit1000
mktemp: cannot create temp file mf.7D8GTc: Permission denied
/usr/share/texmf/bin/mktexmf: line 94: : No such file or directory
chmod: invalid argument: `'
mv: impossibile fare stat di `': No such file or directory
mktexmf: /var/lib/texmf/source/jknappen/ec/ecit1000.mf: successfully
generated.
/usr/share/texmf/web2c/mktexupd: /var/lib/texmf/source/jknappen/ec/ecit1000.mf
not a file.
warning: kpathsea: mktexpk output
`/var/lib/texmf/source/jknappen/ec/ecit1000.mf' instead of a filename.
! I can't find file `ecit1000'.
<*> ...ljfour; mag:=1; nonstopmode; input ecit1000
Please type another input file name
! Emergency stop.
<*> ...ljfour; mag:=1; nonstopmode; input ecit1000
Transcript written on mfput.log.
grep: ecit1000.log: No such file or directory
mktextfm: `mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input
ecit1000' failed to make ecit1000.tfm.
kpathsea: Appending font creation commands to missfont.log.
! Font T1/cmtt/m/it/10=ecit1000 at 10.0pt not loadable: Metric (TFM) file
not f
ound.
<to be read again>
                   relax
l.113 -j DNAT {-}{-}to-destination \textit{host}}
?                                  
Si tratta forse di un bug nei permessi del pacchetto?
Grazie
M.

 [...]
Non ho Slackware, ma potrei avere una diagnosi: non hai il permesso di 
scrittura dove gli script tentano di creare i file necessari. Un modo 
per risolvere dovrebbe essere quello di crearsi una directory 
/var/tmp/texfonts, con privilegi appropriati, e impostare la variabile 
di ambiente
VARTEXFONTS=/var/tmp/texfonts
Il posto migliore dove impostare la variabile è nel file texmf.cnf 
nell'albero locale, ma prima prova con la shell. Prova anche con 
texconfig-sys che potrebbe avere un'opzione apposita. Se non hai 
texconfig-sys, usa texconfig come root.
Ciao
Enrico

 texconfig-sys, usa texconfig come root.
Ho provato, ma così non funziona. Devo affinare
la procedura... Una soluzione forse un po' grossolana
dal punto della sicurezza, ma che ho constato funzionare,
e chmodare a 777 la directory /var/lib/textmf.
Non capisco però la mossa di Slackware...
In un ChangeLog di maggio si legge:
==========================================================================
t/tetex-3.0-i486-2.tgz: 
Moved font build directory (only usable by root anyway) from
/var/tmp/texfonts to /var/lib/texmf.
Improved /tmp use security.
==========================================================================
Dunque, alla directory dei font può accedere solo root.
Ma allora, come può un utente non root compilare?
E, nella soluzione da me sopra riportata, non si introduce
una falla ancor maggiore nella sicurezza del sistema?
Da ultimo: se compilo da utente lanciando "make"
(visto che ho un testo complesso costituto da più capitoli
e la cui compilazione è gestita da un Makefile), tutto
funziona. Invece, se compio la stessa operazione da root,
funziona il comando per pulire la dir, ma non quello
per compilare:
bash-3.1$ su
Password:
bash-3.1# make clean
rm -f *.aux *.dvi *.log *.out *.pdf *.ps *.toc *.*~
bash-3.1# make
latex S4d.tex
make: latex: Command not found
make: *** [S4d.dvi] Error 127
bash-3.1#
E così non capisco questa "rivoluzione" nei permessi
di Slackware...
Mille grazie
M.

 scrive:

Be', impostare i permessi di una directory a 777 mi sembra
un po' eccessivo: chiunque ci può scrivere e fare i suoi porci
comodi. :-)
Sinceramente non capisco la politica di Slackware al riguardo. Un modo 
di risolvere la cosa potrebbe essere puntando la variabile VARTEXFONTS 
a una directory di tua proprietà e poi usando cron(8) per trasferire le 
cose create in /var/lib/texmf/...
Un po' macchinoso, ma dovrebbe funzionare (ricordando a cron(8) di 
eseguire anche mktexlsr(1), naturalmente). In una settimana non dovresti
accumulare troppa roba. Se poi installi i font CM-Super, puoi 
cancellare i pk che diventano inutili. Oppure usare i Latin Modern che
ti dovrebbero alleviare del tutto (o quasi) dal problema.
Se non riesci a compilare come root è certamente un problema di PATH, 
root l'ha diverso dagli utenti normali. Più corto, di solito ;-)
Ciao
Enrico

 root l'ha diverso dagli utenti normali. Più corto, di solito ;-)
Ho appurato che con "su -" non compila. Invece, entrando
direttamente da root, compila tranquillamente. Cmq il fatto
che un utente per compilare deva modificare i permessi
lo trovo francamente sconcertante...
Intanto grazie mille
M.

 deva
ops... deve, debba... :-)
M.

Leggendo lo SlackBuild di TeTeX ho trovato:
========================================================================
# There were so many local security problems with this shared fontcache
# scheme that it's not worth trying to support.  It was not enabled by
# default, and newer versions of teTeX don't seem to recongnize it any
# longer either.
#export fontcache=/var/cache/fonts
#export vartexfonts=$fontcache
#mkdir -p /var/cache/fonts/pk /var/cache/fonts/source /var/cache/fonts/tfm
#chmod 1777 /var/cache/fonts /var/cache/fonts/pk \
#  /var/cache/fonts/source /var/cache/fonts/tfm
========================================================================
Credo che decommentando e ricompilando TeTeX possa risolversi
il problema. Resta però il quesito: ma un utente normale,
per poter compilare un file .tex senza cambiare tutto,
che diavole deve fare??
M.


Quanto poi al "deva", non preoccuparti troppo; ieri sera al TG5
l'ineffabile giornalista, descrivendo la festa scozzese al castello
di Balmoral disse, a proposito dei componenti della famiglia reale che
assistevano ai giochi: "Sembra che si divertino".
Venghino, signori, e si divertino vedendo la donna barbuta e il nano
pių alto del mondo!
Ciao
Enrico

 scrive:

Sinceramente non lo so; a volte i maintainers delle distribuzioni
sono paranoici. Da quello che so la variabile VARTEXFONTS è di
quelle definite dalla libreria kpathsea, a meno che i tipi di
Slackware non l'abbiano eliminata. Prova a puntarla a una directory 
nella tua home e vedi che succede.
Prova anche a dare il comando
kpsexpand '$VARTEXFONTS'
e dimmi che cosa produce.
Ciao
Enrico

 nella tua home e vedi che succede.
[cut]
C'era un conflitto di permessi, ora risolto.
Il "deva" era un semplice refuso, ma io
sono piuttosto delicato in fatto di ortografia,
per cui non volevo si pensasse...
Cmq ora compilo tranquillamente anche
da semplice utente.
Mille grazie per l'attenzione
M.
PS
La terza edizione della mia guida
a Slackware sarà in LaTeX. Se c'è
qualcuno interessato, posso chiedere
se nel sito (
slacky.it
) magari
pubblicano anche il sorgente...