[iputils] install everything in /usr
Harald Hoyer
harald at fedoraproject.org
Wed Jan 25 19:46:41 UTC 2012
commit 3c830524423b1d77e7bd1de142e7aeb47c9a00f1
Author: Harald Hoyer <harald at redhat.com>
Date: Wed Jan 25 18:43:32 2012 +0100
install everything in /usr
This patch is needed for the /usr-move feature
https://fedoraproject.org/wiki/Features/UsrMove
This package requires now 'filesystem' >= 3, which is only installable
on a system which has /bin, /sbin, /lib, /lib64 as symlinks to /usr and
not regular directories. The 'filesystem' package acts as a guard, to
prevent *this* package to be installed on old unconverted systems.
New installations will have the 'filesystem' >=3 layout right away, old
installations need to be converted with anaconda or dracut first; only
after that, the 'filesystem' package, and also *this* package can be
installed.
Packages *should* not install files in /bin, /sbin, /lib, /lib64, but
only in the corresponding directories in /usr. Packages *must* not
install conflicting files with the same names in the corresponding
directories in / and /usr. Especially compatibility symlinks must not be
installed.
Feel free to modify any of the changes to the spec file, but keep the
above in mind.
iputils.spec | 59 +++++++++++++++++++++++++++++++++------------------------
1 files changed, 34 insertions(+), 25 deletions(-)
---
diff --git a/iputils.spec b/iputils.spec
index 30df20b..b38af2c 100644
--- a/iputils.spec
+++ b/iputils.spec
@@ -1,7 +1,7 @@
Summary: Network monitoring tools including ping
Name: iputils
Version: 20101006
-Release: 13%{?dist}
+Release: 14%{?dist}
License: BSD
URL: http://www.skbuff.net/iputils
Group: System Environment/Daemons
@@ -43,6 +43,12 @@ Requires(preun): /sbin/chkconfig
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
+BuildRequires: systemd-units
+Conflicts: filesystem < 3
+Provides: /bin/ping
+Provides: /bin/ping6
+Provides: /sbin/arping
+Provides: /sbin/rdisc
%description
The iputils package contains basic utilities for monitoring a network,
@@ -99,24 +105,23 @@ make -C doc man
rm -rf ${RPM_BUILD_ROOT}
mkdir -p ${RPM_BUILD_ROOT}%{_sbindir}
-mkdir -p ${RPM_BUILD_ROOT}/{bin,sbin}
-mkdir -p $RPM_BUILD_ROOT/lib/systemd/system
+mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
+mkdir -p $RPM_BUILD_ROOT/%{_unitdir}
mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig
install -c clockdiff ${RPM_BUILD_ROOT}%{_sbindir}/
-install -cp arping ${RPM_BUILD_ROOT}/sbin/
-ln -s /sbin/arping ${RPM_BUILD_ROOT}%{_sbindir}/arping
-install -cp ping ${RPM_BUILD_ROOT}/bin/
-install -cp ifenslave ${RPM_BUILD_ROOT}/sbin/
-install -cp rdisc ${RPM_BUILD_ROOT}/sbin/
-install -cp ping6 ${RPM_BUILD_ROOT}/bin/
-install -cp tracepath ${RPM_BUILD_ROOT}/bin/
-install -cp tracepath6 ${RPM_BUILD_ROOT}/bin/
+install -cp arping ${RPM_BUILD_ROOT}%{_sbindir}/
+install -cp ping ${RPM_BUILD_ROOT}%{_bindir}/
+install -cp ifenslave ${RPM_BUILD_ROOT}%{_sbindir}/
+install -cp rdisc ${RPM_BUILD_ROOT}%{_sbindir}/
+install -cp ping6 ${RPM_BUILD_ROOT}%{_bindir}/
+install -cp tracepath ${RPM_BUILD_ROOT}%{_bindir}/
+install -cp tracepath6 ${RPM_BUILD_ROOT}%{_bindir}/
mkdir -p ${RPM_BUILD_ROOT}%{_bindir}
-ln -sf /bin/ping6 ${RPM_BUILD_ROOT}%{_sbindir}
-ln -sf /bin/tracepath ${RPM_BUILD_ROOT}%{_sbindir}
-ln -sf /bin/tracepath6 ${RPM_BUILD_ROOT}%{_sbindir}
+ln -sf ../bin/ping6 ${RPM_BUILD_ROOT}%{_sbindir}
+ln -sf ../bin/tracepath ${RPM_BUILD_ROOT}%{_sbindir}
+ln -sf ../bin/tracepath6 ${RPM_BUILD_ROOT}%{_sbindir}
mkdir -p ${RPM_BUILD_ROOT}%{_mandir}/man8
install -cp doc/clockdiff.8 ${RPM_BUILD_ROOT}%{_mandir}/man8/
@@ -131,14 +136,14 @@ ln -s tracepath.8.gz ${RPM_BUILD_ROOT}%{_mandir}/man8/tracepath6.8.gz
install -dp ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d
install -m 755 -p %SOURCE3 ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d/rdisc
install -m 644 %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/rdisc
-install -m 644 %SOURCE4 ${RPM_BUILD_ROOT}/lib/systemd/system
+install -m 644 %SOURCE4 ${RPM_BUILD_ROOT}/%{_unitdir}
iconv -f ISO88591 -t UTF8 RELNOTES -o RELNOTES.tmp
touch -r RELNOTES RELNOTES.tmp
mv -f RELNOTES.tmp RELNOTES
%post
-/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+%{_bindir}/systemctl daemon-reload >/dev/null 2>&1 || :
%preun
if [ $1 = 0 ]; then
@@ -147,7 +152,7 @@ if [ $1 = 0 ]; then
fi
%postun
-/bin/systemctl daemon-reload >/dev/null 2>&1 || :
+%{_bindir}/systemctl daemon-reload >/dev/null 2>&1 || :
if [ "$1" -ge "1" ]; then
/bin/systemctl try-restart rdisc.service >/dev/null 2>&1 || :
@@ -166,16 +171,16 @@ rm -rf ${RPM_BUILD_ROOT}
%files
%defattr(-,root,root,-)
%doc RELNOTES README.bonding
-/lib/systemd/system/rdisc.service
+%{_unitdir}/rdisc.service
%{_sbindir}/clockdiff
-/sbin/arping
%{_sbindir}/arping
-%attr(0755,root,root) %caps(cap_net_raw=ep) /bin/ping
-/sbin/ifenslave
-/sbin/rdisc
-%attr(0755,root,root) %caps(cap_net_raw=ep) /bin/ping6
-/bin/tracepath
-/bin/tracepath6
+%{_sbindir}/arping
+%attr(0755,root,root) %caps(cap_net_raw=ep) %{_bindir}/ping
+%{_sbindir}/ifenslave
+%{_sbindir}/rdisc
+%attr(0755,root,root) %caps(cap_net_raw=ep) %{_bindir}/ping6
+%{_bindir}/tracepath
+%{_bindir}/tracepath6
%{_sbindir}/ping6
%{_sbindir}/tracepath
%{_sbindir}/tracepath6
@@ -186,6 +191,10 @@ rm -rf ${RPM_BUILD_ROOT}
%{_sysconfdir}/rc.d/init.d/rdisc
%changelog
+* Wed Jan 25 2012 Harald Hoyer <harald at redhat.com> 20101006-14
+- install everything in /usr
+ https://fedoraproject.org/wiki/Features/UsrMove
+
* Fri Jan 13 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 20101006-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
More information about the scm-commits
mailing list