1 %include /usr/lib/rpm/macros.python
4 # - check why initgroups() crashes on AMD64 and something, better than
5 # disabling initgroups() completely, with that
6 # - no/more secure initial user/password settings (currently: zope/zope)
7 # - ZEO support (mkzeoinstance is not tested and probably doesn't work)
10 Summary: An application server and portal toolkit for building Web sites
11 Summary(es): Un servidor de aplicaciones y un conjunto de herramientas para la construcción de sitios Web
12 Summary(pl): Serwer aplikacji i toolkit portalowy do tworzenia serwisów WWW
13 Summary(pt_BR): Um servidor de aplicações e um conjunto de ferramentas para construção de sites Web
16 # %%define sub_ver rc2
18 License: Zope Public License (ZPL)
19 Group: Networking/Daemons
20 Source0: http://www.zope.org/Products/%{name}/%{version}/%{version}/%{name}-%{version}.tgz
21 # Source0-md5: f733cd97f32411d43d372ac61eed98f4
23 Source2: %{name}.sysconfig
24 Source3: %{name}.logrotate
25 Source4: %{name}-mkzopeinstance
26 Source5: %{name}-mkzeoinstance
27 Source6: %{name}-runzope
28 Source7: %{name}-zopectl
29 Source8: %{name}-installzopeproduct
30 Patch0: %{name}-default_config.patch
31 Patch1: %{name}-instance_paths.patch
32 Patch2: %{name}-pld_makefile_fix.patch
33 Patch3: %{name}-no_initgroups.patch
34 Patch4: %{name}-zdctl.patch
35 URL: http://www.zope.org/
36 BuildRequires: python-devel >= 2.3.3
37 BuildRequires: perl-base
39 Requires(pre): /usr/bin/getgid
40 Requires(pre): /bin/id
41 Requires(pre): /usr/sbin/groupadd
42 Requires(pre): /usr/sbin/useradd
43 Requires(postun): /usr/sbin/userdel
44 Requires(postun): /usr/sbin/groupdel
45 Requires(post,preun): /sbin/chkconfig
47 Requires: python >= 2.3.3
48 Requires: python-modules >= 2.3.3
49 Requires: python-libs >= 2.3.3
50 Requires: expat >= 1.95.7
51 Requires: python-PyXML >= 0.8.3
53 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
55 %define zope_dir /usr/lib/zope
58 The Z Object Programming Environment (Zope) is a free, Open Source
59 Python-based application server for building high-performance, dynamic
60 web sites, using a powerful and simple scripting object model and
61 high-performance, integrated object database.
64 Zope es una aplicación basada en Python, Open Source[tm], para la
65 construcción de sitios dinámicos, usa un modelo de escritura de
66 guiones poderoso y sencillo. Para instalar la aplicación Zope, instale
67 ese paquete y después, Zope-server, para un servidor HTTP integrado
68 simple, Zope-pcgi, para uso con el servidor Apache. Si desea instalar
69 solamente algunas partes de la aplicación Zope, están diponibles otros
70 subpaquetes, usted debe instalar éstos en vez de ese RPM.
73 Zope (Z Object Programming Environment - Obiektowe ¦rodowisko
74 Programistyczne Z) jest opartym o Pythona serwerem aplikacji do
75 tworzenia wysoko wydajnych, dynamicznych serwisów WWW, przy u¿yciu
76 u¿ytecznego i prostego modelu obiektowego skryptów oraz wysoko
77 wydajnej zintegrowanej obiektowej bazy danych.
80 Zope é uma aplicação baseada em Python, Open Source[tm], para
81 construção de sites dinâmicos, usando um modelo de scripting poderoso
82 e simples Para instalar o Zope, instale esse pacote e depois, ou o
83 Zope-server, para um servidor HTTP integrado simples, ou Zope-pcgi,
84 para uso com o Apache. Se você quiser instalar apenas algumas partes
85 do Zope, outros sub-pacotes estão disponíveis, e você deveria instalar
86 eles ao invés desse RPM.
90 %setup -q -n %{name}-%{version}
100 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
103 --prefix=%{zope_dir} \
105 # --with-python=/usr/bin/python
109 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
112 rm -rf $RPM_BUILD_ROOT
114 install -d $RPM_BUILD_ROOT{/var/lib/zope/main,/var/run/zope,/var/log/zope/main} \
115 $RPM_BUILD_ROOT{/etc/logrotate.d,/etc/sysconfig,/etc/rc.d/init.d} \
116 $RPM_BUILD_ROOT{%{_sysconfdir}/zope/main,%{_sbindir}} \
117 $RPM_BUILD_ROOT%{zope_dir}/bin
119 ln -sfn /usr/bin/python $RPM_BUILD_ROOT%{zope_dir}/bin/python
122 INSTALL_FLAGS="--root $RPM_BUILD_ROOT"
124 mv $RPM_BUILD_ROOT%{zope_dir}/bin/zpasswd.py $RPM_BUILD_ROOT%{_sbindir}/zpasswd
125 mv $RPM_BUILD_ROOT%{zope_dir}/skel $RPM_BUILD_ROOT%{_sysconfdir}/zope
126 mv $RPM_BUILD_ROOT{%{zope_dir}/import/*,%{_sysconfdir}/zope/skel/import}
128 rm -rf $RPM_BUILD_ROOT%{zope_dir}/doc
129 rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/log
130 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/bin/{runzope.bat,zopeservice.py}.in
132 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/zope
133 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/zope
134 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/zope
135 install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/mkzopeinstance
136 install %{SOURCE5} $RPM_BUILD_ROOT%{_sbindir}/mkzeoinstance
137 install %{SOURCE6} $RPM_BUILD_ROOT%{_sbindir}/runzope
138 install %{SOURCE7} $RPM_BUILD_ROOT%{_sbindir}/zopectl
139 install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}/installzopeproduct
141 touch $RPM_BUILD_ROOT/var/log/zope/main/event.log
142 touch $RPM_BUILD_ROOT/var/log/zope/main/Z2.log
145 rm -rf $RPM_BUILD_ROOT
148 if [ -z "`getgid zope`" ]; then
149 echo "Making group zope"
150 /usr/sbin/groupadd -r -f zope
152 if [ -z "`id -u zope 2>/dev/null`" ]; then
153 echo "Making user zope"
154 /usr/sbin/useradd -r -d /var/lib/zope/main -s /bin/false -c "Zope User" -g zope zope
158 /sbin/chkconfig --add zope
159 if [ ! -f /etc/zope/main/zope.conf ] ; then
160 echo "Creating initial 'main' instance..."
161 /usr/sbin/mkzopeinstance main zope:zope
162 echo "Instance created. Listening on 127.0.0.1:8080, initial user: 'zope' with password: 'zope'"
164 echo "old /etc/zope/zope.conf detected - look at changes about upgrade!" >&2
167 for dir in /var/lib/zope/main /var/lib/zope ; do
168 if [ -f $dir/Data.fs ]; then
169 echo "Found the database in old location. Migrating..."
170 if [ -f /var/lock/subsys/zope ]; then
171 /etc/rc.d/init.d/zope stop >&2
175 [ -d /var/lib/zope/main ] && cd $dir && mv -f Data* /var/lib/zope/main/var 2>/dev/null
176 if [ "x$was_stopped" = "x1" ]; then
177 /etc/rc.d/init.d/zope start >&2
179 echo "Migration completed (new db location is /var/lib/zope/main/var)"
183 if [ -f /var/lock/subsys/zope ]; then
184 if [ "x$was_stopped" != "x1" ]; then
185 /etc/rc.d/init.d/zope restart >&2
188 echo "look at /etc/zope/main/zope.conf" >&2
189 echo "Run then \"/etc/rc.d/init.d/zope start\" to start Zope." >&2
190 echo "you may create new Zope instances with mkzopeinstance" >&2
194 if [ "$1" = "0" ]; then
195 if [ -f /var/lock/subsys/zope ]; then
196 /etc/rc.d/init.d/zope stop
198 /sbin/chkconfig --del zope
202 if [ "$1" = "0" ] ; then
203 echo "Removing user zope"
204 /usr/sbin/userdel zope >/dev/null 2>&1 || :
205 echo "Removing group zope"
206 /usr/sbin/groupdel zope >/dev/null 2>&1 || :
210 %defattr(644,root,root,755)
212 %attr(754,root,root) /etc/rc.d/init.d/zope
213 %attr(755,root,root) %{_sbindir}/*
215 %attr(775,zope,zope) %dir /var/run/zope
216 %attr(775,zope,zope) %dir /var/lib/zope
217 %attr(775,zope,zope) %dir /var/lib/zope/main
218 %attr(775,zope,zope) %dir /var/log/zope
219 %attr(775,zope,zope) %dir /var/log/zope/main
220 %attr(640,root,root) %dir /etc/zope
221 %attr(640,root,root) %dir /etc/zope/skel
222 %attr(640,root,root) %dir /etc/zope/main
223 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/zope/skel/*
224 %attr(640,root,root) /etc/logrotate.d/zope
225 %attr(640,root,root) /etc/sysconfig/zope
226 %ghost /var/log/zope/main/event.log
227 %ghost /var/log/zope/main/Z2.log