2 # - %install is not re-entrant
4 # m68k and mips are the only not supported archs
7 %bcond_without dietlibc # don't use dietlibc (ask for troubles)
8 %bcond_without doc # don't build documentation which needed LaTeX
9 %bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
10 %bcond_with xalan # use the xalan xslt processor
12 %define vproc_version 0.01
13 # diet compile fails with ccache in %{__cc}
17 # pdflatex: refman: Invalid argument
23 Summary: Linux virtual server utilities
24 Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
27 Release: 0.%{snap}.%{rel}
29 Group: Applications/System
30 Source0: http://people.linux-vserver.org/~dhozac/t/uv-testing/%{name}-%{version}-%{snap}.tar.bz2
31 # Source0-md5: 4f7a64b7295ea01673974394f4afd3ff
32 Source1: vprocunhide.init
33 Source2: vservers.init
34 Source3: vservers-legacy.init
35 Source4: rebootmgr.init
36 Source5: vservers.sysconfig
37 Source6: vservers-legacy.sysconfig
38 Source7: vrootdevices.init
39 Source8: vrootdevices.sysconfig
40 # A bit of documentation explaining package management
41 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
42 Source9: %{name}-pkgmgmt.txt
43 Source10: %{name}-initpost.sh
44 Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
45 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
46 Source12: %{name}-vhashify.cron
47 Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
48 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
49 Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
50 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
51 Source15: %{name}.init
52 Patch0: %{name}-vsysvwrapper.patch
53 Patch1: %{name}-pld.patch
54 Patch2: %{name}-centos.patch
55 Patch4: %{name}-m4-diet.patch
56 Patch5: %{name}-yum-verb-nogpg.patch
57 Patch6: %{name}-build-umask.patch
58 Patch7: %{name}-utmpx.patch
59 Patch8: %{name}-vprocunhide.patch
60 Patch9: %{name}-dev.patch
61 Patch10: %{name}-no-dynamic-ctx.patch
62 Patch11: %{name}-more-ip.patch
63 Patch12: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
64 Patch13: %{name}-tmpdir.patch
65 Patch14: %{name}-rpmpath.patch
66 Patch15: %{name}-interfaces-ignore-cvs-dir.patch
67 Patch16: %{name}-personalitymachine.patch
68 Patch17: %{name}-backupfiles.patch
69 Patch18: %{name}-vprocunhide-net.patch
70 # http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
71 Patch19: %{name}-dbrebuild-internalize4.patch
72 Patch21: %{name}-bash-wrapper.patch
73 Patch22: %{name}-pivot-root-ugly-hack.patch
74 Patch24: vunify-more-exclude.patch
75 URL: http://savannah.nongnu.org/projects/util-vserver/
76 BuildRequires: autoconf
77 BuildRequires: automake >= 1.9
78 BuildRequires: beecrypt-devel
80 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
81 BuildRequires: e2fsprogs-devel
82 BuildRequires: libstdc++-devel
83 BuildRequires: libtool >= 1.5.14
84 BuildRequires: pkgconfig
85 BuildRequires: python-devel
86 BuildRequires: python-modules
87 BuildRequires: rpm-pythonprov
88 BuildRequires: rpmbuild(macros) >= 1.268
89 BuildRequires: sed >= 4.0
91 BuildRequires: doxygen
92 BuildRequires: graphviz
93 BuildRequires: libxslt-progs
94 BuildRequires: python-devel
95 %if "%{pld_release}" != "th"
96 BuildRequires: tetex-fonts-jknappen
97 BuildRequires: tetex-format-pdflatex
98 BuildRequires: tetex-makeindex
99 BuildRequires: tetex-metafont
101 BuildRequires: texlive-fonts-type1-urw
102 BuildRequires: texlive-format-pdflatex
103 BuildRequires: texlive-latex-ucs
104 BuildRequires: texlive-makeindex
105 BuildRequires: texlive-pdftex
106 BuildRequires: texlive-xetex
108 %{?with_xalan:BuildRequires: xalan-j}
110 Requires(post,preun): /sbin/chkconfig
111 Requires: %{name}-lib = %{version}-%{release}
116 Requires: mktemp >= 1.5-18
119 Requires: util-linux >= 2.13
120 Requires: vserver-distro-pld = %{version}-%{release}
121 Obsoletes: util-vserver-build
122 Obsoletes: util-vserver-core
123 Obsoletes: util-vserver-init
124 Conflicts: poldek < 0.18.8-10
125 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
128 # binaries created with this option have broken segments when using dietlibc
129 %define filterout_ld -Wl,-z,relro
133 %define _usrbin /usr/bin
134 %define _usrsbin /usr/sbin
135 %define _usrlib /usr/lib
138 This package provides the components and a framework to setup virtual
139 servers. A virtual server runs inside a Linux server. It is
140 nevertheless highly independent. As such, you can run various services
141 with normal configuration. The various vservers can't interact with
142 each other and can't interact with services in the main server.
144 This requires a special kernel supporting the new new_s_context and
145 set_ipv4root system call.
147 This package contains utilities which are required to communicate with
148 the Linux-Vserver enabled kernel, utilities which assist in building
149 Vservers and SysV initscripts which start and stop Vservers and
152 %description -l pl.UTF-8
153 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
154 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
155 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
156 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
157 w interakcję z innymi ani z usługami na głównym serwerze.
159 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
160 new_s_context i set_ipv4root.
162 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
163 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
164 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
165 zatrzymujące Vserwery oraz powiązane narzędzia.
168 Summary: Dynamic libraries for util-vserver
169 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
173 util-vserver provides the components and a framework to setup virtual
174 servers. A virtual server runs inside a linux server. It is
175 nevertheless highly independent. As such, you can run various services
176 pith normal configuration. The various vservers can't interact with
177 each other and can't interact with services in the main server.
179 This package contains the shared libraries needed by all other
180 'util-vserver' subpackages.
182 %description lib -l pl.UTF-8
183 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
184 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
185 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
186 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
187 w interakcję z innymi ani z usługami na głównym serwerze.
189 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
190 podpakiety util-vserver.
193 Summary: Development files for Linux vserver libraries
194 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
195 Group: Development/Libraries
196 Requires: %{name}-lib = %{version}-%{release}
199 This package contains the development files necessary for developing
200 programs which use vserver library.
202 %description devel -l pl.UTF-8
203 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
204 programów używających biblioteki vserver.
207 Summary: Static vserver library
208 Summary(pl.UTF-8): Biblioteka statyczna vservera
209 Group: Development/Libraries
210 Requires: %{name}-devel = %{version}-%{release}
213 This package contains the static version of vserver library.
215 %description static -l pl.UTF-8
216 Ten pakiet zawiera statyczną wersję biblioteki vservera.
219 Summary: Legacy utilities for util-vserver
220 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
221 Group: Applications/System
222 Requires(post,preun): /sbin/chkconfig
223 Requires: %{name} = %{version}-%{release}
227 util-vserver provides the components and a framework to setup virtual
228 servers. A virtual server runs inside a linux server. It is
229 nevertheless highly independent. As such, you can run various services
230 with normal configuration. The various vservers can't interact with
231 each other and can't interact with services in the main server.
233 This package contains the tools which are needed to work with Vservers
234 having an old-style configuration.
236 %description legacy -l pl.UTF-8
237 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
238 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
239 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
240 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
241 w interakcję z innymi ani z usługami na głównym serwerze.
243 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
244 konfigurację w starym stylu.
246 %package -n python-util-vserver
247 Summary: Python interface to libutil-vserver library
248 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki libutil-vserver
250 Group: Libraries/Python
252 %description -n python-util-vserver
253 Python interface to libutil-vserver library.
255 %description -n python-util-vserver -l pl.UTF-8
256 Pythonowy interfejs do biblioteki libutil-vserver.
258 %package -n vserver-distro-alpine
259 Summary: VServer build template for Alpine Linux
260 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
261 Group: Applications/System
262 Requires: %{name} = %{version}-%{release}
264 %description -n vserver-distro-alpine
265 VServer build template for Alpine Linux.
267 %description -n vserver-distro-alpine -l pl.UTF-8
268 Szablon budowania VServerów dla dystrybucji Alpine Linux.
270 %package -n vserver-distro-centos
271 Summary: VServer build template for CentOS
272 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
273 Group: Applications/System
274 Requires: %{name} = %{version}-%{release}
275 Requires: vserver-distro-redhat = %{version}-%{release}
278 %description -n vserver-distro-centos
279 VServer build template for CentOS 4.2 and 5.
281 %description -n vserver-distro-centos -l pl.UTF-8
282 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
284 %package -n vserver-distro-debian
285 Summary: VServer build templates for Debian and Ubuntu
286 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu
287 Group: Applications/System
288 Requires: %{name} = %{version}-%{release}
289 Requires: debootstrap
291 Provides: vserver-distro-ubuntu
292 Obsoletes: vserver-distro-ubuntu
294 %description -n vserver-distro-debian
295 VServer build templates for Debian and Ubuntu.
297 %description -n vserver-distro-debian -l pl.UTF-8
298 Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
300 %package -n vserver-distro-fedora
301 Summary: VServer build templates for Fedora
302 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
303 Group: Applications/System
304 Requires: %{name} = %{version}-%{release}
308 Requires: vserver-distro-redhat = %{version}-%{release}
312 %description -n vserver-distro-fedora
313 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
315 %description -n vserver-distro-fedora -l pl.UTF-8
316 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
317 1,2,3,4,5,6 oraz Fedora 7.
319 %package -n vserver-distro-gentoo
320 Summary: VServer build template for Gentoo
321 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
322 Group: Applications/System
323 Requires: %{name} = %{version}-%{release}
325 %description -n vserver-distro-gentoo
326 VServer build template for Gentoo.
328 %description -n vserver-distro-gentoo -l pl.UTF-8
329 Szablon budowania VServerów dla Gentoo.
331 %package -n vserver-distro-pld
332 Summary: VServer build templates for PLD Linux
333 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
334 Group: Applications/System
335 Requires: %{name} = %{version}-%{release}
336 Requires: /etc/pld-release
337 Requires: poldek >= 0.30
339 %description -n vserver-distro-pld
340 VServer build templates for PLD Linux.
342 %description -n vserver-distro-pld -l pl.UTF-8
343 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
345 %package -n vserver-distro-redhat
346 Summary: VServer build template for Red Hat Linux 9
347 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
348 Group: Applications/System
349 Requires: %{name} = %{version}-%{release}
355 %description -n vserver-distro-redhat
356 VServer build template for RedHat Linux 9.
358 %description -n vserver-distro-redhat -l pl.UTF-8
359 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
361 %package -n vserver-distro-suse
362 Summary: VServer build template for SuSE 9.1
363 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
364 Group: Applications/System
365 Requires: %{name} = %{version}-%{release}
371 %description -n vserver-distro-suse
372 VServer build template for SuSE Linux 9.1.
374 %description -n vserver-distro-suse -l pl.UTF-8
375 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
378 %setup -q -n %{name}-%{version}-%{snap} -a11
388 %{?with_no_dynamic_context:%patch10 -p1}
402 install %{SOURCE9} package-management.txt
405 unset LD_SYMBOLIC_FUNCTIONS || :
408 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
415 --with-initrddir=/etc/rc.d/init.d \
417 --enable-apis=NOLEGACY \
418 --with-initscripts=sysv \
419 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
421 IONICE=%{_usrbin}/ionice \
423 IPTABLES=%{_usrsbin}/iptables \
425 MODPROBE=/sbin/modprobe \
427 NAMEIF=/sbin/nameif \
429 RESTORE=/sbin/restore \
431 RSYNC=%{_usrbin}/rsync \
432 STRACE=%{_usrbin}/strace \
434 VCONFIG=/sbin/vconfig \
435 WGET=%{_usrbin}/wget \
439 %{?with_doc:%{__make} doc}
441 %{__make} -C vproc-%{vproc_version} \
443 CFLAGS="%{rpmcflags}"
446 rm -rf $RPM_BUILD_ROOT
447 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
448 $RPM_BUILD_ROOT%{_sysconfdir}/vservices \
449 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/apps/vdevmap
451 %{__make} -j1 install install-distribution \
452 DESTDIR=$RPM_BUILD_ROOT
454 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
456 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
457 s=$(basename $i | sed s/v_//)
458 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
459 # IP addresses/interfaces to bound $s service to
465 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
466 $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
467 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
468 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
469 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
470 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
471 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
472 $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
473 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE15} > \
474 $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
475 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
476 $RPM_BUILD_ROOT/etc/sysconfig/vservers
477 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' gentoo/bash-wrapper > \
478 $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
480 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
482 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
483 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
484 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
485 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
486 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
487 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
488 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
489 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost
491 install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
492 sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
493 chmod +x $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
495 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
496 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
499 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
500 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
502 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
503 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
505 # set arch for pld-ac in pld.conf
506 %ifarch i586 i686 ppc sparc alpha athlon
507 %define ftp_arch %{_target_cpu}
510 %define ftp_arch amd64
513 %define ftp_arch i386
515 %ifarch pentium2 pentium3 pentium4
516 %define ftp_arch i686
518 %ifarch sparcv9 sparc64
519 %define ftp_arch sparc
521 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
523 # set arch for pld-th in pld.conf
524 %ifarch i486 i686 ppc sparc alpha athlon
525 %define ftp_arch %{_target_cpu}
528 %define ftp_arch x86_64
531 %define ftp_arch i486
533 %ifarch pentium2 pentium3 pentium4
534 %define ftp_arch i686
536 %ifarch sparcv9 sparc64
537 %define ftp_arch sparc
539 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
541 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
542 # set arch for pld-ti in pld.conf
544 %define ftp_arch %{_target_cpu}
547 %define ftp_arch x86_64
549 %ifarch athlon pentium2 pentium3 pentium4
550 %define ftp_arch i686
552 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
555 # current debootstrap link
556 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
557 > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
559 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
562 rm -rf $RPM_BUILD_ROOT/dev
563 rm -rf $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
564 # we have our own initscript which does the same
565 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
566 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
567 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
568 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
571 rm -rf $RPM_BUILD_ROOT
573 %triggerun -- util-vserver-init
574 # Prevent preun from util-vserver-init from working
575 chmod a-x /etc/rc.d/init.d/vprocunhide
576 chmod a-x /etc/rc.d/init.d/vrootdevices
577 chmod a-x /etc/rc.d/init.d/vservers
579 %triggerpostun -- util-vserver-init
580 # Restore what triggerun removed
581 chmod ug+x /etc/rc.d/init.d/vprocunhide
582 chmod ug+x /etc/rc.d/init.d/vrootdevices
583 chmod ug+x /etc/rc.d/init.d/vservers
584 /sbin/chkconfig --add vrootdevices
585 /sbin/chkconfig --add vprocunhide
586 /sbin/chkconfig --add vservers
587 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
588 cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
589 mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
591 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
592 cp -f /etc/sysconfig/vservers{,.rpmnew}
593 mv -f /etc/sysconfig/vservers{.rpmsave,}
597 %{_sbindir}/setattr --barrier /vservers || :
598 /sbin/chkconfig --add util-vserver
599 /sbin/chkconfig --add vrootdevices
600 /sbin/chkconfig --add vprocunhide
601 /sbin/chkconfig --add vservers
602 if [ ! -f /var/lock/subsys/util-vserver ]; then
603 echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
605 if [ ! -f /var/lock/subsys/vrootdevices ]; then
606 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
608 if [ ! -f /var/lock/subsys/vprocunhide ]; then
609 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
611 if [ ! -f /var/lock/subsys/vservers ]; then
612 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
616 if [ "$1" = "0" ]; then
617 %service util-vserver stop
618 %service vservers stop
619 %service vprocunhide stop
620 %service vrootdevices stop
621 /sbin/chkconfig --del util-vserver
622 /sbin/chkconfig --del vservers
623 /sbin/chkconfig --del vprocunhide
624 /sbin/chkconfig --del vrootdevices
627 %post lib -p /sbin/ldconfig
628 %postun lib -p /sbin/ldconfig
631 /sbin/chkconfig --add rebootmgr
632 /sbin/chkconfig --add vservers-legacy
633 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
634 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
636 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
637 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
641 if [ "$1" = "0" ]; then
642 %service rebootmgr stop
643 %service vservers-legacy stop
644 /sbin/chkconfig --del rebootmgr
645 /sbin/chkconfig --del vservers-legacy
648 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
649 for D in ac th ti; do
650 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
652 if [ -f $P/pld-source.conf.rpmsave ]; then
653 cp -f $P/repos.d/pld.conf{,.rpmnew}
654 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
660 %defattr(644,root,root,755)
661 %doc AUTHORS NEWS THANKS doc/intro.txt
662 %doc package-management.txt
663 %{?with_doc:%doc doc/*.html}
664 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
665 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
666 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
667 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
668 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
669 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
670 %attr(754,root,root) /etc/rc.d/init.d/vservers
671 %dir %{_sysconfdir}/vservers
672 %dir %{_sysconfdir}/vservers/.defaults
673 %dir %{_sysconfdir}/vservers/.defaults/apps
674 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
675 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
676 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
677 %dir %{_sysconfdir}/vservers/.defaults/files
678 %{_sysconfdir}/vservers/.defaults/vdirbase
679 %{_sysconfdir}/vservers/.defaults/cachebase
680 %{_sysconfdir}/vservers/.defaults/run.rev
681 %dir %{_sysconfdir}/vservers/.distributions
682 %dir %{_sysconfdir}/vservers/.distributions/.common
683 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
685 %attr(755,root,root) %{_sbindir}/chbind
686 %attr(755,root,root) %{_sbindir}/chcontext
687 %attr(755,root,root) %{_sbindir}/chxid
688 %attr(755,root,root) %{_sbindir}/exec-cd
689 %attr(755,root,root) %{_sbindir}/lsxid
690 %attr(755,root,root) %{_sbindir}/naddress
691 %attr(755,root,root) %{_sbindir}/nattribute
692 %attr(755,root,root) %{_sbindir}/ncontext
693 %attr(755,root,root) %{_sbindir}/reducecap
694 %attr(755,root,root) %{_sbindir}/setattr
695 %attr(755,root,root) %{_sbindir}/showattr
696 %attr(755,root,root) %{_sbindir}/vapt-get
697 %attr(755,root,root) %{_sbindir}/vattribute
698 %attr(755,root,root) %{_sbindir}/vcontext
699 %attr(755,root,root) %{_sbindir}/vdevmap
700 %attr(755,root,root) %{_sbindir}/vdlimit
701 %attr(755,root,root) %{_sbindir}/vdu
702 %attr(755,root,root) %{_sbindir}/vkill
703 %attr(755,root,root) %{_sbindir}/vlimit
704 %attr(755,root,root) %{_sbindir}/vmemctrl
705 %attr(755,root,root) %{_sbindir}/vmount
706 %attr(755,root,root) %{_sbindir}/vnamespace
707 %attr(755,root,root) %{_sbindir}/vpoldek
708 %attr(755,root,root) %{_sbindir}/vproc
709 %attr(755,root,root) %{_sbindir}/vps
710 %attr(755,root,root) %{_sbindir}/vpstree
711 %attr(755,root,root) %{_sbindir}/vrpm
712 %attr(755,root,root) %{_sbindir}/vrsetup
713 %attr(755,root,root) %{_sbindir}/vsched
714 %attr(755,root,root) %{_sbindir}/vserver
715 %attr(755,root,root) %{_sbindir}/vserver-info
716 %attr(755,root,root) %{_sbindir}/vserver-stat
717 %attr(755,root,root) %{_sbindir}/vsomething
718 %attr(755,root,root) %{_sbindir}/vspace
719 %attr(755,root,root) %{_sbindir}/vtag
720 %attr(755,root,root) %{_sbindir}/vtop
721 %attr(755,root,root) %{_sbindir}/vuname
722 %attr(755,root,root) %{_sbindir}/vwait
723 %attr(755,root,root) %{_sbindir}/vyum
724 %dir %{_libdir}/%{name}
725 %dir %{_libdir}/%{name}/defaults
726 %{_libdir}/%{name}/defaults/fstab
727 %{_libdir}/%{name}/defaults/debootstrap.*
728 %{_libdir}/%{name}/defaults/vunify-exclude
729 %{_libdir}/%{name}/defaults/context.start
730 %{_libdir}/%{name}/defaults/environment
731 %{_libdir}/%{name}/defaults/h2ext.desc
732 %{_libdir}/%{name}/defaults/mtab
733 %{_libdir}/%{name}/defaults/vprocunhide-files
734 %dir %{_libdir}/%{name}/distributions
735 %{_libdir}/%{name}/distributions/defaults
736 %dir %{_libdir}/%{name}/distributions/template
737 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
738 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
739 %dir %{_libdir}/%{name}/distributions/redhat
740 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
741 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
742 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
743 %{_libdir}/%{name}/FEATURES.txt
744 %{_libdir}/%{name}/util-vserver-vars
745 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
746 %attr(755,root,root) %{_libdir}/%{name}/capchroot
747 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
748 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
749 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
750 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
751 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
752 %attr(755,root,root) %{_libdir}/%{name}/exec-remount
753 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
754 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
755 %attr(755,root,root) %{_libdir}/%{name}/filetime
756 %{_libdir}/%{name}/functions
757 %attr(755,root,root) %{_libdir}/%{name}/h2ext
758 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
759 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
760 %attr(755,root,root) %{_libdir}/%{name}/lockfile
761 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
762 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
763 %attr(755,root,root) %{_libdir}/%{name}/readlink
764 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
765 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
766 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
767 %attr(755,root,root) %{_libdir}/%{name}/sigexec
768 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
769 %attr(755,root,root) %{_libdir}/%{name}/tunctl
770 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
771 %attr(755,root,root) %{_libdir}/%{name}/vclone
772 %attr(755,root,root) %{_libdir}/%{name}/vcopy
773 %attr(755,root,root) %{_libdir}/%{name}/vhashify
774 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
775 %attr(755,root,root) %{_libdir}/%{name}/vpkg
776 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
777 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
778 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
779 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
780 %{_libdir}/%{name}/vserver-build.*
781 %{_libdir}/%{name}/vserver-setup.functions
782 %{_libdir}/%{name}/vserver.*
783 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
784 %attr(755,root,root) %{_libdir}/%{name}/vshelper
785 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
786 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
787 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
788 %attr(755,root,root) %{_libdir}/%{name}/vunify
789 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
790 %{_mandir}/man8/chbind.8*
791 %{_mandir}/man8/chcontext.8*
792 %{_mandir}/man8/reducecap.8*
793 %{_mandir}/man8/vps.8*
794 %{_mandir}/man8/vpstree.8*
795 %{_mandir}/man8/vserver-build.8*
796 %{_mandir}/man8/vserver-stat.8*
797 %{_mandir}/man8/vserver.8*
798 %{_mandir}/man8/vtop.8*
799 %attr(000,root,root) %dir /vservers
801 %dir %{_localstatedir}/run/vservers
802 %dir %{_localstatedir}/run/vservers.rev
803 %dir %{_localstatedir}/run/vshelper
804 %dir /var/cache/vservers
805 %dir /var/cache/vservers/poldek
808 %defattr(644,root,root,755)
809 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
810 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
813 %defattr(644,root,root,755)
814 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
815 %attr(755,root,root) %{_libdir}/libvserver.so
817 %{_includedir}/vserver*.h
818 %{_pkgconfigdir}/*.pc
821 %defattr(644,root,root,755)
822 %{_libdir}/libvserver.a
825 %defattr(644,root,root,755)
826 %dir %{_sysconfdir}/vservices
827 %{_sysconfdir}/vservices/*
828 %dir %{_libdir}/%{name}/legacy
829 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
830 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
831 %attr(754,root,root) /etc/rc.d/init.d/v_*
832 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
833 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
834 %attr(755,root,root) %{_sbindir}/vserver-copy
835 %{_mandir}/man8/distrib-info.8*
836 %{_mandir}/man8/rebootmgr.8*
837 %{_mandir}/man8/vserver-copy.8*
839 %files -n python-util-vserver
840 %defattr(644,root,root,755)
841 %attr(755,root,root) %{py_sitedir}/_libvserver.so
842 %{py_sitedir}/libvserver.py
844 %files -n vserver-distro-alpine
845 %defattr(644,root,root,755)
846 %dir %{_libdir}/%{name}/distributions/alpine
847 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
848 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
850 %files -n vserver-distro-centos
851 %defattr(644,root,root,755)
852 %{_libdir}/util-vserver/distributions/centos*
854 %files -n vserver-distro-debian
855 %defattr(644,root,root,755)
856 %dir %{_libdir}/%{name}/distributions/debian
857 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
858 %{_libdir}/%{name}/distributions/etch
859 %{_libdir}/%{name}/distributions/lenny
860 %{_libdir}/%{name}/distributions/sid
861 %{_libdir}/%{name}/distributions/squeeze
863 %files -n vserver-distro-fedora
864 %defattr(644,root,root,755)
865 %dir %{_sysconfdir}/vservers/.distributions/f7
866 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
867 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
868 %dir %{_sysconfdir}/vservers/.distributions/fc*
869 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
870 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
871 %{_libdir}/%{name}/distributions/f7
872 %{_libdir}/%{name}/distributions/f8
873 %{_libdir}/%{name}/distributions/f9
874 %{_libdir}/%{name}/distributions/f10
875 %{_libdir}/%{name}/distributions/f11
876 %{_libdir}/%{name}/distributions/fc1
877 %{_libdir}/%{name}/distributions/fc2
878 %{_libdir}/%{name}/distributions/fc3
879 %{_libdir}/%{name}/distributions/fc4
880 %{_libdir}/%{name}/distributions/fc5
881 %{_libdir}/%{name}/distributions/fc6
883 %files -n vserver-distro-gentoo
884 %defattr(644,root,root,755)
885 %dir %{_libdir}/util-vserver/distributions/gentoo
886 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
887 %attr(755,root,root) %{_sbindir}/vdispatch-conf
888 %attr(755,root,root) %{_sbindir}/vemerge
889 %attr(755,root,root) %{_sbindir}/vesync
890 %attr(755,root,root) %{_sbindir}/vupdateworld
892 %files -n vserver-distro-pld
893 %defattr(644,root,root,755)
894 %dir %{_libdir}/%{name}/distributions/pld
895 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
896 %dir %{_libdir}/%{name}/distributions/pld-*
897 %{_libdir}/%{name}/distributions/pld-*/pkgs
898 %{_libdir}/%{name}/distributions/pld-*/pubkeys
899 %{_libdir}/%{name}/distributions/pld-*/rpm
900 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
901 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
902 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
903 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
904 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
905 %dir %{_sysconfdir}/vservers/.distributions/pld-th
906 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
907 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
908 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
909 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
910 %dir %{_sysconfdir}/vservers/.distributions/pld-ti
911 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
912 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d
913 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf
916 %files -n vserver-distro-redhat
917 %defattr(644,root,root,755)
918 %dir %{_sysconfdir}/vservers/.distributions/rh9
919 %dir %{_sysconfdir}/vservers/.distributions/rh9/apt
920 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
921 %{_libdir}/%{name}/distributions/rh9
922 %dir %{_libdir}/%{name}/distributions/redhat
923 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initctl
924 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
925 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
926 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
928 %files -n vserver-distro-suse
929 %defattr(644,root,root,755)
930 %dir %{_sysconfdir}/vservers/.distributions/suse*
931 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
932 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
933 %{_libdir}/%{name}/distributions/suse*