TeX Live
LaTeX unter Linux
Ja, ich weiß, TeX Live gibt es auch für Windows und Mac, ich nutze es aber unter Ubuntu (Linux Mint), unter Windows nehme ich MiKTeX.
An dieser Stelle stehen meine Erfahrungen mit TeX Live unter Ubuntu. Das ist keine vollständige oder irgendwie allgemeine Dokumentation.
Offizielle Links
- TeX Live Homepage
- TeX Live User Guide deutsch (englisch)
- TeX Live Net Installer
- TeX Live ISO download
Installer oder ISO?
Ich habe zunächst den Net Installer genutzt, das dauert ewig. Unter 4-5 Stunden ging bei mir nichts, jedes Mal habe ich entnervt abgebrochen. Daher nehme ich lieber die ISO-Datei, lade sie herunter und hänge sie in das System ein:
$> sudo mount -t iso9660 -o ro,loop,noauto texlive.iso /mnt/
Dann kann im Verzeichnis /mnt/
auf den Inhalt der DVD zugegriffen werden.
Man wird die DVD wieder los mit
$> sudo umount /mnt
Installation
$> cd /mnt $> sudo ./install-tl
- Binärsystem: x86_64-linux
- Installationsschema: full (no customization)
- Verzeichnisse: default
- Optionen: Symlinks in Standardverzeichnissen dazu (erzeugt eine Fülle von Links, dafür kann man TeX danach auch als admin konfigurieren)
Start der Installation mit "i". Unterbrechung durch "strg+c"“ möglich, Wiederaufnahme mit folgenden Möglichkeiten:
$> sudo ./install-tl $> sudo ./install-tl --profile installation.profile
Die Wiederaufnahme fing bei mir wieder von "a" an, alles zu installieren. Keine praktikable Lösung.
Mit vorherigem Herunterladen der DVD war die Installationszeit aber erträglich, die Installation war in zehn Minuten fertig.
Nun noch den Pfad entsprechend der Anweisungen ergänzen (in .profile), das ist allerdings nur nötig, wenn man oben keine symbolischen Links erzeugt hat.
# set PATH for TeXLive PATH="/usr/local/texlive/2016/bin/x86_64-linux:$PATH"
texmf-Bäume
Weitere texmf-Bäume müssen über die Variable TEXMF bekanntgemacht werden. Ein guter Ort dafür ist .bashrc oder .profile. Beispiel:
# local LaTeX settings export TEXMF='{$HOME/working/git/basis/texmf/,$HOME/working/git/changes/texmf/,$HOME/working/rani/vorlagen/latex/kleinod/texmf/,$HOME/working/rani/vorlagen/latex/picins/texmf/,$HOME/working/fokus-git/fhg-texmf/texmf,$HOME/working/fokus-git/fokus/Literatur,$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFLOCAL,!!$TEXMFDIST}'
Interessante Kommandos
Anzeige der genutzten Variablen
texconfig conf
Löschen der Installation
Bitte erst bis zu Ende durchlesen, dann löschen.
Das Löschen wird ebenfalls mit tlmgr
durchgeführt:
$> sudo tlmgr uninstall
oder
$> sudo tlmgr remove --all
Jetzt noch die Änderungen in den config-Dateien entfernen, z.B. Pfade, texmf-Bäume, falls nötig.
.profile
.bashrc
Nach dem Aufruf von tlmgr
war TeXLive bei mir noch nicht ganz weg.
Daher habe ich mir vor dem Löschen alle möglichen Dateien und Pfade ausgeben lassen:
$> texconfig conf
Dann bin ich durchgegangen und habe Überreste von Hand gelöscht. Ich weiß nicht, ob das jedesmal nötig ist oder noch von uralten Installationen stammt.
Ich musste noch löschen:
/usr/local/texlive/
/home/ekleinod/.texlive2015/
Fehlende Schriften
Die Installation beliebiger fehlender Schriften scheint schwer. Zumindestens habe ich das noch nicht geschafft.
Einige Schriften wie "LuxiMono" zwar nicht mitgeliefert, können aber vermittels getnonfreefonts wie nachinstalliert werden. Ab TeX Live 2010 ist getnonfreefonts leider nicht mehr Bestandteil der Distribution und muss von Hand nachinstalliert werden. Das geht wie folgt (entnommen von golatex, bei Fehlern bitte dort prüfen):
- Script install-getnonfreefonts herunterladen (Script-Download März 2018, Doku dazu)
- getnonfreefonts installieren:
$> sudo texlua install-getnonfreefonts Detected System: x86_64-linux Detected Installation: /usr/local/texlive/2017 mkdir /usr/local/texlive/2017/texmf-dist/scripts/getnonfreefonts ... [done] Installing texmf-dist/scripts/getnonfreefonts/getnonfreefonts.pl ... [done] Installing texmf-dist/doc/man/man1/getnonfreefonts.1 ... [done] Installing texmf-dist/doc/man/man1/getnonfreefonts.man1.pdf ... [done] md5sum: a9e772165e8fdb620bcf9c75c17facda getnonfreefonts.pl ... [ok] md5sum: 49be4444054d85b6037d237552a7cea1 getnonfreefonts.1 ... [ok] md5sum: f825d523d686dbecdc787535b40f09d0 getnonfreefonts.man1.pdf ... [ok] Fixing File Permissions ... [done] Creating symlink in 'bin/x86_64-linux' ... [done] mktexlsr: Updating /usr/local/texlive/2017/texmf-dist/ls-R... mktexlsr: Done.
- Links zu der bin-Datei anlegen:
$> cd /usr/local/bin $> sudo ln -s /usr/local/texlive/2017/bin/x86_64-linux/getnonfreefonts
- fehlende Fonts jetzt installieren:
$> sudo getnonfreefonts --sys --all
- Prüfen, ob die Fonts installiert sind:
$> sudo getnonfreefonts --sys --lsfonts --2017-06-22 23:14:55-- https://www.tug.org/~kotucha/getnonfreefonts/getfont.pl Resolving www.tug.org (www.tug.org)... 91.121.174.77 Connecting to www.tug.org (www.tug.org)|91.121.174.77|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 32681 (32K) Saving to: ‘getfont.pl’ getfont.pl 100%[=========================================================================================================================================>] 31,92K --.-KB/s in 0,04s 2017-06-22 23:14:55 (749 KB/s) - ‘getfont.pl’ saved [32681/32681] ----------------------------------------------------- Installation directory: /usr/local/texlive/texmf-local ----------------------------------------------------- arial-urw Arial (URW) [installed] classico Classico (URW) [installed] dayroman Day Roman (Apostrophiclabs) [installed] eurofont Euro Symbols (Adobe) [installed] gandhi Gandhi (Librerias Gandhi S.A. de C.V.) [installed] garamond GaramondNo8 (URW) [installed] garamondx GaramondNo8 Expert (URW & Michael Sharpe) [installed] lettergothic LetterGothic (URW) [installed] literaturnaya Literatunaya (Paragraph) [installed] luximono Luxi Mono (Bigelow & Holmes) [installed] vntex-nonfree VnTeX nonfree (URW & Han The Thanh) [installed] webomints Webomints (Galapagos Design Group) [installed]
- Fertig
Fehlende Pakete
Es gibt Pakete, die nachinstalliert werden müssen, z.B. das picins-Paket, dessen Lizenz nicht für TeXLive geeignet ist und dessen Autoren nicht mehr auffindbar sind.
Grundsätzliches Vorgehen, Nutzung texmf-Verzeichnis:
- texmf-Verzeichnis herausfinden
- tex/doc-Verzeichnisse anlegen, falls sie noch nicht existieren
- Paket-Dateien hereunterladen und in die Verzeichnisse legen
- texhash ausführen
- fertig
Beispiel picins, für die Dateien gibt es unter https://www.ctan.org/pkg/picins einen Download-Link.
Die Dateien habe ich herutergeladen und in /home/ekleinod/Downloads/picins
entpackt.
$> kpsewhich -var-value=TEXMFHOME /home/ekleinod/texmf $> cd /home/ekleinod/texmf $> ls $> mkdir tex $> mkdir tex/latex $> mkdir tex/latex/picins $> mkdir doc $> mkdir doc/latex $> mkdir doc/latex/picins $> mv ../Downloads/picins/*.sty tex/latex/picins/ $> mv ../Downloads/picins/* doc/latex/picins/ $> texhash . texhash: Updating /home/ekleinod/texmf/./ls-R... texhash: Done. $>
Alternativ kann man auch ein eigenes texnf-Verzeichnis verwenden, das dann als texmf-Baum eingebunden wird, siehe texmf-Bäume.