【问题标题】:Can I add a Suggests field to debian/control with a newer version recommendation for a package already in Build-Depends?我可以向 debian/control 添加一个 Suggests 字段,并为 Build-Depends 中已有的包提供更新版本的推荐吗?
【发布时间】:2021-05-13 10:34:03
【问题描述】:

我的应用程序ROXTerm 依赖于 vte-2.91 >= 0.52,但它对 vte 0.64 中的一项新功能执行运行时检查,它可以通过启用触摸输入设备的动态滚动来增强用户体验,否则只能通过启用已弃用的 xorg 驱动程序(在 Wayland 中不可用)才能使用。

对 vte-2.91 >= 0.52 的严格依赖由 Build-Depends 管理。将Suggests: vte-2.91 >= 0.64添加到二进制包中是否合适?

【问题讨论】:

    标签: debian package-management


    【解决方案1】:

    不,这没有意义。

    >=0.64>=0.52 依赖的严格超集(这对于数学比较和依赖解析都适用)。

    您已经拥有的依赖项说:“使用任何高于(或等于)0.52vte-2.91 版本”。 vte2.19_0.52vte2.19_0.63.9vte2.19_0.77(以及其他)可以满足这种依赖关系。

    现在,依赖解析器 (apt) 将选择能够满足其依赖的最新版本(并且不会被 apt-pinning 否决)。

    如果您的发行版附带vte2.19_0.77,它会自动选择它,但如果它只附带vte2.19_0.52-9,它会选择它。

    简而言之:如果发行版缺少vte-2.91 >= 0.64,它不能安装那个版本,如果它带有vte-2.91 >= 0.64,它无论如何都会选择那个版本。 添加版本化的Suggests 并不会改变任何内容。

    【讨论】:

    • 但是,如果用户将 stable 作为他们的首选版本,但同时在 sources.list 中为一些选定的包启用了测试或不稳定,该怎么办?或者与 LTS 和 Ubuntu 中的最新版本类似的情况?这不会使 apt 默认为稳定版本,但如果软件包喜欢,可以安装较新的版本?
    • 没关系,因为 Dependencies/Suggests 字段与 apt-priorities 和 pinning 正交。
    猜你喜欢
    • 1970-01-01
    • 2016-12-08
    • 2018-05-17
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 2017-05-23
    • 1970-01-01
    相关资源
    最近更新 更多