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