odoo-plus / odootools

Odoo Tools
GNU General Public License v3.0
21 stars 7 forks source link

Add more support for other distribution that Ubuntu #2

Open llacroix opened 2 years ago

llacroix commented 2 years ago

Currently, the phase in which packages are installed based on apt-packages.txt is very dependent on the platform being ubuntu. It's also impossible to install odoo without some particular requirements that aren't python libraries.

As a result, the deb packages required to install odoo are hard coded in scripts that generate odoo docker image. In practice we can get the list of packages here https://github.com/odoo/odoo/tree/15.0/setup and insert it inside this libary to automate the process based on the deteced os. But those are more than all the required dependencies to run odoo.

Sometimes, some package are only required temporarily to install python packages. In that case we need to remove them to prevent the docker image size to become bigger than necessary.

melutovich commented 1 year ago

@llacroix How much effort would be needed to be using a debian base image instead of ubuntu?

llacroix commented 1 year ago

@melutovich Little to no effort, ubuntu and debian use the same naming convention for packages. The main issue with debian is that the deb packages are usually older. I can't exactly recall which were problematic but it's just a matter of picking a proper version debian.

Here in my odoo-docker project https://github.com/llacroix/odoo-docker/blob/master/versions.toml

You'd have to create a new entry with those variables overriden:

base_image = "ubuntu:bionic"
os_release = "bionic"

Just change it for this or whatever you need.

[odoo."16.0-nightly"]
version = "16.0"
base_image = "debian:sid"
os_release = "sid"
python_version = "python3.8"

And I believe this should work fine.

Then call:

 python deploy.py -v 16.0-nightly ...