- updated to 0.4.12
[packages/rc-scripts.git] / rc-scripts.spec
1 # Conditional build:
2 %bcond_without  static          # link binaries with glib dynamically
3
4 Summary:        inittab and /etc/rc.d scripts
5 Summary(de.UTF-8):      inittab und /etc/rc.d Scripts
6 Summary(fr.UTF-8):      inittab et scripts /etc/rc.d
7 Summary(pl.UTF-8):      inittab i skrypty startowe z katalogu /etc/rc.d
8 Summary(tr.UTF-8):      inittab ve /etc/rc.d dosyaları
9 Name:           rc-scripts
10 Version:        0.4.12
11 Release:        1
12 License:        GPL v2
13 Group:          Base
14 Source0:        %{name}-%{version}.tar.gz
15 # Source0-md5:  b52ca02678cb5f468972db06c6d032b0
16 Source1:        rc-local.service
17 Source2:        sys-chroots.service
18 Source3:        %{name}.tmpfiles
19 Patch100:       %{name}-tld.patch
20 Patch101:       %{name}-no_tmpfs_root_fsck.patch
21 Patch102:       %{name}-selinuxfs_mount.patch
22 Patch103:       %{name}-sh_fixes.patch
23 URL:            http://svn.pld-linux.org/trac/svn/wiki/packages/rc-scripts
24 BuildRequires:  autoconf
25 BuildRequires:  automake
26 BuildRequires:  gettext-devel
27 BuildRequires:  glib2-devel
28 %{?with_static:BuildRequires:   glib2-static}
29 %{?with_static:BuildRequires:   glibc-static}
30 BuildRequires:  libcap-devel >= 1:2.17
31 BuildRequires:  linux-libc-headers >= 7:2.6.27
32 BuildRequires:  pkgconfig
33 BuildRequires:  popt-devel
34 BuildRequires:  rpm >= 4.4.9-56
35 Requires(post): fileutils
36 %ifarch sparc sparcv9 sparc64
37 Requires:       agetty
38 %endif
39 Requires:       /bin/awk
40 Requires:       /bin/basename
41 Requires:       /bin/gettext
42 Requires:       /bin/nice
43 Requires:       /bin/ps
44 Requires:       SysVinit-tools >= 2.88-1
45 Requires:       blockdev
46 Requires:       coreutils
47 Requires:       ethtool
48 Requires:       virtual(init-daemon)
49 Requires:       filesystem >= 4.0-1
50 Requires:       findutils
51 Requires:       fsck
52 Requires:       gettext
53 Requires:       grep
54 Requires:       hostname
55 Requires:       iproute2
56 Requires:       iputils-arping
57 Requires:       mingetty
58 Requires:       mktemp
59 Requires:       mount >= 2.12
60 Requires:       procps >= 1:3.2.6-1.1
61 Requires:       psmisc >= 22.5-2
62 Requires:       libutempter >= 1.1.6-2
63 Requires:       util-linux
64 Requires:       virtual(module-tools)
65 Suggests:       libcgroup
66 Obsoletes:      initscripts
67 Obsoletes:      vserver-rc-scripts
68 Conflicts:      LPRng < 3.8.0-2
69 Conflicts:      dev < 2.9.0-22
70 Conflicts:      iputils-arping < 2:s20070202-1
71 Conflicts:      openssh-server < 2:3.6.1p2-6
72 Conflicts:      psacct < 6.3.5-10
73 Conflicts:      tzdata < 2007b-1.1
74 Conflicts:      udev-core < 1:135-2
75 Conflicts:      lvm2 < 2.02.83
76 Conflicts:      SysVinit < 2.88-16
77 Conflicts:      upstart-SysVinit < 2.86-25
78 Conflicts:      wpa_supplicant < 0.6.3
79 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
80
81 %define         _exec_prefix    /
82 %define         localedir       /etc/sysconfig/locale
83 %define         _bindir         /bin
84 %define         _sbindir        /sbin
85
86 %description
87 This package contains the scripts use to boot a system, change run
88 levels, and shut the system down cleanly.
89
90 %description -l de.UTF-8
91 Dieses Paket enthält die Scripts, die zum Hochfahren des Systems,
92 Ändern der Betriebsebene und sauberem Herunterfahren des Systems
93 erforderlich sind. Außerdem enthält es die Scripts, die
94 Netzwerkschnittstellen aktivieren und deaktivieren.
95
96 %description -l fr.UTF-8
97 Ce package contient les scripts utilisés pour démarrer le systéme,
98 changer les niveaux d'exécution, et arréter le systéme proprement. Il
99 contient aussi les scripts qui activent et désactivent la plupart des
100 inetrfaces réseau.
101
102 %description -l pl.UTF-8
103 Pakiet zawiera skrypty uruchamiane przy starcie i zamykaniu systemu, a
104 także przy zmianie jego poziomu pracy.
105
106 %description -l tr.UTF-8
107 Bu paket, sistem açmak, çalışma düzeylerini değiştirmek ve sistemi
108 düzgün bir şekilde kapatmak için gereken dosyaları içerir. Ayrıca pek
109 çok bilgisayar ağı arayüzlerini etkinleştiren ya da edilginleştiren
110 programcıklar içerir.
111
112 %prep
113 %setup -q
114 %patch100 -p1
115 %patch101 -p1
116 %patch102 -p1
117 %patch103 -p1
118
119 # hack, currently this results in errno@@GLIBC_PRIVATE symbol in ppp-watch:
120 #GLIB_LIBS="-Wl,-static `$PKG_CONFIG --libs --static glib-2.0` -Wl,-Bdynamic"
121 sed -i -e 's#^GLIB_LIBS=.*#GLIB_LIBS="%{_prefix}/%{_lib}/libglib-2.0.a -lrt -lpthread"#' configure.ac
122
123 %build
124 %{__aclocal}
125 %{__autoheader}
126 %{__autoconf}
127 %{__automake}
128 %configure \
129         --with-localedir=%{localedir}
130 %{__make} \
131         %{!?with_static:ppp_watch_LDADD="$(pkg-config --libs glib-2.0)" ppp_watch_DEPENDENCIES=}
132
133 %install
134 rm -rf $RPM_BUILD_ROOT
135 install -d $RPM_BUILD_ROOT/var/{run/netreport,log} \
136         $RPM_BUILD_ROOT/etc/sysconfig/{interfaces/data,hwprofiles} \
137         $RPM_BUILD_ROOT{%{systemdtmpfilesdir},%{systemdunitdir}}
138
139 %{__make} install \
140         DESTDIR=$RPM_BUILD_ROOT \
141         %{!?with_static:ppp_watch_LDADD="$(pkg-config --libs glib-2.0)" ppp_watch_DEPENDENCIES=}
142
143 for i in 0 1 2 3 4 5 6; do
144         install -d $RPM_BUILD_ROOT/etc/rc.d/rc$i.d
145 done
146
147 for i in 2 3 4 5; do
148         ln -s ../init.d/local $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S99local
149         ln -s ../init.d/netfs $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S25netfs
150         ln -s ../init.d/network $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S10network
151         ln -s ../init.d/allowlogin $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S99allowlogin
152         ln -s ../init.d/sys-chroots $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S99sys-chroots
153 done
154
155 for i in 1 2 3 4 5; do
156         ln -s ../init.d/killall $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S00killall
157         ln -s ../init.d/cpusets $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S01cpusets
158         ln -s ../init.d/random $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/S20random
159 done
160
161 for i in 0 2 3 4 5 6; do
162         ln -s ../init.d/single $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K00single
163 done
164
165 ln -s ../init.d/single $RPM_BUILD_ROOT/etc/rc.d/rc1.d/S00single
166
167 for i in 0 6; do
168         ln -s ../init.d/cpusets $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K99cpusets
169         ln -s ../init.d/killall $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K90killall
170         ln -s ../init.d/random $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K80random
171 done
172
173 for i in 0 1 6; do
174         ln -s ../init.d/netfs $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K75netfs
175         ln -s ../init.d/network $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K90network
176         ln -s ../init.d/allowlogin $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K01allowlogin
177         ln -s ../init.d/sys-chroots $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K01sys-chroots
178         ln -s ../init.d/local $RPM_BUILD_ROOT/etc/rc.d/rc$i.d/K01local
179 done
180
181 > $RPM_BUILD_ROOT/var/log/dmesg
182
183 # make /etc/init.d symlink relative
184 ln -nfs rc.d/init.d $RPM_BUILD_ROOT/etc/init.d
185
186 # systemd
187 install %{SOURCE1} $RPM_BUILD_ROOT%{systemdunitdir}/rc-local.service
188 ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/local.service
189 install %{SOURCE2} $RPM_BUILD_ROOT%{systemdunitdir}/sys-chroots.service
190 install %{SOURCE3} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
191
192 # packaged into SysVinit and systemd-init (supported options differ)
193 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man5/crypttab.5
194
195 %clean
196 rm -rf $RPM_BUILD_ROOT
197
198 %post
199 if [ -f /etc/inittab.rpmsave ]; then
200         echo "**** Found old /etc/inittab.rpmsave ****"
201         echo "/etc/inittab renamed to /etc/inittab.rpmnew"
202         mv -f /etc/inittab /etc/inittab.rpmnew
203         echo "/etc/inittab.rpmsave renamed to /etc/inittab."
204         mv -f /etc/inittab.rpmsave /etc/inittab
205 fi
206 touch /var/log/dmesg
207 chown root:root /var/log/dmesg
208 chmod 640 /var/log/dmesg
209 touch /var/cache/rc-scripts/msg.cache
210 chmod 644 /var/cache/rc-scripts/msg.cache
211 chown root:root /var/cache/rc-scripts/msg.cache
212
213 # move network interfaces description files to new location
214 %triggerpostun -- initscripts
215 [ -d /etc/sysconfig/network-scripts ] || exit 0
216 cd /etc/sysconfig/network-scripts
217 for iface in ifcfg-* ; do
218         [ -f $iface ] || continue
219         if [ -f /etc/sysconfig/interfaces/$iface ]; then
220                 echo "/etc/sysconfig/interfaces/$iface renamed to /etc/sysconfig/interfaces/$iface.rpmnew"
221                 mv -f /etc/sysconfig/interfaces/$iface{,.rpmnew}
222         fi
223         echo "/etc/sysconfig/network-scripts/$iface moved to /etc/sysconfig/interfaces/$iface"
224         mv -f /etc/sysconfig/network-scripts/$iface /etc/sysconfig/interfaces
225 done
226
227 %files
228 %defattr(644,root,root,755)
229 %doc ChangeLog
230 %doc doc/*.txt doc/template.init
231 %doc sysconfig/interfaces/data/chat-ppp*
232 %doc sysconfig/interfaces/ifc*
233 %doc sysconfig/interfaces/tnl*
234 %doc sysconfig/init-colors*
235 %doc doc/sysvinitfiles
236
237 %dir /etc/rc.d
238 %dir /etc/rc.d/init.d
239 %dir /etc/rc.d/rc?.d
240 /etc/init.d
241 /etc/rc.d/init.d/functions
242
243 %config(noreplace) %verify(not md5 mtime size) /etc/init/allowlogin.conf
244 %config(noreplace) %verify(not md5 mtime size) /etc/init/cpusets.conf
245 %config(noreplace) %verify(not md5 mtime size) /etc/init/cryptsetup.conf
246 %config(noreplace) %verify(not md5 mtime size) /etc/init/local.conf
247 %config(noreplace) %verify(not md5 mtime size) /etc/init/modules.conf
248 %config(noreplace) %verify(not md5 mtime size) /etc/init/random.conf
249 %config(noreplace) %verify(not md5 mtime size) /etc/init/rc.conf
250 %config(noreplace) %verify(not md5 mtime size) /etc/init/rcS-sulogin.conf
251 %config(noreplace) %verify(not md5 mtime size) /etc/init/rcS.conf
252 %config(noreplace) %verify(not md5 mtime size) /etc/init/sys-chroots.conf
253 %config(noreplace) %verify(not md5 mtime size) /etc/init/udev.conf
254
255 %attr(754,root,root) /etc/rc.d/init.d/allowlogin
256 %attr(754,root,root) /etc/rc.d/init.d/cpusets
257 %attr(754,root,root) /etc/rc.d/init.d/cryptsetup
258 %attr(754,root,root) /etc/rc.d/init.d/killall
259 %attr(754,root,root) /etc/rc.d/init.d/local
260 %attr(754,root,root) /etc/rc.d/init.d/netfs
261 %attr(754,root,root) /etc/rc.d/init.d/network
262 %attr(754,root,root) /etc/rc.d/init.d/random
263 %attr(754,root,root) /etc/rc.d/init.d/single
264 %attr(754,root,root) /etc/rc.d/init.d/sys-chroots
265
266 %attr(754,root,root) /etc/rc.d/rc
267 %config(noreplace) %verify(not md5 mtime size) /etc/rc.d/rc.local
268 %attr(754,root,root) /etc/rc.d/rc.init
269 %attr(754,root,root) /etc/rc.d/rc.sysinit
270 %attr(754,root,root) /etc/rc.d/rc.shutdown
271 %attr(754,root,root) /etc/rc.d/rc?.d/K??allowlogin
272 %attr(754,root,root) /etc/rc.d/rc?.d/K??cpusets
273 %attr(754,root,root) /etc/rc.d/rc?.d/K??killall
274 %attr(754,root,root) /etc/rc.d/rc?.d/K??local
275 %attr(754,root,root) /etc/rc.d/rc?.d/K??netfs
276 %attr(754,root,root) /etc/rc.d/rc?.d/K??network
277 %attr(754,root,root) /etc/rc.d/rc?.d/K??random
278 %attr(754,root,root) /etc/rc.d/rc?.d/K??single
279 %attr(754,root,root) /etc/rc.d/rc?.d/K??sys-chroots
280 %attr(754,root,root) /etc/rc.d/rc?.d/S??allowlogin
281 %attr(754,root,root) /etc/rc.d/rc?.d/S??cpusets
282 %attr(754,root,root) /etc/rc.d/rc?.d/S??killall
283 %attr(754,root,root) /etc/rc.d/rc?.d/S??local
284 %attr(754,root,root) /etc/rc.d/rc?.d/S??netfs
285 %attr(754,root,root) /etc/rc.d/rc?.d/S??network
286 %attr(754,root,root) /etc/rc.d/rc?.d/S??random
287 %attr(754,root,root) /etc/rc.d/rc?.d/S??single
288 %attr(754,root,root) /etc/rc.d/rc?.d/S??sys-chroots
289
290 %dir /var/cache/rc-scripts
291 %ghost /var/cache/rc-scripts/msg.cache
292
293 %attr(755,root,root) /etc/profile.d/lang.*sh
294
295 %attr(755,root,root) %{_bindir}/doexec
296 %attr(755,root,root) %{_bindir}/ipcalc
297 %attr(755,root,root) %{_bindir}/resolvesymlink
298 %attr(755,root,root) %{_bindir}/run-parts
299 # deprecated shell version, packaged for quick fix if something broken. will be dropped soon
300 %attr(755,root,root) %{_bindir}/run-parts.sh
301 %attr(755,root,root) %{_bindir}/usleep
302
303 %attr(755,root,root) %{_sbindir}/consoletype
304 %attr(755,root,root) %{_sbindir}/genhostid
305 %attr(755,root,root) %{_sbindir}/getkey
306 %attr(755,root,root) %{_sbindir}/hwprofile
307 %attr(755,root,root) %{_sbindir}/if*
308 %attr(755,root,root) %{_sbindir}/initlog
309 %attr(755,root,root) %{_sbindir}/loglevel
310 %attr(755,root,root) %{_sbindir}/minilogd
311 %attr(755,root,root) %{_sbindir}/netreport
312 %attr(755,root,root) %{_sbindir}/ppp-watch
313 %attr(755,root,root) %{_sbindir}/service
314 %attr(755,root,root) %{_sbindir}/setsysfont
315 %attr(755,root,root) %{_sbindir}/setuidgid
316 %attr(755,root,root) %{_sbindir}/start-stop-daemon
317 %attr(755,root,root) %{_sbindir}/tnl*
318 %attr(4755,root,root) %{_sbindir}/usernetctl
319
320 %attr(755,root,root) /lib/firmware/firmware-loader.sh
321
322 %{systemdtmpfilesdir}/rc-scripts.conf
323 %{systemdunitdir}/local.service
324 %{systemdunitdir}/rc-local.service
325 %{systemdunitdir}/sys-chroots.service
326
327 %dir /lib/rc-scripts
328 %attr(755,root,root) /lib/rc-scripts/ifdown-br
329 %attr(755,root,root) /lib/rc-scripts/ifdown-irda
330 %attr(755,root,root) /lib/rc-scripts/ifdown-post
331 %attr(755,root,root) /lib/rc-scripts/ifdown-ppp
332 %attr(755,root,root) /lib/rc-scripts/ifdown-sl
333 %attr(755,root,root) /lib/rc-scripts/ifdown-vlan
334 /lib/rc-scripts/ifup-aliases
335 %attr(755,root,root) /lib/rc-scripts/ifup-br
336 %attr(755,root,root) /lib/rc-scripts/ifup-ipx
337 %attr(755,root,root) /lib/rc-scripts/ifup-irda
338 %attr(755,root,root) /lib/rc-scripts/ifup-iucv
339 /lib/rc-scripts/ifup-neigh
340 %attr(755,root,root) /lib/rc-scripts/ifup-plip
341 %attr(755,root,root) /lib/rc-scripts/ifup-plusb
342 %attr(755,root,root) /lib/rc-scripts/ifup-post
343 %attr(755,root,root) /lib/rc-scripts/ifup-ppp
344 /lib/rc-scripts/ifup-routes
345 %attr(755,root,root) /lib/rc-scripts/ifup-sl
346 %attr(755,root,root) /lib/rc-scripts/ifup-vlan
347 /lib/rc-scripts/functions.network
348 /lib/rc-scripts/functions
349
350 %dir %{_sysconfdir}/ppp
351 %attr(754,root,root) %{_sysconfdir}/ppp/*
352 %dir /etc/sysconfig/cpusets
353 %dir /etc/sysconfig/hwprofiles
354 %dir /etc/sysconfig/interfaces
355 %dir /etc/sysconfig/interfaces/data
356 %dir /etc/sysconfig/isapnp
357
358 %dir /etc/sysconfig/interfaces/down.d
359 %dir /etc/sysconfig/interfaces/down.d/*
360 %dir /etc/sysconfig/interfaces/up.d
361 %dir /etc/sysconfig/interfaces/up.d/*
362 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/interfaces/down.d/ppp/logger
363 %attr(755,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/interfaces/up.d/ppp/logger
364 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/isapnp/isapnp-kernel.conf
365
366 %attr(640,root,root) %ghost /var/log/dmesg
367 %attr(750,root,root) %dir /var/run/netreport
368
369 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/adjtime
370 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/crypttab
371 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/initlog.conf
372 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/inittab
373 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/modules
374 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sysctl.conf
375 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/cpusets/cpuset-test
376 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/hwprof
377 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/i18n
378 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/init-colors
379 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/interfaces/ifcfg-eth0
380 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/network
381 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/static-arp
382 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/static-nat
383 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/static-routes
384 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/static-routes6
385 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/system
386
387 %{_mandir}/man?/*
388 %lang(de) %{_mandir}/de/man?/*
389 %lang(es) %{_mandir}/es/man?/*
390 %lang(fr) %{_mandir}/fr/man?/*
391 %lang(ja) %{_mandir}/ja/man?/*
392 %lang(ru) %{_mandir}/ru/man?/*
393 %lang(sv) %{_mandir}/sv/man?/*
394
395 %dir %{localedir}
396 %lang(de) %{localedir}/de
397 %lang(pl) %{localedir}/pl