如何提高其他用户的 PPA 中可用的软件包版本?

ssc*_*rth 4 package-management ppa cmake

在为 Ubuntu 15.04 寻找最新版本的 CMake 3.2 时,我遇到了这个 PPA。但是,我想使用 3.2.3 版而不是 CMake 3.2.1。我如何轻松地建立在为该 PPA 所做的现有工作的基础上来实现这一目标?我想像一些工作流程

  1. 将包从 PPA 复制到我自己新创建的 PPA
  2. 以某种方式下载 3.2.1 版的现有构建配方(使用dget?)
  3. 在某些文件中增加版本字符串,调整更改日志等。
  4. 将构建配方推回 Launchpad 以查看它是否构建

到目前为止,我只能找到有关如何从上游源创建新 PPA/包的说明(涉及 Bazaar 分支和其他什么不),但没有简单的说明如何构建现有 PPA 包(最好不涉及 Bazaar)。

请注意,我没有任何构建/发布 PPA 的经验,而且我是从头开始的。

Syl*_*eau 5

  1. 这里下载 cmake 3.2.3 。

  2. 解压压缩包,路径应该是cmake-3.2.3.

  3. 现在重命名压缩包:

    mv cmake-3.2.3.tar.gz cmake_3.2.3.orig.tar.gz
    
    Run Code Online (Sandbox Code Playgroud)
  4. 从 15.04 的 ppa下载打包部分。

  5. 提取cmake_3.2.1-1ppa3~vivid1.debian.tar.xzcmake-3.2.3

    cmake-3.2.3
      ??? debian
      ?   ??? changelog
      ...
    
    Run Code Online (Sandbox Code Playgroud)
  6. 更新 debian/changelog 如下(只需更改签名):

    cmake (3.2.3-1ppa1~vivid1) vivid; urgency=medium
    
      * New upstream release.
    
     -- Sylvain Pineau <sylvain.pineau@canonical.com>  Tue, 30 Jun 2015 11:24:26 +0200
    
    cmake (3.2.1-1ppa3~vivid1) vivid; urgency=medium
    
      * Fix path to icons in cmake-qt-gui.
    
     -- Nathan Osman <nathan@quickmediasolutions.com>  Mon, 30 Mar 2015 17:59:20 -0700
    
    Run Code Online (Sandbox Code Playgroud)
  7. 安装构建依赖项:

    sudo apt-get build-dep cmake
    sudo apt-get install liblzma-dev
    
    Run Code Online (Sandbox Code Playgroud)
  8. 构建一个新的源包cmake

    cd cmake-3.2.3
    dpkg-buildpackage -S
    
    Run Code Online (Sandbox Code Playgroud)
  9. 使用以下命令将源包上传到您的 ppa:

    cd ..
    dput ppa:<user_name>/<ppa_name> cmake_3.2.3-1ppa1~vivid1_source.changes
    
    Run Code Online (Sandbox Code Playgroud)
  10. 在您的 ppa 主页中监控构建进度