1 # TODO: verify systemd files
3 # - m68k and mips are the only not supported archs
6 %bcond_without dietlibc # don't use dietlibc (ask for troubles)
7 %bcond_without doc # don't build documentation which needed LaTeX
8 %bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
9 %bcond_with xalan # use the xalan xslt processor
10 %bcond_with legacy # build legacy 1.x utils
12 %define vproc_version 0.01
15 # pdflatex: refman: Invalid argument
19 # reqdb_pkg and reqdb_ver must match value from current rpm package in distro
21 %define reqdb_pkg db%{reqdb_ver}
24 Summary: Linux virtual server utilities
25 Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
28 Release: 1.%{snap}.%{rel}
30 Group: Applications/System
31 Source0: http://people.linux-vserver.org/~dhozac/t/uv-testing/%{name}-%{version}-%{snap}.tar.xz
32 # Source0-md5: 24eccf79dd1c1793818630fb0ac250a0
33 Source1: vprocunhide.init
34 Source2: vservers.init
35 Source3: vservers-legacy.init
36 Source4: rebootmgr.init
37 Source5: vservers.sysconfig
38 Source6: vservers-legacy.sysconfig
39 Source7: vrootdevices.init
40 Source8: vrootdevices.sysconfig
41 # A bit of documentation explaining package management
42 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
43 Source9: %{name}-pkgmgmt.txt
44 Source10: %{name}-initpost.sh
45 Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
46 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
47 Source12: %{name}-vhashify.cron
48 Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
49 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
50 Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
51 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
52 Source15: %{name}.init
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 >= 2.57
84 BuildRequires: automake >= 1:1.9
85 BuildRequires: beecrypt-devel
87 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.33-4}
88 BuildRequires: e2fsprogs-devel
89 BuildRequires: libstdc++-devel
90 BuildRequires: libtool >= 1.5.14
91 BuildRequires: pkgconfig
92 BuildRequires: python-devel >= 1:2.4
93 BuildRequires: python-modules >= 1:2.4
94 BuildRequires: rpm-pythonprov
95 BuildRequires: rpmbuild(macros) >= 1.647
96 BuildRequires: sed >= 4.0
97 BuildRequires: systemd-devel
98 BuildRequires: tar >= 1:1.22
101 BuildRequires: doxygen >= 1:1.7.3
102 BuildRequires: graphviz
103 BuildRequires: libxslt-progs
104 BuildRequires: python-devel
105 %if "%{pld_release}" != "th"
106 BuildRequires: tetex-fonts-jknappen
107 BuildRequires: tetex-format-pdflatex
108 BuildRequires: tetex-makeindex
109 BuildRequires: tetex-metafont
111 BuildRequires: texlive-fonts-rsfs
112 BuildRequires: texlive-fonts-type1-urw
113 BuildRequires: texlive-format-pdflatex
114 BuildRequires: texlive-latex-ams
115 BuildRequires: texlive-latex-extend
116 BuildRequires: texlive-latex-ucs
117 BuildRequires: texlive-latex-wasysym
118 BuildRequires: texlive-makeindex
119 BuildRequires: texlive-pdftex
120 BuildRequires: texlive-xetex
122 %{?with_xalan:BuildRequires: xalan-j}
124 Requires(post,preun): /sbin/chkconfig
125 Requires: %{name}-lib = %{version}-%{release}
130 Requires: mktemp >= 1.5-18
131 Requires: pld-release
132 Requires: rc-scripts >= 0.4.3.4
133 #Requires: rpm >= 5.4.10-36
135 Requires: uname(release) >= 2.6.27
136 Requires: util-linux >= 2.13
137 Requires: vserver-distro-pld = %{version}-%{release}
138 Suggests: %{reqdb_pkg}-utils
140 Obsoletes: util-vserver-build
141 Obsoletes: util-vserver-core
142 Obsoletes: util-vserver-init
143 Conflicts: poldek < 0.18.8-10
144 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
147 # binaries created with this option have broken segments when using dietlibc
148 %define filterout_ld -Wl,-z,relro
152 %define _usrbin /usr/bin
153 %define _usrsbin /usr/sbin
154 %define _usrlib /usr/lib
157 This package provides the components and a framework to setup virtual
158 servers. A virtual server runs inside a Linux server. It is
159 nevertheless highly independent. As such, you can run various services
160 with normal configuration. The various vservers can't interact with
161 each other and can't interact with services in the main server.
163 This requires a special kernel supporting the new new_s_context and
164 set_ipv4root system call.
166 This package contains utilities which are required to communicate with
167 the Linux-Vserver enabled kernel, utilities which assist in building
168 Vservers and SysV initscripts which start and stop Vservers and
171 %description -l pl.UTF-8
172 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
173 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
174 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
175 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
176 w interakcję z innymi ani z usługami na głównym serwerze.
178 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
179 new_s_context i set_ipv4root.
181 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
182 włączonym mechanizmem Linux-Vserver, narzędzia pomagające przy
183 budowaniu Vserwerów i skrypty inicjalizujące SysV uruchamiające i
184 zatrzymujące Vserwery oraz powiązane narzędzia.
187 Summary: Dynamic libraries for util-vserver
188 Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
192 util-vserver provides the components and a framework to setup virtual
193 servers. A virtual server runs inside a linux server. It is
194 nevertheless highly independent. As such, you can run various services
195 pith normal configuration. The various vservers can't interact with
196 each other and can't interact with services in the main server.
198 This package contains the shared libraries needed by all other
199 'util-vserver' subpackages.
201 %description lib -l pl.UTF-8
202 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
203 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
204 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
205 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
206 w interakcję z innymi ani z usługami na głównym serwerze.
208 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
209 podpakiety util-vserver.
212 Summary: Development files for Linux vserver libraries
213 Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
214 Group: Development/Libraries
215 Requires: %{name}-lib = %{version}-%{release}
218 This package contains the development files necessary for developing
219 programs which use vserver library.
221 %description devel -l pl.UTF-8
222 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
223 programów używających biblioteki vserver.
226 Summary: Static vserver library
227 Summary(pl.UTF-8): Biblioteka statyczna vservera
228 Group: Development/Libraries
229 Requires: %{name}-devel = %{version}-%{release}
232 This package contains the static version of vserver library.
234 %description static -l pl.UTF-8
235 Ten pakiet zawiera statyczną wersję biblioteki vservera.
238 Summary: Legacy utilities for util-vserver
239 Summary(pl.UTF-8): Stare narzędzia dla util-vserver
240 Group: Applications/System
241 Requires(post,preun): /sbin/chkconfig
242 Requires: %{name} = %{version}-%{release}
246 util-vserver provides the components and a framework to setup virtual
247 servers. A virtual server runs inside a linux server. It is
248 nevertheless highly independent. As such, you can run various services
249 with normal configuration. The various vservers can't interact with
250 each other and can't interact with services in the main server.
252 This package contains the tools which are needed to work with Vservers
253 having an old-style configuration.
255 %description legacy -l pl.UTF-8
256 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
257 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
258 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
259 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
260 w interakcję z innymi ani z usługami na głównym serwerze.
262 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
263 konfigurację w starym stylu.
265 %package -n python-util-vserver
266 Summary: Python interface to libutil-vserver library
267 Summary(pl.UTF-8): Pythonowy interfejs do biblioteki libutil-vserver
269 Group: Libraries/Python
271 %description -n python-util-vserver
272 Python interface to libutil-vserver library.
274 %description -n python-util-vserver -l pl.UTF-8
275 Pythonowy interfejs do biblioteki libutil-vserver.
277 %package -n vserver-distro-alpine
278 Summary: VServer build template for Alpine Linux
279 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
280 Group: Applications/System
281 Requires: %{name} = %{version}-%{release}
283 %description -n vserver-distro-alpine
284 VServer build template for Alpine Linux.
286 %description -n vserver-distro-alpine -l pl.UTF-8
287 Szablon budowania VServerów dla dystrybucji Alpine Linux.
289 %package -n vserver-distro-centos
290 Summary: VServer build template for CentOS
291 Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
292 Group: Applications/System
293 Requires: %{name} = %{version}-%{release}
294 Requires: vserver-distro-redhat = %{version}-%{release}
297 %description -n vserver-distro-centos
298 VServer build template for CentOS 4.2 and 5.
300 %description -n vserver-distro-centos -l pl.UTF-8
301 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
303 %package -n vserver-distro-debian
304 Summary: VServer build templates for Debian and Ubuntu
305 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu
306 Group: Applications/System
307 Requires: %{name} = %{version}-%{release}
308 Requires: debootstrap
310 Provides: vserver-distro-ubuntu
311 Obsoletes: vserver-distro-ubuntu
313 %description -n vserver-distro-debian
314 VServer build templates for Debian and Ubuntu.
316 %description -n vserver-distro-debian -l pl.UTF-8
317 Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
319 %package -n vserver-distro-fedora
320 Summary: VServer build templates for Fedora
321 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
322 Group: Applications/System
323 Requires: %{name} = %{version}-%{release}
327 Requires: vserver-distro-redhat = %{version}-%{release}
331 %description -n vserver-distro-fedora
332 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
334 %description -n vserver-distro-fedora -l pl.UTF-8
335 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
336 1,2,3,4,5,6 oraz Fedora 7.
338 %package -n vserver-distro-gentoo
339 Summary: VServer build template for Gentoo
340 Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
341 Group: Applications/System
342 Requires: %{name} = %{version}-%{release}
344 %description -n vserver-distro-gentoo
345 VServer build template for Gentoo.
347 %description -n vserver-distro-gentoo -l pl.UTF-8
348 Szablon budowania VServerów dla Gentoo.
350 %package -n vserver-distro-pld
351 Summary: VServer build templates for PLD Linux
352 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
353 Group: Applications/System
354 Requires: %{name} = %{version}-%{release}
355 Requires: /etc/pld-release
356 Requires: poldek >= 0.30
358 %description -n vserver-distro-pld
359 VServer build templates for PLD Linux.
361 %description -n vserver-distro-pld -l pl.UTF-8
362 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
364 %package -n vserver-distro-redhat
365 Summary: VServer build template for Red Hat Linux 9
366 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
367 Group: Applications/System
368 Requires: %{name} = %{version}-%{release}
374 %description -n vserver-distro-redhat
375 VServer build template for RedHat Linux 9.
377 %description -n vserver-distro-redhat -l pl.UTF-8
378 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
380 %package -n vserver-distro-suse
381 Summary: VServer build template for SuSE 9.1
382 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
383 Group: Applications/System
384 Requires: %{name} = %{version}-%{release}
390 %description -n vserver-distro-suse
391 VServer build template for SuSE Linux 9.1.
393 %description -n vserver-distro-suse -l pl.UTF-8
394 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
396 %package -n vserver-distro-scientificlinux
397 Summary: VServer build template for Scientific Linux
398 Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Scientific Linux
399 Group: Applications/System
400 Requires: %{name} = %{version}-%{release}
407 %description -n vserver-distro-scientificlinux
408 VServer build template for Scientific Linux.
410 %description -n vserver-distro-scientificlinux -l pl.UTF-8
411 Szablon do tworzenia VServerów dla dystrybucji Scientific Linux.
413 %package -n vserver-distro-tld
414 Summary: VServer build templates for Titanium Linux Distribution
415 Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Titanium Linux
416 Group: Applications/System
417 Requires: %{name} = %{version}-%{release}
418 Requires: poldek >= 0.30
420 %description -n vserver-distro-tld
421 VServer build templates for Titanium Linux Distribution.
423 %description -n vserver-distro-tld -l pl.UTF-8
424 Szablony do tworzenia VServerów dla dystrybucji Titanium Linux.
427 %setup -q -n %{name}-%{version}-%{snap} -a11
437 %{?with_no_dynamic_context:%patch10 -p1}
457 cp -p %{SOURCE9} package-management.txt
459 %{__sed} -i -e "s/@RPMDB@/%{reqdb_ver}/g" scripts/pkgmgmt
462 unset LD_SYMBOLIC_FUNCTIONS || :
465 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
472 --with-initrddir=/etc/rc.d/init.d \
474 --enable-apis=NOLEGACY \
475 --with-initscripts=sysv \
476 --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
478 IONICE=%{_usrbin}/ionice \
480 IPTABLES=%{_usrsbin}/iptables \
482 MODPROBE=/sbin/modprobe \
484 NAMEIF=/sbin/nameif \
486 RESTORE=/sbin/restore \
488 RSYNC=%{_usrbin}/rsync \
489 STRACE=%{_usrbin}/strace \
491 VCONFIG=/sbin/vconfig \
492 WGET=%{_usrbin}/wget \
497 %{?with_doc:%{__make} doc}
499 %{__make} -C vproc-%{vproc_version} \
501 CFLAGS="%{rpmcflags}"
504 rm -rf $RPM_BUILD_ROOT
505 install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
506 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/{apps/vdevmap,cgroup} \
507 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
509 %{__make} -j1 install install-distribution \
510 %if %{without legacy}
511 scripts_legacy_src_SCRPTS= \
512 scripts_legacy_gen_SCRPTS= \
513 scripts_legacy_src_PRGS= \
517 DESTDIR=$RPM_BUILD_ROOT
520 # fix breakage caused by too many substitiutions on x86
521 %{__sed} -i -e 's|%{_datadir}/%{name}/sigexec|%{_libdir}/%{name}/sigexec|g' \
522 $RPM_BUILD_ROOT%{_libdir}/%{name}/vshelper
525 # our libcgroup uses per subsystem mount
526 touch $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
528 chmod -R +rX $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/*
530 cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
531 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
532 cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
533 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers
534 sed 's|%{_usrlib}/util-vserver|%{_datadir}/%{name}|g' gentoo/bash-wrapper > \
535 $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
538 install -d $RPM_BUILD_ROOT%{_sysconfdir}/vservices
540 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
541 s=$(basename $i | sed s/v_//)
542 cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
543 # IP addresses/interfaces to bound $s service to
549 cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
550 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
551 install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
553 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
554 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
555 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/distrib-info.8
556 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/rebootmgr.8
557 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/vserver-copy.8
560 install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
561 cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
562 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld
563 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld/initpost
564 install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/tld/initpost
565 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/initpost
566 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/initpost
567 install -p vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
568 sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
569 chmod +x $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
571 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
572 02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
575 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/pubkeys
576 cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
578 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys
579 cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
581 %{__mv} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/{90-util-vserver,util-vserver}.conf
583 # set arch for pld-ac in pld.conf
584 %ifarch i586 i686 ppc sparc alpha athlon
585 %define ftp_arch %{_target_cpu}
588 %define ftp_arch amd64
591 %define ftp_arch i386
593 %ifarch pentium2 pentium3 pentium4
594 %define ftp_arch i686
596 %ifarch sparcv9 sparc64
597 %define ftp_arch sparc
599 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
601 # set arch for pld-th in pld.conf
602 %ifarch i486 i686 ppc sparc alpha athlon
603 %define ftp_arch %{_target_cpu}
606 %define ftp_arch x86_64
609 %define ftp_arch i486
611 %ifarch pentium2 pentium3 pentium4
612 %define ftp_arch i686
614 %ifarch sparcv9 sparc64
615 %define ftp_arch sparc
617 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
619 # set arch for tld in tld.conf
620 %ifarch i586 i686 ppc sparc alpha
621 %define ftp_arch %{_target_cpu}
624 %define ftp_arch x86_64
626 %ifarch athlon pentium2 pentium3 pentium4
627 %define ftp_arch i686
629 %{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/tld.conf
631 # current debootstrap link
632 echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.55_all.deb" \
633 > $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults/debootstrap.uri
635 install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
638 %py_comp $RPM_BUILD_ROOT%{py_sitedir}
639 %py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
641 %{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
643 # we have our own initscript which does the same
644 %{__rm} $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
645 %{__rm} $RPM_BUILD_ROOT%{_datadir}/util-vserver/vserver-init.functions
646 %{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
647 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
650 rm -rf $RPM_BUILD_ROOT
652 %triggerun -- util-vserver-init
653 # Prevent preun from util-vserver-init from working
654 chmod a-x /etc/rc.d/init.d/vprocunhide
655 chmod a-x /etc/rc.d/init.d/vrootdevices
656 chmod a-x /etc/rc.d/init.d/vservers
658 %triggerpostun -- util-vserver-init
659 # Restore what triggerun removed
660 chmod ug+x /etc/rc.d/init.d/vprocunhide
661 chmod ug+x /etc/rc.d/init.d/vrootdevices
662 chmod ug+x /etc/rc.d/init.d/vservers
663 /sbin/chkconfig --add vrootdevices
664 /sbin/chkconfig --add vprocunhide
665 /sbin/chkconfig --add vservers
666 if [ -f /etc/sysconfig/vrootdevices.rpmsave ]; then
667 cp -f /etc/sysconfig/vrootdevices{,.rpmnew}
668 mv -f /etc/sysconfig/vrootdevices{.rpmsave,}
670 if [ -f /etc/sysconfig/vservers.rpmsave ]; then
671 cp -f /etc/sysconfig/vservers{,.rpmnew}
672 mv -f /etc/sysconfig/vservers{.rpmsave,}
676 %{_sbindir}/setattr --barrier /vservers || :
677 /sbin/chkconfig --add util-vserver
678 /sbin/chkconfig --add vrootdevices
679 /sbin/chkconfig --add vprocunhide
680 /sbin/chkconfig --add vservers
681 if [ ! -f /var/lock/subsys/util-vserver ]; then
682 echo "Type \"/sbin/service util-vserver start\" to set up vshelper path" 1>&2
684 if [ ! -f /var/lock/subsys/vrootdevices ]; then
685 echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
687 if [ ! -f /var/lock/subsys/vprocunhide ]; then
688 echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
690 if [ ! -f /var/lock/subsys/vservers ]; then
691 echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
695 if [ "$1" = "0" ]; then
696 %service util-vserver stop
697 %service vservers stop
698 %service vprocunhide stop
699 %service vrootdevices stop
700 /sbin/chkconfig --del util-vserver
701 /sbin/chkconfig --del vservers
702 /sbin/chkconfig --del vprocunhide
703 /sbin/chkconfig --del vrootdevices
706 %post lib -p /sbin/ldconfig
707 %postun lib -p /sbin/ldconfig
710 /sbin/chkconfig --add rebootmgr
711 /sbin/chkconfig --add vservers-legacy
712 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
713 echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
715 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
716 echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
720 if [ "$1" = "0" ]; then
721 %service rebootmgr stop
722 %service vservers-legacy stop
723 /sbin/chkconfig --del rebootmgr
724 /sbin/chkconfig --del vservers-legacy
727 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
728 for D in ac th ti; do
729 P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
731 if [ -f $P/pld-source.conf.rpmsave ]; then
732 cp -f $P/repos.d/pld.conf{,.rpmnew}
733 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
739 %defattr(644,root,root,755)
740 %doc AUTHORS NEWS THANKS doc/intro.txt
741 %doc package-management.txt
742 %{?with_doc:%doc doc/*.html}
743 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
744 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
745 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
746 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
747 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
748 %attr(754,root,root) /etc/rc.d/init.d/util-vserver
749 %attr(754,root,root) /etc/rc.d/init.d/vservers
750 %dir %{_sysconfdir}/vservers
751 %dir %{_sysconfdir}/vservers/.defaults
752 %dir %{_sysconfdir}/vservers/.defaults/apps
753 %dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
754 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
755 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
756 %dir %{_sysconfdir}/vservers/.defaults/cgroup
757 %{_sysconfdir}/vservers/.defaults/cgroup/per-ss
758 %dir %{_sysconfdir}/vservers/.defaults/files
759 %{_sysconfdir}/vservers/.defaults/vdirbase
760 %{_sysconfdir}/vservers/.defaults/cachebase
761 %{_sysconfdir}/vservers/.defaults/run.rev
762 %dir %{_sysconfdir}/vservers/.distributions
763 %dir %{_sysconfdir}/vservers/.distributions/.common
764 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
765 %attr(755,root,root) /sbin/vshelper
766 %attr(755,root,root) %{_sbindir}/chbind
767 %attr(755,root,root) %{_sbindir}/chcontext
768 %attr(755,root,root) %{_sbindir}/chxid
769 %attr(755,root,root) %{_sbindir}/exec-cd
770 %attr(755,root,root) %{_sbindir}/lsxid
771 %attr(755,root,root) %{_sbindir}/naddress
772 %attr(755,root,root) %{_sbindir}/nattribute
773 %attr(755,root,root) %{_sbindir}/ncontext
774 %attr(755,root,root) %{_sbindir}/reducecap
775 %attr(755,root,root) %{_sbindir}/setattr
776 %attr(755,root,root) %{_sbindir}/showattr
777 %attr(755,root,root) %{_sbindir}/vapt-get
778 %attr(755,root,root) %{_sbindir}/vattribute
779 %attr(755,root,root) %{_sbindir}/vcontext
780 %attr(755,root,root) %{_sbindir}/vdevmap
781 %attr(755,root,root) %{_sbindir}/vdlimit
782 %attr(755,root,root) %{_sbindir}/vdu
783 %attr(755,root,root) %{_sbindir}/vkill
784 %attr(755,root,root) %{_sbindir}/vlimit
785 %attr(755,root,root) %{_sbindir}/vmemctrl
786 %attr(755,root,root) %{_sbindir}/vmount
787 %attr(755,root,root) %{_sbindir}/vnamespace
788 %attr(755,root,root) %{_sbindir}/vpoldek
789 %attr(755,root,root) %{_sbindir}/vproc
790 %attr(755,root,root) %{_sbindir}/vps
791 %attr(755,root,root) %{_sbindir}/vpstree
792 %attr(755,root,root) %{_sbindir}/vrpm
793 %attr(755,root,root) %{_sbindir}/vrsetup
794 %attr(755,root,root) %{_sbindir}/vsched
795 %attr(755,root,root) %{_sbindir}/vserver
796 %attr(755,root,root) %{_sbindir}/vserver-info
797 %attr(755,root,root) %{_sbindir}/vserver-stat
798 %attr(755,root,root) %{_sbindir}/vsomething
799 %attr(755,root,root) %{_sbindir}/vspace
800 %attr(755,root,root) %{_sbindir}/vtag
801 %attr(755,root,root) %{_sbindir}/vtop
802 %attr(755,root,root) %{_sbindir}/vuname
803 %attr(755,root,root) %{_sbindir}/vurpm
804 %attr(755,root,root) %{_sbindir}/vwait
805 %attr(755,root,root) %{_sbindir}/vyum
806 %dir %{_datadir}/%{name}
807 %dir %{_datadir}/%{name}/defaults
808 %{_datadir}/%{name}/defaults/fstab
809 %{_datadir}/%{name}/defaults/debootstrap.*
810 %{_datadir}/%{name}/defaults/vunify-exclude
811 %{_datadir}/%{name}/defaults/context.start
812 %{_datadir}/%{name}/defaults/environment
813 %{_datadir}/%{name}/defaults/h2ext.desc
814 %{_datadir}/%{name}/defaults/mtab
815 %{_datadir}/%{name}/defaults/vprocunhide-files
816 %dir %{_datadir}/%{name}/distributions
817 %{_datadir}/%{name}/distributions/defaults
818 %dir %{_datadir}/%{name}/distributions/template
819 %attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpost
820 %attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpre
821 %{_datadir}/%{name}/util-vserver-vars
822 %{_datadir}/%{name}/functions
823 %{_datadir}/%{name}/vserver-build.*
824 %{_datadir}/%{name}/vserver-setup.functions
825 %{_datadir}/%{name}/vserver.*
826 %dir %{_libdir}/%{name}
827 %{_libdir}/%{name}/FEATURES.txt
828 %{_libdir}/%{name}/util-vserver-vars
829 %attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
830 %attr(755,root,root) %{_libdir}/%{name}/capchroot
831 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
832 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
833 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
834 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
835 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
836 %attr(755,root,root) %{_libdir}/%{name}/exec-remount
837 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
838 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
839 %attr(755,root,root) %{_libdir}/%{name}/filetime
840 %attr(755,root,root) %{_libdir}/%{name}/h2ext
841 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
842 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
843 %attr(755,root,root) %{_libdir}/%{name}/lockfile
844 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
845 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
846 %attr(755,root,root) %{_libdir}/%{name}/readlink
847 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
848 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
849 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
850 %attr(755,root,root) %{_libdir}/%{name}/sigexec
851 %attr(755,root,root) %{_libdir}/%{name}/systemd-start
852 %attr(755,root,root) %{_libdir}/%{name}/systemd-stop
853 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
854 %attr(755,root,root) %{_libdir}/%{name}/tunctl
855 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
856 %attr(755,root,root) %{_libdir}/%{name}/vclone
857 %attr(755,root,root) %{_libdir}/%{name}/vcopy
858 %attr(755,root,root) %{_libdir}/%{name}/vhashify
859 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
860 %attr(755,root,root) %{_libdir}/%{name}/vpkg
861 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
862 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
863 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
864 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
865 %attr(755,root,root) %{_libdir}/%{name}/vurpm-worker
866 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
867 %attr(755,root,root) %{_libdir}/%{name}/vshelper
868 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
869 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
870 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
871 %attr(755,root,root) %{_libdir}/%{name}/vunify
872 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
873 %{_mandir}/man8/chbind.8*
874 %{_mandir}/man8/chcontext.8*
875 %{_mandir}/man8/reducecap.8*
876 %{_mandir}/man8/vps.8*
877 %{_mandir}/man8/vpstree.8*
878 %{_mandir}/man8/vserver-build.8*
879 %{_mandir}/man8/vserver-stat.8*
880 %{_mandir}/man8/vserver.8*
881 %{_mandir}/man8/vtop.8*
882 %attr(755,root,root) /lib/systemd/system-generators/systemd-vserver-generator
883 %{systemdunitdir}/util-vserver.service
884 %{systemdunitdir}/vprocunhide.service
885 %{systemdunitdir}/vserver.target
886 %{systemdunitdir}/vserver-mark@.target
887 %{systemdunitdir}/vserver@.service
888 %{_prefix}/lib/sysctl.d/90-util-vserver.conf
889 %{systemdtmpfilesdir}/%{name}.conf
890 %attr(000,root,root) %dir /vservers
892 %dir %{_localstatedir}/run/vservers
893 %dir %{_localstatedir}/run/vservers.rev
894 %dir %{_localstatedir}/run/vshelper
895 %dir /var/cache/vservers
896 %dir /var/cache/vservers/poldek
899 %defattr(644,root,root,755)
900 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
901 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
904 %defattr(644,root,root,755)
905 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
906 %attr(755,root,root) %{_libdir}/libvserver.so
907 %{_libdir}/libvserver.la
908 %{_includedir}/vserver.h
909 %{_pkgconfigdir}/util-vserver.pc
912 %defattr(644,root,root,755)
913 %{_libdir}/libvserver.a
917 %defattr(644,root,root,755)
918 %dir %{_sysconfdir}/vservices
919 %{_sysconfdir}/vservices/gated
920 %{_sysconfdir}/vservices/httpd
921 %{_sysconfdir}/vservices/named
922 %{_sysconfdir}/vservices/portmap
923 %{_sysconfdir}/vservices/sendmail
924 %{_sysconfdir}/vservices/smb
925 %{_sysconfdir}/vservices/sshd
926 %{_sysconfdir}/vservices/xinetd
927 %dir %{_libdir}/%{name}/legacy
928 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
929 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
930 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
931 %attr(754,root,root) /etc/rc.d/init.d/v_gated
932 %attr(754,root,root) /etc/rc.d/init.d/v_httpd
933 %attr(754,root,root) /etc/rc.d/init.d/v_named
934 %attr(754,root,root) /etc/rc.d/init.d/v_portmap
935 %attr(754,root,root) /etc/rc.d/init.d/v_sendmail
936 %attr(754,root,root) /etc/rc.d/init.d/v_smb
937 %attr(754,root,root) /etc/rc.d/init.d/v_sshd
938 %attr(754,root,root) /etc/rc.d/init.d/v_xinetd
939 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
940 %attr(755,root,root) %{_sbindir}/vserver-copy
941 %{_mandir}/man8/distrib-info.8*
942 %{_mandir}/man8/rebootmgr.8*
943 %{_mandir}/man8/vserver-copy.8*
946 %files -n python-util-vserver
947 %defattr(644,root,root,755)
948 %attr(755,root,root) %{py_sitedir}/_libvserver.so
949 %{py_sitedir}/libvserver.py[co]
951 %files -n vserver-distro-alpine
952 %defattr(644,root,root,755)
953 %dir %{_datadir}/%{name}/distributions/alpine
954 %attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpost
955 %attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpre
957 %files -n vserver-distro-centos
958 %defattr(644,root,root,755)
959 %{_datadir}/util-vserver/distributions/centos*
961 %files -n vserver-distro-debian
962 %defattr(644,root,root,755)
963 %dir %{_datadir}/%{name}/distributions/debian
964 %attr(755,root,root) %{_datadir}/%{name}/distributions/debian/initpost
965 %{_datadir}/%{name}/distributions/etch
966 %{_datadir}/%{name}/distributions/lenny
967 %{_datadir}/%{name}/distributions/sid
968 %{_datadir}/%{name}/distributions/squeeze
969 %{_datadir}/%{name}/distributions/wheezy
971 %files -n vserver-distro-fedora
972 %defattr(644,root,root,755)
973 %dir %{_sysconfdir}/vservers/.distributions/f7
974 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
975 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
976 %dir %{_sysconfdir}/vservers/.distributions/fc*
977 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
978 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
979 %{_datadir}/%{name}/distributions/f7
980 %{_datadir}/%{name}/distributions/f8
981 %{_datadir}/%{name}/distributions/f9
982 %{_datadir}/%{name}/distributions/f10
983 %{_datadir}/%{name}/distributions/f11
984 %{_datadir}/%{name}/distributions/f12
985 %{_datadir}/%{name}/distributions/f13
986 %{_datadir}/%{name}/distributions/f14
987 %{_datadir}/%{name}/distributions/fc1
988 %{_datadir}/%{name}/distributions/fc2
989 %{_datadir}/%{name}/distributions/fc3
990 %{_datadir}/%{name}/distributions/fc4
991 %{_datadir}/%{name}/distributions/fc5
992 %{_datadir}/%{name}/distributions/fc6
994 %files -n vserver-distro-gentoo
995 %defattr(644,root,root,755)
996 %dir %{_datadir}/util-vserver/distributions/gentoo
997 %attr(755,root,root) %{_datadir}/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 %{_datadir}/%{name}/distributions/pld
1006 %attr(755,root,root) %{_datadir}/%{name}/distributions/pld/initpost
1007 %dir %{_datadir}/%{name}/distributions/pld-*
1008 %{_datadir}/%{name}/distributions/pld-*/pkgs
1009 %{_datadir}/%{name}/distributions/pld-*/pubkeys
1010 %{_datadir}/%{name}/distributions/pld-*/rpm
1011 %attr(755,root,root) %{_datadir}/%{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
1021 %files -n vserver-distro-redhat
1022 %defattr(644,root,root,755)
1023 %dir %{_sysconfdir}/vservers/.distributions/rh9
1024 %dir %{_sysconfdir}/vservers/.distributions/rh9/apt
1025 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
1026 %{_datadir}/%{name}/distributions/rh9
1027 %dir %{_datadir}/%{name}/distributions/redhat
1028 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initctl
1029 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpost
1030 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpre
1031 %attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/rc.sysinit
1033 %files -n vserver-distro-suse
1034 %defattr(644,root,root,755)
1035 %dir %{_sysconfdir}/vservers/.distributions/suse*
1036 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
1037 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
1038 %{_datadir}/%{name}/distributions/suse*
1040 %files -n vserver-distro-scientificlinux
1041 %defattr(644,root,root,755)
1042 %dir %{_datadir}/%{name}/distributions/sl6
1043 %attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpost
1044 %attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpre
1045 %{_datadir}/%{name}/distributions/sl6/pkgs
1046 %{_datadir}/%{name}/distributions/sl6/yum
1047 %{_datadir}/%{name}/distributions/sl6/yum.repos.d
1049 %files -n vserver-distro-tld
1050 %defattr(644,root,root,755)
1051 %dir %{_datadir}/%{name}/distributions/tld
1052 %attr(755,root,root) %{_datadir}/%{name}/distributions/tld/initpost
1053 %{_datadir}/%{name}/distributions/tld/pkgs
1054 %{_datadir}/%{name}/distributions/tld/rpm
1055 %dir %{_sysconfdir}/vservers/.distributions/tld
1056 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek
1057 %dir %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d
1058 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/*.conf