Albero locale alternativo

  • Creatore
    Topic
  • #9867
    Up
    0
    Down
    ::


    Ciao a tutti! Forse questo è il mio primo argomento…

    Scusate se mi intrometto. Vorrei installare alcuni pacchetti, ma non ho la password di root. Il procedimento dei post precedenti alla fine funziona, però avrei una domanda…

    Non riesco a fare la stessa cosa sostituendo a $HOME/texmf una qualsiasi altra directory, ad esempio /scratch/texmf. La ragione è che /home è montata via NFS ed è lenta. In più c’è una quota abbastanza risicata e preferirei usare /scratch.

    Un modo forse è fare un link simbolico di /scratch/texmf su $HOME/texmf, ma preferirei di no.

    Ho provato a settare la variabile $TEXMF della bash, ma la cosa non va a buon fine.

    Ho trovato questa cosa, però non mi sembra serva nel mio caso…

    http://www.tex.ac.uk/cgi-bin/texfaq2html?label=privinst

    Grazie per le risposte!

Visualizzazione 2 filoni di risposte
  • Autore
    Risposte
    • #9868
      ev
      Partecipante
        Up
        0
        Down
        ::


        Mi sono permesso di spostare il messaggio in un nuovo thread.

        Non riesco a fare la stessa cosa sostituendo a $HOME/texmf una qualsiasi altra directory, ad esempio /scratch/texmf. La ragione è che /home è montata via NFS ed è lenta. In più c’è una quota abbastanza risicata e preferirei usare /scratch.

        Si può fare, ma con le dovute precauzioni e considerando che, nel caso di eventuali aggiornamenti del sistema operativo o dei pacchetti installati ti converrà controllare con attenzione se tutto continuerà a funzionare.

        Assumendo l’uso di una shell Bourne-like, nel dettaglio le operazioni sono:

        • crea $HOME/texmf e mettici dentro qualche cosa che sicuramente non c’è negli altri alberi:
          `mkdir -p $HOME/texmf/tex/latex
          touch $HOME/texmf/tex/latex/questo.non.esiste.altrove.tex
          texhash $HOME/texmf`

        • controlla che il file sia ora “visibile” da TeX:
          `kpsewhich questo.non.esiste.altrove.tex`

        • da terminale esegui:
          `kpsexpand '$TEXMF'`

        • copia l’output del comando precedente

        • da terminale esegui
          `export TEXMF=''`
          mi raccomando metti tutta quella roba tra apici singoli

        • da terminale esegui
          `kpsexpand '$TEXMF'`
          e controlla che il risultato sia quello desiderato

        • controlla che il file ora non sia più “visibile” da TeX:
          `kpsewhich questo.non.esiste.altrove.tex`

        • modifica il tuo .profile (oppure .bash_profile, .bash_login, .bashrc o quello che usi) aggiungendo quell’export.

        Ora puoi trattare /scratch come un qualsiasi altro albero (quindi ricordarti di usare texhash).

      • #9869
        Up
        0
        Down
        ::


        Grazie, ora provo!

      • #9870
        Up
        0
        Down
        ::

        Non riesco a fare la stessa cosa sostituendo a $HOME/texmf una qualsiasi altra directory, ad esempio /scratch/texmf. La ragione è che /home è montata via NFS ed è lenta. In più c’è una quota abbastanza risicata e preferirei usare /scratch.

        Si può fare, ma con le dovute precauzioni e considerando che, nel caso di eventuali aggiornamenti del sistema operativo o dei pacchetti installati ti converrà controllare con attenzione se tutto continuerà a funzionare.

        Che non sia più semplice mettere nel .bash_profile un comando come
        `export TEXMF=/scratch/texmf:$(kpsexpand '$TEXMF')`
        invece che riportare tutta la faccenda? Così si lascia il lavoro duro a kpathsea. E non occorre nemmeno dare mktexlsr (nome più appropriato per texhash).

        Meraviglie della shell! 😀

        Ciao
        Enrico

    Visualizzazione 2 filoni di risposte
    • Devi essere connesso per rispondere a questo topic.

    Go to top