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