]> git.pld-linux.org Git - packages/SysVinit.git/blame - SysVinit.spec
- doc src/initscript.sample
[packages/SysVinit.git] / SysVinit.spec
CommitLineData
151a330a
AM
1#
2# Conditional build:
3%bcond_with preconfigured
4%bcond_without selinux # build without SELinux support
5#
6Summary: System V initialization program
7Summary(de.UTF-8): System V-Intialisierungsprogramm
8Summary(es.UTF-8): Programa de inicialización System V
9Summary(fr.UTF-8): Programme d'initialisation Sys V
10Summary(pl.UTF-8): Program inicjalizujący w Systemie V
11Summary(pt_BR.UTF-8): Programa de inicialização System V
12Summary(ru.UTF-8): Программы, управляющие базовыми системными процессами
13Summary(tr.UTF-8): System V başlatma programı
14Summary(uk.UTF-8): Програми, що керують базовими системними процесами
15Name: SysVinit
16Version: 2.86
5db5adcd 17Release: 20
151a330a
AM
18License: GPL
19Group: Base
20Source0: ftp://ftp.cistron.nl/pub/people/miquels/software/sysvinit-%{version}.tar.gz
21# Source0-md5: 7d5d61c026122ab791ac04c8a84db967
22Source1: sysvinit.logrotate
23Source2: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
24# Source2-md5: 9ae8a63a4685368fae19707f95475cca
25Patch0: sysvinit-paths.patch
26Patch1: sysvinit-bequiet.patch
27Patch2: sysvinit-md5-bigendian.patch
28Patch3: sysvinit-wtmp.patch
29Patch4: sysvinit-man.patch
30Patch5: sysvinit-halt.patch
31Patch6: sysvinit-blowfish.patch
32Patch7: sysvinit-autofsck.patch
33Patch8: sysvinit-pidof.patch
34Patch9: sysvinit-killall5.patch
35Patch10: sysvinit-selinux.patch
36Patch11: sysvinit-nopowerstates-single.patch
37Patch12: sysvinit-lastlog.patch
38Patch13: sysvinit-alt-fixes.patch
39Patch14: sysvinit-chroot.patch
40Patch15: sysvinit-console-open.patch
41Patch16: sysvinit-godot.patch
42Patch17: sysvinit-haltname.patch
43Patch18: sysvinit-ipv6.patch
44Patch19: sysvinit-maxproclen.patch
45Patch20: sysvinit-quiet.patch
46Patch21: sysvinit-timeval.patch
47Patch22: sysvinit-no-abort.patch
48Patch23: sysvinit-rebootconfirmation.patch
49%if %{with selinux}
50BuildRequires: libselinux-devel >= 1.28
51BuildRequires: libsepol-devel
52%endif
53BuildRequires: rpmbuild(macros) >= 1.202
54Requires(post): fileutils
55Requires(postun): /usr/sbin/groupdel
56Requires(pre): /usr/bin/getgid
57Requires(pre): /usr/sbin/groupadd
58Requires: /bin/awk
59%{?with_selinux:Requires: libselinux >= 1.18}
60Requires: login
151a330a
AM
61Requires: mingetty
62Provides: group(utmp)
63Provides: virtual(init-daemon)
64Obsoletes: virtual(init-daemon)
65Obsoletes: vserver-SysVinit
66BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
67
68%define _sbindir /sbin
69# as in original flags
70%define specflags -fomit-frame-pointer
71
72%description
73The SysVinit package contains a group of processes that control the
74very basic functions of your system. SysVinit includes the init
75program, the first program started by the Linux kernel when the system
76boots. Init then controls the startup, running and shutdown of all
77other programs.
78
79%description -l de.UTF-8
80SysVinit ist das erste Programm, das beim Systemstart vom Linux-Kernel
81gestartet wird. Es steuert das Starten, Ausführen und Beenden aller
82anderen Programme.
83
84%description -l es.UTF-8
85SysVinit es el primer programa ejecutado por el kernel Linux cuando se
86inicia el sistema. Controla arranque, funcionamiento y cierre de todos
87los otros programas.
88
89%description -l fr.UTF-8
90SysVinit est le premier programme exécuté par le noyau de Linux
91lorsque le système démarre, il contrôle le lancement, l'exécution et
92l'arrêt de tous les autres programmes.
93
94%description -l pl.UTF-8
95SysVinit jest pierwszym programem uruchamianym przez jądro podczas
96startu systemu. Kontroluje start, pracę oraz zamykanie wszystkich
97innych programów.
98
99%description -l pt_BR.UTF-8
100SysVinit é o primeiro programa executado pelo kernel Linux quando o
101sistema é inicializado. Controla inicialização, funcionamento e
102finalização de todos os outros programas.
103
104%description -l ru.UTF-8
105Пакет SysVinit содержит группу процессов, которые управляют самыми
106базовыми функциями вашей системы. SysVinit включает программу init,
107самую первую программу, которая запускается ядром Linux при загрузке
108системы. После этого init управляет запуском, исполнением и остановом
109всех остальных программ.
110
111%description -l tr.UTF-8
112SysVinit, sistem açılırken Linux çekirdeği tarafından çalıştırılan ilk
113programdır. Diğer programların başlamalarını, çalışmalarını ve
114sonlanmalarını sağlar/denetler.
115
116%description -l uk.UTF-8
117Пакет SysVinit містить групу процесів, котрі керують самими базовими
118функціями вашої системи. SysVinit містить програму init, першу
119програму, яку запускає ядро Linux під час загрузки системи. Після
120цього init керує запуском, виконанням та зупинкою всіх інших програм.
121
122%prep
123%setup -q -n sysvinit-%{version}
124%patch0 -p1
125%patch1 -p1
126%patch2 -p1
127%patch3 -p1
128%patch4 -p1
129%patch5 -p1
130%patch6 -p1
131%patch7 -p1
132%patch8 -p1
133%patch9 -p1
134%{?with_selinux:%patch10 -p1}
135%patch11 -p1
136%patch12 -p1
137%patch13 -p1
138%patch14 -p1
139%patch15 -p1
140%patch16 -p1
141%patch17 -p1
142%patch18 -p1
143%patch19 -p1
144%patch20 -p1
145%patch21 -p1
146%patch22 -p1
147%patch23 -p0
148
149%build
150%{__make} -C src \
151 CC="%{__cc}" \
152 LCRYPT="-lcrypt" \
153 OPTIMIZE="%{rpmcflags}" \
154 LDFLAGS="%{rpmldflags}"
155
156%install
157rm -rf $RPM_BUILD_ROOT
158install -d $RPM_BUILD_ROOT{/bin,%{_bindir},%{_sbindir},%{_mandir}/man{1,5,8}} \
159 $RPM_BUILD_ROOT{%{_includedir},%{_sysconfdir},/etc/logrotate.d,/var/{log,run}}
160
161%{__make} install -C src \
162 ROOT=$RPM_BUILD_ROOT \
163 BIN_OWNER=`id -u` \
164 BIN_GROUP=`id -g`
165
166install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/sysvinit
167
168ln -sf ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
169ln -sf killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
170
171> $RPM_BUILD_ROOT/var/run/initrunlvl
172> $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
173> $RPM_BUILD_ROOT/var/log/faillog
174> $RPM_BUILD_ROOT/var/log/lastlog
175> $RPM_BUILD_ROOT/var/log/wtmpx
176> $RPM_BUILD_ROOT/var/log/btmpx
177
178echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
179echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
180echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
181echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
182bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
183rm -f $RPM_BUILD_ROOT%{_includedir}/initreq.h
184rm -f $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
185
186cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
187
188%clean
189rm -rf $RPM_BUILD_ROOT
190
191%pre
192%groupadd -g 22 utmp
193
194%post
195touch %{_sysconfdir}/ioctl.save /var/log/{{fail,last}log,btmpx}
196chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
197chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
198chown root:utmp /var/log/lastlog
199chmod 600 %{_sysconfdir}/ioctl.save
200chmod 640 /var/log/faillog
201chmod 660 /var/log/lastlog
202chmod 640 /var/log/btmpx
203if [ -p /dev/initctl ]; then
204 %{_sbindir}/telinit u || :
205fi
206
207%triggerpostun -- glibc
208if [ -p /dev/initctl ]; then
209 %{_sbindir}/telinit u || :
210fi
211
212%postun
213if [ "$1" = "0" ]; then
214 %groupremove utmp
215fi
216
217%files
218%defattr(644,root,root,755)
18a15977 219%doc doc/{Propaganda,Changelog,*.lsm} src/initscript.sample
151a330a
AM
220
221%attr(755,root,root) /bin/mountpoint
222%attr(755,root,root) %{_sbindir}/*
223%attr(755,root,root) %{_bindir}/last
224%attr(755,root,root) %{_bindir}/lastb
225%attr(755,root,root) %{_bindir}/mesg
226%attr(755,root,root) %{_bindir}/utmpx-dump
227%attr(2755,root,tty) %{_bindir}/wall
228
229%attr(640,root,root) /etc/logrotate.d/sysvinit
230%ghost %{_sysconfdir}/initrunlvl
231%ghost /var/run/initrunlvl
232%attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
233%attr(640,root,root) %ghost /var/log/faillog
234%attr(660,root,utmp) %ghost /var/log/lastlog
235%attr(664,root,utmp) %ghost /var/log/wtmpx
236%attr(640,root,root) %ghost /var/log/btmpx
237
238%{_mandir}/man[158]/*
239%lang(cs) %{_mandir}/cs/man[158]/*
240%lang(de) %{_mandir}/de/man[158]/*
241%lang(es) %{_mandir}/es/man[158]/*
242%lang(fi) %{_mandir}/fi/man[158]/*
243%lang(fr) %{_mandir}/fr/man[158]/*
244%lang(hu) %{_mandir}/hu/man[158]/*
245%lang(id) %{_mandir}/id/man[158]/*
246%lang(it) %{_mandir}/it/man[158]/*
247%lang(ja) %{_mandir}/ja/man[158]/*
248%lang(ko) %{_mandir}/ko/man[158]/*
249%lang(pl) %{_mandir}/pl/man[158]/*
250%lang(ru) %{_mandir}/ru/man[158]/*
251%lang(sv) %{_mandir}/sv/man[158]/*
252
253# devel?
254#%{_includedir}/initreq.h
This page took 0.07047 seconds and 4 git commands to generate.