【问题标题】:Problems making a deb package out of a Python script用 Python 脚本制作 deb 包的问题
【发布时间】:2015-05-24 16:21:04
【问题描述】:

我已经阅读了很多关于创建 .deb 包的指南,但到目前为止我还没有成功。我正在运行 Ubuntu 14.04,tar.gz 文件和 .py 文件的位置在:

/home/nyoa/trafgen6/trafgen6-1.0#

该文件夹包含以下文件:

root@nyoa-VirtualBox:/home/nyoa/trafgen6/trafgen6-1.0# ls
DEBIAN  trafgen6-1.tar.gz  trafgen6.py

DEBIAN 是指导打包的文件所在的文件夹。我的问题是接下来我该怎么做才能达到以下结果:

Python 脚本已安装,因此只需在命令行中键入 trafgen6 即可启动它,并且包的名称是 Trafgen6(由于某种原因,当我之前尝试这样做时,它只是 Trafgen)。该包还应该依赖于 PyQt4 和 Qwt。

该软件包尚未公开发布,因此我无需担心许可证和所有软件包详细信息是否正确。我只需要能够轻松安装即可。

提前感谢您提供的任何建议

【问题讨论】:

标签: python ubuntu-14.04 packaging deb


【解决方案1】:

假设 DEBIAN 中的元数据是正确的,并且安装只需要将文件复制到适当的位置,您只需正确设置 fs 层次结构。

应该是这样的

DEBIAN/control
usr/bin/trafgen6 -- python script which sets os.cwd, imports and launches program
usr/lib/python<version>/dist-packages/trafgen6/ -- directory containing all trafgen6 associated files (perhaps try unpacking your .gz here.

当你安装包时,它会将它们复制到 / 要组装 debian 软件包,请进入 /home/nyoa/trafgen6/trafgen6-1.0# 并运行 dpkg-buildpackage 。 .. 它将踢出 /home/nyoa/trafgen6 中的 debian 软件包。

【讨论】:

  • 显然 应该是你正在使用的 python 版本,2.7、3.4 等等。
  • 目前我在 DEBIAN 文件夹中没有任何文件,因为在未能首先自己制作它们然后未能使用帮助脚本制作包后,我删除了所有内容。我需要能够创建 .deb 包的最低要求是多少?我是只在 DEBIAN/control 文件中添加这两行还是需要在它们之前添加诸如 Install 之类的行?
  • DEBIAN 文件夹的最低要求是 prermpostinst 权限为 755 的文件必须退出 0,以及一个包含 Package: 和包名称 Version: control 文件一些版本号。包含维护者、架构、部分、优先级、依赖项、冲突和描述条目也很好,但是仍然应该构建没有这些条目的包。如果您解压现有的简单包,您可以修改现有脚本和控制文件以获得新包。
猜你喜欢
  • 2011-11-17
  • 1970-01-01
  • 1970-01-01
  • 2013-06-24
  • 2010-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多