7

I run TexLive Utility infrequently (about twice a year, because I concentrate on the content I create, not on updating my installation). I would like to be able to use it, say now, for TexLive 2022, but TexLive 2023 has been released so the updates are no longer possible.

I did not succeed finding a 2022 mirror I could use so that I have a final version of it on my computer and can later decide if I want to go through the hassle of installing again TexLive in the 2023 version. Additionally I would like the TeX Live Utility to automatically suggest repositories for historical versions if available.

Marijn
  • 37,699
ogerard
  • 1,031
  • 6
    I don't know if this will really answer your questions, but don't conflate the engine and the packages. A large part of the updates during a year are packages, which are completely unrelated to "Knuth's philosophy of asymptotic changes". As for the rest, remember that LaTeX has to adapt to new needs, and the newer compilers (for example LuaTeX and LuaLaTeX) keep evolving. But when it comes to syntax, things change very, very slowly and you rarely need to update your own documents. – Miyase Apr 15 '23 at 15:05
  • tlnet-archive - TeX Live packages by date: https://www.texlive.info/tlnet-archive/ – hair-splitter Apr 15 '23 at 15:07
  • 10
    you can use tlmgr update --repository https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2022/tlnet-final --list to list the last 2022 updates (and --all to install them). And if you have a feature request to texlive I suggest that you write to the texlive list. When making a request do not forget that this all managed by people in their free time and that you don't pay for the software. – Ulrike Fischer Apr 15 '23 at 15:07
  • 4
    These are several questions and most of them already has been answered. For final releases of historic TeX Live versions, e.g., see https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/ for less dependency on network stability use either the ISOs or use a local reporitory … – cabohah Apr 15 '23 at 15:07
  • @Miyase, I know this well, and apart from a few pet projects I do not use plain TeX, but LaTeX and variants. I am very happy that TeXLive exists and is maintained and the wealth of code available. – ogerard Apr 15 '23 at 17:20
  • @UlrikeFischer : you are right, this is more a feature request for texlive than an immediate fix. This shows that StackExchange is great for getting a knowledgeable audience. Perhaps a small modification to the texlive web page. – ogerard Apr 15 '23 at 17:26
  • 1
    It is a GOOD feature request for TeXLive. I already complained to CTAN (to no avail). What you can do: Directly download the current package you need, from the ctan.org web site. In your case, with older binaries, I would cheat the system and install the package directly into texmf-dist rather than \texmf-local. That way, when you later upgrade, you will not have thetexmf-local` files over-ruling the new stuff. – rallg Apr 15 '23 at 18:00
  • 1
    @ralig for the safest keep a texmf-local per year, copy contents from previous year to one of new year. So when you need to reactivate usage of an old year, it will use the old texmf-local, not the new one which may have accumulated incompatible changes. (disclosure: I did that in the past and still do on computers with enough disk space, but I am more adept of simply "roll-upgrade" and currently keep only TL2019 on my disk additional to TL2023 for emergencies such as easier tracing LaTeX kernel code of that era, before the injection of expl3 into it). – user691586 Apr 16 '23 at 07:18
  • 2
    On why TeX Live updates binaries on a yearly basis, see https://tex.stackexchange.com/q/107017/2693 and the comments there. – Alan Munn Apr 23 '23 at 15:01
  • 1
    @user691586 Indeed, I do exactly that. I also put the TeX internal environment variables in my .bashrc file (Linux) so that things are located where I want them to be located, no matter what TeX scripts say. – rallg Apr 23 '23 at 17:48
  • 1
    @AlanMunn Ah, but some of us (such as myself) have a Linux-like system (Android) in which the TeX binaries are run under a non-root jailed subsystem. The binaries must be custom-built by someone else (Termux), which is not immediate. I still do not have 2023 binaries. Without cheating or using local package install, I would be unable to add or update any TeX packages, even the numerous packages that do not rely on 2023 binaries. That is the isse: Why prevent a package, last updated 1995, from installing in last year's system? – rallg Apr 23 '23 at 17:52
  • 1
    @rallg But then you should just install a vanilla TeX Live at least if you want to get the latest year. And most of the Linux package managers don't let you install tlmgr to update at all. But the comments on this answer address the updating packages issue somewhat. – Alan Munn Apr 23 '23 at 20:54
  • 1
    @AlanMunn I am running 2023 packages with 2022 binaries. When the 2023 TeXlive installer is used, I direct it to place places the non-functional binaries where they are off PATH. I can delete them, and continue to use the exiting 2022 binaries (built for my system). No problem. I also export the TeX internal environment variables from .bashrc. – rallg Apr 24 '23 at 01:01
  • Related https://tex.stackexchange.com/q/429714 – Dai Bowen May 10 '23 at 20:59

1 Answers1

4

Thanks to several very helpful comments, I will answer my main question:

How do you update TexLive after next year's version is released?

You can use a repository with archives of previous versions.

https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2022/tlnet-final

as the time of writing,

https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/

(mentionned by @cabohah as well) contains the texlive archives for years from 1996 to now. TUG Historic FTP site seems to work well for Europe.

  1. (answer in comments by Ulrike Fischer) If you are willing to use the command line tools (which are called by the GUI Utility anyway).

    tlmgr update --repository https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2022/tlnet-final --list

gives the list of packages to update and

tlmgr update --repository https://ftp.math.utah.edu/pub/tex/historic/systems/texlive/2022/tlnet-final --all

tries to update everything. This to run with admin rights. For more flexibility consult the manual for tlmgr. Worked well on one of my computers.

  1. (tested by me for this question on 2022, on one computer) you can insert this repository address directly as the current repository in TexLive Utility. First you will need to acknowledge a dialog that the version has changed on your usual repository and that there is no update available. You insert the archive address, then validate. This will allow to make a last update of everything you want on your installation.

  2. Of course, you can use CTAN to install specific pieces of the texlive galaxy with bugfixes or new features. As @rallg points out, as texlive2022 is frozen, you might as well install it in the main tree so that you avoid interaction if you finally install 2023. I had no specific style or package to upgrade to this time, so I did not use that.

Other helpful questions in stackexchange:

How do I update my TeX distribution

Can I install an ancient TexLive distribution ?

the TexLive release cycle

ogerard
  • 1,031
  • 2
    The part about "admin rights" is specific to your (and probably many) installations, but it is not required. I install TeXLive as normal user in location where I have all write/access rights. Of course this opens up danger than when I visit with a text editor the source code of some package I may accidentally modify it, but one only has to be disciplined to avoid that blunder. If you are not fluent in LaTeX source code and the TeXLive way of organizing files, indeed perhaps better that files are installed in locations protected against accidental overwrites. – user691586 Apr 16 '23 at 07:22
  • Thanks. The part about "admin rights" was meant for people with the standard Mac OS installation. After all, if you use the TeX Live Utility, you have probably installed everything in the standard place with default rights. – ogerard Apr 16 '23 at 08:58
  • @user691586 to address your remark, I have added a link to the main relevant question in TeX SE about updating installations. – ogerard Apr 16 '23 at 10:12
  • 1
    TeX Live Utility will fall back to the appropriate "historic" mirror, but I have to add a new URL for each TeX Live version and release a new version of the software that knows about it. The code has been changed, but I haven't gotten around to building and releasing a new version yet. – Adam Maxwell Apr 28 '23 at 21:48
  • @AdamMaxwell thanks a lot. I hope it will be useful to others. – ogerard May 07 '23 at 17:55
  • 1
    @ogerard Just to clarify: TeX Live Utility has had this feature forever, but the timing never works out for me to get the historic mirror for TL (CURRENT_YEAR - 1) into the version that is released along with TL (CURRENT_YEAR). Improving this has been on my todo list since 2010 or so. – Adam Maxwell May 08 '23 at 04:04