diff --git a/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix new file mode 100644 index 000000000000..74f24e10f55f --- /dev/null +++ b/pkgs/development/libraries/science/chemistry/simple-dftd3/python.nix @@ -0,0 +1,42 @@ +{ buildPythonPackage +, pkg-config +, meson +, simple-dftd3 +, cffi +, numpy +, toml +, qcengine +, pyscf +, ase +, pytestCheckHook +}: + +buildPythonPackage { + inherit (simple-dftd3) pname version src meta; + + # pytest is also required for installation, not only testing + nativeBuildInputs = [ pytestCheckHook ]; + + buildInputs = [ simple-dftd3 ]; + + propagatedBuildInputs = [ + cffi + numpy + toml + ]; + + checkInputs = [ + ase + qcengine + pyscf + ]; + + preConfigure = '' + cd python + ''; + + # The compiled CFFI is not placed correctly before pytest invocation + preCheck = '' + find . -name "_libdftd3*" -exec cp {} ./dftd3/. \; + ''; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 661cf99e93f0..b561e7b72675 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -13278,6 +13278,10 @@ self: super: with self; { simplesat = callPackage ../development/python-modules/simplesat { }; + simple-dftd3 = callPackage ../development/libraries/science/chemistry/simple-dftd3/python.nix { + inherit (pkgs) simple-dftd3; + }; + simple-di = callPackage ../development/python-modules/simple-di { }; simple-rest-client = callPackage ../development/python-modules/simple-rest-client { };