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