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
18 License: Zope Public License (ZPL)
19 Group: Networking/Daemons
20 Source0: http://www.zope.org/Products/%{name}/%{version}/%{name}-%{version}-0.tgz
21 # Source0-md5: 08b3c4a119aa1ded2e7b1b3d5bc45425
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 URL: http://www.zope.org/
35 BuildRequires: python-devel >= 2.3.3
36 BuildRequires: perl-base
38 Requires(pre): /usr/bin/getgid
39 Requires(pre): /bin/id
40 Requires(pre): /usr/sbin/groupadd
41 Requires(pre): /usr/sbin/useradd
42 Requires(postun): /usr/sbin/userdel
43 Requires(postun): /usr/sbin/groupdel
44 Requires(post,preun): /sbin/chkconfig
46 Requires: python >= 2.3.3
47 Requires: python-modules >= 2.3.3
48 Requires: python-libs >= 2.3.3
49 Requires: expat >= 1.95.7
50 Requires: python-PyXML >= 0.8.3
52 Obsoletes: Zope-Hotfix = 040713
53 Obsoletes: Zope-Hotfix = 040714
54 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
56 %define zope_dir /usr/lib/zope
59 The Z Object Programming Environment (Zope) is a free, Open Source
60 Python-based application server for building high-performance, dynamic
61 web sites, using a powerful and simple scripting object model and
62 high-performance, integrated object database.
65 Zope es una aplicación basada en Python, Open Source[tm], para la
66 construcción de sitios dinámicos, usa un modelo de escritura de
67 guiones poderoso y sencillo. Para instalar la aplicación Zope, instale
68 ese paquete y después, Zope-server, para un servidor HTTP integrado
69 simple, Zope-pcgi, para uso con el servidor Apache. Si desea instalar
70 solamente algunas partes de la aplicación Zope, están diponibles otros
71 subpaquetes, usted debe instalar éstos en vez de ese RPM.
74 Zope (Z Object Programming Environment - Obiektowe ¦rodowisko
75 Programistyczne Z) jest opartym o Pythona serwerem aplikacji do
76 tworzenia wysoko wydajnych, dynamicznych serwisów WWW, przy u¿yciu
77 u¿ytecznego i prostego modelu obiektowego skryptów oraz wysoko
78 wydajnej zintegrowanej obiektowej bazy danych.
81 Zope é uma aplicação baseada em Python, Open Source[tm], para
82 construção de sites dinâmicos, usando um modelo de scripting poderoso
83 e simples Para instalar o Zope, instale esse pacote e depois, ou o
84 Zope-server, para um servidor HTTP integrado simples, ou Zope-pcgi,
85 para uso com o Apache. Se você quiser instalar apenas algumas partes
86 do Zope, outros sub-pacotes estão disponíveis, e você deveria instalar
87 eles ao invés desse RPM.
91 %setup -q -n %{name}-%{version}-0
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