【问题标题】:How to specify range for minor version in Debian package control file "Depends:" "Pre-Depends" clause如何在 Debian 软件包控制文件“Depends:”“Pre-Depends”子句中指定次要版本的范围
【发布时间】:2021-07-13 18:09:53
【问题描述】:

这是关于 ubuntu 软件包的 debian 控制文件。

我需要在“Depends:”/“Pre-Depends”子句中指定依赖列表,如下图所示

我的包裹是 "foo" 。它取决于包 "bar" 。 允许的“bar”版本是 2.X.Y,其中 X=3 且 Y>=5(我们将 2 称为主要版本,X 称为次要版本,Y 称为次次要版本)

所以基本上我想说明我对次要版本 3 和从 5 到 9 的次次要版本没问题

举个例子

# 我的规格应该允许以下版本
bar-2.3.5, bar-2.3.6, ... , bar-2.3.9

#我的规范应该不允许低于版本
酒吧 2.2.X, 酒吧 2.3.4, 酒吧 2.4.X, 栏 3.X.Y,

所以问题是——在我的控制文件下面指定正确的方法是什么?

# Control file 
Package: foo 
Depends: bar (>=2.3.5), bar(<<2.4.0)

有没有更紧凑/合适的方式?

特别是如果我进行了简化的需求更改 - 并说我对次要版本 .5 和任何次要版本 (2.5.X - ) 没问题,那么 有没有办法匹配 (2.5.0, ...,到 2.5.9) 与单个 == 类似的表达式?

我查看了https://www.debian.org/doc/debian-policy/ch-relationships.html,但这并没有为我提供足够的方向

感谢您的帮助

【问题讨论】:

    标签: debian packaging apt


    【解决方案1】:

    我验证了这种规范方式确实有效

    Package: foo
    Version: X.X.X
    ... 
    Depends: bar (>=2.3.5),  bar (<<2.4.0)
    

    但是,这样做的不良副作用是,如果我使用“apt cache depends”检查“foo”的依赖项,则依赖项“bar”会出现两次

    只是为了好玩。如果你懂印地语,你可能会说依赖出现 bar bar :-)

      #apt-cache depends foo
      PreDepends: bar
      PreDepends: bar
    

    所以当我有一个工作的灵魂时, 我仍在寻找更优雅的方式欢迎更多答案(所以我的答案不被接受)

    【讨论】:

      猜你喜欢
      • 2018-05-17
      • 2016-09-25
      • 1970-01-01
      • 1970-01-01
      • 2018-09-06
      • 2011-06-24
      • 1970-01-01
      • 2010-11-16
      • 1970-01-01
      相关资源
      最近更新 更多