]> git.pld-linux.org Git - packages/roundcubemail.git/blob - roundcubemail.spec
- require DB pear class
[packages/roundcubemail.git] / roundcubemail.spec
1 # TODO:
2 # - prepare config for lighttpd
3 # - it has PEAR boundled inside - use system ones
4 # - use pear-deps system?
5 # - use system js/tiny_mce
6 # - package: http://blog.ilohamail.org/ and remove boundled classess from it
7 #
8 #
9 %bcond_with     spamfilter      # Build with spamfilter patch
10 %bcond_with     postfixadmin    # Build with postfixadmin support patch
11
12 %define _rc     alpha
13 Summary:        RoundCube Webmail
14 Summary(pl.UTF-8):      RoundCube Webmail - poczta przez WWW
15 Name:           roundcubemail
16 Version:        0.2
17 Release:        0.%{_rc}.2
18 License:        GPL v2
19 Group:          Applications/WWW
20 Source0:        http://dl.sourceforge.net/roundcubemail/%{name}-%{version}-%{_rc}.1.tar.gz
21 # Source0-md5:  033fe78ea4b3b8330e13681a18b0e771
22 Source1:        %{name}.config
23 Source2:        %{name}.logrotate
24 Source3:        %{name}-lighttpd.conf
25 Source4:        http://nejc.skoberne.net/rcpfa/rcpfa-1.0.2.tgz
26 Patch0:         %{name}-config.patch
27 Patch1:         %{name}-faq-page.patch
28 Patch2:         %{name}-tz.patch
29 Patch3:         %{name}-spam.patch
30 Patch4:         %{name}-postfixadmin-pl_locales.patch
31 URL:            http://www.roundcube.net/
32 BuildRequires:  rpmbuild(macros) >= 1.268
33 BuildRequires:  sed >= 4.0
34 Requires:       %{name}-skin
35 Requires:       php(dom)
36 Requires:       php(imap)
37 Requires:       php(pcre)
38 Requires:       php(sockets)
39 Requires:       php-pear-DB
40 # Some php-database backend. Suggests?
41 Requires:       webapps
42 Suggests:       php(gd)
43 Suggests:       php(iconv)
44 Suggests:       php(mcrypt)
45 Suggests:       php(openssl)
46 Suggests:       php-pecl-fileinfo
47 Conflicts:      logrotate < 3.7-4
48 BuildArch:      noarch
49 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
50
51 %define         _webapps        /etc/webapps
52 %define         _webapp         roundcube
53 %define         _sysconfdir     %{_webapps}/%{_webapp}
54 %define         _appdir         %{_datadir}/%{_webapp}
55 %define         _appdatadir     /var/lib/roundcube
56 %define         _applogdir      /var/log/roundcube
57 %define         _archivelogdir  /var/log/archive/roundcube
58
59 %description
60 RoundCube Webmail is a browser-based multilingual IMAP client with an
61 application-like user interface. It provides full functionality you
62 expect from an e-mail client, including MIME support, address book,
63 folder manipulation and message filters. RoundCube Webmail is written
64 in PHP and requires the MySQL database. The user interface is fully
65 skinnable using XHTML and CSS 2.
66
67 %description -l pl.UTF-8
68 RoundCube Webmail to oparty na przeglądarce wielojęzyczny klient PHP z
69 interfejsem użytkownika podobnym do aplikacji. Udostępnia pełną
70 funkcjonalność jakiej można oczekiwać od klienta pocztowego, w tym
71 obsługę MIME, książkę adresową, operacje na folderach i filtry
72 wiadomości. RoundCube Webmail jest napisany w PHP i wymaga bazy danych
73 MySQL. Interfejs użytkownika można w pełni obudować skórką przy użyciu
74 XHTML-a i CSS 2.
75
76 %package setup
77 Summary:        Installer script for RoundCube Webmail
78 Summary(pl.UTF-8):      Skrypt instalacyjny RoundCube Webmaila
79 Group:          Applications/WWW
80 Requires:       %{name} = %{version}-%{release}
81
82 %description setup
83 This package provides installer script for RoundCube Webmail.
84
85 %description setup -l pl.UTF-8
86 Ten pakiet zawiera skrypt instalacyjny RoundCube Webmaila.
87
88 %package skin-default
89 Summary:        Default skin for RoundCube Webmail
90 Summary(pl.UTF-8):      Domyślna skórka dla RoundCube Webmaila
91 Group:          Applications/WWW
92 Provides:       %{name}-skin
93
94 %description skin-default
95 Default skin for RoundCube Webmail.
96
97 %description skin-default -l pl.UTF-8
98 Domyślna skórka dla RoundCube Webmaila.
99
100 %prep
101 %setup -q -n %{name}-%{version}-%{_rc} %{?with_postfixadmin:-a 4}
102 %patch0 -p1
103 #%patch1 -p1 need to rewrite
104 %patch2 -p1
105 %if %{with spamfilter}
106 %patch3 -p1
107 %endif
108 %if %{with postfixadmin}
109 %patch4 -p1
110 %endif
111
112 find -name .svn | xargs -r rm -rf
113
114 # undos the source
115 find '(' -name '*.php' -o -name '*.inc' -o -name '*.js' -o -name '*.css' ')' -print0 | xargs -0 sed -i -e 's,\r$,,'
116
117 mv config/db.inc.php.dist config/db.inc.php
118 mv config/main.inc.php.dist config/main.inc.php
119 %if %{with postfixadmin}
120 cp rcpfa-1.0.2/code/forwarding.html skins/default/templates
121 cp rcpfa-1.0.2/code/password.html skins/default/templates
122 cp rcpfa-1.0.2/code/vacation.html skins/default/templates
123 cp rcpfa-1.0.2/code/pfa_forwarding.inc program/steps/settings
124 cp rcpfa-1.0.2/code/pfa_password.inc program/steps/settings
125 cp rcpfa-1.0.2/code/pfa_vacation.inc program/steps/settings
126 cp rcpfa-1.0.2/code/pfa.php program/include
127
128 patch -p1 < rcpfa-1.0.2/diffs/app.js.diff
129 patch -p1 < rcpfa-1.0.2/diffs/db.inc.php.diff
130 patch -p1 < rcpfa-1.0.2/diffs/func.inc.diff
131 patch -p1 < rcpfa-1.0.2/diffs/index.php.diff
132 patch -p1 < rcpfa-1.0.2/diffs/labels.inc.diff
133 patch -p1 < rcpfa-1.0.2/diffs/main.inc.diff
134 patch -p1 < rcpfa-1.0.2/diffs/main.inc.php.diff
135 patch -p1 < rcpfa-1.0.2/diffs/messages.inc.diff
136 patch -p1 < rcpfa-1.0.2/diffs/rcube_user.php.diff
137 patch -p1 < rcpfa-1.0.2/diffs/settingstabs.html.diff
138 %endif
139 %install
140 rm -rf $RPM_BUILD_ROOT
141 install -d $RPM_BUILD_ROOT{%{_appdatadir},%{_applogdir},%{_archivelogdir},%{_sysconfdir}} \
142         $RPM_BUILD_ROOT{%{_appdir}/{bin,config,installer,program,skins},/etc/logrotate.d}
143
144 # Main application part:
145 cp -a program/* $RPM_BUILD_ROOT%{_appdir}/program
146 cp -a bin/*.php $RPM_BUILD_ROOT%{_appdir}/bin
147 cp -a index.php $RPM_BUILD_ROOT%{_appdir}
148
149 # Skins installation
150 cp -a skins/* $RPM_BUILD_ROOT%{_appdir}/skins
151
152 # Installer part
153 cp -a installer/* $RPM_BUILD_ROOT%{_appdir}/installer
154
155 ## Configuration:
156 install config/db.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/db.inc.php
157 install config/main.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/main.inc.php
158 ln -sf %{_sysconfdir}/db.inc.php $RPM_BUILD_ROOT%{_appdir}/config/db.inc.php
159 ln -sf %{_sysconfdir}/main.inc.php $RPM_BUILD_ROOT%{_appdir}/config/main.inc.php
160
161 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
162 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
163 install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
164 install %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
165
166 %clean
167 rm -rf $RPM_BUILD_ROOT
168
169 %pretrans
170 if [ ! -f %{_sysconfdir}/db.inc.php -o ! -f %{_sysconfdir}/main.inc.php ]; then
171         # import configs from previously manually installed site
172         d=/home/services/httpd/html/config
173         echo >&2 "Importing site configs from $d"
174         mkdir -p %{_sysconfdir}
175         if [ -f $d/db.inc.php ]; then
176                 [ -f %{_sysconfdir}/db.inc.php ] && mv -f %{_sysconfdir}/db.inc.php{,.rpmorig}
177                 cp -af $d/db.inc.php %{_sysconfdir}/db.inc.php
178         fi
179         if [ -f $d/main.inc.php ]; then
180                 [ -f %{_sysconfdir}/main.inc.php ] && mv -f %{_sysconfdir}/main.inc.php{,.rpmorig}
181                 cp -af $d/main.inc.php %{_sysconfdir}/main.inc.php
182         fi
183 fi
184
185 %post
186 if [ "$1" = 0 ]; then
187 %banner -e %{name} <<'EOF'
188 To customize installed languages set
189  %%_install_langs in /etc/rpm/macros
190
191 EOF
192 fi
193
194 %triggerin -- apache1 < 1.3.37-3, apache1-base
195 %webapp_register apache %{_webapp}
196
197 %triggerun -- apache1 < 1.3.37-3, apache1-base
198 %webapp_unregister apache %{_webapp}
199
200 %triggerin -- apache < 2.2.0, apache-base
201 %webapp_register httpd %{_webapp}
202
203 %triggerun -- apache < 2.2.0, apache-base
204 %webapp_unregister httpd %{_webapp}
205
206 %triggerin -- lighttpd
207 %webapp_register lighttpd %{_webapp}
208
209 %triggerun -- lighttpd
210 %webapp_unregister lighttpd %{_webapp}
211
212 %files
213 %defattr(644,root,root,755)
214 %doc CHANGELOG INSTALL README UPGRADING SQL
215 %dir %attr(750,root,http) %{_sysconfdir}
216 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
217 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
218 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
219 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.php
220 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
221 %dir %{_appdir}
222 %{_appdir}/*.php
223 %dir %{_appdir}/bin
224 %{_appdir}/bin/*.php
225 %dir %{_appdir}/config
226 %{_appdir}/config/*.php
227 %dir %{_appdir}/program
228 %{_appdir}/program/*.gif
229 %{_appdir}/program/include
230 %{_appdir}/program/js
231 %{_appdir}/program/lib
232 %{_appdir}/program/steps
233 %dir %{_appdir}/program/localization
234 %{_appdir}/program/localization/index.inc
235
236 %lang(ar_SA) %{_appdir}/program/localization/ar_SA
237 %lang(bg) %{_appdir}/program/localization/bg_BG
238 %lang(bs) %{_appdir}/program/localization/bs_BA
239 %lang(ca_ES) %{_appdir}/program/localization/ca_ES
240 %lang(cs) %{_appdir}/program/localization/cs_CZ
241 %lang(da) %{_appdir}/program/localization/da_DK
242 %lang(de_CH) %{_appdir}/program/localization/de_CH
243 %lang(de) %{_appdir}/program/localization/de_DE
244 %lang(el) %{_appdir}/program/localization/el_GR
245 %lang(en_GB) %{_appdir}/program/localization/en_GB
246 %lang(en_US) %{_appdir}/program/localization/en_US
247 %lang(eo) %{_appdir}/program/localization/eo
248 %lang(es) %{_appdir}/program/localization/es_ES
249 %lang(et) %{_appdir}/program/localization/et_EE
250 %lang(eu) %{_appdir}/program/localization/eu_ES
251 %lang(fa) %{_appdir}/program/localization/fa
252 %lang(fi) %{_appdir}/program/localization/fi_FI
253 %lang(fr) %{_appdir}/program/localization/fr_FR
254 %lang(ga) %{_appdir}/program/localization/ga_IE
255 %lang(gl) %{_appdir}/program/localization/gl_ES
256 %lang(he) %{_appdir}/program/localization/he_IL
257 %lang(hi) %{_appdir}/program/localization/hi_IN
258 %lang(hr) %{_appdir}/program/localization/hr
259 %lang(hu) %{_appdir}/program/localization/hu_HU
260 %lang(hy) %{_appdir}/program/localization/hy_AM
261 %lang(id) %{_appdir}/program/localization/id_ID
262 %lang(is) %{_appdir}/program/localization/is_IS
263 %lang(it) %{_appdir}/program/localization/it_IT
264 %lang(ja) %{_appdir}/program/localization/ja_JP
265 %lang(ka) %{_appdir}/program/localization/ka_GE
266 %lang(ko) %{_appdir}/program/localization/ko_KR
267 %lang(ku) %{_appdir}/program/localization/ku
268 %lang(lt) %{_appdir}/program/localization/lt_LT
269 %lang(lv) %{_appdir}/program/localization/lv_LV
270 %lang(mk) %{_appdir}/program/localization/mk_MK
271 %lang(ms) %{_appdir}/program/localization/ms_MY
272 %lang(nb) %{_appdir}/program/localization/nb_NO
273 %lang(ne) %{_appdir}/program/localization/ne_NP
274 %lang(nl) %{_appdir}/program/localization/nl_NL
275 %lang(nl_BE) %{_appdir}/program/localization/nl_BE
276 %lang(nn) %{_appdir}/program/localization/nn_NO
277 %lang(pl) %{_appdir}/program/localization/pl_PL
278 %lang(pt) %{_appdir}/program/localization/pt_PT
279 %lang(pt_BR) %{_appdir}/program/localization/pt_BR
280 %lang(ro) %{_appdir}/program/localization/ro_RO
281 %lang(ru) %{_appdir}/program/localization/ru_RU
282 %lang(si) %{_appdir}/program/localization/si_LK
283 %lang(sk) %{_appdir}/program/localization/sk_SK
284 %lang(sl) %{_appdir}/program/localization/sl_SI
285 %lang(sq) %{_appdir}/program/localization/sq_AL
286 %lang(sr) %{_appdir}/program/localization/sr_CS
287 %lang(sv) %{_appdir}/program/localization/sv_SE
288 %lang(th) %{_appdir}/program/localization/th_TH
289 %lang(tr) %{_appdir}/program/localization/tr_TR
290 %lang(uk) %{_appdir}/program/localization/uk_UA
291 %lang(vn) %{_appdir}/program/localization/vi_VN
292 %lang(zh_CN) %{_appdir}/program/localization/zh_CN
293 %lang(zh_TW) %{_appdir}/program/localization/zh_TW
294
295 %dir %{_appdir}/skins
296 %dir %attr(770,root,http) %{_applogdir}
297 %dir %attr(751,root,logs) %{_archivelogdir}
298 %dir %attr(770,root,http) %{_appdatadir}
299 # %ghost logfile
300
301 %files setup
302 %defattr(644,root,root,755)
303 %dir %{_appdir}/installer
304 %{_appdir}/installer/*.php
305 %{_appdir}/installer/client.js
306 %{_appdir}/installer/styles.css
307 %{_appdir}/installer/welcome.html
308 %{_appdir}/installer/images
309
310 %files skin-default
311 %defattr(644,root,root,755)
312 %{_appdir}/skins/default
This page took 0.092871 seconds and 4 git commands to generate.