diff options
Diffstat (limited to 'app-office/openerp')
-rw-r--r-- | app-office/openerp/Manifest | 15 | ||||
-rw-r--r-- | app-office/openerp/files/openerp | 22 | ||||
-rw-r--r-- | app-office/openerp/files/openerp-2 | 23 | ||||
-rw-r--r-- | app-office/openerp/files/openerp-6.1-setup.py.patch | 32 | ||||
-rw-r--r-- | app-office/openerp/files/openerp-confd | 3 | ||||
-rw-r--r-- | app-office/openerp/files/openerp-confd-2 | 3 | ||||
-rw-r--r-- | app-office/openerp/files/openerp.cfg | 64 | ||||
-rw-r--r-- | app-office/openerp/files/openerp.cfg.2 | 65 | ||||
-rw-r--r-- | app-office/openerp/files/openerp.logrotate | 9 | ||||
-rw-r--r-- | app-office/openerp/metadata.xml | 9 | ||||
-rw-r--r-- | app-office/openerp/openerp-7.0.20140125.ebuild | 119 | ||||
-rw-r--r-- | app-office/openerp/openerp-8.0.20140125.ebuild | 119 |
12 files changed, 483 insertions, 0 deletions
diff --git a/app-office/openerp/Manifest b/app-office/openerp/Manifest new file mode 100644 index 000000000000..a18b3e50246e --- /dev/null +++ b/app-office/openerp/Manifest @@ -0,0 +1,15 @@ +AUX openerp 490 SHA256 a6ff0786c122e36f66a0f7648d286d871a230590873e1de09308241db554c1fa SHA512 7dcf83cf71b0f1f1b315442ea08adfff5597c95fb1a088468c1d58630dc7e77c0a20a2ae20e751851bce97bafb8ff12340d137effdcba9be099aaef9cdd38af0 WHIRLPOOL 2d6d4b02c83aca587218190770bfb735b4460291ee620ecd065b1d3e562eca77b0df87f11367a88d67a5108c8edf9fc5b5771f337afbbb13e55702e46c05be7e +AUX openerp-2 547 SHA256 b080ff6ea2a15f3dae290f0bc0fc17f62bc226bd847bc00aeb5b8339693503e8 SHA512 2ad5cc1755ca1adce5b1ae5e6bd0a77d3699e04728fe8fe00d0421102d95883b6795c1ca7ca2dc677301d027b2f42768c3a37ec8c18bdf1660ec1562647b73da WHIRLPOOL e1390eeb43e8d785ad79c282908f7f6c56a7ac3142df8390be310d465f0b8b4a6916ddd873bfee12f7a556bd18cc874d421796067ec1389bc4556ca0800284f5 +AUX openerp-6.1-setup.py.patch 1009 SHA256 a4e47a30186ee12136a0506d9b087787def94ffc98eda257f8549838673319fe SHA512 9affa8e3a93257792f44607e0bdf4b81ad517e50d1abd2d9848fa27642c5ef21b3a737d4d05b530694154404939f61dea935b91b002fed92e33059de7e221864 WHIRLPOOL 8364bf04ea6fb957b7493adcf6fb6aeaba5462d1778059f225f7bc0b5896667ef701407eea9b07a29d756d9d44c6b5ecac69141848217e851e791e835e0c60b5 +AUX openerp-confd 92 SHA256 bf970b49b905c7dc85399040c6e8a355de4a8ba50b03487a0de6575cd1dbd5a6 SHA512 8e1e47263247a340add6e97f45c11e2e629da564dfe600b31ba75f922f9a9311e3799f8896ac9eae53361cbe7f5e763bcff46ea52bc1884444457696f989e925 WHIRLPOOL f144f7d9307ab0197428a2e9a49895cdb904fb844aeb56cc4100c49544b78bcb6e5ca718f5c313b21d589a26885d6aa071f2675103d13ad729c5adbec0cde1bb +AUX openerp-confd-2 88 SHA256 6a9f1b6849ca8d3e47023fd02ec0dab295542d9c430914b2f876bc3a4c1a3d79 SHA512 789db9fbfcc90e4302f98c8fb81438767bdd17dc3351d2d706cabeea7b1f92bbd9efce2deb570295798a2358fa4bafd8cdf9e1ab311e0673c943b36aabe50d15 WHIRLPOOL 183347d60ac5324b295aeefde8ac60187b8fc216238fbbc02c719eae032c843ca88a3ef32fb113b3ea26215b3bd81c854d51a6da2e7e3751e7e8a5568afbea14 +AUX openerp.cfg 1115 SHA256 8ae3d8c38d7f991128c8b040c583bebe1b797a9c264c8bbd24f52107d488f9fc SHA512 6ca4638ee2bc00d2572366416aa8107e7045b10c7f89b383efe1b782e7c6d9190f5423633884dce647944bd297431eeeb194b433a21955c4542b75ab7d820a66 WHIRLPOOL 3a57f655c2252b7bf7c2aff9d5ac91a5310f9a34e3f823a883ab2ec2f4cd4e4bef0473fd8676cb4d2d82b3dd52e9b2d82acaac63bf7f084fe67fa9f0d9b8faf3 +AUX openerp.cfg.2 1145 SHA256 06af3effd55c7029bc38ffb7f8b92688691d2794fed6f8ccf1f6c807dc973554 SHA512 22194cc2b11380e8ff6f4ed691227d6580da560edaea9b368519261fb7b7d0e9547b0e0b3fe1b0b2b0410ee974b807039ecf559370583a32762373497560e245 WHIRLPOOL fdd27dd0bb02bc40d1179bb529e6f60b6f29f93d35bfaee5f2b05f26e985b2135147f9c5408142e1e8e00f00012a7f237347038e38602280c2d7523254900066 +AUX openerp.logrotate 197 SHA256 c015978e8239c470f9614df0661565d7eaf288305afeb7826363f1da01afd8db SHA512 7e6b1475985287bff9cd4a61f747f1dd9b5efdcecb1520dcf8efaf72b9200ce632760a458a6276e317e9d69907560ac187dfd0ecb24c7ff655edb0627967d2bd WHIRLPOOL fab493daecfd58556d87762d472c3b403ed2e7e85e01ca6d275c709feedc56737295b4f09e75a4d5e0549f72f5e6d07eaf4daab76c4e3066b2f6fbf7785d0c99 +DIST openerp-7.0-20140125-002455.tar.gz 64214375 SHA256 2bf832dda8f8e844476bb76cd60be84da1cc219e97be9da15b0a95b1e537bc4e SHA512 a923fe3240cf44f6384f18bd37853d15fe132aab97494e713f095253cd4b72d32a89e33ba3623a523b81b9863da6d5bca24c4020b20829975e4185d6e5093b3e WHIRLPOOL 5a4fcb37a6ea800e63294fe6b9dcbb3f82e91d1f0adfe412935b699b8e0c2901914dcfc5c0c62e2b289e057ecb4f30c5a4c06887c2d8e893ce1c1b03e6f5ce62 +DIST openerp-8.0dev-20140125-000101.tar.gz 82648176 SHA256 647c4a5ec28340f7c5a32dd50173b98bf62dd18ba00cc1929538a8803c704da0 SHA512 560f0cd9aadfb010dfba1a114ca17ed8dc7b63fffdd93325811b87530e97a8e629c46442e777bd0c53fb38b1a985e769e3fb5f5edf66b9b45f21be3e8973aedd WHIRLPOOL 1fb6e185250c08e948b11f2ca6581723055eefd0edb6a7999029b950b064c7aebf23a83bc014240c2d2d78284fcf8292761b6cc7733f270f14bfd4a98673a222 +EBUILD openerp-7.0.20140125.ebuild 3727 SHA256 d51cd4830e6ff48e19c9f521d3fcfaf2367a393c4028a581ddbab648e742131e SHA512 c6726e115f0a073226f8ed90cc97f92d40819e5d35a7ac11d7aa9e17584dd520d2999d4e7923ce788ca295f241189ed9b08b339786a29a553a90cf16bed283b9 WHIRLPOOL 0bf5239dd026040f852ad7ebc6e6125af66f36eb5bcd9aeb53e8e6d5c056cf6b446750b12986d9566cb394a0a2a514c1212f380f88a9cf1797ccb146ba30cc8c +EBUILD openerp-8.0.20140125.ebuild 3721 SHA256 024a9736a2a51f7ed1a654aaac3b800355c33e697f4a21044d7b24114b0d7421 SHA512 fce9fa5f87ab3155d8b7cc0fbdbc4020d889c1c7ce007e4e0e632027f50ab21d2458dfc706c65e53fda3beb45543cb438e4705efdae5e9cdf319196707255c2b WHIRLPOOL 1273a77b7be43a7f1bc8a19a08e3453a7b7e14c29116fcf3d8e5c31305712d6fc9e53b3e4e0bd0840a7d2c016324cbd80c158ddb731b09f296a984f9431c0498 +MISC ChangeLog 3408 SHA256 0866ea7d5245c50a925f4b951464ae2993988483330790e707fb8e4f06493b55 SHA512 3d99c9392f57a92d5195c6320f22f152a52b1de2afdef19889e31663ee3c6745e2353875326994a258d06cc430d8471fb5c5109e2435f1b45aca11d9bfce8ed8 WHIRLPOOL 45ae3e5b0fa26baf28bec1d40bd2f608a9f574da2e5284cb4fe0eb42d461ea79820d1265a6b0fcdbf3ab79a044e1cad279e0462f24dc0ecb743d1bd1dd81c814 +MISC ChangeLog-2015 3315 SHA256 f8c1ae87e31a3c0f46cb3516c92fe3f1e56a3e2186cb0b5bf81d4b54e9f523b3 SHA512 683b0de8e9b7a99157311fac8b95da282ea892b55a8dba1669a1fbe78041243356836c68cf521f68bdc838a7d127c06f30ca76bbef1e9c328b140134c56b2dae WHIRLPOOL 7d19f753969ad4795a2550a578ea4f3799ac68fdce971dc0871d49238a1a49f29d2f3fcdd3bad4bc66c974e14a372f3483ce1e1cfb513a0ecf74d31853e1c360 +MISC metadata.xml 283 SHA256 1d087260f5345e45a240f63f3fab4e060c43ab413d1254cadb9d0c084f0d806b SHA512 17639738efdc4bf47d4c45edd2264db8b149b65fa8b0fa40888f56642e9fed3e91a84a7de7f3cfcb9fcef4fcb221f6eb4ce233abc4f865d9ccfa38ba436f7745 WHIRLPOOL 1a7e4bb394bb73142410fbf50e6bcf891fb03b65e34bc77ae0279f301195d42e39c94be7f1ca738048f8441a60f66199b1d6d4d0b956eaa01953bc2d474dc98e diff --git a/app-office/openerp/files/openerp b/app-office/openerp/files/openerp new file mode 100644 index 000000000000..3a8cd40fc713 --- /dev/null +++ b/app-office/openerp/files/openerp @@ -0,0 +1,22 @@ +#!/sbin/openrc-run + +# Additional options that are passed to the daemon. +DAEMON_OPTS="-c ${CONFIGFILE}" + +depend() { + after postgresql +} + +start() { + ebegin "Starting openerp server" + start-stop-daemon --start --quiet --pidfile "${PIDFILE}" --exec /usr/bin/openerp-server \ + --make-pidfile --user "${USER}" --background -- ${DAEMON_OPTS} + eend $? +} + +stop() { + ebegin "Stopping openerp server" + start-stop-daemon --stop --quiet --pidfile "${PIDFILE}" --signal 9 + rm -f "${PIDFILE}" + eend $? +} diff --git a/app-office/openerp/files/openerp-2 b/app-office/openerp/files/openerp-2 new file mode 100644 index 000000000000..d1fedb1470d3 --- /dev/null +++ b/app-office/openerp/files/openerp-2 @@ -0,0 +1,23 @@ +#!/sbin/openrc-run + +# Additional options that are passed to the daemon. +DAEMON_OPTS="-c ${CONFIGFILE}" + +depend() { + after postgresql +} + +start() { + checkpath -q -d -m 0755 -o openerp:openerp /run/openerp + ebegin "Starting openerp server" + start-stop-daemon --start --quiet --pidfile "${PIDFILE}" --exec /usr/bin/openerp-server \ + --make-pidfile --user "${USER}" --background -- ${DAEMON_OPTS} + eend $? +} + +stop() { + ebegin "Stopping openerp server" + start-stop-daemon --stop --quiet --pidfile "${PIDFILE}" --signal 9 + rm -f "${PIDFILE}" + eend $? +} diff --git a/app-office/openerp/files/openerp-6.1-setup.py.patch b/app-office/openerp/files/openerp-6.1-setup.py.patch new file mode 100644 index 000000000000..904824875614 --- /dev/null +++ b/app-office/openerp/files/openerp-6.1-setup.py.patch @@ -0,0 +1,32 @@ +--- setup.py.old 2012-07-01 17:31:24.000000000 +0400 ++++ setup.py 2012-07-01 17:33:52.000000000 +0400 +@@ -22,6 +22,7 @@ + + import glob, os, re, setuptools, sys + from os.path import join, isfile ++from distutils.sysconfig import get_python_lib + + # List all data files + def data(): +@@ -32,7 +33,7 @@ def data(): + files.append(os.path.join(root, filename)) + d = {} + for v in files: +- k=os.path.dirname(v) ++ k=os.path.join(get_python_lib(prefix=''), os.path.dirname(v)) + if k in d: + d[k].append(v) + else: +@@ -41,9 +42,9 @@ def data(): + if os.name == 'nt': + r.append(("Microsoft.VC90.CRT", glob.glob('C:\Microsoft.VC90.CRT\*.*'))) + +- import babel +- r.append(("localedata", +- glob.glob(os.path.join(os.path.dirname(babel.__file__), "localedata" , '*')))) ++# import babel ++# r.append(("localedata", ++# glob.glob(os.path.join(os.path.dirname(babel.__file__), "localedata" , '*')))) + + return r + diff --git a/app-office/openerp/files/openerp-confd b/app-office/openerp/files/openerp-confd new file mode 100644 index 000000000000..438f0ee154d4 --- /dev/null +++ b/app-office/openerp/files/openerp-confd @@ -0,0 +1,3 @@ +USER="openerp" +CONFIGFILE="/etc/openerp/openerp.cfg" +PIDFILE="/var/run/openerp/openerp.pid" diff --git a/app-office/openerp/files/openerp-confd-2 b/app-office/openerp/files/openerp-confd-2 new file mode 100644 index 000000000000..5e84946046cd --- /dev/null +++ b/app-office/openerp/files/openerp-confd-2 @@ -0,0 +1,3 @@ +USER="openerp" +CONFIGFILE="/etc/openerp/openerp.cfg" +PIDFILE="/run/openerp/openerp.pid" diff --git a/app-office/openerp/files/openerp.cfg b/app-office/openerp/files/openerp.cfg new file mode 100644 index 000000000000..a760856a18a1 --- /dev/null +++ b/app-office/openerp/files/openerp.cfg @@ -0,0 +1,64 @@ +[options] + +# General options: +admin_passwd = admin + +pidfile = /var/run/openerp/openerp-server.pid +interface = +port = 8069 +netinterface = +netport = 8070 +netrpc = True +xmlrpc = True +init = +without_demo = False +demo = {} +update = +cache_timeout = 100000 +stop_after_init = False +debug_mode = False +assert_exit_level = warn +price_accuracy = 2 + +# SSL Configuration: +secure = False +secure_cert_file = server.cert +secure_pkey_file = server.pkey + +# Logging Configuration: +logfile = /var/log/openerp/openerp-server.log +syslog = False +log_level = debug + +# SMTP Configuration: +email_from = False +smtp = localhost +smtp_port = 25 +smtp_ssl = False +smtp_user = False +smtp_password = False + +# pg_path points at local pg instance - please change as needed +# Database related options: +db_user = openerp +db_password = change_this +pg_path = /run/postgresql/.s.PGSQL.5432 +db_name = False +db_host = False +db_port = False +db_maxconn = 64 +import_partial = + +# Internationalisation options: +language = +translate_out = +translate_in = +translate_modules = ['all'] + +# Security-related options: +list_db = True +server_actions_allow_code = False + + + + diff --git a/app-office/openerp/files/openerp.cfg.2 b/app-office/openerp/files/openerp.cfg.2 new file mode 100644 index 000000000000..e11184acb4f9 --- /dev/null +++ b/app-office/openerp/files/openerp.cfg.2 @@ -0,0 +1,65 @@ +[options] + +# General options: +admin_passwd = admin + +pidfile = /run/openerp/openerp-server.pid +interface = +port = 8069 +netinterface = +netport = 8070 +netrpc = True +xmlrpc = True +init = +without_demo = False +demo = {} +update = +cache_timeout = 100000 +stop_after_init = False +debug_mode = False +assert_exit_level = warn +price_accuracy = 2 + +# SSL Configuration: +secure = False +secure_cert_file = server.cert +secure_pkey_file = server.pkey + +# Logging Configuration: +logfile = /var/log/openerp/openerp-server.log +syslog = False +log_level = debug + +# SMTP Configuration: +email_from = False +smtp = localhost +smtp_port = 25 +smtp_ssl = False +smtp_user = False +smtp_password = False + +# pg_path points at local pg instance - please change as needed +# Database related options: +db_user = openerp +db_password = change_this +pg_path = /run/postgresql/.s.PGSQL.5432 +db_name = False +db_host = False +db_port = False +db_maxconn = 64 +import_partial = + +# Internationalisation options: +language = +translate_out = +translate_in = +translate_modules = ['all'] + +# Security-related options: +list_db = True +server_actions_allow_code = False + +addons_path = /usr/openerp/addons + + + diff --git a/app-office/openerp/files/openerp.logrotate b/app-office/openerp/files/openerp.logrotate new file mode 100644 index 000000000000..b58737773a16 --- /dev/null +++ b/app-office/openerp/files/openerp.logrotate @@ -0,0 +1,9 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +/var/log/openerp/*.log { + monthly + create 660 openerp openerp + missingok + copytruncate +} diff --git a/app-office/openerp/metadata.xml b/app-office/openerp/metadata.xml new file mode 100644 index 000000000000..82bc112c6d79 --- /dev/null +++ b/app-office/openerp/metadata.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>dlan@gentoo.org</email> + <name>Yixun Lan</name> + <description>Co Maintainer</description> + </maintainer> +</pkgmetadata> diff --git a/app-office/openerp/openerp-7.0.20140125.ebuild b/app-office/openerp/openerp-7.0.20140125.ebuild new file mode 100644 index 000000000000..97875513997c --- /dev/null +++ b/app-office/openerp/openerp-7.0.20140125.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=1 + +inherit eutils distutils-r1 user + +DESCRIPTION="Open Source ERP & CRM" +HOMEPAGE="http://www.openerp.com/" +MY_PV=${PV/7.0./7.0-} +FNAME="${PN}-${MY_PV}-002455" +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[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/psycopg:2[${PYTHON_USEDEP}] + dev-python/pychart[${PYTHON_USEDEP}] + dev-python/pyparsing[${PYTHON_USEDEP}] + dev-python/reportlab[${PYTHON_USEDEP}] + dev-python/simplejson[${PYTHON_USEDEP}] + dev-python/pydot[${PYTHON_USEDEP}] + dev-python/vobject[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/Babel[${PYTHON_USEDEP}] + dev-python/gdata[${PYTHON_USEDEP}] + ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] ) + dev-python/python-openid[${PYTHON_USEDEP}] + dev-python/werkzeug[${PYTHON_USEDEP}] + dev-python/xlwt[${PYTHON_USEDEP}] + dev-python/feedparser[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/pywebdav[${PYTHON_USEDEP}] + ssl? ( dev-python/pyopenssl[${PYTHON_USEDEP}] ) + dev-python/vatnumber[${PYTHON_USEDEP}] + dev-python/zsi[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/unittest2[${PYTHON_USEDEP}] + dev-python/jinja[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/pillow[jpeg,${PYTHON_USEDEP}] + ${PYTHON_DEPS} + " + +RDEPEND="${CDEPEND}" +DEPEND="${CDEPEND}" + +OPENERP_USER="openerp" +OPENERP_GROUP="openerp" + +S="${WORKDIR}/${FNAME}" + +python_install_all() { + distutils-r1_python_install_all + + newinitd "${FILESDIR}/${PN}-2" "${PN}" + newconfd "${FILESDIR}/openerp-confd-2" "${PN}" + keepdir /var/log/openerp + + insinto /etc/logrotate.d + newins "${FILESDIR}"/openerp.logrotate openerp + dodir /etc/openerp + insinto /etc/openerp + newins "${FILESDIR}"/openerp.cfg.2 openerp.cfg + + # #453424 Fix error on /usr/openerp/import_xml.rng + dosym /usr/${PN}/import_xml.rng $(python_get_sitedir)/${PN}/import_xml.rng + + # #453424 Fix error on /usr/openerp/addons/base/res/res_company_logo.png + dosym /usr/${PN}/addons/base/res/res_company_logo.png $(python_get_sitedir)/${PN}/addons/base/res/res_company_logo.png +} + +pkg_preinst() { + enewgroup ${OPENERP_GROUP} + enewuser ${OPENERP_USER} -1 -1 -1 ${OPENERP_GROUP} + + fowners -R ${OPENERP_USER}:${OPENERP_GROUP} /etc/openerp + fowners ${OPENERP_USER}:${OPENERP_GROUP} /var/log/openerp + fowners -R ${OPENERP_USER}:${OPENERP_GROUP} "$(python_get_sitedir)/${PN}/addons/" + + fperms 0640 /etc/openerp/openerp.cfg + + use postgres || sed -i '6,8d' "${D}/etc/init.d/openerp" || die "sed failed" +} + +pkg_postinst() { + chown -R ${OPENERP_USER}:${OPENERP_GROUP} /etc/openerp + 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 +} diff --git a/app-office/openerp/openerp-8.0.20140125.ebuild b/app-office/openerp/openerp-8.0.20140125.ebuild new file mode 100644 index 000000000000..76beb424a29a --- /dev/null +++ b/app-office/openerp/openerp-8.0.20140125.ebuild @@ -0,0 +1,119 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python2_7 ) +DISTUTILS_SINGLE_IMPL=1 + +inherit eutils distutils-r1 user + +DESCRIPTION="Open Source ERP & CRM" +HOMEPAGE="http://www.openerp.com/" +MY_PV=${PV/8.0./8.0dev-} +FNAME="${PN}-${MY_PV}-000101" +SRC_URI="http://nightly.openerp.com/trunk/nightly/src/${FNAME}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="" +IUSE="+postgres ldap ssl" + +CDEPEND="!app-office/openerp-web + postgres? ( dev-db/postgresql[server] ) + dev-python/psutil[${PYTHON_USEDEP}] + dev-python/docutils[${PYTHON_USEDEP}] + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/psycopg:2[${PYTHON_USEDEP}] + dev-python/pychart[${PYTHON_USEDEP}] + dev-python/pyparsing[${PYTHON_USEDEP}] + dev-python/reportlab[${PYTHON_USEDEP}] + dev-python/simplejson[${PYTHON_USEDEP}] + dev-python/pydot[${PYTHON_USEDEP}] + dev-python/vobject[${PYTHON_USEDEP}] + dev-python/mako[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/pyyaml[${PYTHON_USEDEP}] + dev-python/Babel[${PYTHON_USEDEP}] + dev-python/gdata[${PYTHON_USEDEP}] + ldap? ( dev-python/python-ldap[${PYTHON_USEDEP}] ) + dev-python/python-openid[${PYTHON_USEDEP}] + dev-python/werkzeug[${PYTHON_USEDEP}] + dev-python/xlwt[${PYTHON_USEDEP}] + dev-python/feedparser[${PYTHON_USEDEP}] + dev-python/python-dateutil[${PYTHON_USEDEP}] + dev-python/pywebdav[${PYTHON_USEDEP}] + ssl? ( dev-python/pyopenssl[${PYTHON_USEDEP}] ) + dev-python/vatnumber[${PYTHON_USEDEP}] + dev-python/zsi[${PYTHON_USEDEP}] + dev-python/mock[${PYTHON_USEDEP}] + dev-python/unittest2[${PYTHON_USEDEP}] + dev-python/jinja[${PYTHON_USEDEP}] + dev-python/matplotlib[${PYTHON_USEDEP}] + dev-python/pillow[jpeg,${PYTHON_USEDEP}] + ${PYTHON_DEPS} + " + +RDEPEND="${CDEPEND}" +DEPEND="${CDEPEND}" + +OPENERP_USER="openerp" +OPENERP_GROUP="openerp" + +S="${WORKDIR}/${FNAME}" + +python_install_all() { + distutils-r1_python_install_all + + newinitd "${FILESDIR}/${PN}-2" "${PN}" + newconfd "${FILESDIR}/openerp-confd-2" "${PN}" + keepdir /var/log/openerp + + insinto /etc/logrotate.d + newins "${FILESDIR}"/openerp.logrotate openerp + dodir /etc/openerp + insinto /etc/openerp + newins "${FILESDIR}"/openerp.cfg.2 openerp.cfg + + # #453424 Fix error on /usr/openerp/import_xml.rng + dosym /usr/${PN}/import_xml.rng $(python_get_sitedir)/${PN}/import_xml.rng + + # #453424 Fix error on /usr/openerp/addons/base/res/res_company_logo.png + dosym /usr/${PN}/addons/base/res/res_company_logo.png $(python_get_sitedir)/${PN}/addons/base/res/res_company_logo.png +} + +pkg_preinst() { + enewgroup ${OPENERP_GROUP} + enewuser ${OPENERP_USER} -1 -1 -1 ${OPENERP_GROUP} + + fowners -R ${OPENERP_USER}:${OPENERP_GROUP} /etc/openerp + fowners ${OPENERP_USER}:${OPENERP_GROUP} /var/log/openerp + fowners -R ${OPENERP_USER}:${OPENERP_GROUP} "$(python_get_sitedir)/${PN}/addons/" + + fperms 0640 /etc/openerp/openerp.cfg + + use postgres || sed -i '6,8d' "${D}/etc/init.d/openerp" || die "sed failed" +} + +pkg_postinst() { + chown -R ${OPENERP_USER}:${OPENERP_GROUP} /etc/openerp + 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 +} |