Linux Mint—从“vanilla”TeXLive(来自 DVD)中隔离或卸载 synaptic-pkg TeXLive

Linux Mint—从“vanilla”TeXLive(来自 DVD)中隔离或卸载 synaptic-pkg TeXLive

这个问题是我之前关于 TLMGR 的问题的后续(通过 TLMGR 更新)

简明摘要:全新安装的 Mint 21.1(Cinnamon,64 位)执行了未经请求的安装 TeXLive 2021 的 synaptic-package 版本。不知不觉中,我使用 DVD 安装了“vanilla”TeXLive2022,在此基础上全新安装了 Mint 21.1

尽管根据 DVD 安装结果发出的指示更新了 PATH、MANPATH 和 INFOPATH,并运行了“texhash”等等 ---- 甚至隔离synaptic 软件包版本 TeXLive2021 —— 2021 版 synaptic 软件包的钩子似乎仍然存在;因此,TexWorks 和其他编辑器不会运行(请参阅上一个问题中的错误消息,上面的超链接)。

我并不关心是否有可用的 2021 版本。由于存在与 2021 的“挂钩”,尽管我尝试仅从 2022 运行,但 2021 synaptic 包中安装的组件仍然是必需的。所以,我不能简单地删除它。

另外,当我尝试卸载 synaptic 软件包(2021 版)或“将其完全删除”时,Synaptic 软件包管理器告诉我,它还将卸载 Kile 和许多其他我不想扔进垃圾箱的软件包,因此随后必须重新安装(可能会产生更多问题!)。

有什么建议?有什么想法?如果您需要安装的详细信息,请提出,我会尽力满足您的要求。

+++++++++++++++ &&&&&&&&&&&&&&& ++++++++++ 我的 PATH 同时包含 2021 版和 2021 版(后者恢复到了原来的位置,/usr/share/texlive):

/usr/local/bin:
/usr/bin:
/bin:
/usr/local/texlive/2022/bin/x86_64-linux:
/usr/local/texlive/2022:
/usr/local/texlive/2022/base:
/usr/local/texlive/2022/generic/utilities:
/usr/share/texlive:

当我运行 TexWorks 时,它无法编译文档。这是我收到的消息:

This is LuaHBTeX, Version 1.14.0 (TeX Live 2022/dev/Debian) 
 restricted system commands enabled.
(./Dustjacket_pagelayout_pkg.tex
LaTeX2e <2021-11-15> patch level 1
[\directlua]:1: module 'luaotfload-main' not found:
    no field package.preload['luaotfload-main']
    [kpse lua searcher] file not found: 'luaotfload-main'
Error in luaotfload: reverting to OT1 L3 programming layer <2022-01-21>
(./pagelayout.cls
Document Class: pagelayout 2023/01/23 Layout graphic rich documents
(/usr/share/texlive/texmf-dist/tex/latex/pgfopts/pgfopts.sty
(/usr/share/texlive/texmf-dist/tex/latex/pgfkeys/pgfkeys.sty

! LaTeX Error: File `pgfkeys.code.tex' not found.

Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: tex)

TexWorks 似乎在 2022 版本中启动,然后在 2021 版本中搜索文件,然后失败。

答案1

我猜(我用的是 Debian,不是 Mint,也不是 Cinnamon),你的包管理器TexLive对 Kile 和其他编辑器有依赖。你提到 Synaptic 是包管理器,但我没有用过,只用过apt,所以这可能行得通,也可能行不通。

本质上,你需要让包管理器相信你有一些可以满足依赖关系的东西。对于.deb文件(由apt),你可以按照说明进行操作这里如果 Synaptic 不使用.deb文件,则可能有类似的方法来指示您具有编辑器正在寻找的依赖项(或者您可以使用--no-deps或安装编辑器--no-recommended或类似工具安装编辑器)。为此,您可能需要在其他堆栈之一上寻求帮助,可能Unix 和 Linux SE

答案2

避免 tlmgr 冲突

原始问题摘要:tlmgr 问题源于“原始”TeXLive(本例中为 2022)与另一个 TeXLive(2021)之间的冲突

我一直在使用 2021 版(包括 Kile、TexWorks 和 LyX),直到我找到了几个我真正想在工作中使用的 LaTeX 软件包。因此,我尝试使用 tlmgr 安装这些软件包,但它却犹豫了

此时,我的目标是加载 vanilla TeXLive 2022 和 --- 我想法将会是一次全新安装 --- 因此解决了与 tlmgr 的内部冲突。因此我通过连接到 CTAN 镜像安装了 TL2022,并提供了将旧版本“与”2022“一起”保留的选项。我选择了这个,以防我现有的 *.tex 文档将来出现问题。

两个 TeXLive 安装位于 /usr 的不同分支中:

  1. TeXLive 2022 的 vanilla 默认文件夹位于 /usr/local/texlive...
  2. TeXLive 2021 位于 /usr/share/texlive

这一动作没有解决 tlmgr 问题,但只会使情况变得更糟(--> 现在我遇到了另一个冲突:tlmgr 不会从 CTAN 2022 镜像更新 2021)。

我尝试解决 tlmgr 问题,但结果却出现了文件权限问题,我的 sudo 权限被锁定了。唯一可行的解​​决方案是全新安装操作系统(这是一个将操作系统更新到 mint 21.1(64 位,cinnamon)的机会)。

第一次尝试:

我的步骤(不要重复这些!)是:

  • 全新安装 Mint 21.1
  • 从 DVD(从下载的 ISO 映像刻录)加载原始 TeXLive 2022。
  • 安装 Kile 和 TexWorks(我一直在使用这两个)。

由于安装了两个 TeXLive,冲突立即出现;tlmgr 无法“按照宣传的那样”运行 &两个都的 Tex 编辑只使用 2021 版。我没有明知安装 2021 版本,因此它的存在非常令人困惑。我得出(错误的!)结论,Mint 默认加载了 TeXLive 2021 作为“突触包”为了我的方便 (!!)在操作系统安装过程中。

第二次尝试 (这次更慢,更多检查...!)

  1. 全新安装 Mint 21.1 ---> 检查 TeXLive 2021 的安装(未找到---很好!)
  2. 安装 TeXLive 2022(从 DVD 中安装,从 ISO 发行版刻录)---> 检查 TeXLive 2021 的安装(未找到---很好!)
  3. 安装 TeXWorks安装 texworks. ---> 检查 TeXLive 2021 的安装(未找到---好!) ---> 检查 TexWorks 是否访问 TeXLive 2022,并处理已知良好的文档 全部好!) ---> 检查 TeXLive 2021 的安装(未找到---好!)

此时此刻,我非常谨慎关于加载基勒。所以我做了一个试运行使用

sudo apt get install --dry-run kile

答对了!Kile 安装程序不是发现硬盘上已经有 2022 TeXLive,因此它默认安装来自“突触包”中的 TeXLive 2021 的依赖项。

我在这里又花了几个小时进行研究......这是问题的关键及其解决方案:

Kile 与 Debian 的包管理系统相关。您需要在原始 TeXLive 2022 周围挖一条护城河,并采取措施通知 Debian 的包管理系统(Kile 使用)有关由于之前安装了原始 TeX Live 而已经在使用的任何包。Debian 安装程序不会自行搜索它们!

这个话题,“将 vanilla TeX Live 与 Debian 集成”,详细说明如下: https://www.tug.org/texlive/debian.html#vanilla https://tug.org/pipermail/tex-live/2021-July/047300.html (如果您愿意,请点击附加的超链接)仔细阅读本节,“将 vanilla TeX Live 与 Debian 集成”,多次。您需要安装包“equivs”,以便创建“虚拟包”;如果您仔细按照提供的说明操作,它确实可以工作。

感谢所有提供意见、建议和答案的人。 —鸟人—

相关内容