Upgrade failure and corrupted installation ?
Yann Salmon
contact at yannsalmon.fr
Mon Aug 28 10:07:03 CEST 2023
Hi,
thank you for your insights.
> What you should do is:
> - restore the original (small) tlpdb (you made a backup copy before
> overwriting it, didn't you?)
Yes.
> - run
> tlmgr update --all --reinstall-forcibly-removed
>
> That should do it.
I am not sure about that : tlmgr update --list --all
--reinstall-forcibly-removed
says it would "keep" some babel-related packages, but in the end says no
updates available.
But I have a laptop with roughly the same texlive 2023 installation, and
I updated it in July, so I could take the tlpdb from there and do a
regular update, could I not ?
Regarding your explanations about what happened earlier, is it not a
design problem in tlmgr update that interrupting it causes data loss ? I
mean, downloading updates can go wrong for a variety of reasons, and
laptop battery can go out too.
Debian's apt first downloads all the required packages, and then
actually does the upgrades. It is completely safe to interrupt it in the
first phase. Furthermore, I think the local database is managed in a
more failure-safe way ; even with failures in the second phase, I always
found a way to get back on my feet.
It seems the tlpdb contains information about which packages and
revisions are installed, as well as information like the description,
what files are part of it, etc.
The latter can be retrieved from a CTAN mirror, but the former is
inherently specific to a particular texlive installation.
Would it not be a good a idea to split that big file in two, and treat
the (much smaller) file about what is installed and what is about to be
upgraded more conservatively ? Such a file should be small enough that
keeping its successives versions, or, say, its last 10 versions, (and
therefore : not overwriting it during an upgrade) would be feasible.
--
Cordialement,
Yann Salmon
More information about the tex-live
mailing list.