# 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
+# - reject install in %%pretrans if /proc/virtual/info has incompatible version
+# - unpackaged
+# /etc/rc.d/init.d/util-vserver -- # integrate to our initscript (util-vserver sets the path to vshelper and kills all guest processes)
+# - move to main pkg:
+# vserver initng delete
+# /usr/lib64/util-vserver/vserver.delete: line 19: /usr/lib64/util-vserver/vserver-build.functions: No such file or directory
+# /usr/lib64/util-vserver/vserver.delete: line 20: /usr/lib64/util-vserver/vserver-build.functions.pkgmgmt: No such file or directory
+# or move the delete func to -build
+# - make pkgmgmnt internalize modify poldek conf to unignore vserver-packages
+# - service vservers stop should shutdown all running vservers (respecting
+# configuration for order) otherwise on shutdown vservers are not nicely
+# shutdown!
+# - when building ac quest on th, the platform file for x8664 archidecture is wrong
#
# m68k and mips are the only not supported archs
#
%bcond_without no_dynamic_context # disable enforcement of disabled dynamic context
%bcond_with xalan # use the xalan xslt processor
#
-%define _vproc_version 0.01
+%define vproc_version 0.01
# diet compile fails with ccache in %{__cc}
%undefine with_ccache
#
Summary: Linux virtual server utilities
Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
Name: util-vserver
-Version: 0.30.212
-Release: 7
+Version: 0.30.215
+Release: 9.1
License: GPL
Group: Applications/System
Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
-# Source0-md5: 386b91732b7f0f132b4e9d978389dcc2
+# Source0-md5: befd9b8e5311e87395b67ee381d83649
Source1: vprocunhide.init
Source2: vservers.init
Source3: vservers-legacy.init
# 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: http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{vproc_version}.tar.bz2
# Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
Source12: %{name}-vhashify.cron
+Source13: ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
+# Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
+Source14: ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
+# Source14-md5: 08b29584dd349aac9caa7610131a0a88
Patch0: %{name}-vsysvwrapper.patch
Patch1: %{name}-pld.patch
-Patch2: %{name}-vrpm.patch
-Patch3: %{name}-include.patch
Patch4: %{name}-m4-diet.patch
+Patch5: %{name}-yum-verb-nogpg.patch
Patch6: %{name}-build-umask.patch
Patch7: %{name}-utmpx.patch
Patch8: %{name}-vprocunhide.patch
Patch10: %{name}-no-dynamic-ctx.patch
Patch11: %{name}-more-ip.patch
Patch12: %{name}-rpm-fake-resolver-badperm-errorlogging.patch
+Patch13: %{name}-tmpdir.patch
+Patch14: %{name}-rpmpath.patch
+Patch15: %{name}-interfaces-ignore-cvs-dir.patch
+Patch16: %{name}-personalitymachine.patch
+Patch17: %{name}-backupfiles.patch
+Patch18: %{name}-trunk_fixes.patch
+Patch19: %{name}-vprocunhide-net.patch
+Patch20: %{name}-more-caps.patch
URL: http://savannah.nongnu.org/projects/util-vserver/
BuildRequires: autoconf
BuildRequires: automake >= 1.9
%endif
Requires(post,preun): /sbin/chkconfig
Requires: %{name}-lib = %{version}-%{release}
+Requires: diffutils
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)
+%if %{with dietlibc}
+# binaries created with this option have broken segments when using dietlibc
+%define filterout_ld -Wl,-z,relro
+%endif
+
# for adapter
%define _usrbin /usr/bin
%define _usrsbin /usr/sbin
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.UTF-8): Pliki programistyczne dla bibliotek linuksowego vserwera
%description static -l pl.UTF-8
Ten pakiet zawiera statyczną wersję biblioteki vservera.
-%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 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
-Requires: e2fsprogs
-Requires: which
+Requires: vserver-distro-pld = %{version}-%{release}
Conflicts: poldek < 0.18.8-10
%description build
Ten pakiet zawiera narzędzia pomagające przy budowaniu Vserwerów.
-%package -n vserver-distro-fedora
-Summary: VServer build templates for Fedora Core
-Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Fedora Core
-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.
-
-%description -n vserver-distro-fedora -l pl.UTF-8
-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.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
-Group: Applications/System
-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.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.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
-Group: Applications/System
-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.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.UTF-8): Szablon budowania VServera dla CentOS 4.2
-Group: Applications/System
-Requires: %{name}-build = %{version}-%{release}
-Requires: yum
-
-%description -n vserver-distro-centos
-VServer build template for CentOS 4.
-
-%description -n vserver-distro-centos -l pl.UTF-8
-Szablon budowania VServera dla CentOS 4.
-
-%package -n vserver-distro-gentoo
-Summary: VServer build template for Gentoo
-Summary(pl.UTF-8): Szablon budowania VServera dla Gentoo
-Group: Applications/System
-Requires: %{name}-build = %{version}-%{release}
-
-%description -n vserver-distro-gentoo
-VServer build template for Gentoo.
-
-%description -n vserver-distro-gentoo -l pl.UTF-8
-Szablon budowania VServera dla Gentoo.
-
%package init
Summary: initscripts for vserver
Summary(pl.UTF-8): Skrypty inicjalizujące dla vserwera
Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
konfigurację w starym stylu.
+%package -n vserver-distro-alpine
+Summary: VServer build template for Alpine Linux
+Summary(pl.UTF-8): Szablon budowania VServerów dla dystrybucji Alpine Linux
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+
+%description -n vserver-distro-alpine
+VServer build template for Alpine Linux.
+
+%description -n vserver-distro-alpine -l pl.UTF-8
+Szablon budowania VServerów dla dystrybucji Alpine Linux.
+
+%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-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-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: wget
+Requires: yum
+
+%description -n vserver-distro-fedora
+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-gentoo -l pl.UTF-8
+Szablon budowania VServerów dla Gentoo.
+
+%package -n vserver-distro-pld
+Summary: VServer build templates for PLD Linux
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji PLD Linux
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: /etc/pld-release
+Requires: poldek >= 0.30
+
+%description -n vserver-distro-pld
+VServer build templates for PLD Linux.
+
+%description -n vserver-distro-pld -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
+
+%package -n vserver-distro-redhat
+Summary: VServer build template for Red Hat Linux 9
+Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: binutils
+Requires: e2fsprogs
+Requires: rpm
+Requires: wget
+
+%description -n vserver-distro-redhat
+VServer build template for RedHat 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.UTF-8): Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: binutils
+Requires: e2fsprogs
+Requires: rpm
+Requires: wget
+
+%description -n vserver-distro-suse
+VServer build template for SuSE Linux 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-ubuntu
+Summary: VServer build templates for Ubuntu
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Ubuntu
+Group: Applications/System
+Requires: %{name}-build = %{version}-%{release}
+Requires: dpkg
+
+%description -n vserver-distro-ubuntu
+VServer build templates for Ubuntu.
+
+%description -n vserver-distro-ubuntu -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji Ubuntu.
+
%prep
%setup -q -a11
%patch0 -p1
%patch1 -p1
-%patch2 -p1
-%patch3 -p1
%patch4 -p1
+%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%{?with_no_dynamic_context:%patch10 -p1}
%patch11 -p1
%patch12 -p1
+%patch13 -p1
+%patch14 -p1
+%patch15 -p1
+%patch16 -p1
+%patch17 -p1
+%patch18 -p1
+%patch19 -p1
+%patch20 -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
+%{__libtoolize}
%{__aclocal} -I m4
%{__automake}
%{__autoconf}
--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 \
%{__make} all
%{?with_doc:%{__make} doc}
-%{__make} -C vproc-%{_vproc_version} \
+%{__make} -C vproc-%{vproc_version} \
CC="%{__cc}" \
CFLAGS="%{rpmcflags}"
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 vproc-%{_vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
+install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
+ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
+ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
+%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
+ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost
+%endif
+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
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
+cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
+
+install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
+cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
+
+# set arch for pld-ac in pld.conf
+%ifarch i586 i686 ppc sparc alpha athlon
+%define ftp_arch %{_target_cpu}
+%endif
+%ifarch %{x8664}
+%define ftp_arch amd64
+%endif
+%ifarch i486
+%define ftp_arch i386
+%endif
+%ifarch pentium2 pentium3 pentium4
+%define ftp_arch i686
+%endif
+%ifarch sparcv9 sparc64
+%define ftp_arch sparc
+%endif
+%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
+
+# set arch for pld-th in pld.conf
+%ifarch i486 i686 ppc sparc alpha athlon
+%define ftp_arch %{_target_cpu}
+%endif
+%ifarch %{x8664}
+%define ftp_arch x86_64
+%endif
+%ifarch i586
+%define ftp_arch i486
+%endif
+%ifarch pentium2 pentium3 pentium4
+%define ftp_arch i686
+%endif
+%ifarch sparcv9 sparc64
+%define ftp_arch sparc
+%endif
+%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
+%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
+# set arch for pld-ti in pld.conf
+%ifarch i586 i686
+%define ftp_arch %{_target_cpu}
+%endif
%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
+%define ftp_arch x86_64
%endif
+%ifarch athlon pentium2 pentium3 pentium4
+%define ftp_arch i686
+%endif
+%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
+%endif
+
+cd $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm
+cat <<'EOF' > platform
+# first platform file entry can't contain regexps
+%{_target_cpu}-%{_target_vendor}-linux
-# XXX baggins check this: needed but seems unused
-install -d $RPM_BUILD_ROOT/var/cache/vservers
+# x86_64 things
+%ifarch x86_64
+amd64-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch amd64
+amd64-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch ia32e
+ia32e-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+# x86 things
+%ifarch athlon %{x8664}
+athlon-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch pentium4 athlon %{x8664}
+pentium4-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch pentium3 pentium4 athlon %{x8664}
+pentium3-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch i686 pentium3 pentium4 athlon %{x8664}
+i686-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
+i586-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
+i486-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch %{ix86} %{x8664}
+i386-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch alpha
+alpha-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch ia64
+ia64-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch ppc64
+powerpc64-[^-]*-[Ll]inux(-gnu)?
+ppc64-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch ppc ppc64
+powerpc-[^-]*-[Ll]inux(-gnu)?
+ppc-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch s390x
+s390x-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch s390 s390x
+s390-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+%ifarch sparc64
+sparc64-[^-]*-[Ll]inux(-gnu)?
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch sparcv9
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
+%endif
+%ifarch sparc sparcv9 sparc64
+sparc-[^-]*-[Ll]inux(-gnu)?
+%endif
+
+# noarch
+noarch-[^-]*-.*
+EOF
+cd -
+
+# current debootstrap link
+echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.10_all.deb" \
+ > $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults/debootstrap.uri
+
+install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
# 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/usr/lib/util-vserver/vserver-wrapper
-# probaly the part of them
-rm -f $RPM_BUILD_ROOT/etc/vservers.conf
+rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
+rm -rf $RPM_BUILD_ROOT/dev
+rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
+rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
+rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
%clean
rm -rf $RPM_BUILD_ROOT
/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
+%triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
+for D in ac th ti; do
+ P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
-# 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
+ if [ -f $P/pld-source.conf.rpmsave ]; then
+ cp -f $P/repos.d/pld.conf{,.rpmnew}
+ mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
+ fi
+done
+exit 0
%files
%defattr(644,root,root,755)
%dir %{_sysconfdir}/vservers/.defaults/apps
%dir %{_sysconfdir}/vservers/.defaults/files
%{_sysconfdir}/vservers/.defaults/vdirbase
+%{_sysconfdir}/vservers/.defaults/cachebase
%{_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}/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}/vmemctrl
+%attr(755,root,root) %{_sbindir}/vmount
%attr(755,root,root) %{_sbindir}/vproc
%attr(755,root,root) %{_sbindir}/vps
%attr(755,root,root) %{_sbindir}/vpstree
+%attr(755,root,root) %{_sbindir}/vspace
%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}/vtag
%attr(755,root,root) %{_sbindir}/vtop
%attr(755,root,root) %{_sbindir}/vuname
%attr(755,root,root) %{_sbindir}/vwait
%dir %{_libdir}/%{name}/defaults
%{_libdir}/%{name}/FEATURES.txt
%{_libdir}/%{name}/util-vserver-vars
-%{_libdir}/%{name}/defaults/*
+%{_libdir}/%{name}/defaults/context.start
+%{_libdir}/%{name}/defaults/environment
+%{_libdir}/%{name}/defaults/h2ext.desc
+%{_libdir}/%{name}/defaults/mtab
+%{_libdir}/%{name}/defaults/vprocunhide-files
%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}/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}/secure-mount
%attr(755,root,root) %{_libdir}/%{name}/sigexec
%attr(755,root,root) %{_libdir}/%{name}/start-vservers
+%attr(755,root,root) %{_libdir}/%{name}/tunctl
%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*
%dir %{_localstatedir}/run/vservers.rev
%dir %{_localstatedir}/run/vshelper
%dir /var/cache/vservers
+%dir /var/cache/vservers/poldek
+
+%files lib
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
%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
+%attr(755,root,root) %{_libdir}/libvserver.so
%{_libdir}/lib*.la
%{_includedir}/vserver*.h
%{_pkgconfigdir}/*.pc
%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
-%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 build
%defattr(644,root,root,755)
%doc contrib/yum*.patch package-management.txt
%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
-%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
%attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
%dir %{_libdir}/%{name}/distributions
-%attr(-,root,root) %{_libdir}/%{name}/distributions/defaults
-%attr(-,root,root) %{_libdir}/%{name}/distributions/pld*
+%{_libdir}/%{name}/distributions/defaults
%dir %{_libdir}/%{name}/distributions/template
-%attr(755,root,root) %{_libdir}/%{name}/distributions/template/init*
-%attr(-,root,root) %{_libdir}/%{name}/distributions/redhat
-%{_libdir}/%{name}/magic.mime
-%{_libdir}/%{name}/vserver-build.*
+%attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpost
+%attr(755,root,root) %{_libdir}/%{name}/distributions/template/initpre
+%dir %{_libdir}/%{name}/distributions/redhat
+%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpost
+%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initpre
+%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/rc.sysinit
%{_libdir}/%{name}/vserver-setup.functions
+%{_libdir}/%{name}/vserver-build.*
%{_libdir}/%{name}/defaults/fstab
-%{_libdir}/%{name}/defaults/debootstrap.uri
+%{_libdir}/%{name}/defaults/debootstrap.*
%{_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}/vpkg
%attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
%attr(755,root,root) %{_sbindir}/vpoldek
%attr(755,root,root) %{_sbindir}/vrpm
%attr(755,root,root) %{_sbindir}/vyum
+%{_mandir}/man8/vserver-build.8*
+
+%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-alpine
+%defattr(644,root,root,755)
+%dir %{_libdir}/%{name}/distributions/alpine
+%attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
+%attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
+
+%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/f8
%{_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-pld
+%defattr(644,root,root,755)
+%dir %{_libdir}/%{name}/distributions/pld
+%attr(755,root,root) %{_libdir}/%{name}/distributions/pld/initpost
+%dir %{_libdir}/%{name}/distributions/pld-*
+%{_libdir}/%{name}/distributions/pld-*/pkgs
+%{_libdir}/%{name}/distributions/pld-*/pubkeys
+%{_libdir}/%{name}/distributions/pld-*/rpm
+%attr(755,root,root) %{_libdir}/%{name}/distributions/pld-*/initpost
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
+%dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
+%dir %{_sysconfdir}/vservers/.distributions/pld-th
+%dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
+%dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
+%ifarch i586 i686 %{x8664} athlon pentium2 pentium3 pentium4
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
+%dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf
+%endif
+
%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
-%defattr(644,root,root,755)
-%{_libdir}/util-vserver/distributions/centos4
-
-%files -n vserver-distro-gentoo
+%files -n vserver-distro-ubuntu
%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 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