[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Thoughtful updates to TexLive
From: |
Andreas Enge |
Subject: |
Re: Thoughtful updates to TexLive |
Date: |
Wed, 22 Jan 2025 15:07:15 +0100 |
Hello,
Am Fri, Jan 10, 2025 at 08:50:02AM +0100 schrieb Nicolas Goaziou:
> It is not the case anymore. However, Andreas Enge (Cc’ed) prefers to
> keep it as a no-brainer for anyone who wants to compile TeX documents
> and can afford the download cost. I’d love to get feedback about the
> comparison between using `texlive' and `texlive-scheme-full', as
> I believe the latter can satisfy that user profile.
these are interesting questions, and I thought I would give it a try
again.
My workflow when updating Guix is as follows:
I have a local copy of the 4GB file texlive-20240312-texmf.tar.xz in my
home directory, which I put into the store with "guix download". Then
"guix shell -D texlive" creates the texlivetexmf package locally while
downloading the binaries from the substitute server, and
"guix build texlive" finishes the process. It takes maybe half an hour
(I will have to measure next time I try it), and of course is a huge
waste of disk space: one 4GB copy in $HOME, one in the store; and only
then the usable unpacked data in the texlivetexmf package. But notice
that it requires no download of the texlive data. (Space and time
consumption have become much worse when texlivetexmf started to be
grafted, at some point in time: now there is yet another 4GB copy, or
worse, since in the package the data is uncompressed; and going through
it all takes quite a bit of time. But we can imagine doing an ungrafting
run.)
I tried texlive-scheme-full in the past, and it is not a real
alternative; as far as I remember, it took hours before I stopped it.
First of all, it needs to download the 4GB of data packages. And even
with a high-bandwidth Internet connection, the latency when downloading
thousands of packages is just too much. So this option is more
theoretical than practical.
A manageable alternative is to use "texlive-scheme-medium", plus a few
extra packages. When installing it, it fills the screen with hundreds of
lines of package names; and it takes quite a while:
real 21m39,704s
user 3m52,964s
sys 0m2,591s
This is although my download speed is somewhere between 2MB/s and
3MB/s, so it is really the latency for the big number of packages that
poses problems. But it is comparable to building texlivetexmf from
source. In my case, to compile my sample document, I needed more
packages: texlive-biblatex texlive-biblatex-software (hello, Software
Heritage!) texlive-xurl texlive-todonotes texlive-pgfplots, but these
are determined easily as they are just packages included with \usepackage
that are not found, and the Guix package name is just
(string-append "texlive-" tex-package-name)
So to conclude, I think using texlive-scheme-medium plus extra packages
is a real alternative, while texlive-scheme-full will never be one.
Or is there something between texlive-scheme-medium and
texlive-scheme-full?
Or something smaller than texlive-scheme-medium that still fulfills most
use cases with a few (more) extra packages?
Or a collection of texlive-collection-* that provides a good user
experience (on their own, or with a texlive-scheme-something to start it
off)?
I would be interested in hearing about other people's practices and
experiences.
Andreas