This PR implements a basic Odoo single-machine service stack.
We implement a NixOS module to configure the whole service stack to run Odoo on a single machine:
Odoo multi-processing server (including LiveChat Gevent process)
Odoo addons from Martel prod
Systemd service to run Odoo (including odoo sys user)
Non-network Postgres DB backend (Odoo connects on Unix sockets)
Nginx reverse proxy to expose Odoo to the internet
Notice this module comes with a bootstrap option to migrate an Odoo DB and file store from another Odoo server. Also, this module makes psql and the Odoo CLI available system-wide to help with maintenance tasks.
Finally we package Odoo 14 for both ARM and Intel architectures so we can run our service stack on both. The packaging is quite involved and even entails patching the Odoo source to fix Odoo bugs---see gevent commits. Not to mention the packaging of the right (very old!) versions of external programs like wkhtmltopdf that Odoo 14 implicitly depends on.
This PR implements a basic Odoo single-machine service stack.
We implement a NixOS module to configure the whole service stack to run Odoo on a single machine:
odoo
sys user)Notice this module comes with a bootstrap option to migrate an Odoo DB and file store from another Odoo server. Also, this module makes
psql
and the Odoo CLI available system-wide to help with maintenance tasks.Finally we package Odoo 14 for both ARM and Intel architectures so we can run our service stack on both. The packaging is quite involved and even entails patching the Odoo source to fix Odoo bugs---see gevent commits. Not to mention the packaging of the right (very old!) versions of external programs like wkhtmltopdf that Odoo 14 implicitly depends on.