| # Copyright 1999-2014 Gentoo Foundation |
| # Distributed under the terms of the GNU General Public License v2 |
| # $Id$ |
| |
| EAPI="3" |
| PYTHON_DEPEND="2" |
| |
| inherit eutils distutils user |
| |
| DESCRIPTION="Open Source ERP & CRM" |
| HOMEPAGE="http://www.openerp.com/" |
| #yes, this is definitely a horrible URI |
| MY_PV=${PV/7.0./7.0-} |
| FNAME="${PN}-${MY_PV}-002614" |
| SRC_URI="http://nightly.openerp.com/7.0/nightly/src/${FNAME}.tar.gz" |
| |
| LICENSE="GPL-2" |
| SLOT="0" |
| KEYWORDS="~x86 ~amd64" |
| IUSE="+postgres ldap ssl" |
| |
| CDEPEND="!app-office/openerp-web |
| postgres? ( dev-db/postgresql[server] ) |
| dev-python/psutil |
| dev-python/docutils |
| dev-python/lxml |
| dev-python/psycopg:2 |
| dev-python/pychart |
| dev-python/reportlab |
| media-gfx/pydot |
| dev-python/vobject |
| dev-python/mako |
| dev-python/pyyaml |
| dev-python/Babel |
| dev-python/gdata |
| ldap? ( dev-python/python-ldap ) |
| dev-python/python-openid |
| dev-python/werkzeug |
| dev-python/xlwt |
| dev-python/feedparser |
| dev-python/python-dateutil |
| dev-python/pywebdav |
| ssl? ( dev-python/pyopenssl ) |
| dev-python/vatnumber |
| dev-python/zsi |
| dev-python/mock |
| dev-python/unittest2 |
| dev-python/jinja |
| dev-python/matplotlib" |
| |
| RDEPEND="${CDEPEND}" |
| DEPEND="${CDEPEND}" |
| |
| OPENERP_USER="openerp" |
| OPENERP_GROUP="openerp" |
| |
| S="${WORKDIR}/${FNAME}" |
| |
| pkg_setup() { |
| python_set_active_version 2 |
| python_pkg_setup |
| } |
| |
| src_install() { |
| distutils_src_install |
| |
| newinitd "${FILESDIR}/${PN}-2" "${PN}" |
| newconfd "${FILESDIR}/openerp-confd-2" "${PN}" |
| keepdir /var/log/openerp |
| |
| insinto /etc/logrotate.d |
| newins "${FILESDIR}"/openerp.logrotate openerp || die |
| dodir /etc/openerp |
| insinto /etc/openerp |
| newins "${FILESDIR}"/openerp.cfg.2 openerp.cfg || die |
| } |
| |
| pkg_preinst() { |
| enewgroup ${OPENERP_GROUP} |
| enewuser ${OPENERP_USER} -1 -1 -1 ${OPENERP_GROUP} |
| |
| fowners ${OPENERP_USER}:${OPENERP_GROUP} /var/log/openerp |
| fowners -R ${OPENERP_USER}:${OPENERP_GROUP} "$(python_get_sitedir)/${PN}/addons/" |
| |
| use postgres || sed -i '6,8d' "${D}/etc/init.d/openerp" || die "sed failed" |
| } |
| |
| pkg_postinst() { |
| chown ${OPENERP_USER}:${OPENERP_GROUP} /var/log/openerp |
| chown -R ${OPENERP_USER}:${OPENERP_GROUP} "$(python_get_sitedir)/${PN}/addons/" |
| |
| elog "In order to setup the initial database, run:" |
| elog " emerge --config =${CATEGORY}/${PF}" |
| elog "Be sure the database is started before" |
| } |
| |
| psqlquery() { |
| psql -q -At -U postgres -d template1 -c "$@" |
| } |
| |
| pkg_config() { |
| einfo "In the following, the 'postgres' user will be used." |
| if ! psqlquery "SELECT usename FROM pg_user WHERE usename = '${OPENERP_USER}'" | grep -q ${OPENERP_USER}; then |
| ebegin "Creating database user ${OPENERP_USER}" |
| createuser --username=postgres --createdb --no-adduser ${OPENERP_USER} |
| eend $? || die "Failed to create database user" |
| fi |
| } |