# TODO
# - somewhy empty /var/cache/vservers is needed when building pld vserver
# - make build create /dev/std{in,out,err} links
+# - reject install in %pre if /proc/virtual/info has incompatible version
#
# m68k and mips are the only not supported archs
#
# Conditional build:
-%bcond_without dietlibc # don't use dietlibc (ask for troubles)
-%bcond_without doc # don't build documentation which needed LaTeX
+%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
+%bcond_with xalan # use the xalan xslt processor
#
%define _vproc_version 0.01
-# fails with ccache in %{__cc}
+# diet compile fails with ccache in %{__cc}
%undefine with_ccache
#
Summary: Linux virtual server utilities
-Summary(pl): Narzêdzia dla linuksowych serwerów wirtualnych
+Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
Name: util-vserver
-Version: 0.30.210
-Release: 7.2
+Version: 0.30.214
+Release: 4
License: GPL
Group: Applications/System
-Source0: http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%{name}-%{version}.tar.bz2
-# Source0-md5: 1e8fff7cb6246d21ed029f082123019b
+Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
+# Source0-md5: 8bad879e36a6a1b9b4858d0d6d3c8c76
Source1: vprocunhide.init
Source2: vservers.init
Source3: vservers-legacy.init
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: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
+Patch13: %{name}-tmpdir.patch
URL: http://savannah.nongnu.org/projects/util-vserver/
BuildRequires: autoconf
BuildRequires: automake >= 1.9
BuildRequires: beecrypt-devel
%{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
+BuildRequires: e2fsprogs-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool >= 1.5.14
%ifarch %{x8664}
Requires(post,preun): /sbin/chkconfig
Requires: %{name}-lib = %{version}-%{release}
Requires: issue
+Requires: mktemp >= 1.5-18
Requires: rc-scripts
+Requires: tar
Requires: util-linux
Obsoletes: util-vserver-core
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
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
-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.
+%description -l pl.UTF-8
+Ten pakiet 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.
-Wymaga to specjalnego j±dra obs³uguj±cego nowe wywo³ania systemowe
+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.
+Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
+włączonym mechanizmem Linux-Vserver.
+
+%package lib
+Summary: Dynamic libraries for util-vserver
+Summary(pl.UTF-8): Biblioteki dynamiczne dla pakietu util-vserver
+Group: Libraries
+
+%description lib
+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
+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
+'util-vserver' subpackages.
+
+%description lib -l pl.UTF-8
+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 biblioteki współdzielone wymagane przez wszystkie
+podpakiety util-vserver.
%package devel
Summary: Development files for Linux vserver libraries
-Summary(pl): Pliki programistyczne dla bibliotek linuksowego vserwera
+Summary(pl.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
Group: Development/Libraries
Requires: %{name}-lib = %{version}-%{release}
This package contains the development files necessary for developing
programs which use vserver library.
-%description devel -l pl
+%description devel -l pl.UTF-8
Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
-programów u¿ywaj±cych biblioteki vserver.
+programów używających biblioteki vserver.
%package static
Summary: Static vserver library
-Summary(pl): Biblioteka statyczna vservera
+Summary(pl.UTF-8): Biblioteka statyczna vservera
Group: Development/Libraries
Requires: %{name}-devel = %{version}-%{release}
%description static
This package contains the static version of vserver library.
-%description static -l pl
-Ten pakiet zawiera statyczn± wersjê biblioteki vservera.
+%description static -l pl.UTF-8
+Ten pakiet zawiera statyczną wersję biblioteki vservera.
-%package lib
-Summary: Dynamic libraries for util-vserver
-Summary(pl): Biblioteki dynamiczne dla pakietu util-vserver
-Group: Libraries
+%package build
+Summary: Tools which can be used to build vservers
+Summary(pl.UTF-8): Narzędzia do budowania vserverów
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: /etc/pld-release
+# for ar, used by debbootstrap
+Requires: binutils
+Requires: e2fsprogs
+Requires: wget
+Requires: which
+Conflicts: poldek < 0.18.8-10
-%description lib
+%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
-pith normal configuration. The various vservers can't interact with
+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 the shared libraries needed by all other
-'util-vserver' subpackages.
+This package contains utilities which assist in building Vservers.
-%description lib -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.
+%description build -l pl.UTF-8
+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 biblioteki wspó³dzielone wymagane przez wszystkie
-podpakiety util-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 init
+Summary: initscripts for vserver
+Summary(pl.UTF-8): Skrypty inicjalizujące dla vserwera
Group: Applications/System
+Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
-Requires: e2fsprogs
-Requires: /etc/pld-release
-Conflicts: poldek < 0.18.8-10
+Requires: diffutils
+Requires: make
+Requires: rc-scripts
-%description build
+%description init
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 assist in building Vservers.
+This package contains the SysV initscripts which start and stop
+Vservers and related tools.
-%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.
+%description init -l pl.UTF-8
+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 pomagaj±ce przy budowaniu Vserwerów.
+Ten pakiet zawiera skrypty inicjalizujące SysV uruchamiające i
+zatrzymujące Vserwery oraz powiązane narzędzia.
-%package -n vserver-distro-fedora
-Summary: VServer build templates for Fedora Core
-Summary(pl): Szablony do tworzenia VServerów dla dystrybucji Fedora Core
+%package legacy
+Summary: Legacy utilities for util-vserver
+Summary(pl.UTF-8): Stare narzędzia dla util-vserver
Group: Applications/System
+Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
+Requires: rc-scripts
+
+%description legacy
+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 the tools which are needed to work with Vservers
+having an old-style configuration.
+
+%description legacy -l pl.UTF-8
+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 potrzebne do pracy z Vserwerami mającymi
+konfigurację w starym stylu.
+
+%package -n vserver-distro-debian
+Summary: VServer build templates for Debian
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Debian
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: dpkg
+
+%description -n vserver-distro-debian
+VServer build templates for Debian.
+
+%description -n vserver-distro-debian -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji Debian.
+
+%package -n vserver-distro-centos
+Summary: VServer build template for CentOS
+Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji CentOS
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: yum
+
+%description -n vserver-distro-centos
+VServer build template for CentOS 4.2 and 5.
+
+%description -n vserver-distro-centos -l pl.UTF-8
+Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
+
+%package -n vserver-distro-fedora
+Summary: VServer build templates for Fedora
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora
+Group: Applications/System
+Requires: %{name}-build = %{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.
+VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
+
+%description -n vserver-distro-fedora -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji Fedora Core
+1,2,3,4,5,6 oraz Fedora 7.
+
+%package -n vserver-distro-gentoo
+Summary: VServer build template for Gentoo
+Summary(pl.UTF-8): Szablon budowania VServerów dla Gentoo
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+
+%description -n vserver-distro-gentoo
+VServer build template for Gentoo.
-%description -n vserver-distro-fedora -l pl
-Szablony do tworzenia VServerów dla dystrybucji Fedora Core 1,2,3,4.
+%description -n vserver-distro-gentoo -l pl.UTF-8
+Szablon budowania VServerów dla Gentoo.
%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
+Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
Group: Applications/System
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}-build = %{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.
+%description -n vserver-distro-redhat -l pl.UTF-8
+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
+Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
Group: Applications/System
-Requires: %{name} = %{version}-%{release}
+Requires: %{name}-build = %{version}-%{release}
Requires: binutils
Requires: e2fsprogs
Requires: rpm
-Requires: tar
Requires: wget
%description -n vserver-distro-suse
VServer build template for SuSE Linux 9.1.
-%description -n vserver-distro-suse -l pl
-Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
+%description -n vserver-distro-suse -l pl.UTF-8
+Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
-%package -n vserver-distro-centos
-Summary: VServer build template for CentOS 4.2
-Summary(pl): Szablon budowania VServera dla CentOS 4.2
+%package -n vserver-distro-ubuntu
+Summary: VServer build templates for Ubuntu
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Ubuntu
Group: Applications/System
-Requires: util-vserver-build
-Requires: yum
+Requires: %{name}-build = %{version}-%{release}
+Requires: dpkg
-%description -n vserver-distro-centos
-VServer build template for CentOS 4.2.
+%description -n vserver-distro-ubuntu
+VServer build templates for Ubuntu.
-%description -n vserver-distro-centos -l pl
-Szablon budowania VServera dla CentOS 4.2.
+%description -n vserver-distro-ubuntu -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji Ubuntu.
-%package init
-Summary: initscripts for vserver
-Summary(pl): Skrypty inicjalizuj±ce dla vserwera
-Group: Applications/System
-Requires(post,preun): /sbin/chkconfig
-Requires: %{name} = %{version}-%{release}
-Requires: diffutils
-Requires: make
-Requires: rc-scripts
-
-%description init
-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 the SysV initscripts which start and stop
-Vservers and related tools.
-
-%description init -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 skrypty inicjalizuj±ce SysV uruchamiaj±ce i
-zatrzymuj±ce Vserwery oraz powi±zane narzêdzia.
-
-%package legacy
-Summary: Legacy utilities for util-vserver
-Summary(pl): Stare narzêdzia dla util-vserver
-Group: Applications/System
-Requires(post,preun): /sbin/chkconfig
-Requires: %{name} = %{version}-%{release}
-Requires: rc-scripts
-
-%description legacy
-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 the tools which are needed to work with Vservers
-having an old-style configuration.
-
-%description legacy -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 potrzebne do pracy z Vserwerami maj±cymi
-konfiguracjê w starym stylu.
+%ifarch amd64
+%define _x8664name amd64
+%else
+%define _x8664name x86_64
+%endif
%prep
%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
install %{SOURCE9} package-management.txt
-cp -a compat.h vserver-compat.h
-
%build
+unset LD_SYMBOLIC_FUNCTIONS || :
+
%if %{with dietlibc}
-CFLAGS="%{rpmcflags} -D__GLIBC__"
+CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
%endif
%{__aclocal} -I m4
%{__automake}
--with-initrddir=/etc/rc.d/init.d \
--enable-release \
--enable-apis=NOLEGACY \
- %{?with_dietlibc:--enable-dietlibc} \
- %{!?with_dietlibc:--disable-dietlibc} \
+ --with-initscripts=sysv \
+ --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
MKTEMP=/bin/mktemp \
MOUNT=/bin/mount \
PS=/bin/ps \
%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 \
+%{__make} -j1 install install-distribution \
DESTDIR=$RPM_BUILD_ROOT
-cp -a vserver-compat.h $RPM_BUILD_ROOT%{_includedir}
-
chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
-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%{_sysconfdir}/vservices/$s << EOF
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 %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
+install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/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}
+# ac i686
+cp -a $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac-i686
+echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/rpm/platform
+echo "i686-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac-i686/rpm/platform
+cp -a $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac \
+ $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac-i686
+sed -i 's/%{_x8664name}/i686/g' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac-i686/poldek/*.conf
+
+# th i686
+cp -a $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th-i686
+echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/rpm/platform
+echo "i686-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th-i686/rpm/platform
+cp -a $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th \
+ $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th-i686
+sed -i 's/%{_x8664name}/i686/g' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th-i686/poldek/*.conf
+
+# titanium i686
+cp -a $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti-i686
+echo "%{_target_cpu}-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/rpm/platform
+echo "i686-%{_target_vendor}-linux" > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti-i686/rpm/platform
+cp -a $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti \
+ $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti-i686
+sed -i 's/%{_x8664name}/i686/g' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti-i686/poldek/*.conf
+
+# ac x86_64
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
+sed -i 's/x86_64/amd64/g' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/*.conf
+%endif
+%ifarch i486
+sed -i 's/i486/i386/g' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/*.conf
%endif
-# baggins check this: needed but seems unused
+# XXX baggins check this: needed but seems unused
install -d $RPM_BUILD_ROOT/var/cache/vservers
+# we have our own initscript which does the same
+rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
+rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
+# probaly the part of them
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
+
%clean
rm -rf $RPM_BUILD_ROOT
%post lib -p /sbin/ldconfig
%postun lib -p /sbin/ldconfig
+%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
+
%post init
/sbin/chkconfig --add vrootdevices
/sbin/chkconfig --add vprocunhide
/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
%dir %{_sysconfdir}/vservers/.defaults/files
%{_sysconfdir}/vservers/.defaults/vdirbase
%{_sysconfdir}/vservers/.defaults/run.rev
-%{_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}/naddress
+%attr(755,root,root) %{_sbindir}/nattribute
+%attr(755,root,root) %{_sbindir}/ncontext
%attr(755,root,root) %{_sbindir}/reducecap
%attr(755,root,root) %{_sbindir}/setattr
%attr(755,root,root) %{_sbindir}/showattr
%attr(755,root,root) %{_sbindir}/vnamespace
%attr(755,root,root) %{_sbindir}/vkill
%attr(755,root,root) %{_sbindir}/vlimit
+%attr(755,root,root) %{_sbindir}/vdevmap
%attr(755,root,root) %{_sbindir}/vdu
%attr(755,root,root) %{_sbindir}/vproc
%attr(755,root,root) %{_sbindir}/vps
%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}/vtag
%attr(755,root,root) %{_sbindir}/vtop
%attr(755,root,root) %{_sbindir}/vuname
%attr(755,root,root) %{_sbindir}/vwait
%{_libdir}/%{name}/defaults/*
%attr(755,root,root) %{_libdir}/%{name}/capchroot
%attr(755,root,root) %{_libdir}/%{name}/chain-echo
+%attr(755,root,root) %{_libdir}/%{name}/chbind-compat
%attr(755,root,root) %{_libdir}/%{name}/check-unixfile
%attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
%attr(755,root,root) %{_libdir}/%{name}/chroot-sh
%attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
%attr(755,root,root) %{_libdir}/%{name}/filetime
%{_libdir}/%{name}/functions
+%attr(755,root,root) %{_libdir}/%{name}/h2ext
+%attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
%attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
%attr(755,root,root) %{_libdir}/%{name}/lockfile
%attr(755,root,root) %{_libdir}/%{name}/mask2prefix
%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
+%attr(755,root,root) %{_libdir}/%{name}/vsysctl
%{_mandir}/man8/chbind.8*
%{_mandir}/man8/chcontext.8*
%{_mandir}/man8/reducecap.8*
%{_mandir}/man8/vserver.8*
%{_mandir}/man8/vtop.8*
%attr(000,root,root) %dir /vservers
-%attr(755,root,root) %dir /vservers/.pkg
+%dir /vservers/.pkg
%dir %{_localstatedir}/run/vservers
%dir %{_localstatedir}/run/vservers.rev
%dir %{_localstatedir}/run/vshelper
%dir /var/cache/vservers
+%files lib
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
+
%files devel
%defattr(644,root,root,755)
%{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
%defattr(644,root,root,755)
%{_libdir}/libvserver.a
-%files lib
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/lib*.so.*.*.*
-
-%files init
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
-%attr(754,root,root) /etc/rc.d/init.d/vprocunhide
-%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 package-management.txt
%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
+%ifarch %{x8664}
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac-i686
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac-i686/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac-i686/poldek/*.conf
+%dir %{_sysconfdir}/vservers/.distributions/pld-th-i686
+%dir %{_sysconfdir}/vservers/.distributions/pld-th-i686/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th-i686/poldek/*.conf
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti-i686
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti-i686/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti-i686/poldek/*.conf
+%endif
+%dir %{_sysconfdir}/vservers/.distributions/pld-th
+%dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/*.conf
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/*.conf
%attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
%dir %{_libdir}/%{name}/distributions
%attr(-,root,root) %{_libdir}/%{name}/distributions/defaults
%{_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}/vclone
%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) %{_sbindir}/vrpm
%attr(755,root,root) %{_sbindir}/vyum
+%files init
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
+%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/vrootdevices
+%attr(754,root,root) /etc/rc.d/init.d/vservers
+
+%files legacy
+%defattr(644,root,root,755)
+%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/v_*
+%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.8*
+%{_mandir}/man8/rebootmgr.8*
+%{_mandir}/man8/vserver-copy.8*
+
+%files -n vserver-distro-centos
+%defattr(644,root,root,755)
+%{_libdir}/util-vserver/distributions/centos*
+
+%files -n vserver-distro-debian
+%defattr(644,root,root,755)
+%dir %{_libdir}/%{name}/distributions/debian
+%{_libdir}/%{name}/distributions/debian/debootstrap.script
+%attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
+%{_libdir}/%{name}/distributions/etch
+%{_libdir}/%{name}/distributions/lenny
+%{_libdir}/%{name}/distributions/sid
+
%files -n vserver-distro-fedora
%defattr(644,root,root,755)
+%dir %{_sysconfdir}/vservers/.distributions/f7
+%dir %{_sysconfdir}/vservers/.distributions/f7/apt
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
%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/f7
%{_libdir}/%{name}/distributions/fc*
+%files -n vserver-distro-gentoo
+%defattr(644,root,root,755)
+%dir %{_libdir}/util-vserver/distributions/gentoo
+%attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
+%attr(755,root,root) %{_sbindir}/vdispatch-conf
+%attr(755,root,root) %{_sbindir}/vemerge
+%attr(755,root,root) %{_sbindir}/vesync
+%attr(755,root,root) %{_sbindir}/vupdateworld
+
%files -n vserver-distro-redhat
%defattr(644,root,root,755)
%dir %{_sysconfdir}/vservers/.distributions/rh*
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
%{_libdir}/%{name}/distributions/suse*
-%files -n vserver-distro-centos
+%files -n vserver-distro-ubuntu
%defattr(644,root,root,755)
-%{_libdir}/util-vserver/distributions/centos42
-
-%files legacy
-%defattr(644,root,root,755)
-%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/v_*
-%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.8*
-%{_mandir}/man8/rebootmgr.8*
-%{_mandir}/man8/vserver-copy.8*
+%{_libdir}/%{name}/distributions/breezy
+%{_libdir}/%{name}/distributions/dapper
+%{_libdir}/%{name}/distributions/edgy
+%{_libdir}/%{name}/distributions/feisty
+%{_libdir}/%{name}/distributions/gutsy
+%{_libdir}/%{name}/distributions/hoary
+%{_libdir}/%{name}/distributions/warty