2 # - m68k and mips are the only not supported archs
5 %bcond_without dietlibc # don't use dietlibc (ask for troubles)
6 %bcond_without doc # don't build documentation which needed LaTeX
7 %bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
8 %bcond_with xalan # use the xalan xslt processor
9 %bcond_with legacy # build legacy 1.x utils
11 %define vproc_version 0.01
14 # pdflatex: refman: Invalid argument
18 # reqdb_pkg and reqdb_ver must match value from current rpm package in distro
20 %define reqdb_pkg db%{reqdb_ver}
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: c67c795a8f4a217f4d2ddf665ad040f8
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 Patch8: %{name}-vprocunhide.patch
61 Patch9: %{name}-dev.patch
62 Patch10: %{name}-no-dynamic-ctx.patch
63 Patch11: %{name}-more-ip.patch
64 Patch12: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
65 Patch13: %{name}-tmpdir.patch
66 Patch14: %{name}-rpmpath.patch
67 Patch15: %{name}-interfaces-ignore-cvs-dir.patch
68 Patch16: %{name}-personalitymachine.patch
70 Patch18: %{name}-vprocunhide-net.patch
71 # http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
72 Patch19: %{name}-dbrebuild-internalize4.patch
73 Patch21: %{name}-bash-wrapper.patch
74 Patch22: %{name}-pivot-root-ugly-hack.patch
75 Patch24: vunify-more-exclude.patch
78 Patch27: %{name}-rpm5.patch
79 Patch28: diet-ccache.patch
80 Patch29: %{name}-centos6.patch
81 Patch30: vsysctl-ignore-files.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-ams
112 BuildRequires: texlive-latex-extend
113 BuildRequires: texlive-latex-ucs
114 BuildRequires: texlive-latex-wasysym
115 BuildRequires: texlive-makeindex
116 BuildRequires: texlive-pdftex
117 BuildRequires: texlive-xetex
119 %{?with_xalan:BuildRequires: xalan-j}
121 Requires(post,preun): /sbin/chkconfig
122 Requires: %{name}-lib = %{version}-%{release}
127 Requires: mktemp >= 1.5-18
128 Requires: pld-release
129 Requires: rc-scripts >= 0.4.3.4
130 #Requires: rpm >= 5.4.10-36
132 Requires: uname(release) >= 2.6.27
133 Requires: util-linux >= 2.13
134 Requires: vserver-distro-pld = %{version}-%{release}
135 Suggests: %{reqdb_pkg}-utils
137 Obsoletes: util-vserver-build
138 Obsoletes: util-vserver-core
139 Obsoletes: util-vserver-init
140 Conflicts: poldek < 0.18.8-10
141 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
144 # binaries created with this option have broken segments when using dietlibc
145 %define filterout_ld -Wl,-z,relro
149 %define _usrbin /usr/bin
150 %define _usrsbin /usr/sbin
151 %define _usrlib /usr/lib
154 This package provides the components and a framework to setup virtual
155 servers. A virtual server runs inside a Linux server. It is
156 nevertheless highly independent. As such, you can run various services
157 with normal configuration. The various vservers can't interact with
158 each other and can't interact with services in the main server.
160 This requires a special kernel supporting the new new_s_context and
161 set_ipv4root system call.
163 This package contains utilities which are required to communicate with
164 the Linux-Vserver enabled kernel, utilities which assist in building
165 Vservers and SysV initscripts which start and stop Vservers and
168 %description -l pl.UTF-8
169 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
170 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
171 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
172 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
173 w interakcję z innymi ani z usługami na głównym serwerze.
175 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
176 new_s_context i set_ipv4root.
178 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
179 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
180 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
181 zatrzymujące Vserwery oraz powiązane narzędzia.
184 Summary: Dynamic libraries for util-vserver
185 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
189 util-vserver provides the components and a framework to setup virtual
190 servers. A virtual server runs inside a linux server. It is
191 nevertheless highly independent. As such, you can run various services
192 pith normal configuration. The various vservers can't interact with
193 each other and can't interact with services in the main server.
195 This package contains the shared libraries needed by all other
196 'util-vserver' subpackages.
198 %description lib -l pl.UTF-8
199 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
200 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
201 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
202 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
203 w interakcję z innymi ani z usługami na głównym serwerze.
205 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
206 podpakiety util-vserver.
209 Summary: Development files for Linux vserver libraries
210 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
211 Group: Development/Libraries
212 Requires: %{name}-lib = %{version}-%{release}
215 This package contains the development files necessary for developing
216 programs which use vserver library.
218 %description devel -l pl.UTF-8
219 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
220 programów używających biblioteki vserver.
223 Summary: Static vserver library
224 Summary(pl.UTF-8): Biblioteka statyczna vservera
225 Group: Development/Libraries
226 Requires: %{name}-devel = %{version}-%{release}
229 This package contains the static version of vserver library.
231 %description static -l pl.UTF-8
232 Ten pakiet zawiera statyczną wersję biblioteki vservera.
235 Summary: Legacy utilities for util-vserver
236 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
237 Group: Applications/System
238 Requires(post,preun): /sbin/chkconfig
239 Requires: %{name} = %{version}-%{release}
243 util-vserver provides the components and a framework to setup virtual
244 servers. A virtual server runs inside a linux server. It is
245 nevertheless highly independent. As such, you can run various services
246 with normal configuration. The various vservers can't interact with
247 each other and can't interact with services in the main server.
249 This package contains the tools which are needed to work with Vservers
250 having an old-style configuration.
252 %description legacy -l pl.UTF-8
253 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
254 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
255 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
256 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
257 w interakcję z innymi ani z usługami na głównym serwerze.
259 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
260 konfigurację w starym stylu.
262 %package -n python-util-vserver
263 Summary: Python interface to libutil-vserver library
264 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki libutil-vserver
266 Group: Libraries/Python
268 %description -n python-util-vserver
269 Python interface to libutil-vserver library.
271 %description -n python-util-vserver -l pl.UTF-8
272 Pythonowy interfejs do biblioteki libutil-vserver.
274 %package -n vserver-distro-alpine
275 Summary: VServer build template for Alpine Linux
276 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
277 Group: Applications/System
278 Requires: %{name} = %{version}-%{release}
280 %description -n vserver-distro-alpine
281 VServer build template for Alpine Linux.
283 %description -n vserver-distro-alpine -l pl.UTF-8
284 Szablon budowania VServerów dla dystrybucji Alpine Linux.
286 %package -n vserver-distro-centos
287 Summary: VServer build template for CentOS
288 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
289 Group: Applications/System
290 Requires: %{name} = %{version}-%{release}
291 Requires: vserver-distro-redhat = %{version}-%{release}
294 %description -n vserver-distro-centos
295 VServer build template for CentOS 4.2 and 5.
297 %description -n vserver-distro-centos -l pl.UTF-8
298 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
300 %package -n vserver-distro-debian
301 Summary: VServer build templates for Debian and Ubuntu
302 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu
303 Group: Applications/System
304 Requires: %{name} = %{version}-%{release}
305 Requires: debootstrap
307 Provides: vserver-distro-ubuntu
308 Obsoletes: vserver-distro-ubuntu
310 %description -n vserver-distro-debian
311 VServer build templates for Debian and Ubuntu.
313 %description -n vserver-distro-debian -l pl.UTF-8
314 Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
316 %package -n vserver-distro-fedora
317 Summary: VServer build templates for Fedora
318 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
319 Group: Applications/System
320 Requires: %{name} = %{version}-%{release}
324 Requires: vserver-distro-redhat = %{version}-%{release}
328 %description -n vserver-distro-fedora
329 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
331 %description -n vserver-distro-fedora -l pl.UTF-8
332 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
333 1,2,3,4,5,6 oraz Fedora 7.
335 %package -n vserver-distro-gentoo
336 Summary: VServer build template for Gentoo
337 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
338 Group: Applications/System
339 Requires: %{name} = %{version}-%{release}
341 %description -n vserver-distro-gentoo
342 VServer build template for Gentoo.
344 %description -n vserver-distro-gentoo -l pl.UTF-8
345 Szablon budowania VServerów dla Gentoo.
347 %package -n vserver-distro-pld
348 Summary: VServer build templates for PLD Linux
349 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
350 Group: Applications/System
351 Requires: %{name} = %{version}-%{release}
352 Requires: /etc/pld-release
353 Requires: poldek >= 0.30
355 %description -n vserver-distro-pld
356 VServer build templates for PLD Linux.
358 %description -n vserver-distro-pld -l pl.UTF-8
359 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
361 %package -n vserver-distro-redhat
362 Summary: VServer build template for Red Hat Linux 9
363 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
364 Group: Applications/System
365 Requires: %{name} = %{version}-%{release}
371 %description -n vserver-distro-redhat
372 VServer build template for RedHat Linux 9.
374 %description -n vserver-distro-redhat -l pl.UTF-8
375 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
377 %package -n vserver-distro-suse
378 Summary: VServer build template for SuSE 9.1
379 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
380 Group: Applications/System
381 Requires: %{name} = %{version}-%{release}
387 %description -n vserver-distro-suse
388 VServer build template for SuSE Linux 9.1.
390 %description -n vserver-distro-suse -l pl.UTF-8
391 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
393 %package -n vserver-distro-scientificlinux
394 Summary: VServer build template for Scientific Linux
395 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Scientific Linux
396 Group: Applications/System
397 Requires: %{name} = %{version}-%{release}
404 %description -n vserver-distro-scientificlinux
405 VServer build template for Scientific Linux.
407 %description -n vserver-distro-scientificlinux -l pl.UTF-8
408 Szablon do tworzenia VServerów dla dystrybucji Scientific Linux.
410 %package -n vserver-distro-tld
411 Summary: VServer build templates for Titanium Linux Distribution
412 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Titanium Linux
413 Group: Applications/System
414 Requires: %{name} = %{version}-%{release}
415 Requires: poldek >= 0.30
417 %description -n vserver-distro-tld
418 VServer build templates for Titanium Linux Distribution.
420 %description -n vserver-distro-tld -l pl.UTF-8
421 Szablony do tworzenia VServerów dla dystrybucji Titanium Linux.
424 %setup -q -n %{name}-%{version}-%{snap} -a11
434 %{?with_no_dynamic_context:%patch10 -p1}
454 cp -p %{SOURCE9} package-management.txt
456 %{__sed} -i -e "s/@RPMDB@/%{reqdb_ver}/g" scripts/pkgmgmt
459 unset LD_SYMBOLIC_FUNCTIONS || :
462 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
469 --with-initrddir=/etc/rc.d/init.d \
471 --enable-apis=NOLEGACY \
472 --with-initscripts=sysv \
473 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
475 IONICE=%{_usrbin}/ionice \
477 IPTABLES=%{_usrsbin}/iptables \
479 MODPROBE=/sbin/modprobe \
481 NAMEIF=/sbin/nameif \
483 RESTORE=/sbin/restore \
485 RSYNC=%{_usrbin}/rsync \
486 STRACE=%{_usrbin}/strace \
488 VCONFIG=/sbin/vconfig \
489 WGET=%{_usrbin}/wget \
494 %{?with_doc:%{__make} doc}
496 %{__make} -C vproc-%{vproc_version} \
498 CFLAGS="%{rpmcflags}"
501 rm -rf $RPM_BUILD_ROOT
502 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
503 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/{apps/vdevmap,cgroup} \
504 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
506 %{__make} -j1 install install-distribution \
507 %if %{without legacy}
508 scripts_legacy_src_SCRPTS= \
509 scripts_legacy_gen_SCRPTS= \
510 scripts_legacy_src_PRGS= \
514 DESTDIR=$RPM_BUILD_ROOT
517 # fix breakage caused by too many substitiutions on x86
518 %{__sed} -i -e 's|%{_datadir}/%{name}/sigexec|%{_libdir}/%{name}/sigexec|g' \
519 $RPM_BUILD_ROOT%{_libdir}/%{name}/vshelper
522 # our libcgroup uses per subsystem mount
523 touch $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
525 chmod -R +rX $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/*
527 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
528 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
529 cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
530 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers
531 sed 's|%{_usrlib}/util-vserver|%{_datadir}/%{name}|g' gentoo/bash-wrapper > \
532 $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
535 install -d $RPM_BUILD_ROOT%{_sysconfdir}/vservices
537 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
538 s=$(basename $i | sed s/v_//)
539 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
540 # IP addresses/interfaces to bound $s service to
546 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
547 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
548 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
550 rm $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
551 rm $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
552 rm $RPM_BUILD_ROOT%{_mandir}/man8/distrib-info.8
553 rm $RPM_BUILD_ROOT%{_mandir}/man8/rebootmgr.8
554 rm $RPM_BUILD_ROOT%{_mandir}/man8/vserver-copy.8
557 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
558 cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
559 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld
560 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld/initpost
561 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/tld/initpost
562 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/initpost
563 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/initpost
564 install -p vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
565 sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
566 chmod +x $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
568 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
569 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
572 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/pubkeys
573 cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
575 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys
576 cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
578 cp -p %{SOURCE16} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
580 # set arch for pld-ac in pld.conf
581 %ifarch i586 i686 ppc sparc alpha athlon
582 %define ftp_arch %{_target_cpu}
585 %define ftp_arch amd64
588 %define ftp_arch i386
590 %ifarch pentium2 pentium3 pentium4
591 %define ftp_arch i686
593 %ifarch sparcv9 sparc64
594 %define ftp_arch sparc
596 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
598 # set arch for pld-th in pld.conf
599 %ifarch i486 i686 ppc sparc alpha athlon
600 %define ftp_arch %{_target_cpu}
603 %define ftp_arch x86_64
606 %define ftp_arch i486
608 %ifarch pentium2 pentium3 pentium4
609 %define ftp_arch i686
611 %ifarch sparcv9 sparc64
612 %define ftp_arch sparc
614 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
616 # set arch for tld in tld.conf
617 %ifarch i586 i686 ppc sparc alpha
618 %define ftp_arch %{_target_cpu}
621 %define ftp_arch x86_64
623 %ifarch athlon pentium2 pentium3 pentium4
624 %define ftp_arch i686
626 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/tld.conf
628 # current debootstrap link
629 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.55_all.deb" \
630 > $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults/debootstrap.uri
632 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
635 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
636 # we have our own initscript which does the same
637 %{__rm} $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
638 %{__rm} $RPM_BUILD_ROOT%{_datadir}/util-vserver/vserver-init.functions
639 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
640 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
643 rm -rf $RPM_BUILD_ROOT
645 %triggerun -- util-vserver-init
646 # Prevent preun from util-vserver-init from working
647 chmod a-x /etc/rc.d/init.d/vprocunhide
648 chmod a-x /etc/rc.d/init.d/vrootdevices
649 chmod a-x /etc/rc.d/init.d/vservers
651 %triggerpostun -- util-vserver-init
652 # Restore what triggerun removed
653 chmod ug+x /etc/rc.d/init.d/vprocunhide
654 chmod ug+x /etc/rc.d/init.d/vrootdevices
655 chmod ug+x /etc/rc.d/init.d/vservers
656 /sbin/chkconfig --add vrootdevices
657 /sbin/chkconfig --add vprocunhide
658 /sbin/chkconfig --add vservers
659 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
660 cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
661 mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
663 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
664 cp -f /etc/sysconfig/vservers{,.rpmnew}
665 mv -f /etc/sysconfig/vservers{.rpmsave,}
669 %{_sbindir}/setattr --barrier /vservers || :
670 /sbin/chkconfig --add util-vserver
671 /sbin/chkconfig --add vrootdevices
672 /sbin/chkconfig --add vprocunhide
673 /sbin/chkconfig --add vservers
674 if [ ! -f /var/lock/subsys/util-vserver ]; then
675 echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
677 if [ ! -f /var/lock/subsys/vrootdevices ]; then
678 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
680 if [ ! -f /var/lock/subsys/vprocunhide ]; then
681 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
683 if [ ! -f /var/lock/subsys/vservers ]; then
684 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
688 if [ "$1" = "0" ]; then
689 %service util-vserver stop
690 %service vservers stop
691 %service vprocunhide stop
692 %service vrootdevices stop
693 /sbin/chkconfig --del util-vserver
694 /sbin/chkconfig --del vservers
695 /sbin/chkconfig --del vprocunhide
696 /sbin/chkconfig --del vrootdevices
699 %post lib -p /sbin/ldconfig
700 %postun lib -p /sbin/ldconfig
703 /sbin/chkconfig --add rebootmgr
704 /sbin/chkconfig --add vservers-legacy
705 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
706 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
708 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
709 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
713 if [ "$1" = "0" ]; then
714 %service rebootmgr stop
715 %service vservers-legacy stop
716 /sbin/chkconfig --del rebootmgr
717 /sbin/chkconfig --del vservers-legacy
720 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
721 for D in ac th ti; do
722 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
724 if [ -f $P/pld-source.conf.rpmsave ]; then
725 cp -f $P/repos.d/pld.conf{,.rpmnew}
726 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
732 %defattr(644,root,root,755)
733 %doc AUTHORS NEWS THANKS doc/intro.txt
734 %doc package-management.txt
735 %{?with_doc:%doc doc/*.html}
736 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
737 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
738 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
739 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
740 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
741 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
742 %attr(754,root,root) /etc/rc.d/init.d/vservers
743 %dir %{_sysconfdir}/vservers
744 %dir %{_sysconfdir}/vservers/.defaults
745 %dir %{_sysconfdir}/vservers/.defaults/apps
746 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
747 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
748 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
749 %dir %{_sysconfdir}/vservers/.defaults/cgroup
750 %{_sysconfdir}/vservers/.defaults/cgroup/per-ss
751 %dir %{_sysconfdir}/vservers/.defaults/files
752 %{_sysconfdir}/vservers/.defaults/vdirbase
753 %{_sysconfdir}/vservers/.defaults/cachebase
754 %{_sysconfdir}/vservers/.defaults/run.rev
755 %dir %{_sysconfdir}/vservers/.distributions
756 %dir %{_sysconfdir}/vservers/.distributions/.common
757 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
759 %attr(755,root,root) %{_sbindir}/chbind
760 %attr(755,root,root) %{_sbindir}/chcontext
761 %attr(755,root,root) %{_sbindir}/chxid
762 %attr(755,root,root) %{_sbindir}/exec-cd
763 %attr(755,root,root) %{_sbindir}/lsxid
764 %attr(755,root,root) %{_sbindir}/naddress
765 %attr(755,root,root) %{_sbindir}/nattribute
766 %attr(755,root,root) %{_sbindir}/ncontext
767 %attr(755,root,root) %{_sbindir}/reducecap
768 %attr(755,root,root) %{_sbindir}/setattr
769 %attr(755,root,root) %{_sbindir}/showattr
770 %attr(755,root,root) %{_sbindir}/vapt-get
771 %attr(755,root,root) %{_sbindir}/vattribute
772 %attr(755,root,root) %{_sbindir}/vcontext
773 %attr(755,root,root) %{_sbindir}/vdevmap
774 %attr(755,root,root) %{_sbindir}/vdlimit
775 %attr(755,root,root) %{_sbindir}/vdu
776 %attr(755,root,root) %{_sbindir}/vkill
777 %attr(755,root,root) %{_sbindir}/vlimit
778 %attr(755,root,root) %{_sbindir}/vmemctrl
779 %attr(755,root,root) %{_sbindir}/vmount
780 %attr(755,root,root) %{_sbindir}/vnamespace
781 %attr(755,root,root) %{_sbindir}/vpoldek
782 %attr(755,root,root) %{_sbindir}/vproc
783 %attr(755,root,root) %{_sbindir}/vps
784 %attr(755,root,root) %{_sbindir}/vpstree
785 %attr(755,root,root) %{_sbindir}/vrpm
786 %attr(755,root,root) %{_sbindir}/vrsetup
787 %attr(755,root,root) %{_sbindir}/vsched
788 %attr(755,root,root) %{_sbindir}/vserver
789 %attr(755,root,root) %{_sbindir}/vserver-info
790 %attr(755,root,root) %{_sbindir}/vserver-stat
791 %attr(755,root,root) %{_sbindir}/vsomething
792 %attr(755,root,root) %{_sbindir}/vspace
793 %attr(755,root,root) %{_sbindir}/vtag
794 %attr(755,root,root) %{_sbindir}/vtop
795 %attr(755,root,root) %{_sbindir}/vuname
796 %attr(755,root,root) %{_sbindir}/vurpm
797 %attr(755,root,root) %{_sbindir}/vwait
798 %attr(755,root,root) %{_sbindir}/vyum
799 %dir %{_datadir}/%{name}
800 %dir %{_datadir}/%{name}/defaults
801 %{_datadir}/%{name}/defaults/fstab
802 %{_datadir}/%{name}/defaults/debootstrap.*
803 %{_datadir}/%{name}/defaults/vunify-exclude
804 %{_datadir}/%{name}/defaults/context.start
805 %{_datadir}/%{name}/defaults/environment
806 %{_datadir}/%{name}/defaults/h2ext.desc
807 %{_datadir}/%{name}/defaults/mtab
808 %{_datadir}/%{name}/defaults/vprocunhide-files
809 %dir %{_datadir}/%{name}/distributions
810 %{_datadir}/%{name}/distributions/defaults
811 %dir %{_datadir}/%{name}/distributions/template
812 %attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpost
813 %attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpre
814 %{_datadir}/%{name}/FEATURES.txt
815 %{_datadir}/%{name}/util-vserver-vars
816 %{_datadir}/%{name}/functions
817 %{_datadir}/%{name}/vserver-build.*
818 %{_datadir}/%{name}/vserver-setup.functions
819 %{_datadir}/%{name}/vserver.*
820 %dir %{_libdir}/%{name}
821 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
822 %attr(755,root,root) %{_libdir}/%{name}/capchroot
823 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
824 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
825 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
826 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
827 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
828 %attr(755,root,root) %{_libdir}/%{name}/exec-remount
829 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
830 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
831 %attr(755,root,root) %{_libdir}/%{name}/filetime
832 %attr(755,root,root) %{_libdir}/%{name}/h2ext
833 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
834 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
835 %attr(755,root,root) %{_libdir}/%{name}/lockfile
836 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
837 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
838 %attr(755,root,root) %{_libdir}/%{name}/readlink
839 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
840 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
841 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
842 %attr(755,root,root) %{_libdir}/%{name}/sigexec
843 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
844 %attr(755,root,root) %{_libdir}/%{name}/tunctl
845 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
846 %attr(755,root,root) %{_libdir}/%{name}/vclone
847 %attr(755,root,root) %{_libdir}/%{name}/vcopy
848 %attr(755,root,root) %{_libdir}/%{name}/vhashify
849 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
850 %attr(755,root,root) %{_libdir}/%{name}/vpkg
851 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
852 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
853 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
854 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
855 %attr(755,root,root) %{_libdir}/%{name}/vurpm-worker
856 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
857 %attr(755,root,root) %{_libdir}/%{name}/vshelper
858 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
859 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
860 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
861 %attr(755,root,root) %{_libdir}/%{name}/vunify
862 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
863 %{_mandir}/man8/chbind.8*
864 %{_mandir}/man8/chcontext.8*
865 %{_mandir}/man8/reducecap.8*
866 %{_mandir}/man8/vps.8*
867 %{_mandir}/man8/vpstree.8*
868 %{_mandir}/man8/vserver-build.8*
869 %{_mandir}/man8/vserver-stat.8*
870 %{_mandir}/man8/vserver.8*
871 %{_mandir}/man8/vtop.8*
872 %attr(000,root,root) %dir /vservers
874 %{systemdtmpfilesdir}/%{name}.conf
875 %dir %{_localstatedir}/run/vservers
876 %dir %{_localstatedir}/run/vservers.rev
877 %dir %{_localstatedir}/run/vshelper
878 %dir /var/cache/vservers
879 %dir /var/cache/vservers/poldek
882 %defattr(644,root,root,755)
883 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
884 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
887 %defattr(644,root,root,755)
888 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
889 %attr(755,root,root) %{_libdir}/libvserver.so
891 %{_includedir}/vserver*.h
892 %{_pkgconfigdir}/*.pc
895 %defattr(644,root,root,755)
896 %{_libdir}/libvserver.a
900 %defattr(644,root,root,755)
901 %dir %{_sysconfdir}/vservices
902 %{_sysconfdir}/vservices/*
903 %dir %{_libdir}/%{name}/legacy
904 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
905 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
906 %attr(754,root,root) /etc/rc.d/init.d/v_*
907 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
908 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
909 %attr(755,root,root) %{_sbindir}/vserver-copy
910 %{_mandir}/man8/distrib-info.8*
911 %{_mandir}/man8/rebootmgr.8*
912 %{_mandir}/man8/vserver-copy.8*
915 %files -n python-util-vserver
916 %defattr(644,root,root,755)
917 %attr(755,root,root) %{py_sitedir}/_libvserver.so
918 %{py_sitedir}/libvserver.py
920 %files -n vserver-distro-alpine
921 %defattr(644,root,root,755)
922 %dir %{_datadir}/%{name}/distributions/alpine
923 %attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpost
924 %attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpre
926 %files -n vserver-distro-centos
927 %defattr(644,root,root,755)
928 %{_datadir}/util-vserver/distributions/centos*
930 %files -n vserver-distro-debian
931 %defattr(644,root,root,755)
932 %dir %{_datadir}/%{name}/distributions/debian
933 %attr(755,root,root) %{_datadir}/%{name}/distributions/debian/initpost
934 %{_datadir}/%{name}/distributions/etch
935 %{_datadir}/%{name}/distributions/lenny
936 %{_datadir}/%{name}/distributions/sid
937 %{_datadir}/%{name}/distributions/squeeze
938 %{_datadir}/%{name}/distributions/wheezy
940 %files -n vserver-distro-fedora
941 %defattr(644,root,root,755)
942 %dir %{_sysconfdir}/vservers/.distributions/f7
943 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
944 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
945 %dir %{_sysconfdir}/vservers/.distributions/fc*
946 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
947 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
948 %{_datadir}/%{name}/distributions/f7
949 %{_datadir}/%{name}/distributions/f8
950 %{_datadir}/%{name}/distributions/f9
951 %{_datadir}/%{name}/distributions/f10
952 %{_datadir}/%{name}/distributions/f11
953 %{_datadir}/%{name}/distributions/f12
954 %{_datadir}/%{name}/distributions/f13
955 %{_datadir}/%{name}/distributions/f14
956 %{_datadir}/%{name}/distributions/fc1
957 %{_datadir}/%{name}/distributions/fc2
958 %{_datadir}/%{name}/distributions/fc3
959 %{_datadir}/%{name}/distributions/fc4
960 %{_datadir}/%{name}/distributions/fc5
961 %{_datadir}/%{name}/distributions/fc6
963 %files -n vserver-distro-gentoo
964 %defattr(644,root,root,755)
965 %dir %{_datadir}/util-vserver/distributions/gentoo
966 %attr(755,root,root) %{_datadir}/util-vserver/distributions/gentoo/*
967 %attr(755,root,root) %{_sbindir}/vdispatch-conf
968 %attr(755,root,root) %{_sbindir}/vemerge
969 %attr(755,root,root) %{_sbindir}/vesync
970 %attr(755,root,root) %{_sbindir}/vupdateworld
972 %files -n vserver-distro-pld
973 %defattr(644,root,root,755)
974 %dir %{_datadir}/%{name}/distributions/pld
975 %attr(755,root,root) %{_datadir}/%{name}/distributions/pld/initpost
976 %dir %{_datadir}/%{name}/distributions/pld-*
977 %{_datadir}/%{name}/distributions/pld-*/pkgs
978 %{_datadir}/%{name}/distributions/pld-*/pubkeys
979 %{_datadir}/%{name}/distributions/pld-*/rpm
980 %attr(755,root,root) %{_datadir}/%{name}/distributions/pld-*/initpost
981 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
982 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
983 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
984 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
985 %dir %{_sysconfdir}/vservers/.distributions/pld-th
986 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
987 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
988 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
990 %files -n vserver-distro-redhat
991 %defattr(644,root,root,755)
992 %dir %{_sysconfdir}/vservers/.distributions/rh9
993 %dir %{_sysconfdir}/vservers/.distributions/rh9/apt
994 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
995 %{_datadir}/%{name}/distributions/rh9
996 %dir %{_datadir}/%{name}/distributions/redhat
997 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initctl
998 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpost
999 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpre
1000 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/rc.sysinit
1002 %files -n vserver-distro-suse
1003 %defattr(644,root,root,755)
1004 %dir %{_sysconfdir}/vservers/.distributions/suse*
1005 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
1006 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
1007 %{_datadir}/%{name}/distributions/suse*
1009 %files -n vserver-distro-scientificlinux
1010 %defattr(644,root,root,755)
1011 %dir %{_datadir}/%{name}/distributions/sl6
1012 %attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpost
1013 %attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpre
1014 %{_datadir}/%{name}/distributions/sl6/pkgs
1015 %{_datadir}/%{name}/distributions/sl6/yum
1016 %{_datadir}/%{name}/distributions/sl6/yum.repos.d
1018 %files -n vserver-distro-tld
1019 %defattr(644,root,root,755)
1020 %dir %{_datadir}/%{name}/distributions/tld
1021 %attr(755,root,root) %{_datadir}/%{name}/distributions/tld/initpost
1022 %{_datadir}/%{name}/distributions/tld/pkgs
1023 %{_datadir}/%{name}/distributions/tld/rpm
1024 %dir %{_sysconfdir}/vservers/.distributions/tld
1025 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek
1026 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d
1027 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/*.conf