]> git.immae.eu Git - perso/Immae/Config/Nix.git/blame - modules/private/websites/nicecoop/odoo/default.nix
Finish removal of php-application module
[perso/Immae/Config/Nix.git] / modules / private / websites / nicecoop / odoo / default.nix
CommitLineData
ceb738de
IB
1{ pkgs ? import <nixpkgs> {} }: with pkgs;
2#{ poetry2nix, runCommand, fetchFromGitHub, openldap, cyrus_sasl, pkg-config, python37 }:
965b61c2 3let
ceb738de
IB
4 version = "14.0";
5 commit = "122ba218265cbb2a157765b56bc961cad4fe1cc3";
6 poetryPackages = poetry2nix.mkPoetryPackages rec {
7 pyproject = ./pyproject.toml;
8 poetrylock = ./poetry.lock;
9 python = python37;
10 overrides = [];
11 };
12 openupgrade = fetchFromGitHub {
13 owner = "OCA";
14 repo = "OpenUpgrade";
15 rev = "df0168d3c9321e24d4ecccd2da18b92ad980a0ae";
16 sha256 = "08mjf9sic8ns6351x13n4jbsa9mkqbq1gbk98r5y0p087bmjs8cw";
17 };
965b61c2
IB
18 poetryApp = poetry2nix.mkPoetryApplication rec {
19 src = fetchFromGitHub {
20 owner = "odoo";
21 repo = "odoo";
22 rev = commit;
ceb738de 23 sha256 = "1ipsv12s0b5290g9v2268f7m6x8m85inf6cnqs7gwbj1pxj6gilg";
965b61c2
IB
24 };
25 overrides = poetry2nix.overrides.withDefaults (self: super: {
ceb738de 26 cffi = poetryPackages.python.pkgs.cffi;
965b61c2
IB
27 pyldap = super.pyldap.overridePythonAttrs (old: {
28 buildInputs = old.buildInputs ++ [ openldap cyrus_sasl ];
29 nativeBuildInputs = old.nativeBuildInputs ++ [ pkg-config ];
30 preConfigure = old.preConfigure or "" + ''
31 export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${cyrus_sasl.dev}/include/sasl"
32 '';
33 });
34 });
35 pyproject = ./pyproject.toml;
36 poetrylock = ./poetry.lock;
ceb738de 37 python = python37;
965b61c2
IB
38 nativeBuildInputs = [ openldap ];
39 preBuild = ''
40 mv addons/* odoo/addons
ceb738de
IB
41 cp -a ${openupgrade}/openupgrade_framework odoo/addons
42 cp -a ${openupgrade}/openupgrade_scripts odoo/addons
965b61c2
IB
43 '';
44 };
45in
ceb738de 46 runCommand "python3.7-odoo-${version}" {} ''
965b61c2
IB
47 mkdir -p $out
48 cp -a ${poetryApp}/* $out/
49 chmod -R u+w $out
50 find $out -type f -exec sed -i -e "s@${poetryApp}@$out@g" {} \;
ceb738de 51 cd $out/lib/python3.7/site-packages/odoo
965b61c2
IB
52 patch -p2 < ${./odoo.patch}
53 ''