我应该如何打包我的源代码以便 Launchpad 为所有版本的 Ubuntu 构建我的包?

我应该如何打包我的源代码以便 Launchpad 为所有版本的 Ubuntu 构建我的包?

我有一个应该为所有版本的 Ubuntu 构建的软件包,所以我希望 Launchpad 能够构建所有版本... 好吧,它没有。我提交时只是trusty在变更日志发布字段中使用,而 Launchpad 为 Trusty 构建了它。我将其更改为 Preciseprecise并仅为其构建。有没有办法让我将相同的源用于多个发布目标?

ffc (1.3.20140513-1) trusty; urgency=medium

  * Non-maintainer upload.
  * Moving to git.
  * Syncronized debian/* with upstream

 -- redacted <[email protected]>  Fri, 16 May 2014 16:15:00 -0400

答案1

是也不是。

目前还没有办法dput上传适用于多个 Ubuntu 版本的软件包。不过,你可以使用以下两种方法之一来实现你的目标:

创建菜谱

如果您正在从 Launchpad 上的分支构建软件包,并且您有 Debian 打包,请创建一个针对您希望支持的 Ubuntu 版本的每日构建配方。这在后半部分有更详细的描述这个答案

这确实是最好的解决方案,因为每次您进行更改时它还会自动进行新的构建(每天最多可自动构建一次,但您可以手动调度其他构建)。

手动上传多个版本

这不是一个理想的解决方案 - 但它确实有效。要实现这个功能,您需要做的是:

  • 调整变更日志中的版本号以匹配此格式:

    [version]-1ppa1~[release]1
    

    ...其中,[version]软件包版本是 ,并且[release]是 Ubuntu 发行代号(如trustysaucy等等)。

  • 确保更改日志设置为构建正确的版本。换句话说,对于 Trusty,更改日志的第一行应如下所示:

    ffc (1.3.20140513-1ppa1~trusty1) trusty; urgency=medium
    

使用上传软件包dput,然后对要上传软件包的每个版本重复上述两个步骤。您可以查看一个示例来了解其工作原理这里

相关内容