[Tex/LaTex] tlmgr: unexpected return value from verify_checksum: -5

errorstexliveupdating

When I am trying to update TeX Live I receive an error. Why does this happen and what does the error mean?

$ tlmgr update --self --all

/usr/local/texlive/2019/bin/x86_64-linux/tlmgr: unexpected return value from verify_checksum: -5

Best Answer

In case the issue is not due to tlcontrib, running update-tlmgr-latest.sh solves the problem. Kudos to Norbert Preining for the answer on the TeX Live list! I record here the required steps for posterity.

In case you don't have it, retrieve the script:

wget https://mirror.ctan.org/systems/texlive/tlnet/update-tlmgr-latest.sh

Check if you can run kpsewhich from sudo:

sudo kpsewhich --var-value=SELFAUTOPARENT

If yes, go to the last step. If not, check that the TeXLive path is in your PATH

echo $PATH

If not, add it with

 PATH="/path/to//texlive/:$PATH"

Finally, run the script (make it executable with chmod +x)

sudo env PATH="$PATH" ./update-tlmgr-latest.sh

The env option passes to sudo the PATH already available to the user, without the need to change the PATH of the root user. The output should look like

Verifying archive integrity... All good.
Uncompressing TeX Live Manager Updater  100%  
./runme.sh: updating in /usr/local/texlive/2019...
./runme.sh: tlmgr version says this is TeX Live 2019,
./runme.sh: and this updater script created: Mon Apr  6 15:37:42 CEST 2020.
./runme.sh: proceeding with tlmgr update.
./runme.sh: updating /usr/local/texlive/2019/bin/x86_64-linux ...
./runme.sh: /opt/texbin/tlmgr including objects: master/tlpkg/tlpobj/texlive.infra.tlpobj master/tlpkg/tlpobj/texlive.infra.x86_64-linux.tlpobj
D:appending to package log file: /usr/local/texlive/2019/texmf-var/web2c/tlmgr.log
D:tlmgr:main: ::tldownload_server hash:: {enabled:1,errorcount:0,initcount:0,initcout:1,ua:LWP::UserAgent=HASH(0x564b37fdb010)}
D:setup_programs: preferring system versions
D:program curl found in path
D:program wget found in path
D:program lz4 not usable from path
D:(unix) trying to set up lz4, default /usr/local/texlive/2019/tlpkg/installer/lz4/lz4.x86_64-linux, arg --version
D: Using shipped /usr/local/texlive/2019/tlpkg/installer/lz4/lz4.x86_64-linux for lz4 (tested).
D:program gzip found in path
D:program xz found in path
./runme.sh: done.