4

我编写了一个需要安装一些 .pyo 文件的专有应用程序。当我从应用程序创建 .deb 时,lintian 抱怨说package-installs-python-bytecode. 我尝试添加一个覆盖,但显然这个标签被ftp-master-auto-reject.profilein标记为不可覆盖/usr/share/lintian/profiles/debian。由于这个标签被认为是一个错误,Ubuntu 软件中心抱怨这个包。

有没有一种干净的方法来覆盖这个标签,以便 Ubuntu 软件中心不再抱怨?

4

2 回答 2

2

我会将 deb 生成步骤更改为(或两者) -

  1. 将python字节码的安装和生成移到postinst 部分(7.6),
  2. 使用pip代替 deb 或与 deb 一起使用。

将 python 文件、base64 或以其他方式将 tar 文件编码到 postinst 脚本中,从那里提取并安装,你就完成了!

于 2013-11-14T01:09:24.453 回答
1

为了将来参考,这就是我所做的。

  1. 我生成并将 .pyo 文件打包到他们自己的 tar.gz 文件中
  2. postinst脚本中,解压tar.gz文件,删除tar.gz文件
  3. 在 postrm 脚本中,pyo 文件被删除。

这不是世界上最好的解决方案,但它适用于 Debian/Ubuntu 过于严厉的政策(这甚至没有意义;如果我可以安装二进制文件,为什么不安装 pyo?)。

希望这可以帮助某人。

于 2013-11-29T19:58:04.837 回答