如何将 stdeb 与 Launchpad 结合使用?

如何将 stdeb 与 Launchpad 结合使用?

我知道 launchpad 的政策是只允许在 PPA 上上传源包(正如所解释的这里)。

然而,python .deb 包中包含了所有的源代码,不能使用标准普尔扩展并需要手动构建包...有没有办法解决这个问题?

编辑:从第一个答案来看,我似乎应该澄清我是编写代码的开发人员,所以我真的在寻找更快捷的方法让我的程序成为 ppa 中的 .deb。我通常使用以下命令在系统中获取 .deb 包:

python setup.py --command-packages=stdeb.command bdist_deb

鉴于这允许我重用我的setup.py脚本,这是所有 Python 程序的标准。我查看了 Python 打包指南这里但看起来我遗漏了一些东西,因为很难相信为了达到与上述一行相同的结果我应该付出 10 倍的努力……?

答案1

查看该包的 README,它支持通过py2dsc实用程序或sdist_dscdistutils 命令从 Python 包构建 Debian 源包。

一旦您获得了 Debian 源包,您应该能够使用以下命令将其上传到您的 PPA:

# Unpack the source package:
dpkg-source -x package_version.dsc
# Prepare a signed package upload:
cd package-version/
debuild -S -sa
# Upload the source package:
cd ..
dput $ARCHIVE package_version.upload

答案2

不,这是不可能的。

这是一件好事。理想情况下,从源代码打包的目的是让您清楚地看到哪些更改仅存在于 debian/ubuntu 中,哪些源来自上游。选择将文件放在哪个目录中是特定于发行版的更改,它应该放在特定于发行版的文件中,与其他源分开。

请注意,源包非常简单:在包含源的包中运行 dh_make,更新控制和版权文件,并将要复制的文件添加到安装文件中。如果源中有更新,您只需解压它们并更新更改日志。

答案3

这对我有用:

python setup.py --command-packages=stdeb.command debianize

摘自他们的自述文件:

debianize 命令直接在 setup.py 旁边构建一个 debian/ 目录。

相关内容