Robitex's Blog

Ideas in the web

Installare TeX Live 2010 in Ubuntu Lucid Lynx


Scarica l’articolo in formato PDF per la stampa

TeX Live 2010

Ebbene si, è uscita la nuova TeX Live 2010. Questo post percorre le tappe dell’installazione su sistemi Debian like, ma credo con piccole modifiche sia la stessa che per le altre distribuzioni Linux.

Step 0: preparare il terreno

Se provenite dalla TeX Live 2009, allora sembra logico cancellare la directory che la contiene con il comando da terminale seguente (l’opzione -r indica la cancellazione ‘ricorsiva’ quindi l’eliminazione riguarda anche le sub directory):

sudo rm -r /usr/local/texlive/2009

A questo punto procuriamoci lo script d’installazione per la piattaforma *nix che si chiama install-tl-unx.tar.gz da uno dei mirror di CTAN (per esempio da questo server universitario olandese a cui di solito mi affido visto che è uno dei più veloci)

Step 1: Setup dell’installazione

Dopo aver scompattato l’archivio in una directory di comodo, da linea di comando spostiamo il prompt con il comando ‘cd’ nella stessa directory ed avviamo lo script con il comando (utilizziamo lo stesso server evitando quello di default italiano, spesso molto lento):

sudo ./install-tl -repository ftp://ftp.snt.utwente.nl/pub/software/tex/systems/texlive/tlnet/

Ben presto il terminale si trasforma nella console di configurazione per l’installazione, in cui in modo interattivo possiamo calibrare secondo le nostre esigenze TeX Live.
Tuttavia consiglio di lasciare le impostazioni di default e procedere con lo scheme-full (2377 MB), tranne nel caso in cui sul vostro sistema lo spazio su disco scarseggi (una configurazione ad-hoc può far scendere l’occupazione di memoria a circa 600 MB sacrificando alcune componenti meno usate).

Digitate quindi senza esitare ‘i’ ed invio per il download dei file necessari… davvero impressionante la mole di pacchetti LaTeX che saranno elencati uno ad uno rigorosamente in ordine alfabetico durante il processo.

Step 2: Ultimi ritocchi

La prima cosa da fare terminata la fase di download e di generazione di mappe e formati è settare i path degli eseguibili. Si è scelto infatti di non attivare i symlink, ovvero piccoli file posizionati nella directory bin di sistema che puntano agli eseguibili installati da TeX Live, proprio per non ‘sporcare’ una directory importante, ma di attivare il percorso dal file .profile nella directory home dell’utente. Diamo quindi il comando sempre da terminale:

echo 'export PATH=/usr/local/texlive/2010/bin/i386-linux:${PATH}' >> .profile

Propongo poi una semplice soluzione per lanciare il programma tlmgr di manutenzione della distribuzione con i diritti di amministratore: creare un alias nel file .bash_aliases rinominando in sutlmgr (super user tlmgr) il comando sudo /usr/local/texlive/2010/bin/i386-linux/tlmgr

echo 'alias sutlmgr="sudo /usr/local/texlive/2010/bin/i386-linux/tlmgr"' >> .bash_aliases

Tenete conto che se la vostra architettura di sistema è a 64 bit la directory contenente i binary sarà leggermente diversa da i386-linux. Controllate giusto per scrupolo il file di sistema /etc/environment se non volendo contenesse ancora qualche traccia di PATH verso l’eventuale vecchia TeX Live 2009.

Bene, adesso siamo pronti per lavorare con la nuova TeX Live 2010!

tlmgr in action

Brevemente, vi riporto i comandi da terminale più comuni dedicati alla manutenzione della TeX Live:

-- per controllare la presenza di aggiornamenti -->
tlmgr update --list

<-- per aggiornare tutto -->
sutlmgr update --all

<-- per controllare se un pacchetto è installato -->
tlmgr show nome_del_pacchetto

<-- per cambiare il repository corrente -->
<-- (occorre controllare il percorso effettivo -->
<--  della directory systems sul mirror) -->
sutlmgr option repository http://nome.del.mirror.org/tex/systems/texlive/tlnet

Saluti a tutti.

19 risposte a “Installare TeX Live 2010 in Ubuntu Lucid Lynx

  1. Claudio Beccari 08/10/2010 alle 10:01

    Roberto,
    le tue indicazioni sono preziose e utilissime, tuttavia, secondo me manca una cosa importante: far credere a Ubuntu di aver caricato la sua versione autoctona, perché altrimenti quest’ultima verrà caricata ogni volta che si vuole installare un programma che dipenda dalla installazione autoctona. Sul forum di GuIT sono apparsi diversi messaggi che indicano la strada da seguire, ma secondo me , benché la strada sia quella giusta, mi pare che l’elenco dei programmi dati in pasto ad apt-get come programmi già caricati escluda troppi programmi. Dacci un’occhiata e vedrai che forse non ho torto; io sono un modestissimo utente di Ubuntu (abitualmente uso Mac) , quindi posso avere equivocato.
    Ciao
    Claudio

    • robitex 08/10/2010 alle 10:21

      Ottimo suggerimento. Grazie Professore.
      Con un po’ di esperimenti ricavati dal forum penso non sia difficile “imbrogliare” il gestore dei pacchetti per essere liberi di installare per esempio l’editor Kile. Aggiornerò la guida se riuscirò nell’impresa di trovare qualche spazio nel tempo libero, che attualmente sto dedicando al programma GNU gpg per l’invio e la ricezione di messaggi sicuri (un esigenza che è nata nel gruppo che gestisce le attivazioni di utenti del forum di GuIT, circa lo scambio sicuro di password).
      Altro progetto molto interessante è scrivere una procedura ancora migliore per ottenere gli spettri sismici, attraverso codice Asymptote e Lua. Un lavoro che potrei anche pubblicare su Ars.
      Grazie ancora e… ci vediamo al meeting!

  2. Pingback:Kile e TeX Live 2010 su sistemi Ubuntu « Robitex's Blog

  3. Luigi 18/10/2010 alle 16:43

    sono un profano di linux e
    ho seguito la guida, ma non riesco ancora a cercare ed inslallare eventuali aggiornamenti e soprattutto non so che comando dare per avviare questo TexLive2010.
    come si fa?
    ho provato con il terminal a lanciarlo scrivendo un timido “texlive” o “tex live” o “texlive2010” o “tex live 2010” ma il terminal risponde che non ho installatato il programma o che non riesce a trovare il comando…

    ah! altra cosa: questa domanda me la faccio ogni volta che devo installare qualcosa e meno spesso farla partire; quindi, evidentemente ci sono molte cose ovvie di cui non sono a conoscenza. mi sapreste consigliare una guida che me le spieghi?
    Ho letto in passato la guida base di Ubuntu, ma evidentemente non è abbastanza dettagliata..

    Ringrazio intanto..

    • robitex 18/10/2010 alle 17:23

      Più che Linux forse dovresti approfondire LaTeX leggendo una buona guida introduttiva: una volta installata TeX Live infatti, sul tuo sistema ti ritrovi infatti quella serie vastissima di strumenti del mondo TeX.
      La prima cosa da fare è controllare se gli eseguibili sono correttamente installati: apri un teminale e digita il comando: pdflatex --version
      dovresti ricevere un messaggio molto simile al seguente:
      roberto@roberto-desktop:~$ pdflatex --version
      pdfTeX 3.1415926-1.40.11-2.2 (TeX Live 2010)
      kpathsea version 6.0.0
      Copyright 2010 Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
      There is NO warranty. Redistribution of this software is
      covered by the terms of both the pdfTeX copyright and
      the Lesser GNU General Public License.
      For more information about these matters, see the file
      named COPYING and the pdfTeX source.
      Primary author of pdfTeX: Peter Breitenlohner (eTeX)/Han The Thanh (pdfTeX).
      Compiled with libpng 1.2.40; using libpng 1.2.40
      Compiled with zlib 1.2.3; using zlib 1.2.3
      Compiled with xpdf version 3.02pl4

      Per aggiornare invece i pacchetti, fai uso di tlmgr, come ho brevemente nell’ultima parte della guida che ho chiamato “tlmgr in action”.

      Ti consiglio infine di iscriverti al forum del GuIT. Li puoi ricevere tutte le informazioni che vuoi.
      Ecco il link del forum: http://www.guit.sssup.it/phpbb/index.php
      e della pagina di registrazione:
      http://www.guit.sssup.it/phpbb/profile.php?mode=register
      Ciao

      • looreenzoo 05/01/2011 alle 17:37

        Devo aver sbagliato qualcosa seguendo le tue indicazioni, nel senso che ho una cartella texlive in /usr/local con da 2,3 GB, ma se do il comdando pdflatex --version, il terminale mi dice che il programma non è installato. WTF?!

      • robitex 05/01/2011 alle 17:54

        Ciao,
        se hai completato lo scaricamento tramite lo script d’istallazione, e questo è confermato dalla dimensione della directory, semplicemente devi far conoscere al sistema dove sono gli eseguibili. Per questo segui lo Step 2 del post, che è la via che utilizzo sul mio stesso sistema.
        La procedura d’installazione può inserire nella cartella di sistema /usr/bin dei link simbolici ai programmi. Si fa attivando l’opzione symlink all’inizio durante l’impostazione dell’installazione. Tuttavia lo sconsiglio per varie ragioni, ed è preferibile editare i propri file locali come .profile con le indicazioni dello Step 2 del post.
        Concludi l’installazione costruendo anche il comando sutlmgr come suggerito.
        Grazie della visita!

  4. looreenzoo 05/01/2011 alle 17:44

    Tra l’altro ho dato un’occhiata al file /etc/environment ed è quasi vuoto:
    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"

  5. looreenzoo 05/01/2011 alle 18:06

    ciao roberto, a me sembra di aver seguito lo step 2. ti incollo qui sotto il contenuto di ~/.profile:

    # ~/.profile: executed by the command interpreter for login shells.
    # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
    # exists.
    # see /usr/share/doc/bash/examples/startup-files for examples.
    # the files are located in the bash-doc package.

    # the default umask is set in /etc/profile; for setting the umask
    # for ssh logins, install and configure the libpam-umask package.
    #umask 022

    # if running bash
    if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
    . "$HOME/.bashrc"
    fi
    fi

    # set PATH so it includes user's private bin if it exists
    if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
    fi
    export PATH=/usr/local/texlive/2010/bin/i386-linux:${PATH}

    e ~/.bash_aliases:

    alias sutlmgr="sudo /usr/local/texlive/2010/bin/i386-linux/tlmgr"

    • robitex 05/01/2011 alle 18:10

      Uhm,
      allora fai un login/logout permettendo al sistema di leggere il nuovo file profile.
      Esiste anche un metodo per rileggere questi file d’ambiente senza il logout/login ma non mi ricordo come si fa 🙂
      Bye e Happy TeXing!

      Ps. si l’ho trovato: si tratta di un comando da terminale:
      source ~/.bashrc
      Gulp

      • looreenzoo 05/01/2011 alle 18:22

        nel mentre avevo risolto cancellando “alias” dalla linea: alias sutlmgr=”sudo /usr/local/texlive/2010/bin/i386-linux/tlmgr” (in ~/.bash_aliases); ed “export” dalla linea: export PATH=/usr/local/texlive/2010/bin/i386-linux:${PATH} (in ~/.profile). cmq ora ho ripristinato i due file, dato il comando source ~/.bashrc e ora tutto funziona! grazie per il tuo tempo!

  6. manuel calavera 01/02/2012 alle 22:14

    ciao, robitex. ponendomi il problema dell’aggiornamento costante dei pacchetti che compongono latex – e la distribuzione tramite synaptic package manager non mi sembrava soddisfacente – sono giunto alla tua pagina. ho quindi seguito la procedura da te suggerita, ma purtroppo sto riscontrando qualche problema (e non sono così esperto di linux da risolverlo da solo).
    premetto che sul mio laptop è installato ubuntu Lucid 10.04 e l’architettura del sistema è a 64 bit.
    ho dapprima scaricato lo script per l’installazione da te indicato e ho scaricato tutti i pacchetti inclusi nell’installazione in modalità full. poi ho eseguito a terminale le righe di comando con alcune variazioni dovute all’architettura del mio laptop (64 bit) e alla nuova ‘release’ texlive 2011:

    echo ‘export PATH=/usr/local/texlive/2011/bin/x86_64-linux:${PATH}’ >> .profile
    echo ‘alias sutlmgr=”sudo /usr/local/texlive/2011/bin/x86_64-linux/tlmgr”‘ >> .bash_aliases

    nella mia ignoranza, non capisco se non è andato a buon fine il download dei file o l’installazione (ma apparentemente le cartelle create in /usr/local/texlive/2011 sono corrette) o se la mia distribuzione linux prevede i tuoi ultimi ‘ritocchi’ in forma differente. ad esempio, sono abituato ad inserire alias ed export in .bashrc (a questo proposito, .profile era già presente ma .bash_aliases è stato creato ex novo).
    spero tu possa aiutarmi o indicarmi qualcuno da contattare e ricevere così un aiuto.
    grazie.

    • robitex 02/02/2012 alle 08:51

      Ciao Manuel,
      nel messaggio non descrivi il problema che riscontri per cui per prima cosa, leggi i precedenti messaggi di commento e la guida del Prof. Enrico Gregorio ( http://profs.sci.univr.it/~gregorio/texlive-ubuntu.pdf ).

      Per chiarire:
      1 – sui sistemi Debian e derivati la policy dei pacchetti obbliga l’utente all’installazione diretta da CTAN di TeXLive.
      2 – l’installazione full è consigliabile quasi sempre.
      R.

  7. manuel calavera 02/02/2012 alle 17:59

    ti ringrazio per il tutorial segnalato, è stato di grande utilità e ora tutto sembra funzionare correttamente. sospettavo che nel caso del mio sistema operativo non tutti i dettagli coincidessero con la procedura da te illustrata. grazie mille 🙂

  8. manuel calavera 03/02/2012 alle 10:30

    hai ragione, condivido la mia esperienza (ricordo che ho Ubuntu 10.04 64bit). Preliminarmente:

    – ho utilizzato l’indirizzo diretto del mirror e non il nodo italiano
    – ho optato per l’installazione grafica (ho così deselezionato l’installazione della documentazione in lingue che apprenderò nelle prossime dieci vite), ma è irrilevante

    per quanto riguarda i passi più rilevanti, il percorso è stato impostato con:

    $ echo ‘export PATH=/opt/texbin:${PATH}’ > texlive.sh
    $ sudo cp texlive.sh /etc/profile.d/
    $ sudo mkdir -p /opt

    mentre il symbolic link è nella forma:

    $ sudo ln -s /usr/local/texlive/2010/bin/x86_64-linux /opt/texbin

    quanto ai futuri aggiornamenti, ho inoltre apportato le seguenti modifiche al file .bashrc (attuate poi con il solito $ . ~/.bashrc)

    # Addition for TeX Live
    function sutlmgr () {
    if [[ -z “$@” ]]
    then
    sudo /opt/texbin/tlmgr -gui
    else
    sudo /opt/texbin/tlmgr “$@”
    fi
    }
    alias mktexlsr=’sudo /opt/texbin/mktexlsr’
    alias updmap-sys=’sudo /opt/texbin/updmap-sys’
    alias fmtutil-sys=’sudo /opt/texbin/fmtutil-sys’

    funziona perfettamente anche il lanciatore creato con

    gksu -d -S -D “TeXLive Manager” ‘/opt/texbin/tlmgr -gui’

    infine ho reso noti al sistema i fonti OpenType forniti con Tex Live:

    $ sudo cp $(kpsewhich -var-value TEXMFSYSVAR)/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
    $ sudo fc-cache -fsv

    grazie ancora, ciao.

    • robitex 03/02/2012 alle 11:21

      Ciao,
      grazie mille per il ragguaglio.
      Ho notato che fai uso di symlink e dello script texlive.sh su directory globale. Io preferisco “agganciare” TeX Live in modo locale, ma comunque sia funziona.
      Un saluto.
      R.

  9. Sam Qasbah 14/06/2012 alle 19:09

    Aggiungo alla tua guida quanto segue: su Mint 13 Maya il comando

    $ echo ‘alias sutlmgr=”sudo /usr/local/texlive/2012/bin/i386-linux/tlmgr”‘ >> .bash_aliases

    da te proposto non funziona. Va sostituito da

    $ echo ‘alias sutlmgr=”sudo /usr/local/texlive/2012/bin/i386-linux/tlmgr”‘ >> .bashrc

    (ovviamente con le dovute modifiche per l’architettura).
    Quanto sopra è stato testato installando TL2012 pretest su Mint 13 Maya Mate 64bit.

    Ciao.

    • robitex 14/06/2012 alle 21:27

      Grazie Sam,
      Ottimo contributo. Installare TeX Live sulle varie distro Linux, richiede aggiustamenti come quello da te esposto… e tra poco li applicheremo per la versione 2012.
      Grazie ancora.
      R.

Scrivi una risposta a Sam Qasbah Cancella risposta