![如何使用一个配方为不同的 ubuntu 系列创建包(./debian/changelog 有问题)?](https://linux22.com/image/1074842/%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8%E4%B8%80%E4%B8%AA%E9%85%8D%E6%96%B9%E4%B8%BA%E4%B8%8D%E5%90%8C%E7%9A%84%20ubuntu%20%E7%B3%BB%E5%88%97%E5%88%9B%E5%BB%BA%E5%8C%85%EF%BC%88.%2Fdebian%2Fchangelog%20%E6%9C%89%E9%97%AE%E9%A2%98%EF%BC%89%EF%BC%9F.png)
Launchpad 的测试版功能允许使用配方创建 ubuntu 包。我让它们工作起来,现在我能够用它们来打包我的项目。
但是,我对 ./debian/changelog 文件有点困惑。我需要在其中填写发行版名称([软件包名称]([版本])[分配];[紧急程度])。假设我把“maverick”放在那里。然后我请求使用配方进行构建。我选择为 maverick 和 natty 构建它。结果,PPA 中的 natty 包的“分发”字段将设置为“maverick”,这看起来是无效的(实际上,似乎只有变更日志才会有这个不正确的信息,但我意识到了这一事实,因为我收到的通知电子邮件说我的包是为 natty 发布的,但它也说:“分发:maverick”)。
这样可以吗?我甚至不确定这是否不正确,但如果是,那么我如何使用这个配方,使用一个更改日志文件为许多 ubuntu 系列构建一个包?
答案1
在这种情况下,分发字段无关紧要。查看官方 Ubuntu 档案。当然,您会看到顶部的变更日志条目将“不稳定”作为许多软件包的分发。同样,进入更新存储库的所有上传实际上都是从建议的存储库复制过来的。因此,maverick-updates 中的软件包实际上会在变更日志中显示 maverick-proposed。
distribution 字段的重要性取决于使用它的工具。例如,如果您使用 dput 上传到您的 PPA:~<your_launchpad_id>/<ppa_name>/ubuntu/
变更日志中的 distribution 字段决定了将为哪个版本构建软件包。但即使是这样,也可以通过直接上传到您想要的版本来覆盖:
~<lp_name>/ppa/ubuntu/<ubuntu_release>
Launchpad 的分支构建服务使用将软件包从一个 PPA 系列复制到另一个 PPA 系列的功能。它实际上并不关心此更改日志中的内容。因此,您当前的做法是正确的。