Files

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

59 lines
1.1 KiB
Nix
Raw Permalink Normal View History

2025-10-09 14:15:47 +02:00
{
buildPythonPackage,
python,
simple-dftd3,
cffi,
numpy,
toml,
qcengine,
pyscf,
ase,
pytestCheckHook,
}:
buildPythonPackage {
format = "setuptools";
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/. \;
'';
pythonImportsCheck = [ "dftd3" ];
doCheck = true;
# Parameters need to be present in the python site packages directory, but they
# are originally only present in the fortran package. This is a consequence of
# building the python bindings separately from the fortran library.
postInstall = ''
ln -s ${simple-dftd3}/share/s-dftd3/parameters.toml $out/${python.sitePackages}/dftd3/.
'';
}