]> git.pld-linux.org Git - packages/roundcubemail.git/blobdiff - roundcubemail.spec
avoid .sh ext for .php scripts
[packages/roundcubemail.git] / roundcubemail.spec
index 00cad29a26fb5f8cdc925d96900291d12e9b88ac..df6bb1d6c5e02d5527c363bf816e84549fba96ba 100644 (file)
@@ -1,12 +1,7 @@
 # TODO:
-# - use gpl-dependant tarball, instead of full tarball and removing all bundled libs again?
-#   see: http://www.roundcubeforum.net/3-news-announcements/32-news-announcements/6601-roundcube-news-new-version-0-4-beta-released.html
-# - move bin/* to -setup which are related to upgrading/setup
 # - use system js/tiny_mce
 # - use system js/jquery
-# - use system magic db: program/lib/magic
 # - package: http://blog.ilohamail.org/ and remove boundled classess from it
-# - Some php-database backend. Suggests?
 # - test/finish and then enable by default password-anon-ldap-bind patch
 # - bconds does not work for a long time
 #
 Summary:       RoundCube Webmail
 Summary(pl.UTF-8):     RoundCube Webmail - poczta przez WWW
 Name:          roundcubemail
-Version:       0.7.2
-Release:       1
+Version:       1.0.8
+Release:       0.3
 License:       GPL v3+
 Group:         Applications/Mail
-#Source0:      http://downloads.sourceforge.net/roundcubemail/%{name}-%{version}.tar.gz
 Source0:       http://downloads.sourceforge.net/roundcubemail/%{name}-%{version}-dep.tar.gz
-# Source0-md5: 2b77fe823de00a7ebd85b8919e40d78d
+# Source0-md5: 9465b80be1c13534646a04b0b5562d56
 Source1:       apache.conf
 Source2:       %{name}.logrotate
 Source3:       lighttpd.conf
 Source4:       http://nejc.skoberne.net/wp-content/uploads/2008/11/rcpfa-105.tgz
 # Source4-md5: dc23bcd894f693db74fce53b09ab58d6
 Source5:       find-lang.sh
+Source6:       httpd.conf
 Patch0:                %{name}-config.patch
 Patch1:                %{name}-spam.patch
 Patch2:                %{name}-postfixadmin-pl_locales.patch
@@ -41,42 +36,50 @@ Patch4:             %{name}-password-anon-ldap-bind.patch
 URL:           http://www.roundcube.net/
 BuildRequires: rpm-php-pearprov >= 4.4.2-11
 BuildRequires: rpm-pythonprov
-BuildRequires: rpmbuild(macros) >= 1.566
+BuildRequires: rpmbuild(macros) >= 1.654
 BuildRequires: sed >= 4.0
 Requires:      %{name}-skin
-Requires:      php-common >= 4:%{php_min_version}
-Requires:      php-date
-Requires:      php-dom
-Requires:      php-iconv
-Requires:      php-imap
-Requires:      php-pcre
+Requires:      php(core) >= %{php_min_version}
+Requires:      php(date)
+Requires:      php(dom)
+Requires:      php(iconv)
+Requires:      php(imap)
+Requires:      php(pcre)
+Requires:      php(session)
+Requires:      php(simplexml)
+Requires:      php(sockets)
+Requires:      php(spl)
+Requires:      php(xml)
 Requires:      php-pear-DB
 Requires:      php-pear-Mail_Mime >= 1.8.0
 Requires:      php-pear-Net_IDNA2 >= 0.1.1
 Requires:      php-pear-Net_SMTP
-Requires:      php-session
-Requires:      php-simplexml
-Requires:      php-sockets
-Requires:      php-spl
-Requires:      php-xml
 Requires:      rpm-whiteout >= 1.22
 Requires:      webapps
 Requires:      webserver(alias)
 Requires:      webserver(indexfile)
 Requires:      webserver(php)
+Requires(post):        openssl-tools
+Suggests:      php(exif)
 Suggests:      php(fileinfo)
-Suggests:      php-gd
-Suggests:      php-intl
-Suggests:      php-json
-Suggests:      php-mbstring
-Suggests:      php-mcrypt
-Suggests:      php-openssl
+Suggests:      php(gd)
+Suggests:      php(intl)
+Suggests:      php(json)
+Suggests:      php(mbstring)
+Suggests:      php(mcrypt)
+Suggests:      php(openssl)
+Suggests:      php(xml)
 Suggests:      php-pear-Auth_SASL
+# at least one MDB2 db driver needed
+Suggests:      php-pear-MDB2_Driver_mysql
+Suggests:      php-pear-MDB2_Driver_pgsql
+Suggests:      php-pear-MDB2_Driver_sqlite
 Suggests:      php-pear-Net_LDAP2
 Suggests:      php-pear-Net_Sieve
 Suggests:      php-pear-Net_Socket
-Suggests:      php-xml
 Obsoletes:     roundcube-plugin-jqueryui
+Obsoletes:     roundcubemail-skin-default
+Conflicts:     apache-base < 2.4.0-1
 Conflicts:     logrotate < 3.8.0
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -91,14 +94,13 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %define                find_lang       sh %{SOURCE5} %{buildroot}
 
-# bad depsolver
-%define                _noautopear     pear
+%define                _noautoreq_pear .*
 
 # exclude optional php dependencies
 %define                _noautophp      php-sqlite php-mysql php-mysqli php-pgsql php-hash php-json php-xml
 
 # put it together for rpmbuild
-%define                _noautoreq      %{?_noautophp} %{?_noautopear}
+%define                _noautoreq      %{?_noautophp}
 
 %description
 RoundCube Webmail is a browser-based multilingual IMAP client with an
@@ -129,18 +131,31 @@ This package provides installer script for RoundCube Webmail.
 %description setup -l pl.UTF-8
 Ten pakiet zawiera skrypt instalacyjny RoundCube Webmaila.
 
-%package skin-default
-Summary:       Default skin for RoundCube Webmail
-Summary(pl.UTF-8):     Domyślna skórka dla RoundCube Webmaila
+%package skin-classic
+Summary:       Classic skin for RoundCube Webmail
+Summary(pl.UTF-8):     Klasyczna skórka dla RoundCube Webmaila
 Group:         Applications/WWW
 Requires:      %{name} = %{version}-%{release}
 Provides:      %{name}-skin
 
-%description skin-default
-Default skin for RoundCube Webmail.
+%description skin-classic
+Classic skin for RoundCube Webmail.
 
-%description skin-default -l pl.UTF-8
-Domyślna skórka dla RoundCube Webmaila.
+%description skin-classic -l pl.UTF-8
+Klasyczna skórka dla RoundCube Webmaila.
+
+%package skin-larry
+Summary:       Larry skin for RoundCube Webmail
+Summary(pl.UTF-8):     Skórka Larry dla RoundCube Webmaila
+Group:         Applications/WWW
+Requires:      %{name} = %{version}-%{release}
+Provides:      %{name}-skin
+
+%description skin-larry
+Larry skin for RoundCube Webmail.
+
+%description skin-larry -l pl.UTF-8
+Skórka Larry dla RoundCube Webmaila.
 
 %prep
 %setup -q -n %{name}-%{version}-dep %{?with_postfixadmin:-a 4}
@@ -161,30 +176,24 @@ find -name .svn | xargs -r rm -rf
 # undos the source
 %undos -f php,inc,js,css
 
-# kill extensions and fill proper shebang
-%{__sed} -i -e '1s,^#!.*php,#!%{__php},' bin/*.sh
-for a in bin/*.sh; do
+# fill proper shebang
+%{__sed} -i -e '1s,^#!.*php,#!/usr/bin/php,' bin/*.sh
+# these are php scripts really
+for a in $(grep -l '<?php' bin/*.sh); do
        mv $a ${a%.sh}
 done
-
 %{__sed} -i s/indexcontacts.sh/indexcontacts/g bin/update
+%{__sed} -i s/updatedb.sh/updatedb/g bin/update
 
-# unpacked js sources
-find -name '*.src' | xargs rm -v
 # tools to pack js
-rm -f bin/{jsshrink,jsunshrink}
-
-# php-pear-Net_Sieve 1.3.0
-rm plugins/managesieve/lib/Net/Sieve.php
-
-# now empty dirs
-rmdir plugins/managesieve/lib/Net
+rm bin/jsshrink.sh
+rm bin/cssshrink.sh
 
 # pear package junk
 rm -v plugins/*/package.xml
 
-mv config/db.inc.php.dist config/db.inc.php
-mv config/main.inc.php.dist config/main.inc.php
+mv config/config.inc.php{.sample,}
+
 %if %{with postfixadmin}
 mv rcpfa-%{rcpfa_ver} rcpfa
 cd rcpfa
@@ -202,12 +211,15 @@ cp -p code/pfa.php ../program/include
 %{__patch} -d .. -p1 < diffs/index.php.diff
 %{__patch} -d .. -p1 < diffs/labels.inc.diff
 %{__patch} -d .. -p1 < diffs/main.inc.diff
-%{__patch} -d .. -p1 < diffs/main.inc.php.diff
+%{__patch} -d .. -p1 < diffs/config.inc.php.diff
 %{__patch} -d .. -p1 < diffs/messages.inc.diff
 %{__patch} -d .. -p1 < diffs/rcube_user.php.diff
 %{__patch} -d .. -p1 < diffs/settingstabs.html.diff
 %endif
 
+# cleanup backups after patching
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+
 %install
 rm -rf $RPM_BUILD_ROOT
 install -d $RPM_BUILD_ROOT{%{_appdatadir},%{_applogdir},%{_archivelogdir},%{_sysconfdir}} \
@@ -223,21 +235,18 @@ cp -a skins/* $RPM_BUILD_ROOT%{_appdir}/skins
 
 # Installer part
 cp -a installer/* $RPM_BUILD_ROOT%{_appdir}/installer
-cp -a config/db.inc.php $RPM_BUILD_ROOT%{_appdir}/config/db.inc.php.dist
-cp -a config/main.inc.php $RPM_BUILD_ROOT%{_appdir}/config/main.inc.php.dist
 cp -a SQL $RPM_BUILD_ROOT%{_appdir}
 
 # Plugins
 cp -a plugins $RPM_BUILD_ROOT%{_appdir}/plugins
 
 ## Configuration:
-cp -a config/db.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/db.inc.php
-cp -a config/main.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/main.inc.php
-ln -sf %{_sysconfdir}/db.inc.php $RPM_BUILD_ROOT%{_appdir}/config/db.inc.php
-ln -sf %{_sysconfdir}/main.inc.php $RPM_BUILD_ROOT%{_appdir}/config/main.inc.php
-
+for a in config/*.php; do
+       cp -p $a $RPM_BUILD_ROOT%{_sysconfdir}
+       ln -s %{_sysconfdir}/$(basename $a) $RPM_BUILD_ROOT%{_appdir}/config
+done
 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
-cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
+cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/httpd.conf
 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/lighttpd.conf
 cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
 
@@ -256,7 +265,7 @@ for p in $RPM_BUILD_ROOT%{_appdir}/plugins/*; do
                localization)
                        continue
                        ;;
-               README | Changelog | config.inc.php.dist)
+               README | Changelog | composer.json | config.inc.php.dist)
                        echo "%doc $p"
                        ;;
                *)
@@ -276,29 +285,11 @@ makedesstr() {
        openssl rand -hex 12
 }
 
-if grep -q '24ByteDESkey' %{_sysconfdir}/main.inc.php; then
+if grep -q '24ByteDESkey' %{_sysconfdir}/config.inc.php; then
        des=$(makedesstr)
        # precaution if random str generation failed
        if [ c$(echo -n "$des" | wc -c) = c24 ]; then
-               %{__sed} -i -e "s/rcmail-\!24ByteDESkey\*Str/$des/" %{_sysconfdir}/main.inc.php
-       fi
-fi
-
-%pretrans
-if [ ! -f %{_sysconfdir}/db.inc.php -o ! -f %{_sysconfdir}/main.inc.php ]; then
-       # import configs from previously manually installed site
-       d=/home/services/httpd/html/config
-       if [ -f $d/db.inc.php -o -f $d/main.inc.php ]; then
-               echo >&2 "Importing site configs from $d"
-               mkdir -p %{_sysconfdir}
-               if [ -f $d/db.inc.php ]; then
-                       [ -f %{_sysconfdir}/db.inc.php ] && mv -f %{_sysconfdir}/db.inc.php{,.rpmorig}
-                       cp -af $d/db.inc.php %{_sysconfdir}/db.inc.php
-               fi
-               if [ -f $d/main.inc.php ]; then
-                       [ -f %{_sysconfdir}/main.inc.php ] && mv -f %{_sysconfdir}/main.inc.php{,.rpmorig}
-                       cp -af $d/main.inc.php %{_sysconfdir}/main.inc.php
-               fi
+               %{__sed} -i -e "s/rcmail-\!24ByteDESkey\*Str/$des/" %{_sysconfdir}/config.inc.php
        fi
 fi
 
@@ -321,10 +312,10 @@ EOF
 %triggerun -- apache1 < 1.3.37-3, apache1-base
 %webapp_unregister apache %{_webapp}
 
-%triggerin -- apache < 2.2.0, apache-base
+%triggerin -- apache-base
 %webapp_register httpd %{_webapp}
 
-%triggerun -- apache < 2.2.0, apache-base
+%triggerun -- apache-base
 %webapp_unregister httpd %{_webapp}
 
 %triggerin -- lighttpd
@@ -335,24 +326,23 @@ EOF
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc CHANGELOG INSTALL README UPGRADING
+%doc CHANGELOG INSTALL README.md UPGRADING
 %dir %attr(750,root,http) %{_sysconfdir}
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/httpd.conf
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/lighttpd.conf
-%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*.php
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/config.inc.php
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/defaults.inc.php
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mimetypes.php
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
 %dir %{_appdir}
 %{_appdir}/*.php
-%dir %{_appdir}/bin
-%attr(755,root,root) %{_appdir}/bin/*
-%dir %{_appdir}/config
-%{_appdir}/config/*.php
+%{_appdir}/config
 %dir %{_appdir}/program
-%{_appdir}/program/*.gif
 %{_appdir}/program/include
 %{_appdir}/program/js
 %{_appdir}/program/lib
+%{_appdir}/program/resources
 %{_appdir}/program/steps
 %{_appdir}/program/localization/index.inc
 
@@ -367,15 +357,19 @@ EOF
 
 %files setup
 %defattr(644,root,root,755)
+%dir %{_appdir}/bin
+%attr(755,root,root) %{_appdir}/bin/*
 %dir %{_appdir}/installer
 %{_appdir}/installer/*.php
 %{_appdir}/installer/client.js
 %{_appdir}/installer/styles.css
-%{_appdir}/installer/welcome.html
 %{_appdir}/installer/images
-%{_appdir}/config/*.php.dist
 %{_appdir}/SQL
 
-%files skin-default
+%files skin-classic
+%defattr(644,root,root,755)
+%{_appdir}/skins/classic
+
+%files skin-larry
 %defattr(644,root,root,755)
-%{_appdir}/skins/default
+%{_appdir}/skins/larry
This page took 0.239672 seconds and 4 git commands to generate.