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