# $Id$ %define confdir %_sysconfdir/vservers %define confdefaultdir %confdir/.defaults %define pkglibdir %_libdir/%name %define __chattr /usr/bin/chattr %define chkconfig /sbin/chkconfig Summary: Linux virtual server utilities Name: @PACKAGE@ Version: @VERSION@ Release: 0 Epoch: 0 License: GPL Group: System Environment/Base URL: http://savannah.nongnu.org/projects/util-vserver/ Source0: http://savannah.nongnu.org/download/util-vserver/stable.pkg/%version/%name-%version.tar.bz2 BuildRoot: %_tmppath/%name-%version-%release-root Requires: init(@PACKAGE@) Requires: %name-core = %epoch:%version-%release Requires: %name-lib = %epoch:%version-%release Requires: make Provides: vserver = %epoch:%version-%release Obsoletes: vserver < %epoch:%version BuildRequires: mount vconfig gawk iproute BuildRequires: gcc-c++ wget BuildRequires: e2fsprogs-devel BuildRequires: doxygen tetex-latex libxslt Requires(post): %__chattr %{!?_without_dietlibc:BuildRequires: dietlibc >= 0:0.22} %package lib Summary: Dynamic libraries for util-vserver Group: System Environment/Libraries %package core Summary: The core-utilities for util-vserver Group: Applications/System %package build Summary: Tools which can be used to build vservers Group: Applications/System Requires: %name = %epoch:%version-%release Requires: rpm apt wget binutils tar %package sysv Summary: SysV-initscripts for vserver Group: System Environment/Base Provides: init(@PACKAGE@) Requires: %name = %epoch:%version-%release Requires: initscripts Requires(pre,postun): %_initrddir %package legacy Summary: Legacy utilities for util-vserver Group: Applications/System Requires: %name = %epoch:%version-%release %package devel Summary: Header-files and libraries which are needed to develop vserver based applications Group: Development/Libraries Requires: pkgconfig %description This package 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 requires a special kernel supporting the new new_s_context and set_ipv4root system call. %description lib %description core %description build %description sysv %description legacy %description devel %prep %setup -q %build %configure --with-initrddir=%_initrddir --enable-release \ %{?_without_dietlibc:--disable-dietlibc} %__make %{?_smp_mflags} all %__make %{?_smp_mflags} doc %install rm -rf $RPM_BUILD_ROOT %__make DESTDIR="$RPM_BUILD_ROOT" install install-vserverdir rm -f $RPM_BUILD_ROOT/%_libdir/*.la contrib/make-manifest %name $RPM_BUILD_ROOT contrib/manifest.dat %check || : %__make check %clean rm -rf $RPM_BUILD_ROOT %post f="%confdefaultdir/vdirbase"; test -L "$f" -o -e "$f" || ln -s /vservers "$f" f="%confdefaultdir/run.rev"; test -L "$f" -o -e "$f" || ln -s /var/run/vservers.rev "$f" %__chattr +t /vservers || : %define v_services httpd named portmap sendmail smb sshd xinetd %post sysv %chkconfig --add vservers %chkconfig --add rebootmgr %chkconfig --add vprocunhide for i in %v_services; do %chkconfig --add v_$i done %preun sysv test "$1" != 0 || for i in %v_services; do %chkconfig --del v_$i done test "$1" != 0 || %_initrddir/vprocunhide stop &>/dev/null || : test "$1" != 0 || %_initrddir/rebootmgr stop &>/dev/null || : test "$1" != 0 || %chkconfig --del vprocunhide test "$1" != 0 || %chkconfig --del rebootmgr test "$1" != 0 || %chkconfig --del vservers %postun sysv test "$1" = 0 || %_initrddir/vprocunhide condrestart >/dev/null || : test "$1" = 0 || %_initrddir/rebootmgr condrestart >/dev/null || : %post lib -p /sbin/ldconfig %postun lib -p /sbin/ldconfig %files -f %name-base.list %defattr(-,root,root,-) %doc AUTHORS COPYING ChangeLog NEWS README THANKS %doc doc/FAQ.txt %doc doc/*.html doc/*.css %dir %pkglibdir %dir %confdefaultdir %dir %confdefaultdir/init %dir %confdefaultdir/apps %dir %confdefaultdir/apps/pkgmgmt %dir %confdefaultdir/files %ghost %confdefaultdir/vdirbase %ghost %confdefaultdir/run.rev %attr(000,root,root) %dir /vservers/.pkg %attr(000,root,root) %dir /vservers %dir /var/run/vservers %dir /var/run/vservers.rev %files lib -f %name-lib.list %files core -f %name-core.list %defattr(-,root,root,-) %dir %pkglibdir %files build -f %name-build.list %defattr(-,root,root,-) %dir %pkglibdir %dir %confdir/.distributions %dir %confdir/.distributions/* %dir %confdir/.distributions/*/apt %config(noreplace) %confdir/.distributions/*/apt/sources.list %files legacy -f %name-legacy.list %defattr(-,root,root,-) %dir %pkglibdir/legacy %files sysv %defattr(-,root,root,-) %config %_initrddir/* %config(noreplace) %_sysconfdir/vservers.conf %files devel -f %name-devel.list %defattr(-,root,root,-) %doc lib/apidoc/latex/refman.pdf %doc lib/apidoc/html %changelog * Sat Mar 6 2004 Enrico Scholz - 0:0.29.198-0 - added vprocunhide-service support - added doxygen support - updated Requires: * Wed Oct 1 2003 Enrico Scholz - 0:0.23.5-0 - Initial build.