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