SBT本机打包程序:解压缩%install中的工件
我将sbt原生打包机(0.8.0)与sbt 0.13.5一起使用。我有一个zip文件,应该作为RPM安装的一部分进行解压缩。在RPM规范中,它将位于SBT本机打包程序:解压缩%install中的工件,sbt,rpm,sbt-native-packager,Sbt,Rpm,Sbt Native Packager,我将sbt原生打包机(0.8.0)与sbt 0.13.5一起使用。我有一个zip文件,应该作为RPM安装的一部分进行解压缩。在RPM规范中,它将位于%install部分,我将在哪里使用sbt native packager定义它?我可以解压工件并将解压后的文件夹添加为linuxpackgemapping,但我想检查是否有办法将zip包含在RPM中并在安装过程中解压。在Etan的注释旁边,该注释指出在安装过程中不应创建新文件(如果没有必要)。这就是在rpm中放置额外rpm脚本的方式。还可以看到 更
%install
部分,我将在哪里使用sbt native packager定义它?我可以解压工件并将解压后的文件夹添加为linuxpackgemapping
,但我想检查是否有办法将zip包含在RPM中并在安装过程中解压。在Etan的注释旁边,该注释指出在安装过程中不应创建新文件(如果没有必要)。这就是在rpm中放置额外rpm脚本的方式。还可以看到
更新
还可以看看
干杯,
Muki关于rpm工作原理的小说明。在安装计算机上安装软件包时,规范文件的
%install
部分不会出现。它发生在包构建期间,是将打包rpm中的文件放入buildroot目录的地方。安装计算机上仅运行规范文件中的%pre
/%post
/等脚本。(通常,您不想将新文件放在那里,因为这样rpm就不会知道您的软件包拥有它们,除非您在%files
部分将它们列为%ghost
文件。)@EtanReisner感谢您澄清%install
的工作。
rpmPost := {
val prev = rpmPost.value.getOrElse("")
Some(s"""|$prev
| unzip magic-file.zip
|""".stripMargin)
}