tlmgr deleted texlive-scripts

Max Chernoff via tex-live <[email protected]>
Newsgroups gmane.comp.tex.live
Message-ID <[email protected]>
Hi all,

A user was getting confusing error messages when trying to run fmtutil:

    https://tex.stackexchange.com/q/752875/270600

and it turns out that fmtutil.pl had gone missing:

    https://chat.stackexchange.com/transcript/message/68435033#68435033

Running

    $ tlmgr install --reinstall texlive-scripts

solved the problem, and the output showed that "texlive-scripts" had
been uninstalled completely (but "texlive-scripts.windows" was still
installed). I asked the user for a copy of "tlmgr.log"

    https://pastebin.com/a2J9P3Vj

and line 1207 shows that "texlive-scripts" failed to update at some
point, so I guess tlmgr decided to uninstall it entirely.

This is not very good, so tlmgr probably shouldn't uninstall
"texlive-scripts" if an update fails. (Or does it already do that, but
maybe installing the old version _also_ failed, so there was nothing
that tlmgr could do?)

Also, I discovered that "mktexlsr" takes different arguments on Unix
than on Windows:

    $ mktexlsr.exe --help
    Usage: Z:\usr\local\texlive\2025\bin\windows\mktexlsr.exe [--quiet|--silent] [DIRS ...]

    Rebuild all necessary ls-R filename databases completely. If one or
    more arguments DIRS are given, these are used as texmf directories to
    build ls-R for. Else all directories in the search path for ls-R files
    ($TEXMFDBS) are used.

    $ mktexlsr --help
    Usage: mktexlsr [OPTION]... [DIR]...

    Rebuild ls-R filename databases used by TeX.  If one or more arguments
    DIRS are given, these are used as the directories in which to build
    ls-R. Else all directories in the search path for ls-R files
    ($TEXMFDBS) are used.

    Options:
      --dry-run  do not actually update anything
      --help     display this help and exit
      --quiet    cancel --verbose
      --silent   same as --quiet
      --verbose  explain what is being done
      --version  output version information and exit

    If standard input is a terminal, --verbose is on by default.

    For more information, see the `Filename database' section of
    Kpathsea manual available at http://tug.org/kpathsea.

    Report bugs to: [email protected]
    TeX Live home page: <http://tug.org/texlive/>

Specifically, "--verbose" works as expected on Unix, but just returns
the version on Windows:

    $ mktexlsr --verbose
    mktexlsr: /usr/local/texlive/2025/texmf-dist: directory not writable. Skipping...
    mktexlsr: /usr/local/texlive/2025/texmf-var: directory not writable. Skipping...
    mktexlsr: /usr/local/texlive/texmf-local: directory not writable. Skipping...
    mktexlsr: Done.

    $ mktexlsr.exe --verbose
    kpathsea version 6.4.1
    mktexlsr: (C version 1.1 --ak 2002-2015)

I know that mktexlsr is implemented completely differently on Windows,
but it would probably make sense for it to take the similar arguments as
the Unix version.

Thanks,
-- Max
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.