如何为debian / ubuntu打包应用程序的多个发布流?

时间:2016-05-17 12:13:10

标签: ubuntu debian packaging apt dpkg

我想提供一个应用程序的多个发布流(为了这个问题,我们将其称为scylla)。

如果用户选择发布流1.0apt-get install将安装scylla-1.0.3,更新将安装scylla-1.0.4

如果用户选择发布流1.1apt-get install将安装scylla-1.1.0,更新将安装scylla-1.1.1

如果用户选择发布流latestapt-get install将安装scylla-1.1.0,更新将安装scylla-1.2.1

这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:1)

我认为最好的方法是gcc包使用的方法:

  • 将包重命名为<package><stream>,以便您拥有scylla1.0-1.0.xscylla1.1-1.1.xscylla1.0-1.2.x,...;
  • 使来自不同流的包可以共同安装(如在gcc情况下,可能使用替代机制为二进制文件提供无版本名称)或声明与其他流(现在由包表示)的冲突;
  • 引入一个包scylla,它取决于最新的流(或者,就像gcc一样,是默认流)。