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