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