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
21 # reqdb_pkg should match value from current rpm package in distro
22 %define reqdb_pkg db5.3
25 Summary: Linux virtual server utilities
26 Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
29 Release: 1.%{snap}.%{rel}
31 Group: Applications/System
32 Source0: http://people.linux-vserver.org/~dhozac/t/uv-testing/%{name}-%{version}-%{snap}.tar.bz2
33 # Source0-md5: c0f708814ff48532802a5fb04514a86c
34 Source1: vprocunhide.init
35 Source2: vservers.init
36 Source3: vservers-legacy.init
37 Source4: rebootmgr.init
38 Source5: vservers.sysconfig
39 Source6: vservers-legacy.sysconfig
40 Source7: vrootdevices.init
41 Source8: vrootdevices.sysconfig
42 # A bit of documentation explaining package management
43 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
44 Source9: %{name}-pkgmgmt.txt
45 Source10: %{name}-initpost.sh
46 Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
47 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
48 Source12: %{name}-vhashify.cron
49 Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
50 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
51 Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
52 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
53 Source15: %{name}.init
54 Source16: %{name}.tmpfiles
55 Patch0: %{name}-vsysvwrapper.patch
56 Patch1: %{name}-pld.patch
57 Patch2: %{name}-centos.patch
58 Patch3: %{name}-tld.patch
59 Patch4: %{name}-m4-diet.patch
60 Patch5: %{name}-yum-verb-nogpg.patch
61 Patch6: %{name}-build-umask.patch
62 Patch7: %{name}-utmpx.patch
63 Patch8: %{name}-vprocunhide.patch
64 Patch9: %{name}-dev.patch
65 Patch10: %{name}-no-dynamic-ctx.patch
66 Patch11: %{name}-more-ip.patch
67 Patch12: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
68 Patch13: %{name}-tmpdir.patch
69 Patch14: %{name}-rpmpath.patch
70 Patch15: %{name}-interfaces-ignore-cvs-dir.patch
71 Patch16: %{name}-personalitymachine.patch
72 Patch17: %{name}-backupfiles.patch
73 Patch18: %{name}-vprocunhide-net.patch
74 # http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
75 Patch19: %{name}-dbrebuild-internalize4.patch
76 Patch21: %{name}-bash-wrapper.patch
77 Patch22: %{name}-pivot-root-ugly-hack.patch
78 Patch24: vunify-more-exclude.patch
80 Patch26: %{name}-am.patch
81 Patch27: %{name}-rpm5.patch
82 URL: http://savannah.nongnu.org/projects/util-vserver/
83 BuildRequires: autoconf
84 BuildRequires: automake >= 1.9
85 BuildRequires: beecrypt-devel
87 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.32-16}
88 BuildRequires: e2fsprogs-devel
89 BuildRequires: libstdc++-devel
90 BuildRequires: libtool >= 1.5.14
91 BuildRequires: pkgconfig
92 BuildRequires: python-devel
93 BuildRequires: python-modules
94 BuildRequires: rpm-pythonprov
95 BuildRequires: rpmbuild(macros) >= 1.647
96 BuildRequires: sed >= 4.0
98 BuildRequires: doxygen >= 1:1.7.3
99 BuildRequires: graphviz
100 BuildRequires: libxslt-progs
101 BuildRequires: python-devel
102 %if "%{pld_release}" != "th"
103 BuildRequires: tetex-fonts-jknappen
104 BuildRequires: tetex-format-pdflatex
105 BuildRequires: tetex-makeindex
106 BuildRequires: tetex-metafont
108 BuildRequires: texlive-fonts-rsfs
109 BuildRequires: texlive-fonts-type1-urw
110 BuildRequires: texlive-format-pdflatex
111 BuildRequires: texlive-latex-extend
112 BuildRequires: texlive-latex-ucs
113 BuildRequires: texlive-makeindex
114 BuildRequires: texlive-pdftex
115 BuildRequires: texlive-xetex
117 %{?with_xalan:BuildRequires: xalan-j}
119 Requires(post,preun): /sbin/chkconfig
120 Requires: %{name}-lib = %{version}-%{release}
125 Requires: mktemp >= 1.5-18
126 Requires: rc-scripts >= 0.4.3.4
128 Requires: uname(release) >= 2.6.27
129 Requires: util-linux >= 2.13
130 Requires: vserver-distro-pld = %{version}-%{release}
131 Suggests: %{reqdb_pkg}-utils
132 Obsoletes: util-vserver-build
133 Obsoletes: util-vserver-core
134 Obsoletes: util-vserver-init
135 Conflicts: poldek < 0.18.8-10
136 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
139 # binaries created with this option have broken segments when using dietlibc
140 %define filterout_ld -Wl,-z,relro
144 %define _usrbin /usr/bin
145 %define _usrsbin /usr/sbin
146 %define _usrlib /usr/lib
149 This package provides the components and a framework to setup virtual
150 servers. A virtual server runs inside a Linux server. It is
151 nevertheless highly independent. As such, you can run various services
152 with normal configuration. The various vservers can't interact with
153 each other and can't interact with services in the main server.
155 This requires a special kernel supporting the new new_s_context and
156 set_ipv4root system call.
158 This package contains utilities which are required to communicate with
159 the Linux-Vserver enabled kernel, utilities which assist in building
160 Vservers and SysV initscripts which start and stop Vservers and
163 %description -l pl.UTF-8
164 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
165 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
166 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
167 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
168 w interakcję z innymi ani z usługami na głównym serwerze.
170 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
171 new_s_context i set_ipv4root.
173 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
174 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
175 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
176 zatrzymujące Vserwery oraz powiązane narzędzia.
179 Summary: Dynamic libraries for util-vserver
180 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
184 util-vserver provides the components and a framework to setup virtual
185 servers. A virtual server runs inside a linux server. It is
186 nevertheless highly independent. As such, you can run various services
187 pith normal configuration. The various vservers can't interact with
188 each other and can't interact with services in the main server.
190 This package contains the shared libraries needed by all other
191 'util-vserver' subpackages.
193 %description lib -l pl.UTF-8
194 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
195 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
196 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
197 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
198 w interakcję z innymi ani z usługami na głównym serwerze.
200 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
201 podpakiety util-vserver.
204 Summary: Development files for Linux vserver libraries
205 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
206 Group: Development/Libraries
207 Requires: %{name}-lib = %{version}-%{release}
210 This package contains the development files necessary for developing
211 programs which use vserver library.
213 %description devel -l pl.UTF-8
214 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
215 programów używających biblioteki vserver.
218 Summary: Static vserver library
219 Summary(pl.UTF-8): Biblioteka statyczna vservera
220 Group: Development/Libraries
221 Requires: %{name}-devel = %{version}-%{release}
224 This package contains the static version of vserver library.
226 %description static -l pl.UTF-8
227 Ten pakiet zawiera statyczną wersję biblioteki vservera.
230 Summary: Legacy utilities for util-vserver
231 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
232 Group: Applications/System
233 Requires(post,preun): /sbin/chkconfig
234 Requires: %{name} = %{version}-%{release}
238 util-vserver provides the components and a framework to setup virtual
239 servers. A virtual server runs inside a linux server. It is
240 nevertheless highly independent. As such, you can run various services
241 with normal configuration. The various vservers can't interact with
242 each other and can't interact with services in the main server.
244 This package contains the tools which are needed to work with Vservers
245 having an old-style configuration.
247 %description legacy -l pl.UTF-8
248 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
249 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
250 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
251 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
252 w interakcję z innymi ani z usługami na głównym serwerze.
254 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
255 konfigurację w starym stylu.
257 %package -n python-util-vserver
258 Summary: Python interface to libutil-vserver library
259 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki libutil-vserver
261 Group: Libraries/Python
263 %description -n python-util-vserver
264 Python interface to libutil-vserver library.
266 %description -n python-util-vserver -l pl.UTF-8
267 Pythonowy interfejs do biblioteki libutil-vserver.
269 %package -n vserver-distro-alpine
270 Summary: VServer build template for Alpine Linux
271 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
272 Group: Applications/System
273 Requires: %{name} = %{version}-%{release}
275 %description -n vserver-distro-alpine
276 VServer build template for Alpine Linux.
278 %description -n vserver-distro-alpine -l pl.UTF-8
279 Szablon budowania VServerów dla dystrybucji Alpine Linux.
281 %package -n vserver-distro-centos
282 Summary: VServer build template for CentOS
283 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
284 Group: Applications/System
285 Requires: %{name} = %{version}-%{release}
286 Requires: vserver-distro-redhat = %{version}-%{release}
289 %description -n vserver-distro-centos
290 VServer build template for CentOS 4.2 and 5.
292 %description -n vserver-distro-centos -l pl.UTF-8
293 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
295 %package -n vserver-distro-debian
296 Summary: VServer build templates for Debian and Ubuntu
297 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu
298 Group: Applications/System
299 Requires: %{name} = %{version}-%{release}
300 Requires: debootstrap
302 Provides: vserver-distro-ubuntu
303 Obsoletes: vserver-distro-ubuntu
305 %description -n vserver-distro-debian
306 VServer build templates for Debian and Ubuntu.
308 %description -n vserver-distro-debian -l pl.UTF-8
309 Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
311 %package -n vserver-distro-fedora
312 Summary: VServer build templates for Fedora
313 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
314 Group: Applications/System
315 Requires: %{name} = %{version}-%{release}
319 Requires: vserver-distro-redhat = %{version}-%{release}
323 %description -n vserver-distro-fedora
324 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
326 %description -n vserver-distro-fedora -l pl.UTF-8
327 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
328 1,2,3,4,5,6 oraz Fedora 7.
330 %package -n vserver-distro-gentoo
331 Summary: VServer build template for Gentoo
332 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
333 Group: Applications/System
334 Requires: %{name} = %{version}-%{release}
336 %description -n vserver-distro-gentoo
337 VServer build template for Gentoo.
339 %description -n vserver-distro-gentoo -l pl.UTF-8
340 Szablon budowania VServerów dla Gentoo.
342 %package -n vserver-distro-pld
343 Summary: VServer build templates for PLD Linux
344 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
345 Group: Applications/System
346 Requires: %{name} = %{version}-%{release}
347 Requires: /etc/pld-release
348 Requires: poldek >= 0.30
350 %description -n vserver-distro-pld
351 VServer build templates for PLD Linux.
353 %description -n vserver-distro-pld -l pl.UTF-8
354 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
356 %package -n vserver-distro-redhat
357 Summary: VServer build template for Red Hat Linux 9
358 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
359 Group: Applications/System
360 Requires: %{name} = %{version}-%{release}
366 %description -n vserver-distro-redhat
367 VServer build template for RedHat Linux 9.
369 %description -n vserver-distro-redhat -l pl.UTF-8
370 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
372 %package -n vserver-distro-suse
373 Summary: VServer build template for SuSE 9.1
374 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
375 Group: Applications/System
376 Requires: %{name} = %{version}-%{release}
382 %description -n vserver-distro-suse
383 VServer build template for SuSE Linux 9.1.
385 %description -n vserver-distro-suse -l pl.UTF-8
386 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
388 %package -n vserver-distro-scientificlinux
389 Summary: VServer build template for Scientific Linux
390 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Scientific Linux
391 Group: Applications/System
392 Requires: %{name} = %{version}-%{release}
399 %description -n vserver-distro-scientificlinux
400 VServer build template for Scientific Linux.
402 %description -n vserver-distro-scientificlinux -l pl.UTF-8
403 Szablon do tworzenia VServerów dla dystrybucji Scientific Linux.
405 %package -n vserver-distro-tld
406 Summary: VServer build templates for Titanium Linux Distribution
407 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Titanium Linux
408 Group: Applications/System
409 Requires: %{name} = %{version}-%{release}
410 Requires: poldek >= 0.30
412 %description -n vserver-distro-tld
413 VServer build templates for Titanium Linux Distribution.
415 %description -n vserver-distro-tld -l pl.UTF-8
416 Szablony do tworzenia VServerów dla dystrybucji Titanium Linux.
419 %setup -q -n %{name}-%{version}-%{snap} -a11
430 %{?with_no_dynamic_context:%patch10 -p1}
447 install %{SOURCE9} package-management.txt
450 unset LD_SYMBOLIC_FUNCTIONS || :
453 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
460 --with-initrddir=/etc/rc.d/init.d \
462 --enable-apis=NOLEGACY \
463 --with-initscripts=sysv \
464 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
466 IONICE=%{_usrbin}/ionice \
468 IPTABLES=%{_usrsbin}/iptables \
470 MODPROBE=/sbin/modprobe \
472 NAMEIF=/sbin/nameif \
474 RESTORE=/sbin/restore \
476 RSYNC=%{_usrbin}/rsync \
477 STRACE=%{_usrbin}/strace \
479 VCONFIG=/sbin/vconfig \
480 WGET=%{_usrbin}/wget \
484 %{?with_doc:%{__make} doc}
486 %{__make} -C vproc-%{vproc_version} \
488 CFLAGS="%{rpmcflags}"
491 rm -rf $RPM_BUILD_ROOT
492 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
493 $RPM_BUILD_ROOT%{_sysconfdir}/vservices \
494 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/{apps/vdevmap,cgroup} \
495 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
497 %{__make} -j1 install install-distribution \
498 DESTDIR=$RPM_BUILD_ROOT
500 # our libcgroup uses per subsystem mount
501 touch $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
503 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
505 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
506 s=$(basename $i | sed s/v_//)
507 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
508 # IP addresses/interfaces to bound $s service to
514 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
515 $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
516 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
517 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
518 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
519 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
520 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
521 $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
522 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE15} > \
523 $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
524 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
525 $RPM_BUILD_ROOT/etc/sysconfig/vservers
526 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' gentoo/bash-wrapper > \
527 $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
529 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
531 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
532 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
533 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
534 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
535 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/tld/initpost
536 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
537 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
538 install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
539 sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
540 chmod +x $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
542 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
543 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
546 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
547 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
549 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
550 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
552 install %{SOURCE16} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
554 # set arch for pld-ac in pld.conf
555 %ifarch i586 i686 ppc sparc alpha athlon
556 %define ftp_arch %{_target_cpu}
559 %define ftp_arch amd64
562 %define ftp_arch i386
564 %ifarch pentium2 pentium3 pentium4
565 %define ftp_arch i686
567 %ifarch sparcv9 sparc64
568 %define ftp_arch sparc
570 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
572 # set arch for pld-th in pld.conf
573 %ifarch i486 i686 ppc sparc alpha athlon
574 %define ftp_arch %{_target_cpu}
577 %define ftp_arch x86_64
580 %define ftp_arch i486
582 %ifarch pentium2 pentium3 pentium4
583 %define ftp_arch i686
585 %ifarch sparcv9 sparc64
586 %define ftp_arch sparc
588 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
590 # set arch for tld in tld.conf
591 %ifarch i586 i686 ppc sparc alpha
592 %define ftp_arch %{_target_cpu}
595 %define ftp_arch x86_64
597 %ifarch athlon pentium2 pentium3 pentium4
598 %define ftp_arch i686
600 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/tld.conf
602 # current debootstrap link
603 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
604 > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
606 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
609 rm -rf $RPM_BUILD_ROOT/dev
610 rm -rf $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
611 # we have our own initscript which does the same
612 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
613 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
614 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
615 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
618 rm -rf $RPM_BUILD_ROOT
620 %triggerun -- util-vserver-init
621 # Prevent preun from util-vserver-init from working
622 chmod a-x /etc/rc.d/init.d/vprocunhide
623 chmod a-x /etc/rc.d/init.d/vrootdevices
624 chmod a-x /etc/rc.d/init.d/vservers
626 %triggerpostun -- util-vserver-init
627 # Restore what triggerun removed
628 chmod ug+x /etc/rc.d/init.d/vprocunhide
629 chmod ug+x /etc/rc.d/init.d/vrootdevices
630 chmod ug+x /etc/rc.d/init.d/vservers
631 /sbin/chkconfig --add vrootdevices
632 /sbin/chkconfig --add vprocunhide
633 /sbin/chkconfig --add vservers
634 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
635 cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
636 mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
638 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
639 cp -f /etc/sysconfig/vservers{,.rpmnew}
640 mv -f /etc/sysconfig/vservers{.rpmsave,}
644 %{_sbindir}/setattr --barrier /vservers || :
645 /sbin/chkconfig --add util-vserver
646 /sbin/chkconfig --add vrootdevices
647 /sbin/chkconfig --add vprocunhide
648 /sbin/chkconfig --add vservers
649 if [ ! -f /var/lock/subsys/util-vserver ]; then
650 echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
652 if [ ! -f /var/lock/subsys/vrootdevices ]; then
653 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
655 if [ ! -f /var/lock/subsys/vprocunhide ]; then
656 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
658 if [ ! -f /var/lock/subsys/vservers ]; then
659 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
663 if [ "$1" = "0" ]; then
664 %service util-vserver stop
665 %service vservers stop
666 %service vprocunhide stop
667 %service vrootdevices stop
668 /sbin/chkconfig --del util-vserver
669 /sbin/chkconfig --del vservers
670 /sbin/chkconfig --del vprocunhide
671 /sbin/chkconfig --del vrootdevices
674 %post lib -p /sbin/ldconfig
675 %postun lib -p /sbin/ldconfig
678 /sbin/chkconfig --add rebootmgr
679 /sbin/chkconfig --add vservers-legacy
680 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
681 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
683 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
684 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
688 if [ "$1" = "0" ]; then
689 %service rebootmgr stop
690 %service vservers-legacy stop
691 /sbin/chkconfig --del rebootmgr
692 /sbin/chkconfig --del vservers-legacy
695 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
696 for D in ac th ti; do
697 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
699 if [ -f $P/pld-source.conf.rpmsave ]; then
700 cp -f $P/repos.d/pld.conf{,.rpmnew}
701 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
707 %defattr(644,root,root,755)
708 %doc AUTHORS NEWS THANKS doc/intro.txt
709 %doc package-management.txt
710 %{?with_doc:%doc doc/*.html}
711 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
712 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
713 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
714 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
715 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
716 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
717 %attr(754,root,root) /etc/rc.d/init.d/vservers
718 %dir %{_sysconfdir}/vservers
719 %dir %{_sysconfdir}/vservers/.defaults
720 %dir %{_sysconfdir}/vservers/.defaults/apps
721 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
722 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
723 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
724 %dir %{_sysconfdir}/vservers/.defaults/cgroup
725 %{_sysconfdir}/vservers/.defaults/cgroup/per-ss
726 %dir %{_sysconfdir}/vservers/.defaults/files
727 %{_sysconfdir}/vservers/.defaults/vdirbase
728 %{_sysconfdir}/vservers/.defaults/cachebase
729 %{_sysconfdir}/vservers/.defaults/run.rev
730 %dir %{_sysconfdir}/vservers/.distributions
731 %dir %{_sysconfdir}/vservers/.distributions/.common
732 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
734 %attr(755,root,root) %{_sbindir}/chbind
735 %attr(755,root,root) %{_sbindir}/chcontext
736 %attr(755,root,root) %{_sbindir}/chxid
737 %attr(755,root,root) %{_sbindir}/exec-cd
738 %attr(755,root,root) %{_sbindir}/lsxid
739 %attr(755,root,root) %{_sbindir}/naddress
740 %attr(755,root,root) %{_sbindir}/nattribute
741 %attr(755,root,root) %{_sbindir}/ncontext
742 %attr(755,root,root) %{_sbindir}/reducecap
743 %attr(755,root,root) %{_sbindir}/setattr
744 %attr(755,root,root) %{_sbindir}/showattr
745 %attr(755,root,root) %{_sbindir}/vapt-get
746 %attr(755,root,root) %{_sbindir}/vattribute
747 %attr(755,root,root) %{_sbindir}/vcontext
748 %attr(755,root,root) %{_sbindir}/vdevmap
749 %attr(755,root,root) %{_sbindir}/vdlimit
750 %attr(755,root,root) %{_sbindir}/vdu
751 %attr(755,root,root) %{_sbindir}/vkill
752 %attr(755,root,root) %{_sbindir}/vlimit
753 %attr(755,root,root) %{_sbindir}/vmemctrl
754 %attr(755,root,root) %{_sbindir}/vmount
755 %attr(755,root,root) %{_sbindir}/vnamespace
756 %attr(755,root,root) %{_sbindir}/vpoldek
757 %attr(755,root,root) %{_sbindir}/vproc
758 %attr(755,root,root) %{_sbindir}/vps
759 %attr(755,root,root) %{_sbindir}/vpstree
760 %attr(755,root,root) %{_sbindir}/vrpm
761 %attr(755,root,root) %{_sbindir}/vrsetup
762 %attr(755,root,root) %{_sbindir}/vsched
763 %attr(755,root,root) %{_sbindir}/vserver
764 %attr(755,root,root) %{_sbindir}/vserver-info
765 %attr(755,root,root) %{_sbindir}/vserver-stat
766 %attr(755,root,root) %{_sbindir}/vsomething
767 %attr(755,root,root) %{_sbindir}/vspace
768 %attr(755,root,root) %{_sbindir}/vtag
769 %attr(755,root,root) %{_sbindir}/vtop
770 %attr(755,root,root) %{_sbindir}/vuname
771 %attr(755,root,root) %{_sbindir}/vurpm
772 %attr(755,root,root) %{_sbindir}/vwait
773 %attr(755,root,root) %{_sbindir}/vyum
774 %dir %{_libdir}/%{name}
775 %dir %{_libdir}/%{name}/defaults
776 %{_libdir}/%{name}/defaults/fstab
777 %{_libdir}/%{name}/defaults/debootstrap.*
778 %{_libdir}/%{name}/defaults/vunify-exclude
779 %{_libdir}/%{name}/defaults/context.start
780 %{_libdir}/%{name}/defaults/environment
781 %{_libdir}/%{name}/defaults/h2ext.desc
782 %{_libdir}/%{name}/defaults/mtab
783 %{_libdir}/%{name}/defaults/vprocunhide-files
784 %dir %{_libdir}/%{name}/distributions
785 %{_libdir}/%{name}/distributions/defaults
786 %dir %{_libdir}/%{name}/distributions/template
787 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
788 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
789 %{_libdir}/%{name}/FEATURES.txt
790 %{_libdir}/%{name}/util-vserver-vars
791 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
792 %attr(755,root,root) %{_libdir}/%{name}/capchroot
793 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
794 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
795 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
796 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
797 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
798 %attr(755,root,root) %{_libdir}/%{name}/exec-remount
799 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
800 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
801 %attr(755,root,root) %{_libdir}/%{name}/filetime
802 %{_libdir}/%{name}/functions
803 %attr(755,root,root) %{_libdir}/%{name}/h2ext
804 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
805 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
806 %attr(755,root,root) %{_libdir}/%{name}/lockfile
807 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
808 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
809 %attr(755,root,root) %{_libdir}/%{name}/readlink
810 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
811 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
812 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
813 %attr(755,root,root) %{_libdir}/%{name}/sigexec
814 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
815 %attr(755,root,root) %{_libdir}/%{name}/tunctl
816 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
817 %attr(755,root,root) %{_libdir}/%{name}/vclone
818 %attr(755,root,root) %{_libdir}/%{name}/vcopy
819 %attr(755,root,root) %{_libdir}/%{name}/vhashify
820 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
821 %attr(755,root,root) %{_libdir}/%{name}/vpkg
822 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
823 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
824 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
825 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
826 %attr(755,root,root) %{_libdir}/%{name}/vurpm-worker
827 %{_libdir}/%{name}/vserver-build.*
828 %{_libdir}/%{name}/vserver-setup.functions
829 %{_libdir}/%{name}/vserver.*
830 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
831 %attr(755,root,root) %{_libdir}/%{name}/vshelper
832 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
833 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
834 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
835 %attr(755,root,root) %{_libdir}/%{name}/vunify
836 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
837 %{_mandir}/man8/chbind.8*
838 %{_mandir}/man8/chcontext.8*
839 %{_mandir}/man8/reducecap.8*
840 %{_mandir}/man8/vps.8*
841 %{_mandir}/man8/vpstree.8*
842 %{_mandir}/man8/vserver-build.8*
843 %{_mandir}/man8/vserver-stat.8*
844 %{_mandir}/man8/vserver.8*
845 %{_mandir}/man8/vtop.8*
846 %attr(000,root,root) %dir /vservers
848 %{systemdtmpfilesdir}/%{name}.conf
849 %dir %{_localstatedir}/run/vservers
850 %dir %{_localstatedir}/run/vservers.rev
851 %dir %{_localstatedir}/run/vshelper
852 %dir /var/cache/vservers
853 %dir /var/cache/vservers/poldek
856 %defattr(644,root,root,755)
857 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
858 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
861 %defattr(644,root,root,755)
862 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
863 %attr(755,root,root) %{_libdir}/libvserver.so
865 %{_includedir}/vserver*.h
866 %{_pkgconfigdir}/*.pc
869 %defattr(644,root,root,755)
870 %{_libdir}/libvserver.a
873 %defattr(644,root,root,755)
874 %dir %{_sysconfdir}/vservices
875 %{_sysconfdir}/vservices/*
876 %dir %{_libdir}/%{name}/legacy
877 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
878 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
879 %attr(754,root,root) /etc/rc.d/init.d/v_*
880 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
881 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
882 %attr(755,root,root) %{_sbindir}/vserver-copy
883 %{_mandir}/man8/distrib-info.8*
884 %{_mandir}/man8/rebootmgr.8*
885 %{_mandir}/man8/vserver-copy.8*
887 %files -n python-util-vserver
888 %defattr(644,root,root,755)
889 %attr(755,root,root) %{py_sitedir}/_libvserver.so
890 %{py_sitedir}/libvserver.py
892 %files -n vserver-distro-alpine
893 %defattr(644,root,root,755)
894 %dir %{_libdir}/%{name}/distributions/alpine
895 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
896 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
898 %files -n vserver-distro-centos
899 %defattr(644,root,root,755)
900 %{_libdir}/util-vserver/distributions/centos*
902 %files -n vserver-distro-debian
903 %defattr(644,root,root,755)
904 %dir %{_libdir}/%{name}/distributions/debian
905 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
906 %{_libdir}/%{name}/distributions/etch
907 %{_libdir}/%{name}/distributions/lenny
908 %{_libdir}/%{name}/distributions/sid
909 %{_libdir}/%{name}/distributions/squeeze
910 %{_libdir}/%{name}/distributions/wheezy
912 %files -n vserver-distro-fedora
913 %defattr(644,root,root,755)
914 %dir %{_sysconfdir}/vservers/.distributions/f7
915 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
916 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
917 %dir %{_sysconfdir}/vservers/.distributions/fc*
918 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
919 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
920 %{_libdir}/%{name}/distributions/f7
921 %{_libdir}/%{name}/distributions/f8
922 %{_libdir}/%{name}/distributions/f9
923 %{_libdir}/%{name}/distributions/f10
924 %{_libdir}/%{name}/distributions/f11
925 %{_libdir}/%{name}/distributions/f12
926 %{_libdir}/%{name}/distributions/f13
927 %{_libdir}/%{name}/distributions/f14
928 %{_libdir}/%{name}/distributions/fc1
929 %{_libdir}/%{name}/distributions/fc2
930 %{_libdir}/%{name}/distributions/fc3
931 %{_libdir}/%{name}/distributions/fc4
932 %{_libdir}/%{name}/distributions/fc5
933 %{_libdir}/%{name}/distributions/fc6
935 %files -n vserver-distro-gentoo
936 %defattr(644,root,root,755)
937 %dir %{_libdir}/util-vserver/distributions/gentoo
938 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
939 %attr(755,root,root) %{_sbindir}/vdispatch-conf
940 %attr(755,root,root) %{_sbindir}/vemerge
941 %attr(755,root,root) %{_sbindir}/vesync
942 %attr(755,root,root) %{_sbindir}/vupdateworld
944 %files -n vserver-distro-pld
945 %defattr(644,root,root,755)
946 %dir %{_libdir}/%{name}/distributions/pld
947 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
948 %dir %{_libdir}/%{name}/distributions/pld-*
949 %{_libdir}/%{name}/distributions/pld-*/pkgs
950 %{_libdir}/%{name}/distributions/pld-*/pubkeys
951 %{_libdir}/%{name}/distributions/pld-*/rpm
952 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
953 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
954 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
955 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
956 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
957 %dir %{_sysconfdir}/vservers/.distributions/pld-th
958 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
959 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
960 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
962 %files -n vserver-distro-redhat
963 %defattr(644,root,root,755)
964 %dir %{_sysconfdir}/vservers/.distributions/rh9
965 %dir %{_sysconfdir}/vservers/.distributions/rh9/apt
966 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
967 %{_libdir}/%{name}/distributions/rh9
968 %dir %{_libdir}/%{name}/distributions/redhat
969 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initctl
970 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
971 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
972 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
974 %files -n vserver-distro-suse
975 %defattr(644,root,root,755)
976 %dir %{_sysconfdir}/vservers/.distributions/suse*
977 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
978 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
979 %{_libdir}/%{name}/distributions/suse*
981 %files -n vserver-distro-scientificlinux
982 %defattr(644,root,root,755)
983 %dir %{_libdir}/%{name}/distributions/sl6
984 %attr(755,root,root) %{_libdir}/%{name}/distributions/sl6/initpost
985 %attr(755,root,root) %{_libdir}/%{name}/distributions/sl6/initpre
986 %{_libdir}/%{name}/distributions/sl6/pkgs
987 %{_libdir}/%{name}/distributions/sl6/yum
988 %{_libdir}/%{name}/distributions/sl6/yum.repos.d
990 %files -n vserver-distro-tld
991 %defattr(644,root,root,755)
992 %dir %{_libdir}/%{name}/distributions/tld
993 %attr(755,root,root) %{_libdir}/%{name}/distributions/tld/initpost
994 %{_libdir}/%{name}/distributions/tld/pkgs
995 %{_libdir}/%{name}/distributions/tld/rpm
996 %dir %{_sysconfdir}/vservers/.distributions/tld
997 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek
998 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d
999 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/*.conf