首页 > 解决方案 > 将 debian 包维护者脚本和配置文件从现有包共享到新包

问题描述

我为 python2 和 python3 创建了两个 debian 包的变体。我已经创建了 com.python2.package1,所有这些都是维护者脚本。现在我尝试添加 com.python3.package2 所以我的 debian/control 文件就像

Package: com.python2.package1
Name: Example Package1
Description: An example package1.
This longer description will load when a depiction URL is not specified.
Author: Ms. Example <example@example.com>
Maintainer: Example, Inc. <example-inc@example.com>
Version: 1.0-1
Section: Addons (SpringBoard)
Pre-Depends: com.example.system
Depends: com.example.library

Package: com.python3.package2
Name: Example Package2
Description: An example package2.
This longer description will load when a depiction URL is not specified.
Author: Ms. Example <example@example.com>
Maintainer: Example, Inc. <example-inc@example.com>
Version: 1.0-2
Section: Addons (SpringBoard)
Pre-Depends: com.example.system
Depends: com.example.library

现在 com.python2.package1 在 debian 目录中已经有了维护者脚本和配置文件。如何让 com.python3.package2 使用相同的文件,这样我就不必为每个变体创建额外的副本?

可能是override_dh_installdeb用于执行此操作,但它如何完​​成此任务?

标签: debianpackagingdpkg

解决方案


你可以尝试这样的事情debian/rules

override_dh_install:
        dh_install
        install debian/source/update.py debian/com.python2.package1/usr/lib/python2/dist-packages/my-package/

我假设您已将脚本包含在debian/com.python3.package2.install文件中,只需再次将其复制到com.python2.package1包中。

我还假设“维护者脚本”是指 Python egg/module 维护者脚本(__init__.py某种东西),而不是 Debian 包维护者脚本(*.postinst)。


推荐阅读