]> git.pld-linux.org Git - packages/util-vserver.git/blob - util-vserver.spec
d71f5541dc0ee7143b1ff8fa9e1884137bcc217b
[packages/util-vserver.git] / util-vserver.spec
1 # TODO
2 # - somewhy empty /var/cache/vservers is needed when building pld vserver
3 # - make build create /dev/std{in,out,err} links
4 # - f8 subpackage
5 # - reject install in %%pretrans if /proc/virtual/info has incompatible version
6 # - unpackaged
7 #   /etc/rc.d/init.d/util-vserver -- # integrate to our initscript (util-vserver sets the path to vshelper and kills all guest processes)
8 #
9 # m68k and mips are the only not supported archs
10 #
11 # Conditional build:
12 %bcond_without  dietlibc                # don't use dietlibc (ask for troubles)
13 %bcond_without  doc                     # don't build documentation which needed LaTeX
14 %bcond_without  no_dynamic_context      # disable enforcement of disabled dynamic context
15 %bcond_with     xalan                   # use the xalan xslt processor
16 #
17 %define _vproc_version 0.01
18 # diet compile fails with ccache in %{__cc}
19 %undefine       with_ccache
20 #
21 Summary:        Linux virtual server utilities
22 Summary(pl.UTF-8):      Narzędzia dla linuksowych serwerów wirtualnych
23 Name:           util-vserver
24 Version:        0.30.215
25 Release:        2.2
26 License:        GPL
27 Group:          Applications/System
28 Source0:        http://ftp.linux-vserver.org/pub/utils/util-vserver/%{name}-%{version}.tar.bz2
29 # Source0-md5:  befd9b8e5311e87395b67ee381d83649
30 Source1:        vprocunhide.init
31 Source2:        vservers.init
32 Source3:        vservers-legacy.init
33 Source4:        rebootmgr.init
34 Source5:        vservers.sysconfig
35 Source6:        vservers-legacy.sysconfig
36 Source7:        vrootdevices.init
37 Source8:        vrootdevices.sysconfig
38 # A bit of documentation explaining package management
39 # http://www.paul.sladen.org/vserver/archives/200505/0078.html
40 Source9:        %{name}-pkgmgmt.txt
41 Source10:       %{name}-initpost.sh
42 Source11:       http://www.13thfloor.at/vserver/s_release/v1.2.10/vproc-%{_vproc_version}.tar.bz2
43 # Source11-md5: 1d030717bdbc958ea4b35fd2410dad85
44 Source12:       %{name}-vhashify.cron
45 Source13:       ftp://ftp.pld-linux.org/dists/ac/PLD-2.0-Ac-GPG-key.asc
46 # Source13-md5: 8e7574d1de2fa95c2c54cd2ee03364c1
47 Source14:       ftp://ftp.pld-linux.org/dists/th/PLD-3.0-Th-GPG-key.asc
48 # Source14-md5: 08b29584dd349aac9caa7610131a0a88
49 Patch0:         %{name}-vsysvwrapper.patch
50 Patch1:         %{name}-pld.patch
51 Patch4:         %{name}-m4-diet.patch
52 Patch6:         %{name}-build-umask.patch
53 Patch7:         %{name}-utmpx.patch
54 Patch8:         %{name}-vprocunhide.patch
55 Patch9:         %{name}-dev.patch
56 Patch10:        %{name}-no-dynamic-ctx.patch
57 Patch11:        %{name}-more-ip.patch
58 Patch12:        %{name}-rpm-fake-resolver-badperm-errorlogging.patch
59 Patch13:        %{name}-tmpdir.patch
60 Patch14:        %{name}-rpmpath.patch
61 Patch15:        %{name}-interfaces-ignore-cvs-dir.patch
62 Patch16:        %{name}-personalitymachine.patch
63 URL:            http://savannah.nongnu.org/projects/util-vserver/
64 BuildRequires:  autoconf
65 BuildRequires:  automake >= 1.9
66 BuildRequires:  beecrypt-devel
67 %{?with_dietlibc:BuildRequires: dietlibc-static >= 2:0.29}
68 BuildRequires:  e2fsprogs-devel
69 BuildRequires:  libstdc++-devel
70 BuildRequires:  libtool >= 1.5.14
71 %ifarch %{x8664}
72 BuildRequires:  sed >= 4.0
73 %endif
74 BuildRequires:  rpmbuild(macros) >= 1.268
75 %if %{with doc}
76 BuildRequires:  doxygen
77 BuildRequires:  graphviz
78 BuildRequires:  libxslt-progs
79 BuildRequires:  tetex-format-pdflatex
80 BuildRequires:  tetex-makeindex
81 # To be removed when tetex-format-pdflatex, tetex-pdftex...
82 # ...and graphviz packages get fixed
83 BuildRequires:  ghostscript
84 BuildRequires:  ghostscript-fonts-std
85 BuildRequires:  tetex-fonts-jknappen
86 BuildRequires:  tetex-metafont
87 %{?with_xalan:BuildRequires:    xalan-j}
88 %endif
89 Requires(post,preun):   /sbin/chkconfig
90 Requires:       %{name}-lib = %{version}-%{release}
91 Requires:       issue
92 Requires:       mktemp >= 1.5-18
93 Requires:       rc-scripts
94 Requires:       tar
95 Requires:       util-linux
96 Obsoletes:      util-vserver-core
97 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
98
99 # for adapter
100 %define         _usrbin         /usr/bin
101 %define         _usrsbin        /usr/sbin
102 %define         _usrlib         /usr/lib
103
104 %description
105 This package provides the components and a framework to setup virtual
106 servers. A virtual server runs inside a Linux server. It is
107 nevertheless highly independent. As such, you can run various services
108 with normal configuration. The various vservers can't interact with
109 each other and can't interact with services in the main server.
110
111 This requires a special kernel supporting the new new_s_context and
112 set_ipv4root system call.
113
114 This package contains utilities which are required to communicate with
115 the Linux-Vserver enabled kernel.
116
117 %description -l pl.UTF-8
118 Ten pakiet dostarcza składniki i szkielet do tworzenia wirtualnych
119 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
120 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
121 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
122 w interakcję z innymi ani z usługami na głównym serwerze.
123
124 Wymaga to specjalnego jądra obsługującego nowe wywołania systemowe
125 new_s_context i set_ipv4root.
126
127 Ten pakiet zawiera narzędzia wymagane do komunikacji z jądrem z
128 włączonym mechanizmem Linux-Vserver.
129
130 %package lib
131 Summary:        Dynamic libraries for util-vserver
132 Summary(pl.UTF-8):      Biblioteki dynamiczne dla pakietu util-vserver
133 Group:          Libraries
134
135 %description lib
136 util-vserver provides the components and a framework to setup virtual
137 servers. A virtual server runs inside a linux server. It is
138 nevertheless highly independent. As such, you can run various services
139 pith normal configuration. The various vservers can't interact with
140 each other and can't interact with services in the main server.
141
142 This package contains the shared libraries needed by all other
143 'util-vserver' subpackages.
144
145 %description lib -l pl.UTF-8
146 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
147 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
148 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
149 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
150 w interakcję z innymi ani z usługami na głównym serwerze.
151
152 Ten pakiet zawiera biblioteki współdzielone wymagane przez wszystkie
153 podpakiety util-vserver.
154
155 %package devel
156 Summary:        Development files for Linux vserver libraries
157 Summary(pl.UTF-8):      Pliki programistyczne dla bibliotek linuksowego vserwera
158 Group:          Development/Libraries
159 Requires:       %{name}-lib = %{version}-%{release}
160
161 %description devel
162 This package contains the development files necessary for developing
163 programs which use vserver library.
164
165 %description devel -l pl.UTF-8
166 Ten pakiet zawiera pliki programistyczne konieczne do rozwijania
167 programów używających biblioteki vserver.
168
169 %package static
170 Summary:        Static vserver library
171 Summary(pl.UTF-8):      Biblioteka statyczna vservera
172 Group:          Development/Libraries
173 Requires:       %{name}-devel = %{version}-%{release}
174
175 %description static
176 This package contains the static version of vserver library.
177
178 %description static -l pl.UTF-8
179 Ten pakiet zawiera statyczną wersję biblioteki vservera.
180
181 %package build
182 Summary:        Tools which can be used to build vservers
183 Summary(pl.UTF-8):      Narzędzia do budowania vserverów
184 Group:          Applications/System
185 Requires:       %{name} = %{version}-%{release}
186 Requires:       vserver-distro-pld = %{version}-%{release}
187 Conflicts:      poldek < 0.18.8-10
188
189 %description build
190 util-vserver provides the components and a framework to setup virtual
191 servers. A virtual server runs inside a linux server. It is
192 nevertheless highly independent. As such, you can run various services
193 with normal configuration. The various vservers can't interact with
194 each other and can't interact with services in the main server.
195
196 This package contains utilities which assist in building Vservers.
197
198 %description build -l pl.UTF-8
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.
204
205 Ten pakiet zawiera narzędzia pomagające przy budowaniu Vserwerów.
206
207 %package init
208 Summary:        initscripts for vserver
209 Summary(pl.UTF-8):      Skrypty inicjalizujące dla vserwera
210 Group:          Applications/System
211 Requires(post,preun):   /sbin/chkconfig
212 Requires:       %{name} = %{version}-%{release}
213 Requires:       diffutils
214 Requires:       make
215 Requires:       rc-scripts
216
217 %description init
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.
223
224 This package contains the SysV initscripts which start and stop
225 Vservers and related tools.
226
227 %description init -l pl.UTF-8
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.
233
234 Ten pakiet zawiera skrypty inicjalizujące SysV uruchamiające i
235 zatrzymujące Vserwery oraz powiązane narzędzia.
236
237 %package legacy
238 Summary:        Legacy utilities for util-vserver
239 Summary(pl.UTF-8):      Stare narzędzia dla util-vserver
240 Group:          Applications/System
241 Requires(post,preun):   /sbin/chkconfig
242 Requires:       %{name} = %{version}-%{release}
243 Requires:       rc-scripts
244
245 %description legacy
246 util-vserver provides the components and a framework to setup virtual
247 servers. A virtual server runs inside a linux server. It is
248 nevertheless highly independent. As such, you can run various services
249 with normal configuration. The various vservers can't interact with
250 each other and can't interact with services in the main server.
251
252 This package contains the tools which are needed to work with Vservers
253 having an old-style configuration.
254
255 %description legacy -l pl.UTF-8
256 util-vserver dostarcza składniki i szkielet do tworzenia wirtualnych
257 serwerów. Wirtualny serwer działa wewnątrz serwera linuksowego, lecz
258 jest od niego w dużym stopniu niezależny. Jako taki może uruchamiać
259 różne usługi z normalną konfiguracją. Różne vserwery nie mogą wchodzić
260 w interakcję z innymi ani z usługami na głównym serwerze.
261
262 Ten pakiet zawiera narzędzia potrzebne do pracy z Vserwerami mającymi
263 konfigurację w starym stylu.
264
265 %package -n vserver-distro-alpine
266 Summary:        VServer build template for Alpine Linux
267 Summary(pl.UTF-8):      Szablon budowania VServerów dla dystrybucji Alpine Linux
268 Group:          Applications/System
269 Requires:       %{name}-build = %{version}-%{release}
270
271 %description -n vserver-distro-alpine
272 VServer build template for Alpine Linux.
273
274 %description -n vserver-distro-alpine -l pl.UTF-8
275 Szablon budowania VServerów dla dystrybucji Alpine Linux.
276
277 %package -n vserver-distro-centos
278 Summary:        VServer build template for CentOS
279 Summary(pl.UTF-8):      Szablon budowania VServerów dla dystrybucji CentOS
280 Group:          Applications/System
281 Requires:       %{name}-build = %{version}-%{release}
282 Requires:       yum
283
284 %description -n vserver-distro-centos
285 VServer build template for CentOS 4.2 and 5.
286
287 %description -n vserver-distro-centos -l pl.UTF-8
288 Szablon budowania VServerów dla dystrybucji CentOS 4.2 i 5.
289
290 %package -n vserver-distro-debian
291 Summary:        VServer build templates for Debian
292 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Debian
293 Group:          Applications/System
294 Requires:       %{name}-build = %{version}-%{release}
295 Requires:       dpkg
296
297 %description -n vserver-distro-debian
298 VServer build templates for Debian.
299
300 %description -n vserver-distro-debian -l pl.UTF-8
301 Szablony do tworzenia VServerów dla dystrybucji Debian.
302
303 %package -n vserver-distro-fedora
304 Summary:        VServer build templates for Fedora
305 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Fedora
306 Group:          Applications/System
307 Requires:       %{name}-build = %{version}-%{release}
308 Requires:       binutils
309 Requires:       e2fsprogs
310 Requires:       rpm
311 Requires:       wget
312 Requires:       yum
313
314 %description -n vserver-distro-fedora
315 VServer build templates for Fedora Core 1,2,3,4,5,6 and Fedora 7.
316
317 %description -n vserver-distro-fedora -l pl.UTF-8
318 Szablony do tworzenia VServerów dla dystrybucji Fedora Core
319 1,2,3,4,5,6 oraz Fedora 7.
320
321 %package -n vserver-distro-gentoo
322 Summary:        VServer build template for Gentoo
323 Summary(pl.UTF-8):      Szablon budowania VServerów dla Gentoo
324 Group:          Applications/System
325 Requires:       %{name}-build = %{version}-%{release}
326
327 %description -n vserver-distro-gentoo
328 VServer build template for Gentoo.
329
330 %description -n vserver-distro-gentoo -l pl.UTF-8
331 Szablon budowania VServerów dla Gentoo.
332
333 %package -n vserver-distro-pld
334 Summary:        VServer build templates for PLD Linux
335 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji PLD Linux
336 Group:          Applications/System
337 Requires:       %{name}-build = %{version}-%{release}
338 Requires:       /etc/pld-release
339 Requires:       poldek >= 0.30
340
341 %description -n vserver-distro-pld
342 VServer build templates for PLD Linux.
343
344 %description -n vserver-distro-pld -l pl.UTF-8
345 Szablony do tworzenia VServerów dla dystrybucji PLD Linux.
346
347 %package -n vserver-distro-redhat
348 Summary:        VServer build template for Red Hat Linux 9
349 Summary(pl.UTF-8):      Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9
350 Group:          Applications/System
351 Requires:       %{name}-build = %{version}-%{release}
352 Requires:       binutils
353 Requires:       e2fsprogs
354 Requires:       rpm
355 Requires:       wget
356
357 %description -n vserver-distro-redhat
358 VServer build template for RedHat Linux 9.
359
360 %description -n vserver-distro-redhat -l pl.UTF-8
361 Szablon do tworzenia VServerów dla dystrybucji Red Hat Linux 9.
362
363 %package -n vserver-distro-suse
364 Summary:        VServer build template for SuSE 9.1
365 Summary(pl.UTF-8):      Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1
366 Group:          Applications/System
367 Requires:       %{name}-build = %{version}-%{release}
368 Requires:       binutils
369 Requires:       e2fsprogs
370 Requires:       rpm
371 Requires:       wget
372
373 %description -n vserver-distro-suse
374 VServer build template for SuSE Linux 9.1.
375
376 %description -n vserver-distro-suse -l pl.UTF-8
377 Szablon do tworzenia VServerów dla dystrybucji SuSE 9.1.
378
379 %package -n vserver-distro-ubuntu
380 Summary:        VServer build templates for Ubuntu
381 Summary(pl.UTF-8):      Szablony do tworzenia VServerów dla dystrybucji Ubuntu
382 Group:          Applications/System
383 Requires:       %{name}-build = %{version}-%{release}
384 Requires:       dpkg
385
386 %description -n vserver-distro-ubuntu
387 VServer build templates for Ubuntu.
388
389 %description -n vserver-distro-ubuntu -l pl.UTF-8
390 Szablony do tworzenia VServerów dla dystrybucji Ubuntu.
391
392 %prep
393 %setup -q -a11
394 %patch0 -p1
395 %patch1 -p1
396 %patch4 -p1
397 %patch6 -p1
398 %patch7 -p1
399 %patch8 -p1
400 %patch9 -p1
401 %{?with_no_dynamic_context:%patch10 -p1}
402 %patch11 -p1
403 %patch12 -p1
404 %patch13 -p1
405 %patch14 -p1
406 %patch15 -p1
407 %patch16 -p1
408
409 install %{SOURCE9} package-management.txt
410
411 %build
412 unset LD_SYMBOLIC_FUNCTIONS || :
413
414 %if %{with dietlibc}
415 CFLAGS="%{rpmcflags} -D__GLIBC__ -D__KERNEL_STRICT_NAMES=1 -U__STRICT_ANSI__"
416 %endif
417 %{__aclocal} -I m4
418 %{__automake}
419 %{__autoconf}
420 %configure \
421         --with-initrddir=/etc/rc.d/init.d \
422         --enable-release \
423         --enable-apis=NOLEGACY \
424         --with-initscripts=sysv \
425         --%{?with_dietlibc:en}%{!?with_dietlibc:dis}able-dietlibc \
426         MKTEMP=/bin/mktemp \
427         MOUNT=/bin/mount \
428         PS=/bin/ps \
429         UMOUNT=/bin/umount \
430         IP=/sbin/ip \
431         IPTABLES=%{_usrsbin}/iptables \
432         MODPROBE=/sbin/modprobe \
433         NAMEIF=/sbin/nameif \
434         RMMOD=/sbin/rmmod \
435         VCONFIG=/sbin/vconfig \
436         WGET=%{_usrbin}/wget \
437
438 %{__make} all
439 %{?with_doc:%{__make} doc}
440
441 %{__make} -C vproc-%{_vproc_version} \
442         CC="%{__cc}" \
443         CFLAGS="%{rpmcflags}"
444
445 %install
446 rm -rf $RPM_BUILD_ROOT
447 install -d $RPM_BUILD_ROOT{/vservers,/etc/{sysconfig,rc.d/init.d,cron.d},/dev/pts} \
448         $RPM_BUILD_ROOT{%{_sysconfdir}/vservices,/vservers/.pkg}
449
450 %{__make} -j1 install install-distribution \
451         DESTDIR=$RPM_BUILD_ROOT
452
453 chmod -R +rX $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/*
454
455 for i in $RPM_BUILD_ROOT/etc/rc.d/init.d/v_* ; do
456         s=`basename $i | sed s/v_//`
457         cat >$RPM_BUILD_ROOT%{_sysconfdir}/vservices/$s << EOF
458 # IP addresses/interfaces to bound $s service to
459 #IP=10.0.0.1
460 #IP=eth0
461 EOF
462 done
463
464 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE1} > \
465         $RPM_BUILD_ROOT/etc/rc.d/init.d/vprocunhide
466 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE2} > \
467         $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers
468 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE3} > \
469         $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-legacy
470 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE4} > \
471         $RPM_BUILD_ROOT/etc/rc.d/init.d/rebootmgr
472 sed 's|%{_usrlib}/util-vserver|%{_libdir}/%{name}|g' %{SOURCE5} > \
473         $RPM_BUILD_ROOT/etc/sysconfig/vservers
474
475 install %{SOURCE6} $RPM_BUILD_ROOT/etc/sysconfig/vservers-legacy
476
477 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/vrootdevices
478 install %{SOURCE8} $RPM_BUILD_ROOT/etc/sysconfig/vrootdevices
479 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld
480 install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld/initpost
481 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/initpost
482 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/initpost
483 ln -s ../pld/initpost $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ti/initpost
484 install vproc-%{_vproc_version}/vproc $RPM_BUILD_ROOT%{_sbindir}
485 install %{SOURCE12} $RPM_BUILD_ROOT%{_libdir}/%{name}/vhashify.cron
486
487 cat > $RPM_BUILD_ROOT/etc/cron.d/vservers << EOF
488 02 2 * * 0      root    %{_libdir}/%{name}/vhashify.cron
489 EOF
490
491 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys
492 cp -a %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-ac/pubkeys/pld-ac.asc
493
494 install -d $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys
495 cp -a %{SOURCE14} $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/pld-th/pubkeys/pld-th.asc
496
497 # set arch for pld-ac in pld.conf
498 %ifarch i486 i686 ppc sparc alpha athlon
499 %define         _ftp_arch       %{_target_cpu}
500 %endif
501 %ifarch %{x8664}
502 %define         _ftp_arch       amd64
503 %endif
504 %ifarch pentium2 pentium3 pentium4
505 %define         _ftp_arch       i686
506 %endif
507 %ifarch sparcv9 sparc64
508 %define         _ftp_arch       sparc
509 %endif
510 %{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/pld.conf
511
512 # set arch for pld-th in pld.conf
513 %ifarch i486 i686 ppc sparc alpha athlon
514 %define         _ftp_arch       %{_target_cpu}
515 %endif
516 %ifarch %{x8664}
517 %define         _ftp_arch       x86_64
518 %endif
519 %ifarch i586
520 %define         _ftp_arch       i486
521 %endif
522 %ifarch pentium2 pentium3 pentium4
523 %define         _ftp_arch       i686
524 %endif
525 %ifarch sparcv9 sparc64
526 %define         _ftp_arch       sparc
527 %endif
528 %{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/pld.conf
529
530 # set arch for pld-ti in pld.conf
531 %ifarch i486 i686 ppc sparc alpha athlon
532 %define         _ftp_arch       %{_target_cpu}
533 %endif
534 %ifarch %{x8664}
535 %define         _ftp_arch       x86_64
536 %endif
537 %ifarch pentium2 pentium3 pentium4
538 %define         _ftp_arch       i686
539 %endif
540 %ifarch sparcv9 sparc64
541 %define         _ftp_arch       sparc
542 %endif
543 %{__sed} -i -e 's|%%ARCH%%|%{_ftp_arch}|' $RPM_BUILD_ROOT%{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/pld.conf
544
545 cat <<'EOF' > $RPM_BUILD_ROOT%{_libdir}/%{name}/distributions/defaults/rpm/platform
546 # first platform file entry can't contain regexps
547 %{_target_cpu}-%{_target_vendor}-linux
548
549 # x86_64 things
550 %ifarch x86_64
551 amd64-[^-]*-linux(-gnu)?
552 x86_64-[^-]*-linux(-gnu)?
553 %endif
554 %ifarch amd64
555 amd64-[^-]*-linux(-gnu)?
556 x86_64-[^-]*-linux(-gnu)?
557 %endif
558 %ifarch ia32e
559 ia32e-[^-]*-linux(-gnu)?
560 x86_64-[^-]*-linux(-gnu)?
561 %endif
562
563 # x86 things
564 %ifarch athlon %{x8664}
565 athlon-[^-]*-linux(-gnu)?
566 %endif
567 %ifarch pentium4 athlon %{x8664}
568 pentium4-[^-]*-linux(-gnu)?
569 %endif
570 %ifarch pentium3 pentium4 athlon %{x8664}
571 pentium3-[^-]*-linux(-gnu)?
572 %endif
573 %ifarch i686 pentium3 pentium4 athlon %{x8664}
574 i686-[^-]*-linux(-gnu)?
575 %endif
576 %ifarch i586 i686 pentium3 pentium4 athlon %{x8664}
577 i586-[^-]*-linux(-gnu)?
578 %endif
579 %ifarch i486 i586 i686 pentium3 pentium4 athlon %{x8664}
580 i486-[^-]*-linux(-gnu)?
581 %endif
582 %ifarch %{ix86} %{x8664}
583 i386-[^-]*-linux(-gnu)?
584 %endif
585
586 %ifarch alpha
587 alpha-[^-]*-linux(-gnu)?
588 %endif
589
590 %ifarch ia64
591 ia64-[^-]*-linux(-gnu)?
592 %endif
593
594 %ifarch ppc64
595 powerpc64-[^-]*-linux(-gnu)?
596 ppc64-[^-]*-linux(-gnu)?
597 %endif
598 %ifarch ppc ppc64
599 powerpc-[^-]*-linux(-gnu)?
600 ppc-[^-]*-linux(-gnu)?
601 %endif
602
603 %ifarch s390x
604 s390x-[^-]*-linux(-gnu)?
605 %endif
606 %ifarch s390 s390x
607 s390-[^-]*-linux(-gnu)?
608 %endif
609
610 %ifarch sparc64
611 sparc64-[^-]*-linux(-gnu)?
612 sparcv8-[^-]*-linux(-gnu)?
613 sparcv9-[^-]*-linux(-gnu)?
614 %endif
615 %ifarch sparcv9
616 sparcv8-[^-]*-linux(-gnu)?
617 sparcv9-[^-]*-linux(-gnu)?
618 %endif
619 %ifarch sparc sparcv9 sparc64
620 sparc-[^-]*-linux(-gnu)?
621 %endif
622
623 # noarch
624 noarch-[^-]*-.*
625 EOF
626
627 # XXX baggins check this: needed but seems unused
628 install -d $RPM_BUILD_ROOT/var/cache/vservers
629
630 # we have our own initscript which does the same
631 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/vservers-default
632 rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/util-vserver
633 rm -rf $RPM_BUILD_ROOT/dev
634 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-wrapper
635 rm -f $RPM_BUILD_ROOT%{_libdir}/util-vserver/vserver-init.functions
636 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/vservers.conf
637
638 %clean
639 rm -rf $RPM_BUILD_ROOT
640
641 %post
642 %{_sbindir}/setattr --barrier /vservers || :
643
644 %post   lib -p /sbin/ldconfig
645 %postun lib -p /sbin/ldconfig
646
647 %post init
648 /sbin/chkconfig --add vrootdevices
649 /sbin/chkconfig --add vprocunhide
650 /sbin/chkconfig --add vservers
651 if [ ! -f /var/lock/subsys/vrootdevices ]; then
652         echo "Type \"/sbin/service vrootdevices start\" to assign virtual root devices" 1>&2
653 fi
654 if [ ! -f /var/lock/subsys/vprocunhide ]; then
655         echo "Type \"/sbin/service vprocunhide start\" to set /proc visibility for vservers" 1>&2
656 fi
657 if [ ! -f /var/lock/subsys/vservers ]; then
658         echo "Type \"/sbin/service vservers start\" to start vservers" 1>&2
659 fi
660
661 %preun init
662 if [ "$1" = "0" ]; then
663         %service vservers stop
664         %service vprocunhide stop
665         %service vrootdevices stop
666         /sbin/chkconfig --del vservers
667         /sbin/chkconfig --del vprocunhide
668         /sbin/chkconfig --del vrootdevices
669 fi
670
671 %post legacy
672 /sbin/chkconfig --add rebootmgr
673 /sbin/chkconfig --add vservers-legacy
674 if [ ! -f /var/lock/subsys/rebootmgr ] ; then
675         echo "Type \"/sbin/service rebootmgr start\" to start reboot manager for legacy vservers" 1>&2
676 fi
677 if [ ! -f /var/lock/subsys/vservers-legacy ] ; then
678         echo "Type \"/sbin/service vservers-legacy start\" to start legacy vservers" 1>&2
679 fi
680
681 %preun legacy
682 if [ "$1" = "0" ]; then
683         %service rebootmgr stop
684         %service vservers-legacy stop
685         /sbin/chkconfig --del rebootmgr
686         /sbin/chkconfig --del vservers-legacy
687 fi
688
689 %triggerpostun -n vserver-distro-pld -- util-vserver-build < 0.30.215-1.1
690 for D in ac th ti; do
691         P=%{_sysconfdir}/vservers/.distributions/pld-$D/poldek
692
693         if [ -f $P/pld-source.conf.rpmsave ]; then
694                 cp -f $P/repos.d/pld.conf{,.rpmnew}
695                 mv -f $P/pld-source.conf.rpmsave $P/repos.d/pld.conf
696         fi
697 done
698 exit 0
699
700 %files
701 %defattr(644,root,root,755)
702 %doc AUTHORS ChangeLog NEWS THANKS doc/intro.txt
703 %{?with_doc:%doc doc/*.html}
704 %dir %{_sysconfdir}/vservers
705 %dir %{_sysconfdir}/vservers/.defaults
706 %dir %{_sysconfdir}/vservers/.defaults/apps
707 %dir %{_sysconfdir}/vservers/.defaults/files
708 %{_sysconfdir}/vservers/.defaults/vdirbase
709 %{_sysconfdir}/vservers/.defaults/run.rev
710 /sbin/vshelper
711 %attr(755,root,root) %{_sbindir}/chbind
712 %attr(755,root,root) %{_sbindir}/chcontext
713 %attr(755,root,root) %{_sbindir}/chxid
714 %attr(755,root,root) %{_sbindir}/exec-cd
715 %attr(755,root,root) %{_sbindir}/lsxid
716 %attr(755,root,root) %{_sbindir}/naddress
717 %attr(755,root,root) %{_sbindir}/nattribute
718 %attr(755,root,root) %{_sbindir}/ncontext
719 %attr(755,root,root) %{_sbindir}/reducecap
720 %attr(755,root,root) %{_sbindir}/setattr
721 %attr(755,root,root) %{_sbindir}/showattr
722 %attr(755,root,root) %{_sbindir}/vattribute
723 %attr(755,root,root) %{_sbindir}/vcontext
724 %attr(755,root,root) %{_sbindir}/vdlimit
725 %attr(755,root,root) %{_sbindir}/vnamespace
726 %attr(755,root,root) %{_sbindir}/vkill
727 %attr(755,root,root) %{_sbindir}/vlimit
728 %attr(755,root,root) %{_sbindir}/vdevmap
729 %attr(755,root,root) %{_sbindir}/vdu
730 %attr(755,root,root) %{_sbindir}/vmemctrl
731 %attr(755,root,root) %{_sbindir}/vmount
732 %attr(755,root,root) %{_sbindir}/vproc
733 %attr(755,root,root) %{_sbindir}/vps
734 %attr(755,root,root) %{_sbindir}/vpstree
735 %attr(755,root,root) %{_sbindir}/vspace
736 %attr(755,root,root) %{_sbindir}/vrsetup
737 %attr(755,root,root) %{_sbindir}/vsched
738 %attr(755,root,root) %{_sbindir}/vserver
739 %attr(755,root,root) %{_sbindir}/vserver-info
740 %attr(755,root,root) %{_sbindir}/vserver-stat
741 %attr(755,root,root) %{_sbindir}/vsomething
742 %attr(755,root,root) %{_sbindir}/vtag
743 %attr(755,root,root) %{_sbindir}/vtop
744 %attr(755,root,root) %{_sbindir}/vuname
745 %attr(755,root,root) %{_sbindir}/vwait
746 %dir %{_libdir}/%{name}
747 %dir %{_libdir}/%{name}/defaults
748 %{_libdir}/%{name}/FEATURES.txt
749 %{_libdir}/%{name}/util-vserver-vars
750 %{_libdir}/%{name}/defaults/*
751 %attr(755,root,root) %{_libdir}/%{name}/capchroot
752 %attr(755,root,root) %{_libdir}/%{name}/chain-echo
753 %attr(755,root,root) %{_libdir}/%{name}/chbind-compat
754 %attr(755,root,root) %{_libdir}/%{name}/check-unixfile
755 %attr(755,root,root) %{_libdir}/%{name}/chcontext-compat
756 %attr(755,root,root) %{_libdir}/%{name}/chroot-sh
757 %attr(755,root,root) %{_libdir}/%{name}/exec-ulimit
758 %attr(755,root,root) %{_libdir}/%{name}/fakerunlevel
759 %attr(755,root,root) %{_libdir}/%{name}/filetime
760 %{_libdir}/%{name}/functions
761 %attr(755,root,root) %{_libdir}/%{name}/h2ext
762 %attr(755,root,root) %{_libdir}/%{name}/h2ext-worker
763 %attr(755,root,root) %{_libdir}/%{name}/keep-ctx-alive
764 %attr(755,root,root) %{_libdir}/%{name}/lockfile
765 %attr(755,root,root) %{_libdir}/%{name}/mask2prefix
766 %attr(755,root,root) %{_libdir}/%{name}/readlink
767 %attr(755,root,root) %{_libdir}/%{name}/save_ctxinfo
768 %attr(755,root,root) %{_libdir}/%{name}/secure-mount
769 %attr(755,root,root) %{_libdir}/%{name}/sigexec
770 %attr(755,root,root) %{_libdir}/%{name}/start-vservers
771 %attr(755,root,root) %{_libdir}/%{name}/tunctl
772 %attr(755,root,root) %{_libdir}/%{name}/vprocunhide
773 %{_libdir}/%{name}/vserver.*
774 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
775 %attr(755,root,root) %{_libdir}/%{name}/vservers.grabinfo.sh
776 %attr(755,root,root) %{_libdir}/%{name}/vhashify
777 %attr(755,root,root) %{_libdir}/%{name}/vhashify.cron
778 %attr(755,root,root) %{_libdir}/%{name}/vshelper
779 %attr(755,root,root) %{_libdir}/%{name}/vshelper-sync
780 %attr(755,root,root) %{_libdir}/%{name}/vsysctl
781 %{_mandir}/man8/chbind.8*
782 %{_mandir}/man8/chcontext.8*
783 %{_mandir}/man8/reducecap.8*
784 %{_mandir}/man8/vps.8*
785 %{_mandir}/man8/vpstree.8*
786 %{_mandir}/man8/vserver-stat.8*
787 %{_mandir}/man8/vserver.8*
788 %{_mandir}/man8/vtop.8*
789 %attr(000,root,root) %dir /vservers
790 %dir /vservers/.pkg
791 %dir %{_localstatedir}/run/vservers
792 %dir %{_localstatedir}/run/vservers.rev
793 %dir %{_localstatedir}/run/vshelper
794 %dir /var/cache/vservers
795
796 %files lib
797 %defattr(644,root,root,755)
798 %attr(755,root,root) %{_libdir}/libvserver.so.*.*.*
799 %attr(755,root,root) %ghost %{_libdir}/libvserver.so.0
800
801 %files devel
802 %defattr(644,root,root,755)
803 %{?with_doc:%doc lib/apidoc/latex/refman.pdf lib/apidoc/html}
804 %attr(755,root,root) %{_libdir}/libvserver.so
805 %{_libdir}/lib*.la
806 %{_includedir}/vserver*.h
807 %{_pkgconfigdir}/*.pc
808
809 %files static
810 %defattr(644,root,root,755)
811 %{_libdir}/libvserver.a
812
813 %files build
814 %defattr(644,root,root,755)
815 %doc contrib/yum*.patch package-management.txt
816 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify
817 %dir %{_sysconfdir}/vservers/.defaults/apps/vunify/hash
818 %dir %{_sysconfdir}/vservers/.distributions
819 %dir %{_sysconfdir}/vservers/.distributions/.common
820 %dir %{_sysconfdir}/vservers/.distributions/.common/pubkeys
821 %attr(755,root,root) %{_libdir}/%{name}/rpm-fake*
822 %dir %{_libdir}/%{name}/distributions
823 %attr(-,root,root) %{_libdir}/%{name}/distributions/defaults
824 %dir %{_libdir}/%{name}/distributions/template
825 %attr(755,root,root) %{_libdir}/%{name}/distributions/template/init*
826 %attr(-,root,root) %{_libdir}/%{name}/distributions/redhat
827 %{_libdir}/%{name}/vserver-setup.functions
828 %{_libdir}/%{name}/vserver-build.*
829 %{_libdir}/%{name}/defaults/fstab
830 %{_libdir}/%{name}/defaults/debootstrap.uri
831 %{_libdir}/%{name}/defaults/vunify-exclude
832 %attr(755,root,root) %{_libdir}/%{name}/pkgmgmt
833 %attr(755,root,root) %{_libdir}/%{name}/vapt-get-worker
834 %attr(755,root,root) %{_libdir}/%{name}/vclone
835 %attr(755,root,root) %{_libdir}/%{name}/vcopy
836 %attr(755,root,root) %{_libdir}/%{name}/vpkg
837 %attr(755,root,root) %{_libdir}/%{name}/vpoldek-worker
838 %attr(755,root,root) %{_libdir}/%{name}/vrpm-*
839 %attr(755,root,root) %{_libdir}/%{name}/vserver-build
840 %attr(755,root,root) %{_libdir}/%{name}/vunify
841 %attr(755,root,root) %{_libdir}/%{name}/vyum-worker
842 %attr(755,root,root) %{_sbindir}/vapt-get
843 %attr(755,root,root) %{_sbindir}/vpoldek
844 %attr(755,root,root) %{_sbindir}/vrpm
845 %attr(755,root,root) %{_sbindir}/vyum
846 %{_mandir}/man8/vserver-build.8*
847
848 %files init
849 %defattr(644,root,root,755)
850 %attr(755,root,root) %{_libdir}/%{name}/vsysvwrapper
851 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vrootdevices
852 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers
853 %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/vservers
854 %attr(754,root,root) /etc/rc.d/init.d/vprocunhide
855 %attr(754,root,root) /etc/rc.d/init.d/vrootdevices
856 %attr(754,root,root) /etc/rc.d/init.d/vservers
857
858 %files legacy
859 %defattr(644,root,root,755)
860 %dir %{_sysconfdir}/vservices
861 %{_sysconfdir}/vservices/*
862 %dir %{_libdir}/%{name}/legacy
863 %attr(755,root,root) %{_libdir}/%{name}/legacy/*
864 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/vservers-legacy
865 %attr(754,root,root) /etc/rc.d/init.d/v_*
866 %attr(754,root,root) /etc/rc.d/init.d/rebootmgr
867 %attr(754,root,root) /etc/rc.d/init.d/vservers-legacy
868 %attr(755,root,root) %{_sbindir}/vserver-copy
869 %{_mandir}/man8/distrib-info.8*
870 %{_mandir}/man8/rebootmgr.8*
871 %{_mandir}/man8/vserver-copy.8*
872
873 %files -n vserver-distro-alpine
874 %defattr(644,root,root,755)
875 %dir %{_libdir}/%{name}/distributions/alpine
876 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpost
877 %attr(755,root,root) %{_libdir}/%{name}/distributions/alpine/initpre
878
879 %files -n vserver-distro-centos
880 %defattr(644,root,root,755)
881 %{_libdir}/util-vserver/distributions/centos*
882
883 %files -n vserver-distro-debian
884 %defattr(644,root,root,755)
885 %dir %{_libdir}/%{name}/distributions/debian
886 %{_libdir}/%{name}/distributions/debian/debootstrap.script
887 %attr(755,root,root) %{_libdir}/%{name}/distributions/debian/initpost
888 %{_libdir}/%{name}/distributions/etch
889 %{_libdir}/%{name}/distributions/lenny
890 %{_libdir}/%{name}/distributions/sid
891
892 %files -n vserver-distro-fedora
893 %defattr(644,root,root,755)
894 %dir %{_sysconfdir}/vservers/.distributions/f7
895 %dir %{_sysconfdir}/vservers/.distributions/f7/apt
896 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/f7/apt/sources.list
897 %dir %{_sysconfdir}/vservers/.distributions/fc*
898 %dir %{_sysconfdir}/vservers/.distributions/fc*/apt
899 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/fc*/apt/sources.list
900 %{_libdir}/%{name}/distributions/f7
901 %{_libdir}/%{name}/distributions/f8
902 %{_libdir}/%{name}/distributions/fc*
903
904 %files -n vserver-distro-gentoo
905 %defattr(644,root,root,755)
906 %dir %{_libdir}/util-vserver/distributions/gentoo
907 %attr(755,root,root) %{_libdir}/util-vserver/distributions/gentoo/*
908 %attr(755,root,root) %{_sbindir}/vdispatch-conf
909 %attr(755,root,root) %{_sbindir}/vemerge
910 %attr(755,root,root) %{_sbindir}/vesync
911 %attr(755,root,root) %{_sbindir}/vupdateworld
912
913 %files -n vserver-distro-pld
914 %defattr(644,root,root,755)
915 %attr(-,root,root) %{_libdir}/%{name}/distributions/pld
916 %attr(-,root,root) %{_libdir}/%{name}/distributions/pld-*
917 %dir %{_sysconfdir}/vservers/.distributions/pld-ac
918 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek
919 %dir %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d
920 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ac/poldek/repos.d/*.conf
921 %dir %{_sysconfdir}/vservers/.distributions/pld-th
922 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek
923 %dir %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d
924 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-th/poldek/repos.d/*.conf
925 %dir %{_sysconfdir}/vservers/.distributions/pld-ti
926 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek
927 %dir %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d
928 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/pld-ti/poldek/repos.d/*.conf
929
930 %files -n vserver-distro-redhat
931 %defattr(644,root,root,755)
932 %dir %{_sysconfdir}/vservers/.distributions/rh*
933 %dir %{_sysconfdir}/vservers/.distributions/rh*/apt
934 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/rh*/apt/sources.list
935 %{_libdir}/%{name}/distributions/rh*
936
937 %files -n vserver-distro-suse
938 %defattr(644,root,root,755)
939 %dir %{_sysconfdir}/vservers/.distributions/suse*
940 %dir %{_sysconfdir}/vservers/.distributions/suse*/apt
941 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vservers/.distributions/suse*/apt/sources.list
942 %{_libdir}/%{name}/distributions/suse*
943
944 %files -n vserver-distro-ubuntu
945 %defattr(644,root,root,755)
946 %{_libdir}/%{name}/distributions/breezy
947 %{_libdir}/%{name}/distributions/dapper
948 %{_libdir}/%{name}/distributions/edgy
949 %{_libdir}/%{name}/distributions/feisty
950 %{_libdir}/%{name}/distributions/gutsy
951 %{_libdir}/%{name}/distributions/hoary
952 %{_libdir}/%{name}/distributions/warty
This page took 0.075902 seconds and 2 git commands to generate.