Sie sind hier

TeX Live Repository zur Installation über den TeX Live Paketmanager tlmgr

English: → TeX Live Repository for Installation Using the TeX Live Package Manager tlmgr

TeX Live bietet seit Version 2013 die Möglichkeit, mit mehreren Paketquellen, sogenannten Repositories, zu arbeiten und dabei auch festzulegen, welches Paket bevorzugt aus welcher Quelle installiert und aktualisiert werden soll. Dabei gibt es grundsätzlich zwei Möglichkeiten:

Da sich der Aufbau des Repositories von TeX Live 2015 zu TeX Live 2016 geändert hat, gibt es zwei Repositories:

Es ist zu beachten, dass auf die Links nur via tlmgr zugegriffen werden kann.

Einmalige, nicht dauerhafte Installation

Die einmalige Installation aus einem bestimmten Repository ist sehr einfach. Dazu ruft man tlmgr nach dem folgenden Schema auf:

tlmgr install --repository <URL> <Paketname>

<URL> ist dabei durch den Link auf das Repository und <Paketname> durch den Namen des TeX-Live-Pakets zu ersetzen. Ist das Paket bereits installiert, so ist zusätzlich Option --reinstall anzugeben. Soll also beispielsweise das TeX-Live-Paket koma-script für TeX Live ab 2016 durch die Version aus meinem Repository ersetzt werden, so ist

tlmgr install --reinstall --repository https://www.komascript.de/repository/texlive/2017 koma-script

zu verwenden.

Es ist zu beachten, dass beim nächsten Update die Pakete aus meinem Repository in der Regel wieder durch die Versionen aus dem TeX-Live-Repository ersetzt werden, da diese eine höhere interne Revisionsnummer besitzen. Dieser Weg ist also nur für kurzfristige Tests geeignet. In der grafischen Oberfläche des TeX-Live-Managers, die man mit »tlmgr gui« starten kann, kann man das Paket auch von Hand wieder deinstallieren und ggf. aus der Standardquelle neu installieren.

Bei einer Mehrbenutzerinstallation von TeX Live unter Windows, muss man tlmgr übrigens in der Regel als Administrator starten. Bei einer Mehrbenutzerinstallation unter Linux kann es sein, dass nur Benutzer root Pakete installieren darf. Dann ist tlmgr via sudo aufzurufen, also beispielsweise:

sudo tlmgr install --reinstall --repository https://www.komascript.de/repository/texlive/2017 koma-script

Man kann den tlmgr aber auch bei einer Mehrbenutzerinstallation im sogenannten Usermode betreiben. Näheres dazu ist der Anleitung zu entnehmen, die man mit »texdoc tlmgr« oder mit »tlmgr help« erhält. Diese Verwendung von tlmgr im Usermode ist übrigens auch dann möglich, wenn man kein Vanilla TeX Live, sondern die TeX-Live-Pakete einer Linux-Distribution verwendet.

Festlegung meines Repositories als dauerhafte Paketquelle

Man kann mein Repository auch als dauerhafte Quelle für ein Paket festlegen. Dazu muss man zunächst mein Repository als neue Quelle anmelden und diese dann beispielsweise für das TeX-Live-Paket koma-script als Quelle festpinnen:

tlmgr repository add https://www.komascript.de/repository/texlive/2017 KOMA
tlmgr pinning add KOMA koma-script

Benutzer von TeX Live 2013–2015 ersetzen 2017 im Pfad natürlich durch 2015.

In der Regel wird das TeX-Live-Paket koma-script aber bereits aus dem Standard-TeX-Live-Repository installiert sein. Um dieses nun durch die Version aus dem neuen Repository KOMA zu ersetzen, muss eine Neuinstallation des Pakets erzwungen werden:

tlmgr install --reinstall koma-script

Bei dieser Installation und allen künftigen Updates von Paket koma-script wird tlmgr dann eine Zeile wie:

[1/1, ??:??/??:??] reinstall: koma-script @KOMA [6373k]

ausgeben. An dem @KOMA kann man erkennen, dass das Paket aus dem KOMA-Repository installiert wird.

Bei einer Mehrbenutzerinstallation von TeX Live unter Windows, muss man tlmgr übrigens in der Regel als Administrator starten. Bei einer Mehrbenutzerinstallation unter Linux kann es sein, dass nur Benutzer root Pakete installieren darf. Dann ist tlmgr via sudo aufzurufen, also beispielsweise:

sudo tlmgr repository add https://www.komascript.de/repository/texlive/2017 KOMA
sudo tlmgr pinning add KOMA koma-script
sudo tlmgr install --reinstall koma-script

Man kann den tlmgr aber auch bei einer Mehrbenutzerinstallation im sogenannten Usermode betreiben. Näheres dazu ist der Anleitung zu entnehmen, die man mit »texdoc tlmgr« oder mit »tlmgr help« erhält. Diese Verwendung von tlmgr im Usermode ist übrigens auch dann möglich, wenn man kein Vanilla TeX Live, sondern die TeX-Live-Pakete einer Linux-Distribution verwendet.

Verifizierte Paketinstallation für TeX Live ab 2016

Seit TeX Live 2016 bietet TeX Live die Verifizierung von TeX Live Repositories via gpg an. Dazu muss entweder gpg oder gpg2 installiert sein.

Auch mein Repository besitzt dazu eine digitale Signatur. Damit tlmgr diese überprüfen kann, ist aber zunächst der öffentliche Schlüssel zu importieren. Dieser hat den Fingerprint:

654E 0E2F 3E1F 283C BA58  37A1 4B8E DF5B ACB5 A37E

und lautet:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2
 
mQENBFPkjooBCAC56Bj9QXCC8bxycA6yFXn3lBG+uhKmQw5Kc0orL/FoCsvaNh+K
V6AUWeeOIpK4AqYxdeGNpnSDTiMsRljUtTpYuEgwslW+QiL1XviDaTkQsFQybV7n
4ktgX94xEkS0wQJjW0GGvGuTStIMSw9BLR1P1XbA+h24aEXNB95SopBB8UG23FNR
THamE0GnWDT0Q5cm9135pNPuGsc/LwFWyT47p/314LEonKhWVgqB4ZFHnzErP1qX
VGrimR7XYE4SLZO/5d15T8V7lQEP8ItxdoRLE6C5Ba/jQxzHPuqX4s6saNdkYRAJ
fQthp1DtIifIWlpXouLwjL3KzUcmzEmkHZ0tABEBAAG0UEtPTUEucmVwbyAoVGhp
cyBrZXkgaXMgdXNlZCBvbmx5IHRvIHNpZ24gbXkgcmVwb3NpdG9yaWVzLikgPGtv
bWFzY3JpcHRAZ214LmluZm8+iQE/BBMBAgApBQJT5I6KAhsDBQkJZgGABwsJCAcD
AgEGFQgCCQoLBBYCAwECHgECF4AACgkQS47fW6y1o35wnAf/QHZst8o1KmCAQrHI
WcSve0551yAUmCYew611BUp/HOs6nipIencuQZX1h2+NFPQW4nnmykdIWTdAhQEz
bzq/8JF01qm0bhwVKLVQGV7lxLshzJbHYvHFg0UxNCd3SWBODeaJJcGcixJ+BrJi
m0Q1nM1iPYSnZdss38SW8rKxKklYqyVmSeDHuAwvOt0jDvkuiVvaWjG14Gc4XMP4
Ojoxn24AgkFqYjHMljYQDD+58H9R5qh8zzprJ6EzjzsC0nGkPCnHlNrKxC3AO1m1
rwFueAFPFYi7b6XtsrSNUi0erP1R32iLjEPpzD9c3UZ0sHEbw7LC2g7VIwLtJ2Jt
NOvjT7kBDQRT5I6KAQgAzGQjraa+A74W3DemB75sRfpi/Lh+U7T1cIomqUY1jf5T
Fi/3KVIDaaXM+bKgrEzKNZ3vYbqV6HVR25Rl/dDOjM9U/tqnjsZ4iYSacwpTwtmO
2jBryaSB69RlC6r3VrgH5smv5rgc+83ybmBoVYh0gW2sgMvjWV+zUNY8NXjfkpsF
qBinPUz/75524qJOzrDxBUMG3WHQ7ONL0OWF0nLeyqJLT+leAbMT7G+QZQfmJfEw
TIoN2iafnrkh4iTNCHcpqQ/v75T1/BEyXijq34iqT+rz6vCNsKm5+KsVA8gumQ9S
J1yV3fRQeBvLfes4Ige/fASpz8SPev+pJoGSHDZuUQARAQABiQElBBgBAgAPBQJT
5I6KAhsMBQkJZgGAAAoJEEuO31ustaN+7g8H+wYdR1O8FDE/0Tw8akQpZp+oYjhQ
s6s5F4PqIuwL3egGw2UuiQbv1ye9qISven9D5FA7JLDSFApYgVViJ7CB5wz6Liyx
TdX/PEK4Ujxtw1K5R4O1NfMdJp5+nx6MkJQk5FzAe7xsuVINfQS/tYzOyd49bklo
f1t6IjOpDLv02opIilDUHSatz3Zz4OL67a1CYGcJ30CkHDJhPMETCKkt+OpWNZ4x
ZU0OdhbA6j6DkLTCFxBPzDeQumK0L2RNV1B4CXScBo6FoI1MM+piF/3eW7aWMntN
joO/2AE0GUWo7QBlF+5JQAKsB8gEtLxmWfbCL+A+d1+wBOvcdZjAWc5R5PQ=
=looA
-----END PGP PUBLIC KEY BLOCK-----


Dieser Schlüssel ist jedoch nicht in den normalen Schlüsselbund zu importieren. Stattdessen ist er mit tlmgr selbst in dessen eigenen Schlüsselbund zu importieren. Hat man den Schlüssel als Datei KOMA.repo.asc gespeichert, so geht das einfach per

tlmgr key add KOMA.repo.asc

Lässt man sich anschließend den Schlüsselbund mit

tlmgr key list

anzeigen, so sollte:

/usr/local/texlive/2017/tlpkg/gpg/pubring.gpg
---------------------------------------------
pub   2048R/06BAB6BC 2016-03-19
uid       [ uneing.] TeX Live Distribution <tex-live@tug.org>
sub   2048R/B001980F 2016-03-19
sub   2048R/19438C70 2016-03-19 [verfällt: 2017-09-10]
 
/usr/local/texlive/2017/tlpkg/gpg/repository-keys.gpg
-----------------------------------------------------
pub   2048R/ACB5A37E 2014-08-08 [verfällt: 2019-08-07]
uid       [  unbek.] KOMA.repo (This key is used only to sign my repositories.) <komascript@gmx.info>
sub   2048R/BE26F51D 2014-08-08 [verfällt: 2019-08-07]

ausgegeben werden. Dabei darf lediglich der Pfad zu den beiden Dateien und ggf. das Verfallsdatum abweichen.

Bei einer Mehrbenutzerinstallation von TeX Live unter Windows, muss man tlmgr übrigens in der Regel als Administrator starten. Bei einer Mehrbenutzerinstallation unter Linux kann es sein, dass nur Benutzer root Pakete installieren darf. Dann ist tlmgr via sudo aufzurufen, also beispielsweise:

sudo tlmgr key add KOMA.repo.asc

Ein Schlüsselimport im Usermode von tlmgr ist hingegen meines Wissens nicht möglich.

Man kann bei TeX Live ab 2016 auch ohne Verfikation der Repositories arbeiten. Siehe dazu die Anleitung zu tlmgr, die man mit »texdoc tlmgr« oder mit »tlmgr help« erhält.


1 – https://www.komascript.de/repository/texlive/2016 funktioniert vorerst zwar weiter, es wird aber empfohlen, für neue Installationen nur noch https://www.komascript.de/repository/texlive/2017 zu verwenden.

Kommentare

Neben MiKTeX habe ich auch noch eine TeX Live 2013 Installation unter Windows 7 und eine unter Ubuntu, in denen ich die neue Möglichkeit ebenfalls getestet habe. Die erstmalige Installation nach obiger Anleitung funktionierte super und auch beim Updaten über die Kommandozeile gibt es keine Unterschiede zwischen beiden, d.h. für koma-script werden nur noch Aktualisierungen aus dem Repository KOMA genutzt. Unter Ubuntu kann ich auch die GUI des TeX Live Managers verwenden, die beide Repositories lädt und mir ebenfalls nur Aktualisierungen aus dem KOMA Repository anzeigt.

Unter Windows lädt die GUI dagegen nur das Repository main und möchte wegen der höheren Versionsnummer koma-script jedes Mal aus diesem aktualisieren. Wenn ich keine Updates aus dem KOMA Repository verpassen möchte, werde ich wohl vorerst über die Kommandozeile updaten. Sollte ich dennoch mal versehentlich mit der GUI auf die Version aus dem offiziellen TeX Live Repository „aktualisieren“, kann ich das jederzeit von der Kommandozeile aus rückgängig machen mit:

tlmgr install --reinstall koma-script

Das pinning für koma-script hast Du unter Windows gemacht? Falls dem so ist, wäre das ein Grund für einen Bug-Report an TeX-Live. Denn natürlich sollte das pinning auch unter Windows sowohl von der Kommandozeile als auch von der GUI beachtet werden.

Ich werde das irgendwann auch mal selbst testen. Nur im Augenblick habe ich dafür schlicht nicht die Zeit.

Das pinning hatte ich unter Windows genau wie unter Ubuntu gemacht. Aber ich habe bei mir jetzt einen anderen Unterschied zwischen beiden Versionen gefunden: den Eintrag beim main Repository. Unter Windows hatte ich den irgendwann zu http://mirror.ctan.org/systems/texlive/tlnet (also wie bei Dir oben) geändert, während unter Ubuntu ein ganz konkretes steht.

Beseitige ich diesen Unterschied, dann verhalten sich bei mir die GUIs des TeX Live Managers unter Windows und unter Ubuntu gleich: mit einem konkreten main Repositoryeintrag lädt die GUI beide Installationsquellen und beachtet das pinning. Ändere ich dagegen das main Repository zu http://mirror.ctan.org/systems/texlive/tlnet , lädt die GUI das Repository KOMA nicht mit und beachtet das pinning nicht.

Nachdem ich endlich dazu gekommen bin, das nachzuvollziehen (was etwas problematisch war, da offenbar bei mir zuerst immer ein Mirror automatisch ausgewählt wurde, der nicht richtig funktioniert hat), habe ich das Problem an die TeX-Live-Mailingliste gemeldet. Norbert hat wie so oft, schnell reagiert und innerhalb von drei Stunden das Problem im Quellcode nachvollzogen. Die (von mir bereits getestete) Lösung ist auf dem Weg und wird vermutlich demnächst per Update verfügbar sein.

Ohne GUI, mit der Kommandozeile von tlmgr funktioniert es, wie bereits festgestellt, auch jetzt schon.

In der Zwischenzeit ist das Problem durch ein Update des TeX Live Managers wirklich behoben.

Comments for "TeX Live Repository zur Installation über den TeX Live Paketmanager tlmgr" abonnieren