包更新另一个存储库中的另一个包

时间:2011-09-22 12:27:12

标签: repository package rpm yum rpmbuild

我已经创建了存储我自己的包的存储库。 系统使用我和其他一些公共存储库。

所以现在我在我的仓库中有一个包,我希望将其作为来自另一个存储库的其他包的更新。

存储库是基于rpm包的。

通常是否可以标记我自己的包来更新另一个包?

2 个答案:

答案 0 :(得分:0)

回答我自己的问题,是的,yum平等地对待所有的存储库。所以我需要做的就是设置相同的包名和增加版本号。

要测试它,您只需要创建一个yum repo并设置yum以使用您的存储库获取更多信息here

答案 1 :(得分:0)

(我会对前面的答案做出评论,但是时间过长了。)

使用相同的软件包名称只是碰撞版本号时出现问题。

最终原始软件包可能会增加其版本号,超过您正在使用的版本号,在这种情况下,某人可能会进行yum更新并最终升级回原始软件包。

要避免此问题,可以稍微更改软件包名称,并将一些Obsoletes和Conflicts依赖项添加到spec文件中。 Obsoletes依赖项允许将原始包升级到您的包,而Conflicts保持原始包与包一起安装。

这应该使上游版本不会破坏您的更改。

请参阅http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-dependencies.html