#
# Conditional build:
-%bcond_with preconfigured
%bcond_without selinux # build without SELinux support
#
Summary: System V initialization program
Summary(uk.UTF-8): Програми, що керують базовими системними процесами
Name: SysVinit
Version: 2.88
-Release: 0.1
-License: GPL
+Release: 16
+License: GPL v2+
Group: Base
Source0: http://download.savannah.gnu.org/releases/sysvinit/sysvinit-%{version}dsf.tar.bz2
# Source0-md5: 6eda8a97b86e0a6f59dabbf25202aa6f
Source1: sysvinit.logrotate
Source2: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
+Source3: crypttab.5
# Source2-md5: 9ae8a63a4685368fae19707f95475cca
Patch0: sysvinit-paths.patch
Patch1: sysvinit-bequiet.patch
-Patch3: sysvinit-wtmp.patch
-Patch4: sysvinit-man.patch
-Patch5: sysvinit-halt.patch
-Patch7: sysvinit-autofsck.patch
-Patch8: sysvinit-pidof.patch
-Patch9: sysvinit-killall5.patch
-Patch11: sysvinit-nopowerstates-single.patch
-Patch12: sysvinit-lastlog.patch
-Patch13: sysvinit-alt-fixes.patch
-Patch20: sysvinit-quiet.patch
-Patch23: sysvinit-rebootconfirmation.patch
+Patch2: sysvinit-wtmp.patch
+Patch3: sysvinit-man.patch
+Patch4: sysvinit-halt.patch
+Patch5: sysvinit-autofsck.patch
+Patch6: sysvinit-pidof.patch
+Patch7: sysvinit-killall5.patch
+Patch8: sysvinit-nopowerstates-single.patch
+Patch9: sysvinit-lastlog.patch
+Patch10: sysvinit-alt-fixes.patch
+Patch11: sysvinit-quiet.patch
+Patch12: sysvinit-rebootconfirmation.patch
+URL: http://savannah.nongnu.org/projects/sysvinit/
%if %{with selinux}
BuildRequires: libselinux-devel >= 1.28
BuildRequires: libsepol-devel
%{?with_selinux:Requires: libselinux >= 1.18}
Requires: login
Requires: mingetty
-Requires: util-linux >= 2.20-5
+Requires: util-linux >= 2.24-1
Provides: group(utmp)
Provides: virtual(init-daemon)
-Obsoletes: upstart-SysVinit
Obsoletes: virtual(init-daemon)
Obsoletes: vserver-SysVinit
+Conflicts: rc-scripts < 0.4.9-1
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%define _sbindir /sbin
%package tools
Summary: Tools used for process and utmp management
+Summary(pl.UTF-8): Narzędzia do zarządzania procesami i bazą utmp
Group: Base
+Obsoletes: upstart-SysVinit
+Conflicts: SysVinit < 2.86-27
+Conflicts: rc-scripts < 0.4.5.1-6
+Conflicts: util-linux < 2.22
%description tools
-The sysvinit-tools package contains various tools used for process
-management.
+This package contains various tools used for process management.
+
+%description tools -l pl.UTF-8
+Ten pakiet zawiera różne narzędzia do zarządzania procesami.
%prep
%setup -q -n sysvinit-%{version}dsf
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
+%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
+%patch10 -p1
%patch11 -p1
-%patch12 -p1
-%patch13 -p1
-%patch20 -p1
-%patch23 -p0
+%patch12 -p0
%build
%{__make} -C src \
ln -s ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
ln -s killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
-ln -s utmpdump $RPM_BUILD_ROOT%{_bindir}/utmpx-dump
> $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
-> $RPM_BUILD_ROOT/var/log/btmpx
+> $RPM_BUILD_ROOT/var/log/btmp
> $RPM_BUILD_ROOT/var/log/faillog
> $RPM_BUILD_ROOT/var/log/lastlog
-> $RPM_BUILD_ROOT/var/log/wtmpx
+> $RPM_BUILD_ROOT/var/log/wtmp
> $RPM_BUILD_ROOT/var/run/initrunlvl
-echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
-echo .so utmpdump.1 > $RPM_BUILD_ROOT%{_mandir}/man1/utmpx-dump.1
echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
+cp %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man5
+
# in util-linux
-rm $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
+%{__rm} $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
+%{__rm} $RPM_BUILD_ROOT{/sbin/sulogin,%{_mandir}/man8/sulogin.8*,%{_mandir}/*/man8/sulogin.8*}
+%{__rm} $RPM_BUILD_ROOT{/usr/bin/utmpdump,%{_mandir}/man1/utmpdump.1*}
+%{__rm} $RPM_BUILD_ROOT{/usr/bin/{last,lastb,mesg},%{_mandir}/man1/{last,lastb,mesg}.1*,%{_mandir}/*/man1/{last,lastb,mesg}.1*}
+
+# fools rpm-build-macros, don't package this file
+:>$RPM_BUILD_ROOT%{_mandir}/man1/utmpdump.1
%clean
rm -rf $RPM_BUILD_ROOT
%groupadd -g 22 utmp
%post
-touch %{_sysconfdir}/ioctl.save /var/log/{btmpx,{fail,last}log}
+touch %{_sysconfdir}/ioctl.save /var/log/{btmp,{fail,last}log}
chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
chown root:utmp /var/log/lastlog
chmod 600 %{_sysconfdir}/ioctl.save
-chmod 640 /var/log/btmpx
+chmod 640 /var/log/btmp
chmod 640 /var/log/faillog
chmod 664 /var/log/lastlog
if [ -p /dev/initctl ]; then
%groupremove utmp
fi
+%triggerpostun -- SysVinit < 2.88-16
+if [ -e /var/log/wtmpx ]; then
+ # wtmp always takes precedence, it's safe to remove wtmpx
+ if [ -s /var/log/wtmp ]; then
+ rm -f /var/log/wtmpx
+ else
+ mv /var/log/wtmpx /var/log/wtmp
+ fi
+fi
+
%files
%defattr(644,root,root,755)
-%doc doc/{Propaganda,Changelog,*.lsm} src/initscript.sample
+%doc COPYRIGHT README doc/{Changelog,Propaganda} src/initscript.sample
%attr(755,root,root) %{_sbindir}/bootlogd
%attr(755,root,root) %{_sbindir}/halt
%ghost %{_sysconfdir}/initrunlvl
%ghost /var/run/initrunlvl
%attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
-%attr(640,root,root) %ghost /var/log/btmpx
-%attr(664,root,utmp) %ghost /var/log/wtmpx
+%attr(640,root,root) %ghost /var/log/btmp
+%attr(664,root,utmp) %ghost /var/log/wtmp
+%{_mandir}/man5/crypttab.5*
%{_mandir}/man5/inittab.5*
%{_mandir}/man5/initscript.5*
%{_mandir}/man8/bootlogd.8*
%{_mandir}/man8/halt.8*
%{_mandir}/man8/init.8*
-%{_mandir}/man8/lastlog.8*
%{_mandir}/man8/poweroff.8
%{_mandir}/man8/reboot.8
%{_mandir}/man8/runlevel.8*
%attr(755,root,root) %{_sbindir}/killall5
%attr(755,root,root) %{_sbindir}/lastlog
%attr(755,root,root) %{_sbindir}/pidof
-%attr(755,root,root) %{_sbindir}/sulogin
-%attr(755,root,root) %{_bindir}/last
-%attr(755,root,root) %{_bindir}/lastb
-%attr(755,root,root) %{_bindir}/mesg
-%attr(755,root,root) %{_bindir}/utmpdump
-%attr(755,root,root) %{_bindir}/utmpx-dump
-%attr(755,root,root) %{_bindir}/wall
+%attr(2755,root,tty) %{_bindir}/wall
%attr(640,root,root) %ghost /var/log/faillog
%attr(664,root,utmp) %ghost /var/log/lastlog
-%{_mandir}/man1/last.1*
-%{_mandir}/man1/lastb.1*
-%{_mandir}/man1/mesg.1*
%{_mandir}/man1/wall.1*
-%{_mandir}/man1/utmpdump.1*
-%{_mandir}/man1/utmpx-dump.1*
%{_mandir}/man8/killall5.8*
+%{_mandir}/man8/lastlog.8*
%{_mandir}/man8/pidof.8*
-%{_mandir}/man8/sulogin.8*
%{_mandir}/man8/fstab-decode.8*
%lang(cs) %{_mandir}/cs/man8/lastlog.8*
-%lang(es) %{_mandir}/es/man1/last.1*
-%lang(es) %{_mandir}/es/man1/lastb.1
-%lang(es) %{_mandir}/es/man1/mesg.1*
%lang(es) %{_mandir}/es/man1/wall.1*
%lang(es) %{_mandir}/es/man8/killall5.8*
%lang(es) %{_mandir}/es/man8/pidof.8*
-%lang(es) %{_mandir}/es/man8/sulogin.8*
-%lang(fi) %{_mandir}/fi/man1/last.1*
-%lang(fi) %{_mandir}/fi/man1/mesg.1*
%lang(fi) %{_mandir}/fi/man1/wall.1*
-%lang(fr) %{_mandir}/fr/man1/last.1*
-%lang(fr) %{_mandir}/fr/man1/mesg.1*
%lang(fr) %{_mandir}/fr/man1/wall.1*
%lang(fr) %{_mandir}/fr/man8/killall5.8*
%lang(fr) %{_mandir}/fr/man8/lastlog.8*
%lang(fr) %{_mandir}/fr/man8/pidof.8*
-%lang(hu) %{_mandir}/hu/man1/last.1*
-%lang(hu) %{_mandir}/hu/man1/mesg.1*
%lang(hu) %{_mandir}/hu/man1/wall.1*
%lang(hu) %{_mandir}/hu/man8/lastlog.8*
-%lang(it) %{_mandir}/it/man1/last.1*
-%lang(it) %{_mandir}/it/man1/lastb.1
-%lang(it) %{_mandir}/it/man1/mesg.1*
%lang(it) %{_mandir}/it/man1/wall.1*
%lang(it) %{_mandir}/it/man8/killall5.8*
%lang(it) %{_mandir}/it/man8/lastlog.8*
%lang(it) %{_mandir}/it/man8/pidof.8*
-%lang(it) %{_mandir}/it/man8/sulogin.8*
-%lang(ja) %{_mandir}/ja/man1/last.1*
-%lang(ja) %{_mandir}/ja/man1/lastb.1
-%lang(ja) %{_mandir}/ja/man1/mesg.1*
%lang(ja) %{_mandir}/ja/man1/wall.1*
%lang(ja) %{_mandir}/ja/man8/killall5.8*
%lang(ja) %{_mandir}/ja/man8/lastlog.8*
%lang(ja) %{_mandir}/ja/man8/pidof.8*
-%lang(ja) %{_mandir}/ja/man8/sulogin.8*
-%lang(ko) %{_mandir}/ko/man1/last.1*
-%lang(ko) %{_mandir}/ko/man1/lastb.1
-%lang(ko) %{_mandir}/ko/man1/mesg.1*
%lang(ko) %{_mandir}/ko/man8/killall5.8*
%lang(ko) %{_mandir}/ko/man8/pidof.8*
-%lang(ko) %{_mandir}/ko/man8/sulogin.8*
-%lang(pl) %{_mandir}/pl/man1/last.1*
-%lang(pl) %{_mandir}/pl/man1/lastb.1
-%lang(pl) %{_mandir}/pl/man1/mesg.1*
%lang(pl) %{_mandir}/pl/man1/wall.1*
%lang(pl) %{_mandir}/pl/man8/killall5.8*
%lang(pl) %{_mandir}/pl/man8/lastlog.8*
%lang(pl) %{_mandir}/pl/man8/pidof.8*
-%lang(pl) %{_mandir}/pl/man8/sulogin.8*
%lang(ru) %{_mandir}/ru/man8/lastlog.8*
%lang(sv) %{_mandir}/sv/man8/lastlog.8*