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: 1.%{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: b301510ead369315def8d7ab52b9e64d
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 Source16: %{name}.tmpfiles
53 Patch0: %{name}-vsysvwrapper.patch
54 Patch1: %{name}-pld.patch
55 Patch2: %{name}-centos.patch
56 Patch3: %{name}-tld.patch
57 Patch4: %{name}-m4-diet.patch
58 Patch5: %{name}-yum-verb-nogpg.patch
59 Patch6: %{name}-build-umask.patch
60 Patch7: %{name}-utmpx.patch
61 Patch8: %{name}-vprocunhide.patch
62 Patch9: %{name}-dev.patch
63 Patch10: %{name}-no-dynamic-ctx.patch
64 Patch11: %{name}-more-ip.patch
65 Patch12: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
66 Patch13: %{name}-tmpdir.patch
67 Patch14: %{name}-rpmpath.patch
68 Patch15: %{name}-interfaces-ignore-cvs-dir.patch
69 Patch16: %{name}-personalitymachine.patch
70 Patch17: %{name}-backupfiles.patch
71 Patch18: %{name}-vprocunhide-net.patch
72 # http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
73 Patch19: %{name}-dbrebuild-internalize4.patch
74 Patch21: %{name}-bash-wrapper.patch
75 Patch22: %{name}-pivot-root-ugly-hack.patch
76 Patch24: vunify-more-exclude.patch
78 Patch26: %{name}-am.patch
79 URL: http://savannah.nongnu.org/projects/util-vserver/
80 BuildRequires: autoconf
81 BuildRequires: automake >= 1.9
82 BuildRequires: beecrypt-devel
84 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
85 BuildRequires: e2fsprogs-devel
86 BuildRequires: libstdc++-devel
87 BuildRequires: libtool >= 1.5.14
88 BuildRequires: pkgconfig
89 BuildRequires: python-devel
90 BuildRequires: python-modules
91 BuildRequires: rpm-pythonprov
92 BuildRequires: rpmbuild(macros) >= 1.268
93 BuildRequires: sed >= 4.0
95 BuildRequires: doxygen >= 1:1.7.3
96 BuildRequires: graphviz
97 BuildRequires: libxslt-progs
98 BuildRequires: python-devel
99 %if "%{pld_release}" != "th"
100 BuildRequires: tetex-fonts-jknappen
101 BuildRequires: tetex-format-pdflatex
102 BuildRequires: tetex-makeindex
103 BuildRequires: tetex-metafont
105 BuildRequires: texlive-fonts-rsfs
106 BuildRequires: texlive-fonts-type1-urw
107 BuildRequires: texlive-format-pdflatex
108 BuildRequires: texlive-latex-extend
109 BuildRequires: texlive-latex-ucs
110 BuildRequires: texlive-makeindex
111 BuildRequires: texlive-pdftex
112 BuildRequires: texlive-xetex
114 %{?with_xalan:BuildRequires: xalan-j}
116 Requires(post,preun): /sbin/chkconfig
117 Requires: %{name}-lib = %{version}-%{release}
122 Requires: mktemp >= 1.5-18
123 Requires: rc-scripts >= 0.4.3.4
125 Requires: util-linux >= 2.13
126 Requires: vserver-distro-pld = %{version}-%{release}
127 Obsoletes: util-vserver-build
128 Obsoletes: util-vserver-core
129 Obsoletes: util-vserver-init
130 Conflicts: poldek < 0.18.8-10
131 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
134 # binaries created with this option have broken segments when using dietlibc
135 %define filterout_ld -Wl,-z,relro
139 %define _usrbin /usr/bin
140 %define _usrsbin /usr/sbin
141 %define _usrlib /usr/lib
144 This package provides the components and a framework to setup virtual
145 servers. A virtual server runs inside a Linux server. It is
146 nevertheless highly independent. As such, you can run various services
147 with normal configuration. The various vservers can't interact with
148 each other and can't interact with services in the main server.
150 This requires a special kernel supporting the new new_s_context and
151 set_ipv4root system call.
153 This package contains utilities which are required to communicate with
154 the Linux-Vserver enabled kernel, utilities which assist in building
155 Vservers and SysV initscripts which start and stop Vservers and
158 %description -l pl.UTF-8
159 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
160 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
161 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
162 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
163 w interakcję z innymi ani z usługami na głównym serwerze.
165 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
166 new_s_context i set_ipv4root.
168 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
169 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
170 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
171 zatrzymujące Vserwery oraz powiązane narzędzia.
174 Summary: Dynamic libraries for util-vserver
175 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
179 util-vserver provides the components and a framework to setup virtual
180 servers. A virtual server runs inside a linux server. It is
181 nevertheless highly independent. As such, you can run various services
182 pith normal configuration. The various vservers can't interact with
183 each other and can't interact with services in the main server.
185 This package contains the shared libraries needed by all other
186 'util-vserver' subpackages.
188 %description lib -l pl.UTF-8
189 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
190 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
191 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
192 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
193 w interakcję z innymi ani z usługami na głównym serwerze.
195 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
196 podpakiety util-vserver.
199 Summary: Development files for Linux vserver libraries
200 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
201 Group: Development/Libraries
202 Requires: %{name}-lib = %{version}-%{release}
205 This package contains the development files necessary for developing
206 programs which use vserver library.
208 %description devel -l pl.UTF-8
209 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
210 programów używających biblioteki vserver.
213 Summary: Static vserver library
214 Summary(pl.UTF-8): Biblioteka statyczna vservera
215 Group: Development/Libraries
216 Requires: %{name}-devel = %{version}-%{release}
219 This package contains the static version of vserver library.
221 %description static -l pl.UTF-8
222 Ten pakiet zawiera statyczną wersję biblioteki vservera.
225 Summary: Legacy utilities for util-vserver
226 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
227 Group: Applications/System
228 Requires(post,preun): /sbin/chkconfig
229 Requires: %{name} = %{version}-%{release}
233 util-vserver provides the components and a framework to setup virtual
234 servers. A virtual server runs inside a linux server. It is
235 nevertheless highly independent. As such, you can run various services
236 with normal configuration. The various vservers can't interact with
237 each other and can't interact with services in the main server.
239 This package contains the tools which are needed to work with Vservers
240 having an old-style configuration.
242 %description legacy -l pl.UTF-8
243 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
244 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
245 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
246 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
247 w interakcję z innymi ani z usługami na głównym serwerze.
249 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
250 konfigurację w starym stylu.
252 %package -n python-util-vserver
253 Summary: Python interface to libutil-vserver library
254 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki libutil-vserver
256 Group: Libraries/Python
258 %description -n python-util-vserver
259 Python interface to libutil-vserver library.
261 %description -n python-util-vserver -l pl.UTF-8
262 Pythonowy interfejs do biblioteki libutil-vserver.
264 %package -n vserver-distro-alpine
265 Summary: VServer build template for Alpine Linux
266 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
267 Group: Applications/System
268 Requires: %{name} = %{version}-%{release}
270 %description -n vserver-distro-alpine
271 VServer build template for Alpine Linux.
273 %description -n vserver-distro-alpine -l pl.UTF-8
274 Szablon budowania VServerów dla dystrybucji Alpine Linux.
276 %package -n vserver-distro-centos
277 Summary: VServer build template for CentOS
278 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
279 Group: Applications/System
280 Requires: %{name} = %{version}-%{release}
281 Requires: vserver-distro-redhat = %{version}-%{release}
284 %description -n vserver-distro-centos
285 VServer build template for CentOS 4.2 and 5.
287 %description -n vserver-distro-centos -l pl.UTF-8
288 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
290 %package -n vserver-distro-debian
291 Summary: VServer build templates for Debian and Ubuntu
292 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu
293 Group: Applications/System
294 Requires: %{name} = %{version}-%{release}
295 Requires: debootstrap
297 Provides: vserver-distro-ubuntu
298 Obsoletes: vserver-distro-ubuntu
300 %description -n vserver-distro-debian
301 VServer build templates for Debian and Ubuntu.
303 %description -n vserver-distro-debian -l pl.UTF-8
304 Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
306 %package -n vserver-distro-fedora
307 Summary: VServer build templates for Fedora
308 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
309 Group: Applications/System
310 Requires: %{name} = %{version}-%{release}
314 Requires: vserver-distro-redhat = %{version}-%{release}
318 %description -n vserver-distro-fedora
319 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
321 %description -n vserver-distro-fedora -l pl.UTF-8
322 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
323 1,2,3,4,5,6 oraz Fedora 7.
325 %package -n vserver-distro-gentoo
326 Summary: VServer build template for Gentoo
327 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
328 Group: Applications/System
329 Requires: %{name} = %{version}-%{release}
331 %description -n vserver-distro-gentoo
332 VServer build template for Gentoo.
334 %description -n vserver-distro-gentoo -l pl.UTF-8
335 Szablon budowania VServerów dla Gentoo.
337 %package -n vserver-distro-pld
338 Summary: VServer build templates for PLD Linux
339 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
340 Group: Applications/System
341 Requires: %{name} = %{version}-%{release}
342 Requires: /etc/pld-release
343 Requires: poldek >= 0.30
345 %description -n vserver-distro-pld
346 VServer build templates for PLD Linux.
348 %description -n vserver-distro-pld -l pl.UTF-8
349 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
351 %package -n vserver-distro-redhat
352 Summary: VServer build template for Red Hat Linux 9
353 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
354 Group: Applications/System
355 Requires: %{name} = %{version}-%{release}
361 %description -n vserver-distro-redhat
362 VServer build template for RedHat Linux 9.
364 %description -n vserver-distro-redhat -l pl.UTF-8
365 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
367 %package -n vserver-distro-suse
368 Summary: VServer build template for SuSE 9.1
369 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
370 Group: Applications/System
371 Requires: %{name} = %{version}-%{release}
377 %description -n vserver-distro-suse
378 VServer build template for SuSE Linux 9.1.
380 %description -n vserver-distro-suse -l pl.UTF-8
381 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
383 %package -n vserver-distro-scientificlinux
384 Summary: VServer build template for Scientific Linux
385 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Scientific Linux
386 Group: Applications/System
387 Requires: %{name} = %{version}-%{release}
394 %description -n vserver-distro-scientificlinux
395 VServer build template for Scientific Linux.
397 %description -n vserver-distro-scientificlinux -l pl.UTF-8
398 Szablon do tworzenia VServerów dla dystrybucji Scientific Linux.
400 %package -n vserver-distro-tld
401 Summary: VServer build templates for Titanium Linux Distribution
402 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Titanium Linux
403 Group: Applications/System
404 Requires: %{name} = %{version}-%{release}
405 Requires: poldek >= 0.30
407 %description -n vserver-distro-tld
408 VServer build templates for Titanium Linux Distribution.
410 %description -n vserver-distro-tld -l pl.UTF-8
411 Szablony do tworzenia VServerów dla dystrybucji Titanium Linux.
414 %setup -q -n %{name}-%{version}-%{snap} -a11
425 %{?with_no_dynamic_context:%patch10 -p1}
441 install %{SOURCE9} package-management.txt
444 unset LD_SYMBOLIC_FUNCTIONS || :
447 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
454 --with-initrddir=/etc/rc.d/init.d \
456 --enable-apis=NOLEGACY \
457 --with-initscripts=sysv \
458 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
460 IONICE=%{_usrbin}/ionice \
462 IPTABLES=%{_usrsbin}/iptables \
464 MODPROBE=/sbin/modprobe \
466 NAMEIF=/sbin/nameif \
468 RESTORE=/sbin/restore \
470 RSYNC=%{_usrbin}/rsync \
471 STRACE=%{_usrbin}/strace \
473 VCONFIG=/sbin/vconfig \
474 WGET=%{_usrbin}/wget \
478 %{?with_doc:%{__make} doc}
480 %{__make} -C vproc-%{vproc_version} \
482 CFLAGS="%{rpmcflags}"
485 rm -rf $RPM_BUILD_ROOT
486 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
487 $RPM_BUILD_ROOT%{_sysconfdir}/vservices \
488 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/{apps/vdevmap,cgroup} \
489 $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
491 %{__make} -j1 install install-distribution \
492 DESTDIR=$RPM_BUILD_ROOT
494 # our libcgroup uses per subsystem mount
495 touch $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
497 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
499 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
500 s=$(basename $i | sed s/v_//)
501 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
502 # IP addresses/interfaces to bound $s service to
508 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
509 $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
510 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
511 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
512 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
513 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
514 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
515 $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
516 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE15} > \
517 $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
518 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
519 $RPM_BUILD_ROOT/etc/sysconfig/vservers
520 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' gentoo/bash-wrapper > \
521 $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
523 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
525 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
526 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
527 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
528 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
529 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/tld/initpost
530 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
531 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
532 install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
533 sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
534 chmod +x $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
536 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
537 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
540 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
541 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
543 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
544 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
546 install %{SOURCE16} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
548 # set arch for pld-ac in pld.conf
549 %ifarch i586 i686 ppc sparc alpha athlon
550 %define ftp_arch %{_target_cpu}
553 %define ftp_arch amd64
556 %define ftp_arch i386
558 %ifarch pentium2 pentium3 pentium4
559 %define ftp_arch i686
561 %ifarch sparcv9 sparc64
562 %define ftp_arch sparc
564 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
566 # set arch for pld-th in pld.conf
567 %ifarch i486 i686 ppc sparc alpha athlon
568 %define ftp_arch %{_target_cpu}
571 %define ftp_arch x86_64
574 %define ftp_arch i486
576 %ifarch pentium2 pentium3 pentium4
577 %define ftp_arch i686
579 %ifarch sparcv9 sparc64
580 %define ftp_arch sparc
582 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
584 # set arch for tld in tld.conf
585 %ifarch i586 i686 ppc sparc alpha
586 %define ftp_arch %{_target_cpu}
589 %define ftp_arch x86_64
591 %ifarch athlon pentium2 pentium3 pentium4
592 %define ftp_arch i686
594 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/tld.conf
596 # current debootstrap link
597 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
598 > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
600 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
603 rm -rf $RPM_BUILD_ROOT/dev
604 rm -rf $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
605 # we have our own initscript which does the same
606 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
607 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
608 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
609 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
612 rm -rf $RPM_BUILD_ROOT
614 %triggerun -- util-vserver-init
615 # Prevent preun from util-vserver-init from working
616 chmod a-x /etc/rc.d/init.d/vprocunhide
617 chmod a-x /etc/rc.d/init.d/vrootdevices
618 chmod a-x /etc/rc.d/init.d/vservers
620 %triggerpostun -- util-vserver-init
621 # Restore what triggerun removed
622 chmod ug+x /etc/rc.d/init.d/vprocunhide
623 chmod ug+x /etc/rc.d/init.d/vrootdevices
624 chmod ug+x /etc/rc.d/init.d/vservers
625 /sbin/chkconfig --add vrootdevices
626 /sbin/chkconfig --add vprocunhide
627 /sbin/chkconfig --add vservers
628 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
629 cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
630 mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
632 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
633 cp -f /etc/sysconfig/vservers{,.rpmnew}
634 mv -f /etc/sysconfig/vservers{.rpmsave,}
638 %{_sbindir}/setattr --barrier /vservers || :
639 /sbin/chkconfig --add util-vserver
640 /sbin/chkconfig --add vrootdevices
641 /sbin/chkconfig --add vprocunhide
642 /sbin/chkconfig --add vservers
643 if [ ! -f /var/lock/subsys/util-vserver ]; then
644 echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
646 if [ ! -f /var/lock/subsys/vrootdevices ]; then
647 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
649 if [ ! -f /var/lock/subsys/vprocunhide ]; then
650 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
652 if [ ! -f /var/lock/subsys/vservers ]; then
653 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
657 if [ "$1" = "0" ]; then
658 %service util-vserver stop
659 %service vservers stop
660 %service vprocunhide stop
661 %service vrootdevices stop
662 /sbin/chkconfig --del util-vserver
663 /sbin/chkconfig --del vservers
664 /sbin/chkconfig --del vprocunhide
665 /sbin/chkconfig --del vrootdevices
668 %post lib -p /sbin/ldconfig
669 %postun lib -p /sbin/ldconfig
672 /sbin/chkconfig --add rebootmgr
673 /sbin/chkconfig --add vservers-legacy
674 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
675 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
677 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
678 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
682 if [ "$1" = "0" ]; then
683 %service rebootmgr stop
684 %service vservers-legacy stop
685 /sbin/chkconfig --del rebootmgr
686 /sbin/chkconfig --del vservers-legacy
689 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
690 for D in ac th ti; do
691 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
693 if [ -f $P/pld-source.conf.rpmsave ]; then
694 cp -f $P/repos.d/pld.conf{,.rpmnew}
695 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
701 %defattr(644,root,root,755)
702 %doc AUTHORS NEWS THANKS doc/intro.txt
703 %doc package-management.txt
704 %{?with_doc:%doc doc/*.html}
705 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
706 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
707 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
708 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
709 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
710 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
711 %attr(754,root,root) /etc/rc.d/init.d/vservers
712 %dir %{_sysconfdir}/vservers
713 %dir %{_sysconfdir}/vservers/.defaults
714 %dir %{_sysconfdir}/vservers/.defaults/apps
715 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
716 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
717 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
718 %dir %{_sysconfdir}/vservers/.defaults/cgroup
719 %{_sysconfdir}/vservers/.defaults/cgroup/per-ss
720 %dir %{_sysconfdir}/vservers/.defaults/files
721 %{_sysconfdir}/vservers/.defaults/vdirbase
722 %{_sysconfdir}/vservers/.defaults/cachebase
723 %{_sysconfdir}/vservers/.defaults/run.rev
724 %dir %{_sysconfdir}/vservers/.distributions
725 %dir %{_sysconfdir}/vservers/.distributions/.common
726 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
728 %attr(755,root,root) %{_sbindir}/chbind
729 %attr(755,root,root) %{_sbindir}/chcontext
730 %attr(755,root,root) %{_sbindir}/chxid
731 %attr(755,root,root) %{_sbindir}/exec-cd
732 %attr(755,root,root) %{_sbindir}/lsxid
733 %attr(755,root,root) %{_sbindir}/naddress
734 %attr(755,root,root) %{_sbindir}/nattribute
735 %attr(755,root,root) %{_sbindir}/ncontext
736 %attr(755,root,root) %{_sbindir}/reducecap
737 %attr(755,root,root) %{_sbindir}/setattr
738 %attr(755,root,root) %{_sbindir}/showattr
739 %attr(755,root,root) %{_sbindir}/vapt-get
740 %attr(755,root,root) %{_sbindir}/vattribute
741 %attr(755,root,root) %{_sbindir}/vcontext
742 %attr(755,root,root) %{_sbindir}/vdevmap
743 %attr(755,root,root) %{_sbindir}/vdlimit
744 %attr(755,root,root) %{_sbindir}/vdu
745 %attr(755,root,root) %{_sbindir}/vkill
746 %attr(755,root,root) %{_sbindir}/vlimit
747 %attr(755,root,root) %{_sbindir}/vmemctrl
748 %attr(755,root,root) %{_sbindir}/vmount
749 %attr(755,root,root) %{_sbindir}/vnamespace
750 %attr(755,root,root) %{_sbindir}/vpoldek
751 %attr(755,root,root) %{_sbindir}/vproc
752 %attr(755,root,root) %{_sbindir}/vps
753 %attr(755,root,root) %{_sbindir}/vpstree
754 %attr(755,root,root) %{_sbindir}/vrpm
755 %attr(755,root,root) %{_sbindir}/vrsetup
756 %attr(755,root,root) %{_sbindir}/vsched
757 %attr(755,root,root) %{_sbindir}/vserver
758 %attr(755,root,root) %{_sbindir}/vserver-info
759 %attr(755,root,root) %{_sbindir}/vserver-stat
760 %attr(755,root,root) %{_sbindir}/vsomething
761 %attr(755,root,root) %{_sbindir}/vspace
762 %attr(755,root,root) %{_sbindir}/vtag
763 %attr(755,root,root) %{_sbindir}/vtop
764 %attr(755,root,root) %{_sbindir}/vuname
765 %attr(755,root,root) %{_sbindir}/vurpm
766 %attr(755,root,root) %{_sbindir}/vwait
767 %attr(755,root,root) %{_sbindir}/vyum
768 %dir %{_libdir}/%{name}
769 %dir %{_libdir}/%{name}/defaults
770 %{_libdir}/%{name}/defaults/fstab
771 %{_libdir}/%{name}/defaults/debootstrap.*
772 %{_libdir}/%{name}/defaults/vunify-exclude
773 %{_libdir}/%{name}/defaults/context.start
774 %{_libdir}/%{name}/defaults/environment
775 %{_libdir}/%{name}/defaults/h2ext.desc
776 %{_libdir}/%{name}/defaults/mtab
777 %{_libdir}/%{name}/defaults/vprocunhide-files
778 %dir %{_libdir}/%{name}/distributions
779 %{_libdir}/%{name}/distributions/defaults
780 %dir %{_libdir}/%{name}/distributions/template
781 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
782 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
783 %dir %{_libdir}/%{name}/distributions/redhat
784 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
785 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
786 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
787 %{_libdir}/%{name}/FEATURES.txt
788 %{_libdir}/%{name}/util-vserver-vars
789 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
790 %attr(755,root,root) %{_libdir}/%{name}/capchroot
791 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
792 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
793 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
794 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
795 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
796 %attr(755,root,root) %{_libdir}/%{name}/exec-remount
797 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
798 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
799 %attr(755,root,root) %{_libdir}/%{name}/filetime
800 %{_libdir}/%{name}/functions
801 %attr(755,root,root) %{_libdir}/%{name}/h2ext
802 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
803 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
804 %attr(755,root,root) %{_libdir}/%{name}/lockfile
805 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
806 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
807 %attr(755,root,root) %{_libdir}/%{name}/readlink
808 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
809 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
810 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
811 %attr(755,root,root) %{_libdir}/%{name}/sigexec
812 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
813 %attr(755,root,root) %{_libdir}/%{name}/tunctl
814 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
815 %attr(755,root,root) %{_libdir}/%{name}/vclone
816 %attr(755,root,root) %{_libdir}/%{name}/vcopy
817 %attr(755,root,root) %{_libdir}/%{name}/vhashify
818 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
819 %attr(755,root,root) %{_libdir}/%{name}/vpkg
820 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
821 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
822 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
823 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
824 %attr(755,root,root) %{_libdir}/%{name}/vurpm-worker
825 %{_libdir}/%{name}/vserver-build.*
826 %{_libdir}/%{name}/vserver-setup.functions
827 %{_libdir}/%{name}/vserver.*
828 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
829 %attr(755,root,root) %{_libdir}/%{name}/vshelper
830 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
831 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
832 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
833 %attr(755,root,root) %{_libdir}/%{name}/vunify
834 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
835 %{_mandir}/man8/chbind.8*
836 %{_mandir}/man8/chcontext.8*
837 %{_mandir}/man8/reducecap.8*
838 %{_mandir}/man8/vps.8*
839 %{_mandir}/man8/vpstree.8*
840 %{_mandir}/man8/vserver-build.8*
841 %{_mandir}/man8/vserver-stat.8*
842 %{_mandir}/man8/vserver.8*
843 %{_mandir}/man8/vtop.8*
844 %attr(000,root,root) %dir /vservers
846 /usr/lib/tmpfiles.d/%{name}.conf
847 %dir %{_localstatedir}/run/vservers
848 %dir %{_localstatedir}/run/vservers.rev
849 %dir %{_localstatedir}/run/vshelper
850 %dir /var/cache/vservers
851 %dir /var/cache/vservers/poldek
854 %defattr(644,root,root,755)
855 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
856 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
859 %defattr(644,root,root,755)
860 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
861 %attr(755,root,root) %{_libdir}/libvserver.so
863 %{_includedir}/vserver*.h
864 %{_pkgconfigdir}/*.pc
867 %defattr(644,root,root,755)
868 %{_libdir}/libvserver.a
871 %defattr(644,root,root,755)
872 %dir %{_sysconfdir}/vservices
873 %{_sysconfdir}/vservices/*
874 %dir %{_libdir}/%{name}/legacy
875 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
876 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
877 %attr(754,root,root) /etc/rc.d/init.d/v_*
878 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
879 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
880 %attr(755,root,root) %{_sbindir}/vserver-copy
881 %{_mandir}/man8/distrib-info.8*
882 %{_mandir}/man8/rebootmgr.8*
883 %{_mandir}/man8/vserver-copy.8*
885 %files -n python-util-vserver
886 %defattr(644,root,root,755)
887 %attr(755,root,root) %{py_sitedir}/_libvserver.so
888 %{py_sitedir}/libvserver.py
890 %files -n vserver-distro-alpine
891 %defattr(644,root,root,755)
892 %dir %{_libdir}/%{name}/distributions/alpine
893 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
894 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
896 %files -n vserver-distro-centos
897 %defattr(644,root,root,755)
898 %{_libdir}/util-vserver/distributions/centos*
900 %files -n vserver-distro-debian
901 %defattr(644,root,root,755)
902 %dir %{_libdir}/%{name}/distributions/debian
903 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
904 %{_libdir}/%{name}/distributions/etch
905 %{_libdir}/%{name}/distributions/lenny
906 %{_libdir}/%{name}/distributions/sid
907 %{_libdir}/%{name}/distributions/squeeze
908 %{_libdir}/%{name}/distributions/wheezy
910 %files -n vserver-distro-fedora
911 %defattr(644,root,root,755)
912 %dir %{_sysconfdir}/vservers/.distributions/f7
913 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
914 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
915 %dir %{_sysconfdir}/vservers/.distributions/fc*
916 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
917 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
918 %{_libdir}/%{name}/distributions/f7
919 %{_libdir}/%{name}/distributions/f8
920 %{_libdir}/%{name}/distributions/f9
921 %{_libdir}/%{name}/distributions/f10
922 %{_libdir}/%{name}/distributions/f11
923 %{_libdir}/%{name}/distributions/f12
924 %{_libdir}/%{name}/distributions/f13
925 %{_libdir}/%{name}/distributions/f14
926 %{_libdir}/%{name}/distributions/fc1
927 %{_libdir}/%{name}/distributions/fc2
928 %{_libdir}/%{name}/distributions/fc3
929 %{_libdir}/%{name}/distributions/fc4
930 %{_libdir}/%{name}/distributions/fc5
931 %{_libdir}/%{name}/distributions/fc6
933 %files -n vserver-distro-gentoo
934 %defattr(644,root,root,755)
935 %dir %{_libdir}/util-vserver/distributions/gentoo
936 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
937 %attr(755,root,root) %{_sbindir}/vdispatch-conf
938 %attr(755,root,root) %{_sbindir}/vemerge
939 %attr(755,root,root) %{_sbindir}/vesync
940 %attr(755,root,root) %{_sbindir}/vupdateworld
942 %files -n vserver-distro-pld
943 %defattr(644,root,root,755)
944 %dir %{_libdir}/%{name}/distributions/pld
945 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
946 %dir %{_libdir}/%{name}/distributions/pld-*
947 %{_libdir}/%{name}/distributions/pld-*/pkgs
948 %{_libdir}/%{name}/distributions/pld-*/pubkeys
949 %{_libdir}/%{name}/distributions/pld-*/rpm
950 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
951 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
952 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
953 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
954 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
955 %dir %{_sysconfdir}/vservers/.distributions/pld-th
956 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
957 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
958 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
960 %files -n vserver-distro-redhat
961 %defattr(644,root,root,755)
962 %dir %{_sysconfdir}/vservers/.distributions/rh9
963 %dir %{_sysconfdir}/vservers/.distributions/rh9/apt
964 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
965 %{_libdir}/%{name}/distributions/rh9
966 %dir %{_libdir}/%{name}/distributions/redhat
967 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initctl
968 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
969 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
970 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
972 %files -n vserver-distro-suse
973 %defattr(644,root,root,755)
974 %dir %{_sysconfdir}/vservers/.distributions/suse*
975 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
976 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
977 %{_libdir}/%{name}/distributions/suse*
979 %files -n vserver-distro-scientificlinux
980 %defattr(644,root,root,755)
981 %dir %{_libdir}/%{name}/distributions/sl6
982 %attr(755,root,root) %{_libdir}/%{name}/distributions/sl6/initpost
983 %attr(755,root,root) %{_libdir}/%{name}/distributions/sl6/initpre
984 %{_libdir}/%{name}/distributions/sl6/pkgs
985 %{_libdir}/%{name}/distributions/sl6/yum
986 %{_libdir}/%{name}/distributions/sl6/yum.repos.d
988 %files -n vserver-distro-tld
989 %defattr(644,root,root,755)
990 %dir %{_libdir}/%{name}/distributions/tld
991 %attr(755,root,root) %{_libdir}/%{name}/distributions/tld/initpost
992 %{_libdir}/%{name}/distributions/tld/pkgs
993 %{_libdir}/%{name}/distributions/tld/rpm
994 %dir %{_sysconfdir}/vservers/.distributions/tld
995 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek
996 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d
997 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/*.conf