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