5

这与这个问题有些相关。假设我有一个要通过 rpm 部署的包,因为我需要在安装后进行一些文件复制,并且我有一些要声明的非 python 依赖项。但是我们也假设我有一些 Python 依赖项,这些依赖项在 PyPI 中很容易获得。似乎如果我只是打包成一个鸡蛋,然后解压缩python setup.py install将自动处理我的 python 依赖项,但会丢失任何安装后功能和非 python 依赖项。

有什么推荐的方法吗?我想我可以在预安装脚本中指定这一点,但后来我开始重复信息,并没有真正使用 setuptools 做任何事情。

(我当前的设置涉及传递install_requires = ['dependency_name']setup,它适用于python setup.py bdist_eggand unzip my_package.egg; python my_package/setup.py install,但不适用于python setup.py bdist_rpm --post-install post-install.shand rpm --install my_package.rpm。)

4

1 回答 1

7

我认为如果您的 python 依赖项也可以作为 RPM 使用,并在 RPM 中声明为依赖项,那将是最好的。如果它们在其他地方不可用,请自己创建它们,并将它们放在您的 yum 存储库中。

作为 RPM 安装的副作用运行 PyPI 安装是邪恶的,因为它不支持正确的卸载(即卸载您的 RPM 将删除您的包,但留下依赖关系,没有正确的删除过程)。

于 2009-08-11T18:55:22.327 回答