]>
Commit | Line | Data |
---|---|---|
bb8e9bac | 1 | # TODO: |
b40a44f2 JK |
2 | # - check why initgroups() crashes on AMD64 and something, better than |
3 | # disabling initgroups() completely, with that | |
bb8e9bac JK |
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? | |
1d99c69f ER |
7 | # - update to 2.9.x? rename to Zope27? |
8 | # - how to apply the hotfix? | |
bb8e9bac | 9 | |
5eac1fc8 | 10 | Summary: An application server and portal toolkit for building Web sites |
4287cb71 ER |
11 | Summary(es.UTF-8): Un servidor de aplicaciones y un conjunto de herramientas para la construcción de sitios Web |
12 | Summary(pl.UTF-8): Serwer aplikacji i toolkit portalowy do tworzenia serwisów WWW | |
13 | Summary(pt_BR.UTF-8): Um servidor de aplicações e um conjunto de ferramentas para construção de sites Web | |
dff1f87d | 14 | Name: Zope |
fd727f8a | 15 | Version: 2.11.8 |
c777df90 | 16 | # %%define sub_ver b2 |
347debe5 | 17 | Release: 4 |
5eac1fc8 | 18 | License: Zope Public License (ZPL) |
dff1f87d | 19 | Group: Networking/Daemons |
9d03f8e4 | 20 | Source0: http://www.zope.org/Products/Zope/%{version}/%{name}-%{version}-final.tgz |
fd727f8a | 21 | # Source0-md5: 702a7967b239c70aa0a9d7e198c1f14f |
c0123d19 | 22 | Source1: %{name}.init |
bb8e9bac JK |
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 | |
1d99c69f ER |
30 | Source9: http://www.zope.org/Products/Zope/Hotfix-2006-07-05/Hotfix-20060705/Hotfix_20060705.tar.gz |
31 | # Source9-md5: 6dec58130117fd860adc7fd58f8062e7 | |
7ddd2b33 | 32 | Source10: %{name}.tmpfiles |
800ac688 | 33 | Patch0: %{name}-default_config.patch |
34 | Patch1: %{name}-instance_paths.patch | |
b3eac3f8 | 35 | Patch2: %{name}-pld_makefile_fix.patch |
1a5dbd04 | 36 | URL: http://www.zope.org/ |
d571bcb3 | 37 | BuildRequires: python-devel >= 1:2.3.3 |
b5b1646b | 38 | BuildRequires: python-modules |
39 | BuildRequires: rpm-pythonprov | |
b4f29300 | 40 | BuildRequires: rpmbuild(macros) >= 1.268 |
d571bcb3 ER |
41 | Requires(post,preun): /sbin/chkconfig |
42 | Requires(postun): /usr/sbin/groupdel | |
43 | Requires(postun): /usr/sbin/userdel | |
41c88c9b | 44 | Requires(pre): /bin/id |
63cc507c | 45 | Requires(pre): /usr/bin/getgid |
41c88c9b | 46 | Requires(pre): /usr/sbin/groupadd |
47 | Requires(pre): /usr/sbin/useradd | |
5709d06b | 48 | Requires: expat >= 1.95.7 |
c0123d19 | 49 | Requires: logrotate |
934b0008 | 50 | Requires: python >= 2.3.3 |
5bd4b26f | 51 | Requires: python-PyXML >= 0.8.3 |
d571bcb3 ER |
52 | Requires: python-libs >= 2.3.3 |
53 | Requires: python-modules >= 2.3.3 | |
54 | Requires: rc-scripts | |
031857a1 | 55 | %pyrequires_eq python |
8fa66dfd | 56 | Provides: group(zope) |
57 | Provides: user(zope) | |
347debe5 | 58 | Conflicts: logrotate < 3.8.0 |
c6c9055d | 59 | Obsoletes: Zope-Hotfix = 040713 |
82ddeb36 | 60 | Obsoletes: Zope-Hotfix = 040714 |
5709d06b | 61 | Obsoletes: Zope-Hotfix = 050405 |
1d99c69f ER |
62 | # extracted from lib/python/App/Hotfixes.py |
63 | Obsoletes: Zope-Hotfix = 2001-09-28 | |
64 | Obsoletes: Zope-Hotfix = 2002-03-01 | |
65 | Obsoletes: Zope-Hotfix = 2002-04-15 | |
66 | Obsoletes: Zope-Hotfix = 2002-06-14 | |
67 | # See Source9 | |
68 | Obsoletes: Zope-Hotfix = 20060704 | |
dff1f87d | 69 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
70 | ||
ebbf1344 | 71 | %define zope_dir /usr/lib/zope |
72 | ||
dff1f87d | 73 | %description |
74 | The Z Object Programming Environment (Zope) is a free, Open Source | |
75 | Python-based application server for building high-performance, dynamic | |
76 | web sites, using a powerful and simple scripting object model and | |
77 | high-performance, integrated object database. | |
78 | ||
68a247c1 JR |
79 | %description -l es.UTF-8 |
80 | Zope es una aplicación basada en Python, Open Source[tm], para la | |
81 | construcción de sitios dinámicos, usa un modelo de escritura de | |
82 | guiones poderoso y sencillo. Para instalar la aplicación Zope, instale | |
83 | ese paquete y después, Zope-server, para un servidor HTTP integrado | |
5eac1fc8 | 84 | simple, Zope-pcgi, para uso con el servidor Apache. Si desea instalar |
68a247c1 JR |
85 | solamente algunas partes de la aplicación Zope, están diponibles otros |
86 | subpaquetes, usted debe instalar éstos en vez de ese RPM. | |
5eac1fc8 | 87 | |
68a247c1 JR |
88 | %description -l pl.UTF-8 |
89 | Zope (Z Object Programming Environment - Obiektowe Środowisko | |
1a5dbd04 | 90 | Programistyczne Z) jest opartym o Pythona serwerem aplikacji do |
68a247c1 JR |
91 | tworzenia wysoko wydajnych, dynamicznych serwisów WWW, przy użyciu |
92 | użytecznego i prostego modelu obiektowego skryptów oraz wysoko | |
1a5dbd04 JB |
93 | wydajnej zintegrowanej obiektowej bazy danych. |
94 | ||
68a247c1 JR |
95 | %description -l pt_BR.UTF-8 |
96 | Zope é uma aplicação baseada em Python, Open Source[tm], para | |
97 | construção de sites dinâmicos, usando um modelo de scripting poderoso | |
5eac1fc8 | 98 | e simples Para instalar o Zope, instale esse pacote e depois, ou o |
99 | Zope-server, para um servidor HTTP integrado simples, ou Zope-pcgi, | |
68a247c1 JR |
100 | para uso com o Apache. Se você quiser instalar apenas algumas partes |
101 | do Zope, outros sub-pacotes estão disponíveis, e você deveria instalar | |
102 | eles ao invés desse RPM. | |
5eac1fc8 | 103 | |
dff1f87d | 104 | %prep |
1d99c69f | 105 | %setup -q -a9 -n %{name}-%{version}-final |
2e8ebf1a | 106 | %patch0 -p1 |
bb8e9bac | 107 | %patch1 -p1 |
b3eac3f8 | 108 | %patch2 -p1 |
1d99c69f ER |
109 | # how to apply the hotfix? |
110 | #mv Hotfix_20060705 lib/python/Products | |
dff1f87d | 111 | |
112 | %build | |
bb8e9bac | 113 | ./configure \ |
e8802a35 | 114 | --prefix=%{zope_dir} \ |
2fb9aaaf | 115 | --with-python=%{__python} \ |
e8802a35 | 116 | --optimize |
bb8e9bac JK |
117 | |
118 | %{__make} | |
119 | ||
dff1f87d | 120 | %install |
121 | rm -rf $RPM_BUILD_ROOT | |
c0123d19 | 122 | |
bb8e9bac JK |
123 | install -d $RPM_BUILD_ROOT{/var/lib/zope/main,/var/run/zope,/var/log/zope/main} \ |
124 | $RPM_BUILD_ROOT{/etc/logrotate.d,/etc/sysconfig,/etc/rc.d/init.d} \ | |
b3eac3f8 | 125 | $RPM_BUILD_ROOT{%{_sysconfdir}/zope/main,%{_sbindir}} \ |
7ddd2b33 JR |
126 | $RPM_BUILD_ROOT%{zope_dir}/bin \ |
127 | $RPM_BUILD_ROOT/usr/lib/tmpfiles.d | |
bb8e9bac | 128 | |
b5b1646b | 129 | ln -sfn %{__python} $RPM_BUILD_ROOT%{zope_dir}/bin/python |
5d53a4b1 JB |
130 | |
131 | %{__make} install \ | |
132 | INSTALL_FLAGS="--root $RPM_BUILD_ROOT" | |
dff1f87d | 133 | |
ebbf1344 | 134 | mv $RPM_BUILD_ROOT%{zope_dir}/bin/zpasswd.py $RPM_BUILD_ROOT%{_sbindir}/zpasswd |
135 | mv $RPM_BUILD_ROOT%{zope_dir}/skel $RPM_BUILD_ROOT%{_sysconfdir}/zope | |
dff1f87d | 136 | |
5d53a4b1 | 137 | rm -rf $RPM_BUILD_ROOT%{zope_dir}/doc |
bb8e9bac JK |
138 | rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/log |
139 | rm -f $RPM_BUILD_ROOT%{_sysconfdir}/zope/skel/bin/{runzope.bat,zopeservice.py}.in | |
dff1f87d | 140 | |
bb8e9bac JK |
141 | install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/zope |
142 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/zope | |
143 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/zope | |
144 | install %{SOURCE4} $RPM_BUILD_ROOT%{_sbindir}/mkzopeinstance | |
145 | install %{SOURCE5} $RPM_BUILD_ROOT%{_sbindir}/mkzeoinstance | |
146 | install %{SOURCE6} $RPM_BUILD_ROOT%{_sbindir}/runzope | |
147 | install %{SOURCE7} $RPM_BUILD_ROOT%{_sbindir}/zopectl | |
148 | install %{SOURCE8} $RPM_BUILD_ROOT%{_sbindir}/installzopeproduct | |
7ddd2b33 | 149 | install %{SOURCE10} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf |
dff1f87d | 150 | |
bb8e9bac JK |
151 | touch $RPM_BUILD_ROOT/var/log/zope/main/event.log |
152 | touch $RPM_BUILD_ROOT/var/log/zope/main/Z2.log | |
876e2aea | 153 | |
876e2aea JB |
154 | %clean |
155 | rm -rf $RPM_BUILD_ROOT | |
156 | ||
341192d9 | 157 | %pre |
3cd19cbf ER |
158 | %groupadd -g 112 zope |
159 | %useradd -u 112 -d /var/lib/zope/main -s /bin/false -c "Zope User" -g zope zope | |
341192d9 | 160 | |
dff1f87d | 161 | %post |
162 | /sbin/chkconfig --add zope | |
b4f29300 | 163 | # TODO: move this migration to trigger |
1d99c69f | 164 | if [ ! -f %{_sysconfdir}/zope/main/zope.conf ] ; then |
bb8e9bac | 165 | echo "Creating initial 'main' instance..." |
1d99c69f | 166 | %{_sbindir}/mkzopeinstance main zope:zope |
bb8e9bac | 167 | echo "Instance created. Listening on 127.0.0.1:8080, initial user: 'zope' with password: 'zope'" |
a8d11414 | 168 | else |
1d99c69f | 169 | echo "Old %{_sysconfdir}/zope/zope.conf detected - look at changes about upgrade!" >&2 |
bb8e9bac | 170 | fi |
9a316625 | 171 | was_stopped=0 |
bb8e9bac JK |
172 | for dir in /var/lib/zope/main /var/lib/zope ; do |
173 | if [ -f $dir/Data.fs ]; then | |
174 | echo "Found the database in old location. Migrating..." | |
175 | if [ -f /var/lock/subsys/zope ]; then | |
b4f29300 | 176 | /sbin/service zope stop >&2 |
031857a1 | 177 | was_stopped=1 |
bb8e9bac JK |
178 | fi |
179 | umask 022 | |
180 | [ -d /var/lib/zope/main ] && cd $dir && mv -f Data* /var/lib/zope/main/var 2>/dev/null | |
181 | if [ "x$was_stopped" = "x1" ]; then | |
b4f29300 | 182 | /sbin/service zope start >&2 |
bb8e9bac JK |
183 | fi |
184 | echo "Migration completed (new db location is /var/lib/zope/main/var)" | |
185 | break | |
6a6afcf4 | 186 | fi |
bb8e9bac | 187 | done |
d7fba187 | 188 | if [ -f /var/lock/subsys/zope ]; then |
189 | if [ "x$was_stopped" != "x1" ]; then | |
b4f29300 | 190 | /sbin/service zope restart >&2 |
d7fba187 | 191 | fi |
dff1f87d | 192 | else |
1d99c69f | 193 | echo "look at %{_sysconfdir}/zope/main/zope.conf" >&2 |
b4f29300 ER |
194 | echo "Run then \"/sbin/service zope start\" to start Zope." >&2 |
195 | echo "You may create new Zope instances with mkzopeinstance" >&2 | |
dff1f87d | 196 | fi |
197 | ||
dff1f87d | 198 | %preun |
199 | if [ "$1" = "0" ]; then | |
b4f29300 | 200 | %service zope stop |
dff1f87d | 201 | /sbin/chkconfig --del zope |
202 | fi | |
203 | ||
341192d9 | 204 | %postun |
205 | if [ "$1" = "0" ] ; then | |
8fa66dfd | 206 | %userremove zope |
207 | %groupremove zope | |
341192d9 | 208 | fi |
209 | ||
dff1f87d | 210 | %files |
211 | %defattr(644,root,root,755) | |
bb8e9bac | 212 | %doc doc/* |
5b3865da | 213 | %attr(754,root,root) /etc/rc.d/init.d/zope |
dff1f87d | 214 | %attr(755,root,root) %{_sbindir}/* |
ebbf1344 | 215 | %{zope_dir} |
7ddd2b33 | 216 | /usr/lib/tmpfiles.d/%{name}.conf |
3caac069 | 217 | %attr(775,zope,zope) %dir /var/run/zope |
218 | %attr(775,zope,zope) %dir /var/lib/zope | |
219 | %attr(775,zope,zope) %dir /var/lib/zope/main | |
220 | %attr(775,zope,zope) %dir /var/log/zope | |
221 | %attr(775,zope,zope) %dir /var/log/zope/main | |
d571bcb3 ER |
222 | %attr(640,root,root) %dir %{_sysconfdir}/zope |
223 | %attr(640,root,root) %dir %{_sysconfdir}/zope/skel | |
224 | %attr(640,root,root) %dir %{_sysconfdir}/zope/main | |
225 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/zope/skel/* | |
226 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/zope | |
227 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/zope | |
bb8e9bac JK |
228 | %ghost /var/log/zope/main/event.log |
229 | %ghost /var/log/zope/main/Z2.log |