]> git.pld-linux.org Git - packages/Zope.git/blob - Zope.spec
- reverting changes; reload not included in zope.init
[packages/Zope.git] / Zope.spec
1 %include        /usr/lib/rpm/macros.python
2
3 # TODO:
4 # - no/more secure initial user/password settings (currently: zope/zope)
5 # - ZEO support (mkzeoinstance is not tested and probably doesn't work)
6 # - perl support?
7
8 Summary:        An application server and portal toolkit for building Web sites
9 Summary(es):    Un servidor de aplicaciones y un conjunto de herramientas para la construcción de sitios Web
10 Summary(pl):    Serwer aplikacji i toolkit portalowy do tworzenia serwisów WWW
11 Summary(pt_BR): Um servidor de aplicações e um conjunto de ferramentas para construção de sites Web
12 Name:           Zope
13 Version:        2.7.0
14 %define         sub_ver b3
15 Release:        3.%{sub_ver}.3
16 License:        Zope Public License (ZPL)
17 Group:          Networking/Daemons
18 Source0:        http://www.zope.org/Products/%{name}/%{version}%{sub_ver}/%{version}%{sub_ver}/%{name}-%{version}-%{sub_ver}.tgz
19 # Source0-md5:  49d981bb35c33fda6d53b438fb9c9ad7
20 Source1:        %{name}.init
21 Source2:        %{name}.sysconfig
22 Source3:        %{name}.logrotate
23 Source4:        %{name}-mkzopeinstance
24 Source5:        %{name}-mkzeoinstance
25 Source6:        %{name}-runzope
26 Source7:        %{name}-zopectl
27 Source8:        %{name}-installzopeproduct
28 Patch0:         %{name}-default_config.patch
29 Patch1:         %{name}-instance_paths.patch
30 URL:            http://www.zope.org/
31 BuildRequires:  python-devel >= 2.3.2
32 BuildRequires:  perl-base
33 PreReq:         rc-scripts
34 Requires(pre):  /usr/bin/getgid
35 Requires(pre):  /bin/id
36 Requires(pre):  /usr/sbin/groupadd
37 Requires(pre):  /usr/sbin/useradd
38 Requires(postun):       /usr/sbin/userdel
39 Requires(postun):       /usr/sbin/groupdel
40 Requires(post,preun):   /sbin/chkconfig
41 Requires:       logrotate
42 Requires:       python >= 2.3.2
43 Requires:       python-modules >= 2.3.2
44 Requires:       python-libs >= 2.3.2
45 Requires:       expat >= 1.95.7
46 Requires:       python-PyXML >= 0.8.3
47 %pyrequires_eq  python
48 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
49
50 %description
51 The Z Object Programming Environment (Zope) is a free, Open Source
52 Python-based application server for building high-performance, dynamic
53 web sites, using a powerful and simple scripting object model and
54 high-performance, integrated object database.
55
56 %description -l es
57 Zope es una aplicación basada en Python, Open Source[tm], para la
58 construcción de sitios dinámicos, usa un modelo de escritura de
59 guiones poderoso y sencillo. Para instalar la aplicación Zope, instale
60 ese paquete y después, Zope-server, para un servidor HTTP integrado
61 simple, Zope-pcgi, para uso con el servidor Apache. Si desea instalar
62 solamente algunas partes de la aplicación Zope, están diponibles otros
63 subpaquetes, usted debe instalar éstos en vez de ese RPM.
64
65 %description -l pl
66 Zope (Z Object Programming Environment - Obiektowe ¦rodowisko
67 Programistyczne Z) jest opartym o Pythona serwerem aplikacji do
68 tworzenia wysoko wydajnych, dynamicznych serwisów WWW, przy u¿yciu
69 u¿ytecznego i prostego modelu obiektowego skryptów oraz wysoko
70 wydajnej zintegrowanej obiektowej bazy danych.
71
72 %description -l pt_BR
73 Zope é uma aplicação baseada em Python, Open Source[tm], para
74 construção de sites dinâmicos, usando um modelo de scripting poderoso
75 e simples Para instalar o Zope, instale esse pacote e depois, ou o
76 Zope-server, para um servidor HTTP integrado simples, ou Zope-pcgi,
77 para uso com o Apache. Se você quiser instalar apenas algumas partes
78 do Zope, outros sub-pacotes estão disponíveis, e você deveria instalar
79 eles ao invés desse RPM.
80
81 %prep
82
83 %setup -q -n %{name}-%{version}-%{sub_ver}
84 %patch0 -p1
85 %patch1 -p1
86
87 %build
88 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
89
90 ./configure \
91         --prefix=/usr
92
93 %{__make}
94
95 perl -pi -e "s|data_dir\s+=\s+.*?join\(INSTANCE_HOME, 'var'\)|data_dir=INSTANCE_HOME|" lib/python/Globals.py
96 # python wo_pcgi.py
97
98 %install
99 rm -rf $RPM_BUILD_ROOT
100
101 install -d $RPM_BUILD_ROOT{/var/lib/zope/main,/var/run/zope,/var/log/zope/main} \
102         $RPM_BUILD_ROOT{/etc/logrotate.d,/etc/sysconfig,/etc/rc.d/init.d} \
103         $RPM_BUILD_ROOT{%{_sysconfdir}/zope/main,%{_sbindir}}
104
105 %{__make} install INSTALL_FLAGS="--root $RPM_BUILD_ROOT"
106
107 mv $RPM_BUILD_ROOT%{_libdir}{/python,/zope}
108 mv $RPM_BUILD_ROOT%{_bindir}/zpasswd.py $RPM_BUILD_ROOT%{_sbindir}/zpasswd
109 mv $RPM_BUILD_ROOT%{_bindir}/*.py $RPM_BUILD_ROOT%{_libdir}/zope
110 mv $RPM_BUILD_ROOT/usr/skel $RPM_BUILD_ROOT%{_sysconfdir}/zope
111 mv $RPM_BUILD_ROOT{%{_prefix}/import/*,%{_sysconfdir}/zope/skel/import}
112
113 rm -rf $RPM_BUILD_ROOT/usr/doc/
114 rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/log
115 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/bin/{runzope.bat,zopeservice.py}.in
116
117 install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/zope
118 install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/zope
119 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/zope
120 install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/mkzopeinstance
121 install %{SOURCE5} $RPM_BUILD_ROOT%{_sbindir}/mkzeoinstance
122 install %{SOURCE6} $RPM_BUILD_ROOT%{_sbindir}/runzope
123 install %{SOURCE7} $RPM_BUILD_ROOT%{_sbindir}/zopectl
124 install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}/installzopeproduct
125
126 touch $RPM_BUILD_ROOT/var/log/zope/main/event.log
127 touch $RPM_BUILD_ROOT/var/log/zope/main/Z2.log
128
129 %clean
130 rm -rf $RPM_BUILD_ROOT
131
132 %pre
133 if [ -z "`getgid zope`" ]; then
134        echo "Making group zope"
135        /usr/sbin/groupadd -r -f zope
136 fi
137 if [ -z "`id -u zope 2>/dev/null`" ]; then
138        echo "Making user zope"
139        /usr/sbin/useradd -r -d /var/lib/zope/main -s /bin/false -c "Zope User" -g zope zope
140 fi
141
142 %post
143 /sbin/chkconfig --add zope
144 if [ ! -f /etc/zope/main/zope.conf ] ; then
145         echo "Creating initial 'main' instance..."
146         /usr/sbin/mkzopeinstance main zope:zope
147         echo "Instance created. Listening on 127.0.0.1:8080, initial user: 'zope' with password: 'zope'"
148 fi
149 was_stopped=0
150 for dir in /var/lib/zope/main /var/lib/zope ; do
151         if [ -f $dir/Data.fs ]; then
152                 echo "Found the database in old location. Migrating..."
153                 if [ -f /var/lock/subsys/zope ]; then
154                     /etc/rc.d/init.d/zope stop >&2
155                     was_stopped=1
156                 fi
157                 umask 022
158                 [ -d /var/lib/zope/main ] && cd $dir && mv -f Data* /var/lib/zope/main/var 2>/dev/null
159                 if [ "x$was_stopped" = "x1" ]; then
160                     /etc/rc.d/init.d/zope start >&2
161                 fi
162                 echo "Migration completed (new db location is /var/lib/zope/main/var)"
163                 break
164         fi
165 done
166 if [ -f /var/lock/subsys/zope ]; then
167         if [ "x$was_stopped" != "x1" ]; then
168             /etc/rc.d/init.d/zope restart >&2
169         fi
170 else
171         echo "look at /etc/zope/main/zope.conf" >&2
172         echo "Run then \"/etc/rc.d/init.d/zope start\" to start Zope." >&2
173         echo "you may create new Zope instances with mkzopeinstance" >&2
174 fi
175
176 %preun
177 if [ "$1" = "0" ]; then
178         if [ -f /var/lock/subsys/zope ]; then
179                 /etc/rc.d/init.d/zope stop
180         fi
181         /sbin/chkconfig --del zope
182 fi
183
184 %postun
185 if [ "$1" = "0" ] ; then
186        echo "Removing user zope"
187        /usr/sbin/userdel zope >/dev/null 2>&1 || :
188        echo "Removing group zope"
189        /usr/sbin/groupdel zope >/dev/null 2>&1 || :
190 fi
191
192 %files
193 %defattr(644,root,root,755)
194 %doc doc/*
195 %attr(754,root,root) /etc/rc.d/init.d/zope
196 %attr(755,root,root) %{_bindir}/*
197 %attr(755,root,root) %{_sbindir}/*
198 %{_libdir}/zope
199 %attr(775,zope,zope) %dir /var/run/zope
200 %attr(775,zope,zope) %dir /var/lib/zope
201 %attr(775,zope,zope) %dir /var/lib/zope/main
202 %attr(775,zope,zope) %dir /var/log/zope
203 %attr(775,zope,zope) %dir /var/log/zope/main
204 %attr(640,root,root) %dir /etc/zope
205 %attr(640,root,root) %dir /etc/zope/skel
206 %attr(640,root,root) %dir /etc/zope/main
207 %attr(640,root,root) %config(noreplace) %verify(not md5 size mtime) /etc/zope/skel/*
208 %attr(640,root,root) /etc/logrotate.d/zope
209 %attr(640,root,root) /etc/sysconfig/zope
210 %ghost /var/log/zope/main/event.log
211 %ghost /var/log/zope/main/Z2.log
This page took 0.354534 seconds and 3 git commands to generate.