首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为debian打包python程序的简单、直接的方法?

为debian打包python程序的简单、直接的方法?
EN

Stack Overflow用户
提问于 2010-05-28 16:37:33
回答 2查看 1.5K关注 0票数 7

我在浏览python和debian的迷宫发行工具时遇到了麻烦:cdbsdebhelperpython-supportpython-central等等。

我的应用程序非常简单--一个python包(包含模块和__init__.py的目录)、一个运行程序的脚本(script.py)、一些图标(.png)和菜单项(.desktop文件)。

从这些文件中,我如何从头开始构造一个简单、干净的.deb文件,而不使用上面列出的无意义的工具?

我主要针对ubuntu,但如果这个包能直接在debian上运行,我会很高兴的

EN

回答 2

Stack Overflow用户

发布于 2010-06-20 13:12:41

python-stdeb应该可以为您工作。它在Debian测试/不稳定和Ubuntu (Lucid更高)上。apt-get install python-stdeb

与其说它是一种捷径方法,不如说它是一种试图尽可能多地生成源包的工具。它实际上可以构建一个既能正常工作又几乎符合标准的包。如果你想让你的包符合Debian,Ubuntu等的质量标准,你需要填写像debian/copyright这样的文件。

尽管人们声称cdbs非常简单,但我想指出的是,Nick提到的规则文件可以很容易地用debhelper7完成。别忘了,定制dh7要比定制cdbs容易得多。

代码语言:javascript
复制
#!/usr/bin/make -f
%:
    dh $@

注意:在提交给Debian之前,您应该检查您的包是否符合Debian策略、Debian Python策略等。为此,您实际上需要阅读文档--没有捷径。

票数 5
EN

Stack Overflow用户

发布于 2010-05-28 21:13:45

首先,答案是没有直接的方法来制作dpkg,并且文档被打包成来自许多地方的一百万个小片段。然而,ubuntu Python Packaging Guide非常有用。

对于简单的包(容易向setuptools描述的包),一旦设置了debian控制结构,步骤就非常简单:

  • 运行setup.py --sdist --prune并确保将dist-dir设置为具有适用于您的软件包的适当选项(可能至少是-b )的

你需要一个debian/rules文件来运行buildpackage,但幸运的是,如果你使用cdbs,这个工作已经为你完成了,你会想要非常类似的东西:

代码语言:javascript
复制
#!/usr/bin/make -f

DEB_PYTHON_SYSTEM := pysupport

include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/python-distutils.mk

如果你没有使用distutils,你可能想看看维基上的DebianPython/Policy页面(在"CDBS + the hard way“下面)。还有一个针对DEB_PYTHON_SYSTEMpycentral选项,如果你想找到更多关于它的信息,你可以谷歌一下。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2927615

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档