2 # - make build create /dev/std{in,out,err} links
3 # - reject install in %%pretrans if /proc/virtual/info has incompatible version
5 # /etc/rc.d/init.d/util-vserver -- # integrate to our initscript (util-vserver sets the path to vshelper and kills all guest processes)
7 # vserver initng delete
8 # /usr/lib64/util-vserver/vserver.delete: line 19: /usr/lib64/util-vserver/vserver-build.functions: No such file or directory
9 # /usr/lib64/util-vserver/vserver.delete: line 20: /usr/lib64/util-vserver/vserver-build.functions.pkgmgmt: No such file or directory
10 # or move the delete func to -build
11 # - make pkgmgmnt internalize modify poldek conf to unignore vserver-packages
12 # - service vservers stop should shutdown all running vservers (respecting
13 # configuration for order) otherwise on shutdown vservers are not nicely
15 # - when building ac quest on th, the platform file for x8664 archidecture is wrong
17 # m68k and mips are the only not supported archs
20 %bcond_without dietlibc # don't use dietlibc (ask for troubles)
21 %bcond_without doc # don't build documentation which needed LaTeX
22 %bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
23 %bcond_with xalan # use the xalan xslt processor
25 %define vproc_version 0.01
26 # diet compile fails with ccache in %{__cc}
29 Summary: Linux virtual server utilities
30 Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
35 Group: Applications/System
36 Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
37 # Source0-md5: befd9b8e5311e87395b67ee381d83649
38 Source1: vprocunhide.init
39 Source2: vservers.init
40 Source3: vservers-legacy.init
41 Source4: rebootmgr.init
42 Source5: vservers.sysconfig
43 Source6: vservers-legacy.sysconfig
44 Source7: vrootdevices.init
45 Source8: vrootdevices.sysconfig
46 # A bit of documentation explaining package management
47 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
48 Source9: %{name}-pkgmgmt.txt
49 Source10: %{name}-initpost.sh
50 Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
51 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
52 Source12: %{name}-vhashify.cron
53 Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
54 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
55 Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
56 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
57 Patch0: %{name}-vsysvwrapper.patch
58 Patch1: %{name}-pld.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}-trunk_fixes.patch
74 Patch19: %{name}-vprocunhide-net.patch
75 Patch20: %{name}-more-caps.patch
76 URL: http://savannah.nongnu.org/projects/util-vserver/
77 BuildRequires: autoconf
78 BuildRequires: automake >= 1.9
79 BuildRequires: beecrypt-devel
80 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
81 BuildRequires: e2fsprogs-devel
82 BuildRequires: libstdc++-devel
83 BuildRequires: libtool >= 1.5.14
85 BuildRequires: sed >= 4.0
87 BuildRequires: rpmbuild(macros) >= 1.268
89 BuildRequires: doxygen
90 BuildRequires: graphviz
91 BuildRequires: libxslt-progs
92 BuildRequires: tetex-format-pdflatex
93 BuildRequires: tetex-makeindex
94 # To be removed when tetex-format-pdflatex, tetex-pdftex...
95 # ...and graphviz packages get fixed
96 BuildRequires: ghostscript
97 BuildRequires: ghostscript-fonts-std
98 BuildRequires: tetex-fonts-jknappen
99 BuildRequires: tetex-metafont
100 %{?with_xalan:BuildRequires: xalan-j}
102 Requires(post,preun): /sbin/chkconfig
103 Requires: %{name}-lib = %{version}-%{release}
106 Requires: mktemp >= 1.5-18
110 Obsoletes: util-vserver-core
111 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
114 # binaries created with this option have broken segments when using dietlibc
115 %define filterout_ld -Wl,-z,relro
119 %define _usrbin /usr/bin
120 %define _usrsbin /usr/sbin
121 %define _usrlib /usr/lib
124 This package provides the components and a framework to setup virtual
125 servers. A virtual server runs inside a Linux server. It is
126 nevertheless highly independent. As such, you can run various services
127 with normal configuration. The various vservers can't interact with
128 each other and can't interact with services in the main server.
130 This requires a special kernel supporting the new new_s_context and
131 set_ipv4root system call.
133 This package contains utilities which are required to communicate with
134 the Linux-Vserver enabled kernel.
136 %description -l pl.UTF-8
137 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
138 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
139 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
140 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
141 w interakcję z innymi ani z usługami na głównym serwerze.
143 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
144 new_s_context i set_ipv4root.
146 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
147 włączonym mechanizmem Linux-Vserver.
150 Summary: Dynamic libraries for util-vserver
151 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
155 util-vserver provides the components and a framework to setup virtual
156 servers. A virtual server runs inside a linux server. It is
157 nevertheless highly independent. As such, you can run various services
158 pith normal configuration. The various vservers can't interact with
159 each other and can't interact with services in the main server.
161 This package contains the shared libraries needed by all other
162 'util-vserver' subpackages.
164 %description lib -l pl.UTF-8
165 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
166 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
167 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
168 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
169 w interakcję z innymi ani z usługami na głównym serwerze.
171 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
172 podpakiety util-vserver.
175 Summary: Development files for Linux vserver libraries
176 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
177 Group: Development/Libraries
178 Requires: %{name}-lib = %{version}-%{release}
181 This package contains the development files necessary for developing
182 programs which use vserver library.
184 %description devel -l pl.UTF-8
185 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
186 programów używających biblioteki vserver.
189 Summary: Static vserver library
190 Summary(pl.UTF-8): Biblioteka statyczna vservera
191 Group: Development/Libraries
192 Requires: %{name}-devel = %{version}-%{release}
195 This package contains the static version of vserver library.
197 %description static -l pl.UTF-8
198 Ten pakiet zawiera statyczną wersję biblioteki vservera.
201 Summary: Tools which can be used to build vservers
202 Summary(pl.UTF-8): Narzędzia do budowania vserverów
203 Group: Applications/System
204 Requires: %{name} = %{version}-%{release}
205 Requires: vserver-distro-pld = %{version}-%{release}
206 Conflicts: poldek < 0.18.8-10
209 util-vserver provides the components and a framework to setup virtual
210 servers. A virtual server runs inside a linux server. It is
211 nevertheless highly independent. As such, you can run various services
212 with normal configuration. The various vservers can't interact with
213 each other and can't interact with services in the main server.
215 This package contains utilities which assist in building Vservers.
217 %description build -l pl.UTF-8
218 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
219 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
220 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
221 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
222 w interakcję z innymi ani z usługami na głównym serwerze.
224 Ten pakiet zawiera narzędzia pomagające przy budowaniu Vserwerów.
227 Summary: initscripts for vserver
228 Summary(pl.UTF-8): Skrypty inicjalizujące dla vserwera
229 Group: Applications/System
230 Requires(post,preun): /sbin/chkconfig
231 Requires: %{name} = %{version}-%{release}
237 util-vserver provides the components and a framework to setup virtual
238 servers. A virtual server runs inside a linux server. It is
239 nevertheless highly independent. As such, you can run various services
240 with normal configuration. The various vservers can't interact with
241 each other and can't interact with services in the main server.
243 This package contains the SysV initscripts which start and stop
244 Vservers and related tools.
246 %description init -l pl.UTF-8
247 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
248 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
249 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
250 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
251 w interakcję z innymi ani z usługami na głównym serwerze.
253 Ten pakiet zawiera skrypty inicjalizujące SysV uruchamiające i
254 zatrzymujące Vserwery oraz powiązane narzędzia.
257 Summary: Legacy utilities for util-vserver
258 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
259 Group: Applications/System
260 Requires(post,preun): /sbin/chkconfig
261 Requires: %{name} = %{version}-%{release}
265 util-vserver provides the components and a framework to setup virtual
266 servers. A virtual server runs inside a linux server. It is
267 nevertheless highly independent. As such, you can run various services
268 with normal configuration. The various vservers can't interact with
269 each other and can't interact with services in the main server.
271 This package contains the tools which are needed to work with Vservers
272 having an old-style configuration.
274 %description legacy -l pl.UTF-8
275 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
276 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
277 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
278 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
279 w interakcję z innymi ani z usługami na głównym serwerze.
281 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
282 konfigurację w starym stylu.
284 %package -n vserver-distro-alpine
285 Summary: VServer build template for Alpine Linux
286 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
287 Group: Applications/System
288 Requires: %{name}-build = %{version}-%{release}
290 %description -n vserver-distro-alpine
291 VServer build template for Alpine Linux.
293 %description -n vserver-distro-alpine -l pl.UTF-8
294 Szablon budowania VServerów dla dystrybucji Alpine Linux.
296 %package -n vserver-distro-centos
297 Summary: VServer build template for CentOS
298 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
299 Group: Applications/System
300 Requires: %{name}-build = %{version}-%{release}
303 %description -n vserver-distro-centos
304 VServer build template for CentOS 4.2 and 5.
306 %description -n vserver-distro-centos -l pl.UTF-8
307 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
309 %package -n vserver-distro-debian
310 Summary: VServer build templates for Debian
311 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian
312 Group: Applications/System
313 Requires: %{name}-build = %{version}-%{release}
316 %description -n vserver-distro-debian
317 VServer build templates for Debian.
319 %description -n vserver-distro-debian -l pl.UTF-8
320 Szablony do tworzenia VServerów dla dystrybucji Debian.
322 %package -n vserver-distro-fedora
323 Summary: VServer build templates for Fedora
324 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
325 Group: Applications/System
326 Requires: %{name}-build = %{version}-%{release}
333 %description -n vserver-distro-fedora
334 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
336 %description -n vserver-distro-fedora -l pl.UTF-8
337 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
338 1,2,3,4,5,6 oraz Fedora 7.
340 %package -n vserver-distro-gentoo
341 Summary: VServer build template for Gentoo
342 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
343 Group: Applications/System
344 Requires: %{name}-build = %{version}-%{release}
346 %description -n vserver-distro-gentoo
347 VServer build template for Gentoo.
349 %description -n vserver-distro-gentoo -l pl.UTF-8
350 Szablon budowania VServerów dla Gentoo.
352 %package -n vserver-distro-pld
353 Summary: VServer build templates for PLD Linux
354 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
355 Group: Applications/System
356 Requires: %{name}-build = %{version}-%{release}
357 Requires: /etc/pld-release
358 Requires: poldek >= 0.30
360 %description -n vserver-distro-pld
361 VServer build templates for PLD Linux.
363 %description -n vserver-distro-pld -l pl.UTF-8
364 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
366 %package -n vserver-distro-redhat
367 Summary: VServer build template for Red Hat Linux 9
368 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
369 Group: Applications/System
370 Requires: %{name}-build = %{version}-%{release}
376 %description -n vserver-distro-redhat
377 VServer build template for RedHat Linux 9.
379 %description -n vserver-distro-redhat -l pl.UTF-8
380 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
382 %package -n vserver-distro-suse
383 Summary: VServer build template for SuSE 9.1
384 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
385 Group: Applications/System
386 Requires: %{name}-build = %{version}-%{release}
392 %description -n vserver-distro-suse
393 VServer build template for SuSE Linux 9.1.
395 %description -n vserver-distro-suse -l pl.UTF-8
396 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
398 %package -n vserver-distro-ubuntu
399 Summary: VServer build templates for Ubuntu
400 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Ubuntu
401 Group: Applications/System
402 Requires: %{name}-build = %{version}-%{release}
405 %description -n vserver-distro-ubuntu
406 VServer build templates for Ubuntu.
408 %description -n vserver-distro-ubuntu -l pl.UTF-8
409 Szablony do tworzenia VServerów dla dystrybucji Ubuntu.
421 %{?with_no_dynamic_context:%patch10 -p1}
433 install %{SOURCE9} package-management.txt
436 unset LD_SYMBOLIC_FUNCTIONS || :
439 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
446 --with-initrddir=/etc/rc.d/init.d \
448 --enable-apis=NOLEGACY \
449 --with-initscripts=sysv \
450 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
456 IPTABLES=%{_usrsbin}/iptables \
457 MODPROBE=/sbin/modprobe \
458 NAMEIF=/sbin/nameif \
460 VCONFIG=/sbin/vconfig \
461 WGET=%{_usrbin}/wget \
464 %{?with_doc:%{__make} doc}
466 %{__make} -C vproc-%{vproc_version} \
468 CFLAGS="%{rpmcflags}"
471 rm -rf $RPM_BUILD_ROOT
472 install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d,cron.d},/dev/pts} \
473 $RPM_BUILD_ROOT{%{_sysconfdir}/vservices,/vservers/.pkg}
475 %{__make} -j1 install install-distribution \
476 DESTDIR=$RPM_BUILD_ROOT
478 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
480 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
481 s=`basename $i | sed s/v_//`
482 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
483 # IP addresses/interfaces to bound $s service to
489 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
490 $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
491 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
492 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
493 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
494 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
495 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
496 $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
497 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
498 $RPM_BUILD_ROOT/etc/sysconfig/vservers
500 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
502 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
503 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
504 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
505 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
506 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
507 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
508 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
509 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost
511 install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
512 install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
514 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
515 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
518 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
519 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
521 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
522 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
524 # set arch for pld-ac in pld.conf
525 %ifarch i586 i686 ppc sparc alpha athlon
526 %define ftp_arch %{_target_cpu}
529 %define ftp_arch amd64
532 %define ftp_arch i386
534 %ifarch pentium2 pentium3 pentium4
535 %define ftp_arch i686
537 %ifarch sparcv9 sparc64
538 %define ftp_arch sparc
540 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
542 # set arch for pld-th in pld.conf
543 %ifarch i486 i686 ppc sparc alpha athlon
544 %define ftp_arch %{_target_cpu}
547 %define ftp_arch x86_64
550 %define ftp_arch i486
552 %ifarch pentium2 pentium3 pentium4
553 %define ftp_arch i686
555 %ifarch sparcv9 sparc64
556 %define ftp_arch sparc
558 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
560 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
561 # set arch for pld-ti in pld.conf
563 %define ftp_arch %{_target_cpu}
566 %define ftp_arch x86_64
568 %ifarch athlon pentium2 pentium3 pentium4
569 %define ftp_arch i686
571 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
574 cd $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm
575 # first platform file entry can't contain regexps
576 echo x86_64-%{_target_vendor}-linux > platform.x86_64
577 echo amd64-%{_target_vendor}-linux > platform.amd64
578 echo athlon-%{_target_vendor}-linux > platform.athlon
579 echo i686-%{_target_vendor}-linux > platform.i686
580 echo i486-%{_target_vendor}-linux > platform.i486
581 echo i386-%{_target_vendor}-linux > platform.i386
582 echo alpha-%{_target_vendor}-linux > platform.alpha
583 echo ppc-%{_target_vendor}-linux > platform.ppc
584 echo sparc-%{_target_vendor}-linux > platform.sparc
587 local arch buf=$(cat);
589 echo "$buf" | tee -a platform.$arch
594 ifarch x86_64 <<endif
595 amd64-[^-]*-[Ll]inux(-gnu)?
596 x86_64-[^-]*-[Ll]inux(-gnu)?
599 amd64-[^-]*-[Ll]inux(-gnu)?
600 x86_64-[^-]*-[Ll]inux(-gnu)?
603 ia32e-[^-]*-[Ll]inux(-gnu)?
604 x86_64-[^-]*-[Ll]inux(-gnu)?
608 ifarch athlon %{x8664} <<endif
609 athlon-[^-]*-[Ll]inux(-gnu)?
611 ifarch pentium4 athlon %{x8664} <<endif
612 pentium4-[^-]*-[Ll]inux(-gnu)?
614 ifarch pentium3 pentium4 athlon %{x8664} <<endif
615 pentium3-[^-]*-[Ll]inux(-gnu)?
618 ifarch i686 pentium3 pentium4 athlon %{x8664} <<endif
619 i686-[^-]*-[Ll]inux(-gnu)?
622 ifarch i586 i686 pentium3 pentium4 athlon %{x8664} <<endif
623 i586-[^-]*-[Ll]inux(-gnu)?
626 ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664} <<endif
627 i486-[^-]*-[Ll]inux(-gnu)?
630 ifarch %{ix86} %{x8664} <<endif
631 i386-[^-]*-[Ll]inux(-gnu)?
635 alpha-[^-]*-[Ll]inux(-gnu)?
639 ia64-[^-]*-[Ll]inux(-gnu)?
643 powerpc64-[^-]*-[Ll]inux(-gnu)?
644 ppc64-[^-]*-[Ll]inux(-gnu)?
646 ifarch ppc ppc64 <<endif
647 powerpc-[^-]*-[Ll]inux(-gnu)?
648 ppc-[^-]*-[Ll]inux(-gnu)?
652 s390x-[^-]*-[Ll]inux(-gnu)?
654 ifarch s390 s390x <<endif
655 s390-[^-]*-[Ll]inux(-gnu)?
658 ifarch sparc64 <<endif
659 sparc64-[^-]*-[Ll]inux(-gnu)?
660 sparcv8-[^-]*-[Ll]inux(-gnu)?
661 sparcv9-[^-]*-[Ll]inux(-gnu)?
663 ifarch sparcv9 <<endif
664 sparcv8-[^-]*-[Ll]inux(-gnu)?
665 sparcv9-[^-]*-[Ll]inux(-gnu)?
667 ifarch sparc sparcv9 sparc64 <<endif
668 sparc-[^-]*-[Ll]inux(-gnu)?
672 for a in platform.*; do
673 echo 'noarch-[^-]*-.*' >> $a
677 # now create arch compat lists
678 cd $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions
680 ln defaults/rpm/platform.amd64 pld-ac/rpm/platform.amd64
681 ln defaults/rpm/platform.alpha pld-ac/rpm/platform.alpha
682 ln defaults/rpm/platform.athlon pld-ac/rpm/platform.athlon
683 ln defaults/rpm/platform.sparc pld-ac/rpm/platform.sparc
684 ln defaults/rpm/platform.ppc pld-ac/rpm/platform.ppc
685 ln defaults/rpm/platform.i686 pld-ac/rpm/platform.i686
686 ln defaults/rpm/platform.i586 pld-ac/rpm/platform.i586
687 ln defaults/rpm/platform.i486 pld-ac/rpm/platform.i486
688 ln defaults/rpm/platform.i386 pld-ac/rpm/platform.i386
690 ln defaults/rpm/platform.x86_64 pld-th/rpm/platform.x86_64
691 ln defaults/rpm/platform.athlon pld-th/rpm/platform.athlon
692 ln defaults/rpm/platform.ppc pld-th/rpm/platform.ppc
693 ln defaults/rpm/platform.i686 pld-th/rpm/platform.i686
694 ln defaults/rpm/platform.i486 pld-th/rpm/platform.i486
696 ln defaults/rpm/platform.x86_64 pld-ti/rpm/platform.x86_64
697 ln defaults/rpm/platform.i686 pld-ti/rpm/platform.i686
698 ln defaults/rpm/platform.i586 pld-ti/rpm/platform.i586
701 # and get rid of the original files
702 rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm/platform.*
704 # current debootstrap link
705 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
706 > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
708 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
710 # we have our own initscript which does the same
711 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
712 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
713 rm -rf $RPM_BUILD_ROOT/dev
714 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
715 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
716 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
719 rm -rf $RPM_BUILD_ROOT
722 %{_sbindir}/setattr --barrier /vservers || :
724 %post lib -p /sbin/ldconfig
725 %postun lib -p /sbin/ldconfig
728 /sbin/chkconfig --add vrootdevices
729 /sbin/chkconfig --add vprocunhide
730 /sbin/chkconfig --add vservers
731 if [ ! -f /var/lock/subsys/vrootdevices ]; then
732 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
734 if [ ! -f /var/lock/subsys/vprocunhide ]; then
735 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
737 if [ ! -f /var/lock/subsys/vservers ]; then
738 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
742 if [ "$1" = "0" ]; then
743 %service vservers stop
744 %service vprocunhide stop
745 %service vrootdevices stop
746 /sbin/chkconfig --del vservers
747 /sbin/chkconfig --del vprocunhide
748 /sbin/chkconfig --del vrootdevices
752 /sbin/chkconfig --add rebootmgr
753 /sbin/chkconfig --add vservers-legacy
754 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
755 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
757 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
758 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
762 if [ "$1" = "0" ]; then
763 %service rebootmgr stop
764 %service vservers-legacy stop
765 /sbin/chkconfig --del rebootmgr
766 /sbin/chkconfig --del vservers-legacy
769 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
770 for D in ac th ti; do
771 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
773 if [ -f $P/pld-source.conf.rpmsave ]; then
774 cp -f $P/repos.d/pld.conf{,.rpmnew}
775 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
781 %defattr(644,root,root,755)
782 %doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
783 %{?with_doc:%doc doc/*.html}
784 %dir %{_sysconfdir}/vservers
785 %dir %{_sysconfdir}/vservers/.defaults
786 %dir %{_sysconfdir}/vservers/.defaults/apps
787 %dir %{_sysconfdir}/vservers/.defaults/files
788 %{_sysconfdir}/vservers/.defaults/vdirbase
789 %{_sysconfdir}/vservers/.defaults/cachebase
790 %{_sysconfdir}/vservers/.defaults/run.rev
792 %attr(755,root,root) %{_sbindir}/chbind
793 %attr(755,root,root) %{_sbindir}/chcontext
794 %attr(755,root,root) %{_sbindir}/chxid
795 %attr(755,root,root) %{_sbindir}/exec-cd
796 %attr(755,root,root) %{_sbindir}/lsxid
797 %attr(755,root,root) %{_sbindir}/naddress
798 %attr(755,root,root) %{_sbindir}/nattribute
799 %attr(755,root,root) %{_sbindir}/ncontext
800 %attr(755,root,root) %{_sbindir}/reducecap
801 %attr(755,root,root) %{_sbindir}/setattr
802 %attr(755,root,root) %{_sbindir}/showattr
803 %attr(755,root,root) %{_sbindir}/vattribute
804 %attr(755,root,root) %{_sbindir}/vcontext
805 %attr(755,root,root) %{_sbindir}/vdlimit
806 %attr(755,root,root) %{_sbindir}/vnamespace
807 %attr(755,root,root) %{_sbindir}/vkill
808 %attr(755,root,root) %{_sbindir}/vlimit
809 %attr(755,root,root) %{_sbindir}/vdevmap
810 %attr(755,root,root) %{_sbindir}/vdu
811 %attr(755,root,root) %{_sbindir}/vmemctrl
812 %attr(755,root,root) %{_sbindir}/vmount
813 %attr(755,root,root) %{_sbindir}/vproc
814 %attr(755,root,root) %{_sbindir}/vps
815 %attr(755,root,root) %{_sbindir}/vpstree
816 %attr(755,root,root) %{_sbindir}/vspace
817 %attr(755,root,root) %{_sbindir}/vrsetup
818 %attr(755,root,root) %{_sbindir}/vsched
819 %attr(755,root,root) %{_sbindir}/vserver
820 %attr(755,root,root) %{_sbindir}/vserver-info
821 %attr(755,root,root) %{_sbindir}/vserver-stat
822 %attr(755,root,root) %{_sbindir}/vsomething
823 %attr(755,root,root) %{_sbindir}/vtag
824 %attr(755,root,root) %{_sbindir}/vtop
825 %attr(755,root,root) %{_sbindir}/vuname
826 %attr(755,root,root) %{_sbindir}/vwait
827 %dir %{_libdir}/%{name}
828 %dir %{_libdir}/%{name}/defaults
829 %{_libdir}/%{name}/FEATURES.txt
830 %{_libdir}/%{name}/util-vserver-vars
831 %{_libdir}/%{name}/defaults/context.start
832 %{_libdir}/%{name}/defaults/environment
833 %{_libdir}/%{name}/defaults/h2ext.desc
834 %{_libdir}/%{name}/defaults/mtab
835 %{_libdir}/%{name}/defaults/vprocunhide-files
836 %attr(755,root,root) %{_libdir}/%{name}/capchroot
837 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
838 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
839 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
840 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
841 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
842 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
843 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
844 %attr(755,root,root) %{_libdir}/%{name}/filetime
845 %{_libdir}/%{name}/functions
846 %attr(755,root,root) %{_libdir}/%{name}/h2ext
847 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
848 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
849 %attr(755,root,root) %{_libdir}/%{name}/lockfile
850 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
851 %attr(755,root,root) %{_libdir}/%{name}/readlink
852 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
853 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
854 %attr(755,root,root) %{_libdir}/%{name}/sigexec
855 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
856 %attr(755,root,root) %{_libdir}/%{name}/tunctl
857 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
858 %{_libdir}/%{name}/vserver.*
859 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
860 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
861 %attr(755,root,root) %{_libdir}/%{name}/vhashify
862 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
863 %attr(755,root,root) %{_libdir}/%{name}/vshelper
864 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
865 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
866 %{_mandir}/man8/chbind.8*
867 %{_mandir}/man8/chcontext.8*
868 %{_mandir}/man8/reducecap.8*
869 %{_mandir}/man8/vps.8*
870 %{_mandir}/man8/vpstree.8*
871 %{_mandir}/man8/vserver-stat.8*
872 %{_mandir}/man8/vserver.8*
873 %{_mandir}/man8/vtop.8*
874 %attr(000,root,root) %dir /vservers
876 %dir %{_localstatedir}/run/vservers
877 %dir %{_localstatedir}/run/vservers.rev
878 %dir %{_localstatedir}/run/vshelper
879 %dir /var/cache/vservers
880 %dir /var/cache/vservers/poldek
883 %defattr(644,root,root,755)
884 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
885 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
888 %defattr(644,root,root,755)
889 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
890 %attr(755,root,root) %{_libdir}/libvserver.so
892 %{_includedir}/vserver*.h
893 %{_pkgconfigdir}/*.pc
896 %defattr(644,root,root,755)
897 %{_libdir}/libvserver.a
900 %defattr(644,root,root,755)
901 %doc contrib/yum*.patch package-management.txt
902 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
903 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
904 %dir %{_sysconfdir}/vservers/.distributions
905 %dir %{_sysconfdir}/vservers/.distributions/.common
906 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
907 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
908 %dir %{_libdir}/%{name}/distributions
909 %{_libdir}/%{name}/distributions/defaults
910 %dir %{_libdir}/%{name}/distributions/template
911 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
912 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
913 %dir %{_libdir}/%{name}/distributions/redhat
914 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
915 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
916 %attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
917 %{_libdir}/%{name}/vserver-setup.functions
918 %{_libdir}/%{name}/vserver-build.*
919 %{_libdir}/%{name}/defaults/fstab
920 %{_libdir}/%{name}/defaults/debootstrap.*
921 %{_libdir}/%{name}/defaults/vunify-exclude
922 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
923 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
924 %attr(755,root,root) %{_libdir}/%{name}/vclone
925 %attr(755,root,root) %{_libdir}/%{name}/vcopy
926 %attr(755,root,root) %{_libdir}/%{name}/vpkg
927 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
928 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
929 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
930 %attr(755,root,root) %{_libdir}/%{name}/vunify
931 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
932 %attr(755,root,root) %{_sbindir}/vapt-get
933 %attr(755,root,root) %{_sbindir}/vpoldek
934 %attr(755,root,root) %{_sbindir}/vrpm
935 %attr(755,root,root) %{_sbindir}/vyum
936 %{_mandir}/man8/vserver-build.8*
939 %defattr(644,root,root,755)
940 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
941 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
942 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
943 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
944 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
945 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
946 %attr(754,root,root) /etc/rc.d/init.d/vservers
949 %defattr(644,root,root,755)
950 %dir %{_sysconfdir}/vservices
951 %{_sysconfdir}/vservices/*
952 %dir %{_libdir}/%{name}/legacy
953 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
954 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
955 %attr(754,root,root) /etc/rc.d/init.d/v_*
956 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
957 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
958 %attr(755,root,root) %{_sbindir}/vserver-copy
959 %{_mandir}/man8/distrib-info.8*
960 %{_mandir}/man8/rebootmgr.8*
961 %{_mandir}/man8/vserver-copy.8*
963 %files -n vserver-distro-alpine
964 %defattr(644,root,root,755)
965 %dir %{_libdir}/%{name}/distributions/alpine
966 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
967 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
969 %files -n vserver-distro-centos
970 %defattr(644,root,root,755)
971 %{_libdir}/util-vserver/distributions/centos*
973 %files -n vserver-distro-debian
974 %defattr(644,root,root,755)
975 %dir %{_libdir}/%{name}/distributions/debian
976 %{_libdir}/%{name}/distributions/debian/debootstrap.script
977 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
978 %{_libdir}/%{name}/distributions/etch
979 %{_libdir}/%{name}/distributions/lenny
980 %{_libdir}/%{name}/distributions/sid
982 %files -n vserver-distro-fedora
983 %defattr(644,root,root,755)
984 %dir %{_sysconfdir}/vservers/.distributions/f7
985 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
986 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
987 %dir %{_sysconfdir}/vservers/.distributions/fc*
988 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
989 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
990 %{_libdir}/%{name}/distributions/f7
991 %{_libdir}/%{name}/distributions/f8
992 %{_libdir}/%{name}/distributions/fc*
994 %files -n vserver-distro-gentoo
995 %defattr(644,root,root,755)
996 %dir %{_libdir}/util-vserver/distributions/gentoo
997 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
998 %attr(755,root,root) %{_sbindir}/vdispatch-conf
999 %attr(755,root,root) %{_sbindir}/vemerge
1000 %attr(755,root,root) %{_sbindir}/vesync
1001 %attr(755,root,root) %{_sbindir}/vupdateworld
1003 %files -n vserver-distro-pld
1004 %defattr(644,root,root,755)
1005 %dir %{_libdir}/%{name}/distributions/pld
1006 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
1007 %dir %{_libdir}/%{name}/distributions/pld-*
1008 %{_libdir}/%{name}/distributions/pld-*/pkgs
1009 %{_libdir}/%{name}/distributions/pld-*/pubkeys
1010 %{_libdir}/%{name}/distributions/pld-*/rpm
1011 %attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
1012 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
1013 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
1014 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
1015 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
1016 %dir %{_sysconfdir}/vservers/.distributions/pld-th
1017 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
1018 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
1019 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
1020 %ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
1021 %dir %{_sysconfdir}/vservers/.distributions/pld-ti
1022 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
1023 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d
1024 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf
1027 %files -n vserver-distro-redhat
1028 %defattr(644,root,root,755)
1029 %dir %{_sysconfdir}/vservers/.distributions/rh*
1030 %dir %{_sysconfdir}/vservers/.distributions/rh*/apt
1031 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
1032 %{_libdir}/%{name}/distributions/rh*
1034 %files -n vserver-distro-suse
1035 %defattr(644,root,root,755)
1036 %dir %{_sysconfdir}/vservers/.distributions/suse*
1037 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
1038 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
1039 %{_libdir}/%{name}/distributions/suse*
1041 %files -n vserver-distro-ubuntu
1042 %defattr(644,root,root,755)
1043 %{_libdir}/%{name}/distributions/breezy
1044 %{_libdir}/%{name}/distributions/dapper
1045 %{_libdir}/%{name}/distributions/edgy
1046 %{_libdir}/%{name}/distributions/feisty
1047 %{_libdir}/%{name}/distributions/gutsy
1048 %{_libdir}/%{name}/distributions/hoary
1049 %{_libdir}/%{name}/distributions/warty