-#
-# m68k and mips are the only not supported archs
+# TODO: verify systemd files
+# NOTE:
+# - m68k and mips are the only not supported archs
#
# Conditional build:
-%bcond_without dietlibc # don't use dietlibc (ask for troubles)
+%bcond_with 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 legacy # build legacy 1.x utils
+
%define vproc_version 0.01
-# diet compile fails with ccache in %{__cc}
-%undefine with_ccache
-#
+
%ifarch ppc
# pdflatex: refman: Invalid argument
%undefine with_doc
%endif
-#
-%define snap r2844
-#
+
+# reqdb_pkg and reqdb_ver must match value from current rpm package in distro
+%define reqdb_ver 5.2
+%define reqdb_pkg db%{reqdb_ver}
+%define snap pre3126
+%define rel 2
Summary: Linux virtual server utilities
Summary(pl.UTF-8): Narzędzia dla linuksowych serwerów wirtualnych
Name: util-vserver
Version: 0.30.216
-Release: 0.%{snap}.1
+Release: 1.%{snap}.%{rel}
License: GPL
Group: Applications/System
-Source0: %{name}-%{version}-%{snap}.tar.bz2
-# Source0-md5: e7a0b28e935bfce9f6db1dc5d93dc7b5
+Source0: http://people.linux-vserver.org/~dhozac/t/uv-testing/%{name}-%{version}-%{snap}.tar.xz
+# Source0-md5: f4bd6e49baf2c6dd50ff0c9b6415a1c2
Source1: vprocunhide.init
Source2: vservers.init
Source3: vservers-legacy.init
Patch0: %{name}-vsysvwrapper.patch
Patch1: %{name}-pld.patch
Patch2: %{name}-centos.patch
+Patch3: %{name}-tld.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
Patch9: %{name}-dev.patch
Patch10: %{name}-no-dynamic-ctx.patch
Patch14: %{name}-rpmpath.patch
Patch15: %{name}-interfaces-ignore-cvs-dir.patch
Patch16: %{name}-personalitymachine.patch
-Patch17: %{name}-backupfiles.patch
+
Patch18: %{name}-vprocunhide-net.patch
# http://glen.alkohol.ee/pld/util-vserver-dbrebuild-internalize4.patch
Patch19: %{name}-dbrebuild-internalize4.patch
-Patch20: %{name}-dev-stdfd.patch
Patch21: %{name}-bash-wrapper.patch
Patch22: %{name}-pivot-root-ugly-hack.patch
-Patch23: %{name}-ac.patch
+Patch24: vunify-more-exclude.patch
+Patch25: stat.patch
+
+Patch27: %{name}-rpm5.patch
+Patch28: diet-ccache.patch
+Patch29: %{name}-centos6.patch
+Patch30: vsysctl-ignore-files.patch
URL: http://savannah.nongnu.org/projects/util-vserver/
-BuildRequires: autoconf
-BuildRequires: automake >= 1.9
+BuildRequires: autoconf >= 2.57
+BuildRequires: automake >= 1:1.9
BuildRequires: beecrypt-devel
BuildRequires: ctags
-%{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
+%{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.33-4}
BuildRequires: e2fsprogs-devel
BuildRequires: libstdc++-devel
BuildRequires: libtool >= 1.5.14
-%ifarch %{x8664}
+BuildRequires: pkgconfig
+BuildRequires: python-devel >= 1:2.4
+BuildRequires: python-modules >= 1:2.4
+BuildRequires: rpm-pythonprov
+BuildRequires: rpmbuild(macros) >= 1.647
BuildRequires: sed >= 4.0
-%endif
-BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: systemd-devel
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
%if %{with doc}
-BuildRequires: doxygen
+BuildRequires: doxygen >= 1:1.7.3
BuildRequires: graphviz
BuildRequires: libxslt-progs
BuildRequires: python-devel
-BuildRequires: rpm-pythonprov
-%if "%{pld_release}" == "ti"
+%if "%{pld_release}" != "th"
BuildRequires: tetex-fonts-jknappen
BuildRequires: tetex-format-pdflatex
BuildRequires: tetex-makeindex
BuildRequires: tetex-metafont
%else
+BuildRequires: texlive-fonts-rsfs
BuildRequires: texlive-fonts-type1-urw
BuildRequires: texlive-format-pdflatex
+BuildRequires: texlive-latex-ams
+BuildRequires: texlive-latex-extend
+BuildRequires: texlive-latex-ucs
+BuildRequires: texlive-latex-wasysym
BuildRequires: texlive-makeindex
BuildRequires: texlive-pdftex
BuildRequires: texlive-xetex
Requires: %{name}-lib = %{version}-%{release}
Requires: coreutils
Requires: diffutils
-Requires: issue
+Requires: glibc-misc
Requires: make
Requires: mktemp >= 1.5-18
-Requires: rc-scripts
+Requires: mount
+Requires: pld-release
+Requires: rc-scripts >= 0.4.3.4
+#Requires: rpm >= 5.4.10-36
Requires: tar
-Requires: util-linux
+Requires: uname(release) >= 2.6.27
+Requires: util-linux >= 2.13
Requires: vserver-distro-pld = %{version}-%{release}
+Suggests: %{reqdb_pkg}-utils
+Suggests: crondaemon
Obsoletes: util-vserver-build
Obsoletes: util-vserver-core
Obsoletes: util-vserver-init
Requires: %{name} = %{version}-%{release}
Requires: debootstrap
Requires: dpkg
+Provides: vserver-distro-ubuntu
Obsoletes: vserver-distro-ubuntu
%description -n vserver-distro-debian
-VServer build templates for Debian.
+VServer build templates for Debian and Ubuntu.
%description -n vserver-distro-debian -l pl.UTF-8
-Szablony do tworzenia VServerów dla dystrybucji Debian.
+Szablony do tworzenia VServerów dla dystrybucji Debian i Ubuntu.
%package -n vserver-distro-fedora
Summary: VServer build templates for Fedora
Requires: binutils
Requires: e2fsprogs
Requires: rpm
-Requires: wget
Requires: vserver-distro-redhat = %{version}-%{release}
+Requires: wget
Requires: yum
%description -n vserver-distro-fedora
%description -n vserver-distro-suse -l pl.UTF-8
Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
+%package -n vserver-distro-scientificlinux
+Summary: VServer build template for Scientific Linux
+Summary(pl.UTF-8): Szablon do tworzenia VServerów dla dystrybucji Scientific Linux
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: binutils
+Requires: e2fsprogs
+Requires: rpm
+Requires: wget
+Requires: yum
+
+%description -n vserver-distro-scientificlinux
+VServer build template for Scientific Linux.
+
+%description -n vserver-distro-scientificlinux -l pl.UTF-8
+Szablon do tworzenia VServerów dla dystrybucji Scientific Linux.
+
+%package -n vserver-distro-tld
+Summary: VServer build templates for Titanium Linux Distribution
+Summary(pl.UTF-8): Szablony do tworzenia VServerów dla dystrybucji Titanium Linux
+Group: Applications/System
+Requires: %{name} = %{version}-%{release}
+Requires: poldek >= 0.30
+
+%description -n vserver-distro-tld
+VServer build templates for Titanium Linux Distribution.
+
+%description -n vserver-distro-tld -l pl.UTF-8
+Szablony do tworzenia VServerów dla dystrybucji Titanium Linux.
+
%prep
%setup -q -n %{name}-%{version}-%{snap} -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}
%patch14 -p1
%patch15 -p1
%patch16 -p1
-%patch17 -p1
+
%patch18 -p1
%patch19 -p1
-%patch20 -p1
%patch21 -p1
%patch22 -p1
-%patch23 -p0
+%patch24 -p1
+%patch25 -p1
+
+%patch27 -p1
+%patch28 -p1
+%patch29 -p1
+%patch30 -p1
-install %{SOURCE9} package-management.txt
+cp -p %{SOURCE9} package-management.txt
+
+%{__sed} -i -e "s/@RPMDB@/%{reqdb_ver}/g" scripts/pkgmgmt
%build
unset LD_SYMBOLIC_FUNCTIONS || :
--enable-apis=NOLEGACY \
--with-initscripts=sysv \
--%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
- MKTEMP=/bin/mktemp \
- MOUNT=/bin/mount \
- PS=/bin/ps \
- UMOUNT=/bin/umount \
+ FSCK=/sbin/fsck \
+ IONICE=%{_usrbin}/ionice \
IP=/sbin/ip \
IPTABLES=%{_usrsbin}/iptables \
+ MKTEMP=/bin/mktemp \
MODPROBE=/sbin/modprobe \
+ MOUNT=/bin/mount \
NAMEIF=/sbin/nameif \
+ PS=/bin/ps \
+ RESTORE=/sbin/restore \
RMMOD=/sbin/rmmod \
+ RSYNC=%{_usrbin}/rsync \
+ STRACE=%{_usrbin}/strace \
+ UMOUNT=/bin/umount \
VCONFIG=/sbin/vconfig \
WGET=%{_usrbin}/wget \
+# end
%{__make} all
+
%{?with_doc:%{__make} doc}
%{__make} -C vproc-%{vproc_version} \
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{/vservers/.pkg,/etc/{sysconfig,rc.d/init.d,cron.d}} \
- $RPM_BUILD_ROOT%{_sysconfdir}/vservices \
- $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/apps/vdevmap
+ $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/{apps/vdevmap,cgroup} \
+ $RPM_BUILD_ROOT%{systemdtmpfilesdir}
%{__make} -j1 install install-distribution \
+%if %{without legacy}
+ scripts_legacy_src_SCRPTS= \
+ scripts_legacy_gen_SCRPTS= \
+ scripts_legacy_src_PRGS= \
+ sysv_gen_SCRPTS= \
+ legacy_PROGRAMS= \
+%endif
DESTDIR=$RPM_BUILD_ROOT
-chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
+%ifarch %{ix86}
+# fix breakage caused by too many substitiutions on x86
+%{__sed} -i -e 's|%{_datadir}/%{name}/sigexec|%{_libdir}/%{name}/sigexec|g' \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/vshelper
+%endif
+
+# our libcgroup uses per subsystem mount
+touch $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
+
+chmod -R +rX $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/*
+
+cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
+cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
+cp -p %{SOURCE15} $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
+cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers
+sed 's|%{_usrlib}/util-vserver|%{_datadir}/%{name}|g' gentoo/bash-wrapper > \
+ $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
+
+%if %{with legacy}
+install -d $RPM_BUILD_ROOT%{_sysconfdir}/vservices
for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
- s=`basename $i | sed s/v_//`
+ s=$(basename $i | sed s/v_//)
cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
# IP addresses/interfaces to bound $s service to
#IP=10.0.0.1
EOF
done
-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' %{SOURCE15} > \
- $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
-sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
- $RPM_BUILD_ROOT/etc/sysconfig/vservers
-sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' gentoo/bash-wrapper > \
- $RPM_BUILD_ROOT%{_libdir}/%{name}/bash-wrapper
-
-install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
-
-install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
-install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
-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
+cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
+install -p %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
+%else
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/distrib-info.8
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/rebootmgr.8
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man8/vserver-copy.8
%endif
-install vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
-install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
+
+install -p %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
+cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld
+install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld/initpost
+install -p %{SOURCE10} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/tld/initpost
+ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-ac/initpost
+ln -s ../pld/initpost $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/initpost
+install -p vproc-%{vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
+sed -e 's,/usr/lib,%{_libdir},' %{SOURCE12} > $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
+chmod +x $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
-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%{_datadir}/%{name}/distributions/pld-ac/pubkeys
+cp -p %{SOURCE13} $RPM_BUILD_ROOT%{_datadir}/%{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
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys
+cp -p %{SOURCE14} $RPM_BUILD_ROOT%{_datadir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
+
+%{__mv} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/{90-util-vserver,util-vserver}.conf
# set arch for pld-ac in pld.conf
%ifarch i586 i686 ppc sparc alpha athlon
%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
+# set arch for tld in tld.conf
+%ifarch i586 i686 ppc sparc alpha
%define ftp_arch %{_target_cpu}
%endif
%ifarch %{x8664}
%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
+%{__sed} -i -e 's|%%ARCH%%|%{ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/tld.conf
# 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
+echo "http://ftp.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.55_all.deb" \
+ > $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults/debootstrap.uri
install -d $RPM_BUILD_ROOT/var/cache/vservers/poldek
+# python packaging
+%py_comp $RPM_BUILD_ROOT%{py_sitedir}
+%py_ocomp $RPM_BUILD_ROOT%{py_sitedir}
+%py_postclean
+%{__rm} $RPM_BUILD_ROOT%{py_sitedir}/_libvserver.la
+
# we have our own initscript which does the same
-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/etc/rc.d/init.d/vservers-default
-rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
+%{__rm} $RPM_BUILD_ROOT%{_libexecdir}/util-vserver/vserver-wrapper
+%{__rm} $RPM_BUILD_ROOT%{_datadir}/util-vserver/vserver-init.functions
+%{__rm} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
+%{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
-%doc contrib/yum*.patch package-management.txt
+%doc AUTHORS NEWS THANKS doc/intro.txt
+%doc package-management.txt
%{?with_doc:%doc doc/*.html}
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
%dir %{_sysconfdir}/vservers/.defaults/apps/vdevmap
%dir %{_sysconfdir}/vservers/.defaults/apps/vunify
%dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
+%dir %{_sysconfdir}/vservers/.defaults/cgroup
+%{_sysconfdir}/vservers/.defaults/cgroup/per-ss
%dir %{_sysconfdir}/vservers/.defaults/files
%{_sysconfdir}/vservers/.defaults/vdirbase
%{_sysconfdir}/vservers/.defaults/cachebase
%dir %{_sysconfdir}/vservers/.distributions
%dir %{_sysconfdir}/vservers/.distributions/.common
%dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
-/sbin/vshelper
+%attr(755,root,root) /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}/vtag
%attr(755,root,root) %{_sbindir}/vtop
%attr(755,root,root) %{_sbindir}/vuname
+%attr(755,root,root) %{_sbindir}/vurpm
%attr(755,root,root) %{_sbindir}/vwait
%attr(755,root,root) %{_sbindir}/vyum
+%dir %{_datadir}/%{name}
+%dir %{_datadir}/%{name}/defaults
+%{_datadir}/%{name}/defaults/fstab
+%{_datadir}/%{name}/defaults/debootstrap.*
+%{_datadir}/%{name}/defaults/vunify-exclude
+%{_datadir}/%{name}/defaults/context.start
+%{_datadir}/%{name}/defaults/environment
+%{_datadir}/%{name}/defaults/h2ext.desc
+%{_datadir}/%{name}/defaults/mtab
+%{_datadir}/%{name}/defaults/vprocunhide-files
+%dir %{_datadir}/%{name}/distributions
+%{_datadir}/%{name}/distributions/defaults
+%dir %{_datadir}/%{name}/distributions/template
+%attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpost
+%attr(755,root,root) %{_datadir}/%{name}/distributions/template/initpre
+%{_datadir}/%{name}/util-vserver-vars
+%{_datadir}/%{name}/functions
+%{_datadir}/%{name}/vserver-build.*
+%{_datadir}/%{name}/vserver-setup.functions
+%{_datadir}/%{name}/vserver.*
%dir %{_libdir}/%{name}
-%dir %{_libdir}/%{name}/defaults
-%{_libdir}/%{name}/defaults/fstab
-%{_libdir}/%{name}/defaults/debootstrap.*
-%{_libdir}/%{name}/defaults/vunify-exclude
-%{_libdir}/%{name}/defaults/context.start
-%{_libdir}/%{name}/defaults/environment
-%{_libdir}/%{name}/defaults/h2ext.desc
-%{_libdir}/%{name}/defaults/mtab
-%{_libdir}/%{name}/defaults/vprocunhide-files
-%dir %{_libdir}/%{name}/distributions
-%{_libdir}/%{name}/distributions/defaults
-%dir %{_libdir}/%{name}/distributions/template
-%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}/FEATURES.txt
%{_libdir}/%{name}/util-vserver-vars
%attr(755,root,root) %{_libdir}/%{name}/bash-wrapper
-%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}/chcontext-compat
-%attr(755,root,root) %{_libdir}/%{name}/check-unixfile
-%attr(755,root,root) %{_libdir}/%{name}/chroot-sh
-%attr(755,root,root) %{_libdir}/%{name}/exec-remount
-%attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
-%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}/pkgmgmt
-%attr(755,root,root) %{_libdir}/%{name}/readlink
+%dir %{_libexecdir}/%{name}
+%{_libexecdir}/%{name}/util-vserver-vars
%attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
-%attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
-%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}/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}/vhashify.cron
-%attr(755,root,root) %{_libdir}/%{name}/vpkg
-%attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
-%attr(755,root,root) %{_libdir}/%{name}/vprocunhide
-%attr(755,root,root) %{_libdir}/%{name}/vrpm-*
-%attr(755,root,root) %{_libdir}/%{name}/vserver-build
-%{_libdir}/%{name}/vserver-build.*
-%{_libdir}/%{name}/vserver-setup.functions
-%{_libdir}/%{name}/vserver.*
-%attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
-%attr(755,root,root) %{_libdir}/%{name}/vshelper
-%attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
-%attr(755,root,root) %{_libdir}/%{name}/vsysctl
-%attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
-%attr(755,root,root) %{_libdir}/%{name}/vunify
-%attr(755,root,root) %{_libdir}/%{name}/vyum-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/capchroot
+%attr(755,root,root) %{_libexecdir}/%{name}/chain-echo
+%attr(755,root,root) %{_libexecdir}/%{name}/chbind-compat
+%attr(755,root,root) %{_libexecdir}/%{name}/chcontext-compat
+%attr(755,root,root) %{_libexecdir}/%{name}/check-unixfile
+%attr(755,root,root) %{_libexecdir}/%{name}/chroot-sh
+%attr(755,root,root) %{_libexecdir}/%{name}/exec-remount
+%attr(755,root,root) %{_libexecdir}/%{name}/exec-ulimit
+%attr(755,root,root) %{_libexecdir}/%{name}/fakerunlevel
+%attr(755,root,root) %{_libexecdir}/%{name}/filetime
+%attr(755,root,root) %{_libexecdir}/%{name}/h2ext
+%attr(755,root,root) %{_libexecdir}/%{name}/h2ext-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/keep-ctx-alive
+%attr(755,root,root) %{_libexecdir}/%{name}/lockfile
+%attr(755,root,root) %{_libexecdir}/%{name}/mask2prefix
+%attr(755,root,root) %{_libexecdir}/%{name}/pkgmgmt
+%attr(755,root,root) %{_libexecdir}/%{name}/readlink
+%attr(755,root,root) %{_libexecdir}/%{name}/rpm-fake*
+%attr(755,root,root) %{_libexecdir}/%{name}/save_ctxinfo
+%attr(755,root,root) %{_libexecdir}/%{name}/secure-mount
+%attr(755,root,root) %{_libexecdir}/%{name}/sigexec
+%attr(755,root,root) %{_libexecdir}/%{name}/start-vservers
+%attr(755,root,root) %{_libexecdir}/%{name}/systemd-start
+%attr(755,root,root) %{_libexecdir}/%{name}/systemd-stop
+%attr(755,root,root) %{_libexecdir}/%{name}/tunctl
+%attr(755,root,root) %{_libexecdir}/%{name}/vapt-get-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/vclone
+%attr(755,root,root) %{_libexecdir}/%{name}/vcopy
+%attr(755,root,root) %{_libexecdir}/%{name}/vhashify
+%attr(755,root,root) %{_libexecdir}/%{name}/vpkg
+%attr(755,root,root) %{_libexecdir}/%{name}/vpoldek-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/vprocunhide
+%attr(755,root,root) %{_libexecdir}/%{name}/vrpm-*
+%attr(755,root,root) %{_libexecdir}/%{name}/vserver-build
+%attr(755,root,root) %{_libexecdir}/%{name}/vservers.grabinfo.sh
+%attr(755,root,root) %{_libexecdir}/%{name}/vshelper
+%attr(755,root,root) %{_libexecdir}/%{name}/vshelper-sync
+%attr(755,root,root) %{_libexecdir}/%{name}/vsysctl
+%attr(755,root,root) %{_libexecdir}/%{name}/vsysvwrapper
+%attr(755,root,root) %{_libexecdir}/%{name}/vunify
+%attr(755,root,root) %{_libexecdir}/%{name}/vurpm-worker
+%attr(755,root,root) %{_libexecdir}/%{name}/vyum-worker
%{_mandir}/man8/chbind.8*
%{_mandir}/man8/chcontext.8*
%{_mandir}/man8/reducecap.8*
%{_mandir}/man8/vserver-stat.8*
%{_mandir}/man8/vserver.8*
%{_mandir}/man8/vtop.8*
+%attr(755,root,root) /lib/systemd/system-generators/systemd-vserver-generator
+%{systemdunitdir}/util-vserver.service
+%{systemdunitdir}/vprocunhide.service
+%{systemdunitdir}/vserver.target
+%{systemdunitdir}/vserver-mark@.target
+%{systemdunitdir}/vserver@.service
+%{_prefix}/lib/sysctl.d/90-util-vserver.conf
+%{systemdtmpfilesdir}/%{name}.conf
%attr(000,root,root) %dir /vservers
%dir /vservers/.pkg
%dir %{_localstatedir}/run/vservers
%defattr(644,root,root,755)
%{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
%attr(755,root,root) %{_libdir}/libvserver.so
-%{_libdir}/lib*.la
-%{_includedir}/vserver*.h
-%{_pkgconfigdir}/*.pc
+%{_libdir}/libvserver.la
+%{_includedir}/vserver.h
+%{_pkgconfigdir}/util-vserver.pc
%files static
%defattr(644,root,root,755)
%{_libdir}/libvserver.a
+%if %{with legacy}
%files legacy
%defattr(644,root,root,755)
%dir %{_sysconfdir}/vservices
-%{_sysconfdir}/vservices/*
+%{_sysconfdir}/vservices/gated
+%{_sysconfdir}/vservices/httpd
+%{_sysconfdir}/vservices/named
+%{_sysconfdir}/vservices/portmap
+%{_sysconfdir}/vservices/sendmail
+%{_sysconfdir}/vservices/smb
+%{_sysconfdir}/vservices/sshd
+%{_sysconfdir}/vservices/xinetd
%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/v_gated
+%attr(754,root,root) /etc/rc.d/init.d/v_httpd
+%attr(754,root,root) /etc/rc.d/init.d/v_named
+%attr(754,root,root) /etc/rc.d/init.d/v_portmap
+%attr(754,root,root) /etc/rc.d/init.d/v_sendmail
+%attr(754,root,root) /etc/rc.d/init.d/v_smb
+%attr(754,root,root) /etc/rc.d/init.d/v_sshd
+%attr(754,root,root) /etc/rc.d/init.d/v_xinetd
%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*
+%endif
%files -n python-util-vserver
%defattr(644,root,root,755)
%attr(755,root,root) %{py_sitedir}/_libvserver.so
+%{py_sitedir}/libvserver.py[co]
%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
+%dir %{_datadir}/%{name}/distributions/alpine
+%attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpost
+%attr(755,root,root) %{_datadir}/%{name}/distributions/alpine/initpre
%files -n vserver-distro-centos
%defattr(644,root,root,755)
-%{_libdir}/util-vserver/distributions/centos*
+%{_datadir}/util-vserver/distributions/centos*
%files -n vserver-distro-debian
%defattr(644,root,root,755)
-%dir %{_libdir}/%{name}/distributions/debian
-%attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
-%{_libdir}/%{name}/distributions/etch
-%{_libdir}/%{name}/distributions/lenny
-%{_libdir}/%{name}/distributions/sid
+%dir %{_datadir}/%{name}/distributions/debian
+%attr(755,root,root) %{_datadir}/%{name}/distributions/debian/initpost
+%{_datadir}/%{name}/distributions/etch
+%{_datadir}/%{name}/distributions/lenny
+%{_datadir}/%{name}/distributions/sid
+%{_datadir}/%{name}/distributions/squeeze
+%{_datadir}/%{name}/distributions/wheezy
%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/f7
-%{_libdir}/%{name}/distributions/f8
-%{_libdir}/%{name}/distributions/f9
-%{_libdir}/%{name}/distributions/f10
-%{_libdir}/%{name}/distributions/f11
-%{_libdir}/%{name}/distributions/fc1
-%{_libdir}/%{name}/distributions/fc2
-%{_libdir}/%{name}/distributions/fc3
-%{_libdir}/%{name}/distributions/fc4
-%{_libdir}/%{name}/distributions/fc5
-%{_libdir}/%{name}/distributions/fc6
+%{_datadir}/%{name}/distributions/f7
+%{_datadir}/%{name}/distributions/f8
+%{_datadir}/%{name}/distributions/f9
+%{_datadir}/%{name}/distributions/f10
+%{_datadir}/%{name}/distributions/f11
+%{_datadir}/%{name}/distributions/f12
+%{_datadir}/%{name}/distributions/f13
+%{_datadir}/%{name}/distributions/f14
+%{_datadir}/%{name}/distributions/fc1
+%{_datadir}/%{name}/distributions/fc2
+%{_datadir}/%{name}/distributions/fc3
+%{_datadir}/%{name}/distributions/fc4
+%{_datadir}/%{name}/distributions/fc5
+%{_datadir}/%{name}/distributions/fc6
%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/*
+%dir %{_datadir}/util-vserver/distributions/gentoo
+%attr(755,root,root) %{_datadir}/util-vserver/distributions/gentoo/*
%attr(755,root,root) %{_sbindir}/vdispatch-conf
%attr(755,root,root) %{_sbindir}/vemerge
%attr(755,root,root) %{_sbindir}/vesync
%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 %{_datadir}/%{name}/distributions/pld
+%attr(755,root,root) %{_datadir}/%{name}/distributions/pld/initpost
+%dir %{_datadir}/%{name}/distributions/pld-*
+%{_datadir}/%{name}/distributions/pld-*/pkgs
+%{_datadir}/%{name}/distributions/pld-*/pubkeys
+%{_datadir}/%{name}/distributions/pld-*/rpm
+%attr(755,root,root) %{_datadir}/%{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
%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/rh9
%dir %{_sysconfdir}/vservers/.distributions/rh9/apt
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
-%{_libdir}/%{name}/distributions/rh9
-%dir %{_libdir}/%{name}/distributions/redhat
-%attr(755,root,root) %{_libdir}/%{name}/distributions/redhat/initctl
-%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
+%{_datadir}/%{name}/distributions/rh9
+%dir %{_datadir}/%{name}/distributions/redhat
+%attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initctl
+%attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpost
+%attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/initpre
+%attr(755,root,root) %{_datadir}/%{name}/distributions/redhat/rc.sysinit
%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*
+%{_datadir}/%{name}/distributions/suse*
+
+%files -n vserver-distro-scientificlinux
+%defattr(644,root,root,755)
+%dir %{_datadir}/%{name}/distributions/sl6
+%attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpost
+%attr(755,root,root) %{_datadir}/%{name}/distributions/sl6/initpre
+%{_datadir}/%{name}/distributions/sl6/pkgs
+%{_datadir}/%{name}/distributions/sl6/yum
+%{_datadir}/%{name}/distributions/sl6/yum.repos.d
+
+%files -n vserver-distro-tld
+%defattr(644,root,root,755)
+%dir %{_datadir}/%{name}/distributions/tld
+%attr(755,root,root) %{_datadir}/%{name}/distributions/tld/initpost
+%{_datadir}/%{name}/distributions/tld/pkgs
+%{_datadir}/%{name}/distributions/tld/rpm
+%dir %{_sysconfdir}/vservers/.distributions/tld
+%dir %{_sysconfdir}/vservers/.distributions/tld/poldek
+%dir %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/tld/poldek/repos.d/*.conf