如何使用 tlmgr 安装包?
$ tlmgr install moderncv
(running on Debian, switching to user mode!)
/usr/bin/tlmgr: TLPDB::from_file could not initialize from: ftp://tug.org/historic/systems/texlive/2020/tlnet-final/tlpkg/texlive.tlpdb
/usr/bin/tlmgr: Maybe the repository setting should be changed.
/usr/bin/tlmgr: More info: https://tug.org/texlive/acquire.html
我刚刚使用 在 Ubuntu 20.04 上安装了 TexLive sudo apt install texlive
。
这看起来类似于tlmgr 无法设置 TLPDB,但答案对我来说不起作用。
$ tlmgr init-usertree
tlmgr: user mode database already set up in
tlmgr: /home/christopher/texmf/tlpkg/texlive.tlpdb
tlmgr: not overwriting it.
版本看起来是最新的
$ tlmgr --version
tlmgr revision 53568 (2020-01-27 19:20:16 +0100)
tlmgr using installation: /usr/share/texlive
TeX Live (http://tug.org/texlive) version 2019
答案1
在 Ubuntu 中,TexLive 2019 位于存储库中。
这简短解决方案:此错误是由于您使用了错误的存储库版本。您的 TexLive 2019 正在尝试使用 TexLive 2020 ftp 存储库。
您应该切换到正确的存储库。在终端中输入以下命令:
- 在终端中输入此命令来更改默认存储库
$ tlmgr repository add ftp://tug.org/historic/systems/texlive/2019/tlnet-final
$ tlmgr repository list
$ tlmgr repository remove http://mirror.ctan.org/systems/texlive/tlnet
$ tlmgr option repository ftp://tug.org/historic/systems/texlive/2019/tlnet-final
- 使用以下命令安装所需的 LaTeX 包:
tlmgr --verify-repo=none install beamer
在此示例中,我beamer
使用参数成功安装了包--verify-repo=none
。
如果省略该参数,则会出现此错误:tlmgr: Local TeX Live (2019) is older than remote repository (2020)
。更改 TexLive 2019 的正确存储库后,此错误已解决。
注意:如果您想为所有用户安装该软件包,只需sudo
在每个指令的开头输入即可。
答案2
简短回答
Ubuntu 软件包似乎相当破损,因此请将其删除并通过以下方式安装https://tug.org/texlive/acquire.html。
长答案
找出您安装了哪个软件包:
$ which tlmgr
/usr/bin/tlmgr
$ ll /usr/bin/tlmgr
lrwxrwxrwx 1 root root 52 Feb 17 2020 /usr/bin/tlmgr -> ../share/texlive/texmf-dist/scripts/texlive/tlmgr.pl*
$ sudo dpkg -S /usr/share/texlive/texmf-dist/scripts/texlive/tlmgr.pl
texlive-base: /usr/share/texlive/texmf-dist/scripts/texlive/tlmgr.pl
用偏见消灭它:sudo apt purge texlive-base
按照链接(上面)中的说明安装可运行的 TexLive。