3 %bcond_without dietlibc # don't use dietlibc (ask for troubles)
4 %bcond_without doc # don't build documentation which needed LaTeX
5 %bcond_with xalan # use the xalan xslt processor
7 Summary: Linux virtual server utilities
8 Summary(pl): Narzêdzia dla linuksowych serwerów wirtualnych
13 Group: Applications/System
14 Source0: http://www.13thfloor.at/~ensc/util-vserver/files/alpha/%{name}-%{version}.tar.bz2
15 # Source0-md5: 1c8457a687643ae8a7b1f1d34ebbdd68
16 Source1: vprocunhide.init
17 Source2: vservers-default.init
18 Source3: vservers-legacy.init
19 Source4: rebootmgr.init
20 Source5: vservers-default.sysconfig
21 Source6: vservers-legacy.sysconfig
22 # A bit of documentation explaining package menagement
23 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
24 Source7: util-vserver-pkgmgmt.txt
25 Patch0: %{name}-no-kernel-includes.patch
26 Patch1: %{name}-vsysvwrapper.patch
27 Patch2: %{name}-pld.patch
28 Patch3: %{name}-build-poldek.patch
29 Patch4: %{name}-include.patch
30 URL: http://savannah.nongnu.org/projects/util-vserver/
31 BuildRequires: autoconf
32 BuildRequires: automake >= 1.9
33 BuildRequires: beecrypt-devel
34 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
35 BuildRequires: libstdc++-devel
36 BuildRequires: libtool >= 1.5.14
39 BuildRequires: doxygen
40 BuildRequires: graphviz
41 BuildRequires: libxslt-progs
42 BuildRequires: tetex-format-pdflatex
43 BuildRequires: tetex-makeindex
44 %{?with_xalan:BuildRequires: xalan-j}
48 Requires(post,preun): /sbin/chkconfig
49 Requires: %{name}-lib = %{version}-%{release}
50 Obsoletes: %{name}-core
51 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54 This package provides the components and a framework to setup virtual
55 servers. A virtual server runs inside a Linux server. It is
56 nevertheless highly independent. As such, you can run various services
57 with normal configuration. The various vservers can't interact with
58 each other and can't interact with services in the main server.
60 This requires a special kernel supporting the new new_s_context and
61 set_ipv4root system call.
63 This package contains utilities which are required to communicate with
64 the Linux-Vserver enabled kernel.
67 Ten pakiet dostarcza sk³adniki i szkielet do tworzenia wirtualnych
68 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
69 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
70 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
71 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
73 Wymaga to specjalnego j±dra obs³uguj±cego nowe wywo³ania systemowe
74 new_s_context i set_ipv4root.
76 Ten pakiet zawiera narzêdzia wymagane do komunikacji z j±drem z
77 w³±czonym mechanizmem Linux-Vserver.
80 Summary: Development files for Linux vserver libraries
81 Summary(pl): Pliki programistyczne dla bibliotek linuksowego vserwera
82 Group: Development/Libraries
83 Requires: %{name}-lib = %{version}-%{release}
86 This package contains the development files necessary for developing
87 programs which use vserver library.
89 %description devel -l pl
90 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
91 programów u¿ywaj±cych biblioteki vserver.
94 Summary: Static vserver library
95 Summary(pl): Biblioteka statyczna vservera
96 Group: Development/Libraries
97 Requires: %{name}-devel = %{version}-%{release}
100 This package contains the static version of vserver library.
102 %description static -l pl
103 Ten pakiet zawiera statyczn± wersjê biblioteki vservera.
106 Summary: Dynamic libraries for util-vserver
107 Summary(pl): Biblioteki dynamiczne dla pakietu util-vserver
111 util-vserver provides the components and a framework to setup virtual
112 servers. A virtual server runs inside a linux server. It is
113 nevertheless highly independent. As such, you can run various services
114 with normal configuration. The various vservers can't interact with
115 each other and can't interact with services in the main server.
117 This package contains the shared libraries needed by all other
118 'util-vserver' subpackages.
120 %description lib -l pl
121 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
122 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
123 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
124 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
125 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
127 Ten pakiet zawiera biblioteki wspó³dzielone wymagane przez wszystkie
128 podpakiety util-vserver.
131 Summary: Tools which can be used to build vservers
132 Summary(pl): Narzêdzia do budowania vserverów
133 Group: Applications/System
139 Conflicts: poldek < 0.18.8-10
140 Requires: %{name} = %{version}-%{release}
143 util-vserver provides the components and a framework to setup virtual
144 servers. A virtual server runs inside a linux server. It is
145 nevertheless highly independent. As such, you can run various services
146 with normal configuration. The various vservers can't interact with
147 each other and can't interact with services in the main server.
149 This package contains utilities which assist in building Vservers.
151 %description build -l pl
152 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
153 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
154 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
155 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
156 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
158 Ten pakiet zawiera narzêdzia pomagaj±ce przy budowaniu Vserwerów.
161 Summary: initscripts for vserver
162 Summary(pl): Skrypty inicjalizuj±ce dla vserwera
163 Group: Applications/System
164 Requires(post,preun): /sbin/chkconfig
165 Requires: %{name} = %{version}-%{release}
171 util-vserver provides the components and a framework to setup virtual
172 servers. A virtual server runs inside a linux server. It is
173 nevertheless highly independent. As such, you can run various services
174 with normal configuration. The various vservers can't interact with
175 each other and can't interact with services in the main server.
177 This package contains the SysV initscripts which start and stop
178 Vservers and related tools.
180 %description init -l pl
181 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
182 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
183 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
184 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
185 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
187 Ten pakiet zawiera skrypty inicjalizuj±ce SysV uruchamiaj±ce i
188 zatrzymuj±ce Vserwery oraz powi±zane narzêdzia.
191 Summary: Legacy utilities for util-vserver
192 Summary(pl): Stare narzêdzia dla util-vserver
193 Group: Applications/System
194 Requires(post,preun): /sbin/chkconfig
195 Requires: %{name} = %{version}-%{release}
199 util-vserver provides the components and a framework to setup virtual
200 servers. A virtual server runs inside a linux server. It is
201 nevertheless highly independent. As such, you can run various services
202 with normal configuration. The various vservers can't interact with
203 each other and can't interact with services in the main server.
205 This package contains the tools which are needed to work with Vservers
206 having an old-style configuration.
208 %description legacy -l pl
209 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
210 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
211 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
212 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
213 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
215 Ten pakiet zawiera narzêdzia potrzebne do pracy z Vserwerami maj±cymi
216 konfiguracjê w starym stylu.
218 %package -n vserver-dev
219 Summary: /dev entries for systems in Vservers
220 Summary(pl): Pliki specjalne /dev/* dla systemów w Vserwerach
222 PreReq: setup >= 2.4.1-2
223 Provides: dev = 2.9.0-19
227 %description -n vserver-dev
228 Unix and unix like systems (including Linux) use file system entries
229 to represent devices attached to the machine. All of these entries are
230 in the /dev tree (though they don't have to be), and this package
231 contains only entries needed for a system running inside Vserver.
233 DO NOT install this package for a normal system!
235 %description -n vserver-dev -l pl
236 Wszystkie systemy klasy unices, w tym Linux, u¿ywaj± plików do
237 przedstawiania urz±dzeñ pod³±czonych do komputera. Wszystkie te pliki
238 znajduj± siê zwykle w katalogu /dev. Pakiet ten wy³±cznie te pliki
239 specjalne które s± potrzebne do uruchomienia systemu w Vserwerze.
241 NIE INSTALUJ tego pakietu na zwyk³ym systemie!
251 install %{SOURCE7} package-menagament.txt
253 cp -a compat.h vserver-compat.h
259 --with-initrddir=/etc/rc.d/init.d \
261 %{?with_dietlibc:--enable-dietlibc} \
262 %{!?with_dietlibc:--disable-dietlibc} \
268 IPTABLES=/usr/sbin/iptables \
269 MODPROBE=/sbin/modprobe \
270 NAMEIF=/sbin/nameif \
272 VCONFIG=/sbin/vconfig \
276 %{?with_doc:%{__make} doc}
279 rm -rf $RPM_BUILD_ROOT
280 install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d},/dev/pts}
282 %{__make} install install-distribution \
283 DESTDIR=$RPM_BUILD_ROOT
285 install vserver-compat.h $RPM_BUILD_ROOT%{_includedir}/
287 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
289 install -d $RPM_BUILD_ROOT/etc/vservices
290 install -d $RPM_BUILD_ROOT/vservers/.pkg
291 ln -s /vservers $RPM_BUILD_ROOT%{_sysconfdir}/vservers/vdirbase
292 ln -s %{_localstatedir}/run/vservers.rev $RPM_BUILD_ROOT%{_sysconfdir}/vservers/run.rev
294 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
295 s=`basename $i | sed s/v_//`
296 cat >$RPM_BUILD_ROOT/etc/vservices/$s << EOF
297 # IP addresses/interfaces to bound $s service to
303 sed 's|/usr/lib/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
304 $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
305 sed 's|/usr/lib/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
306 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
307 sed 's|/usr/lib/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
308 $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
309 sed 's|/usr/lib/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
310 $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
312 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers-default
313 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
315 ln -sf /dev/null $RPM_BUILD_ROOT/dev/initctl
318 rm -rf $RPM_BUILD_ROOT
321 %{_sbindir}/setattr --barrier /vservers || :
323 %post lib -p /sbin/ldconfig
324 %postun lib -p /sbin/ldconfig
327 /sbin/chkconfig --add vservers-default
328 /sbin/chkconfig --add vprocunhide
329 #if [ -r /var/lock/subsys/vprocunhide ]; then
330 # /etc/rc.d/init.d/vprocunhide restart >&2
332 #if [ -r /var/lock/subsys/vservers-default ]; then
333 # /etc/rc.d/init.d/vservers-default restart >&2
337 if [ "$1" = "0" ]; then
338 if [ -r /var/lock/subsys/vprocunhide ]; then
339 /etc/rc.d/init.d/vprocunhide stop >&2
341 if [ -r /var/lock/subsys/vservers-default ]; then
342 /etc/rc.d/init.d/vservers-default stop >&2
344 /sbin/chkconfig --del vprocunhide
345 /sbin/chkconfig --del vservers-default
349 /sbin/chkconfig --add rebootmgr
350 /sbin/chkconfig --add vservers-legacy
351 #if [ -r /var/lock/subsys/rebootmgr ] ; then
352 # /etc/rc.d/init.d/rebootmgr restart >&2
354 #if [ -r /var/lock/subsys/vservers-legacy ] ; then
355 # /etc/rc.d/init.d/vservers-legacy restart >&2
359 if [ "$1" = "0" ]; then
360 if [ -r /var/lock/subsys/rebootmgr ] ; then
361 /etc/rc.d/init.d/rebootmgr stop >&2
363 if [ -r /var/lock/subsys/vservers-legacy ] ; then
364 /etc/rc.d/init.d/vservers-legacy stop >&2
366 /sbin/chkconfig --del rebootmgr
367 /sbin/chkconfig --del vservers-legacy
371 %defattr(644,root,root,755)
372 %doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
373 %{?with_doc:%doc doc/*.html}
374 %dir %{_sysconfdir}/vservers
375 %dir %{_sysconfdir}/vservers/.defaults
376 %dir %{_sysconfdir}/vservers/.defaults/apps
377 %dir %{_sysconfdir}/vservers/.defaults/files
378 %{_sysconfdir}/vservers/.defaults/vdirbase
379 %{_sysconfdir}/vservers/.defaults/run.rev
380 %{_sysconfdir}/vservers/vdirbase
381 %{_sysconfdir}/vservers/run.rev
383 %attr(755,root,root) %{_sbindir}/chbind
384 %attr(755,root,root) %{_sbindir}/chcontext
385 %attr(755,root,root) %{_sbindir}/chxid
386 %attr(755,root,root) %{_sbindir}/exec-cd
387 %attr(755,root,root) %{_sbindir}/lsxid
388 %attr(755,root,root) %{_sbindir}/reducecap
389 %attr(755,root,root) %{_sbindir}/setattr
390 %attr(755,root,root) %{_sbindir}/showattr
391 %attr(755,root,root) %{_sbindir}/vattribute
392 %attr(755,root,root) %{_sbindir}/vcontext
393 %attr(755,root,root) %{_sbindir}/vdlimit
394 %attr(755,root,root) %{_sbindir}/vnamespace
395 %attr(755,root,root) %{_sbindir}/vkill
396 %attr(755,root,root) %{_sbindir}/vlimit
397 %attr(755,root,root) %{_sbindir}/vdu
398 %attr(755,root,root) %{_sbindir}/vps
399 %attr(755,root,root) %{_sbindir}/vpstree
400 %attr(755,root,root) %{_sbindir}/vrsetup
401 %attr(755,root,root) %{_sbindir}/vsched
402 %attr(755,root,root) %{_sbindir}/vserver
403 %attr(755,root,root) %{_sbindir}/vserver-info
404 %attr(755,root,root) %{_sbindir}/vserver-stat
405 %attr(755,root,root) %{_sbindir}/vsomething
406 %attr(755,root,root) %{_sbindir}/vtop
407 %attr(755,root,root) %{_sbindir}/vuname
408 %dir %{_libdir}/%{name}
409 %dir %{_libdir}/%{name}/defaults
410 %{_libdir}/%{name}/FEATURES.txt
411 %{_libdir}/%{name}/util-vserver-vars
412 %{_libdir}/%{name}/defaults/*
413 %attr(755,root,root) %{_libdir}/%{name}/capchroot
414 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
415 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
416 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
417 %attr(755,root,root) %{_libdir}/%{name}/chroot-*
418 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
419 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
420 %attr(755,root,root) %{_libdir}/%{name}/filetime
421 %{_libdir}/%{name}/functions
422 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
423 %attr(755,root,root) %{_libdir}/%{name}/lockfile
424 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
425 %attr(755,root,root) %{_libdir}/%{name}/readlink
426 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
427 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
428 %attr(755,root,root) %{_libdir}/%{name}/sigexec
429 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
430 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
431 %{_libdir}/%{name}/vserver.*
432 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
433 %attr(755,root,root) %{_libdir}/%{name}/vshelper
434 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
435 %{_mandir}/man8/chbind.8*
436 %{_mandir}/man8/chcontext.8*
437 %{_mandir}/man8/reducecap.8*
438 %{_mandir}/man8/vps.8*
439 %{_mandir}/man8/vpstree.8*
440 %{_mandir}/man8/vserver-stat.8*
441 %{_mandir}/man8/vserver.8*
442 %{_mandir}/man8/vtop.8*
443 %attr(0,root,root) %dir /vservers
444 %attr(755,root,root) %dir /vservers/.pkg
445 %dir %{_localstatedir}/run/vservers
446 %dir %{_localstatedir}/run/vservers.rev
447 %dir %{_localstatedir}/run/vshelper
450 %defattr(644,root,root,755)
451 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
452 %attr(755,root,root) %{_libdir}/lib*.so
454 %{_includedir}/vserver*.h
455 %{_pkgconfigdir}/*.pc
458 %defattr(644,root,root,755)
459 %{_libdir}/libvserver.a
462 %defattr(644,root,root,755)
463 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
466 %defattr(644,root,root,755)
467 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
468 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-default
469 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
470 %attr(754,root,root) /etc/rc.d/init.d/vservers-default
473 %defattr(644,root,root,755)
474 %doc contrib/yum*.patch package-menagament.txt
475 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
476 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
477 %dir %{_sysconfdir}/vservers/.distributions
478 %dir %{_sysconfdir}/vservers/.distributions/.common
479 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
480 %dir %{_sysconfdir}/vservers/.distributions/[frs]*
481 %dir %{_sysconfdir}/vservers/.distributions/[frs]*/apt
482 %dir %{_sysconfdir}/vservers/.distributions/pld2.0
483 %dir %{_sysconfdir}/vservers/.distributions/pld2.0/poldek
484 %{_sysconfdir}/vservers/.distributions/pld1.99
485 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/vservers/.distributions/[frs]*/apt/sources.list
486 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/vservers/.distributions/pld2.0/poldek/poldek.conf
487 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
488 %dir %{_libdir}/%{name}/distributions
489 %attr(-, root, root) %{_libdir}/%{name}/distributions/*
490 %{_libdir}/%{name}/vserver-build.*
491 %{_libdir}/%{name}/vserver-setup.functions
492 %{_libdir}/%{name}/defaults/fstab
493 %{_libdir}/%{name}/defaults/debootstrap.uri
494 %{_libdir}/%{name}/defaults/vunify-exclude
495 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
496 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
497 %attr(755,root,root) %{_libdir}/%{name}/vbuild
498 %attr(755,root,root) %{_libdir}/%{name}/vcheck
499 %attr(755,root,root) %{_libdir}/%{name}/vcopy
500 %attr(755,root,root) %{_libdir}/%{name}/vhashify
501 %attr(755,root,root) %{_libdir}/%{name}/vpkg
502 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
503 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
504 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
505 %attr(755,root,root) %{_libdir}/%{name}/vunify
506 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
507 %attr(755,root,root) %{_sbindir}/vapt-get
508 %attr(755,root,root) %{_sbindir}/vfiles
509 %attr(755,root,root) %{_sbindir}/vpoldek
510 %attr(755,root,root) %{_sbindir}/vrpm
511 %attr(755,root,root) %{_sbindir}/vyum
514 %defattr(644,root,root,755)
517 %dir %{_libdir}/%{name}/legacy
518 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
519 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
520 %attr(754,root,root) /etc/rc.d/init.d/v_*
521 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
522 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
523 %attr(755,root,root) %{_sbindir}/vserver-copy
524 %{_mandir}/man8/distrib-info.8*
525 %{_mandir}/man8/rebootmgr.8*
526 %{_mandir}/man8/vserver-copy.8*
528 %files -n vserver-dev
529 %defattr(644,root,root,755)
531 %dev(c,1,7) %attr(666,root,root) /dev/full
532 %dev(c,1,3) %attr(666,root,root) /dev/null
533 %dev(c,5,2) %attr(666,root,root) /dev/ptmx
534 %dev(c,1,8) %attr(644,root,root) /dev/random
535 %dev(c,5,0) %attr(666,root,root) /dev/tty
536 %dev(c,1,9) %attr(644,root,root) /dev/urandom
537 %dev(c,1,5) %attr(666,root,root) /dev/zero