From d099c5ac85bb76868b3ae150fe1bf59b5f4ca411 Mon Sep 17 00:00:00 2001 From: Manuel Friedli Date: Wed, 8 Jul 2009 15:18:44 +0000 Subject: [PATCH] added ebuild for roundcube mail 0.2.2 --- mail-client/roundcube/Manifest | 3 + .../roundcube/files/postinstall-en.txt | 77 +++++++++++++++++ mail-client/roundcube/roundcube-0.2.2.ebuild | 83 +++++++++++++++++++ 3 files changed, 163 insertions(+) create mode 100644 mail-client/roundcube/Manifest create mode 100644 mail-client/roundcube/files/postinstall-en.txt create mode 100644 mail-client/roundcube/roundcube-0.2.2.ebuild diff --git a/mail-client/roundcube/Manifest b/mail-client/roundcube/Manifest new file mode 100644 index 0000000..1986438 --- /dev/null +++ b/mail-client/roundcube/Manifest @@ -0,0 +1,3 @@ +AUX postinstall-en.txt 2513 RMD160 c2a04efcdd4007642221797a10877c2fc57ad874 SHA1 8bc888b2944694bbbadeddfe6f193c3a8a995a87 SHA256 5c1fa9d43f29158521188aae417654f968fb41662c46721b8183728df37eb4c4 +DIST roundcubemail-0.2.2.tar.gz 1703629 RMD160 c813e2bcfc7ba75c23b85ec620f819c1261c1f3f SHA1 ddb2340962bcf3ac24d026a6d97e9bd95cefaa3d SHA256 57df1dfa6b88973f74131adf0262de4fbf5217be3bc6739faeccff77a9dfffa3 +EBUILD roundcube-0.2.2.ebuild 2602 RMD160 4a028040bc3a6d8c6fe7efe30bb0d80a4c40d8d6 SHA1 db9adc1c866c9d4b54f6664c8a8b76d8acf8b4fb SHA256 ef2c22d046a38c39fe2d9a837f13cb4056a65a2f7d7092b3376d508ae502472b diff --git a/mail-client/roundcube/files/postinstall-en.txt b/mail-client/roundcube/files/postinstall-en.txt new file mode 100644 index 0000000..d3d8138 --- /dev/null +++ b/mail-client/roundcube/files/postinstall-en.txt @@ -0,0 +1,77 @@ +0. DATABASE SETUP + + +* MySQL 4.1.x/5.x +----------------- +For MySQL version 4.1 and up, it's recommended to create the database for +RoundCube with utf-8 charset. Here's an example of the init procedure: + +# mysql +> CREATE DATABASE roundcubemail DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; +> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost + IDENTIFIED BY 'password'; +> quit + +# mysql roundcubemail < ${MY_INSTALLDIR}/SQL/mysql5.initial.sql + +* SQLite +-------- +Sqlite requires specifically php5 (sqlite in php4 currently doesn't +work with roundcube), and you need sqlite 2 (preferably 2.8) to setup +the sqlite db (sqlite 3.x also doesn't work at the moment). Here is +an example how you can setup the sqlite.db for roundcube: + +# sqlite -init SQL/sqlite.initial.sql sqlite.db + +Make sure your configuration points to the sqlite.db file and that the +webserver can write to the file and the directory containing the file. + +* PostgreSQL +------------ +To use RoundCube with PostgreSQL support you have to follow these +simple steps, which have to be done as the postgres system user (or +which ever is the database superuser): + +$ createuser roundcube +$ createdb -O roundcube roundcubemail +$ psql roundcubemail + +roundcubemail =# ALTER USER roundcube WITH PASSWORD 'the_new_password'; +roundcubemail =# \c - roundcube +roundcubemail => \i ${MY_INSTALLDIR}/SQL/postgres.initial.sql + +All this has been tested with PostgreSQL 8.x and 7.4.x. Older +versions don't have a -O option for the createdb, so if you are +using that version you'll have to change ownership of the DB later. + + +1. ROUNDCUBE CONFIGURATION + +Modify the files in ${MY_INSTALLDIR}/config/* to suit your local environment + +Details about the config parameters can be found in the config files. +See http://trac.roundcube.net/wiki/Howto_Install for even more guidance. + + +2. PHP CONFIGURATION + + - error_reporting E_ALL & ~E_NOTICE (or lower) + - file_uploads On (for attachment upload features) + - session.auto_start Off + - magic_quotes_gpc Off + - memory_limit (increase as suitable to support large attachments) + + +3. WEBSERVER CONFIGURATION + +Access through your webserver to at least the following directories should be denied: + + * /conf + * /temp + * /logs + +Roundcube uses .htaccess files to protect these directories if you are using Apache; +be sure to allow override of the Limit directives to get them taken into account. + +If you are NOT using Apache, it is your responsibility to take care of the above as +needed by your webserver. diff --git a/mail-client/roundcube/roundcube-0.2.2.ebuild b/mail-client/roundcube/roundcube-0.2.2.ebuild new file mode 100644 index 0000000..2b9ebae --- /dev/null +++ b/mail-client/roundcube/roundcube-0.2.2.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/mail-client/roundcube/roundcube-0.2.1.ebuild,v 1.1 2009/04/13 08:27:00 hollow Exp $ + +MY_PN="${PN}mail" +MY_P="${MY_PN}-${PV}" + +inherit eutils webapp depend.php depend.apache + +DESCRIPTION="A browser-based multilingual IMAP client with an application-like user interface" +HOMEPAGE="http://roundcube.net" +SRC_URI="mirror://sourceforge/${MY_PN}/${MY_P}.tar.gz" + +# roundcube is GPL-licensed, the rest of the licenses here are +# for bundled PEAR components, googiespell and utf8.class.php +LICENSE="GPL-2 BSD PHP-2.02 PHP-3 MIT public-domain" +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" +IUSE="ldap mysql postgres sqlite ssl spell" + +DEPEND="" +RDEPEND="dev-php/PEAR-PEAR" + +need_httpd_cgi +need_php_httpd + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + local flags="crypt iconv imap pcre session unicode" + use ldap && flags="${flags} ldap" + use ssl && flags="${flags} ssl" + use spell && flags="${flags} curl spell" + + # check for required PHP features + if ! use mysql && ! use postgres && ! use sqlite ; then + local dbflags="mysql mysqli postgres sqlite" + if ! PHPCHECKNODIE="yes" require_php_with_use ${flags} || \ + ! PHPCHECKNODIE="yes" require_php_with_any_use ${dbflags} ; then + die "Re-install ${PHP_PKG} with ${flags} and at least one of ${dbflags} in USE." + fi + else + for db in postgres sqlite ; do + use ${db} && flags="${flags} ${db}" + done + if ! PHPCHECKNODIE="yes" require_php_with_use ${flags} || \ + ( use mysql && ! PHPCHECKNODIE="yes" require_php_with_any_use mysql mysqli ) ; then + local diemsg="Re-install ${PHP_PKG} with ${flags}" + use mysql && diemsg="${diemsg} and at least one of mysql mysqli" + die "${diemsg} in USE" + fi + fi + + # add some warnings about optional functionality + if ! PHPCHECKNODIE="yes" require_php_with_any_use gd gd-external ; then + ewarn "IMAP quota display will not work correctly without GD support in PHP." + ewarn "Recompile PHP with either gd or gd-external in USE if you want this feature." + ewarn + fi + + webapp_pkg_setup +} + +src_unpack() { + unpack ${A} + cd "${S}" + mv config/db.inc.php{.dist,} + mv config/main.inc.php{.dist,} +} + +src_install () { + webapp_src_preinst + dodoc CHANGELOG INSTALL README UPGRADING + + cp -R [[:lower:]]* SQL "${D}/${MY_HTDOCSDIR}" + + webapp_serverowned "${MY_HTDOCSDIR}"/logs + webapp_serverowned "${MY_HTDOCSDIR}"/temp + + webapp_configfile "${MY_HTDOCSDIR}"/config/{db,main}.inc.php + webapp_postinst_txt en "${FILESDIR}"/postinstall-en.txt + webapp_postupgrade_txt en UPGRADING + webapp_src_install +}