diff options
Diffstat (limited to 'pkgs/applications/finance/odoo/odoo16.nix')
-rw-r--r-- | pkgs/applications/finance/odoo/odoo16.nix | 116 |
1 files changed, 116 insertions, 0 deletions
diff --git a/pkgs/applications/finance/odoo/odoo16.nix b/pkgs/applications/finance/odoo/odoo16.nix new file mode 100644 index 0000000000000..6e68228d73479 --- /dev/null +++ b/pkgs/applications/finance/odoo/odoo16.nix @@ -0,0 +1,116 @@ +{ stdenv +, lib +, fetchzip +, python310 +, rtlcss +, wkhtmltopdf +, nixosTests +}: + +let + python = python310.override { + packageOverrides = self: super: { + flask = super.flask.overridePythonAttrs (old: rec { + version = "2.3.3"; + src = old.src.override { + inherit version; + hash = "sha256-CcNHqSqn/0qOfzIGeV8w2CZlS684uHPQdEzVccpgnvw="; + }; + }); + werkzeug = super.werkzeug.overridePythonAttrs (old: rec { + version = "2.3.7"; + src = old.src.override { + inherit version; + hash = "sha256-K4wORHtLnbzIXdl7butNy69si2w74L1lTiVVPgohV9g="; + }; + disabledTests = old.disabledTests ++ [ + "test_response_body" + ]; + }); + }; + }; + + odoo_version = "16.0"; + odoo_release = "20231024"; +in python.pkgs.buildPythonApplication rec { + pname = "odoo"; + version = "${odoo_version}.${odoo_release}"; + + format = "setuptools"; + + # latest release is at https://github.com/odoo/docker/blob/master/16.0/Dockerfile + src = fetchzip { + url = "https://nightly.odoo.com/${odoo_version}/nightly/src/odoo_${version}.zip"; + name = "${pname}-${version}"; + hash = "sha256-Ux8RfA7kWLKissBBY5wrfL+aKKw++5BxjP3Vw0JAOsk="; # odoo + }; + + # needs some investigation + doCheck = false; + + makeWrapperArgs = [ + "--prefix" "PATH" ":" "${lib.makeBinPath [ wkhtmltopdf rtlcss ]}" + ]; + + propagatedBuildInputs = with python.pkgs; [ + babel + chardet + cryptography + decorator + docutils + ebaysdk + freezegun + gevent + greenlet + idna + jinja2 + libsass + lxml + markupsafe + num2words + ofxparse + passlib + pillow + polib + psutil + psycopg2 + pydot + pyopenssl + pypdf2 + pyserial + python-dateutil + python-ldap + python-stdnum + pytz + pyusb + qrcode + reportlab + requests + urllib3 + vobject + werkzeug + xlrd + xlsxwriter + xlwt + zeep + + setuptools + mock + ]; + + # takes 5+ minutes and there are not files to strip + dontStrip = true; + + passthru = { + tests = { + inherit (nixosTests) odoo; + }; + }; + + meta = with lib; { + description = "Open Source ERP and CRM"; + homepage = "https://www.odoo.com/"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ mkg20001 ]; + }; +} |