DEBIAN / control:取决于最高版本会导致在dist-upgrade期间卸载我的软件包

时间:2020-04-02 07:38:34

标签: debian

我目前正在为自己的程序构建一个Debian软件包,但遇到了一些问题。我的程序依赖于NodeJS12。NodeJS13会破坏它,因此我将其添加到了DEBIAN / control中:

Depends: nodejs (>= 12.14), nodejs (<< 13)

构建和安装效果很好。现在,我已经为其构建了新版本,并希望将其安装在服务器上。另外,我已经添加了NodeJS 13存储库(NodeJS 12存储库仍处于注册状态)。

现在调用apt dist-upgrade导致NodeJS升级到13,并且软件包的 REMOVAL 。但是我想防止将NodeJS升级到13,而不是删除我的软件包。

我该如何实现?

更多信息:

  • 我的软件包被标记为“手动安装”,而NodeJS被标记为“自动安装”。
  • apt-cache madison nodejs显示nodejs 12和13。
  • 我的程序包的优先级是“可选”,而nodejs的优先级是“额外”(=更低?)。
  • 我尝试添加具有相同效果的Breaks: nodejs (>= 13)

可能的解决方案:

  • 保持NodeJS的版本为12。如果我的软件包需要更高的版本(希望很快!),我需要释放保持状态。
  • 从sources.list中删除NodeJS-13存储库。尽管对于这种特定情况这可能是可行的,但该问题还会与其他依赖项一起出现,这些依赖项可能没有拆分的存储库。
  • 不使用apt dist-upgrade,但是如何将软件包从v2更新到v3?手动?

0 个答案:

没有答案