From 7eec6b3643999cb26216e56c001eb8aae65031ea Mon Sep 17 00:00:00 2001
From: Christophe Monniez <moc@odoo.com>
Date: Mon, 28 Jan 2019 14:54:09 +0000
Subject: [PATCH] [FIX] packaging: allow install on fedora29

Fedora 29 switched to python 3.7. It seems that there is no official
way to build a RPM package that could works with 3.6 and 3.7.
Building two different packages for each version could open the pandora
box of packaging.

With this commit an ugly hack is used: if python3.7 is found, the odoo
directory is symlinked into its site-packages dir.

fixes #30579

closes odoo/odoo#30618
---
 setup.cfg                   | 2 +-
 setup/redhat/postinstall.sh | 6 ++++++
 2 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/setup.cfg b/setup.cfg
index 3994ef225f23..4cce04e18da1 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -9,7 +9,7 @@ requires =
   nodejs-less
   pychart
   pyparsing
-  python(abi) = 3.6
+  python(abi) >= 3.6
   python3-babel
   python3-decorator
   python3-docutils
diff --git a/setup/redhat/postinstall.sh b/setup/redhat/postinstall.sh
index 54b1b5cd56f3..e6ee9106f7d7 100644
--- a/setup/redhat/postinstall.sh
+++ b/setup/redhat/postinstall.sh
@@ -10,6 +10,12 @@ ODOO_LOG_DIR=/var/log/odoo
 ODOO_LOG_FILE=$ODOO_LOG_DIR/odoo-server.log
 ODOO_USER="odoo"
 
+if [ -d /usr/lib/python3.7 ]; then
+    SITE_PACK_DIR37=/usr/lib/python3.7/site-packages
+    [[ ! -d ${SITE_PACK_DIR37} ]] && mkdir -p ${SITE_PACK_DIR37}
+    ln -s /usr/lib/python3.6/site-packages/odoo ${SITE_PACK_DIR37}/odoo
+fi
+
 if ! getent passwd | grep -q "^odoo:"; then
     groupadd $ODOO_GROUP
     adduser --system --no-create-home $ODOO_USER -g $ODOO_GROUP
-- 
GitLab