start the vserver with the '--rescue' option and execute operations
[util-vserver.git] / util-vserver / util-vserver.spec.in
index dbfa290..a74c070 100644 (file)
@@ -13,7 +13,7 @@
 %global _localstatedir %_var
 
 
-%{!?release_func:%global release_func() %1}
+%{!?release_func:%global release_func() %1%{?dist}}
 
 Summary:       Linux virtual server utilities
 Name:          @PACKAGE@
@@ -22,7 +22,8 @@ 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
+Source0:       http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%name-%version.tar.bz2
+#Source1:      http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%name-%version.tar.bz2.asc
 BuildRoot:     %_tmppath/%name-%version-%release-root
 Requires:      init(%name)
 Requires:      %name-core = %version-%release
@@ -31,13 +32,13 @@ Requires:   diffutils mktemp sed
 Provides:      vserver = %version-%release
 Obsoletes:     vserver < %version
 BuildRequires: mount vconfig gawk iproute iptables
-BuildRequires: gcc-c++ wget
-BuildRequires: e2fsprogs-devel
+BuildRequires: gcc-c++ wget which diffutils
+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
@@ -52,11 +53,15 @@ Requires:           util-linux
 %package build
 Summary:               Tools which can be used to build vservers
 Group:                 Applications/System
-Requires:              rpm apt wget binutils tar e2fsprogs
+Requires:              rpm wget binutils tar e2fsprogs
 Requires:              %name = %version-%release
 Requires(pre):         %confdir
 Requires(postun):      %confdir
 
+%ifarch %ix86
+Requires:              apt
+%endif
+
 %package sysv
 Summary:               SysV-initscripts for vserver
 Group:                 System Environment/Base
@@ -79,13 +84,14 @@ Requires(pre):              %_initrddir %pkglibdir
 requires(postun):      %_initrddir %pkglibdir
 
 %package devel
-Summary:               Header-files and libraries which are needed to develop vserver based applications
+Summary:               Header-files and libraries needed to develop vserver based applications
 Group:                 Development/Libraries
 Requires:              pkgconfig
+Requires:              %name-lib = %version-%release
 
 
 %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
@@ -95,11 +101,66 @@ This requires a special kernel supporting the new new_s_context 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
@@ -164,6 +225,30 @@ test "$1" != 0 || %chkconfig --del vservers-default
 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-*
+copy fedora /etc/pki/rpm-gpg/RPM-GPG-*
+
+copy centos /usr/share/doc/centos-*/RPM-GPG-KEY-*
+
+
+%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.
@@ -227,9 +312,14 @@ test "$1" = 0  || %_initrddir/rebootmgr   condrestart >/dev/null || :
 
 %files build -f %name-build.list
 %defattr(-,root,root,-)
+%doc contrib/yum*.patch
 %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
@@ -244,9 +334,30 @@ test "$1" = 0  || %_initrddir/rebootmgr   condrestart >/dev/null || :
 
 
 %changelog
+* Sat Jul 16 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-2
+- updated URLs
+
+* Fri Jul 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-1
+- version 0.30.208
+- require the -lib subpackage by -devel
+- copy GPG keys from /etc/pki/rpm-gpg/
+
+* Fri Apr 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.206-1
+- added patches to make yum work in chroot environments
+- version 0.30.206
+
+* 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