4

To my surprise, I haven't found a question related on this in the search.


There are several possibilities for how one can install packages. For me the best way for installing additional packages in TeXLive is to use tlmgr

The manual page for tlmgr starts with:

tlmgr manages an existing TeX Live installation, both packages and configuration options.

Installing packages is quite easy,

tlmgr install <packagename>

also removing them again:

tlmgr remove <packagename>

So when can one use tlmgr, when should one use it?

What are the biggest advantages apart from straightforwardness of using tlmgr?

What are the possible disadvantages?

What are the most useful commands apart from the standard commands?


Note: The question asks not about the pros and cons of updating per se. As indicated after an edit above, there are still multiple ways to update packages, and people (at least me in the past) are using them all mixed together.

Alan Munn
  • 218,180
jjdb
  • 2,238
  • 1
    If you have TeXLive, is there any alternative at all to using tlmgr -- either the command line version or the GUI version? I can't think of one. – Mico May 08 '17 at 07:51
  • @Mico installing packages using other repository managers like apt-get is not uncommon; the same with manual installation. Especially the latter happens quite often as users google for the missing package, find it on CTAN, from where they download and manually install it, mostly in the local project folder. – jjdb May 08 '17 at 07:56
  • 3
    Rather than screwing up the installed TL by manual copying/changing of directories I prefer tlmgr –  May 08 '17 at 07:57
  • 2
    I suppose one can't use tlmgr to obtain and install a package that's not part of TeXlive... – Mico May 08 '17 at 07:58
  • 2
    @jjdb: I found that using the OS distro repository managers the TeX system is not really up-to-date. The TeX packages provided by the OS distrobution are outdated even if the distro ships after TL release. I prefer the net installation and having the full bunch of TL on my disk, the whole nine yards, not just a fragment of possibilities –  May 08 '17 at 07:59
  • 4
    Now a days users should not need to manually install packages from CTAN (there are rare exceptions where the license is bad for TL). Remember that you cannot really compare linux repos accessed by apt-get with tlmgr as the data in the Linux repos are often out of date and you cannot intall individual packages, tlmgr can. – daleif May 08 '17 at 07:59
  • @daleif they should not need, agree. Nevertheless they do, and this question is meant to provide arguments why they shouldn't. Still the licence argument is valid. Do you know any examples? – jjdb May 08 '17 at 08:28
  • 2
    Your question isn't very clear, it comes down to pros and cons of updating packages: same as any software updating gives you the latest fixes but always has a potential to break your existing use in edge cases. I can't see there is anything specific about tlmgr. (you also ask a separate question about what are the tlmgr options, which is a longer but more straightforward answer, there are lots of options:-) – David Carlisle May 08 '17 at 08:29
  • @DavidCarlisle I don't agree with your reading of my question. It is not about the +/- of updating per se, for which tlmgr is one method (probably the most preferable), but rather about the +/- using tlmgr compared to other methods. Other comments already provided useful hints. But maybe you can provide some suggestions how to improve the question? – jjdb May 08 '17 at 08:42
  • 3
    I don't really see any other methods, if the tex tree is installed by texlive vanilla installation then tlmgr is the only update available, if texlive is repackaged as part of (say) a linux distrib then you should only use that distributions package manager, apt-get or yum or whatever. It doesn't make sense to use a package manager of one system to update another. So "should I use tlmgr" is same as "should I update a package" if you have vanilla texlive. – David Carlisle May 08 '17 at 08:49
  • 2
    @jjdb see for example https://www.ctan.org/pkg/garamondx, in TL this can be installed using the getnonfreefonts script, but not through tlmgr – daleif May 08 '17 at 09:22
  • 1
    If you have a Linux-distro-supplied tlmgr, then it is not a good option because it will install (I think) separately from the main TL tree and will (I think) not necessarily install packages which are consistent with those in the main tree. However, I might be wrong as I've never considered installing such a system. – cfr May 08 '17 at 10:30
  • @cfr I was so stupid to do exactly this and ran into those consistency issues you've mentioned. This is no fun. Only resolution for me: complete new install via install-tl – jjdb May 08 '17 at 10:55
  • @jjdb Note that installing vanilla is not always conflict free. If I used my distro's TL, I wouldn't need the acrobatics I need to get some binaries working. As I use vanilla, I do. TL is not self-contained, whereas my distro's universe is. Incompatibility in the first case is my problem. Incompatibility in the second case would be a bug i.e. Somebody Else's Problem - usually the best kind. – cfr Jul 17 '17 at 01:19

1 Answers1

3

These methods cannot be compared! tlmgr manages a TeX Live installation as obtained from TUG, while other methods like apt-get manage packages of distributions like Debian, including the packages of TeX Live included in Debian.

Both cannot (or only with very strong restrictions, see user mode) be used together. You have to decide what you want.

The rest is an all time favorite here: should one use the distribution packages of TeX Live or upstream TUG. Depending on your distribution, branch, etc the answer may vary, but from what I know I believe that if you don't have upgraditis then using the distribution packages is completely sufficient.

norbert
  • 8,235
  • Don't know what you mean? If there are Perl 5.26 incompatibilities then please report them and I'll look into them. – norbert Jul 17 '17 at 01:24
  • What "new stuff" are you talking about? – norbert Jul 17 '17 at 01:24
  • Sorry. I'm confusing a Perl 5.26 issue with the issue I meant to ask you about, which has nothing to do with Perl. This is to do with ncurses. https://tex.stackexchange.com/questions/281296/how-can-i-use-xindy-on-a-system-with-libncurses-so-6. As comments on the workaround I posted as an answer show, the situation is rather confusing for people. Also, my workaround relies on compiling non-official packages to get backwards compatibility, which always makes things more fragile. – cfr Jul 17 '17 at 01:47
  • That is Arch's job to provide decent libraries. Nothing to do here from our side. Practically all distributions still use ncurses5. And it is absolutely no problem to have V5 and b612 love installed in parallel (only the dev packages cannot be installed parallel). So installing the proper Linds should make xindy workable again. – norbert Jul 17 '17 at 01:54