Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
59 lines
1.1 KiB
Nix
59 lines
1.1 KiB
Nix
{
|
|
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/.
|
|
'';
|
|
}
|