# - 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(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
Name: util-vserver
Version: 0.30.215
-Release: 7
+Release: 9.1
License: GPL
Group: Applications/System
Source0: http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
# 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
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
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
%patch17 -p1
%patch18 -p1
%patch19 -p1
+%patch20 -p1
install %{SOURCE9} package-management.txt
%{__make} all
%{?with_doc:%{__make} doc}
-%{__make} -C vproc-%{_vproc_version} \
+%{__make} -C vproc-%{vproc_version} \
CC="%{__cc}" \
CFLAGS="%{rpmcflags}"
%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 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
# set arch for pld-ac in pld.conf
%ifarch i586 i686 ppc sparc alpha athlon
-%define _ftp_arch %{_target_cpu}
+%define ftp_arch %{_target_cpu}
%endif
%ifarch %{x8664}
-%define _ftp_arch amd64
+%define ftp_arch amd64
%endif
%ifarch i486
-%define _ftp_arch i386
+%define ftp_arch i386
%endif
%ifarch pentium2 pentium3 pentium4
-%define _ftp_arch i686
+%define ftp_arch i686
%endif
%ifarch sparcv9 sparc64
-%define _ftp_arch sparc
+%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
+%{__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}
+%define ftp_arch %{_target_cpu}
%endif
%ifarch %{x8664}
-%define _ftp_arch x86_64
+%define ftp_arch x86_64
%endif
%ifarch i586
-%define _ftp_arch i486
+%define ftp_arch i486
%endif
%ifarch pentium2 pentium3 pentium4
-%define _ftp_arch i686
+%define ftp_arch i686
%endif
%ifarch sparcv9 sparc64
-%define _ftp_arch sparc
+%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
+%{__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}
+%define ftp_arch %{_target_cpu}
%endif
%ifarch %{x8664}
-%define _ftp_arch x86_64
+%define ftp_arch x86_64
%endif
%ifarch athlon pentium2 pentium3 pentium4
-%define _ftp_arch i686
+%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
+%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
%endif
-cat <<'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm/platform
+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
# x86_64 things
%ifarch x86_64
-amd64-[^-]*-linux(-gnu)?
-x86_64-[^-]*-linux(-gnu)?
+amd64-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch amd64
-amd64-[^-]*-linux(-gnu)?
-x86_64-[^-]*-linux(-gnu)?
+amd64-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch ia32e
-ia32e-[^-]*-linux(-gnu)?
-x86_64-[^-]*-linux(-gnu)?
+ia32e-[^-]*-[Ll]inux(-gnu)?
+x86_64-[^-]*-[Ll]inux(-gnu)?
%endif
# x86 things
%ifarch athlon %{x8664}
-athlon-[^-]*-linux(-gnu)?
+athlon-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch pentium4 athlon %{x8664}
-pentium4-[^-]*-linux(-gnu)?
+pentium4-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch pentium3 pentium4 athlon %{x8664}
-pentium3-[^-]*-linux(-gnu)?
+pentium3-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch i686 pentium3 pentium4 athlon %{x8664}
-i686-[^-]*-linux(-gnu)?
+i686-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
-i586-[^-]*-linux(-gnu)?
+i586-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
-i486-[^-]*-linux(-gnu)?
+i486-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch %{ix86} %{x8664}
-i386-[^-]*-linux(-gnu)?
+i386-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch alpha
-alpha-[^-]*-linux(-gnu)?
+alpha-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch ia64
-ia64-[^-]*-linux(-gnu)?
+ia64-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch ppc64
-powerpc64-[^-]*-linux(-gnu)?
-ppc64-[^-]*-linux(-gnu)?
+powerpc64-[^-]*-[Ll]inux(-gnu)?
+ppc64-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch ppc ppc64
-powerpc-[^-]*-linux(-gnu)?
-ppc-[^-]*-linux(-gnu)?
+powerpc-[^-]*-[Ll]inux(-gnu)?
+ppc-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch s390x
-s390x-[^-]*-linux(-gnu)?
+s390x-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch s390 s390x
-s390-[^-]*-linux(-gnu)?
+s390-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch sparc64
-sparc64-[^-]*-linux(-gnu)?
-sparcv8-[^-]*-linux(-gnu)?
-sparcv9-[^-]*-linux(-gnu)?
+sparc64-[^-]*-[Ll]inux(-gnu)?
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch sparcv9
-sparcv8-[^-]*-linux(-gnu)?
-sparcv9-[^-]*-linux(-gnu)?
+sparcv8-[^-]*-[Ll]inux(-gnu)?
+sparcv9-[^-]*-[Ll]inux(-gnu)?
%endif
%ifarch sparc sparcv9 sparc64
-sparc-[^-]*-linux(-gnu)?
+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
%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
%dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
%attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
%dir %{_libdir}/%{name}/distributions
-%attr(-,root,root) %{_libdir}/%{name}/distributions/defaults
+%{_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
+%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
%files -n vserver-distro-pld
%defattr(644,root,root,755)
-%attr(-,root,root) %{_libdir}/%{name}/distributions/pld
-%attr(-,root,root) %{_libdir}/%{name}/distributions/pld-*
+%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