我正在使用名称令人愉快的 Effing Package Manager (FPM) 来为项目构建 RPM 和 DEB。
使用 发布生成的 RPM 后createrepo
,我在生成的存储库中注意到以下几行UUID-primary.xml.gz
:
<location href="package-built-with-fpm.rpm"/>
<format>
[..]
<rpm:vendor>me@machine-that-built-this</rpm:vendor>
<rpm:buildhost>machine-that-built-this</rpm:buildhost>
[..]
除了更改我的主机名和用户之外,有没有办法使用 FPM 定义这些?
我在构建和运行 DEB 存储库方面拥有丰富的经验,这是我第一次尝试 RPM。
答案1
通常,RPM 通过构建系统配置宏来设置供应商。构建主机无法重置,最初包含在包元数据中,以帮助识别导致“错误”包的配置错误的构建系统。
因此,在 RPM 中,供应商可以被覆盖,但 buildhost 不能(但您可以使用 /etc/hosts 配置 chroot 来任意映射 IP 地址)。
除了信息显示之外,供应商/构建主机都没有太多用途,因此可以更改为您想要的任何内容。我不使用 fpm,也不知道是否可以使用 fpm 进行覆盖。