106 lines
2.7 KiB
Bash
106 lines
2.7 KiB
Bash
# Copyright 1999-2013 Gentoo Foundation
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
# $Header: /var/cvsroot/gentoo-x86/app-office/openerp/openerp-7.0.20130219-r5.ebuild,v 1.1 2013/02/21 05:46:33 patrick Exp $
|
|
|
|
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="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"
|
|
|
|
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
|
|
}
|