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