]> git.pld-linux.org Git - packages/SysVinit.git/blob - SysVinit.spec
- updated to 3.04
[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.90
16 Release:        0.1
17 License:        GPL v2+
18 Group:          Base
19 Source0:        http://download.savannah.gnu.org/releases/sysvinit/sysvinit-%{version}.tar.xz
20 # Source0-md5:  7b6a16bde3da494b6aac7283b79c81de
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 Source3:        crypttab.5
25 Patch0:         sysvinit-paths.patch
26 Patch1:         sysvinit-bequiet.patch
27 Patch2:         sysvinit-wtmp.patch
28 Patch3:         sysvinit-man.patch
29 Patch4:         sysvinit-halt.patch
30 Patch5:         sysvinit-autofsck.patch
31
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.24-1
52 Provides:       group(utmp)
53 Provides:       virtual(init-daemon)
54 Obsoletes:      virtual(init-daemon)
55 Obsoletes:      vserver-SysVinit
56 Conflicts:      rc-scripts < 0.4.9-1
57 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
58
59 %define         _sbindir        /sbin
60 # as in original flags
61 %define         specflags       -fomit-frame-pointer
62
63 %description
64 The SysVinit package contains a group of processes that control the
65 very basic functions of your system. SysVinit includes the init
66 program, the first program started by the Linux kernel when the system
67 boots. Init then controls the startup, running and shutdown of all
68 other programs.
69
70 %description -l de.UTF-8
71 SysVinit ist das erste Programm, das beim Systemstart vom Linux-Kernel
72 gestartet wird. Es steuert das Starten, Ausführen und Beenden aller
73 anderen Programme.
74
75 %description -l es.UTF-8
76 SysVinit es el primer programa ejecutado por el kernel Linux cuando se
77 inicia el sistema. Controla arranque, funcionamiento y cierre de todos
78 los otros programas.
79
80 %description -l fr.UTF-8
81 SysVinit est le premier programme exécuté par le noyau de Linux
82 lorsque le système démarre, il contrôle le lancement, l'exécution et
83 l'arrêt de tous les autres programmes.
84
85 %description -l pl.UTF-8
86 SysVinit jest pierwszym programem uruchamianym przez jądro podczas
87 startu systemu. Kontroluje start, pracę oraz zamykanie wszystkich
88 innych programów.
89
90 %description -l pt_BR.UTF-8
91 SysVinit é o primeiro programa executado pelo kernel Linux quando o
92 sistema é inicializado. Controla inicialização, funcionamento e
93 finalização de todos os outros programas.
94
95 %description -l ru.UTF-8
96 Пакет SysVinit содержит группу процессов, которые управляют самыми
97 базовыми функциями вашей системы. SysVinit включает программу init,
98 самую первую программу, которая запускается ядром Linux при загрузке
99 системы. После этого init управляет запуском, исполнением и остановом
100 всех остальных программ.
101
102 %description -l tr.UTF-8
103 SysVinit, sistem açılırken Linux çekirdeği tarafından çalıştırılan ilk
104 programdır. Diğer programların başlamalarını, çalışmalarını ve
105 sonlanmalarını sağlar/denetler.
106
107 %description -l uk.UTF-8
108 Пакет SysVinit містить групу процесів, котрі керують самими базовими
109 функціями вашої системи. SysVinit містить програму init, першу
110 програму, яку запускає ядро Linux під час загрузки системи. Після
111 цього init керує запуском, виконанням та зупинкою всіх інших програм.
112
113 %package tools
114 Summary:        Tools used for process and utmp management
115 Summary(pl.UTF-8):      Narzędzia do zarządzania procesami i bazą utmp
116 Group:          Base
117 Obsoletes:      upstart-SysVinit
118 Conflicts:      SysVinit < 2.86-27
119 Conflicts:      rc-scripts < 0.4.5.1-6
120 Conflicts:      util-linux < 2.22
121
122 %description tools
123 This package contains various tools used for process management.
124
125 %description tools -l pl.UTF-8
126 Ten pakiet zawiera różne narzędzia do zarządzania procesami.
127
128 %prep
129 %setup -q -n sysvinit-%{version}
130 %patch0 -p1
131 %patch1 -p1
132 %patch2 -p1
133 %patch3 -p1
134 %patch4 -p1
135 %patch5 -p1
136
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} %{rpmcppflags}" \
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
166 > $RPM_BUILD_ROOT%{_sysconfdir}/ioctl.save
167 > $RPM_BUILD_ROOT/var/log/btmp
168 > $RPM_BUILD_ROOT/var/log/faillog
169 > $RPM_BUILD_ROOT/var/log/lastlog
170 > $RPM_BUILD_ROOT/var/log/wtmp
171 > $RPM_BUILD_ROOT/var/run/initrunlvl
172
173 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/poweroff.8
174 echo .so halt.8 > $RPM_BUILD_ROOT%{_mandir}/man8/reboot.8
175 echo .so init.8 > $RPM_BUILD_ROOT%{_mandir}/man8/telinit.8
176 bzip2 -dc %{SOURCE2} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
177 %{__rm} $RPM_BUILD_ROOT%{_includedir}/initreq.h
178 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.sysvinit-non-english-man-pages
179
180 cp -a man/intl/* $RPM_BUILD_ROOT%{_mandir}
181
182 cp %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man5
183
184 # in util-linux
185 %{__rm} $RPM_BUILD_ROOT{/sbin/sulogin,%{_mandir}/man8/sulogin.8*,%{_mandir}/*/man8/sulogin.8*}
186 %{__rm} $RPM_BUILD_ROOT{/usr/bin/utmpdump,%{_mandir}/man1/utmpdump.1*}
187 %{__rm} $RPM_BUILD_ROOT{/usr/bin/{last,lastb,mesg},%{_mandir}/man1/{last,lastb,mesg}.1*,%{_mandir}/*/man1/{last,lastb,mesg}.1*}
188
189 %clean
190 rm -rf $RPM_BUILD_ROOT
191
192 # not in trigger because wtmpx is %%ghost, and %%ghost-ed files
193 # are removed when they'are uninstalled
194 %pretrans
195 if [ -e /var/log/wtmpx ]; then
196         # wtmp always takes precedence, it's safe to remove wtmpx
197         if [ -s /var/log/wtmp ]; then
198                 %{__rm} -f /var/log/wtmpx
199         else
200                 %{__mv} -f /var/log/wtmpx /var/log/wtmp
201         fi
202 fi
203
204 %pre
205 %groupadd -g 22 utmp
206
207 %post
208 touch %{_sysconfdir}/ioctl.save /var/log/{btmp,{fail,last}log}
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/btmp
214 chmod 640 /var/log/faillog
215 chmod 664 /var/log/lastlog
216 if [ -p /dev/initctl ]; then
217         %{_sbindir}/telinit u || :
218 fi
219
220 %triggerpostun -- glibc
221 if [ -p /dev/initctl ]; then
222         %{_sbindir}/telinit u || :
223 fi
224
225 %postun
226 if [ "$1" = "0" ]; then
227         %groupremove utmp
228 fi
229
230 %files
231 %defattr(644,root,root,755)
232 %doc COPYRIGHT README doc/{Changelog,Propaganda} doc/initscript.sample
233
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/btmp
247 %attr(664,root,utmp) %ghost /var/log/wtmp
248
249 %{_mandir}/man5/crypttab.5*
250 %{_mandir}/man5/initctl.5*
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/poweroff.8
257 %{_mandir}/man8/reboot.8
258 %{_mandir}/man8/runlevel.8*
259 %{_mandir}/man8/shutdown.8*
260 %{_mandir}/man8/telinit.8
261 %lang(de) %{_mandir}/de/man8/init.8*
262 %lang(de) %{_mandir}/de/man8/telinit.8
263 %lang(es) %{_mandir}/es/man5/initscript.5*
264 %lang(es) %{_mandir}/es/man5/inittab.5*
265 %lang(es) %{_mandir}/es/man8/halt.8*
266 %lang(es) %{_mandir}/es/man8/init.8*
267 %lang(es) %{_mandir}/es/man8/poweroff.8
268 %lang(es) %{_mandir}/es/man8/reboot.8
269 %lang(es) %{_mandir}/es/man8/runlevel.8*
270 %lang(es) %{_mandir}/es/man8/shutdown.8*
271 %lang(es) %{_mandir}/es/man8/telinit.8
272 %lang(fr) %{_mandir}/fr/man8/halt.8*
273 %lang(fr) %{_mandir}/fr/man8/reboot.8
274 %lang(fr) %{_mandir}/fr/man8/runlevel.8*
275 %lang(fr) %{_mandir}/fr/man8/shutdown.8*
276 %lang(hu) %{_mandir}/hu/man5/inittab.5*
277 %lang(hu) %{_mandir}/hu/man8/init.8*
278 %lang(hu) %{_mandir}/hu/man8/shutdown.8*
279 %lang(hu) %{_mandir}/hu/man8/telinit.8
280 %lang(id) %{_mandir}/id/man8/halt.8*
281 %lang(id) %{_mandir}/id/man8/reboot.8
282 %lang(id) %{_mandir}/id/man8/shutdown.8*
283 %lang(it) %{_mandir}/it/man5/initscript.5*
284 %lang(it) %{_mandir}/it/man5/inittab.5*
285 %lang(it) %{_mandir}/it/man8/halt.8*
286 %lang(it) %{_mandir}/it/man8/init.8*
287 %lang(it) %{_mandir}/it/man8/reboot.8
288 %lang(it) %{_mandir}/it/man8/runlevel.8*
289 %lang(it) %{_mandir}/it/man8/shutdown.8*
290 %lang(it) %{_mandir}/it/man8/telinit.8
291 %lang(ja) %{_mandir}/ja/man5/initscript.5*
292 %lang(ja) %{_mandir}/ja/man5/inittab.5*
293 %lang(ja) %{_mandir}/ja/man8/halt.8*
294 %lang(ja) %{_mandir}/ja/man8/init.8*
295 %lang(ja) %{_mandir}/ja/man8/poweroff.8
296 %lang(ja) %{_mandir}/ja/man8/reboot.8
297 %lang(ja) %{_mandir}/ja/man8/runlevel.8*
298 %lang(ja) %{_mandir}/ja/man8/shutdown.8*
299 %lang(ja) %{_mandir}/ja/man8/telinit.8
300 %lang(ko) %{_mandir}/ko/man5/initscript.5*
301 %lang(ko) %{_mandir}/ko/man5/inittab.5*
302 %lang(ko) %{_mandir}/ko/man8/halt.8*
303 %lang(ko) %{_mandir}/ko/man8/init.8*
304 %lang(ko) %{_mandir}/ko/man8/reboot.8
305 %lang(ko) %{_mandir}/ko/man8/runlevel.8*
306 %lang(ko) %{_mandir}/ko/man8/shutdown.8*
307 %lang(ko) %{_mandir}/ko/man8/telinit.8
308 %lang(pl) %{_mandir}/pl/man5/initscript.5*
309 %lang(pl) %{_mandir}/pl/man5/inittab.5*
310 %lang(pl) %{_mandir}/pl/man8/halt.8*
311 %lang(pl) %{_mandir}/pl/man8/init.8*
312 %lang(pl) %{_mandir}/pl/man8/poweroff.8
313 %lang(pl) %{_mandir}/pl/man8/reboot.8
314 %lang(pl) %{_mandir}/pl/man8/runlevel.8*
315 %lang(pl) %{_mandir}/pl/man8/shutdown.8*
316 %lang(pl) %{_mandir}/pl/man8/telinit.8
317
318 # devel?
319 #%{_includedir}/initreq.h
320
321 %files tools
322 %defattr(644,root,root,755)
323 %attr(755,root,root) /bin/pidof
324 %attr(755,root,root) %{_sbindir}/fstab-decode
325 %attr(755,root,root) %{_sbindir}/killall5
326 %attr(755,root,root) %{_sbindir}/lastlog
327 %attr(755,root,root) %{_sbindir}/pidof
328 %attr(2755,root,tty) %{_bindir}/wall
329 %attr(640,root,root) %ghost /var/log/faillog
330 %attr(664,root,utmp) %ghost /var/log/lastlog
331 %{_mandir}/man1/wall.1*
332 %{_mandir}/man8/killall5.8*
333 %{_mandir}/man8/lastlog.8*
334 %{_mandir}/man8/pidof.8*
335 %{_mandir}/man8/fstab-decode.8*
336 %lang(cs) %{_mandir}/cs/man8/lastlog.8*
337 %lang(es) %{_mandir}/es/man1/wall.1*
338 %lang(es) %{_mandir}/es/man8/killall5.8*
339 %lang(es) %{_mandir}/es/man8/pidof.8*
340 %lang(fi) %{_mandir}/fi/man1/wall.1*
341 %lang(fr) %{_mandir}/fr/man1/wall.1*
342 %lang(fr) %{_mandir}/fr/man8/killall5.8*
343 %lang(fr) %{_mandir}/fr/man8/lastlog.8*
344 %lang(fr) %{_mandir}/fr/man8/pidof.8*
345 %lang(hu) %{_mandir}/hu/man1/wall.1*
346 %lang(hu) %{_mandir}/hu/man8/lastlog.8*
347 %lang(it) %{_mandir}/it/man1/wall.1*
348 %lang(it) %{_mandir}/it/man8/killall5.8*
349 %lang(it) %{_mandir}/it/man8/lastlog.8*
350 %lang(it) %{_mandir}/it/man8/pidof.8*
351 %lang(ja) %{_mandir}/ja/man1/wall.1*
352 %lang(ja) %{_mandir}/ja/man8/killall5.8*
353 %lang(ja) %{_mandir}/ja/man8/lastlog.8*
354 %lang(ja) %{_mandir}/ja/man8/pidof.8*
355 %lang(ko) %{_mandir}/ko/man8/killall5.8*
356 %lang(ko) %{_mandir}/ko/man8/pidof.8*
357 %lang(pl) %{_mandir}/pl/man1/wall.1*
358 %lang(pl) %{_mandir}/pl/man8/killall5.8*
359 %lang(pl) %{_mandir}/pl/man8/lastlog.8*
360 %lang(pl) %{_mandir}/pl/man8/pidof.8*
361 %lang(ru) %{_mandir}/ru/man8/lastlog.8*
362 %lang(sv) %{_mandir}/sv/man8/lastlog.8*
This page took 0.068976 seconds and 3 git commands to generate.