3 %bcond_with preconfigured
4 %bcond_without selinux # build without SELinux support
6 Summary: System V initialization program
7 Summary(de.UTF-8): System V-Intialisierungsprogramm
8 Summary(es.UTF-8): Programa de inicialización System V
9 Summary(fr.UTF-8): Programme d'initialisation Sys V
10 Summary(pl.UTF-8): Program inicjalizujący w Systemie V
11 Summary(pt_BR.UTF-8): Programa de inicialização System V
12 Summary(ru.UTF-8): Программы, управляющие базовыми системными процессами
13 Summary(tr.UTF-8): System V başlatma programı
14 Summary(uk.UTF-8): Програми, що керують базовими системними процесами
20 Source0: ftp://ftp.cistron.nl/pub/people/miquels/software/sysvinit-%{version}.tar.gz
21 # Source0-md5: 7d5d61c026122ab791ac04c8a84db967
22 Source1: sysvinit.logrotate
23 Source2: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
24 # Source2-md5: 9ae8a63a4685368fae19707f95475cca
25 Patch0: sysvinit-paths.patch
26 Patch1: sysvinit-bequiet.patch
27 Patch2: sysvinit-md5-bigendian.patch
28 Patch3: sysvinit-wtmp.patch
29 Patch4: sysvinit-man.patch
30 Patch5: sysvinit-halt.patch
31 Patch6: sysvinit-blowfish.patch
32 Patch7: sysvinit-autofsck.patch
33 Patch8: sysvinit-pidof.patch
34 Patch9: sysvinit-killall5.patch
35 Patch10: sysvinit-selinux.patch
36 Patch11: sysvinit-nopowerstates-single.patch
37 Patch12: sysvinit-lastlog.patch
38 Patch13: sysvinit-alt-fixes.patch
39 Patch14: sysvinit-chroot.patch
40 Patch15: sysvinit-console-open.patch
41 Patch16: sysvinit-godot.patch
42 Patch17: sysvinit-haltname.patch
43 Patch18: sysvinit-ipv6.patch
44 Patch19: sysvinit-maxproclen.patch
45 Patch20: sysvinit-quiet.patch
46 Patch21: sysvinit-timeval.patch
47 Patch22: sysvinit-no-abort.patch
48 Patch23: sysvinit-rebootconfirmation.patch
50 BuildRequires: libselinux-devel >= 1.28
51 BuildRequires: libsepol-devel
53 BuildRequires: rpmbuild(macros) >= 1.202
54 Requires(postun): /usr/sbin/groupdel
55 Requires(pre): /usr/bin/getgid
56 Requires(pre): /usr/sbin/groupadd
57 Requires: %{name}-tools = %{version}-%{release}
59 %{?with_selinux:Requires: libselinux >= 1.18}
62 Requires: util-linux >= 2.20-5
64 Provides: virtual(init-daemon)
65 Obsoletes: upstart-SysVinit
66 Obsoletes: virtual(init-daemon)
67 Obsoletes: vserver-SysVinit
68 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
70 %define _sbindir /sbin
71 # as in original flags
72 %define specflags -fomit-frame-pointer
75 The SysVinit package contains a group of processes that control the
76 very basic functions of your system. SysVinit includes the init
77 program, the first program started by the Linux kernel when the system
78 boots. Init then controls the startup, running and shutdown of all
81 %description -l de.UTF-8
82 SysVinit ist das erste Programm, das beim Systemstart vom Linux-Kernel
83 gestartet wird. Es steuert das Starten, Ausführen und Beenden aller
86 %description -l es.UTF-8
87 SysVinit es el primer programa ejecutado por el kernel Linux cuando se
88 inicia el sistema. Controla arranque, funcionamiento y cierre de todos
91 %description -l fr.UTF-8
92 SysVinit est le premier programme exécuté par le noyau de Linux
93 lorsque le système démarre, il contrôle le lancement, l'exécution et
94 l'arrêt de tous les autres programmes.
96 %description -l pl.UTF-8
97 SysVinit jest pierwszym programem uruchamianym przez jądro podczas
98 startu systemu. Kontroluje start, pracę oraz zamykanie wszystkich
101 %description -l pt_BR.UTF-8
102 SysVinit é o primeiro programa executado pelo kernel Linux quando o
103 sistema é inicializado. Controla inicialização, funcionamento e
104 finalização de todos os outros programas.
106 %description -l ru.UTF-8
107 Пакет SysVinit содержит группу процессов, которые управляют самыми
108 базовыми функциями вашей системы. SysVinit включает программу init,
109 самую первую программу, которая запускается ядром Linux при загрузке
110 системы. После этого init управляет запуском, исполнением и остановом
111 всех остальных программ.
113 %description -l tr.UTF-8
114 SysVinit, sistem açılırken Linux çekirdeği tarafından çalıştırılan ilk
115 programdır. Diğer programların başlamalarını, çalışmalarını ve
116 sonlanmalarını sağlar/denetler.
118 %description -l uk.UTF-8
119 Пакет SysVinit містить групу процесів, котрі керують самими базовими
120 функціями вашої системи. SysVinit містить програму init, першу
121 програму, яку запускає ядро Linux під час загрузки системи. Після
122 цього init керує запуском, виконанням та зупинкою всіх інших програм.
125 Summary: Tools used for process and utmp management
129 The sysvinit-tools package contains various tools used for process
133 %setup -q -n sysvinit-%{version}
144 %{?with_selinux:%patch10 -p1}
163 OPTIMIZE="%{rpmcflags}" \
164 LDFLAGS="%{rpmldflags}"
167 rm -rf $RPM_BUILD_ROOT
168 install -d $RPM_BUILD_ROOT{/bin,%{_bindir},%{_sbindir},%{_mandir}/man{1,5,8}} \
169 $RPM_BUILD_ROOT{%{_includedir},%{_sysconfdir},/etc/logrotate.d,/var/{log,run}}
171 %{__make} install -C src \
172 ROOT=$RPM_BUILD_ROOT \
176 install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/sysvinit
178 ln -sf ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
179 ln -sf killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
181 > $RPM_BUILD_ROOT/var/run/initrunlvl
182 > $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
183 > $RPM_BUILD_ROOT/var/log/faillog
184 > $RPM_BUILD_ROOT/var/log/lastlog
185 > $RPM_BUILD_ROOT/var/log/wtmpx
186 > $RPM_BUILD_ROOT/var/log/btmpx
188 echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
189 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
190 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
191 echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
192 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
193 rm -f $RPM_BUILD_ROOT%{_includedir}/initreq.h
194 rm -f $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
196 cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
199 rm $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
202 rm -rf $RPM_BUILD_ROOT
208 touch %{_sysconfdir}/ioctl.save /var/log/{{fail,last}log,btmpx}
209 chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
210 chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
211 chown root:utmp /var/log/lastlog
212 chmod 600 %{_sysconfdir}/ioctl.save
213 chmod 640 /var/log/faillog
214 chmod 664 /var/log/lastlog
215 chmod 640 /var/log/btmpx
216 if [ -p /dev/initctl ]; then
217 %{_sbindir}/telinit u || :
220 %triggerpostun -- glibc
221 if [ -p /dev/initctl ]; then
222 %{_sbindir}/telinit u || :
226 if [ "$1" = "0" ]; then
231 %defattr(644,root,root,755)
232 %doc doc/{Propaganda,Changelog,*.lsm} src/initscript.sample
234 %attr(755,root,root) %{_sbindir}/bootlogd
235 %attr(755,root,root) %{_sbindir}/halt
236 %attr(755,root,root) %{_sbindir}/init
237 %attr(755,root,root) %{_sbindir}/poweroff
238 %attr(755,root,root) %{_sbindir}/reboot
239 %attr(755,root,root) %{_sbindir}/runlevel
240 %attr(755,root,root) %{_sbindir}/shutdown
241 %attr(755,root,root) %{_sbindir}/telinit
242 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/sysvinit
243 %ghost %{_sysconfdir}/initrunlvl
244 %ghost /var/run/initrunlvl
245 %attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
246 %attr(640,root,root) %ghost /var/log/faillog
247 %attr(664,root,utmp) %ghost /var/log/lastlog
248 %attr(664,root,utmp) %ghost /var/log/wtmpx
249 %attr(640,root,root) %ghost /var/log/btmpx
251 %{_mandir}/man5/inittab.5*
252 %{_mandir}/man5/initscript.5*
253 %{_mandir}/man8/bootlogd.8*
254 %{_mandir}/man8/halt.8*
255 %{_mandir}/man8/init.8*
256 %{_mandir}/man8/lastlog.8*
257 %{_mandir}/man8/poweroff.8
258 %{_mandir}/man8/reboot.8
259 %{_mandir}/man8/runlevel.8*
260 %{_mandir}/man8/shutdown.8*
261 %{_mandir}/man8/telinit.8
262 %lang(de) %{_mandir}/de/man8/init.8*
263 %lang(de) %{_mandir}/de/man8/telinit.8
264 %lang(es) %{_mandir}/es/man5/initscript.5*
265 %lang(es) %{_mandir}/es/man5/inittab.5*
266 %lang(es) %{_mandir}/es/man8/halt.8*
267 %lang(es) %{_mandir}/es/man8/init.8*
268 %lang(es) %{_mandir}/es/man8/poweroff.8
269 %lang(es) %{_mandir}/es/man8/reboot.8
270 %lang(es) %{_mandir}/es/man8/runlevel.8*
271 %lang(es) %{_mandir}/es/man8/shutdown.8*
272 %lang(es) %{_mandir}/es/man8/telinit.8
273 %lang(fr) %{_mandir}/fr/man8/halt.8*
274 %lang(fr) %{_mandir}/fr/man8/reboot.8
275 %lang(fr) %{_mandir}/fr/man8/runlevel.8*
276 %lang(fr) %{_mandir}/fr/man8/shutdown.8*
277 %lang(hu) %{_mandir}/hu/man5/inittab.5*
278 %lang(hu) %{_mandir}/hu/man8/init.8*
279 %lang(hu) %{_mandir}/hu/man8/shutdown.8*
280 %lang(hu) %{_mandir}/hu/man8/telinit.8
281 %lang(id) %{_mandir}/id/man8/halt.8*
282 %lang(id) %{_mandir}/id/man8/reboot.8
283 %lang(id) %{_mandir}/id/man8/shutdown.8*
284 %lang(it) %{_mandir}/it/man5/initscript.5*
285 %lang(it) %{_mandir}/it/man5/inittab.5*
286 %lang(it) %{_mandir}/it/man8/halt.8*
287 %lang(it) %{_mandir}/it/man8/init.8*
288 %lang(it) %{_mandir}/it/man8/reboot.8
289 %lang(it) %{_mandir}/it/man8/runlevel.8*
290 %lang(it) %{_mandir}/it/man8/shutdown.8*
291 %lang(it) %{_mandir}/it/man8/telinit.8
292 %lang(ja) %{_mandir}/ja/man5/initscript.5*
293 %lang(ja) %{_mandir}/ja/man5/inittab.5*
294 %lang(ja) %{_mandir}/ja/man8/halt.8*
295 %lang(ja) %{_mandir}/ja/man8/init.8*
296 %lang(ja) %{_mandir}/ja/man8/poweroff.8
297 %lang(ja) %{_mandir}/ja/man8/reboot.8
298 %lang(ja) %{_mandir}/ja/man8/runlevel.8*
299 %lang(ja) %{_mandir}/ja/man8/shutdown.8*
300 %lang(ja) %{_mandir}/ja/man8/telinit.8
301 %lang(ko) %{_mandir}/ko/man5/initscript.5*
302 %lang(ko) %{_mandir}/ko/man5/inittab.5*
303 %lang(ko) %{_mandir}/ko/man8/halt.8*
304 %lang(ko) %{_mandir}/ko/man8/init.8*
305 %lang(ko) %{_mandir}/ko/man8/reboot.8
306 %lang(ko) %{_mandir}/ko/man8/runlevel.8*
307 %lang(ko) %{_mandir}/ko/man8/shutdown.8*
308 %lang(ko) %{_mandir}/ko/man8/telinit.8
309 %lang(pl) %{_mandir}/pl/man5/initscript.5*
310 %lang(pl) %{_mandir}/pl/man5/inittab.5*
311 %lang(pl) %{_mandir}/pl/man8/halt.8*
312 %lang(pl) %{_mandir}/pl/man8/init.8*
313 %lang(pl) %{_mandir}/pl/man8/poweroff.8
314 %lang(pl) %{_mandir}/pl/man8/reboot.8
315 %lang(pl) %{_mandir}/pl/man8/runlevel.8*
316 %lang(pl) %{_mandir}/pl/man8/shutdown.8*
317 %lang(pl) %{_mandir}/pl/man8/telinit.8
320 #%{_includedir}/initreq.h
323 %defattr(644,root,root,755)
324 %attr(755,root,root) /bin/pidof
325 %attr(755,root,root) %{_sbindir}/killall5
326 %attr(755,root,root) %{_sbindir}/lastlog
327 %attr(755,root,root) %{_sbindir}/pidof
328 %attr(755,root,root) %{_sbindir}/sulogin
329 %attr(755,root,root) %{_bindir}/last
330 %attr(755,root,root) %{_bindir}/lastb
331 %attr(755,root,root) %{_bindir}/mesg
332 %attr(755,root,root) %{_bindir}/utmpx-dump
333 %attr(755,root,root) %{_bindir}/wall
334 %{_mandir}/man1/last.1*
335 %{_mandir}/man1/lastb.1*
336 %{_mandir}/man1/mesg.1*
337 %{_mandir}/man1/wall.1*
338 %{_mandir}/man8/killall5.8*
339 %{_mandir}/man8/pidof.8*
340 %{_mandir}/man8/sulogin.8*
341 %lang(cs) %{_mandir}/cs/man8/lastlog.8*
342 %lang(es) %{_mandir}/es/man1/last.1*
343 %lang(es) %{_mandir}/es/man1/lastb.1
344 %lang(es) %{_mandir}/es/man1/mesg.1*
345 %lang(es) %{_mandir}/es/man1/wall.1*
346 %lang(es) %{_mandir}/es/man8/killall5.8*
347 %lang(es) %{_mandir}/es/man8/pidof.8*
348 %lang(es) %{_mandir}/es/man8/sulogin.8*
349 %lang(fi) %{_mandir}/fi/man1/last.1*
350 %lang(fi) %{_mandir}/fi/man1/mesg.1*
351 %lang(fi) %{_mandir}/fi/man1/wall.1*
352 %lang(fr) %{_mandir}/fr/man1/last.1*
353 %lang(fr) %{_mandir}/fr/man1/mesg.1*
354 %lang(fr) %{_mandir}/fr/man1/wall.1*
355 %lang(fr) %{_mandir}/fr/man8/killall5.8*
356 %lang(fr) %{_mandir}/fr/man8/lastlog.8*
357 %lang(fr) %{_mandir}/fr/man8/pidof.8*
358 %lang(hu) %{_mandir}/hu/man1/last.1*
359 %lang(hu) %{_mandir}/hu/man1/mesg.1*
360 %lang(hu) %{_mandir}/hu/man1/wall.1*
361 %lang(hu) %{_mandir}/hu/man8/lastlog.8*
362 %lang(it) %{_mandir}/it/man1/last.1*
363 %lang(it) %{_mandir}/it/man1/lastb.1
364 %lang(it) %{_mandir}/it/man1/mesg.1*
365 %lang(it) %{_mandir}/it/man1/wall.1*
366 %lang(it) %{_mandir}/it/man8/killall5.8*
367 %lang(it) %{_mandir}/it/man8/lastlog.8*
368 %lang(it) %{_mandir}/it/man8/pidof.8*
369 %lang(it) %{_mandir}/it/man8/sulogin.8*
370 %lang(ja) %{_mandir}/ja/man1/last.1*
371 %lang(ja) %{_mandir}/ja/man1/lastb.1
372 %lang(ja) %{_mandir}/ja/man1/mesg.1*
373 %lang(ja) %{_mandir}/ja/man1/wall.1*
374 %lang(ja) %{_mandir}/ja/man8/killall5.8*
375 %lang(ja) %{_mandir}/ja/man8/lastlog.8*
376 %lang(ja) %{_mandir}/ja/man8/pidof.8*
377 %lang(ja) %{_mandir}/ja/man8/sulogin.8*
378 %lang(ko) %{_mandir}/ko/man1/last.1*
379 %lang(ko) %{_mandir}/ko/man1/lastb.1
380 %lang(ko) %{_mandir}/ko/man1/mesg.1*
381 %lang(ko) %{_mandir}/ko/man8/killall5.8*
382 %lang(ko) %{_mandir}/ko/man8/pidof.8*
383 %lang(ko) %{_mandir}/ko/man8/sulogin.8*
384 %lang(pl) %{_mandir}/pl/man1/last.1*
385 %lang(pl) %{_mandir}/pl/man1/lastb.1
386 %lang(pl) %{_mandir}/pl/man1/mesg.1*
387 %lang(pl) %{_mandir}/pl/man1/wall.1*
388 %lang(pl) %{_mandir}/pl/man8/killall5.8*
389 %lang(pl) %{_mandir}/pl/man8/lastlog.8*
390 %lang(pl) %{_mandir}/pl/man8/pidof.8*
391 %lang(pl) %{_mandir}/pl/man8/sulogin.8*
392 %lang(ru) %{_mandir}/ru/man8/lastlog.8*
393 %lang(sv) %{_mandir}/sv/man8/lastlog.8*