devel: Don't run hardlink if rpm-ostree is in use

OSTree is a far, far more sophisticated wrapper around the `link()`
system call than the `hardlink` package - it supports using
as a mechanism for transactional offline updates, fetching over
HTTP with GPG signatures and deltas, etc.  rpm-ostree uses it
for everything.

Having the `kernel-devel` package run `hardlink` just adds
latency to `rpm-ostree compose tree` unnecessarily.
This commit is contained in:
Colin Walters 2019-03-29 02:26:34 +00:00
parent c552794cd5
commit c5368cf936
1 changed files with 4 additions and 1 deletions

View File

@ -1686,6 +1686,9 @@ rm -rf $RPM_BUILD_ROOT/usr/tmp-headers
#
# This macro defines a %%post script for a kernel*-devel package.
# %%kernel_devel_post [<subpackage>]
# Note we don't run hardlink if ostree is in use, as ostree is
# a far more sophisticated hardlink implementation.
# https://github.com/projectatomic/rpm-ostree/commit/58a79056a889be8814aa51f507b2c7a4dccee526
#
%define kernel_devel_post() \
%{expand:%%post %{?1:%{1}-}devel}\
@ -1693,7 +1696,7 @@ if [ -f /etc/sysconfig/kernel ]\
then\
. /etc/sysconfig/kernel || exit $?\
fi\
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ]\
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink -a ! -e /run/ostree-booted ] \
then\
(cd /usr/src/kernels/%{KVERREL}%{?1:+%{1}} &&\
/usr/bin/find . -type f | while read f; do\