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
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 URL: http://savannah.nongnu.org/projects/util-vserver/
30 BuildRequires: autoconf
31 BuildRequires: automake >= 1.9
32 BuildRequires: beecrypt-devel
33 %{?with_dietlibc:BuildRequires: dietlibc-static >= 0:0.25}
34 BuildRequires: doxygen
35 BuildRequires: libstdc++-devel
37 BuildRequires: libxslt-progs
38 BuildRequires: tetex-format-pdflatex
39 BuildRequires: tetex-makeindex
40 %{?with_xalan:BuildRequires: xalan-j}
43 Requires(post,preun): /sbin/chkconfig
44 Requires: %{name}-lib = %{version}-%{release}
45 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48 This package provides the components and a framework to setup virtual
49 servers. A virtual server runs inside a Linux server. It is
50 nevertheless highly independent. As such, you can run various services
51 with normal configuration. The various vservers can't interact with
52 each other and can't interact with services in the main server.
54 This requires a special kernel supporting the new new_s_context and
55 set_ipv4root system call.
58 Ten pakiet dostarcza sk³adniki i szkielet do tworzenia wirtualnych
59 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
60 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
61 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
62 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
64 Wymaga to specjalnego j±dra obs³uguj±cego nowe wywo³ania systemowe
65 new_s_context i set_ipv4root.
68 Summary: Development files for Linux vserver libraries
69 Summary(pl): Pliki programistyczne dla bibliotek linuksowego vserwera
70 Group: Development/Libraries
71 Requires: %{name} = %{version}-%{release}
74 This package contains the development files necessary for developing
75 programs which use vserver library.
77 %description devel -l pl
78 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
79 programów u¿ywaj±cych biblioteki vserver.
82 Summary: Static vserver library
83 Summary(pl): Biblioteka statyczna vservera
84 Group: Development/Libraries
85 Requires: %{name}-devel = %{version}-%{release}
88 This package contains the static version of vserver library.
90 %description static -l pl
91 Ten pakiet zawiera statyczn± wersjê biblioteki vservera.
94 Summary: Dynamic libraries for util-vserver
95 Summary(pl): Biblioteki dynamiczne dla pakietu util-vserver
99 util-vserver provides the components and a framework to setup virtual
100 servers. A virtual server runs inside a linux server. It is
101 nevertheless highly independent. As such, you can run various services
102 with normal configuration. The various vservers can't interact with
103 each other and can't interact with services in the main server.
105 This package contains the shared libraries needed by all other
106 'util-vserver' subpackages.
108 %description lib -l pl
109 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
110 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
111 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
112 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
113 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
115 Ten pakiet zawiera biblioteki wspó³dzielone wymagane przez wszystkie
116 podpakiety util-vserver.
119 Summary: The core-utilities for util-vserver
120 Summary(pl): Podstawowe narzêdzia dla util-vserver
121 Group: Applications/System
123 Requires: %{name} = %{version}-%{release}
126 util-vserver provides the components and a framework to setup virtual
127 servers. A virtual server runs inside a linux server. It is
128 nevertheless highly independent. As such, you can run various services
129 with normal configuration. The various vservers can't interact with
130 each other and can't interact with services in the main server.
132 This package contains utilities which are required to communicate with
133 the Linux-Vserver enabled kernel.
135 %description core -l pl
136 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
137 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
138 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
139 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
140 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
142 Ten pakiet zawiera narzêdzia wymagane do komunikacji z j±drem z
143 w³±czonym mechanizmem Linux-Vserver.
146 Summary: Tools which can be used to build vservers
147 Summary(pl): Narzêdzia do budowania vserverów
148 Group: Applications/System
154 Conflicts: poldek < 0.18.8-6
155 # remove the following when poldek 0.19 will have --rpmcmd oprion
156 Conflicts: poldek >= 0.19
157 Requires: %{name} = %{version}-%{release}
160 util-vserver provides the components and a framework to setup virtual
161 servers. A virtual server runs inside a linux server. It is
162 nevertheless highly independent. As such, you can run various services
163 with normal configuration. The various vservers can't interact with
164 each other and can't interact with services in the main server.
166 This package contains utilities which assist in building Vservers.
168 %description build -l pl
169 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
170 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
171 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
172 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
173 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
175 Ten pakiet zawiera narzêdzia pomagaj±ce przy budowaniu Vserwerów.
178 Summary: initscripts for vserver
179 Summary(pl): Skrypty inicjalizuj±ce dla vserwera
181 Requires(post,preun): /sbin/chkconfig
182 Requires: %{name} = %{version}-%{release}
183 Requires: %{name}-core = %{version}-%{release}
189 util-vserver provides the components and a framework to setup virtual
190 servers. A virtual server runs inside a linux server. It is
191 nevertheless highly independent. As such, you can run various services
192 with normal configuration. The various vservers can't interact with
193 each other and can't interact with services in the main server.
195 This package contains the SysV initscripts which start and stop
196 Vservers and related tools.
198 %description init -l pl
199 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
200 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
201 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
202 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
203 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
205 Ten pakiet zawiera skrypty inicjalizuj±ce SysV uruchamiaj±ce i
206 zatrzymuj±ce Vserwery oraz powi±zane narzêdzia.
209 Summary: Legacy utilities for util-vserver
210 Summary(pl): Stare narzêdzia dla util-vserver
211 Group: Applications/System
212 Requires(post,preun): /sbin/chkconfig
213 Requires: %{name} = %{version}-%{release}
214 Requires: %{name}-core = %{version}-%{release}
218 util-vserver provides the components and a framework to setup virtual
219 servers. A virtual server runs inside a linux server. It is
220 nevertheless highly independent. As such, you can run various services
221 with normal configuration. The various vservers can't interact with
222 each other and can't interact with services in the main server.
224 This package contains the tools which are needed to work with Vservers
225 having an old-style configuration.
227 %description legacy -l pl
228 util-vserver dostarcza sk³adniki i szkielet do tworzenia wirtualnych
229 serwerów. Wirtualny serwer dzia³a wewn±trz serwera linuksowego, lecz
230 jest od niego w du¿ym stopniu niezale¿ny. Jako taki mo¿e uruchamiaæ
231 ró¿ne us³ugi z normaln± konfiguracj±. Ró¿ne vserwery nie mog± wchodziæ
232 w interakcjê z innymi ani z us³ugami na g³ównym serwerze.
234 Ten pakiet zawiera narzêdzia potrzebne do pracy z Vserwerami maj±cymi
235 konfiguracjê w starym stylu.
237 %package -n vserver-dev
238 Summary: /dev entries for systems in Vservers
239 Summary(pl): Pliki specjalne /dev/* dla systemów w Vserwerach
241 PreReq: setup >= 2.4.1-2
242 Provides: dev = 2.9.0-19
246 %description -n vserver-dev
247 Unix and unix like systems (including Linux) use file system entries
248 to represent devices attached to the machine. All of these entries are
249 in the /dev tree (though they don't have to be), and this package
250 contains only entries needed for a system running inside Vserver.
252 DO NOT install this package for a normal system!
254 %description -n vserver-dev -l pl
255 Wszystkie systemy klasy unices, w tym Linux, u¿ywaj± plików do
256 przedstawiania urz±dzeñ pod³±czonych do komputera. Wszystkie te pliki
257 znajduj± siê zwykle w katalogu /dev. Pakiet ten wy³±cznie te pliki
258 specjalne które s± potrzebne do uruchomienia systemu w Vserwerze.
260 NIE INSTALUJ tego pakietu na zwyk³ym systemie!
269 install %{SOURCE7} package-menagament.txt
275 --with-initrddir=/etc/rc.d/init.d \
277 %{?with_dietlibc:--enable-dietlibc} \
278 %{!?with_dietlibc:--disable-dietlibc} \
284 IPTABLES=/usr/sbin/iptables \
285 MODPROBE=/sbin/modprobe \
286 NAMEIF=/sbin/nameif \
288 VCONFIG=/sbin/vconfig \
292 %{?with_doc:%{__make} doc}
295 rm -rf $RPM_BUILD_ROOT
296 install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d},/dev/pts}
298 %{__make} install install-distribution \
299 DESTDIR=$RPM_BUILD_ROOT
301 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
303 install -d $RPM_BUILD_ROOT/etc/vservices
304 install -d $RPM_BUILD_ROOT/vservers/.pkg
305 ln -s /vservers $RPM_BUILD_ROOT%{_sysconfdir}/vservers/vdirbase
306 ln -s %{_localstatedir}/run/vservers.rev $RPM_BUILD_ROOT%{_sysconfdir}/vservers/run.rev
308 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
309 s=`basename $i | sed s/v_//`
310 cat >$RPM_BUILD_ROOT/etc/vservices/$s << EOF
311 # IP addresses/interfaces to bound $s service to
317 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
318 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
319 install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
320 install %{SOURCE4} $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
321 install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/vservers-default
322 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
324 ln -sf /dev/null $RPM_BUILD_ROOT/dev/initctl
327 rm -rf $RPM_BUILD_ROOT
330 %{_sbindir}/setattr --barrier /vservers || :
332 %post lib -p /sbin/ldconfig
333 %postun lib -p /sbin/ldconfig
336 /sbin/chkconfig --add vservers-default
337 /sbin/chkconfig --add vprocunhide
338 #if [ -r /var/lock/subsys/vprocunhide ]; then
339 # /etc/rc.d/init.d/vprocunhide restart >&2
341 #if [ -r /var/lock/subsys/vservers-default ]; then
342 # /etc/rc.d/init.d/vservers-default restart >&2
346 if [ "$1" = "0" ]; then
347 if [ -r /var/lock/subsys/vprocunhide ]; then
348 /etc/rc.d/init.d/vprocunhide stop >&2
350 if [ -r /var/lock/subsys/vservers-default ]; then
351 /etc/rc.d/init.d/vservers-default stop >&2
353 /sbin/chkconfig --del vprocunhide
354 /sbin/chkconfig --del vservers-default
358 /sbin/chkconfig --add rebootmgr
359 /sbin/chkconfig --add vservers-legacy
360 #if [ -r /var/lock/subsys/rebootmgr ] ; then
361 # /etc/rc.d/init.d/rebootmgr restart >&2
363 #if [ -r /var/lock/subsys/vservers-legacy ] ; then
364 # /etc/rc.d/init.d/vservers-legacy restart >&2
368 if [ "$1" = "0" ]; then
369 if [ -r /var/lock/subsys/rebootmgr ] ; then
370 /etc/rc.d/init.d/rebootmgr stop >&2
372 if [ -r /var/lock/subsys/vservers-legacy ] ; then
373 /etc/rc.d/init.d/vservers-legacy stop >&2
375 /sbin/chkconfig --del rebootmgr
376 /sbin/chkconfig --del vservers-legacy
380 %defattr(644,root,root,755)
381 %doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
382 %{?with_doc:%doc doc/*.html}
383 %dir %{_sysconfdir}/vservers
384 %dir %{_sysconfdir}/vservers/.defaults
385 %dir %{_sysconfdir}/vservers/.defaults/apps
386 %dir %{_sysconfdir}/vservers/.defaults/files
387 %{_sysconfdir}/vservers/.defaults/vdirbase
388 %{_sysconfdir}/vservers/.defaults/run.rev
389 %{_sysconfdir}/vservers/vdirbase
390 %{_sysconfdir}/vservers/run.rev
392 %attr(755,root,root) %{_sbindir}/exec-cd
393 %attr(755,root,root) %{_sbindir}/vdu
394 %attr(755,root,root) %{_sbindir}/vps
395 %attr(755,root,root) %{_sbindir}/vpstree
396 %attr(755,root,root) %{_sbindir}/vserver
397 %attr(755,root,root) %{_sbindir}/vserver-stat
398 %attr(755,root,root) %{_sbindir}/vsomething
399 %attr(755,root,root) %{_sbindir}/vtop
400 %dir %{_libdir}/%{name}
401 %dir %{_libdir}/%{name}/defaults
402 %{_libdir}/%{name}/defaults/*
403 %attr(755,root,root) %{_libdir}/%{name}/capchroot
404 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
405 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
406 %attr(755,root,root) %{_libdir}/%{name}/chroot-*
407 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
408 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
409 %attr(755,root,root) %{_libdir}/%{name}/filetime
410 %{_libdir}/%{name}/functions
411 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
412 %attr(755,root,root) %{_libdir}/%{name}/lockfile
413 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
414 %attr(755,root,root) %{_libdir}/%{name}/readlink
415 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
416 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
417 %attr(755,root,root) %{_libdir}/%{name}/sigexec
418 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
419 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
420 %{_libdir}/%{name}/vserver.*
421 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
422 %attr(755,root,root) %{_libdir}/%{name}/vshelper
423 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
425 %attr(0,root,root) %dir /vservers
426 %attr(755,root,root) %dir /vservers/.pkg
427 %dir %{_localstatedir}/run/vservers
428 %dir %{_localstatedir}/run/vservers.rev
429 %dir %{_localstatedir}/run/vshelper
432 %defattr(644,root,root,755)
433 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
434 %attr(755,root,root) %{_libdir}/lib*.so
436 %{_includedir}/vserver.h
437 %{_pkgconfigdir}/*.pc
440 %defattr(644,root,root,755)
441 %{_libdir}/libvserver.a
444 %defattr(644,root,root,755)
445 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
448 %defattr(644,root,root,755)
449 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
450 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-default
451 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
452 %attr(754,root,root) /etc/rc.d/init.d/vservers-default
455 %defattr(644,root,root,755)
456 %dir %{_libdir}/%{name}
457 %{_libdir}/%{name}/FEATURES.txt
458 %{_libdir}/%{name}/util-vserver-vars
459 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
460 %attr(755,root,root) %{_sbindir}/chbind
461 %attr(755,root,root) %{_sbindir}/chcontext
462 %attr(755,root,root) %{_sbindir}/chxid
463 %attr(755,root,root) %{_sbindir}/lsxid
464 %attr(755,root,root) %{_sbindir}/reducecap
465 %attr(755,root,root) %{_sbindir}/setattr
466 %attr(755,root,root) %{_sbindir}/showattr
467 %attr(755,root,root) %{_sbindir}/vattribute
468 %attr(755,root,root) %{_sbindir}/vcontext
469 %attr(755,root,root) %{_sbindir}/vdlimit
470 %attr(755,root,root) %{_sbindir}/vnamespace
471 %attr(755,root,root) %{_sbindir}/vkill
472 %attr(755,root,root) %{_sbindir}/vlimit
473 %attr(755,root,root) %{_sbindir}/vrsetup
474 %attr(755,root,root) %{_sbindir}/vsched
475 %attr(755,root,root) %{_sbindir}/vserver-info
476 %attr(755,root,root) %{_sbindir}/vuname
477 %{_mandir}/man8/chbind*
478 %{_mandir}/man8/chcontext*
479 %{_mandir}/man8/reducecap*
482 %defattr(644,root,root,755)
483 %doc contrib/yum*.patch package-menagament.txt
484 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
485 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
486 %dir %{_sysconfdir}/vservers/.distributions
487 %dir %{_sysconfdir}/vservers/.distributions/.common
488 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
489 %dir %{_sysconfdir}/vservers/.distributions/[frs]*
490 %dir %{_sysconfdir}/vservers/.distributions/[frs]*/apt
491 %dir %{_sysconfdir}/vservers/.distributions/pld2.0
492 %dir %{_sysconfdir}/vservers/.distributions/pld2.0/poldek
493 %{_sysconfdir}/vservers/.distributions/pld1.99
494 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/vservers/.distributions/[frs]*/apt/sources.list
495 %config(noreplace) %verify(not md5 size mtime) %{_sysconfdir}/vservers/.distributions/pld2.0/poldek/poldek.conf
496 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
497 %dir %{_libdir}/%{name}/distributions
498 %attr(-, root, root) %{_libdir}/%{name}/distributions/*
499 %{_libdir}/%{name}/vserver-build.*
500 %{_libdir}/%{name}/vserver-setup.functions
501 %{_libdir}/%{name}/defaults/fstab
502 %{_libdir}/%{name}/defaults/debootstrap.uri
503 %{_libdir}/%{name}/defaults/vunify-exclude
504 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
505 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
506 %attr(755,root,root) %{_libdir}/%{name}/vbuild
507 %attr(755,root,root) %{_libdir}/%{name}/vcheck
508 %attr(755,root,root) %{_libdir}/%{name}/vcopy
509 %attr(755,root,root) %{_libdir}/%{name}/vhashify
510 %attr(755,root,root) %{_libdir}/%{name}/vpkg
511 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
512 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
513 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
514 %attr(755,root,root) %{_libdir}/%{name}/vunify
515 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
516 %attr(755,root,root) %{_sbindir}/vapt-get
517 %attr(755,root,root) %{_sbindir}/vfiles
518 %attr(755,root,root) %{_sbindir}/vpoldek
519 %attr(755,root,root) %{_sbindir}/vrpm
520 %attr(755,root,root) %{_sbindir}/vyum
521 %{_mandir}/man8/vserver-copy*
524 %defattr(644,root,root,755)
527 %dir %{_libdir}/%{name}/legacy
528 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
529 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
530 %attr(754,root,root) /etc/rc.d/init.d/v_*
531 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
532 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
533 %attr(755,root,root) %{_sbindir}/vserver-copy
534 %{_mandir}/man8/distrib-info*
535 %{_mandir}/man8/rebootmgr*
536 %{_mandir}/man8/vps.*
538 %files -n vserver-dev
539 %defattr(644,root,root,755)
541 %dev(c,1,7) %attr(666,root,root) /dev/full
542 %dev(c,1,3) %attr(666,root,root) /dev/null
543 %dev(c,5,2) %attr(666,root,root) /dev/ptmx
544 %dev(c,1,8) %attr(644,root,root) /dev/random
545 %dev(c,5,0) %attr(666,root,root) /dev/tty
546 %dev(c,1,9) %attr(644,root,root) /dev/urandom
547 %dev(c,1,5) %attr(666,root,root) /dev/zero