Anleitung zur TeX Live Installation

Version 2022

Karl Berry (Herausgeber)
verantwortlich für die deutsche Ausgabe:
Dr. Uwe Ziegenhagen, mailto:ziegenhagen@gmail.com
Köln, 27. Februar 2022

Inhaltsverzeichnis

1 Einleitung
 1.1 TeX Live und die TeX Live-Collection
 1.2 Unterstützung verschiedener Betriebssysteme
 1.3 Einsatzmöglichkeiten des TeX Live-Systems der TeX Collection
 1.4 TeX Live und Sicherheit
 1.5 Hilfe zu TeX, LaTeX & Co
2 Überblick zum TeX Live-System
 2.1 Die TeX Collection: TeX Live, proTeXt, MacTeX
 2.2 Basisverzeichnisse von TeX Live
 2.3 Überblick über die vordefinierten texmf-Bäume
 2.4 TeX-Erweiterungen
 2.5 Weitere Programme von TeX Live
3 Installation von TeX Live
 3.1 Das Installationsprogramm
 3.2 Unix
 3.3 MacOSX
 3.4 Windows
 3.5 Cygwin
 3.6 Installation im Textmodus
 3.7 Die Installation mit grafischem Installer
 3.8 Benutzung des Installationsprogramms
 3.9 Auswahl der Binaries (nur für Unix)
 3.10 Auswahl der zu installierenden Komponenten
 3.11 Verzeichnisse
 3.12 Optionen
 3.13 Kommandozeilenoptionen für die Installation
 3.14 Die Option repository
 3.15 Aufgaben im Anschluss an die Installation
  3.15.1 Windows
  3.15.2 Unix, falls symbolische Links angelegt wurden
  3.15.3 Umgebungsvariablen für Unix
  3.15.4 Systemweites Setzen von Umgebungsvariablen
  3.15.5 Internet-Updates nach der Installation von DVD
  3.15.6 Font-Konfiguration für xeTeX und LuaTeX2
  3.15.7 ConTeXt Mark IV
  3.15.8 Integration lokaler bzw. nutzer-spezifischer Makros
  3.15.9 Integration von Schriften
 3.16 Testen der Installation
  3.16.1 TeX Live Deinstallieren
 3.17 Hinweise auf weitere Software
4 Installation für mehrere Maschinen oder Nutzer (Netz-Installation)
5 Portables TeX Live auf DVD oder USB-Stick
6 tlmgr: Installation verwalten
  6.0.1 Aktuelle GUI-Interfaces für tlmgr
 6.1 Beispiel zur Verwendung von tlmgr über die Kommandozeile
7 Hinweise zu Windows
 7.1 Windows-spezifische Dinge
 7.2 Zusätzlich enthaltene Programme unter Windows
 7.3 Nutzerprofile unter Windows
 7.4 Die Windows-Registry
 7.5 Windows Zugriffskontrolle
 7.6 Erhöhen des maximal verfügbaren Speichers unter Windows und Cygwin
8 Anleitung zum Web2C-System
 8.1 Dateisuche mit der Kpathsea-Bibliothek
  8.1.1 Bestandteile von Pfadkomponenten
  8.1.2 Konfigurationsdateien
  8.1.3 Expansion von Pfadkomponenten
  8.1.4 Expansion der Voreinstellungen
  8.1.5 Expansion geschweifter Klammern
  8.1.6 Expansion von Unterverzeichnissen
  8.1.7 Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung
 8.2 Dateinamen-Datenbanken
  8.2.1 Die ls-R-Datenbank
  8.2.2 kpsewhich: Dateisuche
  8.2.3 Anwendungsbeispiele
  8.2.4 Fehlersuche
 8.3 Einstellungen zur Laufzeit
9 Danksagungen
10 Geschichtliches
 10.1 Vergangenheit
 10.2 TeX Live 2003
 10.3 TeX Live 2004
 10.4 TeX Live 2005
 10.5 TeX Live 2006–2007
 10.6 TeX Live 2008
 10.7 TeX Live 2009
 10.8 TeX Live 2010
 10.9 TeX Live 2011
 10.10 TeX Live 2012
 10.11 TeX Live 2013
 10.12 TeX Live 2014
 10.13 TeX Live 2015
 10.14 TeX Live 2016
 10.15 TeX Live 2017
 10.16 TeX Live 2018
 10.17 TeX Live 2019
 10.18 TeX Live 2020
 10.19 TeX Live 2021
 10.20 Gegenwart (2022)
 10.21 Zukunft

Abbildungsverzeichnis

3.1 Erste Stufe des Windows .exe Installationsprogramms
3.2 Hauptmenü des Installationsprogramms (GNU/Linux).
3.3 Grafische Installation im Expertenmodus.
3.4 Basis-Installationsmodus (Windows), der „Fortgeschrittene“ Modus wird ähnlich aussehen wie 3.5
3.5 Fortgeschrittener GUI-Installation-Modus (GNU/Linux)
3.6 Auswahlmenü für Binaries
3.7 Menü zur Auswahl des Schemas
3.8 Menü zur Aus- oder Abwahl von Collections.
6.1 tlshell GUI, mit dem Auswahlmenü (Mac OS X)
6.2 tlcockpit GUI für tlmgr
6.3 Legacy-tlmgr im GUI-Modus. Hauptfenster nach dem Klick auf „Load“.
6.4 tlmgr im GUI-Modus: Allgemeine Optionen
6.5 tlmgr im GUI-Modus: Optionen zur Papiergröße.
7.1 PS_View, sogar sehr extreme Vergrößerungen sind möglich.
8.1 Suche nach Konfigurationsdateien.
8.2 Suche nach Font-Dateien.

Kapitel 1
Einleitung

1.1 TeX Live und die TeX Live-Collection

Diese Anleitung beschreibt das TeX Live-System an sich, nicht die Arbeit mit TeX bzw. LaTeX.

Die TeX Live Distribution enthält TeX/LaTeX-Systeme für Linux, verschiedene UNIX-Plattformen, Mac OSX und Windows. Sowohl TeX Live als auch die TeX Collection sind durch das Engagement vieler Freiwilliger aus vielen TeX-Vereinen entstanden.

Wahrscheinlich haben Sie TeX Live auf einem von zwei Wegen bezogen, entweder per direktem Download von TeX Live oder als Teil der DVD TeX Collection, die von vielen TeX-Vereinen (u. a. DANTE e. V.) an ihre Mitglieder verschickt werden und in Deutschland über die Fachbuchhandlung Lehmanns ( https://www.lob.de) vertrieben wird. Kapitel 2.1 beschreibt kurz den Inhalt der TeX Collection-DVD.

TeX Live enthält lauffähige Versionen von TeX, LaTeX2e, ConTeXt, MetaFont, MetaPost, BibTeX und vielen anderen Programmen, sowie eine umfassende Auswahl an Makros, Zeichensätzen und Beschreibungen, die gemäß der Standard- TeX-Verzeichnisstruktur (TDS) abgelegt sind.

Eine kurze Zusammenfassung der wesentlichen Änderungen der aktuellen TeX Live-Version gegenüber der Vorgängerversion finden Sie im Kapitel 10.20 auf Seite §.

1.2 Unterstützung verschiedener Betriebssysteme

TeX Live enthält direkt ausführbare Programme für viele Unix-basierte Betriebssysteme, insbesondere GNU/Linux und Mac OSX und Cygwin. Selbst wenn für Ihr Unix-System wider Erwarten keine ausführbaren Programme enthalten sind, sollten Sie in der Lage sein, aus den mitgelieferten Programm-Quellen ein funktionierendes TeX-System zu kompilieren.

Bezüglich Microsoft Windows: Versionen ab Windows 7 werden unterstützt, unter Windows Vista sollte es ebenfalls funktionieren. Auf älteren Windows-Versionen wie Windows XP oder Windows 2000 lässt sich TeX Live  nicht einmal installieren.

Es existieren zwar keine 64-Bit-Versionen der Programme, allerdings sollten die 32-Bit-Programme problemlos auf 64-Bit-Systemen funktionieren.

1.3 Einsatzmöglichkeiten des TeX Live-Systems der TeX Collection

Sie können das TeX Live-System wahlweise von der DVD oder über das Internet ( https://tug.org/texlive/acquire.html) installieren. Der Net Installer ist ein kleines Programm, das die benötigten Teile aus dem Internet nachlädt. Dieser Weg bietet sich an (eine schnelle und stabile Internetverbindung voraus gesetzt), wenn Sie kein komplettes TeX Live installieren wollen, sondern Ihr System nur aus bestimmten Paketen bestehen soll.

Wenn Sie die DVD besitzen (oder das ISO-Image der DVD herunter geladen haben – dieses kann auf einigen Systemen sogar direkt als virtuelles Medium „gemountet“ werden), können Sie TeX Live nach Wunsch auf Ihrer Festplatte installieren. TeX Live ist nicht direkt von der DVD lauffähig. Sie können aber eine portable Version z. B. auf einem USB-Stick installieren, wie in Kapitel 5 beschrieben.

Beide Methoden werden in den späteren Abschnitten zur Installation beschrieben, hier daher nur die kurze Zusammenfassung:

1.4 TeX Live und Sicherheit

Nach bestem Wissen und Gewissen kann man sagen, dass die TeX-Kernprogramme selbst sehr robust sind. Dieses Maß an Robustheit und Sicherheit wird jedoch möglicherweise nicht von allen Programmen erreicht, die Teil von TeX Live sind. Daher gilt für TeX Live das, was auch für alle anderen Programme gilt: Vorsicht bei der Verarbeitung von Quellcode, den man nicht genau kennt! Zur Verbesserung der Sicherheit sollte man in diesen Fällen die entsprechenden Dateien in einem neuen Unterverzeichnis oder chroot verarbeiten.

Die Sorge um die Sicherheit gilt vor allem für Microsoft Windows, da Windows-Programme zuerst im aktuellen Verzeichnis suchen, egal wie Pfad-Angaben gesetzt sind. Theoretisch ermöglicht dies eine Reihe von Angriffsszenarien. Viele Sicherheitslücken in Programmen von TeX Live wurden geschlossen, andere bestehen auch weiterhin, besonders im Umgang mit Drittanbieter-Software.

Aus diesem Grund empfehlen wir bei der Verarbeitung von unbekanntem Quellcode, auf das Vorhandensein von ausführbaren Dateien im Quellcode-Verzeichnis zu achten. Diese sollten nicht vorhanden sein und erst recht nicht durch die Verarbeitung von TeX-Quellcode erzeugt worden sein.

TeX und seine Begleitprogramme können in Dateien schreiben, wenn ein Dokument übersetzt wird. Diese Funktion kann auch missbräuchlich eingesetzt werden. Daher ist bei der Verarbeitung von unbekannten Quellen die Nutzung eines neuen Unterverzeichnisses der sicherste Weg!

Ein weiterer Aspekt der Sicherheit ist es, sicherzustellen, dass heruntergeladene Inhalte nicht (unterwegs) verändert wurden. Der tlmgr prüft daher heruntergeladene Pakete, sofern PGP auf Ihrem System verfügbar ist. PGP ist nicht Teil von TeX Live, unter https://texlive.info/tlgpg finden Sie weitere Informationen dazu.

1.5 Hilfe zu TeX, LaTeX & Co

Die TeX-Gemeinschaft ist ebenso aktiv wie hilfsbereit, und es wird praktisch jede ernst gemeinte Frage beantwortet. Diese Hilfe ist allerdings nicht formal organisiert, sondern wird von Freiwilligen in ihrer Freizeit geleistet. Es ist daher wichtig, dass Sie vor einer Fragestellung Ihre „Hausaufgaben“ erledigen.

Die folgende Liste stellt die leicht zugänglichen Hilfe-Quellen in der empfohlenen Reihenfolge vor:

Einführung:

Wenn Sie TeX-Anfänger sind und eine englische Einführung in das System benötigen, sollten Sie https://tug.org/begin.html lesen.

Für deutschsprachige LaTeX-Anfänger ist sicherlich die „LaTeX2e-Kurzbeschreibung“ sehr hilfreich (texmf-doc/doc/german/lshort-german/l2kurz.pdf).

TeX-FAQs:

Die TeX-FAQ (im Deutschen de-tex-faq) über das Textsatzsystem TeX und Dante, die Deutschsprachige Anwendervereinigung TeX e.V., ist ein riesiges Kompendium mit Fragen (und Antworten) aller Art, von der einfachsten Anfängerfrage bis zu Expertenwissen.

Sie finden die deutschsprachige FAQ unter https://www.dante.de/faq/. Des Weiteren existiert eine englischsprachige FAQ, die im Internet unter https://www.tex.ac.uk/faq verfügbar ist.

Bitte schauen Sie bei auftretenden Problemen, insbesondere wenn Sie als Anfänger mit TeX/LaTeX arbeiten, zuerst in diese beiden Möglichkeiten.

TeX-Catalogue:

Wenn Sie auf der Suche nach einem bestimmten Paket, Font, Programm u. ä. sind, empfiehlt sich ein Blick in den TeX-Catalogue unter https://www.ctan.org/pkg/catalogue. Dieser Katalog enthält eine Liste aller verfügbaren TeX-spezifischen Dinge. Schauen Sie auch in die Themen-Wolke unter https://www.ctan.org/topics/cloud

TeX-WWW-Ressourcen:

Unter https://tug.org/interest.html finden Sie eine große Anzahl TeX-spezifischer Links zu Büchern, Handbüchern und Artikeln zu allen Aspekten des TeX-Systems.

Archive:

Als Foren für die Hilfestellung sind die Usenet-News-Gruppen (Für eine Einführung zum Usenet siehe https://de.wikipedia.org/wiki/Usenet.) news:de.comp.text.tex (Deutsch), news:comp.text.tex (Englisch), die Mailing-Liste texhax@tug.org sowie das Internet-Forum https://tex.stackexchange.com zu nennen.

In deren Archiven finden sich die Fragen und Antworten vieler Jahre. Ihre Suche können Sie in Google beispielsweise mit https://groups.google.de/group/de.comp.text.tex/topics starten – oder auch in https://tug.org/mail-archives/texhax durchführen.

Im Allgemeinen ist es recht erfolgversprechend, eine generelle Suche über Google https://www.google.de/ durchzuführen (entweder im Internet allgemein oder in den o. g. News-Gruppen); dies insbesondere, wenn es sich um Fragen über PostScript/PDF, Ghostscript u. ä. handelt.

Online-Foren:

Neben den bereits genannten Quellen gibt es Foren im Internet, in denen Sie Ihre Frage stellen können: https://tex.stackexchange.com, https://golatex.de, https://mrunix.de/forums/forumdisplay.php?f=38
sind nur einige, die Hilfe zu TeX & LaTeX anbieten.

Auch hier gilt: Je mehr Mühe Sie sich mit dem Stellen von Fragen geben, desto besser kann Ihnen geholfen werden.

Fragen stellen:

Wenn Sie mit den oben aufgezeigten Möglichkeiten immer noch keine Antwort auf Ihre Frage gefunden haben, können Sie die Frage auch in einer News-Gruppe stellen (neudeutsch: posten). Hier bietet sich für den deutschsprachigen Raum die News-Gruppe news:de.comp.text.tex an. Benutzen Sie am besten für Anfragen Google ( https://groups.google.de/group/de.comp.text.tex/topics) oder einen Newsreader. Fragen an die englischsprachige Gruppe news:comp.text.tex (bei Google: https://groups.google.de/group/comp.text.tex/topics) sollten Sie bitte nur auf Englisch stellen.

Zusätzlich existieren E-Mail-Listen, wobei hier die deutschsprachige Liste TeX-D-L@listserv.dfn.de zu nennen ist (das englischsprachige Äquivalent ist texhax@tug.org). Darüber hinaus bietet sich für Mitglieder von Dante e.V. der Beraterkreis an (beraterkreis@dante.de). Wie Sie sich in die E-Mail-Liste TeX-D-L eintragen können, finden Sie in der FAQ unter „1.3.2 Was ist TeX-D-L?“.

Bevor Sie eine Frage absenden, lesen Sie bitte die entsprechenden Einträge der FAQ zum Thema „Wie stelle ich eine Frage in einer Newsgroup, damit ich mit hoher Wahrscheinlichkeit eine Antwort bekomme?“, wie z. B. „1.3.1 Was ist ’de.comp.text.tex’?“ und „1.3.7 Was sollte ich gelesen haben, bevor ich eine Frage in ’de.comp.text.tex’ oder der Diskussionsliste TeX-D-L stelle?“.

Mithilfe:

Wenn Sie einen Fehler melden wollen oder Empfehlungen und Kommentare zur TeX Live-Verteilung, -Installation oder -Dokumentation geben möchten, sollten Sie die E-Mail-Liste tex-live@tug.org nutzen. Korrekturen, Anmerkungen und Erweiterungen für die deutsche Übersetzung können Sie auch an ziegenhagen@gmail.com direkt senden.

Fragen zu Programmen, die Sie in der TeX Collection finden, sollten Sie besser auf einer der oben genannten Mailing-Listen stellen oder direkt an den Programmautor richten.

Auf der anderen Seite können auch Sie mit Ihrem Wissen helfen. Die News-Gruppen news:de.comp.text.tex (in Deutsch), news:comp.text.tex (in Englisch) und die Mailing-Liste TeX-D-L@listserv.dfn.de (Deutsch) und texhax@tug.org (Englisch) stehen allen offen. Wenn Sie also dort mitlesen, scheuen Sie sich nicht, Fragen, zu denen Sie eine Antwort wissen, zu beantworten und damit anderen zu helfen.

Falls Sie auf eine garantierte kommerzielle Unterstützung angewiesen sind oder eine solche bevorzugen, sollten Sie die Finger komplett vom TeX Live-System lassen und in der Liste unter https://tug.org/interest.html#vendors nach einem geeigneten Händler suchen.

Kapitel 2
Überblick zum TeX Live-System

In diesem Kapitel beschreiben wir die Struktur und den Inhalt des TeX Live-Systems und der TeX Collection-DVD.

2.1 Die TeX Collection: TeX Live, proTeXt, MacTeX

Bestandteile der DVD:

TeX Live

Ein komplettes TeX-System, wahlweise zur Installation auf einer Festplatte oder einem Wechselmedium (USB-Stick). Die Homepage des TeX Live-Projektes finden Sie unter https://tug.org/texlive/.

MacTeX

für Mac OSX. Dieses enthält das komplette TeX Live, bietet zusätzlich aber ein Installationsprogramm für Mac und einige Zusatzprogramme. Nähere Informationen finden Sie auf der Homepage von MacTeX unter https://tug.org/mactex/. Apple selbst nennt sein Betriebssystem aktuell macOS, in diesem Dokument nutzen wir aber noch den älteren Namen.

proTeXt

basiert auf der MiKTeX-Distribution für Windows. Es enthält noch einige Zusatzprogramme und stellt eine einfache Installationsanleitung bereit, die Schritt für Schritt den Weg zu einem kompletten TeX-System beschreibt. Die Homepage von proTeXt findet sich unter https://tug.org/protext.

CTAN

Weiterhin ist auf der DVD ein Teil der TeX-bezogenen Software enthalten, die sich in CTAN, dem Comprehensive TeX Archive Network ( https://www.ctan.org) befinden.

CTAN, protext und texmf-extra unterliegen nicht denselben Lizenzregeln wie TeX Live. Daher können für Teile hieraus andere Lizenzbedingungen bezüglich einer Weiterverteilung oder Modifikation gelten, die Sie unbedingt beachten sollten!

2.2 Basisverzeichnisse von TeX Live

In diesem Kapitel beschreiben wir die Basisverzeichnisse einer TeX Live-Installation.

bin

ausführbare Programme des TeX-Systems. Jeweils für die verschiedenen Rechnerplattformen in Unterverzeichnissen zusammengefasst

readme-*.dir

in diesen Verzeichnissen (!) befinden sich Text- bzw. HTML-Dateien in verschiedenen Sprachen, die als schneller Einstieg in TeX Live empfehlenswert sind.

source

Quelldateien aller Programme inklusive der Webc-Quellen für die TeX-Pakete

texmf-dist

Hauptbaum mit Formaten und Paketen (siehe TEXMFDIST im nächsten Kapitel).

tlpkg

Skripte, Programme, und Daten die für die Installation benutzt werden, sowie einige Dinge, die speziell für Windows benötigt werden.

Zusätzlich zu den oben aufgeführten Verzeichnissen finden Sie im Wurzelverzeichnis der Distribution auch noch Installationsskripte.

Wenn Sie nach Dokumentation suchen, bietet Ihnen die Datei doc.html wichtige Links. Die Dokumentation für Programme (Handbücher, »man pages«, GNU-info-Dateien) beispielsweise finden Sie im Verzeichnis texmf/doc. Ähnliches gilt für die Dokumentation der TeX-Pakete und -Formate im Verzeichnis texmf-dist/doc.

Benutzen Sie das Programm texdoc, wenn Sie auf der Suche nach irgendeiner Dokumentationsdatei sind. Hilfreich in diesem Zusammenhang könnte auch die Link-Sammlung doc.html im Wurzelverzeichnis sein.

Die Anleitung zu TeX Live ist in verschiedenen Sprachen verfügbar auf der DVD verfügbar:

Deutsch:

texmf-dist/doc/german/texlive-de/texlive-de (dieses Dokument)

Englisch:

texmf-dist/doc/english/texlive-en/texlive-en

Französisch:

texmf-dist/doc/french/texlive-fr/texlive-fr

Italienisch:

texmf-dist/doc/italian/texlive-it/texlive-it

Japanisch:

texmf-dist/doc/texlive/texlive-ja

Polnisch:

texmf-dist/doc/polish/texlive-pl/texlive-pl

Russisch:

texmf-dist/doc/russian/texlive-ru/texlive-ru

Serbisch:

texmf-dist/doc/serbian/texlive-sr/texlive-sr

Tschechisch/Slowakisch:

texmf-dist/doc/czechslovak/texlive-cz/live

Chinesisch:

texmf-dist/doc/chinese/texlive-zh-cn/texlive-zh-cn

2.3 Überblick über die vordefinierten texmf-Bäume

Dieses Kapitel listet die vordefinierten texmf-Bäume, die vom System benutzt werden, und deren Bedeutung auf. Das Kommando tlmgr conf zeigt Ihnen die aktuellen Einstellungen dieser Variablen an.

Alle Bäume, auch die lokal erstellten, sollten der TeX Directory Structure (TDS) folgen, sonst kann es passieren, dass Dateien nicht gefunden werden. Abschnitt 3.15.8 auf Seite § beschreibt dies im Detail.

TEXMFMAIN

In diesem Baum befinden sich wichtige Teile des Systems, wie Konfigurationsdateien, Hilfsprogramme und die Dokumentation.

TEXMFDIST

In diesem Baum befinden sich fast alle Dateien der ursprünglichen Distribution: Makro-Pakete, Fonts usw. Dieser Baum enthält systemunabhängige Daten, die prinzipiell von jedem TDS-kompatiblem TeX-System nutzbar sein sollten. Eine Ausnahme bilden die ausführbaren Binärdateien, die unterhalb des bin/ Verzeichnisses liegen.

TEXMFHOME

In diesem Baum können einzelne Nutzer Ergänzungen oder Aktualisierungen von Makros, Fonts etc. ablegen. Standardmäßig befindet sich dieser Baum unterhalb des Benutzerverzeichnisses ($HOME), sodass andere Nutzer von Änderungen in diesem Verzeichnis nicht beeinflusst werden.

TEXMFSYSCONFIG

Systemweiter Baum, wird von den Hilfsprogrammen texconfig-sys, updmap-sys und fmtutil-sys verwendet, so dass hier das Verhalten des TeX Live-Systems für alle Nutzer beeinflusst werden kann.

TEXMFLOCAL

Dieser Baum ist für Ergänzungen oder Aktualisierungen von Makros, Fonts etc. gedacht, die Administratoren für alle Nutzer installieren.

TEXMFCONFIG

Dieser benutzerspezifische (!) Baum wird von den Hilfsprogrammen von TeX wie texconfig, updmap-sys und fmtutil-sys verwendet. Standardmäßig befindet sich dieser Baum unterhalb von $HOME, so dass andere Nutzer von Änderungen hier nicht beeinflusst werden.

TEXMFSYSVAR

Dieser Baum wird von den systemweiten Hilfsprogrammen wie texconfig-sys, updmap-sys und fmtutil-sys verwendet, um automatisch generierte Konfigurations-Dateien abzulegen.

TEXMFVAR

Dieser benutzerspezifische Baum wird von Hilfsprogrammen wie zum Beispiel texconfig, updmap-user und fmtutil-user benutzt, um automatisch generierte Konfigurations-Dateien abzulegen.

TEXMFCACHE

Dieser Baum wird von ConTeXt MkIV und LuaLaTeX genutzt, um Cache-Daten abzulegen. Standardmäßig zeigt dieser Pfad auf TEXMFSYSVAR oder (falls dieser nicht beschreibbar ist), auf TEXMFVAR.

Der Standard der Verzeichnisstruktur von TeX Live sieht wie folgt aus:

Systemweites Wurzelverzeichnis

kann TeX Live-Versionen aus mehreren Jahren beinhalten:

2021

Eine Vorversion von TeX Live.

2022

Die aktuelle Version.

bin

 

i386-linux

GNU/Linux binaries

...

x86_-linux

GNU/Linux binaries (64-bit)

universal-darwin

Mac OSX binaries

win32

Windows binaries

texmf-dist  

Hierauf verweisen TEXMFMAIN und TEXMFDIST

texmf-var  

TEXMFSYSVAR

texmf-config   

TEXMFSYSCONFIG

texmf-local

TEXMFLOCAL, dieses Verzeichnis gilt für alle installierten TeX Live-Versionen (aktuelle Version und Vorgängerversion), so dass hier durchgeführte lokale Änderungen über die Jahre hinweg erhalten bleiben.

Home-Verzeichnis des Benutzers

($HOME oder %USERPROFILE%):

.texlive2021

Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten der Vorversion.

.texlive2022

Vom Nutzer privat erzeugte Dateien und Konfigurationsdaten für die aktuelle Version von TeX Live.

texmf-var   

TEXMFVAR

texmf-config

TEXMFCONFIG

texmf

TEXMFHOME Persönliche Makros, Fonts usw. des Nutzers.

2.4 TeX-Erweiterungen

Das originale TeX von Donald Knuth ist final und wird – von seltenen Bugfixes – nicht verändert. Es ist Teil von TeX Live, dies wird auch auf absehbare Zeit so bleiben.

Unter den TeX-Systemen der TeX Live befinden sich verschiedene TeX- Erweiterungen:

eTeX

stellt bei 100%-iger Kompatibilität zum ursprünglichen TeX einen kleinen, aber mächtigen Satz neuer Befehle bereit (für Makroexpansion, Character-Scanning, erweiterte Debug-Möglichkeiten, etc.). Zusätzlich gibt es noch die TeXXeT-Erweiterungen für den bidirektionalen Textsatz, wie er beispielsweise im Arabischen gebraucht wird. Im voreingestellten Modus ist eTeX 100%-ig kompatibel mit dem „normalen“ TeX. Die Dokumentation zu eTeX finden Sie in der Datei texmf-dist/doc/etex/base/etex_man.pdf.

pdfTeX

enthält die eTeX Erweiterungen und erlaubt – neben der Ausgabe in PDF-Dateien – auch die Erstellung von DVI-Dateien. Für viele TeX-Formate (wie etex, latex, pdflatex) wird tatsächlich pdfTeX aufgerufen. Die Webseite von pdfTeX lautet https://www.pdftex.org.

Die Dokumentation zu pdfTeX finden Sie unter
texmf-dist/doc/pdftex/manual/pdftex-a.pdf.

LuaTeX

enthält Support für Unicode und OpenType/TrueType Schriften. Durch den enthaltenen Lua-Interpreter (siehe https://www.lua.org/) können satztechnische Herausforderungen, die in TeX selbst nur mühsam lösbar sind, recht elegant gelöst werden.

Wird es unter dem Namen texlua aufgerufen, verhält es sich wie ein eigenständiger Lua-Interpreter – und wird als solcher in vielen Skripten von TeX Live bereits benutzt. Für weitere Informationen siehe https://www.luatex.org.

Das Handbuch finden Sie unter texmf-dist/doc/luatex/base/luatex.pdf.

(e)(u)pTeX

biete native Unterstützung für die Anforderungen des Japanischen Textsatzes; pTeX ist die Basis-Engine, die e- Varianten fügen eTeX Funktionalität hinzu, die u- Varianten Unicode.

XeTeX

bietet die Unterstützung von Unicode-Zeichensätzen und OpenType-Schriften, mehr Informationen sind unter https://tug.org/xetex verfügbar.

OMEGA

(Omega) ist ein TeX-System, welches intern mit Unicode (16-Bit- Unicode-Zeichen) arbeitet und damit das gleichzeitige Arbeiten mit nahezu allen auf der Welt eingesetzten Schriften und deren Zeichenkodierungen erlaubt. Außerdem werden über dynamisch geladene, sogenannte „OMEGA Translation Processes“ Transformationen zur Verfügung gestellt, die beliebige Eingaben vor der Bearbeitung durch TeX nach bestimmten Regeln umformen. Omega ist nicht länger als eigenständiges Programm Teil von TeX Live; es wird nur noch Aleph mitgeliefert.

(Aleph) vereinigt die OMEGA- und eTeX-Erweiterungen. Eine Minimaldokumentation finden Sie in texmf-dist/doc/aleph/base.

2.5 Weitere Programme von TeX Live

TeX Live enthält eine ganze Reihe unterstützender Programme wie

bibtex, bibtex8

zur Verwaltung von Bibliographien

biber

zum Verwalten von Bibliographien, die Ablösung von bibtex

dviconcat

Zusammenfügen von DVI-Dateien

dvips

Konversion von DVI in PostScript

dviselect

Ausschneiden von Seiten aus DVI-Dateien

dvipdfmx

DVI-nach-PDF-Konverter (erzeugt auch CJK-konformes PDF aus DVI-Dateien mit OMEGA-Erweiterungen)

dvilj

Druckertreiber für die HP-LaserJet-Familie

makeindex, xindy, upmendex, xindex

Erzeugen von Stichwortverzeichnissen

mpost

MetaFont-ähnliches Grafikprogramm

dvipdfmx

konvertiere DVI to PDF, eine Alternative zu pdfTeX 

psnup, psselect

PostScript-Tools

pdfjam, pdfjoin

PDF-Tools

context, mtxrun

ConTeXt and PDF processor.

htlatex,

tex4ht: LaTeX-zu-HTML (und XML) Konverter.

xdvi

DVI-Bildschirmausgabe im X-Window-System

Kapitel 3
Installation von TeX Live

3.1 Das Installationsprogramm

Zur Installation von TeX Live benötigen Sie die TeX Collection-DVD oder den „TeX Live Net Installer“ aus dem Internet.

Net Installer, zip oder tar.gz:

Verfügbar von CTAN, unter systems/texlive/tlnet; die URL https://mirror.ctan.org/systems/texlive/tlnet leitet Sie automatisch an einen nahe gelegenen Server des CTAN-Netzwerks weiter. Sie können entweder die Datei install-tl.zip herunter laden, die sowohl für Unix als auch Windows gedacht ist, oder die deutlich kleinere Datei install-unx.tar.gz, die aber nur den Installer für Unix enthält. Nach dem Auspacken finden Sie die Dateien install-tl (Unix) bzw. install-tl-windows.bat (Windows) im Verzeichnis install-tl.

Net installer, Windows exe:

Download von CTAN wie oben beschrieben, dann doppelklicken. Dies startet die erste Stufe des Installationsprogramms und Entpackers (siehe Abbildung 3.1). Zur Auswahl stehen dann: „Installation“ und „Entpacken“.

TeX Collection DVD:

Hier finden Sie die Dateien install-tl (Unix) bzw. unter Windows install-tl-windows.bat im Verzeichnis texlive der DVD. Unter Windows startet beim Einlegen der DVD im Allgemeinen automatisch ein Programm, bei dem Sie unter anderem das Installationsprogramm von TeX Live auswählen können. Die DVD erhalten Sie als Mitglied eines TeX-Vereins (wie https://www.dante.de für den deutschsprachigen Raum, von der Fachbuchhandlung Lehmanns ( https://www.lob.de) oder international von der TeX Users Group ( https://tug.org/store).

Alternativ können Sie das ISO-Image der TeX Live aus dem Internet laden. Nach der Installation von der DVD sollten Sie die Internet-Aktualisierung aktivieren, für Details siehe Kapitel 3.15.5.


PIC

Abbildung 3.1: Erste Stufe des Windows .exe Installationsprogramms


Egal welche Quelle verwendet wird, es wird das gleiche Installationsprogramm genutzt. Der hauptsächliche Unterschied ist, dass man bei der Verwendung des Net-Installers die neuesten verfügbaren Pakete direkt aus dem Internet erhält. Bei der Verwendung von DVD und ISO Images erhält man den Stand des letzten Major Release. Zwischen zwei Major Releases gibt es keine Aktualisierung der DVD oder ISO Images.

Wenn Sie über einen Proxy-Server die TeX Live-Daten herunterladen müssen, können Sie eine  /.wgetrc Datei oder Umgebungsvariablen für wget nutzen. Wenn sie von der DVD oder dem ISO Abbild installieren, hat dies keine Auswirkungen.

Die folgenden Kapitel beschreiben die Installation für die einzelnen Betriebssysteme.

3.2 Unix

Im Folgenden werden die Eingaben des Benutzers nach dem Kommando-Prompt > fett dargestellt.

Das Programm install-tl ist ein Perl-Skript. Am Einfachsten starten Sie es auf einem Unix-System in der Kommandozeile mit

> cd /pfad/zum/installer
> perl install-tl

(Sie können auch direkt perl /pfad/zum/installer/install-tl eingeben. Wenn Ihre DVD so gemountet ist, dass als ausführbar gekennzeichnete Skripte direkt gestartet werden können, können Sie im Verzeichnis des Installers auch direkt ./install-tl eingeben.) Eventuell müssen Sie Ihr Terminalfenster größer machen, damit Sie den kompletten Text sehen (Abb. 3.2)

Zum Installieren mit Hilfe einer Benutzeroberfläche (Abb. 3.3) verwenden Sie

> perl install-tl -gui

Hierfür muss Tcl/Tk installiert sein, dann funktioniert die Installation mittels

> perl install-tl -gui

Die alten codewizard und perltk Optionen gibt es ebenfalls noch, sie erledigen das gleiche wie die Option -gui

Alle Optionen des Installationsprogramms werden mit

> perl install-tl -help
angezeigt.

Wichtiger Hinweis zu den Zugriffsrechten unter Unix: Ihre aktuelle Einstellung von umask wird bei der Installation von TeX Live berücksichtigt. Daher müssen Sie darauf achten, dass Sie hierfür einen sinnvollen Wert einstellen (z. B. umask002), wenn Ihre Installation auch durch andere Nutzer als Sie benutzt werden soll. Falls Sie unsicher sind, was dies bedeutet, schauen Sie bitte in die Anleitung zu umask (indem Sie das Kommando man umask eingeben oder im Internet danach suchen).

Besonderheit bei Cygwin: Im Gegensatz zu anderen Unix-basierten Systemen fehlen bei Cygwin im Allgemeinen einige Programme, die vom Installationsprogramm von TeX Live vorausgesetzt werden. Bitte lesen Sie den Kapitel 3.5.

3.3 MacOSX

Wie in Kapitel 2.1 bereits erwähnt wurde, existiert mit MacTeX ( https://tug.org/mactex) ein eigenes TeX-System für Mac OSX. Dieses enthält ein komplettes TeX Live mit einem Installationsprogramm, das in Funktionalität und Aussehen der üblichen Installation von Software unter Mac OSX entspricht. Weiterhin sind einige Zusatzprogramme sowie Mac-spezifische Anwendungen und Dokumentationen enthalten.

Wenn Sie die TeX Collection-DVD besitzen, empfiehlt es sich daher, MacTeX zu verwenden.

3.4 Windows

Wenn Sie den Net Installer verwenden, oder auf Ihrem System beim Einlegen der DVD das Installationsprogramm nicht automatisch gestartet wurde, können Sie die Installation von TeX Live im Windows-Explorer durch einen Doppelklick auf install-tl-windows.bat (auf der DVD befindet sich diese Datei im Verzeichnis texlive) starten.

Falls Sie bei der Installation mehr Optionen benötigen (z. B. die Auswahl spezifischer Paketgruppen), starten Sie stattdessen install-tl-advanced.bat.

Alternativ können Sie eine cmd-Eingabeaufforderung verwenden, dort in das Verzeichnis wechseln, in dem sich das Installationsprogramm befindet und

D:\texlive\> install-tl

eingeben – ...> kennzeichnet hierbei den Eingabeprompt. Ihre Eingabe ist bold/fett dargestellt.

Alternativ können Sie die Installation auch aus einem beliebigen Verzeichnis heraus starten:

> D:\texlive\install-tl

wobei wir hier annehmen, dass sich ihre TeX Collection-DVD im Laufwerk D: befindet. Abb. 3.4 zeigt das grafische Installationsprogramm im »wizard mode«, das unter Windows standardmäßig verwendet wird.

Zur Installation im Textmodus verwenden Sie:

> install-tl -no-gui

Alle vorhandenen Optionen, die beim Starten des Installationsprogramms verwendet werden können, werden wie folgt angezeigt:

> install-tl-windows -help

Hinweis: Wenn Sie einen eigenen Mirror von tlnet betreiben, dann befindet sich die install-tl-windows.exe im selben Verzeichnis. Rufen Sie die Hilfe wie folgt auf:

> install-tl-windows.bat -help


Installing TeX Live 2022 from: ... 
Platform: x86_64-linux => ’GNU/Linux on x86_64’ 
Distribution: inst (compressed) 
... 
 Detected platform: Intel x86 with GNU/Linux 
 
 <B> binary platforms: 1 out of 16 
 
 <S> set installation scheme (scheme-full) 
 
 <C> customizing installation collections 
     40 collections out of 41, disk space required: 7239 MB 
 
 <D> directories: 
   TEXDIR (the main TeX directory): 
     /usr/local/texlive/2022 
   ... 
 
 <O> options: 
   [ ] use letter size instead of A4 by default 
   ... 
 
 <V> set up for portable installation 
 
Actions: 
 <I> start installation to hard disk 
 <H> help 
 <Q> quit

Abbildung 3.2: Hauptmenü des Installationsprogramms (GNU/Linux).



PIC

Abbildung 3.3: Grafische Installation im Expertenmodus.



PIC

Abbildung 3.4: Basis-Installationsmodus (Windows), der „Fortgeschrittene“ Modus wird ähnlich aussehen wie 3.5



PIC

Abbildung 3.5: Fortgeschrittener GUI-Installation-Modus (GNU/Linux)


3.5 Cygwin

Bevor Sie mit der Installation von TeX Live beginnen, verwenden Sie das Installationsprogramm von Cygwin (setup.exe) um die Pakete perl und wget gegebenenfalls nachzuinstallieren. Wir empfehlen weiterhin die Installation folgender Cygwin-Pakete:

fontconfig

für xeTeX und LuaLaTeXbenötigt

ghostscript

wird von verschiedenen Teilen von TeX Live benötigt

libXaw7

für xdvi

ncurses

damit der ’clear’-Befehl im Installer funktioniert

3.6 Installation im Textmodus

Abb. 3.2 zeigt den Eingangsbildschirm des Installationsprogramms im Textmodus (Standard unter Unix). Dieser ist ein reiner Textmodus, was zur Folge hat, dass es keine Unterstützung zum Wechseln durch die einzelnen Menüpunkte mit den Cursor-Tasten gibt. Alle Befehle, wie zum Beispiel die Auswahl von Menüpunkten, werden durch Eingabe der entsprechenden Befehle bzw. Menükürzel über die Tastatur eingegeben und durch Enter übernommen. Hierbei wird zwischen Groß- und Kleinschreibung unterschieden!

Die Installation im Textmodus ist so spartanisch, weil dieser Modus überall funktionieren soll, selbst mit einer minimalen Basisinstallation von Perl.

3.7 Die Installation mit grafischem Installer

Unter Windows wird automatisch diese einfache Form der Installation verwendet, der so genannte »gui mode« (Abb. 3.4). Dieser zeichnet sich dadurch aus, dass er TeX Live komplett installiert und dabei vom Benutzer nur wenige Angaben gemacht werden müssen.

Er kann mittels

> install-tl -gui

gestartet werden. Der Advanced-Button eröffnet Ihnen weitere Optionen (analog zum Text-Installationsmodus), siehe Abbildung ??.

Die Legacy-Installationsprogramme

Die Modieperltk/expert und wizard sind noch auf den Systemen verfügbar, sie rufen das reguläre grafische Installationsprogramm auf.

3.8 Benutzung des Installationsprogramms

Das Installationsprogramm sollte (wenn Sie die vorherigen Abschnitte zum Aufbau von TeX Live und der verwendeten Verzeichnisstruktur gelesen haben) weitgehend selbsterklärend sein. Trotzdem wollen wir auf einige Punkte näher eingehen.

3.9 Auswahl der Binaries (nur für Unix)


Available platforms: 
=============================================================================== 
   a [ ] Cygwin on Intel x86 (i386-cygwin) 
   b [ ] Cygwin on x86_64 (x86_64-cygwin) 
   c [ ] MacOSX current (10.14-) on ARM/x86_64 (universal-darwin) 
   d [ ] MacOSX legacy (10.6-) on x86_64 (x86_64-darwinlegacy) 
   e [ ] FreeBSD on x86_64 (amd64-freebsd) 
   f [ ] FreeBSD on Intel x86 (i386-freebsd) 
   g [ ] GNU/Linux on ARM64 (aarch64-linux) 
   h [ ] GNU/Linux on ARMv6/RPi (armhf-linux) 
   i [ ] GNU/Linux on Intel x86 (i386-linux) 
   j [X] GNU/Linux on x86_64 (x86_64-linux) 
   k [ ] GNU/Linux on x86_64 with musl (x86_64-linuxmusl) 
   l [ ] NetBSD on x86_64 (amd64-netbsd) 
   m [ ] NetBSD on Intel x86 (i386-netbsd) 
   o [ ] Solaris on Intel x86 (i386-solaris) 
   p [ ] Solaris on x86_64 (x86_64-solaris) 
   s [ ] Windows (win32)

Abbildung 3.6: Auswahlmenü für Binaries


Abb. 3.6 zeigt das Auswahlmenü für die Binaries der einzelnen Betriebssysteme im Textmodus. Im Allgemeinen sollte hier schon das richtige System ausgewählt sein. Sie können aber problemlos Binaries für verschiedene Systeme parallel auswählen. Dies bietet sich an, wenn Ihre Installation auf verschiedenen Rechnern in einem heterogenen Netzwerk sichtbar ist und von dort aus benutzt werden soll.

3.10 Auswahl der zu installierenden Komponenten


Select scheme: 
=============================================================================== 
 a [X] full scheme (everything) 
 b [ ] medium scheme (small + more packages and languages) 
 c [ ] small scheme (basic + xetex, metapost, a few languages) 
 d [ ] basic scheme (plain and latex) 
 e [ ] minimal scheme (plain only) 
 f [ ] ConTeXt scheme 
 g [ ] GUST TeX Live scheme 
 h [ ] infrastructure-only scheme (no TeX at all) 
 i [ ] teTeX scheme (more than medium, but nowhere near full) 
 j [ ] custom selection of collections

Abbildung 3.7: Menü zur Auswahl des Schemas


Abb. 3.7 zeigt das Auswahlmenü für ein grundsätzliches Installationsschema der TeX Live. Durch die Auswahl eines Schemas werden automatisch die Komponenten zur Installation ausgewählt, die für das gewünschte Schema notwendig bzw. sinnvoll sind. Mit einer vollständigen Installation von TeX Live (full scheme) sind Sie auf der sicheren Seite, da hier einfach alles installiert wird, auch die Unterstützung für Dinge, die Sie vermutlich niemals brauchen werden. Sie können aber auch eines der abgespeckten Schemas wie basic (für ein sehr schlankes System), small oder minimal (dies empfiehlt sich aber nur für Testsysteme und weniger zum ernsthaften Arbeiten) auswählen. Weiter stehen einige Schemata für spezielle Anwendungszwecke oder Sprachen zur Verfügung.


PIC

Abbildung 3.8: Menü zur Aus- oder Abwahl von Collections.


Wenn Sie das Schema ausgewählt haben, können Sie dieses in den Menüpunkten standard collections und language collections (s. Abb. 3.8, diesmal zur Abwechslung im GUI-Modus) individuell nach Ihren Wünschen anpassen.

Während das Schema nur den grundlegenden Funktionsumfang vorgibt, ist die Auswahl von Komponenten auf der Ebene der Collections viel feiner. Eine Collection besteht dabei aus mehreren Paketen zu einem Thema, wobei jedes der Pakete aus bestimmten Makrodateien, Fontdateien usw. bestehen kann.

Noch mehr Kontrolle über die Komponenten Ihres Systems haben Sie nach der Installation mit dem TeX Live Manager (tlmgr), das in Kapitel 6 beschrieben wird. Hier können Sie gezielt einzelne Pakete installieren oder entfernen.

3.11 Verzeichnisse

Die Verzeichnisstruktur von TeX Live wurde bereits im Kapitel 2.3 auf S. § beschrieben. Als Wurzelverzeichnis für TeX Live (TEXDIR) wird unter Windows %SystemDrive%\texlive\2022 und unter Unix (/usr/local/texlive/2022) angenommen.

Prinzipiell können Sie diesen Pfad problemlos ändern, z. B. wenn Sie TeX Live als Standardnutzer und nict als Admin installieren wollen bzw. keine Schreibrechte in dem oben angegebenen Verzeichnis besitzen.

Auf Wunsch können Sie TeX Live also auch in Ihrem Home-Verzeichnis installieren, wenn Sie sowieso der einzige Nutzer von TeX Live auf Ihrem Rechner sind. Für Ihr Home-Verzeichnis können Sie den Pfad »| |« verwenden und so beispielsweise TeX Live nach | /texlive/2022| installieren.

Wir empfehlen Ihnen, die Jahreszahl im Verzeichnisnamen beizubehalten. So können Sie von Jahr zu Jahr einfach die neue Version testen, ohne die alte zu entsorgen. Bei Bedarf können Sie einen symbolischen Link (z.B. /usr/local/texlive-cur) verwenden, der jeweils auf das Verzeichnis der aktuellen Version von TeX Live verweist.

Wenn Sie die Einstellung TEXDIR im Installationsprogramm ändern, werden die Werte für TEXMFLOCAL, TEXMFSYSVAR und TEXMFSYSCONFIG automatisch angepasst. In Abbildung 3.5 finden Sie eine Übersicht der entsprechenden Optionen.

Das als TEXMFHOME bezeichnete Verzeichnis ist der Ort, in dem persönliche Makrodateien, Schriften o. ä. abgelegt werden können. Vorgabewert ist ~/texmf. Im Gegensatz zu TEXDIR wird ~ hier nicht direkt zum Pfad des Home-Verzeichnisses aufgelöst, sondern unverändert in die Konfigurationsdateien von TeX Live übernommen und erst zur Laufzeit aufgelöst. Somit kann jeder Nutzer des Systems seinen komplett eigenen Pfad haben, der von TeX Live verwendet wird, und so nach Wunsch auch eigene Konfigurationsänderungen durchführen. Zur Laufzeit wird ~ unter Unix durch $HOME und unter Windows durch %USERPROFILE% ersetzt.

Die Variable TEXMFVAR verweist auf das Verzeichnis mit benutzerspezifisch erzeugten Konfigurationsdateien, z. B. den Konfigurations-Cache von ConTeXt MkIV.

3.12 Optionen

Der folgende Rahmen zeigt das Menü, in dem weitere Einstellungen für die Installation von TeX Live möglich sind.

 <P> use letter size instead of A4 by default: [ ] 
 <E> execution of restricted list of programs: [X] 
 <F> create all format files:                  [X] 
 <D> install font/macro doc tree:              [X] 
 <S> install font/macro source tree:           [X] 
 <L> create symlinks in standard directories:  [ ] 
            binaries to: 
            manpages to: 
                info to: 
 <Y> after install, set CTAN as source for package updates: [X]

Zur Erläuterung:

use letter size instead of A4 by default:

Verwendung von Letter anstatt DIN A4 als Standardpapiergröße. Natürlich können Sie später unabhängig davon für einzelne Dokumente eine beliebige Papiergröße wählen.

execution of restricted list of programs:

Seit TeX Live 2011 können bei einem TeX-Lauf standardmäßig einige externe Programme aufgerufen werden. Die (kurze) Liste der erlaubten Programme wird in der Datei texmf.cnf definiert. Für weitere Informationen siehe Kapitel 10.9 über Neuerungen in TeX Live 2011.

create all format files:

Auch wenn das Erzeugen von Formatdateien für Makropakete, die Sie gar nicht benötigen, Zeit und Platz kostet, empfehlen wir trotzdem, diese Option ausgewählt zu belassen. Falls Sie diese Option abwählen, werden Formatdateien jeweils bei Bedarf erzeugt, und dann im persönlichen TEXMFVAR-Baum des aktuellen Benutzers abgelegt. Dort liegende Formate werden allerdings nicht automatisch neu generiert. Wenn z. B. Programme oder Silbentrennmuster aktualisiert werden, dann kann es zu Inkompatibilitäten kommen.

install font/macro  tree:

Mit dieser Option können Sie verhindern, dass die Dokumentation und die Quelldateien der Pakete installiert werden. Wir raten aber, die Vorgabe zu übernehmen, d. h. die Dokumentation und Quelldateien zu installieren.

create symlinks in standard directories

(nur unter Unix): Mit dieser Option können Sie symbolische Links für Programme und Dokumentation in den Standardverzeichnissen Ihres Systems anlegen, so dass Sie Ihre Umgebungsvariablen PATH, MANPATH und INFOPATH nicht anpassen müssen. Sie benötigen für diese Option Schreibrechte in den entsprechenden Verzeichnissen. Hinweis: Diese Option ist nicht dazu gedacht, ein vorhandenes TeX-System, das zum Beispiel als Teil Ihrer Linux-Distribution installiert wurde, zu überschreiben! Sie dient vielmehr dazu, dass Links in Verzeichnissen angelegt werden, wo die Nutzer sie erwarten – beispielsweise in /usr/local/bin –, aber sich dort noch keine TeX-Programme befinden.

after installation … CTAN:

Diese Option ist bei der Installation von DVD standardmäßig gesetzt. Sie sorgt dafür, dass nach der Installation Paket-Aktualisierungen aus dem Internet geladen werden. Es gibt nur einen sinnvollen Grund, diese Option nicht zu aktivieren: wenn nur eine Untermenge von TeX Live installiert wurde und Pakete nach der Installation manuell hinzugefügt werden sollen.

Windows-spezifische Optionen sind wie folgt:

Pass die PATH Variable in der Registry an

Sorgt dafür, dass alle Programme die TeX-Programme im Pfad finden können.

Füge Menüeinträge hinzu

Fügt bei gesetzter Option Menü-Einträge in das Startmenü ein. Beschrieben in 4.

Ändere Datei-Verknüpfungen

Optionen sind hier ‘Only new’ (erstelle Verknüpfungen, aber überschreibe nicht existierende Verknüpfungen), ‘Alle’ und ‘Keine’.

Installiere TeXworks

Installiert bei gesetzter Option TeXworks

Wenn Sie alle gewünschten Einstellungen für die Installation vorgenommen haben, können Sie im Hauptmenü nun »I« eintippen, um diese zu starten. Lesen Sie dann anschließend Kapitel 3.15 für eventuell notwendige Arbeiten zum Abschluss der Installation.

3.13 Kommandozeilenoptionen für die Installation

Nach Eingabe von

> install-tl -help
erhalten Sie eine Liste der vorhanden Kommandozeilenoptionen. Sie können diese entweder mit |-| oder |–| verwenden. Die wichtigsten sind:

-gui

Nutze wenn möglich die grafische Oberfläche. Dies benötigt Tcl/TK 8.5 oder höher. Tcl/TK 8.5 ist nur Teil von Mac OS X bis Monterey, danach müssen Sie es selbst installieren. Die Legacy-Optionen -gui=perltk und -gui=wizard sind noch verfügbar, aber rufen die gleiche grafische Benutzeroberfläche auf. Wenn Tcl/Tk nicht verfügbar ist, wird die Installation im Textmodus durchgeführt.

-no-gui

Installation im Textmodus. Da dies unter Unix Standard ist, wirkt sich diese Option nur unter Windows aus. Da die Installation zum Benutzen von TeX Live direkt von DVD im grafischen Modus nicht verfügbar ist, brauchen Sie in diesem Fall unbedingt den Textmodus.

-lang LL

Sprache des Installationsprogramms als Sprach-Code in zwei Buchstaben (LL). Derzeit werden unterstützt. Das Installationsprogramm versucht, die gewünschte Sprache anhand des Systems herauszufinden. Falls dies scheitert oder die betreffende Sprache nicht verfügbar ist, wird als Fallback-Sprache Englisch genutzt.

-portable

Die Option -portable (V im Text-Installer oder die gleiche Option im grafischen Installer); dient der Installation auf einem USB-Stick oder einer DVD-R. Siehe Kapitel 5 für Informationen über die portable Installation von TeX Live.

-profile profile

Das Installationsprogramm schreibt die ausgewählten Optionen in eine Datei texlive.profile. Mit dieser Option können Sie eine bereits vorhandene Datei bei der Installation weiter verwenden, z. B. wenn Sie äquivalente Installationen auf mehreren Rechnern realisieren wollen, ohne alle Auswahlschritte der Installation immer wieder neu durchführen zu müssen.

-repository url/path

zur Auswahl einer Installationsquelle, für weitere Erläuterung siehe den nächsten Kapitel.

-in-place

Sollten Sie schon ein rsync, svn, oder eine andere Kopie von TeX Live haben (siehe https://tug.org/texlive/acquire-mirror.html), dann wird diese Option genau das nutzen, was Sie schon haben und nur die notwendigen post-install Operationen durchführen. Eine Warnung: Die Datei
tlpkg/texlive.tlpdb kann dadurch überschrieben werden; machen Sie vorher gegebenenfalls eine Sicherheitskopie. Die Entfernung von Paketen muss auch manuell vorgenommen werden.

Diese Option kann nicht über die Installer-Schnittstelle gesetzt werden.

3.14 Die Option repository

Als Standardquelle für die Installation wird ein CTAN-Knoten verwendet, der automatisch von https://mirror.ctan.org ermittelt wird.

Falls Sie eine andere Installationsquelle verwenden wollen, geben Sie eine neue Quelle an, die entweder mit ftp:, http:, https: oder file:/ beginnt oder ein Verzeichnispfad auf Ihrem System ist. Falls Sie http:, https: oder ftp: verwenden, werden »/«-Zeichen oder ein »/tlpkg«- am Ende ignoriert.

Sie können also z. B. einen bestimmten CTAN-Knoten auswählen, so etwa https://ctan.example.org/tex-archive/systems/texlive/tlnet/, wobei Sie natürlich statt |ctan.example.org| einen echten Servernamen verwenden und wahrscheinlich auch den Rest der URL anpassen müssen. Eine Auflistung von CTAN-Servern finden Sie unter https://ctan.org/mirrors.

Falls Sie ein lokales Repository verwenden (also entweder direkt einen Verzeichnispfad oder eine file:/-URL angeben), dann werden bevorzugt Archivdateien in einem Unterverzeichnis archive des Repository verwendet, selbst wenn ausgepackte Dateien vorhanden sind.

3.15 Aufgaben im Anschluss an die Installation

Je nach System kann es notwendig sein, dass im Anschluss an die Installation noch einige Kleinigkeiten erledigt werden müssen.

3.15.1 Windows

Benutzer von Windows sind hier in der glücklichen Position, dass das Installationsprogramm alles komplett erledigt haben sollte.

3.15.2 Unix, falls symbolische Links angelegt wurden

Wenn Sie bei der Installation angegeben haben, dass und wo symbolische Links angelegt werden sollten (siehe Kapitel 3.12), dann sollten hier auch keine Nacharbeiten mehr notwendig sein.

3.15.3 Umgebungsvariablen für Unix

Das Verzeichnis mit den ausführbaren Programmen von TeX Live muss sich im Suchpfad des Systems befinden. Jedes unterstützte System besitzt ein eigenes Verzeichnis unterhalb von TEXDIR/bin, deren Namen Sie in Abb. 3.6 finden.

Weiterhin können Sie die Verzeichnisse mit den Manual-Pages und Info-Dateien zu den entsprechenden Suchpfaden für Dokumentation hinzufügen.

Für Systeme mit einer Bourne-kompatiblen Shell wie bash ist hier am Beispiel von GNU/Linux aufgeführt, wie die Befehle zum Setzen der Umgebungsvariablen (z. B. in $HOME/.profile) aussehen könnten:

PATH=/usr/local/texlive/2022/bin/x86_64-linux:$PATH; export PATH
MANPATH=/usr/local/texlive/2022/texmf-dist/doc/man:$MANPATH; export MANPATH
INFOPATH=/usr/local/texlive/2022/texmf-dist/doc/info:$INFOPATH; export INFOPATH

Für csh oder tcsh erfolgt die Konfiguration in der Regel in der Datei $HOME/.cshrc und könnte so aussehen:

setenv PATH /usr/local/texlive/2022/bin/x86_64-linux:$PATH
setenv MANPATH /usr/local/texlive/2022/texmf-dist/doc/man:$MANPATH
setenv INFOPATH /usr/local/texlive/2022/texmf-dist/doc/info:$INFOPATH

3.15.4 Systemweites Setzen von Umgebungsvariablen

Wenn Sie als Administrator die Umgebungsvariablen global für das gesamte System setzen wollen, gehen wir davon aus, dass Sie sich mit der grundlegenden Systemadministration auskennen.

Daher hier nur zwei Hinweise:

1.
Schauen Sie nach einer Datei /etc/manpath.config. Falls diese vorhanden ist, sollte es reichen, folgende Zeilen hinzu zu fügen:
      MANPATH_MAP /usr/local/texlive/2022/bin/ix86_64-linux \
                  /usr/local/texlive/2022/texmf-dist/doc/man

2.
Prüfen Sie, ob es auf Ihrem System eine Datei /etc/environment gibt, in der die systemweiten Umgebungsvariablen definiert werden.

Zusätzlich wird ein symbolischer Link man im binary-Verzeichnis unter Unix angelegt, der auf texmf-dist/doc/man verweist. Einige Versionen von man, so z. B. unter Mac OSX, finden so verlinkte Man-Pages automatisch, so dass hier keine spezielle Konfiguration für die Man-Pages mehr erforderlich ist.

3.15.5 Internet-Updates nach der Installation von DVD

Wenn Sie von DVD installiert haben, können Sie mittels des folgenden Befehls die Aktualisierung über das Internet aktivieren. Zuerst müssen Sie, wie im vorhergehenden Kapitel beschrieben, den Suchpfad angepasst haben:

> tlmgr option repository https://mirror.ctan.org/systems/texlive/tlnet

Dadurch nutzt tlmgr beim nächsten Update einen CTAN Mirror. Sollte es Probleme bei der automatischen Wahl eines Mirror-Servers geben, kann ein bestimmter CTAN Server von der unter https://ctan.org/mirrors verfügbaren Liste ausgewählt werden. Benutzen Sie diesen Pfad dann mit dem oben genannten Befehl.

3.15.6 Font-Konfiguration für xeTeX und LuaTeX2

xeTeX und LuaTeX können nicht nur die Schriften in den TeX Bäumen nutzen, sondern auch die auf dem System vorhandenen Fonts. Die Methoden, wie sie dies tun, ähneln sich, sind aber verschieden.

Unter Windows sind die auf dem System vorhandenen Schriften automatisch nutzbar. Auf einem Unix/Linux System sind Anpassungen notwendig, damit die Schriften über den Systemname und nicht nur Dateinamen gefunden werden können.

Hierfür wird bei der Installation des xetex Pakets die Datei
TEXMFSYSVAR/fonts/conf/texlive-fontconfig.conf erzeugt.

Um die mitgelieferten TeX Live-Schriften systemweit verwenden zu können, gehen Sie bitte folgendermaßen vor:

1.
Kopieren Sie als root-User texlive-fontconfig.conf nach
/etc/fonts/conf.d/09-texlive.conf.
2.
Führen Sie fc-cache -fsv aus.

Falls Ihnen als normaler Nutzer die entsprechenden Rechte für die obigen Schritte fehlen, können Sie die TeX Live-Schriften für sich selbst als xeTeX-Nutzer verwendbar machen:

1.
Kopieren Sie texlive-fontconfig.conf in das Unterverzeichnis ~/.fonts.conf, wobei ~ Ihr Home-Verzeichnis ist.
2.
Führen Sie fc-cache -fv aus.

Führen Sie fc-list aus, um eine Liste der Systemschriften mit hilfreichen Informationen zu erhalten.

3.15.7 ConTeXt Mark IV

Sowohl das „alte“ ConTeXt (Mark II) als auch das „neue“ ConTeXt (Mark IV) sollten problemlos nach der TeX Live Installation funktionieren und brauchen keine besondere Aufmerksamkeit, sofern tlmgr für den Update-Prozess genutzt wird.

Da ConTeXt MkIV jedoch nicht die kpathsea-Bibliothek nutzt, ist ein wenig manuelle Nacharbeit notwendig, wenn neue Dateien manuell installiert werden (also ohne die Nutzung von tlmgr).

Nach einer jeden solchen Installation muss jeder Nutzer das das folgende Kommando ausführen, um den ConTeXt Cache zu aktualisieren:

context --generate

Die erzeugten Dateien werden in TEXMFCACHE gespeichert, dessen Standardwert TEXMSYSVAR;TEXMFVAR ist.

ConTeXt MkIV liest aus allen Pfaden, die in TEXMFCACHE aufgeführt sind und schreibt in die erste Pfadangabe, bei der Schreibrechte existieren. Im Fall identischer Cache-Daten hat der letzte gefundene Pfad Vorrang vor allen anderen Pfaden.

Für weitere Informationen siehe https://wiki.contextgarden.net/Running_Mark_IV und https://wiki.contextgarden.net/TeX_Live_2012.

3.15.8 Integration lokaler bzw. nutzer-spezifischer Makros

Wie bereits in Kapitel 2.3 erwähnt, ist der Verzeichnisbaum TEXMFLOCAL (im Normalfall /usr/local/texlive/texmf-local oder %SystemDrive%\texlive\
texmf-local) für lokale Ergänzungen wie Makros und Schriften gedacht, die anschließend allen Benutzern des Systems zur Verfügung stehen. Weiterhin können Benutzer den Verzeichnisbaum TEXMFHOME (im Normalfall $HOME/texmf oder %USERPROFILE%\texmf) für persönliche Ergänzungen verwenden, ohne dass andere Benutzer davon beeinflusst werden.

Diese Verzeichnisse sollen über verschiedene Versionen von TeX Live hinweg identisch sein, so dass ein Update von TeX Live auf eine neue Version einfach möglich ist, ohne dass Sie Ihre lokalen Ergänzungen verlieren. Wir empfehlen Ihnen daher, von der vorgegebenen Verzeichnisstruktur nicht abzuweichen.

Für beide oben genannte Verzeichnisbäume erwartet TeX Live eine Verzeichnisstruktur innerhalb des Baums, die dem TeX Directory Standard entspricht, wie er in https://tug.org/tds bzw. texmf-dist/web2c/texmf.cnf definiert ist. So gehören Dokumentklassen für LaTeX zum Beispiel in ein Verzeichnis unterhalb von TEXMFLOCAL/tex/latex oder TEXMFHOME/tex/latex.

Der Verzeichnisbaum TEXMFLOCAL wird zur Laufzeit nicht direkt nach Dateien durchsucht. Stattdessen wird eine Liste von Dateinamen verwendet, sich sich in einer Datei mit dem Namen ls-R befindet. Denken Sie also daran, nach Änderungen in diesem Baum diese Dateiliste zu aktualisieren. Dies tun Sie entweder mit dem Befehl mktexlsr oder über die Schaltfläche Reinit file database im Konfigurationsreiter des TeX Live Managers (GUI-Modus).

3.15.9 Integration von Schriften

Die Installation von Schriften für pdfTeX, die nicht Bestandteil von TeX Live sind, ist eine recht komplexe Angelegenheit. Lassen Sie es am besten sein, wenn Sie sich nicht sehr gut mit dem System auskennen! Schauen Sie vielleicht vorher in Kapitel ?? nach, welche Schriften bereits bei TeX Live mitgeliefert werden.

Eine Alternative besteht in der Nutzung von xeTeX oder LuaTeX (s. Kapitel 2.4), bei dem direkt alle vom Betriebssystem installierten Schriften verwendet werden können, ohne dass die Installation einer TeX-Unterstützung notwendig ist.

Falls Sie wirklich weitere Schriften benötigen, finden Sie unter https://tug.org/fonts/fontinstall.html eine Beschreibung zur Installation weiterer Schriften.

3.16 Testen der Installation

Nach der Installation von TeX Live wollen Sie es natürlich benutzen, um möglichst schöne Dokumente zu setzen.

Dieser Kapitel beschreibt, wie Sie prüfen können, ob Ihr TeX Live-System funktioniert. Die folgenden Beispiele sind für Unix, sollten unter Windows und Mac OSX aber sehr ähnlich sein. Der Unterschied kann sein, dass Sie dort eventuell eine grafische Benutzeroberfläche verwenden. Unter Windows installiert TeX Live TeXworks, unter Mac OS X TeXShop (siehe https://pages.uoregon.edu/koch/texshop. Auf anderen Linux/Unix-Systemen obliegt es dem Nutzer, einen Editor auszuwählen. Im Grunde funktioniert jeder normaler Editor, ein Unicode-fähiger Editor wird aber sehr empfohlen.

1.
Prüfen Sie, ob Sie das Programm tex ausführen können:

> tex --version
TeX 3.14159265 (TeX Live ....)
Copyright .... D.E. Knuth.
...

Erhalten Sie als Resultat statt der Versionsnummer die Meldung, dass der Befehl nicht gefunden wurde, so haben Sie wahrscheinlich vergessen, das Verzeichnis mit den ausführbaren Programmen in Ihren PATH aufzunehmen, siehe Kapitel 3.15.3 auf Seite §.

2.
Eine einfache LaTeX-Datei übersetzen:

> pdflatex sample2e.tex
This is pdfTeX, Version 3.14...
...
Output written on sample2e.pdf (3 pages, 7484 bytes).
Transcript written on sample2e.log.

Falls dies schief geht, sind wahrscheinlich noch alte Umgebungsvariablen einer vorigen TeX-Installation übrig geblieben. Wir empfehlen, die Umgebungsvariablen, die sich auf TeX beziehen, zu entfernen. Für eine weitere Analyse können Sie TeX anzeigen lassen, wo es bestimmte Dateien sucht, siehe „Fehlersuche“ auf Seite §.

3.
Ergebnis auf dem Bildschirm anschauen:

> xpdf sample2e.pdf

Nun sollte sich ein Vorschaufenster mit dem soeben gesetzten Beispieldokument öffnen, das die Grundlagen von LaTeX erläutert (und das Anfänger tatsächlich auch einmal lesen sollten). Es gibt verschiedene empfehlenswerte PDF Viewer: unter Windows empfehlen wir Sumatra PDF ( https://www.sumatrapdfreader.org/free-pdf-reader.html), unter Linux/Unix evince und okular.

Sie können auch anstelle des PDF eine DVI Datei erzeugen

> latex sample2e.tex

und diese mit dem eingebauten DVI-Viewer anschauen.

> xdvi sample2e.dvi

Unter Unix muss ein X-Server laufen, damit xdvi funktioniert; falls dies nicht der Fall ist oder die Umgebungsvariable DISPLAY falsch gesetzt ist, erhalten Sie die Fehlermeldung Can’t open display.

4.
Eine PostScript-Datei aus der DVI erzeugen:

> dvips sample2e.dvi -o sample2e.ps

Weder gv noch xpdf sind in TeX Live enthalten, daher müssen diese separat installiert werden, siehe https://www.gnu.org/software/gv bzw. https://www.foolabs.com/xpdf.

Sie können natürlich auch andere PDF-Viewer verwenden, beispielsweise Adobe Reader. Dieser hat allerdings unter Windows das Problem, dass geöffnete PDF-Dateien nicht überschrieben werden können. Dies führt zu Fehlern von pdfTeX, wenn Sie ein Dokument übersetzen wollen und vergessen haben, es vorher im Adobe Reader zu schließen. Unter Windows sollten Sie daher auch einmal Sumatra PDF ( https://blog.kowalczyk.info/software/sumatrapdf) ausprobieren, der dieses Problem nicht hat und deutlich weniger Ressourcen braucht als Adobe Reader.

5.
Weitere nützliche Test-Dateien außer sample2e.tex:

small2e.tex

Einfachere Version von sample2e, um den Fehler einzugrenzen, wenn Sie beim Übersetzen von sample2e Probleme haben.

testpage.tex

Hiermit können Sie prüfen, ob Ihr Drucker Ihren Ausdruck horizontal oder vertikal verschiebt.

nfssfont.tex

Zum Testen von Fonts und Erzeugen von Schrifttabellen.

testfont.tex

Erzeugen von Schrifttabellen, aber mit plain TeX.

story.tex

Das einfachste Testdokument von allen (in plain TeX). Geben Sie am Ende \bye ein, wenn nach dem Aufruf von tex story.tex der * erscheint.

6.
Falls Sie das xetex-Paket installiert haben, können Sie das Verwenden von Systemschriften folgendermaßen testen:

+> xetex opentype-info.tex
This is XeTeX, Version 3.1415926
...
Output written on opentype-info.pdf (1 page).
Transcript written on opentype-info.log.

(Oder das gleiche für luatex.)

Falls Sie die Fehlermeldung „Invalid fontname ’Latin Modern Roman/ICU’…“ erhalten, muss Ihr System so konfiguriert werden, dass es die von TeX Live mitgelieferten Schriften findet (siehe Kapitel ??).

3.16.1 TeX Live Deinstallieren

Um TeX Live nach einer erfolgreichen Installation zu deinstallieren, führen Sie

> tlmgr uninstall --all

aus. Sie müssen dies bestätigen, sonst erfolgt keine Deinstallation. Hinweis: Ohne die --all Option wird der Schalter uninstall genutzt, um einzelne Pakete zu deinstallieren.

Der Befehl löscht keine benutzerspezifischen Verzeichnisse, siehe section sec:texmftrees:

TEXMFCONFIG

Dieses Verzeichnis enthält Konfigurationsanpassungen auf Nutzer-Ebene. Wenn sie erhalten bleiben sollen, sichern Sie sie vorher.

TEXMFVAR

Dieses Verzeichnis enthält zum Beispiel lokale Formatdateien. Wenn Sie es nicht noch zu anderen Zwecken genutzt haben, dann ist das Löschen kein Problem.

TEXMFHOME

Enthält Dateien, die Sie persönlich der TeX Installation hinzugefügt haben. Sie sollten dieses Verzeichnis nur löschen, wenn Sie kein TeX mehr nutzen möchten.

Die Verzeichnisse für diese Variablen können Sie mittels kpsewhich -var-value=var abfragen.

Die tlmgr Deinstallation nimmt keine Anpassungen der Pfad-Umgebungsvariablen und Systemzugriffen für Schriftaren vor (siehe Abschnitt 3.15). Diese Schritte müssen Sie manuell vornehmen, sofern gewünscht.

Unter Windows kann die Deinstallation von TeX Live über die grafische Oberfläche vorgenommen werden, siehe Abschnitt 7.1.

3.17 Hinweise auf weitere Software

In vielen Fällen ist die Installation weiterer Software sinnvoll:

Ghostscript

https://www.cs.wisc.edu/~ghost/, ein freier PostScript und PDF Interpreter

Perl

https://www.perl.org/ mit Zusatzpaketen von CPAN, https://www.cpan.org/,

ImageMagick

https://www.imagemagick.com, für die Bearbeitung und Umwandlung von Bildern in andere Formate,

NetPBM

https://netpbm.sourceforge.net/, ebenfalls für Bilder.

TeX-Oberflächen

Es gibt eine breite Auswahl von Oberflächen bzw. Editoren, die TeX unterstützen, je nach persönlichem Geschmack des Benutzers. Hier ist eine Auswahl, wobei einige davon nur für Windows verfügbar sind:

Für weitere Programme siehe https://tug.org/interest.html.

Kapitel 4
Installation für mehrere Maschinen oder Nutzer (Netz-Installation)

Bei TeX Live ist nicht nur vorgesehen, dass es von mehreren Benutzern auf einem System verwendet werden kann, sondern auch in einem Netzwerk. In der normalen Konfiguration von TeX Live werden nur relative und keine absoluten Pfade verwendet. Dies erkennt man an Einstellungen in der Datei $TEXMFDIST/web2c/texmf.cnf, die Zeilen wie die folgenden enthält, in denen Verzeichnisse relativ zu den Verzeichnissen lokalisiert werden, in denen sich die Programme befinden:

TEXMFROOT = $SELFAUTOPARENT/texmf
...
TEXMFDIST = $TEXMFROOT/texmf-dist
...
TEXMFLOCAL = $SELFAUTOPARENT/../texmf-local

Daher ist es im Normalfall ausreichend, das Programm-Verzeichnis in den Suchpfad des Systems aufzunehmen, alles weitere bestimmt TeX Live dann automatisch.

Daher ist es kein Problem, wenn das Grundverzeichnis von TeX Live als Netzlaufwerk eingebunden ist. Tatsächlich können Sie TeX Live sogar zunächst lokal installieren und dann auf ein Netzlaufwerk verschieben.

Für Benutzer von Windows enthält TeX Live einen Launcher tlaunch. Sein Hauptfenster enthält Menü-Einträge und Buttons für verschiedene TeX-Programme und Dokumentationen, anpassbar via ini-Datei. Mehr Informationen dazu unter (texdoc tlaunch oder https://ctan.org/pkg/tlaunch).

Kapitel 5
Portables TeX Live auf DVD oder USB-Stick

Wenn Sie TeX Live im portablen Modus verwenden wollen (z. B. auf einem Rechner, auf dem Sie „Gast“ sind), können Sie TeX Live mit der Option -portable (bzw. der Option V im Text-Installer oder der entsprechenden Option im grafischen Installer) auf einem USB-Stick installieren (siehe Kapitel 3.13).

Vom technischen Standpunkt aus betrachtet wird die portable Installation so erzeugt, dass die Standardwerte für TEXMFHOME, TEXMFVAR und TEXMFCONFIG die selben sind wie für TEXMFLOCAL, beziehungsweise TEXMFSYSVAR und TEXMFSYSCONFIG; Konfigurationen pro Nutzer sowie Caches werden nicht erzeugt.

Um TeX von dieser portablen Installation ausführen zu können, muss das entsprechenden Verzeichnis mit den Binaries dem Suchpfad hinzugefügt werden. Unter Windows kann man tl-tray-menu im Stammverzeichnis der Installation doppelt klicken, um zwischen verschiedenen Aufgaben zu wählen.

PIC

Der Eintrag „More…“ erläutert, wie Sie dieses Menü anpassen können.

Kapitel 6
tlmgr: Installation verwalten


PIC

Abbildung 6.1: tlshell GUI, mit dem Auswahlmenü (Mac OS X)



PIC

Abbildung 6.2: tlcockpit GUI für tlmgr



PIC

Abbildung 6.3: Legacy-tlmgr im GUI-Modus. Hauptfenster nach dem Klick auf „Load“.



PIC

Abbildung 6.4: tlmgr im GUI-Modus: Allgemeine Optionen



PIC

Abbildung 6.5: tlmgr im GUI-Modus: Optionen zur Papiergröße.


Bei der Installation von TeX Live wird auch das Programm tlmgr installiert, mit dem Sie anschließend Ihr TeX Live-System verwalten können. Die hierfür bisher verwendeten Programme updmap, fmtutil und texconfig sind zwar noch vorhanden, aber inzwischen ist tlmgr die vorgesehene Oberfläche zur Konfiguration von TeX Live. Mit tlmgr können Sie folgende Aufgaben erledigen:

tlmgr hat die vollständige Funktionalität von texconfig, das aber noch mit ausgeliefert wird. Wir empfehlen aber, tlmgr zu nutzen.

6.0.1 Aktuelle GUI-Interfaces für tlmgr

TeX Live enthält mehrere GUIs für tlmgr. Abbildung 6.1 zeigt tlshell, das in Tcl/Tk geschrieben wurde und unter Windows und and Mac OS X ohne zusätzliche Software funktioniert. Abbildung 6.2 zeigt tlcockpit, das Java version 8 oder höher sowie JavaFX benötigt. Beide Programme sind separate Pakete.

tlmgr selbst kann im GUI-Modus laufen, siehe Abbildung  6.3):

> tlmgr -gui

Diese Benutzeroberfläche benötigt Perl/Tk, das nicht Teil der TeX Live Perl Distribution unter Windows ist.

6.1 Beispiel zur Verwendung von tlmgr über die Kommandozeile

Nachdem Sie TeX Live installiert haben, können Sie Ihr TeX Live-System auf den neuesten Stand aktualisieren:

> tlmgr update -all
Falls Sie vorher wissen möchten, was ein Update alles aktualisieren würde, können Sie zunächst

> tlmgr update -all -dry-run
oder (weniger ausführlich)

> tlmgr update -list
verwenden.

Das folgende Beispiel demonstriert, wie die Collection für xeTeX installiert wird, wobei sich die Installationsdateien in einem lokalen Verzeichnis befinden:

tlmgr -repository /local/mirror/tlnet install collection-xetex
Dies liefert die eine Ausgabe wie die folgende:


install: collection-xetex
install: arabxetex
...
install: xetex
install: xetexconfig
install: xetex.i386-linux
running post install action for xetex
install: xetex-def
...
running mktexlsr
mktexlsr: Updating /usr/local/texlive/2022/texmf-dist/ls-R...
...
running fmtutil-sys --missing
...
Transcript written on xelatex.log.
fmtutil: /usr/local/texlive/2022/texmf-var/web2c/xetex/xelatex.fmt installed.

Wie man sieht, beachtet tlmgr die Abhängigkeiten von Paketen und installiert im obigen Beispiel von xeTeX benötigte Komponenten nach. Weiterhin werden automatisch im Anschluss die Dateilisten der Verzeichnisbäume aktualisiert und fehlende Formate generiert.

Informationen zu einem Paket (oder einer Collection oder einem Schema) anzeigen:

Ucomtlmgr show collection-latexextra

Hier erhält man folgende Ausgabe:

package:    collection-latexextra
category:   Collection
shortdesc:  LaTeX supplementary packages
longdesc:   A very large collection of add-on packages for LaTeX.
installed:  Yes
revision:   46963
sizes:      657941k

Die komplette Dokumentation finden Sie unter https://tug.org/texlive/tlmgr.html oder mit tlmgr -help.

Kapitel 7
Hinweise zu Windows

7.1 Windows-spezifische Dinge

Unter Windows kümmert sich das Installationsprogramm auch um folgende Dinge:

Menüs und Verknüpfungen.

Im Startmenü wird ein Menü „TeX Live “ hinzu gefügt. Hier sind Einträge für die grafischen Anwendungen (tlmgr, texdoctk und einige Verknüpfungen zur Dokumentation vorhanden.

Automatisches Setzen der Umgebungsvariablen.

Hierdurch ist das Setzen dieser Variablen von Hand überflüssig geworden.

Uninstaller.

Es wird ein Eintrag zum Entfernen von TeX Live in der Systemsteuerung im Punkt „Software“ angelegt, bei Einzelinstallationen auch ein entsprechender Menüeintrag im Startmenü. Alternativ können Sie TeX Live über die GUI TeX Live Manager deinstallieren.

Dateiverknüpfungen

Wenn diese Option aktiviert wird, werden TeXworks und Dviout entweder die Standard-Programme für die entsprechenden Dateitypen oder erhalten einen Eintrag im „Öffnen mit“ Dialog.

Bitmap nach eps Konverter

Verschiedene Bitmap-Formate erhalten einen Eintrag bitmap2eps in Ihr „Öffnen mit“ Menü. Bitmap2eps ist ein einfaches Skript, das im Hintergrund sam2p oder bmeps aufruft.

Automatische Pfad-Anpassung

Erfordert keine manuellen Anpassungen.

Schreibschutz

Admin-gestützte Installationen sind gegen User-Zugriff schreibgeschützt.

7.2 Zusätzlich enthaltene Programme unter Windows

Zusätzlich werden unter Windows einige Programme installiert:

Perl und Ghostscript.

Da Perl und Ghostscript für TeX Live sehr wichtig sind, werden diese unter Windows mitgeliefert und intern von TeX Live benutzt. Die in TeX Live enthaltenen Programme, die diese Komponenten benötigen, „wissen“ wo sich diese befinden, ohne dass diese im System durch Umgebungsvariablen oder Einträge in der Registry sichtbar sind. Es handelt sich um für TeX Live abgespeckte Versionen, die zu keinen Konflikten mit eventuell bereits vorhandenen Installationen von Perl und Ghostscript führen sollten.

PS_View.

Weiterhin wird PS_View installiert, ein neuer PostScript- und PDF-Viewer, der Freie Software ist, siehe Abbildung 7.1.


PIC

Abbildung 7.1: PS_View, sogar sehr extreme Vergrößerungen sind möglich.


dviout

Weiterhin wird dviout, ein DVI-Viewer installiert. Wenn Sie am Anfang Dokumente mit dviout anschauen, werden häufig noch Fonts generiert, da keine fertigen Fontdateien für den Bildschirm mitgeliefert werden. Je mehr Fonts generiert wurden, desto seltener müssen Schriften nachgeneriert werden, so dass dieser Effekt nach einiger Zeit nur noch selten auftreten wird. Weitere Informationen finden Sie in der (sehr guten) Online-Hilfe.

TeXworks

TeXworks ist eine Oberfläche für TeX mit Editor und integriertem PDF-Viewer.

Tools für die Kommandozeile.

Für einige unter Linux/Unix üblicherweise vorhandene Programme werden Portierungen für Windows mitgeliefert. Dies sind z. B. gzip, zip, unzip und einige Programme für die Kommandozeile aus der xpdf-Suite, wie pdfinfo, und pdffonts. (Vom xpdf-Viewer selbst gibt es keine Version für Windows, aber der empfehlenswerte Sumatra PDF-Viewer basiert auf xpdf: https:///sumatrapdfreader.org.)

fc-cache, fc-list etc.

dienen xeTeX zur effizienteren Benutzung von Schriften. Mit fc-list können Sie die Namen der verfügbaren Schriften anzeigen, die Sie dann unter xeTeX mit dem Kommando font benutzen können. Mit fc-cache kann die Liste der verfügbaren Schriften aktualisiert werden.

7.3 Nutzerprofile unter Windows

Das Gegenstück von Windows zum HOME-Verzeichnis unter Unix ist das Verzeichnis %USERPROFILE%, ab Windows Vista liegt es meist in C:\Users\<username>.

In der Datei texmf.cnf und in Kpathsea allgemein wird ~ sowohl unter Unix und Windows korrekt aufgelöst.

7.4 Die Windows-Registry

Windows verwaltet fast all seine Konfigurationseinstellungen in der Registry. Diese besteht aus einem hierarchisch aufgebauten Baum von Schlüsseln, wobei mehrere dieser Registry-Bäume existieren. Die wichtigsten sind HKEY_CURRENT_USER und HKEY_LOCAL_MACHINE, oft abgekürzt als HKCU bzw. HKLM. Der HKCU-Teil der Registry wird im Home-Verzeichnis des Benutzers gespeichert (siehe Kapitel 7.3). HKLM liegt im Normalfall in einem Unterverzeichnis des Windows-Verzeichnisses.

In einigen Fällen sind Systeminformationen aus Umgebungsvariablen ersichtlich, in vielen anderen Fällen liegen diese Informationen aber in der Registry.

7.5 Windows Zugriffskontrolle

In neueren Versionen von Windows wird zwischen normalen Benutzern und Administratoren unterschieden, wobei nur letztere freien Zugang auf alle Teile des Betriebsystems haben. Im Gegensatz zu Unix ist es in der Praxis allerdings häufig so, dass Benutzer zur Klasse der Administratoren gehören und daher doch alle Freiheiten haben. Trotzdem haben wir einigen Aufwand getrieben, damit TeX Live auch unter Windows ohne Administrator-Rechte installiert werden kann.

Wenn das TeX Live Installationsprogramm mit Administrator-Rechten gestartet wird, gibt es eine Option für die Installation für alle Benutzer des Systems, d. h. Verknüpfungen, Menüs und Systemeinträge werden für alle Nutzer angelegt. Ansonsten werden diese nur für den aktuellen Benutzer angelegt.

Unabhängig davon wird grundsätzlich angenommen, dass das Wurzelverzeichnis von TeX Live unter %SystemDrive% liegen soll. Allerdings testet das Installationsprogramm, ob dieses Verzeichnis für den aktuellen Benutzer schreibbar ist.

Ein Problem entsteht, wenn TeX Live ohne Administrator-Rechte installiert wird und sich bereits ein TeX-System im systemweiten Suchpfad befindet. Windows benutzt zuerst den Suchpfad des Systems, erst dann den spezifischen Suchpfad des Nutzers, sodass hier immer zuerst das alte TeX-System gefunden wird. Der Workaround in diesem Fall ist, eine Verknüpfung zu einer Eingabeaufforderung zu erzeugen, bei der das TeX Live Programmverzeichnis vor den Standardsuchpfad geschrieben wird. Dies bedeutet aber, dass das neue TeX Live in diesem Fall nur in einer Eingabeaufforderung verfügbar ist, die über genau diese Verknüpfung gestartet wird. Die Verknüpfung für TeXworks (falls Sie dieses installieren) fügt ebenfalls automatisch TeX Live am Anfang des Suchpfades ein, so dass es direkt benutzbar ist.

Es gibt es noch einen weiteren Fallstrick. Selbst wenn Sie als Administrator angemeldet sind, müssen Sie bestimmte Programme trotzdem explizit mit Administratorrechten starten. Insofern ist es tatsächlich nicht sehr sinnvoll, sich als Administrator anzumelden. Klicken Sie stattdessen auf das gewünschte Programm (bzw. die gewünschte Verknüpfung) mit der rechten Maustaste, damit Sie die Option „Als Administrator ausführen...“ erhalten, um dieses mit Administratorrechten auszuführen.

7.6 Erhöhen des maximal verfügbaren Speichers unter Windows und Cygwin

Unter Windows und Cygwin (s. Kapitel 3.5 für die Installation unter Cygwin) kann es vorkommen, dass der den in TeX Live enthaltenen Programmen zur Verfügung gestellte Speicher nicht ausreicht. Dies kann z. B. passieren, wenn ein Dokument mit umfangreichen Schriften mit LuaTeX übersetzt wird.

Für Cygwin ist die Erhöhung des Maximalspeichers im Cygwin-Hanbuch beschrieben ( https://www.cygwin.com/cygwin-ug-net/setup-maxmem.html).

Unter Windows können Sie eine Datei moremem.reg mit folgenden vier Zeilen anlegen:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\Software\Cygwin]
"heap_chunk_in_mb"=dword:ffffff00

Führen Sie dann als Administrator regedit /s moremem.reg aus. (Falls der zur Verfügung stehende Speicher nur für den aktuellen Nutzer erhöht werden soll, verwenden Sie stattdessen einfach HKEY_CURRENT_USER).

Kapitel 8
Anleitung zum Web2C-System

Web2C besteht aus einer Reihe von Programmen, die zusammen ein komplettes TeX-System darstellen. Dazu gehören natürlich TeX, MetaFont, MetaPost, BibTeX usw.

Die erste Implementierung eines TeX-Systems in der Programmiersprache C stammt von Tomas Rokicki und datiert zurück in das Jahr 1987. Rokicki benutzte als Basis sog. Change-Files unter UNIX, die ursprünglich von Howard Trickey und Pavel Curtis entwickelt wurden. Tim Morgan hat dieses System, für das der Name Web-to-C eingeführt wurde, gepflegt. 1990 hat Karl Berry mit Unterstützung vieler Helfer die Weiterentwicklung übernommen und 1997 an Olaf Weber weitergegeben, der es 2006 wieder an Karl zurückgab.

Web2C läuft unter UNIX, 32-bit-Versionen von Windows, Mac OSX und auf weiteren Betriebssystemen. Es benutzt die Original-Quelldateien von Donald E. Knuth und weitere in der Sprache WEB entwickelte Programme als Basis und übersetzt diese in C-Quell-Code. Darüber hinaus bietet das System viele Makros und Funktionen zur Nutzung der originalen TeX-Software. Hier eine Liste der Basisprogramme eines TeX-Systems:

bibtex

Verwalten von Bibliographien

dvicopy

Umwandeln von virtuellen Zeichensätzen in DVI-Dateien

dvitomp

DVI-nach-MPX-Konverter (MetaPost-Bilder)

dvitype

Textanzeige aus DVI-Dateien

gftodvi

Erzeugen von Prüfausgaben für Zeichensätze

gftopk

Packen von Zeichensätzen

gftype

Anzeige von Zeichensätzen als ASCII-Graphik

mf

Zeichensatzerzeugung

mft

formatierte Ausgabe von MetaFont-Quellen

mpost

MetaFont-ähnliches Grafikprogramm

patgen

Erzeugen von Trennmustern

pktogf

Entpacken von Zeichensätzen

pktype

Anzeige gepackter Zeichensätze

pltotf

Umwandeln von Property-Listen in .tfm-Dateien

pooltype

Anzeige der Bildschirmtexte eines WEB-Programms

tangle

Konverter WEB nach Pascal

tex

TeX-Programm

tftopl

Umwandeln einer .tfm-Datei in eine Property-Liste

vftovp

Umwandeln eines virtuellen Zeichensatzes in eine Property-Liste

vptovf

Umwandeln einer Property-Liste in einen virtuellen Zeichensatz

weave

WEB-Code als TeX-Dokumentation

Die genaue Funktionsweise und die möglichen Parameter sind der Beschreibung der jeweiligen Pakete bzw. der Web2C-Dokumentation zu entnehmen. Trotzdem wird ein Überblick über Zusammenspiel und Funktionsweise der Web2C-Programme Ihnen sicherlich helfen, besser mit dem System zurechtzukommen.

Zunächst verstehen alle Programme die grundlegenden Parameter der GNU-Software:

--help

kurzer Hilfstext

--verbose

ausführliche Ausgaben beim Programmablauf

--version

nur Ausgabe der Versionsnummer

Die Programme des Web2C-Systems benutzen zur Lokalisierung der benötigten Dateien im Dateisystem die Kpathsea-Bibliothek ( https://tug.org/kpathsea). Diese Bibliothek optimiert und beschleunigt den Suchprozess im Dateisystem. Ihre Arbeitsweise wird durch einige Umgebungsvariablen und eine Konfigurationsdatei gesteuert. Web2C kann mehr als einen Dateibaum gleichzeitig verwalten und ermöglicht somit die schon beschriebene TeX Live-Installation unter Verwendung der DVD mit der Ablage modifizierter Konfigurationsdateien und zusätzlicher Zeichensätze in einem zweiten Dateibaum. Die Suche nach Dateien wird durch die Analyse der Datei ls-R beschleunigt, die in jedem Wurzelverzeichnis eines TeX-Dateibaums vorhanden ist. Sie enthält für jede Datei die genaue Position im Dateibaum relativ zum Wurzelverzeichnis.

8.1 Dateisuche mit der Kpathsea-Bibliothek

Wir beschreiben zunächst den grundlegenden Suchmechanismus der Kpathsea-Bibliothek.

Ein Suchpfad ist eine durch Kommata oder Semikola getrennte Liste von Pfadkomponenten, die üblicherweise Verzeichnisnamen darstellen. Ein Suchpfad kann sich aus vielen Komponenten zusammensetzen. Die Suche nach einer Datei my-file über den Suchpfad .:/dir bewirkt, dass Kpathsea jede Komponente nacheinander überprüft, also zunächst ./my-file und dann /dir/my-file. Als Ergebnis wird entweder die erste gefundene Datei oder eine Liste aller passenden Dateien geliefert.

Um auf allen Dateisystemen effizient arbeiten zu können, verwendet Kpathsea ggf. andere Datei-/Verzeichnis-Separatoren als : und /.

Beim Überprüfen einer Pfadkomponente p überprüft Kpathsea zunächst, ob eine Dateinamen-Datenbank (siehe auch Dateinamen-Datenbank auf Seite §) für die Pfadkomponente zuständig ist, d. h. beispielsweise steht die Datenbank in einem Verzeichnis, das im Pfad vor der zu überprüfenden Komponente p steht. In diesem Fall wird zur Bestimmung der Position der gesuchten Datei die Datenbank herangezogen.

Außer Verzeichnisnamen dürfen Pfadkomponenten für Kpathsea folgende Elemente enthalten: (verschachtelte) Vorgaben, Umgebungsvariablen, Werte aus der Konfigurationsdatei, Home-Verzeichnisse von Benutzern und Startverzeichnisse für eine rekursive Suche. Diese Elemente werden vor einer Dateisuche von Kpathsea in gewöhnliche Verzeichnis- oder Dateinamen expandiert. Diese Expansion wird in den folgenden Abschnitten erklärt, und zwar genau in der Reihenfolge, wie die Elemente auch von Kpathsea bearbeitet werden.

Beachten Sie, dass Kpathsea bei absoluten und explizit relativen Komponenten, d. h. wenn die Komponente mit den Zeichen /, ./ oder ../ beginnt, nur überprüft, ob die Datei existiert.

8.1.1 Bestandteile von Pfadkomponenten

Ein Suchpfad kann aus vielen verschiedenen Bestandteilen aufgebaut werden. Dies sind in der Reihenfolge, wie Kpathsea sie auswertet:

1.
eine benutzerdefinierte Umgebungsvariable, z. B. TEXINPUTS: Wird an den Inhalt der Variablen ein Punkt und ein Programmname angehängt, wie beispielsweise bei TEXINPUTS.latex, hat diese Form Vorrang vor den „gewöhnlichen“ Variablen.
2.
Einträge aus programmspezifischen Konfigurationsdateien, beispielsweise zum Programm dvips eine Zeile S /a:/b in der Konfigurationsdatei config.ps
3.
Einträge aus der Kpathsea-Konfigurationsdatei texmf.cnf, wie zum Beispiel TEXINPUTS=/c:/d (siehe folgenden Text).
4.
Einstellung beim Übersetzen der Programme.

Unter Verwendung der Parameter zur Fehlersuche können Sie sich diese Werte für einen Suchpfad auch anzeigen lassen. (Siehe dazu das Kapitel „Fehlersuche“ auf Seite §.)

8.1.2 Konfigurationsdateien

Die Kpathsea-Bibliothek liest zur Laufzeit die Konfigurationsdateien mit den Namen .../2022/texmf.cnf. Sollten Sie Anpassungen an den Standardvorgaben vornehmen müssen, ist dies der richtige Ort.

Die Haupt-Konfigurationsdatei befindet sich in .../2022/texmf-dist/web2c/texmf.cnf. Diese Datei sollten Sie nicht anpassen, da Ihre Anpassungen beim nächsten Update überschrieben werden.

Im Folgenden wird die Syntax der Datei texmf.cnf angegeben. Konsultieren Sie zum besseren Verständnis beim Lesen die auf der DVD enthaltene Konfigurationsdatei.

Der Ausschnitt einer Konfigurationsdatei demonstriert diese Möglichkeiten:

TEXMF              = {$TEXMFLOCAL,!!$TEXMFMAIN} TEXINPUTS.latex    = .;$TEXMF/tex/{latex,generic;}// TEXINPUTS.fontinst = .;$TEXMF/tex//;$TEXMF/fonts/afm// % e-TeX related files TEXINPUTS.elatex   = .;$TEXMF/{etex,tex}/{latex,generic;}// TEXINPUTS.etex     = .;$TEXMF/{etex,tex}/{eplain,plain,generic;}//

8.1.3 Expansion von Pfadkomponenten

Kpathsea verwendet in Suchpfaden ähnliche Zeichen und Konstrukte wie UNIX-Shells. Beispielsweise wird die Definition ~$USER/{foo,bar}//baz in alle Unterverzeichnisse von foo und bar unterhalb vom Home-Verzeichnis von $USER expandiert, die eine Datei oder ein Unterverzeichnis namens baz enthalten. Der Expansionsmechanismus wird im Folgenden erklärt.

8.1.4 Expansion der Voreinstellungen

Wenn der Suchpfad mit der höchsten Priorität (siehe hierzu „Bestandteile von Pfadkomponenten“ auf Seite ??) einen zusätzlichen (vorangestellten, nachgestellten oder verdoppelten) Doppelpunkt enthält, wird an dieser Stelle der Suchpfad eingefügt, der als nächstes in der Hierarchie folgt. Auch bei diesem gilt dieselbe Regel. Wenn beispielsweise die Umgebungsvariable

> setenv TEXINPUTS /home/karl:

gesetzt wird (hier: C-Shell) und in texmf.cnf die Variable TEXINPUTS folgenden Wert erhält

  .:$TEXMF//tex

dann lautet der Suchpfad schließlich:

  /home/karl:.:$TEXMF//tex

Da es sinnlos wäre, denselben Pfad mehrfach einzufügen, wird die Ersetzung nur einmal vorgenommen, und zwar in der Reihenfolge vorne, hinten und Mitte. Mehrfach verdoppelte Doppelpunkte bleiben unverändert.

8.1.5 Expansion geschweifter Klammern

Die Expansion geschweifter Klammern ist zur Definition mehrerer TeX-Hierarchien sehr nützlich. Beispielsweise wird |va,bw| zu |vaw:vbw|. Verschachtelungen sind dabei erlaubt. Diese Technik wird dazu benutzt, durch eine Zuweisung an $TEXMF verschiedene TeX-Hierarchien einzuführen. Als Beispiel finden Sie in texmf.cnf folgende Definition (etwas gekürzt, tatsächlich ist es etwas komplexer):

  TEXMF = {$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFDIST}

Eine Anwendung wie

  TEXINPUTS = .;$TEXMF/tex//

führt dann dazu, dass erst im aktuellen Verzeichnis gesucht wird, dann im gesamten Dateibaum $TEXMFVAR/tex, $TEXMFHOME/tex, $TEXMFLOCAL/tex und schließlich im gesamten Dateibaum $TEXMFDIST/tex (die letzten beiden nur in der Datenbank ls-R) durchsucht wird. Dadurch kann man bequem zwei parallel installierte TeX-Hierarchien durchsuchen, beispielsweise eine unveränderliche auf CDROM/DVD und eine dynamisch angepasste auf Festplatte, in der neue Programmversionen und zusätzliche Zeichensätze installiert werden. Durch die Verwendung der Variablen $TEXMF in allen Definitionen wird grundsätzlich zuerst der neuere Dateibaum durchsucht.

8.1.6 Expansion von Unterverzeichnissen

Zwei oder mehrere aufeinanderfolgende Schrägstriche (//) in einer Pfadkomponente, die auf einen Verzeichnisnamen d folgen, werden expandiert zu allen Unterverzeichnissen von d. Dieser Vorgang findet rekursiv statt, wobei erst alle Verzeichnisse auf einer Ebene bearbeitet werden, dann deren Unterverzeichnisse, usw. Auf den jeweiligen Ebenen ist nicht beeinflussbar, in welcher Reihenfolge die Unterverzeichnisse bearbeitet werden.

Wenn nach den Schrägstrichen Namen angegeben werden, dann werden nur Unterverzeichnisse mit passenden Namen in die Suche einbezogen. Beispielsweise wird /a//b in die Pfade /a/1/b, /a/2/b, /a/1/1/b usw. expandiert, aber nicht zu /a/b/c oder /a/1. (Jeweils vorausgesetzt, dass die Verzeichnisse existieren.)

Mehrere //-Konstruktionen innerhalb einer Pfadkomponente sind zulässig, allerdings nicht am Pfadanfang.

8.1.7 Liste der Sonderzeichen und ihre Bedeutung: eine Zusammenfassung

Die folgende Zusammenfassung fasst alle Sonderzeichen zusammen, die in den Kpathsea -Konfigurationsdateien auftreten können:

:

Trennzeichen für Pfadkomponenten; als erstes oder letztes Zeichen im Pfad bewirkt es die Expansion der Voreinstellungen.

;

Trennzeichen für Pfadkomponenten für andere Rechnerplattformen als UNIX (Verwendung wie »:«)

$

Expansion von Variableninhalten

~

Home-Verzeichnis eines Benutzers (Tilde)

{...}

Expansion geschweifter Klammern: beispielsweise wird |a1,2b| zu |a1b:a2b|.

//

Expansion von Unterverzeichnissen: tritt niemals am Anfang einer Pfadkomponente auf.

%

Kommentar

\

Konkatenation mit Folgezeile(n)

!!

Einschränkung der Suche ausschließlich auf die Dateinamen- Datenbank: Das Dateisystem wird nicht durchsucht!

8.2 Dateinamen-Datenbanken

Kpathsea unternimmt etliche Anstrengungen, um den Zugriff auf Festplatte und DVD zur Suche nach Dateien zu reduzieren. Auf TeX-Systemen mit vielen Unterverzeichnissen kann die Suche in jedem möglichen Verzeichnis nach einer bestimmten Datei eine lange Zeit in Anspruch nehmen, besonders wenn einige Hundert Zeichensatzverzeichnisse durchforstet werden müssen. Um dieses Problem abzumildern, benutzt Kpathsea eine Art Datenbankdatei namens ls-R, die die Zuordnung von Dateinamen auf Verzeichnisse enthält. Dadurch muss nicht jedesmal die Festplatte durchsucht werden.

Eine zweite Datenbank in der Datei aliases kann eine Zuordnung zwischen den Namen in ls-R und weiteren Namen vornehmen und so beispielsweise hilfreich bei der Umsetzung von 8.3-DOS-Dateinamen auf die „echten“, aussagekräftigen Dateinamen zur Seite stehen.

8.2.1 Die ls-R-Datenbank

Wie schon öfters erwähnt, muss die Dateinamen-Datenbank in der Datei ls-R gespeichert sein. Sie sollten eine solche Datenbank für jede TeX-Hierarchie (normalerweise in $TEXMF) Ihres Systems anlegen. Kpathsea sucht die Datenbanken ls-R über den Pfad TEXMFDBS.

Es wird empfohlen, die Pflege der ls-R-Dateien dem mitgelieferten Skript mktexlsr zu überlassen. Dieses Skript wird automatisch von den verschiedenen mktex*-Skripten aufgerufen. Das Skript ruft grob gesagt den Befehl

cd /your/texmf/root && ls -LAR ./ >ls-R

auf, falls das Kommando ls Ihres Rechners eine Ausgabe im richtigen Format liefert. (So wie das GNU-ls.) Wenn Sie ganz sichergehen wollen, dass die Datenbank immer auf dem neuesten Stand ist, sollten Sie sie in regelmäßigen Abständen mit Hilfe eines crontab-Eintrags aktualisieren lassen. Dadurch wird nach einer manuellen Paketinstallation trotzdem sichergestellt, dass die Datenbank aktuell ist.

Wenn eine Datei nicht über die Datenbank gefunden wird, sucht Kpathsea normalerweise auf der Festplatte weiter. Wenn eine Pfadkomponente mit !! beginnt, wird dagegen niemals die Festplatte durchsucht.

8.2.2 kpsewhich: Dateisuche

Mit dem Programm kpsewhich können Sie unabhängig vom Aufruf irgendeines TeX-Programms nach Dateien in der TeX-Hierarchie suchen (als schnellere Alternative zu dem Befehl find).

> kpsewhich option filename

Die Optionen werden entweder mit - oder mit -- eingeleitet. Jede eindeutige Abkürzung ist zulässig.

Argumente der Kommandozeile, die keine Optionen darstellen, werden als Dateinamen interpretiert. Für jeden Dateinamen wird der erste passende Pfad gemeldet. Um eine Liste aller passenden Pfade zu erhalten, müssen Sie das UNIX-Kommando find aufrufen.

Im Folgenden werden die häufiger benutzten Optionen beschrieben.

--dpi=num


Stellt die Auflösung für die Suche nach Zeichensätzen (nur .gf oder .pk) auf num dpi. Alternativ kann die Option -D (kommt von dvips) benutzt werden. Voreinstellung ist 600.

--format=name


Setzt das Format zur Suche auf name. Per Voreinstellung versucht kpsewhich das Format über den Dateinamen zu erschließen. Bei Formaten ohne zugeordnete Namensendung wie den zu MetaPost gehörenden Dateien und den Konfigurationsdateien zu dvips müssen Sie den entsprechenden Namen so eingeben, wie er Kpathsea bekannt ist.

--mode=string


Setzt für die Zeichensatzsuche den Generierungsmodus (betrifft nur .gf- oder .pk-Dateien). Normalerweise werden alle Zeichensätze gemeldet.

--must-exist


Es wird versucht, die Dateien notfalls durch eine Suche auf der Festplatte zu finden. Normalerweise wird nur die ls-R-Datenbank konsultiert.

--path=string


Sucht entlang des angegebenen Pfads statt des Standardpfads, der auf Grund der Endung gewählt wird. Alle Expansionen sind zulässig. Bei Verwendung der Option --path darf nicht die Option --format angegeben werden.

--progname=name


Setzt den Programmnamen für die genauere Variablenspezifikation über
.Programmname. Voreinstellung ist kpsewhich.

--show-path=name


Zeigt den Suchpfad für die angegebene Namensendung. Diese kann entweder als Namensendung (.pk, .vf, usw.) oder als Name (wie bei der Option --format) spezifiziert werden.

--debug=num


Legt den Umfang für die Fehlersuche fest.

8.2.3 Anwendungsbeispiele

Wir schauen uns nun die Funktionsweise von Kpathsea anhand einiger Beispiele an.

> kpsewhich  article.cls
   /usr/local/texmf-dist/tex/latex/base/article.cls

Wir suchen unter den TeX-Quelldateien nach der Datei article.cls. Da die Namensendung .cls eindeutig ist, müssen wir den Typ .tex nicht angeben. Die texmf-dist-Hierarchie enthält die Datei im Unterverzeichnis tex/latex/base. Ähnlich bereiten die folgenden Beispiele aufgrund eindeutiger Namensendungen keine Probleme.

> kpsewhich array.sty
   /usr/local/texmf-dist/tex/latex/tools/array.sty
> kpsewhich latin1.def
   /usr/local/texmf-dist/tex/latex/base/latin1.def
> kpsewhich size10.clo
   /usr/local/texmf-dist/tex/latex/base/size10.clo
> kpsewhich small2e.tex
   /usr/local/texmf-dist/tex/latex/base/small2e.tex
> kpsewhich tugboat.bib
   /usr/local/texmf-dist/bibtex/bib/beebe/tugboat.bib

Beim letzten Beispiel handelt es sich übrigens um eine BibTeX-Literaturdatenbank für TUGBoat-Artikel.

> kpsewhich cmr10.pk

Zeichensatzdateien mit der Namensendung .pk werden von Anzeige- oder Druckaufbereitungsprogrammen wie dvips und xdvi verwendet. Nachdem wir aufgrund der Voreinstellung keine .pk-Dateien verwenden, sondern die PS-Type1-Zeichensätze, die auf der DVD enthalten sind, wird auch keine .pk-Datei angezeigt.

> kpsewhich wsuipa10.pk
 /usr/local/texmf-var/fonts/pk/ljfour/public/wsuipa/wsuipa10.600pk
Für diesen Zeichensatz (Teil der IPA-Fonts (IPA: International Phonetic Alphabet) von der Universität von Washington) liegen noch keine Type1-Umsetzungen vor und .pk-Dateien müssen generiert werden. Da unser voreingestellter MetaFont-Modus ljfour eine Auflösung von 600 dpi besitzt, finden wir (nachdem er schon einmal gebraucht und automatisch erzeugt wurde) eine entsprechende Instanz dieses Zeichensatzes.

> kpsewhich -dpi=300 wsuipa10.pk

Durch die Angabe »-dpi=300« interessieren wir uns nur für Zeichensätze mit der Auflösung 300 dpi. Es wurde keiner gefunden. Programme wie dvips oder xdvi lassen einen solchen fehlenden Zeichensatz durch den Aufruf des Skripts mktexpk mit entsprechenden Parametern automatisch erzeugen.

Als nächstes wenden wir uns den Header- und Konfigurationsdateien von dvips zu.

Zunächst suchen wir nach der Konfiguration für die TeX-Unterstützung, dem Prolog tex.pro. Danach suchen wir die allgemeine Konfigurationsdatei (config.ps) und schließlich die PostScript-Zeichensatzzuordnungsdatei psfonts.map. Dateien dieser Art haben seit der 2004er-Version der TeX Live ihre eigenen Suchpfade und einen neuen Aufbewahrungsort im texmf-Baum. Da die Namensendung .ps nicht eindeutig ist, müssen wir den gewünschten Typ (dvips config) für die Datei config.ps spezifizieren.

> kpsewhich tex.pro
   /usr/local/texmf/dvips/base/tex.pro
> kpsewhich --format="dvips config" config.ps
   /usr/local/texmf/dvips/config/config.ps
> kpsewhich psfonts.map
   /usr/local/texmf/fonts/map/dvips/updmap/psfonts.map

Jetzt suchen wir nach den Dateien für den PostScript-Zeichensatz »URW Times«. Nach dem Namensschema von Karl Berry beginnen die Namen mit »utm«. Zunächst suchen wir die Konfigurationsdatei, die den Namen der Zeichensatzzuordnungsdatei enthält.

> kpsewhich --format="dvips config" config.utm
   /usr/local/texmf-dist/dvips/psnfss/config.utm

Diese Datei enthält folgende Anweisung:

   p +utm.map

Die angegebene Datei utm.map wollen wir als nächstes suchen:

> kpsewhich utm.map
   /usr/local/texmf-dist/fonts/map/dvips/times/utm.map

Diese Zuordnungsdatei wird im Unterverzeichnis urw bei den Hilfsdateien für dvips gefunden. Sie enthält die Dateinamen der Type1-PS-Zeichensätze, die für URW Times benutzt werden. Ein kleiner Auszug aus dieser Datei:

  utmb8r  NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmbi8r NimbusRomNo9L-MediItal... <utmbi8a.pfb
  utmr8r  NimbusRomNo9L-Regu    ... <utmr8a.pfb
  utmri8r NimbusRomNo9L-ReguItal... <utmri8a.pfb
  utmbo8r NimbusRomNo9L-Medi    ... <utmb8a.pfb
  utmro8r NimbusRomNo9L-Regu    ... <utmr8a.pfb

Wenn wir jetzt beispielsweise nach dem Zeichensatz Times Regular (utmr8a.pfb) suchen, finden wir ihn im Verzeichnis texmf unter den Type1-Zeichensätzen:

> kpsewhich utmr8a.pfb
 /usr/local/texmf-dist/fonts/type1/urw/times/utmr8a.pfb

Diese Beispiele sollten deutlich gemacht haben, wie leicht bestimmte Dateien im TeX-Dateibaum gefunden werden können. Dies ist sehr wichtig, wenn Sie den Verdacht haben, dass eine falsche Version einer Datei verwendet wird: Sie lassen sich einfach die verwendete Datei von kpsewhich anzeigen.

8.2.4 Fehlersuche

Manchmal ist wichtig, bis ins Detail nachzuvollziehen, wie ein Programm eine bestimmte Datei findet. Zu diesem Zweck bietet die Kpathsea-Bibliothek verschiedene Stufen für den Umfang der Fehlersuche an.

 1

stat-Aufrufe (Überprüfung, ob Datei existiert); mit einer aktuellen ls-R-Datenbank sollten Sie fast keine Meldungen erhalten.

 2

Zugriffe auf Suchlisten (wie ls-R-Datenbanken, Zuordnungsdateien (.map), Konfigurationsdateien)

 4

Öffnen und Schließen von Dateien

 8

Auflisten der voreingestellten Pfade für Extensionen

16

Verzeichnisliste für jede Pfadkomponente (nur bei Festplattenzugriff)

32

Suchaktionen nach Dateien

64

Werte von Variablen.

Durch die Angabe von -1 setzen Sie alle Stufen gleichzeitig. Für eine effiziente Fehlersuche sollten Sie sich auf die wichtigsten Ausgaben beschränken.

Für dvips gibt es einen ähnlichen Mechanismus zur Erzeugung von Analysemeldungen, um herauszufinden, warum bestimmte Dateien geöffnet wurden bzw. wo vielleicht das Problem liegt, wenn Dateien nicht gefunden werden.

Da fast alle Programme die Kpathsea-Bibliothek benutzen, können Sie die gewünschte Stufe auch über die Umgebungsvariable KPATHSEA_DEBUG einstellen, indem Sie einen der Werte oder eine additive Kombination spezifizieren.

Anmerkung für Windows-Benutzer: Es ist nicht einfach, alle Meldungen in eine Datei umzulenken. Für die Fehlersuche jedoch ist die folgende (temporäre!) Vereinbarung sinnvoll:

SET KPATHSEA_DEBUG_OUTPUT=err.log

Wir betrachten als Beispiel eine kleine LaTeX-Quelldatei mit dem Namen hello-world.tex mit folgendem Inhalt:

  \documentclass{article}
  \begin{document}
  Hello World!
  \end{document}

Diese Datei verwendet nur einen Zeichensatz, nämlich cmr10. Wir sehen uns jetzt einmal genau an, wie dvips die PostScript-Datei erzeugt. Da wir die Type 1-Variante der Computer-Modern-Roman-Zeichensätze verwenden wollen, haben wir die Option -Pcms verwendet.

> dvips -d4100 hello-world -Pcms -o

Hier haben wir als Stufe zur Fehlersuche eine Kombination der Stufe 4 von dvips, siehe dvips-Handbuch.

Die Ausgabe sieht ungefähr so wie in Abbildung 8.1 dargestellt aus (die Ausgabe wurde für einen besseren Überblick etwas umgestaltet).


debug:start search(file=texmf.cnf, must_exist=1, find_all=1,
  path=.:/usr/local/bin/texlive:/usr/local/bin:
       /usr/local/bin/texmf/web2c:/usr/local:
       /usr/local/texmf/web2c:/.:/./teTeX/TeX/texmf/web2c:).
kdebug:start search(file=ls-R, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(ls-R) =>/usr/local/texmf/ls-R
kdebug:start search(file=aliases, must_exist=1, find_all=1,
  path=~/tex:/usr/local/texmf).
kdebug:search(aliases) => /usr/local/texmf/aliases
kdebug:start search(file=config.ps, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
kdebug:search(config.ps) => /usr/local/texmf/dvips/config/config.ps
kdebug:start search(file=/root/.dvipsrc, must_exist=0, find_all=0,
  path=.:~/tex:!!/usr/local/texmf/dvips//).
search(file=/home/goossens/.dvipsrc, must_exist=1, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search($HOME/.dvipsrc) =>
kdebug:start search(file=config.cms, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//).
kdebug:search(config.cms)
=>/usr/local/texmf/dvips/cms/config.cms
Abbildung 8.1: Suche nach Konfigurationsdateien.
kdebug:start search(file=cmr10.tfm, must\_exist=1, find\_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must\_exist=0, find\_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must\_exist=0, find\_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]
Abbildung 8.2: Suche nach Font-Dateien.

Zunächst sucht dvips (bzw. Kpathsea) seine Konfigurationsdateien, nämlich
texmf.cnf (das die Pfade der anderen Dateien enthält), dann die Dateinamen- Datenbank ls-R (zur Optimierung der Suche) und die Datei aliases, mit deren Hilfe für eine Datei mehrere Namen vereinbart werden können, z. B. um die kurzen 8.3-DOS-Namen mit aussagefähigen, langen Namen zu assoziieren. Danach wird die allgemeine dvips-Konfigurationsdatei config.ps, anschließend die benutzerspezifische Konfigurationsdatei .dvipsrc (wird hier nicht gefunden) gesucht. Als letztes sucht dvips die Zuordnungsdatei für Computer-Modern-PostScript-Zeichensätze config.cms (bedingt durch die Option -Pcms beim Aufruf von dvips). Diese Datei enthält die Dateinamen der Listen, die die Zuordnung zwischen Dateinamen und Zeichensatznamen herstellen.

> more /usr/local/texmf/dvips/cms/config.cms
   p +ams.map
   p +cms.map
   p +cmbkm.map
   p +amsbkm.map

dvips versucht, diese Dateien und zusätzlich die allgemeine Zeichensatzzuordnungstabelle psfonts.map zu laden, die immer konsultiert wird. Der letzte Teil von Kapitel 8.2.3 erklärt diese Tabellen genauer.

Jetzt erfolgt die normale Startmeldung von dvips:

dvips(k) 5.94a
kpathsea version
Copyright (C) 2003 Radical Eye Software.
...

Danach wird nach texc.pro gesucht:


kdebug:start search(file=texc.pro, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(texc.pro) => /usr/local/texmf/dvips/base/texc.pro

Dann gibt dvips Datum und Uhrzeit aus und meldet den Dateinamen der erzeugten PostScript-Datei hello-world.ps. Jetzt wird die Zeichensatzdatei cmr10 benötigt, die dvips als „resident“ meldet.


TeX output 1998.02.26:1204’ -> hello-world.ps
Defining font () cmr10 at 10.0pt
Font cmr10 <CMR10> is resident.

Es geht weiter mit cmr10.tfm und einigen weiteren Prologdateien, deren Ausgaben wir hier weglassen. Letztlich wird die Type 1-Zeichensatzdatei cmr10.pfb gesucht (und gefunden) und in die Ausgabedatei integriert (siehe letzte Zeile).


kdebug:start search(file=cmr10.tfm, must_exist=1, find_all=0,
  path=.:~/tex/fonts/tfm//:!!/usr/local/texmf/fonts/tfm//:
       /var/tex/fonts/tfm//).
kdebug:search(cmr10.tfm) => /usr/local/texmf/fonts/tfm/public/cm/cmr10.tfm
kdebug:start search(file=texps.pro, must_exist=0, find_all=0,
   ...
<texps.pro>
kdebug:start search(file=cmr10.pfb, must_exist=0, find_all=0,
  path=.:~/tex/dvips//:!!/usr/local/texmf/dvips//:
       ~/tex/fonts/type1//:!!/usr/local/texmf/fonts/type1//).
kdebug:search(cmr10.pfb) => /usr/local/texmf/fonts/type1/public/cm/cmr10.pfb
<cmr10.pfb>[1]

8.3 Einstellungen zur Laufzeit

Zu den willkommenen Erweiterungen von Web2C zählt die Möglichkeit, zur Laufzeit einige Speichergrößen über die Datei texmf.cnf anpassen zu können (insbesondere die Größe einiger Stacks). Eine ausführliche Liste der veränderbaren Parameter finden Sie in der Datei texmf.cnf. Die wichtigsten Werte sind:

main_memory

Arbeitsspeicher für TeX, MetaFont und MetaPost in Worten: Für jede Einstellung muss eine eigene Format-Datei erstellt werden. Allerdings können Sie mehrere Versionen von TeX unter verschiedenen Namen erzeugen und in der Konfigurationsdatei jeweils eigene Einträge vorsehen. Hier gibt es ein Monster-TeX namens hugetex mit der zugehörigen Format-Datei hugetex.fmt, wobei der spezielle Wert der Variablen main_memory dann aus der Datei texmf.cnf gelesen wird.

extra_mem_bot

Extraspeicher für „große“ TeX-Datenstrukturen wie Boxen, Glue, Breakpoints. Besonders bei Anwendung von PiCTeXsollte dieser Wert erhöht werden.

font_mem_size

Anzahl der Worte für Speicherung von Zeichensatzinformationen: Entspricht ungefähr dem Speicherbedarf der gelesenen TFM-Dateien.

hash_extra

Zusätzlicher Platz für Suchlisten: In der Hauptliste können ca. 10000 Einträge verwaltet werden. Bei einem Buch mit vielen Querverweisen reicht dieser Platz unter Umständen nicht aus. Die Voreinstellung für hash_extra ist 60000.

Natürlich sind diese Parameter kein Ersatz für eine wirklich dynamische Speicherverwaltung. Mit der gegenwärtigen Version von TeX ist dieses Konzept aber nur extrem schwer zu implementieren, darum stellt dieses Verfahren eine praktikable Lösung dar.

Dies ist eigentlich eine Vereinfachung. The texmf.cnf file we distribute in TeX Live uses $TEXMFDOTDIR instead of just ., as in:


TEXINPUTS=$TEXMFDOTDIR;$TEXMF/tex//
(In the distributed file, the second path element is also slightly more complicated than $TEXMF/tex//. But that’s minor; here we want to discuss the $TEXMFDOTDIR feature.)

The reason to use the variable $TEXMFDOTDIR in the path definitions instead of simply . is purely so that it can be overridden. For example, a complex document may have many source files arranged in many subdirectories. To handle that, you can set TEXMFDOTDIR to .// (for example, in the environment when you build the document) and they will all get searched. (Warning: don’t use .// by default; it’s usually highly undesirable, and potentially insecure, to search through all subdirectories for an arbitrary document.)

As another example, you may wish not to search the current directory at all, e.g., if you have arranged for all the files to be found via explicit paths. You can set $TEXMFDOTDIR to, say, /nonesuch or any other nonexistent directory for this.

The default value of $TEXMFDOTDIR is just ., as set in our texmf.cnf.

Kapitel 9
Danksagungen

Die TeX Live ist eine gemeinsame Arbeit faktisch aller TeX Users Groups.

Die Entwicklung des vorliegende TeX Live-Release wurde von Karl Berry geleitet; die übrigen Haupt-Mitarbeiter sind im Folgenden aufgelistet.

Ausführbare Programme (Executables):

Marc Baudoin (amd64-netbsd, i386-netbsd), Ken Brown (i386-cygwin, x86_64-cygwin), Simon Dales (armhf-linux), Johannes Hielscher (aarch64-linux), Akira Kakuto (win32), Dick Koch (universal-darwin), Nikola Lečić (amd64-freebsd, i386-freebsd), Henri Menke (x86_64-linuxmusl), Mojca Miklavec (amd64-freebsd, i386-freebsd, x86_64-darwinlegacy, i386-solaris, x86_64-solaris, sparc-solaris), Norbert Preining (i386-linux, x86_64-linux, x86_64-linuxmusl). Thomas Schmitz (powerpc-linux), Boris Veytsman (armel-linux).

Informationen dazu, wie Binaries für TeX Live erzeugt werden, finden sich unter https://tug.org/texlive/build.html.

Übersetzungen der Dokumentation:

Takuto Asakura (Japanese), Denis Bitouzé & Patrick Bideault (French), Carlos Enriquez Figueras (Spanish), Jjgod Jiang, Jinsong Zhao, Yue Wang, & Helin Gai (Chinese), Nikola Lečić (Serbian), Marco Pallante & Carla Maggi (Italian), Petr Sojka & Jan Busa (Czech/Slovak), Boris Veytsman (Russian), Zofia Walczak (Polish), Uwe Ziegenhagen (German).

Natürlich haben wir am meisten Donald Knuth zu danken, einmal dafür, dass er TeX erfand und dann dafür, dass er es der Welt schenkte.

Kapitel 10
Geschichtliches

Diese Ausgabe der TeX Live ist in Zusammenarbeit der TeX Users Group (TUG), der UKTUG, der französischen TeX-Vereinigung GUTenberg und der deutschsprachigen TeX-Anwendervereinigung (DANTE e. V.) unter Mithilfe der niederländischen, tschechischen/slowakischen, indischen, polnischen und russischen TeX-Benutzergruppen entstanden.

10.1 Vergangenheit

Die niederländische TeX-Benutzergruppe hatte Ende 1993 mit der Produktion der 4AllTeX-CD-ROM für MS-DOS die Diskussion angeregt, eine einzige CD-ROM für alle Rechnersysteme zu entwickeln. Zum damaligen Zeitpunkt war dieses Ziel zu hoch gesteckt, doch immerhin entstand aus dieser Diskussion nicht nur die sehr erfolgreiche 4AllTeX-CD-ROM, sondern auch die TUG-Arbeitsgruppe zur Definition der TeX Directory Structure TDS, die die zur Arbeit mit TeX notwendigen und hilfreichen Dateien in eine konsistente und handhabbare Verzeichnisstruktur einbettet. Das »Final Draft«-Dokument, das diese Verzeichnisstruktur festlegt, wurde in der Dezember-Ausgabe 1995 der TUGBoat veröffentlicht. Schon frühzeitig war den Beteiligten klar, dass eine CD-ROM auf der Basis der TDS sehr zu begrüßen wäre. Die TeX Live-CD-ROM war das direkte Resultat der Beratungen der TDS-Arbeitsgruppe. Außerdem hat der Erfolg der 4AllTeX-CD-ROM klargemacht, dass ein ähnliches System auch für UNIX-Benutzer eine Erleichterung darstellen würde. Dies war der zweite Beweggrund für die TeX Live-CD-ROM.

Im Herbst 1995 wurde das Projekt, eine TDS-basierte UNIX-CD-ROM zu entwickeln, in Angriff genommen. Sehr schnell stießen die Verantwortlichen auf das teTeX-System von Thomas Esser als idealen Ausgangspunkt für diese Arbeit, weil es verschiedene Rechnerplattformen unterstützte und für die Arbeit mit verschiedenen Dateisystemen vorgesehen war. Anfang 1996 wurde in Zusammenarbeit mit Thomas Esser ernsthaft mit der Arbeit begonnen und im Mai 1996 die erste Ausgabe der CDROM veröffentlicht.

Anfang 1997 stellte Karl Berry eine neue Version seines Web2C-TeX-Systems vor, das schon nahezu alle Ausstattungsmerkmale aufwies, die Thomas Esser mit teTeX verwirklicht hatte. Die TUG entschied sich daraufhin, die zweite Version der CDROM auf der Basis von Web2C unter Verwendung des Installations-Skripts texconfig aus dem teTeX-Paket zu entwickeln.

Die dritte Ausgabe basierte auf der inzwischen von Olaf Weber gepflegten und weiter entwickelten Web2C Version 7.2; TeX Live unterstützte fast alle Eigenschaften der zur selben Zeit entstandenen neuen Version von teTeX.

Die vierte Ausgabe folgte demselben Schema, indem ihr neue Versionen von teTeX und Web2C (7.5) zugrunde lagen. Fast die gesamte CDROM wurde einer kritischen Überprüfung unterzogen, wobei besonders darauf geachtet wurde, dass doppelte Dateien entfernt wurden und die Einordnung der Pakete konsistent erfolgte. Zudem enthielt diese Ausgabe ein komplettes Windows-Setup.

Für die fünfte Ausgabe im März 2000 wurden wiederum große Teile der CDROM ersetzt, wobei Hunderte von überarbeiteten Paketen aufgenommen wurden. Ω, pdfTeX und Teile der TeX-Support-Programme (hier insbesondere xdvi, dvips und tex4ht) lagen in neuer Version vor. Die Hauptänderung bei der TeX Live 5 betraf die non-free-Software. Alles auf dieser CDROM war nun in Übereinstimmung mit den Debian Free Software Guidelines ( https://www.debian.org/intro/free). Wir haben unser Bestes versucht, die Lizenzbedingungen aller Pakete zu überprüfen, sind aber dankbar, wenn wir auf Fehler hingewiesen werden.

Die sechste Ausgabe der TeX Live vom Juli/August 2001 enthielt die neuesten Versionen aller Pakete und Programme. Das neue Installationskonzept stellte die größte Änderung dar: Der Benutzer konnte nun viel genauer gewünschte bzw. nicht erwünschte Sammlungen und Pakete auswählen. Dabei wurden die sprachspezifischen Sammlungen komplett überarbeitet, so dass sie jetzt automatisch nicht nur Makros, Fonts usw. installierten, sondern zusätzlich die notwendigen Einträge in language.dat vornahmen.

Die siebte Ausgabe vom Mai 2002 enthielt als größte Änderungen Mac OSX und wieder unzählige Updates aller Pakete und Programme.

Ein wesentliches Ziel war zudem die Wiedererstellung einer gemeinsamen Quelle mit teTeX, um das Auseinanderlaufen seit TeX Live 5 und TeX Live 6 zu korrigieren.

10.2 TeX Live 2003

Im Jahr 2003 war die Flut von Updates und neuen Paketen so groß geworden, dass wir feststellen mussten: »TeX Live passt nicht mehr auf eine einzelne CDROM«.

Des Weiteren:

10.3 TeX Live 2004

10.4 TeX Live 2005

Im Jahr 2005 gab es – wie üblich – viele aktualisierte Pakete und Programme. Die Struktur des Systems blieb weitgehend gleich, mit folgenden Ausnahmen:

10.5 TeX Live 2006–2007

Der wichtigeste Neuzuwachs in der Ausgabe 2006–2007 von TeX Live war das XeTeX Programm, verfügbar durch die xetex und xelatex Programme; siehe https://scripts.sil.org/xetex.

Auch MetaPost erhielt ein bemerkenswertes Update, mit weiteren geplannten Änderungen ( https://tug.org/metapost/articles), ebenso pdfTeX ( https://tug.org/applications/pdftex).

Das (plain) tex-Programm liest nicht mehr erste Zeilen mit %& um das Format zu bestimmen. Es ist ein reines Knuth-TeX. (LaTeX und alle anderen Formate lesen weiterhin %&-Zeilen).

Außerdem wurden wie üblich hunderte von Paketen und Programmen auf einen neueren Stand gebracht. Für weitere Updates wenden Sie sich bitte an CTAN ( https://www.ctan.org).

Die Entwicklungsumgebung wurde auf Subversion umgestellt, was ein Webinterface für den Entwicklungsbaum beisteuerte. Dieses Webinterface ist von der Homepage verlinkt. Obwohl dieser Umstieg in der Distribution nicht zu erkennen ist, erwarten wir uns ein stabiles Fundament für die Entwicklung in den nächsten Jahren.

Schließlich hat im Mai 2006 Thomas Esser das Ende seiner Entwicklung von teTeX ( https://tug.org/tetex) angekündigt. Als Konsequenz ist das Interesse an TeX Live, besonders unter den GNU/Linux-Distributoren angestiegen. (TeX Live bietet nun ein tetex-Installationsschema, dass annähernd den Umfang von teTeX umfasst.) Wir hoffen dass dies schlussendlich zu einer Verbesserung der TeX-Umgebung für jederman führt.

10.6 TeX Live 2008

Die komplette Infrastruktur von TeX Live wurde 2008 neu entwickelt. Die gesamten Daten, die für die Installation benötigt werden, finden sich nun in einer einzigen Textdatei mit dem Namen tlpkg/texlive.tlpdb.

Dies ermöglicht es unter anderem, ein Update einer installierten Version von TeX Live über das Internet durchzuführen, was für MiKTeX schon seit Jahren möglich ist. Wir planen regelmäßige Updates bereitzustellen, wenn Pakete auf CTAN aktualisiert werden oder neu erscheinen.

Als neues Programm ist LuaTeX ( https://luatex.org) enthalten, das neben neuen Möglichkeiten innerhalb des Satzsystems eine hervorragende Skriptsprache zur Verfügung stellt, die inner- und außerhalb von TeX benutzt werden kann.

Die Unterstützung von TeX Live für Windows und Unix ist mittlerweile praktisch äquivalent. Die meisten Perl- und Lua-Skripte können nun auch unter Windows verwendet werden, da innerhalb von TeX Live Perl integriert ist.

Das neue tlmgr-Programm (Kapitel 6) ist eine komplette Oberfläche zum Verwalten von TeX Live nach der Installation. Es ermöglicht das Aktualisieren von Paketen, die Neugenerierung von Formatdateien, Fontmaps und die Konfiguration der TeX-Unterstützung für verschiedene Sprachen.

Nach der Einführung von tlmgr sind die Funktionen von texconfig zur Konfiguration von Formatdateien und Trennmustern deaktiviert worden.

Der Index-Prozessor xindy ( https://xindy.sourceforge.net/) ist nun für die meisten Betriebssysteme integriert.

Das Programm kpsewhich kann nun alle Fundstellen für eine gesuchte Datei anzeigen (Option –all) oder die Suche auf ein bestimmtes Verzeichnis einschränken (Option –subdir).

Das Programm dvipdfmx kann nun Informationen über die Bounding Box liefern, was über die Kommandozeile mit dem Befehl extractbb aufgerufen werden kann; dies war die letzte Funktion von dvipdfm, die noch nicht in dvipdfmx vorhanden war.

Die Font-Aliasnamen Times-Roman, Helvetica usw. wurden abgeschafft.

Das Makro-Format platex wurde entfernt, um den Namenskonflikt mit dem japanischen platex auf zu lösen; Unterstützung für polnisch wird nun vom Paket polski zur Verfügung gestellt.

Die WEB string pool files wurden in die Programme einkompiliert, um Updates zu vereinfachen.

Und abschließend sind die Änderungen von Donald Knuth in seinem TeX tuneup of 2008 in TeX Live eingearbeitet, https://tug.org/TUGboat/Articles/tb29-2/tb92knut.pdf.

10.7 TeX Live 2009

Das Standardausgabeformat für LuaAllTeX ist nun PDF. Hier entfalten die Erweiterungen von LuaAllTeX , wie die Unterstützung von OpenType, ihre volle Wirkung. Die neuen Programme dviluatex bzw. dvilualatex erzeugen wie früher DVI als Ausgabeformat. Die Homepage von LuaTeX finden Sie unter https://luatex.org.

Nach Rücksprache mit den Autoren von Omega wurden Omega und das Format Lambda entfernt. Die aktuelle Version von Aleph und Lamed ist weiterhin in TeX Live enthalten, zusammen mit einigen Hilfsprogrammen von Omega.

Eine neue Version der AMS Type 1-Fonts wird von TeX Live mitgeliefert, inklusive der Computer Modern-Schriften. Donald Knuth hat in den letzten Jahren die Gestalt einiger Zeichen in den Metafont-Quellen geändert, diese wurden übernommen. Weiterhin wurde das so genannte Hinting verbessert. Die Euler-Schriften wurden kürzlich ebenfalls sorgsam überarbeitet (siehe https://tug.org/TUGboat/Articles/tb29-2/tb92hagen-euler.pdf). In allen Fällen blieben die Fontmetriken unverändert. Mehr zu den AMS-Fonts finden Sie unter https://www.ams.org/tex/amsfonts.html.

Die neue TeX-Oberfläche TeXworks ist für Windows enthalten, analog zu MacTeX. Für andere Systeme oder weitere Informationen beachten Sie bitte die Webseite https://tug.org/texworks. TeXworks ist eine Cross-Plattform-Anwendung, die von dem Editor Mac OSX inspiriert wurde, und somit eine einfach zu bedienende Oberfläche für TeX bietet.

Das Grafikprogramm Asymptote ist für verschiedene System enthalten. Es bietet eine textbasierte Beschreibungssprache für Zeichnungen, nicht unähnlich zu MetaPost, aber mit Unterstützung für 3D und weiteren Vorteilen. Die Homepage befindet sich unter https://asymptote.sourceforge.net.

Das bisher enthaltene eigenständige Programm dvipdfm wurde durch dvipdfmx ersetzt, das beim Aufruf als dvipdfm in einem Kompatibilitätsmodus läuft. dvipdfmx unterstützt CJK (Chinesich, Japanisch, Koreanisch) und enthält viele Korrekturen und Verbesserungen gegenüber dem alten dvipdfm. Die Homepage zu DVIPDFMx finden Sie unter https://project.ktug.or.kr/dvipdfmx.

Für cygwin und i386-netbsd werden nun ausführbare Programme mitgeliefert, während einige andere BSD-Derivate nicht mehr dabei sind. Es wird empfohlen, dass Nutzer von OpenBSD bzw. FreeBSD TeX über den Paketmanager ihres Systems installieren, da sich gezeigt hat, dass die Bereitstellung von Binaries, die für mehrere Versionen funktionieren, sehr problematisch ist.

Einige weitere, aber kleine Änderungen: Wir verwenden nun zur Datenkompression xz als stabile Alternative zu lzma ( https://tukaani.org/xz/); Dollarzeichen sind in Dateinamen erlaubt, solange sich zusammen mit den Dollarzeichen kein bekannter Variablenname ergibt; die Kpathsea ist nun multi-threaded (was von MetaPost verwendet wird); der gesamte Build von TeX Live basiert nun auf Automake.

Und zum Abschluss: Alle Releases von TeX Live, mit Zusatzmaterial wie den DVD-Labeldrucken, sind unter ftp://tug.org/historic/systems/texlive verfügbar.

10.8 TeX Live 2010

Seit 2010 werden PDF-Dateien nach PDF Version 1.5 erzeugt, was eine stärkere Komprimierung der Dateien ermöglicht. Dies gilt für alle TeX-Compiler mit dem Ausgabeformat PDF und dvipdfmx. Mit dem LaTeX-Paket pdf14 wird wieder PDF 1.4 erzeugt, alternativ kann \pdfminorversion=4 verwendet werden.

pdfLaTeX konvertiert nun automatisch bei Bedarf unter Verwendung des Paketes epstopdf EPS-Dateien (Encapsulated PostScript) nach PDF, wenn die Konfigurationsdatei graphics.cfg geladen wurde und das Ausgabeformat PDF ist. Standardmäßig sollen auf keinen Fall bereits vorhandene (evtl. mühsam anderweitig erzeugte) PDF-Dateien überschrieben werden. Die automatische Umwandlung kann komplett abgeschaltet werden, indem am Anfang der LaTeX-Datei (vor documentclass!) die Zeile \newcommand{\DoNotLoadEpstopdf}{} (oder \def...) eingefügt wird und so das Laden von epstopdf unterdrückt wird. Für weitere Informationen schauen Sie bitte in die Anleitung des epstopdf-Pakets ( https://ctan.org/pkg/epstopdf-pkg).

Eine wichtige, damit zusammen hängende Änderung ist die Beschränkung des write18-Befehls von TeX (das zum Aufruf externer Programme dient) auf einige wenige Programme in der Standardkonfiguration von TeX Live. Diese sind z. B. epstopdf, makeindex und bibtex. Konkret wird die Auswahl zulässiger Programme in der Datei texmf.cnf festgelegt. In Umgebungen, wo aus Sicherheitsgründen der Aufruf externer Anwendungen über write18 komplett unterbunden werden soll, kann dies direkt bei der Installation eingestellt werden (siehe Kapitel 3.12 oder nachträglich in texmf.cnf geändert werden.

Weiterhin werden BibTeX und Makeindex nun daran (analog zu TeX selbst) gehindert, ihre Ausgabedateien in beliebige Verzeichnisse zu schreiben, damit erlaubt werden konnte, dass sie über write18 gestartet werden. Falls dies geändert werden soll, muss entweder die Variable TEXMFOUTPUT gesetzt oder die Konfigurationseinstellung openout_any geändert werden.

XeTeX unterstützt nun wie pdfTeX optischen Randausgleich.

tlmgr speichert eine Sicherheitskopie von aktualisierten Paketen (tlmgr option autobackup 1), so dass ein fehlerhaftes Update mit tlmgr restore rückgängig gemacht werden kann. Falls Sie hierfür nicht genug Platz haben, kann dies mit tlmgr +option autobackup 0 abgeschaltet werden.

Neu enthaltene Programme: pTeX und verwandte Programme zum japanischen Schriftsatz, das Programm BibTeXU für ein Unicode-fähiges BibTeX, das Programm chktex ( https://baruch.ev-en.org/proj/chktex) zum Überprüfen von LaTeX-Dokumenten, dvisvgm ( https://dvisvgm.sourceforge.net) zum Konvertieren von DVI nach SVG.

Neu unterstützte Systeme: amd64-freebsd, amd64-kfreebsd, i386-freebsd,
i386-kfreebsd, x86_64-darwin, x86_64-solaris.

Eine Änderung in TeX Live 2009, die nicht dokumentiert wurde: Zahlreiche TeX4ht-bezogene Programme fielen weg, hierfür gibt es nun das Programm mk4ht.

Abschließend kann TeX Live nicht mehr direkt von der DVD ausgeführt werden. Eine einzelne DVD inst nicht mehr groß genug. Als Nebeneffekt sollte die Installation von der DVD schneller als früher sein.

10.9 TeX Live 2011

In TeX Live gab es relativ wenige Neuerungen. Die Binaries für Mac OS X laufen nur noch unter Mac OS X Versionen ab Leopard; Panther und Tiger werden nicht mehr unterstützt.

Das biber Programm für die Bearbeitung von Bibliografien wird für die gängigen Plattformen mitgeliefert, seine Entwicklung ist eng an die Entwicklung des biblatex Pakets geknüpft, das die Art und Weise, in der LaTeX Bibliografien verwaltet, komplett neu implementiert.

MetaPost (mpost) erzeugt oder nutzt keine .mem Dateien mehr. Benötigte Dateien wie plain.mp werden einfach bei jedem Lauf gelesen. Grund hierfür ist die Tatsache, dass MetaPost auch als Bibliothek unterstützt wird, eine weitere –wenn auch eher unsichtbare– Änderung.

Die Implementierung von updmap in Perl, bisher nur unter Windows genutzt, wurde überarbeitet und wird jetzt von allen Plattformen verwandt. Abgesehen von einer deutlichen Steigerung der Geschwindigkeit sollte kein Nutzer davon etwas merken.

10.10 TeX Live 2012

tlmgr unterstützt Updates von verschiedenen Netzwerk-Repositories. Siehe dazu den Kapitel zu multiplen Repositories in der tlmgr help Ausgabe.

Der Parameter XeTeXdashbreakstate wird standardmäßig für xetex und xelatex auf ’1’ gesetzt. Dies erlaubt Zeilenumbrüche nach em-dashes und en-dashes und war seit jeher das Standardverhalten von TeX, LaTeX, LuaTeX, etc. Für perfekte Zeilenumbruch-Kompatibilität bei existierenden Dokumenten muss daher die Variable XeTeXdashbreakstate explizit auf ’0’ gesetzt werden.

Die Ausgabedateien von pdftex und dvips, neben anderen, dürfen jetzt größer als 2 GB werden.

Die 35 Standard-Postscript Fonts werden standardmäßig in der Ausgabe von dvips ausgegeben, da es so viele verschiedene Versionen von ihnen gibt.

Im ’Restricted Execution’ Modus ist mpost standardmäßig erlaubt.

Eine texmf.cnf Datei wird auch in ../texmf-local, wie zum Beispiel
/usr/local/texlive/texmf-local/web2c/texmf.cnf, gefunden, falls sie dort existiert.

Das updmap Skript liest updmap.cfg pro Verzeichnisbaum anstelle einer globalen Datei. Diese Änderung sollte komplett unsichtbar sein, sofern die updmap.cfg Dateien nicht manuell bearbeitet wurden. Die Ausgabe von updmap –help hat mehr zum Thema.

Plattformen: armel-linux und mipsel-linux wurden hinzugefügt; sparc-linux und i386-netbsd sind nicht länger Teil der Haupt-Distribution. Sie können aber in Form spezieller Binaries von https://tug.org/texlive/custom-bin.html heruntergeladen werden.

10.11 TeX Live 2013

Distributions-Architektur: Aus Vereinfachungsgründen wurde texmf/ in texmf-dist/ integriert. Sowohl die TEXMFMAIN Variable als auch TEXMFDIST zeigen auf texmf-dist.

Viele kleinere Sprach-Sammlungen wurden zusammengefasst, um die Installation zu vereinfachen.

MetaPost: Native Unterstützung für PNG Ausgabe und Gleitkommazahlen (IEEE double) wurden hinzugefügt.

LuaTeX: aktualisiert auf Lua 5.2, enthält eine neue Bibliothek (pdfscanner) um externe PDF Seiteninhalte zu verarbeiten.

xeTeX (mehr auf der Webseite):

xdvi: nutzt jetzt FreeType anstelle von t1lib für das Rendering.

microtype.sty: etwas Unterstützung für xeTeX (Protrusion) und LuaTeX (Protrusion, Font Expansion, Tracking), neben verschiedenen anderen Anpassungen

tlmgr: Anpassungen für die leichtere Konfiguration von multiplen Repositories; mehr Informationen dazu unter
https://tug.org/texlive/doc/tlmgr.html#MULTIPLE-REPOSITORIES.

Plattformen: armhf-linux, mips-irix, i386-netbsd und amd64-netbsd hinzugefügt oder aktualisiert; powerpc-aix entfernt. Für Support von weiteren Plattformen siehe ( https://tug.org/texlive/custom-bin.html). Einige Plattformen wurden von der DVD entfernt, um Platz zu sparen, sie sind aber über den netzbasierten Installer verfügbar.

10.12 TeX Live 2014

2014 gab es eine TeX Anpassung durch Donald Knuth, die alle TeX-Engines betraf. Die einzige sichtbare Änderung ist die Wiederherstellung des preloaded format Strings auf der Kommandozeile. Laut Knuth repräsentiert dies das Format, das standardmäßig geladen wird anstelle eines in der ausgeführten Datei vorhandenen Formats. Dies kann über verschiedene Wege überschrieben werden.

pdfTeX: ein neuer Parameter, um Warnungen zu unterdrücken
pdfsuppresswarningpagegroup; neue TeX-Primitive für fingierte Zwischenwortabstände (nützlich für PDF Text-Reflow): pdfinterwordspaceon, pdfinterwordspaceoff, pdffakespace.

LuaTeX: Signifikante Anpassungen und Bugfixes gab es beim Font-Lademechanismus und der Silbentrennung. Die größte Änderung ist das Hinzufügen einer neuen TeX- Engine, luajittex ( https://foundry.supelec.fr/projects/luajittex) und ihre Geschwister texluajit und texluajitc. Diese Engine nutzt einen just-in-time Lua compiler (siehe den TUGboat Artikel unter https://tug.org/TUGboat/34-1/tb106scarso.pdf). luajittex befindet sich noch in der Entwicklung, ist noch nicht auf allen Plattformen verfügbar und deutlich instabiler als luatex. Es wird nicht empfohlen, es für den produktiven oder nicht-experimentellen Einsatz zu nutzen!

xeTeX: Die gleichen Bild-Formate werden jetzt auf allen Plattformen unterstützt (inkl. Mac); OpenType Fonts werden Graphite Fonts vorgezogen.

MetaPost: MetaPostunterstützt mit decimal ein neues Zahlensystem, zusammen mit einem internen numberprecision; drawdot wurde in plain.mp neu definiert; verschiedene Bugfixes in der SVG und PNG Ausgabe.

Das pstopdf ConTeXt Werkzeug als eigenes Tool wird entfernt werden, da es System-Werkzeuge gleichen Namens gibt. Es kann jedoch noch immer über mtxrun –script pstopdf aufgerufen werden.

psutils ist von einem neuen Betreuer gründlich überarbeitet worden. Als Ergebnis sind einige selten genutzte Werkzeuge (fix*, getafm, psmerge, showchar) jetzt im scripts/ Verzeichnis und nicht mehr als ausführbare Dateien vorhanden (bei Problemen kann dies wieder verändert werden). Mit psjoin wurde ein neues Skript hinzugefügt.

Die MacTeX Distribution von TeX Live (section ??) enthält nicht mehr die optionalen Mac-Pakete für die Latin Modern und TeX Gyre Fonts, da sie leicht durch jeden Einzelnen systemweit installiert werden können. Das convert Programm aus der ImageMagick-Suite wurde entfernt, da TeX4ht (genauer tex4ht.env) jetzt Ghostscript direkt nutzt.

Die langcjk Collection für Chinesisch, Japanisch und Koreanisch wurde aus Platzgründen in einzelne Pakete zerlegt.

Plattformen: x86_64-cygwin wurde hinzugefügt, mips-irix entfernt; Microsoft unterstützt Windows XP nicht mehr, daher können TeX Live Programme dort auch Schwierigkeiten bekommen.

Einige Plattformen wurden von der DVD entfernt, um Platz zu sparen, sie sind aber über den netzbasierten Installer verfügbar.

10.13 TeX Live 2015

LaTeX2e lädt jetzt standardmäßig Fixes, dis bisher nur über das fixltx2e Paket verfügbar waren. Ein neues latexrelease Paket und andere Mechanismen erlauben eine Kontrolle, was genau geschieht. Die beigefügten LaTeX News #22 und “LaTeX changes” Dokumente enthalten die Details. Nebenbei: die babel und psnfss Pakete werden separat entwickelt; sie sind daher von diesen Änderungen nicht betroffen.

Intern nutzt LaTeX2e jetzt Unicode-basierte TeX-engine Konfiguration (welche Zeichen sind Buchstaben, Benamung der TeX primitives, etc.), die bisher Teil von TeX Live waren. Diese Änderung sollte für den normalen Nutzer unsichtbar sein; einige Low-Level Routinen wurden umbenannt oder entfernt, aber das grundsätzliche Verhalten sollte identisch sein.

pdfTeX: unterstützt JPEG Exif genau wie JFIF; erzeugt keine Warnung wenn
pdfinclusionerrorlevel negativ ist; synchronisiert mit xpdf 3.04.

LuaTeX: Neue newtokenlib Bibliothek um Tokens zu scannen, Bugfixes im Zufallszahlengenerator und anderen Teilen.

xeTeX: Fixes bei der Verarbeitung von Bildern, interne XDV Op-Codes wurden gewechselt.

MetaPost: Neues Zahlensystem binary; neue, Japanisch unterstützende upmpost und updvitomp Programme, analog zu up*tex.

MacTeX: Updates für das inkludierte Ghostscript Paket für CJK Unterstützung. Das TeX Distribution Einstellungsfenster funktioniert jetzt unter Yosemite (Mac OSX 10.10), und andere Änderungen.

Infrastruktur: das fmtutil Skript wurde reimplementiert um fmtutil.cnf auf einer pro-Baum Basis zu lesen, analog zu updmap. Web2C mktex* Skripte (inklusive mktexlsr, mktextfm, mktexpk) nutzen jetzt bevorzugt Programme in ihrem eigenen Verzeichnis, anstelle der Programme in PATH.

Plattformen: *-kfreebsd wurde entfernt, da TeX Live jetzt über die Systemplattformen leicht verfügbar ist. Unterstützung für zusätzliche Plattformen ist verfügbar über https://tug.org/texlive/custom-bin.html. Zusätzlich wurden einige Plattformen von der DVD (einfach um Platz zu sparen), können aber über das Internet installiert werden.

10.14 TeX Live 2016

LuaTeX: Umfassende Anpassungen an Primitives, Umbenennungen als auch Löschungen, zusammen mit Anpassungen an Node-Strukturen. Die Änderungen werden in einem Artikel von Hans Hagen zusammengefasst: "LuaTeX 0.90 backend changes for PDF and more” ( https://tug.org/TUGboat/tb37-1/tb115hagen-pdf.pdf). Für eine genaue Liste der Änderungen siehe das LuaTeXHandbuch,
texmf-dist/doc/luatex/base/luatex.pdf.

Metafont: neue experimentelle Programme MFlua und MFluajit, die Metafont mit Lua integrieren. Diese Programme sind nur zu Testzwecken enthalten, sie sollten nicht produktiv eingesetzt werden.

MetaPost: Bugfixes und interne Vorbereitungen für MetaPost 2.0.

pdfTeX: Nutzt die Umgebungsvariable SOURCE_DATE_EPOCH für Zeitstempel (wenn diese gesetzt ist); neue Primitives pdfinfoomitdate, pdftrailerid,
pdfsuppressptexinfo, um Werte im Output zu kontrollieren, die sich normalerweise bei jedem Lauf ändern. Diese Funktionen laufen nur mit PDF Ausgabe, nicht mit DVI.

SOURCE_DATE_EPOCH Alle TeX-Engines außer LuaLaTeX nutzen die Umgebungsvariable SOURCE_DATE_EPOCH, wenn diese gesetzt ist. Wenn auch die Umgebungsvariable SOURCE_DATE_EPOCH_TEX_PRIMITIVES gesetzt ist, wird SOURCE_DATE_EPOCH zur Initialisierung der TeX primitives year, month, day, time genutzt. Beispiele dazu im pdfTeX Handbuch.

XeTeX: Neue Primitives XeTeXhyphenatablelength, XeTeXgenerateactualtext,
XeTeXinterwordspaceshaping, mdfivesum; Zeichenklassenlimit auf 4096 erhöht; DVI id Byte erhöht.

Andere Programme:

MacTeX: das TeX Distribution Voreinstellungsfenster wurde entfernt; seine Funktionalität ist jetzt im TeX Live Utility enthalten; GUI Anwendungen wurden aktualisiert; neues Skript cjk-gs-integrate für Nutzer, die CJK Fonts zu Ghostscript hinzufügen möchten.

Infrastruktur: System-level tlmgr Konfigurationdateien werden unterstützt; Prüfsummen von Paketen können geprüft werden; sofern PGP vorhanden ist kann die Signatur von Netzwerkupdates geprüft werden (wenn nicht, dann funktionieren Netzwerkupdates wie gewohnt)

Platformen: alpha-linux und mipsel-linux wurden entfernt.

10.15 TeX Live 2017

LuaTeX: Mehr Callbacks, mehr Kontrolle über den Textsatz, mehr Zugang zu den LuaTeX-Interna; ffi Bibliothek für das dynamische Laden von Code (für einige Plattformen)

pdfTeX: Umgebungsvariable SOURCE_DATE_EPOCH_TEX_PRIMITIVES aus dem letzten Jahr wurd in FORCE_SOURCE_DATE umbenannt; wenn die pdfpageattr Tokenliste den String /MediaBox enthält, wird das standardmäßige /MediaBox unterdrückt.

XeTeX: Unicode/OpenType Mathematik basiertjetzt auf der HarfBuzz MATH table Unterstützung; einige Bugfixes.

Dvips: Die zuletzt gesetzte Einstellung für papersize special gewinnt, ist daher konsisten zu dvipdfmx und den Paketerwartungen; die -L0 Option (L0 config setting) stellt das vorherige Verhalten wieder her.

epTeX, eupTeX: Neue Primitive pdfuniformdeviate, pdfnormaldeviate, pdfrandomseed, pdfsetrandomseed, pdfelapsedtime, pdfresettimer, aus pdfTeX.

MacTeX: Ab diesem Jahr werden nur noch Mac OSX Releases unterstützt, für die Apple noch Sicherheitsupdates bietet, unter dem Plattform-Namen x86_64-darwin; dies sind aktuell Yosemite, El Capitan, und Sierra (10.10 und neuer). Binaries für ältere Mac OSX Versionen sind nicht in MacTeXenthalten, sind aber noch in in TeX Live (x86_64-darwinlegacy, i386-darwin, powerpc-darwin) enthalten.

Infrastruktur: Der TEXMFLOCAL Baum wird jetzt standardmäßig vor TEXMFSYSCONFIG und TEXMFSYSVAR durchsucht; die Intention ist, dass lokale Änderungen leichter Systemeinstellungen überschreiben sollen. tlmgr hat einen neuen Modus shell für den interaktiven und geskripteten Gebrauch, sowie eine neue Aktion conf auxtrees um leichter extra-Bäume hinzufügen oder entfernen zu können.

updmap und fmtutil: Diese Skripte geben jetzt eine Warnung aus, wenn sie nicht mit explizit mit der Einstellung für system-weiten oder user-spezifischen Modus gestartet werden. (updmap-sys, fmtutil-sys, oder Option -sys), oder User Modus(updmap-user, fmtutil-user, oder Option -user). Siehe https://tug.org/texlive/scripts-sys-user.html für Details und die Intention dahinter.

install-tl: Persönliche Pfade sind jetzt auf die standardmäßigen MacTeX Werte gesetzt. (~/Library/...); Neue Option -init-from-profile um die Installation mit einem bestimmten Profil zu starten; Neuer Befehl P um ein Profil explizit zu speichern; neue Namen von Profilvariablen (alte werden noch akzeptiert).

SyncTeX: die tempöräre Datei hat jetzt das Namensschema foo.synctex(busy) statt foo.synctex.gz(busy) (kein .gz mehr). Editoren und Buildskripte müssen vermutlich angepasst werden.

Andere Werkzeuge: texosquery-jre8 ist ein neues Cross-Plattform Werkzeug um die Locales und andere Betriebssystem-Einstellungen auslesen zu können; standardmäßig ist es in der Liste der shell_escape_commands enthalten. Älte JRE Versionen werden auch unterstützt, können aber nicht im „Restricted Mode“ laufem, da sie aus Sicherheitsgründen nicht mehr von Oracle unterstützt werden.

Platformen: Siehe den MacTeX Eintrag, sonst keine Änderungen.

10.16 TeX Live 2018

Kpathsea: Standardmäßig achtet das Matching der Dateinamen jetzt nicht mehr auf Groß- und Kleinschreibung in Nicht-Systemverzeichnissen. Dieses Verhalten kann über das Setzen von texmf.cnf oder der Umgebungsvariable texmf_casefold_search auf 0 deaktiviert werden. Mehr Details dazu finden Sie im Kpathsea Handbuch ( https://tug.org/kpathsea).

epTeX, eupTeX: Es gibt ein neues Primitiv namens epTeXversion.

LuaTeX: Vorbereitungen wurden getroffen, um in 2019 auf Lua 5.3 zu wechseln. Eine ausführbare Datei namens luatex53 ist für die meisten Plattformen vorhanden, muss aber in luatex umbenannt werden. Alternativ kann man die ConTeXt Garden Dateien nutzen, mehr Informationen dort ( https://wiki.contextgarden.net).

MetaPost: Einige Fixes von falschen Pfaden, TFM und PNG Ausgabe.

pdfTeX: Erlaubt Encoding Vektoren für Bitmap Fonts; das aktuelle Verzeichnis wird nicht in die PDF ID gehasht. Bugfixes für pdfprimitive und verwandte.

XeTeX: Unterstützt /Rotate beim Einfügen von PDF Bildern, gibt nicht-0 bei Fehlern des Output Treibers zurück, diverse UTF-8 Fixes

MacTeX: Siehe die Änderungen unten. Zusätzlich wurden die Dateien in
/Applications/TeX/ umsortiert; vier contains four GUI Programme sind jetzt enthalten (BibDesk, LaTeXiT, TeX Live Utility, und TeXShop).

tlmgr: Neue Frontends tlshell (Tcl/Tk) und tlcockpit (Java); JSON Output; uninstall ist jetzt ein Synonym für remove; neue Option für print-platform-info.

Plattformen:

10.17 TeX Live 2019

Kpathsea: Konsistentere Klammern-Expansion und Pfad-Trennung; neue Variable TEXMFDOTDIR anstelle von hartkodiertem . in Pfaden erlaubt eine einfache Suche von zusätzlichen Verzeichnissen oder Unter-Verzeichnissen (siehe die Kommentare in texmf.cnf).

epTeX, eupTeX: Neue Primitive csreadpapersizespecial und expanded.

LuaTeX: Lua 5.3 wird jetzt genutzt, mit leichten arithmetischen und Interface Änderungen. Nutzt jetzt die pplib Bibliothek um PDF-Dateien zu lesen, hat daher keine Abhängigkeit mehr zu Poppler, Lua Interface wurde entsprechend angepasst.

MetaPost: r-mpost Kommando ist ein Alias für die Nutzung mit der –restricted Option, ist der der eingeschränkten Befehle, die standardmäßig verfügbar sind. Minimum Präzision ist jetzt 2 im Dezimal- und Binär-Modus. Binärmodus ist nicht mehr in MPlib, aber in MetaPost, verfügbar.

pdfTeX: Neues Primitivexpanded; wenn der neue Primitiv-Parameter pdfomitcharset auf 1 gesetzt wird, dann wird der /CharSet String in der PDF-Ausgabe unterdrückt, da die Korrektheit – wie in PDF/A-2 und PDF/A-3 gefordert – nicht garantiert werden kann.

XeTeX: Neue Primitiveexpanded, creationdate, elapsedtime, filedump, filemoddate, filesize, resettimer, normaldeviate, uniformdeviate, randomseed; Ucharcat erweitert um aktivie Zeichen zu erstellen.

tlmgr: Unterstützt curl als Download-Programm; nutzt lz4 und gzip vor xz bei lokalen Backups, wenn sie verfügbar sind; präferiert Binaries vom System gegenüber den mitgelieferten, solange die Umgebungsvariable TEXLIVE_PREFER_OWN nicht gesetzt ist.

install-tl: Neue Option -gui (ohne Parameter) ist Standard-Option auf Windows und Mac, nutzt neues Tcl/TK Interface (siehe Abschnitte 1.3 und ??).

Werkzeuge:

MacTeX: x86_64-darwin unterstützt jetzt 10.12 und höher (Sierra, High Sierra, Mojave); x86_64-darwinlegacy unterstützt noch 10.6 und neuer. Excalibur wird nicht mehr mitgeliefert, da dieses Programm 32-Bit Unterstützung erfordert.

Platformen: Unterstützung für sparc-solaris wurde entfernt.

10.18 TeX Live 2020

epTeX, eupTeX: Neue Primitive Uchar, Ucharcat, current(x)spacingmode, ifincsname; überarbeitetes fontchar und iffontchar. Nur bei eupTeX: currentcjktoken.

LuaTeX: Integration mit der HarfBuzz Library, verfügbar als neue TeX-Engines luahbtex (für lualatex) und luajithbtex. Neue Primitive: eTeXgluestretchorder, eTeXglueshrinkorder.

pdfTeX: Neues Primitiv pdfmajorversion; dies verändert nur die Versionsnummer im PDF Output, es hat keine Auswirkungen auf den Inhalt des PDFs. pdfximage und ähnliche suchen jetzt nach Bilddateien auf die selbe Art wie openin.

pTeX: Neue Primitive ifjfont, iftfont. Auch in epTeX, upTeX, eupTeX.

XeTeX: Bugfixes für Umathchardef, XeTeXinterchartoks, pdfsavepos.

Dvips: Output Encodings für Bitmapfonts, um besseres Copy/Paste zu erreichen. Siehe ( https://tug.org/TUGboat/tb40-2/tb125rokicki-type3search.pdf).

MacTeX: MacTeX und x86_64-darwin erfordern jetzt 10.13 oder höher (High Sierra, Mojave, und Catalina); x86_64-darwinlegacy unterstützt 10.6 und neuer. MacTeX ist offiziell beglaubigt und alle Kommandozeilenprogramme verfügen über abgesicherte Runtimes, wie es Apple erfordert. BibDesk und TeX Live Utility sind nicht mehr Teil von MacTeX da sie nicht beglaubigt wurden, eine README enthält jedoch die Orte, von wo man sie beziehen kann.

tlmgr und Infrastruktur:

10.19 TeX Live 2021

Allgemeines:

Aleph: Das Aleph-basierte LaTeX Format lamed wurde entfernt. codealeph selbst ist noch enthalten und wird supported.

LuaTeX:

MetaPost:

pdfTeX:

XeTeX: Verbesserungen am Mathe-Kerning.

Dvipdfmx:

Dvips:

MacTeX: MacTeX und sein Ordner für die ausführbaren Dateien universal-darwin erfordern jetzt macOS 10.14 oder höher (Mojave, Catalina und Big Sur); den Ordner x86_64-darwin gibt es nicht mehr. Der x86_64-darwinlegacy Ordner für Binaries, der nur mit der Unix-Version von install-tl funktioniert, unterstützt 10.6 und neuer.

Dies ist ein wichtiges Jahr für den Macintosh, da Apple angefangen hat, ARM-Maschinen zu verkaufen und jetzt zwei Plattformen, ARM und Intel, für die kommenden Jahre unterstützen wird. Alle Programme in universal-darwin haben ausführbaren Code für ARM und Intel. Beide Binärdateien werden aus dem selben Quellcode kompiliert.

Die zusätzlichen Programme Ghostscript, LaTeXiT, TeX Live Utility und TeXShop sind alle universell und mit einer gehärteten Laufzeit signiert, sie in alle in MacTeX enthalten.

tlmgr und Infrastruktur:

10.20 Gegenwart (2022)

General:

Cross-Engine Erweiterungen (nicht für das originale TeX, Aleph, und hiTeX):

epTeX, eupTeX:

LuaTeX:

MetaPost: Bugfix für das Problem der unendlichen Makro Expansion.

pdfTeX:

pTeX et al.:

XeTeX: Neue Wrapper Skripte xetex-unsafe und xelatex-unsafe für den einfacheren Aufruf von Dokumenten, die beide, xeTeX und PSTricks, Transparenzoperatoren nutzen, was unsicher ist (solange, bis die Reimplementierung in Ghostscript erfolgt) Aus Sicherheitsgründen empfehlen wir die Nutzung von LuaAllTeX.

Dvipdfmx:

Dvips: Standardmäßig erfolgt keine automatische Medienanpassung bei rotierten Dokumentseiten, die neue Option –landscaperotate schaltet dies ein.

upmendex: Experimentelle Unterstützung für arabische und hebräische Schriften; verbesserte Zeichen-Klassifikation und Sprachunterstützung.

Kpathsea: Der erste Pfad, der durch kpsewhich -all zurückgegeben wird, ist der selbe wie bei der nicht „-all“ Suche.

tlmgr und Infrastruktur:

MacTeX: MacTeX und seine Binärdateien universal-darwin erfordern macOS 10.14 oder höher (Mojave, Catalina, Big Sur, Monterey). Die Binärdateien aus dem x86_64-darwinlegacy Ordner – nur verfügbar mit dem Unix install-tl – uterstützt 10.6 (Snow Leopard) und neuer.

Plattformen: Keine Änderungen an den Plattformen in diesem Jahr. Für das Release 2023 ist die Umstellung der Windows Binärdateien auf 64-Bit geplant. Eine gleichzeitige Unterstützung von 32-Bit und 64-Bit ist leider nicht möglich.

10.21 Zukunft

TeX Live ist nicht perfekt! – und wird es auch nie sein. Wir planen, Neuauflagen zu produzieren, die umfangreichere Hilfstexte, mehr Hilfsprogramme, mehr Installationshilfen und (natürlich) den ständig verbesserten und überprüften Satz der Makros und Zeichensätze enthalten. Diese Arbeit wird von Freiwilligen in ihrer knappen Freizeit geleistet. Viel Arbeit steht noch an. Wenn Sie uns helfen können, zögern Sie keine Sekunde, sich bei uns zu melden.

Verbesserungen, Anregungen und Erweiterungen für künftige Ausgaben der TeX Collection senden Sie bitte an:

tex-live@tug.org
https://tug.org/texlive/

Neue Versionen, Anmerkungen und zusätzliches Material werden über die CTAN-Server im Verzeichnis info/texlive zur Verfügung gestellt. Im WWW können Sie sich über die Adresse https://www.tug.org/tex-live/ informieren und die Bestellformalitäten einsehen.