1
0
forked from pool/roundcubemail
roundcubemail/roundcubemail.spec

146 lines
4.9 KiB
RPMSpec

#
# spec file for package roundcubemail
#
# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: roundcubemail
Summary: A modern browser-based multilingual IMAP client
License: GPL-3.0+ and GPL-2.0 and BSD-3-Clause
Group: Productivity/Networking/Email/Clients
Url: http://www.roundcube.net/
Version: 0.9.4
Release: 0
BuildRequires: apache2-devel
%if 0%{suse_version} >= 1100
BuildRequires: fdupes
%endif
BuildRequires: pcre-devel
Requires: http_daemon
Requires: mod_php_any
Requires: php-exif
Requires: php-gettext
Requires: php-iconv
Requires: php-mbstring
Requires: php-mcrypt
Requires: php-openssl
Requires: php-session
Requires: php_any_db
Recommends: php-mysql
Recommends: php5-intl
Recommends: php5-fileinfo
## Requires: for upstream dep package
#Requires: php5-pear-Auth_SASL
Source0: %{name}-%{version}.tar.gz
Source2: %{name}-httpd.conf
Source3: %{name}-rpmlintrc
Source4: README.openSUSE
# PATCH-FIX-OPENSUSE use the general config directory /etc
Patch0: %{name}-config-dir.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
%define apache_serverroot %(/usr/sbin/apxs2 -q DATADIR)
%define apache_sysconfdir %(/usr/sbin/apxs2 -q SYSCONFDIR)
%define roundcubepath %{apache_serverroot}/%name
%define roundcubeconfigpath %_sysconfdir/%name
%description
RoundCube Webmail is a browser-based multilingual IMAP client with an
application-like user interface. It provides full functionality you
expect from an e-mail client, including MIME support, address book,
folder manipulation, message searching and spell checking.
RoundCube Webmail is written in PHP and requires the MySQL database.
The user interface is fully skinnable using XHTML and CSS 2.
%prep
%setup -q -n %{name}-%{version}
%patch0 -p1
cp %{SOURCE4} .
# remove cruft from source archive
find . -name ".gitignore" -exec rm {} \;
%build
%install
install -d -m 0755 %buildroot%roundcubepath
cp -a * %buildroot%{roundcubepath}/
mkdir -p %buildroot/%_sysconfdir/%name
cp config/* %buildroot/%{roundcubeconfigpath}/
cp %buildroot/%{roundcubeconfigpath}/main.inc.php.dist %buildroot/%{roundcubeconfigpath}/main.inc.php
cp %buildroot/%{roundcubeconfigpath}/db.inc.php.dist %buildroot/%{roundcubeconfigpath}/db.inc.php
rm -rf %buildroot%{roundcubepath}/config
# install httpd.conf file and adapt the configuration
install -d -m 0755 %buildroot/%{apache_sysconfdir}/conf.d
sed -e "s#__ROUNDCUBEPATH__#%{roundcubepath}#g" %{SOURCE2} > %buildroot%{apache_sysconfdir}/conf.d/roundcubemail.conf
# install docs
install -d -m 0755 %buildroot%_defaultdocdir/%name
for i in CHANGELOG INSTALL UPGRADING LICENSE README.md README.openSUSE; do
mv -v %{buildroot}%{roundcubepath}/$i %{buildroot}%{_defaultdocdir}/%name/
done
# no need to check .htaccess each time, the apache config takes care of the restrictions
find %buildroot/%{roundcubepath} -name .htaccess -delete
# fdupes
%if 0%{suse_version} >= 1100
%fdupes %{buildroot}/%{roundcubepath}
%endif
%clean
rm -rf %buildroot
%post
# enable apache required apache modules
if [ -x /usr/sbin/a2enmod ]; then
a2enmod -q alias || a2enmod alias
a2enmod -q rewrite || a2enmod rewrite
fi
if [ ! -f %{roundcubeconfigpath}/main.inc.php ]; then
cp %{roundcubeconfigpath}/main.inc.php.dist %{roundcubeconfigpath}/main.inc.php
fi
if [ ! -f %{roundcubeconfigpath}/db.inc.php ]; then
cp %{roundcubeconfigpath}/db.inc.php.dist %{roundcubeconfigpath}/db.inc.php
fi
exit 0
%files
%defattr(0644, root, root,0755)
%doc %_defaultdocdir/%name/
%dir %{roundcubepath}
%dir %{roundcubeconfigpath}
%ghost %config(noreplace) %{roundcubeconfigpath}/db.inc.php
%ghost %config(noreplace) %{roundcubeconfigpath}/main.inc.php
%config %{roundcubeconfigpath}/*
%config %{roundcubeconfigpath}/mimetypes.php
%config(noreplace) %{apache_sysconfdir}/conf.d/roundcubemail.conf
%{roundcubepath}/composer.json-dist
%{roundcubepath}/index.php
%{roundcubepath}/robots.txt
%attr(0755,root,root) %{roundcubepath}/bin/*.sh
%dir %{roundcubepath}/bin
%{roundcubepath}/installer/
%{roundcubepath}/plugins/
%{roundcubepath}/program/
%{roundcubepath}/skins/
%{roundcubepath}/SQL
%attr(-, wwwrun, root) %{roundcubepath}/logs/
%attr(-, wwwrun, root) %{roundcubepath}/temp/
%changelog