]> git.pld-linux.org Git - packages/SysVinit.git/blob - SysVinit.spec
1204c81c49cc8e3440908bc73d7eb5392e50ab9d
[packages/SysVinit.git] / SysVinit.spec
1 #
2 # Conditional build:
3 %bcond_without  selinux         # build without SELinux support
4 #
5 Summary:        System V initialization program
6 Summary(de.UTF-8):      System V-Intialisierungsprogramm
7 Summary(es.UTF-8):      Programa de inicialización System V
8 Summary(fr.UTF-8):      Programme d'initialisation Sys V
9 Summary(pl.UTF-8):      Program inicjalizujący w Systemie V
10 Summary(pt_BR.UTF-8):   Programa de inicialização System V
11 Summary(ru.UTF-8):      Программы, управляющие базовыми системными процессами
12 Summary(tr.UTF-8):      System V başlatma programı
13 Summary(uk.UTF-8):      Програми, що керують базовими системними процесами
14 Name:           SysVinit
15 Version:        2.88
16 Release:        9
17 License:        GPL v2+
18 Group:          Base
19 Source0:        http://download.savannah.gnu.org/releases/sysvinit/sysvinit-%{version}dsf.tar.bz2
20 # Source0-md5:  6eda8a97b86e0a6f59dabbf25202aa6f
21 Source1:        sysvinit.logrotate
22 Source2:        http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/sysvinit-non-english-man-pages.tar.bz2
23 # Source2-md5:  9ae8a63a4685368fae19707f95475cca
24 Patch0:         sysvinit-paths.patch
25 Patch1:         sysvinit-bequiet.patch
26 Patch2:         sysvinit-wtmp.patch
27 Patch3:         sysvinit-man.patch
28 Patch4:         sysvinit-halt.patch
29 Patch5:         sysvinit-autofsck.patch
30 Patch6:         sysvinit-pidof.patch
31 Patch7:         sysvinit-killall5.patch
32 Patch8:         sysvinit-nopowerstates-single.patch
33 Patch9:         sysvinit-lastlog.patch
34 Patch10:        sysvinit-alt-fixes.patch
35 Patch11:        sysvinit-quiet.patch
36 Patch12:        sysvinit-rebootconfirmation.patch
37 URL:            http://savannah.nongnu.org/projects/sysvinit/
38 %if %{with selinux}
39 BuildRequires:  libselinux-devel >= 1.28
40 BuildRequires:  libsepol-devel
41 %endif
42 BuildRequires:  rpmbuild(macros) >= 1.202
43 Requires(postun):       /usr/sbin/groupdel
44 Requires(pre):  /usr/bin/getgid
45 Requires(pre):  /usr/sbin/groupadd
46 Requires:       %{name}-tools = %{version}-%{release}
47 Requires:       /bin/awk
48 %{?with_selinux:Requires:       libselinux >= 1.18}
49 Requires:       login
50 Requires:       mingetty
51 Requires:       util-linux >= 2.20-5
52 Provides:       group(utmp)
53 Provides:       virtual(init-daemon)
54 Obsoletes:      virtual(init-daemon)
55 Obsoletes:      vserver-SysVinit
56 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
57
58 %define         _sbindir        /sbin
59 # as in original flags
60 %define         specflags       -fomit-frame-pointer
61
62 %description
63 The SysVinit package contains a group of processes that control the
64 very basic functions of your system. SysVinit includes the init
65 program, the first program started by the Linux kernel when the system
66 boots. Init then controls the startup, running and shutdown of all
67 other programs.
68
69 %description -l de.UTF-8
70 SysVinit ist das erste Programm, das beim Systemstart vom Linux-Kernel
71 gestartet wird. Es steuert das Starten, Ausführen und Beenden aller
72 anderen Programme.
73
74 %description -l es.UTF-8
75 SysVinit es el primer programa ejecutado por el kernel Linux cuando se
76 inicia el sistema. Controla arranque, funcionamiento y cierre de todos
77 los otros programas.
78
79 %description -l fr.UTF-8
80 SysVinit est le premier programme exécuté par le noyau de Linux
81 lorsque le système démarre, il contrôle le lancement, l'exécution et
82 l'arrêt de tous les autres programmes.
83
84 %description -l pl.UTF-8
85 SysVinit jest pierwszym programem uruchamianym przez jądro podczas
86 startu systemu. Kontroluje start, pracę oraz zamykanie wszystkich
87 innych programów.
88
89 %description -l pt_BR.UTF-8
90 SysVinit é o primeiro programa executado pelo kernel Linux quando o
91 sistema é inicializado. Controla inicialização, funcionamento e
92 finalização de todos os outros programas.
93
94 %description -l ru.UTF-8
95 Пакет SysVinit содержит группу процессов, которые управляют самыми
96 базовыми функциями вашей системы. SysVinit включает программу init,
97 самую первую программу, которая запускается ядром Linux при загрузке
98 системы. После этого init управляет запуском, исполнением и остановом
99 всех остальных программ.
100
101 %description -l tr.UTF-8
102 SysVinit, sistem açılırken Linux çekirdeği tarafından çalıştırılan ilk
103 programdır. Diğer programların başlamalarını, çalışmalarını ve
104 sonlanmalarını sağlar/denetler.
105
106 %description -l uk.UTF-8
107 Пакет SysVinit містить групу процесів, котрі керують самими базовими
108 функціями вашої системи. SysVinit містить програму init, першу
109 програму, яку запускає ядро Linux під час загрузки системи. Після
110 цього init керує запуском, виконанням та зупинкою всіх інших програм.
111
112 %package tools
113 Summary:        Tools used for process and utmp management
114 Summary(pl.UTF-8):      Narzędzia do zarządzania procesami i bazą utmp
115 Group:          Base
116 Obsoletes:      upstart-SysVinit
117 Conflicts:      SysVinit < 2.86-27
118 Conflicts:      rc-scripts < 0.4.5.1-6
119 Conflicts:      util-linux < 2.22
120
121 %description tools
122 This package contains various tools used for process management.
123
124 %description tools -l pl.UTF-8
125 Ten pakiet zawiera różne narzędzia do zarządzania procesami.
126
127 %prep
128 %setup -q -n sysvinit-%{version}dsf
129 %patch0 -p1
130 %patch1 -p1
131 %patch2 -p1
132 %patch3 -p1
133 %patch4 -p1
134 %patch5 -p1
135 %patch6 -p1
136 %patch7 -p1
137 %patch8 -p1
138 %patch9 -p1
139 %patch10 -p1
140 %patch11 -p1
141 %patch12 -p0
142
143 %build
144 %{__make} -C src \
145         %{?with_selinux:WITH_SELINUX=yes} \
146         CC="%{__cc}" \
147         LCRYPT="-lcrypt" \
148         CFLAGS="%{rpmcflags}" \
149         LDFLAGS="%{rpmldflags}"
150
151 %install
152 rm -rf $RPM_BUILD_ROOT
153 install -d $RPM_BUILD_ROOT{/bin,%{_bindir},%{_sbindir},%{_mandir}/man{1,5,8}} \
154         $RPM_BUILD_ROOT{%{_includedir},%{_sysconfdir},/etc/logrotate.d,/var/{log,run}}
155
156 %{__make} install -C src \
157         ROOT=$RPM_BUILD_ROOT \
158         BIN_OWNER=`id -u` \
159         BIN_GROUP=`id -g`
160
161 install %{SOURCE1} $RPM_BUILD_ROOT/etc/logrotate.d/sysvinit
162
163 ln -s ../var/run/initrunlvl $RPM_BUILD_ROOT%{_sysconfdir}
164 ln -s killall5 $RPM_BUILD_ROOT%{_sbindir}/pidof
165 ln -s utmpdump $RPM_BUILD_ROOT%{_bindir}/utmpx-dump
166
167 > $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
168 > $RPM_BUILD_ROOT/var/log/btmpx
169 > $RPM_BUILD_ROOT/var/log/faillog
170 > $RPM_BUILD_ROOT/var/log/lastlog
171 > $RPM_BUILD_ROOT/var/log/wtmpx
172 > $RPM_BUILD_ROOT/var/run/initrunlvl
173
174 echo .so last.1 > $RPM_BUILD_ROOT%{_mandir}/man1/lastb.1
175 echo .so utmpdump.1 > $RPM_BUILD_ROOT%{_mandir}/man1/utmpx-dump.1
176 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
177 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
178 echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
179 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
180 %{__rm} $RPM_BUILD_ROOT%{_includedir}/initreq.h
181 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
182
183 cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
184
185 # in util-linux
186 rm $RPM_BUILD_ROOT{/bin/mountpoint,%{_mandir}/man1/mountpoint.1*}
187 rm $RPM_BUILD_ROOT{/sbin/sulogin,%{_mandir}/man8/sulogin.8*,%{_mandir}/*/man8/sulogin.8*}
188 rm $RPM_BUILD_ROOT{/usr/bin/utmpdump,%{_mandir}/man1/utmpdump.1*}
189
190 %clean
191 rm -rf $RPM_BUILD_ROOT
192
193 %pre
194 %groupadd -g 22 utmp
195
196 %post
197 touch %{_sysconfdir}/ioctl.save /var/log/{btmpx,{fail,last}log}
198 chmod 000 %{_sysconfdir}/ioctl.save /var/log/{fail,last}log
199 chown root:root %{_sysconfdir}/ioctl.save /var/log/faillog
200 chown root:utmp /var/log/lastlog
201 chmod 600 %{_sysconfdir}/ioctl.save
202 chmod 640 /var/log/btmpx
203 chmod 640 /var/log/faillog
204 chmod 664 /var/log/lastlog
205 if [ -p /dev/initctl ]; then
206         %{_sbindir}/telinit u || :
207 fi
208
209 %triggerpostun -- glibc
210 if [ -p /dev/initctl ]; then
211         %{_sbindir}/telinit u || :
212 fi
213
214 %postun
215 if [ "$1" = "0" ]; then
216         %groupremove utmp
217 fi
218
219 %files
220 %defattr(644,root,root,755)
221 %doc COPYRIGHT README doc/{Changelog,Propaganda} src/initscript.sample
222
223 %attr(755,root,root) %{_sbindir}/bootlogd
224 %attr(755,root,root) %{_sbindir}/halt
225 %attr(755,root,root) %{_sbindir}/init
226 %attr(755,root,root) %{_sbindir}/poweroff
227 %attr(755,root,root) %{_sbindir}/reboot
228 %attr(755,root,root) %{_sbindir}/runlevel
229 %attr(755,root,root) %{_sbindir}/shutdown
230 %attr(755,root,root) %{_sbindir}/telinit
231 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/sysvinit
232 %ghost %{_sysconfdir}/initrunlvl
233 %ghost /var/run/initrunlvl
234 %attr(600,root,root) %ghost %{_sysconfdir}/ioctl.save
235 %attr(640,root,root) %ghost /var/log/btmpx
236 %attr(664,root,utmp) %ghost /var/log/wtmpx
237
238 %{_mandir}/man5/inittab.5*
239 %{_mandir}/man5/initscript.5*
240 %{_mandir}/man8/bootlogd.8*
241 %{_mandir}/man8/halt.8*
242 %{_mandir}/man8/init.8*
243 %{_mandir}/man8/lastlog.8*
244 %{_mandir}/man8/poweroff.8
245 %{_mandir}/man8/reboot.8
246 %{_mandir}/man8/runlevel.8*
247 %{_mandir}/man8/shutdown.8*
248 %{_mandir}/man8/telinit.8
249 %lang(de) %{_mandir}/de/man8/init.8*
250 %lang(de) %{_mandir}/de/man8/telinit.8
251 %lang(es) %{_mandir}/es/man5/initscript.5*
252 %lang(es) %{_mandir}/es/man5/inittab.5*
253 %lang(es) %{_mandir}/es/man8/halt.8*
254 %lang(es) %{_mandir}/es/man8/init.8*
255 %lang(es) %{_mandir}/es/man8/poweroff.8
256 %lang(es) %{_mandir}/es/man8/reboot.8
257 %lang(es) %{_mandir}/es/man8/runlevel.8*
258 %lang(es) %{_mandir}/es/man8/shutdown.8*
259 %lang(es) %{_mandir}/es/man8/telinit.8
260 %lang(fr) %{_mandir}/fr/man8/halt.8*
261 %lang(fr) %{_mandir}/fr/man8/reboot.8
262 %lang(fr) %{_mandir}/fr/man8/runlevel.8*
263 %lang(fr) %{_mandir}/fr/man8/shutdown.8*
264 %lang(hu) %{_mandir}/hu/man5/inittab.5*
265 %lang(hu) %{_mandir}/hu/man8/init.8*
266 %lang(hu) %{_mandir}/hu/man8/shutdown.8*
267 %lang(hu) %{_mandir}/hu/man8/telinit.8
268 %lang(id) %{_mandir}/id/man8/halt.8*
269 %lang(id) %{_mandir}/id/man8/reboot.8
270 %lang(id) %{_mandir}/id/man8/shutdown.8*
271 %lang(it) %{_mandir}/it/man5/initscript.5*
272 %lang(it) %{_mandir}/it/man5/inittab.5*
273 %lang(it) %{_mandir}/it/man8/halt.8*
274 %lang(it) %{_mandir}/it/man8/init.8*
275 %lang(it) %{_mandir}/it/man8/reboot.8
276 %lang(it) %{_mandir}/it/man8/runlevel.8*
277 %lang(it) %{_mandir}/it/man8/shutdown.8*
278 %lang(it) %{_mandir}/it/man8/telinit.8
279 %lang(ja) %{_mandir}/ja/man5/initscript.5*
280 %lang(ja) %{_mandir}/ja/man5/inittab.5*
281 %lang(ja) %{_mandir}/ja/man8/halt.8*
282 %lang(ja) %{_mandir}/ja/man8/init.8*
283 %lang(ja) %{_mandir}/ja/man8/poweroff.8
284 %lang(ja) %{_mandir}/ja/man8/reboot.8
285 %lang(ja) %{_mandir}/ja/man8/runlevel.8*
286 %lang(ja) %{_mandir}/ja/man8/shutdown.8*
287 %lang(ja) %{_mandir}/ja/man8/telinit.8
288 %lang(ko) %{_mandir}/ko/man5/initscript.5*
289 %lang(ko) %{_mandir}/ko/man5/inittab.5*
290 %lang(ko) %{_mandir}/ko/man8/halt.8*
291 %lang(ko) %{_mandir}/ko/man8/init.8*
292 %lang(ko) %{_mandir}/ko/man8/reboot.8
293 %lang(ko) %{_mandir}/ko/man8/runlevel.8*
294 %lang(ko) %{_mandir}/ko/man8/shutdown.8*
295 %lang(ko) %{_mandir}/ko/man8/telinit.8
296 %lang(pl) %{_mandir}/pl/man5/initscript.5*
297 %lang(pl) %{_mandir}/pl/man5/inittab.5*
298 %lang(pl) %{_mandir}/pl/man8/halt.8*
299 %lang(pl) %{_mandir}/pl/man8/init.8*
300 %lang(pl) %{_mandir}/pl/man8/poweroff.8
301 %lang(pl) %{_mandir}/pl/man8/reboot.8
302 %lang(pl) %{_mandir}/pl/man8/runlevel.8*
303 %lang(pl) %{_mandir}/pl/man8/shutdown.8*
304 %lang(pl) %{_mandir}/pl/man8/telinit.8
305
306 # devel?
307 #%{_includedir}/initreq.h
308
309 %files tools
310 %defattr(644,root,root,755)
311 %attr(755,root,root) /bin/pidof
312 %attr(755,root,root) %{_sbindir}/fstab-decode
313 %attr(755,root,root) %{_sbindir}/killall5
314 %attr(755,root,root) %{_sbindir}/lastlog
315 %attr(755,root,root) %{_sbindir}/pidof
316 %attr(755,root,root) %{_bindir}/last
317 %attr(755,root,root) %{_bindir}/lastb
318 %attr(755,root,root) %{_bindir}/mesg
319 %attr(755,root,root) %{_bindir}/utmpx-dump
320 %attr(755,root,root) %{_bindir}/wall
321 %attr(640,root,root) %ghost /var/log/faillog
322 %attr(664,root,utmp) %ghost /var/log/lastlog
323 %{_mandir}/man1/last.1*
324 %{_mandir}/man1/lastb.1*
325 %{_mandir}/man1/mesg.1*
326 %{_mandir}/man1/wall.1*
327 %{_mandir}/man1/utmpx-dump.1*
328 %{_mandir}/man8/killall5.8*
329 %{_mandir}/man8/pidof.8*
330 %{_mandir}/man8/fstab-decode.8*
331 %lang(cs) %{_mandir}/cs/man8/lastlog.8*
332 %lang(es) %{_mandir}/es/man1/last.1*
333 %lang(es) %{_mandir}/es/man1/lastb.1
334 %lang(es) %{_mandir}/es/man1/mesg.1*
335 %lang(es) %{_mandir}/es/man1/wall.1*
336 %lang(es) %{_mandir}/es/man8/killall5.8*
337 %lang(es) %{_mandir}/es/man8/pidof.8*
338 %lang(fi) %{_mandir}/fi/man1/last.1*
339 %lang(fi) %{_mandir}/fi/man1/mesg.1*
340 %lang(fi) %{_mandir}/fi/man1/wall.1*
341 %lang(fr) %{_mandir}/fr/man1/last.1*
342 %lang(fr) %{_mandir}/fr/man1/mesg.1*
343 %lang(fr) %{_mandir}/fr/man1/wall.1*
344 %lang(fr) %{_mandir}/fr/man8/killall5.8*
345 %lang(fr) %{_mandir}/fr/man8/lastlog.8*
346 %lang(fr) %{_mandir}/fr/man8/pidof.8*
347 %lang(hu) %{_mandir}/hu/man1/last.1*
348 %lang(hu) %{_mandir}/hu/man1/mesg.1*
349 %lang(hu) %{_mandir}/hu/man1/wall.1*
350 %lang(hu) %{_mandir}/hu/man8/lastlog.8*
351 %lang(it) %{_mandir}/it/man1/last.1*
352 %lang(it) %{_mandir}/it/man1/lastb.1
353 %lang(it) %{_mandir}/it/man1/mesg.1*
354 %lang(it) %{_mandir}/it/man1/wall.1*
355 %lang(it) %{_mandir}/it/man8/killall5.8*
356 %lang(it) %{_mandir}/it/man8/lastlog.8*
357 %lang(it) %{_mandir}/it/man8/pidof.8*
358 %lang(ja) %{_mandir}/ja/man1/last.1*
359 %lang(ja) %{_mandir}/ja/man1/lastb.1
360 %lang(ja) %{_mandir}/ja/man1/mesg.1*
361 %lang(ja) %{_mandir}/ja/man1/wall.1*
362 %lang(ja) %{_mandir}/ja/man8/killall5.8*
363 %lang(ja) %{_mandir}/ja/man8/lastlog.8*
364 %lang(ja) %{_mandir}/ja/man8/pidof.8*
365 %lang(ko) %{_mandir}/ko/man1/last.1*
366 %lang(ko) %{_mandir}/ko/man1/lastb.1
367 %lang(ko) %{_mandir}/ko/man1/mesg.1*
368 %lang(ko) %{_mandir}/ko/man8/killall5.8*
369 %lang(ko) %{_mandir}/ko/man8/pidof.8*
370 %lang(pl) %{_mandir}/pl/man1/last.1*
371 %lang(pl) %{_mandir}/pl/man1/lastb.1
372 %lang(pl) %{_mandir}/pl/man1/mesg.1*
373 %lang(pl) %{_mandir}/pl/man1/wall.1*
374 %lang(pl) %{_mandir}/pl/man8/killall5.8*
375 %lang(pl) %{_mandir}/pl/man8/lastlog.8*
376 %lang(pl) %{_mandir}/pl/man8/pidof.8*
377 %lang(ru) %{_mandir}/ru/man8/lastlog.8*
378 %lang(sv) %{_mandir}/sv/man8/lastlog.8*
This page took 0.078748 seconds and 2 git commands to generate.