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