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