rpmbuild:brp-java-repack-jars更改jar权限

时间:2015-06-24 22:05:46

标签: linux jar file-permissions rpm rpmbuild

考虑包含以下内容的SPEC文件:

%install
install -m u=rwx,g=rx,o= -D bin/blah.jar ${RPM_BUILD_ROOT}%{_libexecdir}/foo/blah.jar

然后在%files部分中,权限不会更改(例如%defattr(-,bubba,users,-))。

安装RPM会导致blah.jar拥有权限644而不是640。实际上,无论install命令中使用了哪些权限,它们都会重置为默认640。我发现原因是jar重新打包,因为如果我通过将%define __jar_repack %{nil}添加到SPEC文件来禁用重新打包,则会保留权限。

这是重新包装商的一个令人讨厌的错误。

如何让重新打包工作保留权限(我的意思是保留,而不是在%files部分设置它们,因为那时我就是这样)不仅要在%install中而且在%files中提及单个文件,而不仅仅是后者中的整个目录?

0 个答案:

没有答案