]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - modules/private/websites/nicecoop/odoo/default.nix
Nicecoop installation
[perso/Immae/Config/Nix.git] / modules / private / websites / nicecoop / odoo / default.nix
1 { poetry2nix, runCommand, fetchFromGitHub, openldap, cyrus_sasl, pkg-config, python36 }:
2 let
3 version = "13.0";
4 commit = "8353c069529030bddf4bff071c13906565ddc7f1";
5 poetryApp = poetry2nix.mkPoetryApplication rec {
6 src = fetchFromGitHub {
7 owner = "odoo";
8 repo = "odoo";
9 rev = commit;
10 sha256 = "0lyq7bylb4xnry7vn1k39k0w9i064hpm1d3fq2h9lsyakhxdnb1p";
11 };
12 overrides = poetry2nix.overrides.withDefaults (self: super: {
13 pyldap = super.pyldap.overridePythonAttrs (old: {
14 buildInputs = old.buildInputs ++ [ openldap cyrus_sasl ];
15 nativeBuildInputs = old.nativeBuildInputs ++ [ pkg-config ];
16 preConfigure = old.preConfigure or "" + ''
17 export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${cyrus_sasl.dev}/include/sasl"
18 '';
19 });
20 });
21 pyproject = ./pyproject.toml;
22 poetrylock = ./poetry.lock;
23 python = python36;
24 nativeBuildInputs = [ openldap ];
25 preBuild = ''
26 mv addons/* odoo/addons
27 '';
28 };
29 in
30 runCommand "python3.6-odoo-${version}" {} ''
31 mkdir -p $out
32 cp -a ${poetryApp}/* $out/
33 chmod -R u+w $out
34 find $out -type f -exec sed -i -e "s@${poetryApp}@$out@g" {} \;
35 cd $out/lib/python3.6/site-packages/odoo
36 patch -p2 < ${./odoo.patch}
37 ''