【问题标题】:change the install prefix during installation in RPM在 RPM 中安装期间更改安装前缀
【发布时间】:2019-05-16 10:24:11
【问题描述】:

我有 rpm1.rpm 和 rpm2.rpm。我想将 rpm2.rpm 安装到安装 rpm1.rpm 的同一位置。 rpm1 在安装时已重新定位。通过下面的命令,我采用重新定位的前缀

rpm -q --queryformat '%{INSTPREFIXES}\n' rpm1

现在,我应该在规范文件中做什么,直到 rpm2 前缀更改为上述命令的输出,即使用户没有将 rpm2 重新定位到路径?换句话说,我想在安装 rpm1 的地方安装 rpm2。

【问题讨论】:

  • 我认为您可以将其添加到 %pre 规则中,并且 RPM 允许更新变量。但是,如果您将其提供给第三方,用户会感到有些惊讶。如果您维护目标(嵌入式设备?)的部署系统,那么也许没问题。如果它是一个通用的 PC 目标,我认为它会混淆人们。

标签: rpm specifications rpmbuild rpm-spec


【解决方案1】:

正如@artless-noise 所建议的那样,它会让用户感到困惑,并且不会受到标准的支持。也许你可以以某种方式破解它,但不推荐这样做。

有以下可能的替代方案,如果您提到了您想要相同位置的原因,我可能会更具体。

  • 如果您不想在同一系统上使用 rpm1,请在规范文件中使用 Conflicts 标记
  • 如果要在安装 rpm2 之前卸载 rpm1,请在 spec 文件中使用 Obsoletes 标签
  • 如果您想同时安装两个 rpm 并希望系统管理员在它们之间选择默认值,请使用替代包系统。

更多信息请查看https://docs.fedoraproject.org/en-US/packaging-guidelines/Alternatives/

【讨论】:

    猜你喜欢
    • 2011-06-27
    • 1970-01-01
    • 1970-01-01
    • 2012-12-15
    • 2014-12-12
    • 2012-01-05
    • 1970-01-01
    • 2014-08-12
    • 2019-01-13
    相关资源
    最近更新 更多