![我如何应用 libvirt 的打包功能来从 git 版本中构建包?](https://linux22.com/image/898748/%E6%88%91%E5%A6%82%E4%BD%95%E5%BA%94%E7%94%A8%20libvirt%20%E7%9A%84%E6%89%93%E5%8C%85%E5%8A%9F%E8%83%BD%E6%9D%A5%E4%BB%8E%20git%20%E7%89%88%E6%9C%AC%E4%B8%AD%E6%9E%84%E5%BB%BA%E5%8C%85%EF%BC%9F.png)
我一直在努力libvirt 补丁用于启用 Ceph/RBD 存储卷。
我现在想测试我的代码。我想将其作为一个包(甚至是 Launchpad PPA)来执行,这样我就可以干净地删除它。
显然,有人已经完成了为 Ubuntu 和 Debian 打包 libvirt 的工作。
我怎样才能获取 git 分支并使用官方 Ubuntu 包所使用的打包方式将其构建成包?
如果我们可以得到类似下面的输出,则可以获得额外积分
git describe --abbrev=7 --always --tags
作为版本,因此我最终可以在版本号中同时获得版本(4.0.0)和 git 标签(gfd7cb8c),这样较新的版本对于 apt 来说实际上看起来是新的。
答案1
是的,您可以使用发行版(Ubuntu/Debian)的打包文件。
从您的存储库创建一个源档案,并正确重命名。
<packagename>_<version>.orig.tar.gz
档案库内的根文件夹应该
<packagename>-<version>
包含整个源树。然后将其提取出来。
从以下位置下载 Debian 打包文件
.debian.tar.zx
:https://packages.ubuntu.com/bionic/libvirt-bin
将其解压缩并将文件夹放入上一步的文件夹
debian
中。<packagename>-<version>
在文件夹中打开终端
<packagename>-<version>
然后构建 Debian 源包。# if needed dch debuild clean # build source package only debuild -S
将其上传到 PPA,它将为您构建二进制包。