]> git.pld-linux.org Git - packages/util-vserver.git/blob - util-vserver.spec
a84669b8bda902ef6e55a62c485fbb84d7dac07d
[packages/util-vserver.git] / util-vserver.spec
1 # TODO
2 # - reject install in %%pretrans if /proc/virtual/info has incompatible version
3 # - make pkgmgmnt internalize modify poldek conf to unignore vserver-packages
4 #
5 # m68k and mips are the only not supported archs
6 #
7 # Conditional build:
8 %bcond_without  dietlibc                # don't use dietlibc (ask for troubles)
9 %bcond_without  doc                     # don't build documentation which needed LaTeX
10 %bcond_without  no_dynamic_context      # disable enforcement of disabled dynamic context
11 %bcond_with     xalan                   # use the xalan xslt processor
12 #
13 %define vproc_version 0.01
14 # diet compile fails with ccache in %{__cc}
15 %undefine       with_ccache
16 #
17 Summary:        Linux virtual server utilities
18 Summary(pl.UTF-8):      Narzędzia dla linuksowych serwerów wirtualnych
19 Name:           util-vserver
20 Version:        0.30.215
21 Release:        10.6
22 License:        GPL
23 Group:          Applications/System
24 Source0:        http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
25 # Source0-md5:  befd9b8e5311e87395b67ee381d83649
26 Source1:        vprocunhide.init
27 Source2:        vservers.init
28 Source3:        vservers-legacy.init
29 Source4:        rebootmgr.init
30 Source5:        vservers.sysconfig
31 Source6:        vservers-legacy.sysconfig
32 Source7:        vrootdevices.init
33 Source8:        vrootdevices.sysconfig
34 # A bit of documentation explaining package management
35 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
36 Source9:        %{name}-pkgmgmt.txt
37 Source10:       %{name}-initpost.sh
38 Source11:       http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
39 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
40 Source12:       %{name}-vhashify.cron
41 Source13:       ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
42 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
43 Source14:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
44 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
45 Source15:       %{name}.init
46 Patch0:         %{name}-vsysvwrapper.patch
47 Patch1:         %{name}-pld.patch
48 Patch4:         %{name}-m4-diet.patch
49 Patch5:         %{name}-yum-verb-nogpg.patch
50 Patch6:         %{name}-build-umask.patch
51 Patch7:         %{name}-utmpx.patch
52 Patch8:         %{name}-vprocunhide.patch
53 Patch9:         %{name}-dev.patch
54 Patch10:        %{name}-no-dynamic-ctx.patch
55 Patch11:        %{name}-more-ip.patch
56 Patch12:        %{name}-rpm-fake-resolver-badperm-errorlogging.patch
57 Patch13:        %{name}-tmpdir.patch
58 Patch14:        %{name}-rpmpath.patch
59 Patch15:        %{name}-interfaces-ignore-cvs-dir.patch
60 Patch16:        %{name}-personalitymachine.patch
61 Patch17:        %{name}-backupfiles.patch
62 Patch18:        %{name}-trunk_fixes.patch
63 Patch19:        %{name}-vprocunhide-net.patch
64 Patch20:        %{name}-more-caps.patch
65 Patch21:        http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
66 Patch22:        %{name}-dev-stdfd.patch
67 URL:            http://savannah.nongnu.org/projects/util-vserver/
68 BuildRequires:  autoconf
69 BuildRequires:  automake >= 1.9
70 BuildRequires:  beecrypt-devel
71 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
72 BuildRequires:  e2fsprogs-devel
73 BuildRequires:  libstdc++-devel
74 BuildRequires:  libtool >= 1.5.14
75 %ifarch %{x8664}
76 BuildRequires:  sed >= 4.0
77 %endif
78 BuildRequires:  rpmbuild(macros) >= 1.268
79 %if %{with doc}
80 BuildRequires:  doxygen
81 BuildRequires:  graphviz
82 BuildRequires:  libxslt-progs
83 BuildRequires:  tetex-format-pdflatex
84 BuildRequires:  tetex-makeindex
85 # To be removed when tetex-format-pdflatex, tetex-pdftex...
86 # ...and graphviz packages get fixed
87 BuildRequires:  ghostscript
88 BuildRequires:  ghostscript-fonts-std
89 BuildRequires:  tetex-fonts-jknappen
90 BuildRequires:  tetex-metafont
91 %{?with_xalan:BuildRequires:    xalan-j}
92 %endif
93 Requires(post,preun):   /sbin/chkconfig
94 Requires:       %{name}-lib = %{version}-%{release}
95 Requires:       /etc/pld-release
96 Requires:       coreutils
97 Requires:       diffutils
98 Requires:       issue
99 Requires:       make
100 Requires:       mktemp >= 1.5-18
101 Requires:       poldek >= 0.30
102 Requires:       rc-scripts
103 Requires:       tar
104 Requires:       util-linux
105 Obsoletes:      util-vserver-build
106 Obsoletes:      util-vserver-core
107 Obsoletes:      util-vserver-init
108 Obsoletes:      vserver-distro-pld
109 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
110
111 %if %{with dietlibc}
112 # binaries created with this option have broken segments when using dietlibc
113 %define filterout_ld    -Wl,-z,relro
114 %endif
115
116 # for adapter
117 %define         _usrbin         /usr/bin
118 %define         _usrsbin        /usr/sbin
119 %define         _usrlib         /usr/lib
120
121 %description
122 This package provides the components and a framework to setup virtual
123 servers. A virtual server runs inside a Linux server. It is
124 nevertheless highly independent. As such, you can run various services
125 with normal configuration. The various vservers can't interact with
126 each other and can't interact with services in the main server.
127
128 This requires a special kernel supporting the new new_s_context and
129 set_ipv4root system call.
130
131 This package contains utilities which are required to communicate with
132 the Linux-Vserver enabled kernel, utilities which assist in building
133 Vservers and SysV initscripts which start and stop Vservers and related
134 tools.
135
136 %description -l pl.UTF-8
137 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
138 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
139 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
140 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
141 w interakcję z innymi ani z usługami na głównym serwerze.
142
143 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
144 new_s_context i set_ipv4root.
145
146 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
147 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
148 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
149 zatrzymujące Vserwery oraz powiązane narzędzia.
150
151 %package lib
152 Summary:        Dynamic libraries for util-vserver
153 Summary(pl.UTF-8):      Biblioteki dynamiczne dla pakietu util-vserver
154 Group:          Libraries
155
156 %description lib
157 util-vserver provides the components and a framework to setup virtual
158 servers. A virtual server runs inside a linux server. It is
159 nevertheless highly independent. As such, you can run various services
160 pith normal configuration. The various vservers can't interact with
161 each other and can't interact with services in the main server.
162
163 This package contains the shared libraries needed by all other
164 'util-vserver' subpackages.
165
166 %description lib -l pl.UTF-8
167 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
168 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
169 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
170 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
171 w interakcję z innymi ani z usługami na głównym serwerze.
172
173 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
174 podpakiety util-vserver.
175
176 %package devel
177 Summary:        Development files for Linux vserver libraries
178 Summary(pl.UTF-8):      Pliki programistyczne dla bibliotek linuksowego vserwera
179 Group:          Development/Libraries
180 Requires:       %{name}-lib = %{version}-%{release}
181
182 %description devel
183 This package contains the development files necessary for developing
184 programs which use vserver library.
185
186 %description devel -l pl.UTF-8
187 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
188 programów używających biblioteki vserver.
189
190 %package static
191 Summary:        Static vserver library
192 Summary(pl.UTF-8):      Biblioteka statyczna vservera
193 Group:          Development/Libraries
194 Requires:       %{name}-devel = %{version}-%{release}
195
196 %description static
197 This package contains the static version of vserver library.
198
199 %description static -l pl.UTF-8
200 Ten pakiet zawiera statyczną wersję biblioteki vservera.
201
202 %package legacy
203 Summary:        Legacy utilities for util-vserver
204 Summary(pl.UTF-8):      Stare narzędzia dla util-vserver
205 Group:          Applications/System
206 Requires(post,preun):   /sbin/chkconfig
207 Requires:       %{name} = %{version}-%{release}
208 Requires:       rc-scripts
209
210 %description legacy
211 util-vserver provides the components and a framework to setup virtual
212 servers. A virtual server runs inside a linux server. It is
213 nevertheless highly independent. As such, you can run various services
214 with normal configuration. The various vservers can't interact with
215 each other and can't interact with services in the main server.
216
217 This package contains the tools which are needed to work with Vservers
218 having an old-style configuration.
219
220 %description legacy -l pl.UTF-8
221 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
222 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
223 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
224 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
225 w interakcję z innymi ani z usługami na głównym serwerze.
226
227 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
228 konfigurację w starym stylu.
229
230 %package -n vserver-distro-alpine
231 Summary:        VServer build template for Alpine Linux
232 Summary(pl.UTF-8):      Szablon budowania VServerów dla dystrybucji Alpine Linux
233 Group:          Applications/System
234 Requires:       %{name} = %{version}-%{release}
235
236 %description -n vserver-distro-alpine
237 VServer build template for Alpine Linux.
238
239 %description -n vserver-distro-alpine -l pl.UTF-8
240 Szablon budowania VServerów dla dystrybucji Alpine Linux.
241
242 %package -n vserver-distro-centos
243 Summary:        VServer build template for CentOS
244 Summary(pl.UTF-8):      Szablon budowania VServerów dla dystrybucji CentOS
245 Group:          Applications/System
246 Requires:       %{name} = %{version}-%{release}
247 Requires:       yum
248
249 %description -n vserver-distro-centos
250 VServer build template for CentOS 4.2 and 5.
251
252 %description -n vserver-distro-centos -l pl.UTF-8
253 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
254
255 %package -n vserver-distro-debian
256 Summary:        VServer build templates for Debian
257 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Debian
258 Group:          Applications/System
259 Requires:       %{name} = %{version}-%{release}
260 Requires:       dpkg
261
262 %description -n vserver-distro-debian
263 VServer build templates for Debian.
264
265 %description -n vserver-distro-debian -l pl.UTF-8
266 Szablony do tworzenia VServerów dla dystrybucji Debian.
267
268 %package -n vserver-distro-fedora
269 Summary:        VServer build templates for Fedora
270 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Fedora
271 Group:          Applications/System
272 Requires:       %{name} = %{version}-%{release}
273 Requires:       binutils
274 Requires:       e2fsprogs
275 Requires:       rpm
276 Requires:       wget
277 Requires:       yum
278
279 %description -n vserver-distro-fedora
280 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
281
282 %description -n vserver-distro-fedora -l pl.UTF-8
283 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
284 1,2,3,4,5,6 oraz Fedora 7.
285
286 %package -n vserver-distro-gentoo
287 Summary:        VServer build template for Gentoo
288 Summary(pl.UTF-8):      Szablon budowania VServerów dla Gentoo
289 Group:          Applications/System
290 Requires:       %{name} = %{version}-%{release}
291
292 %description -n vserver-distro-gentoo
293 VServer build template for Gentoo.
294
295 %description -n vserver-distro-gentoo -l pl.UTF-8
296 Szablon budowania VServerów dla Gentoo.
297
298 %package -n vserver-distro-redhat
299 Summary:        VServer build template for Red Hat Linux 9
300 Summary(pl.UTF-8):      Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
301 Group:          Applications/System
302 Requires:       %{name} = %{version}-%{release}
303 Requires:       binutils
304 Requires:       e2fsprogs
305 Requires:       rpm
306 Requires:       wget
307
308 %description -n vserver-distro-redhat
309 VServer build template for RedHat Linux 9.
310
311 %description -n vserver-distro-redhat -l pl.UTF-8
312 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
313
314 %package -n vserver-distro-suse
315 Summary:        VServer build template for SuSE 9.1
316 Summary(pl.UTF-8):      Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
317 Group:          Applications/System
318 Requires:       %{name} = %{version}-%{release}
319 Requires:       binutils
320 Requires:       e2fsprogs
321 Requires:       rpm
322 Requires:       wget
323
324 %description -n vserver-distro-suse
325 VServer build template for SuSE Linux 9.1.
326
327 %description -n vserver-distro-suse -l pl.UTF-8
328 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
329
330 %package -n vserver-distro-ubuntu
331 Summary:        VServer build templates for Ubuntu
332 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Ubuntu
333 Group:          Applications/System
334 Requires:       %{name} = %{version}-%{release}
335 Requires:       dpkg
336
337 %description -n vserver-distro-ubuntu
338 VServer build templates for Ubuntu.
339
340 %description -n vserver-distro-ubuntu -l pl.UTF-8
341 Szablony do tworzenia VServerów dla dystrybucji Ubuntu.
342
343 %prep
344 %setup -q -a11
345 %patch0 -p1
346 %patch1 -p1
347 %patch4 -p1
348 %patch5 -p1
349 %patch6 -p1
350 %patch7 -p1
351 %patch8 -p1
352 %patch9 -p1
353 %{?with_no_dynamic_context:%patch10 -p1}
354 %patch11 -p1
355 %patch12 -p1
356 %patch13 -p1
357 %patch14 -p1
358 %patch15 -p1
359 %patch16 -p1
360 %patch17 -p1
361 %patch18 -p1
362 %patch19 -p1
363 %patch20 -p1
364 %patch21 -p1
365 %patch22 -p1
366
367 install %{SOURCE9} package-management.txt
368
369 %build
370 unset LD_SYMBOLIC_FUNCTIONS || :
371
372 %if %{with dietlibc}
373 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
374 %endif
375 %{__libtoolize}
376 %{__aclocal} -I m4
377 %{__automake}
378 %{__autoconf}
379 %configure \
380         --with-initrddir=/etc/rc.d/init.d \
381         --enable-release \
382         --enable-apis=NOLEGACY \
383         --with-initscripts=sysv \
384         --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
385         MKTEMP=/bin/mktemp \
386         MOUNT=/bin/mount \
387         PS=/bin/ps \
388         UMOUNT=/bin/umount \
389         IP=/sbin/ip \
390         IPTABLES=%{_usrsbin}/iptables \
391         MODPROBE=/sbin/modprobe \
392         NAMEIF=/sbin/nameif \
393         RMMOD=/sbin/rmmod \
394         VCONFIG=/sbin/vconfig \
395         WGET=%{_usrbin}/wget \
396
397 %{__make} all
398 %{?with_doc:%{__make} doc}
399
400 %{__make} -C vproc-%{vproc_version} \
401         CC="%{__cc}" \
402         CFLAGS="%{rpmcflags}"
403
404 %install
405 rm -rf $RPM_BUILD_ROOT
406 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
407         $RPM_BUILD_ROOT%{_sysconfdir}/vservices \
408         $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/apps/vdevmap
409
410 %{__make} -j1 install install-distribution \
411         DESTDIR=$RPM_BUILD_ROOT
412
413 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
414
415 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
416         s=`basename $i | sed s/v_//`
417         cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
418 # IP addresses/interfaces to bound $s service to
419 #IP=10.0.0.1
420 #IP=eth0
421 EOF
422 done
423
424 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
425         $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
426 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
427         $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
428 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
429         $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
430 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
431         $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
432 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE15} > \
433         $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
434 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
435         $RPM_BUILD_ROOT/etc/sysconfig/vservers
436
437 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
438
439 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
440 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
441 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
442 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
443 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
444 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
445 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
446 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost
447 %endif
448 install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
449 install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
450 install gentoo/bash-wrapper $RPM_BUILD_ROOT%{_libdir}/%{name}
451
452 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
453 02 2 * * 0      root    %{_libdir}/%{name}/vhashify.cron
454 EOF
455
456 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
457 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
458
459 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
460 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
461
462 # set arch for pld-ac in pld.conf
463 %ifarch i586 i686 ppc sparc alpha athlon
464 %define         ftp_arch        %{_target_cpu}
465 %endif
466 %ifarch %{x8664}
467 %define         ftp_arch        amd64
468 %endif
469 %ifarch i486
470 %define         ftp_arch        i386
471 %endif
472 %ifarch pentium2 pentium3 pentium4
473 %define         ftp_arch        i686
474 %endif
475 %ifarch sparcv9 sparc64
476 %define         ftp_arch        sparc
477 %endif
478 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
479
480 # set arch for pld-th in pld.conf
481 %ifarch i486 i686 ppc sparc alpha athlon
482 %define         ftp_arch        %{_target_cpu}
483 %endif
484 %ifarch %{x8664}
485 %define         ftp_arch        x86_64
486 %endif
487 %ifarch i586
488 %define         ftp_arch        i486
489 %endif
490 %ifarch pentium2 pentium3 pentium4
491 %define         ftp_arch        i686
492 %endif
493 %ifarch sparcv9 sparc64
494 %define         ftp_arch        sparc
495 %endif
496 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
497
498 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
499 # set arch for pld-ti in pld.conf
500 %ifarch i586 i686
501 %define         ftp_arch        %{_target_cpu}
502 %endif
503 %ifarch %{x8664}
504 %define         ftp_arch        x86_64
505 %endif
506 %ifarch athlon pentium2 pentium3 pentium4
507 %define         ftp_arch        i686
508 %endif
509 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
510 %endif
511
512 # current debootstrap link
513 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
514         > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
515
516 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
517
518 # we have our own initscript which does the same
519 rm -rf $RPM_BUILD_ROOT/dev
520 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
521 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
522 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
523 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
524
525 %clean
526 rm -rf $RPM_BUILD_ROOT
527
528 %triggerun -- util-vserver-init
529 # Prevent preun from util-vserver-init from working
530 chmod a-x /etc/rc.d/init.d/vprocunhide
531 chmod a-x /etc/rc.d/init.d/vrootdevices
532 chmod a-x /etc/rc.d/init.d/vservers
533
534 %triggerpostun -- util-vserver-init
535 # Restore what triggerun removed
536 chmod ug+x /etc/rc.d/init.d/vprocunhide
537 chmod ug+x /etc/rc.d/init.d/vrootdevices
538 chmod ug+x /etc/rc.d/init.d/vservers
539 /sbin/chkconfig --add vrootdevices
540 /sbin/chkconfig --add vprocunhide
541 /sbin/chkconfig --add vservers
542 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
543         cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
544         mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
545 fi
546 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
547         cp -f /etc/sysconfig/vservers{,.rpmnew}
548         mv -f /etc/sysconfig/vservers{.rpmsave,}
549 fi
550
551 %triggerpostun -- util-vserver-build < 0.30.215-1.1
552 for D in ac th ti; do
553         P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
554
555         if [ -f $P/pld-source.conf.rpmsave ]; then
556                 cp -f $P/repos.d/pld.conf{,.rpmnew}
557                 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
558         fi
559 done
560 exit 0
561
562 %post
563 %{_sbindir}/setattr --barrier /vservers || :
564 /sbin/chkconfig --add util-vserver
565 /sbin/chkconfig --add vrootdevices
566 /sbin/chkconfig --add vprocunhide
567 /sbin/chkconfig --add vservers
568 if [ ! -f /var/lock/subsys/util-vserver ]; then
569         echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
570 fi
571 if [ ! -f /var/lock/subsys/vrootdevices ]; then
572         echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
573 fi
574 if [ ! -f /var/lock/subsys/vprocunhide ]; then
575         echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
576 fi
577 if [ ! -f /var/lock/subsys/vservers ]; then
578         echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
579 fi
580
581 %preun
582 if [ "$1" = "0" ]; then
583         %service util-vserver stop
584         %service vservers stop
585         %service vprocunhide stop
586         %service vrootdevices stop
587         /sbin/chkconfig --del util-vserver
588         /sbin/chkconfig --del vservers
589         /sbin/chkconfig --del vprocunhide
590         /sbin/chkconfig --del vrootdevices
591 fi
592
593 %post   lib -p /sbin/ldconfig
594 %postun lib -p /sbin/ldconfig
595
596 %post legacy
597 /sbin/chkconfig --add rebootmgr
598 /sbin/chkconfig --add vservers-legacy
599 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
600         echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
601 fi
602 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
603         echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
604 fi
605
606 %preun legacy
607 if [ "$1" = "0" ]; then
608         %service rebootmgr stop
609         %service vservers-legacy stop
610         /sbin/chkconfig --del rebootmgr
611         /sbin/chkconfig --del vservers-legacy
612 fi
613
614 %files
615 %defattr(644,root,root,755)
616 %doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
617 %doc contrib/yum*.patch package-management.txt
618 %{?with_doc:%doc doc/*.html}
619 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
620 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
621 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
622 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
623 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
624 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
625 %attr(754,root,root) /etc/rc.d/init.d/vservers
626 %dir %{_sysconfdir}/vservers
627 %dir %{_sysconfdir}/vservers/.defaults
628 %dir %{_sysconfdir}/vservers/.defaults/apps
629 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
630 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
631 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
632 %dir %{_sysconfdir}/vservers/.defaults/files
633 %{_sysconfdir}/vservers/.defaults/vdirbase
634 %{_sysconfdir}/vservers/.defaults/cachebase
635 %{_sysconfdir}/vservers/.defaults/run.rev
636 %dir %{_sysconfdir}/vservers/.distributions
637 %dir %{_sysconfdir}/vservers/.distributions/.common
638 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
639 /sbin/vshelper
640 %attr(755,root,root) %{_sbindir}/chbind
641 %attr(755,root,root) %{_sbindir}/chcontext
642 %attr(755,root,root) %{_sbindir}/chxid
643 %attr(755,root,root) %{_sbindir}/exec-cd
644 %attr(755,root,root) %{_sbindir}/lsxid
645 %attr(755,root,root) %{_sbindir}/naddress
646 %attr(755,root,root) %{_sbindir}/nattribute
647 %attr(755,root,root) %{_sbindir}/ncontext
648 %attr(755,root,root) %{_sbindir}/reducecap
649 %attr(755,root,root) %{_sbindir}/setattr
650 %attr(755,root,root) %{_sbindir}/showattr
651 %attr(755,root,root) %{_sbindir}/vapt-get
652 %attr(755,root,root) %{_sbindir}/vattribute
653 %attr(755,root,root) %{_sbindir}/vcontext
654 %attr(755,root,root) %{_sbindir}/vdevmap
655 %attr(755,root,root) %{_sbindir}/vdlimit
656 %attr(755,root,root) %{_sbindir}/vdu
657 %attr(755,root,root) %{_sbindir}/vkill
658 %attr(755,root,root) %{_sbindir}/vlimit
659 %attr(755,root,root) %{_sbindir}/vmemctrl
660 %attr(755,root,root) %{_sbindir}/vmount
661 %attr(755,root,root) %{_sbindir}/vnamespace
662 %attr(755,root,root) %{_sbindir}/vpoldek
663 %attr(755,root,root) %{_sbindir}/vproc
664 %attr(755,root,root) %{_sbindir}/vps
665 %attr(755,root,root) %{_sbindir}/vpstree
666 %attr(755,root,root) %{_sbindir}/vrpm
667 %attr(755,root,root) %{_sbindir}/vrsetup
668 %attr(755,root,root) %{_sbindir}/vsched
669 %attr(755,root,root) %{_sbindir}/vserver
670 %attr(755,root,root) %{_sbindir}/vserver-info
671 %attr(755,root,root) %{_sbindir}/vserver-stat
672 %attr(755,root,root) %{_sbindir}/vsomething
673 %attr(755,root,root) %{_sbindir}/vspace
674 %attr(755,root,root) %{_sbindir}/vtag
675 %attr(755,root,root) %{_sbindir}/vtop
676 %attr(755,root,root) %{_sbindir}/vuname
677 %attr(755,root,root) %{_sbindir}/vwait
678 %attr(755,root,root) %{_sbindir}/vyum
679 %dir %{_libdir}/%{name}
680 %dir %{_libdir}/%{name}/defaults
681 %{_libdir}/%{name}/defaults/fstab
682 %{_libdir}/%{name}/defaults/debootstrap.*
683 %{_libdir}/%{name}/defaults/vunify-exclude
684 %{_libdir}/%{name}/defaults/context.start
685 %{_libdir}/%{name}/defaults/environment
686 %{_libdir}/%{name}/defaults/h2ext.desc
687 %{_libdir}/%{name}/defaults/mtab
688 %{_libdir}/%{name}/defaults/vprocunhide-files
689 %dir %{_libdir}/%{name}/distributions
690 %{_libdir}/%{name}/distributions/defaults
691 %dir %{_libdir}/%{name}/distributions/template
692 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
693 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
694 %dir %{_libdir}/%{name}/distributions/redhat
695 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
696 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
697 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
698 %{_libdir}/%{name}/FEATURES.txt
699 %{_libdir}/%{name}/util-vserver-vars
700 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
701 %attr(755,root,root) %{_libdir}/%{name}/capchroot
702 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
703 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
704 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
705 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
706 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
707 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
708 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
709 %attr(755,root,root) %{_libdir}/%{name}/filetime
710 %{_libdir}/%{name}/functions
711 %attr(755,root,root) %{_libdir}/%{name}/h2ext
712 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
713 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
714 %attr(755,root,root) %{_libdir}/%{name}/lockfile
715 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
716 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
717 %attr(755,root,root) %{_libdir}/%{name}/readlink
718 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
719 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
720 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
721 %attr(755,root,root) %{_libdir}/%{name}/sigexec
722 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
723 %attr(755,root,root) %{_libdir}/%{name}/tunctl
724 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
725 %attr(755,root,root) %{_libdir}/%{name}/vclone
726 %attr(755,root,root) %{_libdir}/%{name}/vcopy
727 %attr(755,root,root) %{_libdir}/%{name}/vhashify
728 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
729 %attr(755,root,root) %{_libdir}/%{name}/vpkg
730 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
731 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
732 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
733 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
734 %{_libdir}/%{name}/vserver-build.*
735 %{_libdir}/%{name}/vserver-setup.functions
736 %{_libdir}/%{name}/vserver.*
737 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
738 %attr(755,root,root) %{_libdir}/%{name}/vshelper
739 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
740 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
741 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
742 %attr(755,root,root) %{_libdir}/%{name}/vunify
743 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
744 %{_mandir}/man8/chbind.8*
745 %{_mandir}/man8/chcontext.8*
746 %{_mandir}/man8/reducecap.8*
747 %{_mandir}/man8/vps.8*
748 %{_mandir}/man8/vpstree.8*
749 %{_mandir}/man8/vserver-build.8*
750 %{_mandir}/man8/vserver-stat.8*
751 %{_mandir}/man8/vserver.8*
752 %{_mandir}/man8/vtop.8*
753 %attr(000,root,root) %dir /vservers
754 %dir /vservers/.pkg
755 %dir %{_localstatedir}/run/vservers
756 %dir %{_localstatedir}/run/vservers.rev
757 %dir %{_localstatedir}/run/vshelper
758 %dir /var/cache/vservers
759 %dir /var/cache/vservers/poldek
760
761 #%files -n vserver-distro-pld
762 #%defattr(644,root,root,755)
763 %dir %{_libdir}/%{name}/distributions/pld
764 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
765 %dir %{_libdir}/%{name}/distributions/pld-*
766 %{_libdir}/%{name}/distributions/pld-*/pkgs
767 %{_libdir}/%{name}/distributions/pld-*/pubkeys
768 %{_libdir}/%{name}/distributions/pld-*/rpm
769 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
770 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
771 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
772 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
773 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
774 %dir %{_sysconfdir}/vservers/.distributions/pld-th
775 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
776 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
777 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
778 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
779 %dir %{_sysconfdir}/vservers/.distributions/pld-ti
780 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
781 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d
782 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf
783 %endif
784
785 %files lib
786 %defattr(644,root,root,755)
787 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
788 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
789
790 %files devel
791 %defattr(644,root,root,755)
792 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
793 %attr(755,root,root) %{_libdir}/libvserver.so
794 %{_libdir}/lib*.la
795 %{_includedir}/vserver*.h
796 %{_pkgconfigdir}/*.pc
797
798 %files static
799 %defattr(644,root,root,755)
800 %{_libdir}/libvserver.a
801
802 %files legacy
803 %defattr(644,root,root,755)
804 %dir %{_sysconfdir}/vservices
805 %{_sysconfdir}/vservices/*
806 %dir %{_libdir}/%{name}/legacy
807 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
808 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
809 %attr(754,root,root) /etc/rc.d/init.d/v_*
810 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
811 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
812 %attr(755,root,root) %{_sbindir}/vserver-copy
813 %{_mandir}/man8/distrib-info.8*
814 %{_mandir}/man8/rebootmgr.8*
815 %{_mandir}/man8/vserver-copy.8*
816
817 %files -n vserver-distro-alpine
818 %defattr(644,root,root,755)
819 %dir %{_libdir}/%{name}/distributions/alpine
820 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
821 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
822
823 %files -n vserver-distro-centos
824 %defattr(644,root,root,755)
825 %{_libdir}/util-vserver/distributions/centos*
826
827 %files -n vserver-distro-debian
828 %defattr(644,root,root,755)
829 %dir %{_libdir}/%{name}/distributions/debian
830 %{_libdir}/%{name}/distributions/debian/debootstrap.script
831 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
832 %{_libdir}/%{name}/distributions/etch
833 %{_libdir}/%{name}/distributions/lenny
834 %{_libdir}/%{name}/distributions/sid
835
836 %files -n vserver-distro-fedora
837 %defattr(644,root,root,755)
838 %dir %{_sysconfdir}/vservers/.distributions/f7
839 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
840 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
841 %dir %{_sysconfdir}/vservers/.distributions/fc*
842 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
843 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
844 %{_libdir}/%{name}/distributions/f7
845 %{_libdir}/%{name}/distributions/f8
846 %{_libdir}/%{name}/distributions/fc*
847
848 %files -n vserver-distro-gentoo
849 %defattr(644,root,root,755)
850 %dir %{_libdir}/util-vserver/distributions/gentoo
851 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
852 %attr(755,root,root) %{_sbindir}/vdispatch-conf
853 %attr(755,root,root) %{_sbindir}/vemerge
854 %attr(755,root,root) %{_sbindir}/vesync
855 %attr(755,root,root) %{_sbindir}/vupdateworld
856
857 %files -n vserver-distro-redhat
858 %defattr(644,root,root,755)
859 %dir %{_sysconfdir}/vservers/.distributions/rh*
860 %dir %{_sysconfdir}/vservers/.distributions/rh*/apt
861 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
862 %{_libdir}/%{name}/distributions/rh*
863
864 %files -n vserver-distro-suse
865 %defattr(644,root,root,755)
866 %dir %{_sysconfdir}/vservers/.distributions/suse*
867 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
868 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
869 %{_libdir}/%{name}/distributions/suse*
870
871 %files -n vserver-distro-ubuntu
872 %defattr(644,root,root,755)
873 %{_libdir}/%{name}/distributions/breezy
874 %{_libdir}/%{name}/distributions/dapper
875 %{_libdir}/%{name}/distributions/edgy
876 %{_libdir}/%{name}/distributions/feisty
877 %{_libdir}/%{name}/distributions/gutsy
878 %{_libdir}/%{name}/distributions/hoary
879 %{_libdir}/%{name}/distributions/warty
This page took 0.101364 seconds and 3 git commands to generate.