3 # - check why initgroups() crashes on AMD64 and something, better than
4 # disabling initgroups() completely, with that
5 # - no/more secure initial user/password settings (currently: zope/zope)
6 # - ZEO support (mkzeoinstance is not tested and probably doesn't work)
9 Summary: An application server and portal toolkit for building Web sites
10 Summary(es): Un servidor de aplicaciones y un conjunto de herramientas para la construcción de sitios Web
11 Summary(pl): Serwer aplikacji i toolkit portalowy do tworzenia serwisów WWW
12 Summary(pt_BR): Um servidor de aplicações e um conjunto de ferramentas para construção de sites Web
17 License: Zope Public License (ZPL)
18 Group: Networking/Daemons
19 Source0: http://www.zope.org/Products/Zope/%{version}/%{name}-%{version}-final.tgz
20 # Source0-md5: f781d13a0cc917e517d4521270691394
22 Source2: %{name}.sysconfig
23 Source3: %{name}.logrotate
24 Source4: %{name}-mkzopeinstance
25 Source5: %{name}-mkzeoinstance
26 Source6: %{name}-runzope
27 Source7: %{name}-zopectl
28 Source8: %{name}-installzopeproduct
29 Patch0: %{name}-default_config.patch
30 Patch1: %{name}-instance_paths.patch
31 Patch2: %{name}-pld_makefile_fix.patch
32 Patch3: %{name}-no_initgroups.patch
33 Patch4: %{name}-python24.patch
34 URL: http://www.zope.org/
35 BuildRequires: python-devel >= 1:2.3.3
36 BuildRequires: perl-base
37 BuildRequires: rpmbuild(macros) >= 1.159
39 Requires(pre): /bin/id
40 Requires(pre): /usr/bin/getgid
41 Requires(pre): /usr/sbin/groupadd
42 Requires(pre): /usr/sbin/useradd
43 Requires(postun): /usr/sbin/groupdel
44 Requires(postun): /usr/sbin/userdel
45 Requires(post,preun): /sbin/chkconfig
46 Requires: expat >= 1.95.7
48 Requires: python >= 2.3.3
49 Requires: python-modules >= 2.3.3
50 Requires: python-libs >= 2.3.3
51 Requires: python-PyXML >= 0.8.3
55 Obsoletes: Zope-Hotfix = 040713
56 Obsoletes: Zope-Hotfix = 040714
57 Obsoletes: Zope-Hotfix = 050405
58 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
60 %define zope_dir /usr/lib/zope
63 The Z Object Programming Environment (Zope) is a free, Open Source
64 Python-based application server for building high-performance, dynamic
65 web sites, using a powerful and simple scripting object model and
66 high-performance, integrated object database.
69 Zope es una aplicación basada en Python, Open Source[tm], para la
70 construcción de sitios dinámicos, usa un modelo de escritura de
71 guiones poderoso y sencillo. Para instalar la aplicación Zope, instale
72 ese paquete y después, Zope-server, para un servidor HTTP integrado
73 simple, Zope-pcgi, para uso con el servidor Apache. Si desea instalar
74 solamente algunas partes de la aplicación Zope, están diponibles otros
75 subpaquetes, usted debe instalar éstos en vez de ese RPM.
78 Zope (Z Object Programming Environment - Obiektowe ¦rodowisko
79 Programistyczne Z) jest opartym o Pythona serwerem aplikacji do
80 tworzenia wysoko wydajnych, dynamicznych serwisów WWW, przy u¿yciu
81 u¿ytecznego i prostego modelu obiektowego skryptów oraz wysoko
82 wydajnej zintegrowanej obiektowej bazy danych.
85 Zope é uma aplicação baseada em Python, Open Source[tm], para
86 construção de sites dinâmicos, usando um modelo de scripting poderoso
87 e simples Para instalar o Zope, instale esse pacote e depois, ou o
88 Zope-server, para um servidor HTTP integrado simples, ou Zope-pcgi,
89 para uso com o Apache. Se você quiser instalar apenas algumas partes
90 do Zope, outros sub-pacotes estão disponíveis, e você deveria instalar
91 eles ao invés desse RPM.
95 %setup -q -n %{name}-%{version}-final
105 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
108 --prefix=%{zope_dir} \
110 # --with-python=/usr/bin/python
114 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
117 rm -rf $RPM_BUILD_ROOT
119 install -d $RPM_BUILD_ROOT{/var/lib/zope/main,/var/run/zope,/var/log/zope/main} \
120 $RPM_BUILD_ROOT{/etc/logrotate.d,/etc/sysconfig,/etc/rc.d/init.d} \
121 $RPM_BUILD_ROOT{%{_sysconfdir}/zope/main,%{_sbindir}} \
122 $RPM_BUILD_ROOT%{zope_dir}/bin
124 ln -sfn /usr/bin/python $RPM_BUILD_ROOT%{zope_dir}/bin/python
127 INSTALL_FLAGS="--root $RPM_BUILD_ROOT"
129 mv $RPM_BUILD_ROOT%{zope_dir}/bin/zpasswd.py $RPM_BUILD_ROOT%{_sbindir}/zpasswd
130 mv $RPM_BUILD_ROOT%{zope_dir}/skel $RPM_BUILD_ROOT%{_sysconfdir}/zope
131 mv $RPM_BUILD_ROOT{%{zope_dir}/import/*,%{_sysconfdir}/zope/skel/import}
133 rm -rf $RPM_BUILD_ROOT%{zope_dir}/doc
134 rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/log
135 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/bin/{runzope.bat,zopeservice.py}.in
137 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/zope
138 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/zope
139 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/zope
140 install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/mkzopeinstance
141 install %{SOURCE5} $RPM_BUILD_ROOT%{_sbindir}/mkzeoinstance
142 install %{SOURCE6} $RPM_BUILD_ROOT%{_sbindir}/runzope
143 install %{SOURCE7} $RPM_BUILD_ROOT%{_sbindir}/zopectl
144 install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}/installzopeproduct
146 touch $RPM_BUILD_ROOT/var/log/zope/main/event.log
147 touch $RPM_BUILD_ROOT/var/log/zope/main/Z2.log
150 rm -rf $RPM_BUILD_ROOT
153 if [ -n "`/usr/bin/getgid zope`" ]; then
154 if [ "`/usr/bin/getgid zope`" != "112" ]; then
155 echo "Error: group zope doesn't have gid=112. Correct this before installing zope." 1>&2
159 echo "Making group zope"
160 /usr/sbin/groupadd -g 112 zope
162 if [ -n "`/bin/id -u zope 2>/dev/null`" ]; then
163 if [ "`/bin/id -u zope`" != "112" ]; then
164 echo "Error: user zope doesn't have uid=112. Correct this before installing zope." 1>&2
168 echo "Making user zope"
169 /usr/sbin/useradd -u 112 -d /var/lib/zope/main -s /bin/false -c "Zope User" -g zope zope
173 /sbin/chkconfig --add zope
174 if [ ! -f /etc/zope/main/zope.conf ] ; then
175 echo "Creating initial 'main' instance..."
176 /usr/sbin/mkzopeinstance main zope:zope
177 echo "Instance created. Listening on 127.0.0.1:8080, initial user: 'zope' with password: 'zope'"
179 echo "old /etc/zope/zope.conf detected - look at changes about upgrade!" >&2
182 for dir in /var/lib/zope/main /var/lib/zope ; do
183 if [ -f $dir/Data.fs ]; then
184 echo "Found the database in old location. Migrating..."
185 if [ -f /var/lock/subsys/zope ]; then
186 /etc/rc.d/init.d/zope stop >&2
190 [ -d /var/lib/zope/main ] && cd $dir && mv -f Data* /var/lib/zope/main/var 2>/dev/null
191 if [ "x$was_stopped" = "x1" ]; then
192 /etc/rc.d/init.d/zope start >&2
194 echo "Migration completed (new db location is /var/lib/zope/main/var)"
198 if [ -f /var/lock/subsys/zope ]; then
199 if [ "x$was_stopped" != "x1" ]; then
200 /etc/rc.d/init.d/zope restart >&2
203 echo "look at /etc/zope/main/zope.conf" >&2
204 echo "Run then \"/etc/rc.d/init.d/zope start\" to start Zope." >&2
205 echo "you may create new Zope instances with mkzopeinstance" >&2
209 if [ "$1" = "0" ]; then
210 if [ -f /var/lock/subsys/zope ]; then
211 /etc/rc.d/init.d/zope stop
213 /sbin/chkconfig --del zope
217 if [ "$1" = "0" ] ; then
223 %defattr(644,root,root,755)
225 %attr(754,root,root) /etc/rc.d/init.d/zope
226 %attr(755,root,root) %{_sbindir}/*
228 %attr(775,zope,zope) %dir /var/run/zope
229 %attr(775,zope,zope) %dir /var/lib/zope
230 %attr(775,zope,zope) %dir /var/lib/zope/main
231 %attr(775,zope,zope) %dir /var/log/zope
232 %attr(775,zope,zope) %dir /var/log/zope/main
233 %attr(640,root,root) %dir /etc/zope
234 %attr(640,root,root) %dir /etc/zope/skel
235 %attr(640,root,root) %dir /etc/zope/main
236 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/zope/skel/*
237 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/zope
238 %attr(640,root,root) /etc/sysconfig/zope
239 %ghost /var/log/zope/main/event.log
240 %ghost /var/log/zope/main/Z2.log