代码之家  ›  专栏  ›  技术社区  ›  Bernd Jendrissek

如何重写.deb子包的版本?

  •  0
  • Bernd Jendrissek  · 技术社区  · 14 年前

    我需要为我们的软件制作一个.deb,其中包括一个Drupal副本。我不得不修补Drupal,所以我不能使用发行版中的库存Drupal。我希望结果是一个名为drupal6-rs\u6.16\u all.deb的文件,但是因为在我的控制文件中它是一个子包,它“继承”了我的主包的版本,所以我最终得到了一个包drupal6-rs\u6.0.6\u all.deb(6.0.6是我们自己的代码库的版本)。

    这能做到吗?我知道使用RPM可以覆盖子包的版本,但是如果我将version:6.16添加到子包的debian/control头中,它(a)在vim中的突出显示与其他头条目不同,(b)没有效果。

    2 回复  |  直到 14 年前
        1
  •  1
  •   Umang    14 年前

    我有时应该去。看看 man dh_installchangelogs . 这是有原因的 s 它的后缀!

    是的,好像是你 重写多二进制源程序包中二进制程序包的版本。

        2
  •  0
  •   Umang    14 年前

    debian/changelog 文件每个源程序包,我相信每个源程序包只能有一个版本。如果您查看Debian包跟踪系统,它总是引用一个版本号—源包的版本号。因此,源程序包生成的二进制程序包具有相同的版本号。

    这让你有两个选择-

    1. 用正确的方法做事情-修补Drupal(也许是用 dpatch 6.17-1yourcompany1 ). 然后为您自己的软件包,让您的软件依赖于Drupal。现在你可以依靠 drupal6 (=6.17-1yourcompany1) 你认识所有人 实际上已经有补丁了。使用个人存储库分发软件是个好主意。

    2. 另一种选择是使用黑客方法。既然你不想用单独的 debian/