3 ## This package understands the following switches:
4 ## --without dietlibc ... disable usage of dietlibc
5 ## --without xalan ... do not require/use the xalan xslt processor
7 %global confdir %_sysconfdir/vservers
8 %global confdefaultdir %confdir/.defaults
9 %global pkglibdir %_libdir/%name
10 %global __chattr /usr/bin/chattr
11 %global chkconfig /sbin/chkconfig
13 %global _localstatedir %_var
16 %{!?release_func:%global release_func() %1%{?dist}}
18 Summary: Linux virtual server utilities
21 Release: %release_func 0
23 Group: System Environment/Base
24 URL: http://savannah.nongnu.org/projects/util-vserver/
25 Source0: http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%name-%version.tar.bz2
26 #Source1: http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%name-%version.tar.bz2.asc
27 BuildRoot: %_tmppath/%name-%version-%release-root
29 Requires: %name-core = %version-%release
30 Requires: %name-lib = %version-%release
31 Requires: diffutils mktemp sed
32 Provides: vserver = %version-%release
33 Obsoletes: vserver < %version
34 BuildRequires: mount vconfig gawk iproute iptables
35 BuildRequires: gcc-c++ wget which diffutils
36 BuildRequires: e2fsprogs-devel beecrypt-devel
37 BuildRequires: doxygen tetex-latex
38 Requires(post): %__chattr
39 Requires(pre): %pkglibdir
40 Requires(postun): %pkglibdir
41 %{!?_without_dietlibc:BuildRequires: dietlibc >= 0:0.25}
42 %{!?_without_xalan:BuildRequires: xalan-j}
45 Summary: Dynamic libraries for util-vserver
46 Group: System Environment/Libraries
49 Summary: The core-utilities for util-vserver
50 Group: Applications/System
54 Summary: Tools which can be used to build vservers
55 Group: Applications/System
56 Requires: rpm wget binutils tar e2fsprogs
57 Requires: %name = %version-%release
58 Requires(pre): %confdir
59 Requires(postun): %confdir
66 Summary: SysV-initscripts for vserver
67 Group: System Environment/Base
68 Provides: init(%name) = sysv
69 Requires: make diffutils
71 Requires: %name = %version-%release
72 Requires(post): %chkconfig
73 Requires(preun): %chkconfig
74 Requires(pre): %_initrddir %pkglibdir
75 requires(postun): %_initrddir %pkglibdir
78 Summary: Legacy utilities for util-vserver
79 Group: Applications/System
80 Requires: %name = %version-%release
81 Requires(post): %chkconfig
82 Requires(preun): %chkconfig
83 Requires(pre): %_initrddir %pkglibdir
84 requires(postun): %_initrddir %pkglibdir
87 Summary: Header-files and libraries needed to develop vserver based applications
88 Group: Development/Libraries
90 Requires: %name-lib = %version-%release
94 util-vserver provides the components and a framework to setup virtual
95 servers. A virtual server runs inside a linux server. It is nevertheless
96 highly independent. As such, you can run various services with normal
97 configuration. The various vservers can't interact with each other and
98 can't interact with services in the main server.
100 This requires a special kernel supporting the new new_s_context and
101 set_ipv4root system call.
104 util-vserver provides the components and a framework to setup virtual
105 servers. A virtual server runs inside a linux server. It is nevertheless
106 highly independent. As such, you can run various services with normal
107 configuration. The various vservers can't interact with each other and
108 can't interact with services in the main server.
110 This package contains the shared libraries needed by all other
111 'util-vserver' subpackages.
114 util-vserver provides the components and a framework to setup virtual
115 servers. A virtual server runs inside a linux server. It is nevertheless
116 highly independent. As such, you can run various services with normal
117 configuration. The various vservers can't interact with each other and
118 can't interact with services in the main server.
120 This package contains utilities which are required to communicate with
121 the Linux-Vserver enabled kernel.
125 util-vserver provides the components and a framework to setup virtual
126 servers. A virtual server runs inside a linux server. It is nevertheless
127 highly independent. As such, you can run various services with normal
128 configuration. The various vservers can't interact with each other and
129 can't interact with services in the main server.
131 This package contains utilities which assist in building Vservers.
134 util-vserver provides the components and a framework to setup virtual
135 servers. A virtual server runs inside a linux server. It is nevertheless
136 highly independent. As such, you can run various services with normal
137 configuration. The various vservers can't interact with each other and
138 can't interact with services in the main server.
140 This package contains the SysV initscripts which start and stop
141 VServers and related tools.
145 util-vserver provides the components and a framework to setup virtual
146 servers. A virtual server runs inside a linux server. It is nevertheless
147 highly independent. As such, you can run various services with normal
148 configuration. The various vservers can't interact with each other and
149 can't interact with services in the main server.
151 This package contains the tools which are needed to work with VServers
152 having an old-style configuration.
156 util-vserver provides the components and a framework to setup virtual
157 servers. A virtual server runs inside a linux server. It is nevertheless
158 highly independent. As such, you can run various services with normal
159 configuration. The various vservers can't interact with each other and
160 can't interact with services in the main server.
162 This package contains header files and libraries which are needed to
163 develop VServer related applications.
171 %configure --with-initrddir=%_initrddir --enable-release \
172 %{?_without_dietlibc:--disable-dietlibc}
174 %__make %{?_smp_mflags} all
175 %__make %{?_smp_mflags} doc
179 rm -rf $RPM_BUILD_ROOT
180 %__make DESTDIR="$RPM_BUILD_ROOT" install install-distribution
182 rm -f $RPM_BUILD_ROOT/%_libdir/*.la
184 MANIFEST_CONFIG='%config' \
185 MANIFEST_CONFIG_NOREPLACE='%config(noreplace)' \
186 contrib/make-manifest %name $RPM_BUILD_ROOT contrib/manifest.dat
194 rm -rf $RPM_BUILD_ROOT
198 test -d /vservers || mkdir -m0000 /vservers
199 test -d /vservers/.pkg || mkdir -m0755 /vservers/.pkg
201 f="%confdefaultdir/vdirbase"; test -L "$f" -o -e "$f" || ln -s /vservers "$f"
202 f="%confdefaultdir/run.rev"; test -L "$f" -o -e "$f" || ln -s %_localstatedir/run/vservers.rev "$f"
204 %_sbindir/setattr --barrier /vservers || :
207 %post lib -p /sbin/ldconfig
208 %postun lib -p /sbin/ldconfig
212 %chkconfig --add vservers-default
213 %chkconfig --add vprocunhide
218 test "$1" != 0 || %_initrddir/vprocunhide stop &>/dev/null || :
220 test "$1" != 0 || %chkconfig --del vprocunhide
221 test "$1" != 0 || %chkconfig --del vservers-default
225 test "$1" = 0 || %_initrddir/vprocunhide condrestart >/dev/null || :
228 %triggerin build -- fedora-release
235 test -r "$i" || continue
237 target=%confdir/.distributions/.common/pubkeys/$base-$(basename "$i")
241 copy fedora /usr/share/doc/fedora-release-*/RPM-GPG-*
242 copy fedora /etc/pki/rpm-gpg/RPM-GPG-*
246 test "$1" != 0 || rm -f %confdir/.distributions/.common/pubkeys/fedora-*
249 ## Temporary workaround to remove old v_* files; it will conflict
250 ## somehow with the -legacy package but can be fixed by reinstalling
252 ## TODO: remove me in the final .spec file
253 %define v_services httpd named portmap sendmail smb sshd xinetd gated
254 %triggerun sysv -- util-vserver-sysv < 0.30.198
255 for i in %v_services; do
256 %chkconfig --del v_$i || :
261 %chkconfig --add rebootmgr
262 %chkconfig --add vservers-legacy
264 for i in %v_services; do
265 %chkconfig --add v_$i
270 test "$1" != 0 || %_initrddir/rebootmgr stop &>/dev/null || :
272 test "$1" != 0 || for i in %v_services; do
273 %chkconfig --del v_$i
276 test "$1" != 0 || %chkconfig --del rebootmgr
277 test "$1" != 0 || %chkconfig --del vservers-legacy
280 test "$1" = 0 || %_initrddir/rebootmgr condrestart >/dev/null || :
283 %files -f %name-base.list
284 %defattr(-,root,root,-)
285 %doc AUTHORS COPYING ChangeLog NEWS README THANKS
286 %doc doc/*.html doc/*.css
290 %dir %confdefaultdir/apps
291 %dir %confdefaultdir/files
292 %dir %pkglibdir/defaults
293 %ghost %confdefaultdir/vdirbase
294 %ghost %confdefaultdir/run.rev
296 %dir %_localstatedir/run/vservers
297 %dir %_localstatedir/run/vservers.rev
298 %dir %_localstatedir/run/vshelper
301 %files lib -f %name-lib.list
302 %files sysv -f %name-sysv.list
305 %files core -f %name-core.list
306 %defattr(-,root,root,-)
310 %files build -f %name-build.list
311 %defattr(-,root,root,-)
312 %doc contrib/yum*.patch
313 %dir %confdir/.distributions
314 %dir %confdir/.distributions/*
315 %dir %confdir/.distributions/*/apt
316 %dir %confdir/.distributions/.common
317 %dir %confdir/.distributions/.common/pubkeys
318 %dir %confdefaultdir/apps/vunify
319 %dir %confdefaultdir/apps/vunify/hash
322 %files legacy -f %name-legacy.list
323 %defattr(-,root,root,-)
324 %dir %pkglibdir/legacy
327 %files devel -f %name-devel.list
328 %defattr(-,root,root,-)
329 %doc lib/apidoc/latex/refman.pdf
334 * Sat Jul 16 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-2
337 * Fri Jul 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.208-1
339 - require the -lib subpackage by -devel
340 - copy GPG keys from /etc/pki/rpm-gpg/
342 * Fri Apr 15 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.206-1
343 - added patches to make yum work in chroot environments
346 * Thu Mar 24 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.205-0
347 - added some %%descriptions
348 - copy GPG keys from the system into the confdir
349 - buildrequire dietlibc-0.25
350 - BuildRequire beecrypt-devel
352 - use %%global instead of %%define
353 - removed 'run.rev' as a vserver-local variable and made it a system-wide setting
355 * Wed Jan 26 2005 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.198-0.3
356 - updated BuildRequires:
357 - use 'setattr --barrier' instead of 'chattr +t' in the %%post scriptlet
358 - moved the v_* initscripts to legacy
359 - do not ship the /vservers directory itself; as it is immutable, the
360 extraction will fail else
362 * Thu Sep 9 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.30.194-0
363 - documented switches for 'rpmbuild'
365 * Wed May 26 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.215-0
366 - (re)added the MANIFEST_* variables which were lost some time ago;
367 this will preserve %%config files...
369 * Mon Mar 15 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.202-0
370 - use file-list for sysv scripts also
372 * Sat Mar 6 2004 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.29.198-0
373 - added vprocunhide-service support
374 - added doxygen support
377 * Wed Oct 1 2003 Enrico Scholz <enrico.scholz@informatik.tu-chemnitz.de> - 0:0.23.5-0