+# TODO
+# - somewhy empty /var/cache/vservers is needed when building pld vserver
+# - make build create /dev/std{in,out,err} links
+#
+# m68k and mips are the only not supported archs
#
# Conditional build:
-%bcond_with dietlibc # use dietlibc instead of glibc
-%bcond_without doc # don't build documentation which needed LaTeX
-%bcond_with xalan # use the xalan xslt processor
-
+%bcond_without dietlibc # don't use dietlibc (ask for troubles)
+%bcond_without doc # don't build documentation which needed LaTeX
+%bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
+%bcond_with xalan # use the xalan xslt processor
+#
+%define _vproc_version 0.01
+# diet compile fails with ccache in %{__cc}
+%undefine with_ccache
+#
Summary: Linux virtual server utilities
Summary(pl): Narzêdzia dla linuksowych serwerów wirtualnych
Name: util-vserver
-Version: 0.30.207
-Release: 1.6
+Version: 0.30.210
+Release: 10
License: GPL
-Group: Base
+Group: Applications/System
Source0: http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%{name}-%{version}.tar.bz2
-# Source0-md5: 1c8457a687643ae8a7b1f1d34ebbdd68
+# Source0-md5: 1e8fff7cb6246d21ed029f082123019b
Source1: vprocunhide.init
-Source2: vservers-default.init
+Source2: vservers.init
Source3: vservers-legacy.init
Source4: rebootmgr.init
-Source5: vservers-default.sysconfig
+Source5: vservers.sysconfig
Source6: vservers-legacy.sysconfig
-Patch0: %{name}-no-kernel-includes.patch
-Patch1: %{name}-vsysvwrapper.patch
-Patch2: %{name}-build-poldek.patch
+Source7: vrootdevices.init
+Source8: vrootdevices.sysconfig
+# A bit of documentation explaining package management
+# http://www.paul.sladen.org/vserver/archives/200505/0078.html
+Source9: %{name}-pkgmgmt.txt
+Source10: %{name}-initpost.sh
+Source11: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{_vproc_version}.tar.bz2
+# Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
+Source12: %{name}-vhashify.cron
+Patch0: %{name}-vsysvwrapper.patch
+Patch1: %{name}-pld.patch
+Patch2: %{name}-vrpm.patch
+Patch3: %{name}-include.patch
+Patch4: %{name}-m4-diet.patch
+Patch5: %{name}-cpuset.patch
+Patch6: %{name}-build-umask.patch
+Patch7: %{name}-utmpx.patch
+Patch8: %{name}-vprocunhide.patch
+Patch9: %{name}-dev.patch
+Patch10: %{name}-no-dynamic-ctx.patch
+Patch11: %{name}-more-ip.patch
+Patch12: http://daniel.hozac.com/vserver/util-vserver/%{name}-0.30.210-namespace-cleanup.patch
+Patch13: http://daniel.hozac.com/vserver/util-vserver/%{name}-0.30.210-delete.patch
+Patch14: http://daniel.hozac.com/vserver/util-vserver/%{name}-0.30.210-shiny10.patch
+Patch15: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
URL: http://savannah.nongnu.org/projects/util-vserver/
+BuildRequires: autoconf
+BuildRequires: automake >= 1.9
BuildRequires: beecrypt-devel
-%{?with_dietlibc:BuildRequires: dietlibc >= 0:0.25}
-BuildRequires: doxygen
+%{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
+BuildRequires: e2fsprogs-devel
BuildRequires: libstdc++-devel
-%{?with_doc:BuildRequires: libxslt-progs}
-%{?with_doc:BuildRequires: tetex-format-pdflatex}
-%{?with_doc:BuildRequires: tetex-makeindex}
-BuildRequires: vlan
+BuildRequires: libtool >= 1.5.14
+%ifarch %{x8664}
+BuildRequires: sed >= 4.0
+%endif
+BuildRequires: rpmbuild(macros) >= 1.268
%if %{with doc}
+BuildRequires: doxygen
+BuildRequires: graphviz
+BuildRequires: libxslt-progs
+BuildRequires: tetex-format-pdflatex
+BuildRequires: tetex-makeindex
+# To be removed when tetex-format-pdflatex, tetex-pdftex...
+# ...and graphviz packages get fixed
+BuildRequires: ghostscript
+BuildRequires: ghostscript-fonts-std
+BuildRequires: tetex-fonts-jknappen
+BuildRequires: tetex-metafont
%{?with_xalan:BuildRequires: xalan-j}
%endif
-PreReq: rc-scripts
Requires(post,preun): /sbin/chkconfig
+Requires: %{name}-lib = %{version}-%{release}
+Requires: issue
+Requires: rc-scripts
+Requires: util-linux
+Obsoletes: util-vserver-core
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# for adapter
+%define _usrbin /usr/bin
+%define _usrsbin /usr/sbin
+%define _usrlib /usr/lib
+
%description
This package provides the components and a framework to setup virtual
servers. A virtual server runs inside a Linux server. It is
This requires a special kernel supporting the new new_s_context and
set_ipv4root system call.
+This package contains utilities which are required to communicate with
+the Linux-Vserver enabled kernel.
+
%description -l pl
Ten pakiet dostarcza sk³adniki i szkielet do tworzenia wirtualnych
serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
Wymaga to specjalnego j±dra obs³uguj±cego nowe wywo³ania systemowe
new_s_context i set_ipv4root.
+Ten pakiet zawiera narzêdzia wymagane do komunikacji z j±drem z
+w³±czonym mechanizmem Linux-Vserver.
+
%package devel
Summary: Development files for Linux vserver libraries
Summary(pl): Pliki programistyczne dla bibliotek linuksowego vserwera
Group: Development/Libraries
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}-lib = %{version}-%{release}
%description devel
This package contains the development files necessary for developing
util-vserver provides the components and a framework to setup virtual
servers. A virtual server runs inside a linux server. It is
nevertheless highly independent. As such, you can run various services
-with normal configuration. The various vservers can't interact with
+pith normal configuration. The various vservers can't interact with
each other and can't interact with services in the main server.
This package contains the shared libraries needed by all other
Ten pakiet zawiera biblioteki wspó³dzielone wymagane przez wszystkie
podpakiety util-vserver.
-%package core
-Summary: The core-utilities for util-vserver
-Summary(pl): Podstawowe narzêdzia dla util-vserver
+%package build
+Summary: Tools which can be used to build vservers
+Summary(pl): Narzêdzia do budowania vserverów
Group: Applications/System
-Requires: util-linux
+Requires: %{name} = %{version}-%{release}
+Requires: /etc/pld-release
+Requires: e2fsprogs
+Requires: which
+Conflicts: poldek < 0.18.8-10
-%description core
+%description build
util-vserver provides the components and a framework to setup virtual
servers. A virtual server runs inside a linux server. It is
nevertheless highly independent. As such, you can run various services
with normal configuration. The various vservers can't interact with
each other and can't interact with services in the main server.
-This package contains utilities which are required to communicate with
-the Linux-Vserver enabled kernel.
+This package contains utilities which assist in building Vservers.
-%description core -l pl
+%description build -l pl
util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
-Ten pakiet zawiera narzêdzia wymagane do komunikacji z j±drem z
-w³±czonym mechanizmem Linux-Vserver.
+Ten pakiet zawiera narzêdzia pomagaj±ce przy budowaniu Vserwerów.
-%package build
-Summary: Tools which can be used to build vservers
-Summary(pl): Narzêdzia do budowania vserverów
+%package -n vserver-distro-fedora
+Summary: VServer build templates for Fedora Core
+Summary(pl): Szablony do tworzenia VServerów dla dystrybucji Fedora Core
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: binutils
+Requires: e2fsprogs
+Requires: rpm
+Requires: tar
+Requires: wget
+
+%description -n vserver-distro-fedora
+VServer build templates for Fedora Core 1,2,3,4.
+
+%description -n vserver-distro-fedora -l pl
+Szablony do tworzenia VServerów dla dystrybucji Fedora Core 1,2,3,4.
+
+%package -n vserver-distro-redhat
+Summary: VServer build template for Red Hat Linux 9
+Summary(pl): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
Group: Applications/System
+Requires: %{name} = %{version}-%{release}
Requires: binutils
Requires: e2fsprogs
Requires: rpm
Requires: tar
Requires: wget
+
+%description -n vserver-distro-redhat
+VServer build template for RedHat Linux 9.
+
+%description -n vserver-distro-redhat -l pl
+Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
+
+%package -n vserver-distro-suse
+Summary: VServer build template for SuSE 9.1
+Summary(pl): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
+Group: Applications/System
Requires: %{name} = %{version}-%{release}
+Requires: binutils
+Requires: e2fsprogs
+Requires: rpm
+Requires: tar
+Requires: wget
-%description build
-util-vserver provides the components and a framework to setup virtual
-servers. A virtual server runs inside a linux server. It is
-nevertheless highly independent. As such, you can run various services
-with normal configuration. The various vservers can't interact with
-each other and can't interact with services in the main server.
+%description -n vserver-distro-suse
+VServer build template for SuSE Linux 9.1.
-This package contains utilities which assist in building Vservers.
+%description -n vserver-distro-suse -l pl
+Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
-%description build -l pl
-util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
-serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
-jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
-ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
-w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
+%package -n vserver-distro-centos
+Summary: VServer build template for CentOS 4.2
+Summary(pl): Szablon budowania VServera dla CentOS 4.2
+Group: Applications/System
+Requires: util-vserver-build
+Requires: yum
-Ten pakiet zawiera narzêdzia pomagaj±ce przy budowaniu Vserwerów.
+%description -n vserver-distro-centos
+VServer build template for CentOS 4.2.
+
+%description -n vserver-distro-centos -l pl
+Szablon budowania VServera dla CentOS 4.2.
%package init
Summary: initscripts for vserver
Summary(pl): Skrypty inicjalizuj±ce dla vserwera
-Group: Base
+Group: Applications/System
Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
-Requires: %{name}-core = %{version}-%{release}
Requires: diffutils
Requires: make
Requires: rc-scripts
Group: Applications/System
Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
-Requires: %{name}-core = %{version}-%{release}
Requires: rc-scripts
%description legacy
Ten pakiet zawiera narzêdzia potrzebne do pracy z Vserwerami maj±cymi
konfiguracjê w starym stylu.
-%package -n vserver-dev
-Summary: /dev entries for systems in Vservers
-Summary(pl): Pliki specjalne /dev/* dla systemów w Vserwerach
-Group: Base
-PreReq: setup >= 2.4.1-2
-Provides: dev = 2.9.0-19
-Provides: devfs
-AutoReqProv: no
-
-%description -n vserver-dev
-Unix and unix like systems (including Linux) use file system entries
-to represent devices attached to the machine. All of these entries are
-in the /dev tree (though they don't have to be), and this package
-contains only entries needed for a system running inside Vserver.
-
-DO NOT install this package for a normal system!
-
-%description -n vserver-dev -l pl
-Wszystkie systemy klasy unices, w tym Linux, u¿ywaj± plików do
-przedstawiania urz±dzeñ pod³±czonych do komputera. Wszystkie te pliki
-znajduj± siê zwykle w katalogu /dev. Pakiet ten wy³±cznie te pliki
-specjalne które s± potrzebne do uruchomienia systemu w Vserwerze.
-
-NIE INSTALUJ tego pakietu na zwyk³ym systemie!
-
%prep
-%setup -q
+%setup -q -a11
%patch0 -p1
%patch1 -p1
%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%{?with_no_dynamic_context:%patch10 -p1}
+%patch11 -p1
+%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
+
+install %{SOURCE9} package-management.txt
+
+cp -a compat.h vserver-compat.h
%build
+%if %{with dietlibc}
+CFLAGS="%{rpmcflags} -D__GLIBC__"
+%endif
%{__aclocal} -I m4
%{__automake}
+%{__autoconf}
%configure \
--with-initrddir=/etc/rc.d/init.d \
--enable-release \
+ --enable-apis=NOLEGACY \
%{?with_dietlibc:--enable-dietlibc} \
%{!?with_dietlibc:--disable-dietlibc} \
- IPTABLES=/usr/sbin/iptables \
- NAMEIF=/sbin/nameif \
+ MKTEMP=/bin/mktemp \
MOUNT=/bin/mount \
- UMOUNT=/bin/umount
+ PS=/bin/ps \
+ UMOUNT=/bin/umount \
+ IP=/sbin/ip \
+ IPTABLES=%{_usrsbin}/iptables \
+ MODPROBE=/sbin/modprobe \
+ NAMEIF=/sbin/nameif \
+ RMMOD=/sbin/rmmod \
+ VCONFIG=/sbin/vconfig \
+ WGET=%{_usrbin}/wget \
%{__make} all
%{?with_doc:%{__make} doc}
+%{__make} -C vproc-%{_vproc_version} \
+ CC="%{__cc}" \
+ CFLAGS="%{rpmcflags}"
+
%install
rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d},/dev/pts}
+install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d,cron.d},/dev/pts} \
+ $RPM_BUILD_ROOT{%{_sysconfdir}/vservices,/vservers/.pkg}
%{__make} install install-distribution \
DESTDIR=$RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT/etc/vservices
-install -d $RPM_BUILD_ROOT/vservers/.pkg
-ln -s /vservers $RPM_BUILD_ROOT%{_sysconfdir}/vservers/vdirbase
-ln -s %{_localstatedir}/run/vservers.rev $RPM_BUILD_ROOT%{_sysconfdir}/vservers/run.rev
-
-install -d $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld2.0
-ln -s pld2.0 $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld1.99
+cp -a vserver-compat.h $RPM_BUILD_ROOT%{_includedir}
-install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld2.0/pkgs
-ln -s pld2.0 $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld1.99
+chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
-cat > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld2.0/pkgs/01 << EOF
-vserver-basesystem
-glibc
-EOF
+ln -s /vservers $RPM_BUILD_ROOT%{_sysconfdir}/vservers/vdirbase
+ln -s %{_localstatedir}/run/vservers.rev $RPM_BUILD_ROOT%{_sysconfdir}/vservers/run.rev
for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
s=`basename $i | sed s/v_//`
- cat >$RPM_BUILD_ROOT/etc/vservices/$s << EOF
+ cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
# IP addresses/interfaces to bound $s service to
#IP=10.0.0.1
#IP=eth0
EOF
done
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
-install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers-default
+sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
+ $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
+sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
+ $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
+sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
+ $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
+sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
+ $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
+sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
+ $RPM_BUILD_ROOT/etc/sysconfig/vservers
+
install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
-ln -sf /dev/null $RPM_BUILD_ROOT/dev/initctl
+install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
+install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
+install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
+install vproc-%{_vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
+install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
+
+cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
+02 2 * * 0 root %{_libdir}/%{name}/vhashify.cron
+EOF
+
+ln -sf null $RPM_BUILD_ROOT/dev/initctl
+
+%ifarch %{x8664}
+sed -i 's/^glibc$/glibc64/' $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pkgs/01
+sed -i 's/glibc\-\[0\-9\]\*\.rpm/glibc64\-\[0\-9\]\*\.rpm/' $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/rpmlist.d/00.lst
+%endif
+
+# baggins check this: needed but seems unused
+install -d $RPM_BUILD_ROOT/var/cache/vservers
%clean
rm -rf $RPM_BUILD_ROOT
%postun lib -p /sbin/ldconfig
%post init
-/sbin/chkconfig --add vservers-default
+/sbin/chkconfig --add vrootdevices
/sbin/chkconfig --add vprocunhide
-#if [ -r /var/lock/subsys/vprocunhide ]; then
-# /etc/rc.d/init.d/vprocunhide restart >&2
-#fi
-#if [ -r /var/lock/subsys/vservers-default ]; then
-# /etc/rc.d/init.d/vservers-default restart >&2
-#fi
+/sbin/chkconfig --add vservers
+if [ ! -f /var/lock/subsys/vrootdevices ]; then
+ echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
+fi
+if [ ! -f /var/lock/subsys/vprocunhide ]; then
+ echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
+fi
+if [ ! -f /var/lock/subsys/vservers ]; then
+ echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
+fi
%preun init
if [ "$1" = "0" ]; then
- if [ -r /var/lock/subsys/vprocunhide ]; then
- /etc/rc.d/init.d/vprocunhide stop >&2
- fi
- if [ -r /var/lock/subsys/vservers-default ]; then
- /etc/rc.d/init.d/vservers-default stop >&2
- fi
- /sbin/chkconfig --del vprocunhide
- /sbin/chkconfig --del vservers-default
+ %service vservers stop
+ %service vprocunhide stop
+ %service vrootdevices stop
+ /sbin/chkconfig --del vservers
+ /sbin/chkconfig --del vprocunhide
+ /sbin/chkconfig --del vrootdevices
fi
%post legacy
/sbin/chkconfig --add rebootmgr
/sbin/chkconfig --add vservers-legacy
-#if [ -r /var/lock/subsys/rebootmgr ] ; then
-# /etc/rc.d/init.d/rebootmgr restart >&2
-#fi
-#if [ -r /var/lock/subsys/vservers-legacy ] ; then
-# /etc/rc.d/init.d/vservers-legacy restart >&2
-#fi
+if [ ! -f /var/lock/subsys/rebootmgr ] ; then
+ echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
+fi
+if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
+ echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
+fi
%preun legacy
if [ "$1" = "0" ]; then
- if [ -r /var/lock/subsys/rebootmgr ] ; then
- /etc/rc.d/init.d/rebootmgr stop >&2
- fi
- if [ -r /var/lock/subsys/vservers-legacy ] ; then
- /etc/rc.d/init.d/vservers-legacy stop >&2
- fi
+ %service rebootmgr stop
+ %service vservers-legacy stop
/sbin/chkconfig --del rebootmgr
/sbin/chkconfig --del vservers-legacy
fi
+%triggerpostun build -- %{name}-build < 0.30.210-5.2
+if [ -f /etc/vservers/.distributions/pld2.0/poldek/poldek.conf.rpmsave ]; then
+ mv -f /etc/vservers/.distributions/{pld2.0,pld-ac}/poldek/poldek.conf.rpmsave
+fi
+
+# kill old vserver specific package ignores which are no longer needed
+l=`egrep '^ignore.*(basesystem|SysVinit|rc-scripts)' /etc/vservers/*/apps/pkgmgmt/base/poldek/etc/poldek.conf -l 2>/dev/null`
+if [ "$l" ]; then
+ %{__sed} -i -e '/^ignore/s, \(basesystem\|SysVinit\|rc-scripts\),,g' $l
+fi
+
%files
%defattr(644,root,root,755)
%doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
%{_sysconfdir}/vservers/vdirbase
%{_sysconfdir}/vservers/run.rev
/sbin/vshelper
+%attr(755,root,root) %{_sbindir}/chbind
+%attr(755,root,root) %{_sbindir}/chcontext
+%attr(755,root,root) %{_sbindir}/chxid
%attr(755,root,root) %{_sbindir}/exec-cd
+%attr(755,root,root) %{_sbindir}/lsxid
+%attr(755,root,root) %{_sbindir}/reducecap
+%attr(755,root,root) %{_sbindir}/setattr
+%attr(755,root,root) %{_sbindir}/showattr
+%attr(755,root,root) %{_sbindir}/vattribute
+%attr(755,root,root) %{_sbindir}/vcontext
+%attr(755,root,root) %{_sbindir}/vdlimit
+%attr(755,root,root) %{_sbindir}/vnamespace
+%attr(755,root,root) %{_sbindir}/vkill
+%attr(755,root,root) %{_sbindir}/vlimit
%attr(755,root,root) %{_sbindir}/vdu
+%attr(755,root,root) %{_sbindir}/vproc
%attr(755,root,root) %{_sbindir}/vps
%attr(755,root,root) %{_sbindir}/vpstree
+%attr(755,root,root) %{_sbindir}/vrsetup
+%attr(755,root,root) %{_sbindir}/vsched
%attr(755,root,root) %{_sbindir}/vserver
+%attr(755,root,root) %{_sbindir}/vserver-info
%attr(755,root,root) %{_sbindir}/vserver-stat
%attr(755,root,root) %{_sbindir}/vsomething
%attr(755,root,root) %{_sbindir}/vtop
+%attr(755,root,root) %{_sbindir}/vuname
+%attr(755,root,root) %{_sbindir}/vwait
%dir %{_libdir}/%{name}
%dir %{_libdir}/%{name}/defaults
+%{_libdir}/%{name}/FEATURES.txt
+%{_libdir}/%{name}/util-vserver-vars
%{_libdir}/%{name}/defaults/*
%attr(755,root,root) %{_libdir}/%{name}/capchroot
%attr(755,root,root) %{_libdir}/%{name}/chain-echo
%attr(755,root,root) %{_libdir}/%{name}/check-unixfile
-%attr(755,root,root) %{_libdir}/%{name}/chroot-*
+%attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
+%attr(755,root,root) %{_libdir}/%{name}/chroot-sh
%attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
%attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
%attr(755,root,root) %{_libdir}/%{name}/filetime
%attr(755,root,root) %{_libdir}/%{name}/start-vservers
%attr(755,root,root) %{_libdir}/%{name}/vprocunhide
%{_libdir}/%{name}/vserver.*
+%{_libdir}/%{name}/vserver-setup.*
+%attr(755,root,root) %{_libdir}/%{name}/vserver-build
+%{_libdir}/%{name}/vserver-build.*
%attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
+%attr(755,root,root) %{_libdir}/%{name}/vhashify
+%attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
%attr(755,root,root) %{_libdir}/%{name}/vshelper
%attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
-%{_mandir}/man8/*
-%attr(0,root,root) %dir /vservers
+%{_mandir}/man8/chbind.8*
+%{_mandir}/man8/chcontext.8*
+%{_mandir}/man8/reducecap.8*
+%{_mandir}/man8/vps.8*
+%{_mandir}/man8/vpstree.8*
+%{_mandir}/man8/vserver-stat.8*
+%{_mandir}/man8/vserver.8*
+%{_mandir}/man8/vtop.8*
+%attr(000,root,root) %dir /vservers
%attr(755,root,root) %dir /vservers/.pkg
%dir %{_localstatedir}/run/vservers
%dir %{_localstatedir}/run/vservers.rev
%dir %{_localstatedir}/run/vshelper
+%dir /var/cache/vservers
%files devel
%defattr(644,root,root,755)
%{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
%attr(755,root,root) %{_libdir}/lib*.so
%{_libdir}/lib*.la
-%{_includedir}/vserver.h
+%{_includedir}/vserver*.h
%{_pkgconfigdir}/*.pc
%files static
%files init
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-default
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
+%config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
%attr(754,root,root) /etc/rc.d/init.d/vprocunhide
-%attr(754,root,root) /etc/rc.d/init.d/vservers-default
-
-%files core
-%defattr(644,root,root,755)
-%dir %{_libdir}/%{name}
-%{_libdir}/%{name}/FEATURES.txt
-%{_libdir}/%{name}/util-vserver-vars
-%attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
-%attr(755,root,root) %{_sbindir}/chbind
-%attr(755,root,root) %{_sbindir}/chcontext
-%attr(755,root,root) %{_sbindir}/chxid
-%attr(755,root,root) %{_sbindir}/lsxid
-%attr(755,root,root) %{_sbindir}/reducecap
-%attr(755,root,root) %{_sbindir}/setattr
-%attr(755,root,root) %{_sbindir}/showattr
-%attr(755,root,root) %{_sbindir}/vattribute
-%attr(755,root,root) %{_sbindir}/vcontext
-%attr(755,root,root) %{_sbindir}/vdlimit
-%attr(755,root,root) %{_sbindir}/vnamespace
-%attr(755,root,root) %{_sbindir}/vkill
-%attr(755,root,root) %{_sbindir}/vlimit
-%attr(755,root,root) %{_sbindir}/vrsetup
-%attr(755,root,root) %{_sbindir}/vsched
-%attr(755,root,root) %{_sbindir}/vserver-info
-%attr(755,root,root) %{_sbindir}/vuname
-%{_mandir}/man8/chbind*
-%{_mandir}/man8/chcontext*
-%{_mandir}/man8/reducecap*
+%attr(754,root,root) /etc/rc.d/init.d/vrootdevices
+%attr(754,root,root) /etc/rc.d/init.d/vservers
%files build
%defattr(644,root,root,755)
-%doc contrib/yum*.patch
-%dir %{_sysconfdir}/vservers/.distributions
-%{_sysconfdir}/vservers/.distributions/.common
-%{_sysconfdir}/vservers/.distributions/*
+%doc contrib/yum*.patch package-management.txt
%dir %{_sysconfdir}/vservers/.defaults/apps/vunify
%dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
+%dir %{_sysconfdir}/vservers/.distributions
+%dir %{_sysconfdir}/vservers/.distributions/.common
+%dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/*.conf
%attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
%dir %{_libdir}/%{name}/distributions
-%{_libdir}/%{name}/distributions/*
+%attr(-,root,root) %{_libdir}/%{name}/distributions/defaults
+%attr(-,root,root) %{_libdir}/%{name}/distributions/pld*
+%dir %{_libdir}/%{name}/distributions/template
+%attr(755,root,root) %{_libdir}/%{name}/distributions/template/init*
+%attr(-,root,root) %{_libdir}/%{name}/distributions/redhat
%{_libdir}/%{name}/vserver-build.*
%{_libdir}/%{name}/vserver-setup.functions
%{_libdir}/%{name}/defaults/fstab
%{_libdir}/%{name}/defaults/vunify-exclude
%attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
%attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
-%attr(755,root,root) %{_libdir}/%{name}/vbuild
-%attr(755,root,root) %{_libdir}/%{name}/vcheck
%attr(755,root,root) %{_libdir}/%{name}/vcopy
-%attr(755,root,root) %{_libdir}/%{name}/vhashify
%attr(755,root,root) %{_libdir}/%{name}/vpkg
%attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
%attr(755,root,root) %{_libdir}/%{name}/vrpm-*
%attr(755,root,root) %{_libdir}/%{name}/vunify
%attr(755,root,root) %{_libdir}/%{name}/vyum-worker
%attr(755,root,root) %{_sbindir}/vapt-get
-%attr(755,root,root) %{_sbindir}/vfiles
%attr(755,root,root) %{_sbindir}/vpoldek
%attr(755,root,root) %{_sbindir}/vrpm
%attr(755,root,root) %{_sbindir}/vyum
-%{_mandir}/man8/vserver-copy*
+
+%files -n vserver-distro-fedora
+%defattr(644,root,root,755)
+%dir %{_sysconfdir}/vservers/.distributions/fc*
+%dir %{_sysconfdir}/vservers/.distributions/fc*/apt
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
+%{_libdir}/%{name}/distributions/fc*
+
+%files -n vserver-distro-redhat
+%defattr(644,root,root,755)
+%dir %{_sysconfdir}/vservers/.distributions/rh*
+%dir %{_sysconfdir}/vservers/.distributions/rh*/apt
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
+%{_libdir}/%{name}/distributions/rh*
+
+%files -n vserver-distro-suse
+%defattr(644,root,root,755)
+%dir %{_sysconfdir}/vservers/.distributions/suse*
+%dir %{_sysconfdir}/vservers/.distributions/suse*/apt
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
+%{_libdir}/%{name}/distributions/suse*
+
+%files -n vserver-distro-centos
+%defattr(644,root,root,755)
+%{_libdir}/util-vserver/distributions/centos42
%files legacy
%defattr(644,root,root,755)
-%dir /etc/vservices
-/etc/vservices/*
+%dir %{_sysconfdir}/vservices
+%{_sysconfdir}/vservices/*
%dir %{_libdir}/%{name}/legacy
%attr(755,root,root) %{_libdir}/%{name}/legacy/*
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
%attr(754,root,root) /etc/rc.d/init.d/rebootmgr
%attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
%attr(755,root,root) %{_sbindir}/vserver-copy
-%{_mandir}/man8/distrib-info*
-%{_mandir}/man8/rebootmgr*
-%{_mandir}/man8/vps.*
-
-%files -n vserver-dev
-%defattr(644,root,root,755)
-%dir /dev/pts
-%dev(c,1,7) %attr(666,root,root) /dev/full
-%dev(c,1,3) %attr(666,root,root) /dev/null
-%dev(c,5,2) %attr(666,root,root) /dev/ptmx
-%dev(c,1,8) %attr(644,root,root) /dev/random
-%dev(c,5,0) %attr(666,root,root) /dev/tty
-%dev(c,1,9) %attr(644,root,root) /dev/urandom
-%dev(c,1,5) %attr(666,root,root) /dev/zero
-/dev/initctl
+%{_mandir}/man8/distrib-info.8*
+%{_mandir}/man8/rebootmgr.8*
+%{_mandir}/man8/vserver-copy.8*