【问题标题】:creating a RPM to simply unpack a tar ball创建一个 RPM 来简单地解压 tar 球
【发布时间】:2011-04-17 20:27:25
【问题描述】:

我正在为一个 rpm 编写一个 .spec 文件,它只是将一个 tar 球解压到文件系统上的某个目录中

那么我应该把原始的 tar 球放在哪里呢?我看到的所有示例都是从 Internet 下载原始 tar 球。但我的情况并非如此。

我应该将 tar 球放在 %files 部分中,以便它成为 rpm 的一部分吗?如果是这样,那么我如何在要解压缩它的 %setup 宏中引用它?

【问题讨论】:

    标签: rpm rpmbuild


    【解决方案1】:

    RPM 中的压缩包 - 坏主意。您应该做的是在 %install 阶段将 tarball 解压缩到临时假根文件夹中的适当位置,然后列出 %files 中的所有内容。 RPM 会压缩内容,因此您不会丢失 RPM 大小的任何内容,但现在可以跟踪新 RPM 中包含的文件的更改并且可以进行验证 (rpm -qV)。

    【讨论】:

    • 上面的答案是正确的,只是想补充/澄清一下:将tar球列为Source(例如:Source00:example.tar.bz2),然后在%setup中解压(如果需要) ,将其安装在 %install 中(cp 东西到 buildroot 中),在 %files 中列出文件。
    【解决方案2】:

    更好的主意:

    使用 fpm 将您的 tarball 制作成 RPM:

    fpm -s tar -t rpm --name <rpm-name> --version <rpm-version> <tarball-file-name>
    

    【讨论】:

      猜你喜欢
      • 2017-06-24
      • 1970-01-01
      • 2016-01-25
      • 2011-03-21
      • 1970-01-01
      • 2014-04-10
      • 2014-03-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多