## --without dietlibc ... disable usage of dietlibc
## --without xalan ... do not require/use the xalan xslt processor
-%define confdir %_sysconfdir/vservers
-%define confdefaultdir %confdir/.defaults
-%define pkglibdir %_libdir/%name
-%define __chattr /usr/bin/chattr
-%define chkconfig /sbin/chkconfig
+%global confdir %_sysconfdir/vservers
+%global confdefaultdir %confdir/.defaults
+%global pkglibdir %_libdir/%name
+%global __chattr /usr/bin/chattr
+%global chkconfig /sbin/chkconfig
-%define _localstatedir %_var
+%global _localstatedir %_var
+
+
+%{!?release_func:%global release_func() %1}
Summary: Linux virtual server utilities
Name: @PACKAGE@
Version: @VERSION@
-Release: 0
-Epoch: 0
+Release: %release_func 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(%name)
-Requires: %name-core = %epoch:%version-%release
-Requires: %name-lib = %epoch:%version-%release
+Requires: %name-core = %version-%release
+Requires: %name-lib = %version-%release
Requires: diffutils mktemp sed
-Provides: vserver = %epoch:%version-%release
-Obsoletes: vserver < %epoch:%version
+Provides: vserver = %version-%release
+Obsoletes: vserver < %version
BuildRequires: mount vconfig gawk iproute iptables
BuildRequires: gcc-c++ wget
-BuildRequires: e2fsprogs-devel
+BuildRequires: e2fsprogs-devel beecrypt-devel
BuildRequires: doxygen tetex-latex
Requires(post): %__chattr
Requires(pre): %pkglibdir
Requires(postun): %pkglibdir
-%{!?_without_dietlibc:BuildRequires: dietlibc >= 0:0.24}
+%{!?_without_dietlibc:BuildRequires: dietlibc >= 0:0.25}
%{!?_without_xalan:BuildRequires: xalan-j}
%package lib
Summary: Tools which can be used to build vservers
Group: Applications/System
Requires: rpm apt wget binutils tar e2fsprogs
-Requires: %name = %epoch:%version-%release
+Requires: %name = %version-%release
Requires(pre): %confdir
Requires(postun): %confdir
Provides: init(%name) = sysv
Requires: make diffutils
Requires: initscripts
-Requires: %name = %epoch:%version-%release
+Requires: %name = %version-%release
Requires(post): %chkconfig
Requires(preun): %chkconfig
Requires(pre): %_initrddir %pkglibdir
%package legacy
Summary: Legacy utilities for util-vserver
Group: Applications/System
-Requires: %name = %epoch:%version-%release
+Requires: %name = %version-%release
Requires(post): %chkconfig
Requires(preun): %chkconfig
Requires(pre): %_initrddir %pkglibdir
%description
-This package provides the components and a framework to setup virtual
+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
set_ipv4root system call.
%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 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.
+
%description core
+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 are required to communicate with
+the Linux-Vserver enabled kernel.
+
+
%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 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.
+
%description sysv
+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 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 devel
+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 header files and libraries which are needed to
+develop VServer related applications.
%prep
test "$1" = 0 || %_initrddir/vprocunhide condrestart >/dev/null || :
+%triggerin build -- fedora-release
+function copy()
+{
+ base=$1
+ shift
+
+ for i; do
+ test -r "$i" || continue
+
+ target=%confdir/.distributions/.common/pubkeys/$base-$(basename "$i")
+ cp -a "$i" "$target"
+ done
+}
+copy fedora /usr/share/doc/fedora-release-*/RPM-GPG-*
+
+
+%preun build
+test "$1" != 0 || rm -f %confdir/.distributions/.common/pubkeys/fedora-*
+
+
## Temporary workaround to remove old v_* files; it will conflict
## somehow with the -legacy package but can be fixed by reinstalling
## this package.
%dir %confdir/.distributions
%dir %confdir/.distributions/*
%dir %confdir/.distributions/*/apt
+%dir %confdir/.distributions/.common
+%dir %confdir/.distributions/.common/pubkeys
+%dir %confdefaultdir/apps/vunify
+%dir %confdefaultdir/apps/vunify/hash
%files legacy -f %name-legacy.list
%changelog
+* Thu Mar 24 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.205-0
+- added some %%descriptions
+- copy GPG keys from the system into the confdir
+- buildrequire dietlibc-0.25
+- BuildRequire beecrypt-devel
+- cleanups
+- use %%global instead of %%define
+- removed 'run.rev' as a vserver-local variable and made it a system-wide setting
+
* Wed Jan 26 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.198-0.3
- updated BuildRequires:
-- use 'setattr --barrier' instead of 'chattr +t' in the %post scriptlet
+- use 'setattr --barrier' instead of 'chattr +t' in the %%post scriptlet
- moved the v_* initscripts to legacy
- do not ship the /vservers directory itself; as it is immutable, the
extraction will fail else