繁体   English   中英

Python项目中的RPM子软件包

[英]RPM subpackages from a Python project

当您处理大型项目并且需要为基于RHEL的Linux发行版创建RPM软件包时,将软件稀疏化为RPM子 软件包 (例如: -client-server-devel-debuginfo等)通常很方便。 在这种情况下,您可以使用唯一的spec文件获得多个包含项目不同部分的软件包。

我想知道标准Python打包模块( setuptoolsdistutils )是否支持此功能,以便从一个项目构建多个不同的rpm包。 我想我setup.py中的某些内容应该与规范文件的这一部分相关:

%package server
%package client

不,distutils及其派生工具不支持这一点。 您将有两个代码库,每个代码库都有一个setup.py脚本,产生两个不同的sdists / wheels / RPM集。 或者,您可以使用一个带有setup_client.py和setup_server.py脚本的仓库(具有不同的软件包名称和要软件包的文件列表),但这并不常见。

在开发distutils2时,TarekZiadé编写了pypi2rpm来改进distutils中提供的bdist_rpm命令。 最近没有任何进展,可能是因为它提供了团队需要的功能,但是您可以联系他,看看他是否接受添加对子包的支持的拉取请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM