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.