diff --git a/pkgs/development/python-modules/energyflow/default.nix b/pkgs/development/python-modules/energyflow/default.nix new file mode 100644 index 000000000000..44342d732eca --- /dev/null +++ b/pkgs/development/python-modules/energyflow/default.nix @@ -0,0 +1,54 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, h5py +, numpy +, six +, wasserstein +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "EnergyFlow"; + version = "1.3.2"; + + src = fetchFromGitHub { + owner = "pkomiske"; + repo = pname; + rev = "v${version}"; + hash = "sha256-fjT8c0ZTjdufP334upPzRVdTJDIBs84I7PkFu4CMcQw="; + }; + + postPatch = '' + substituteInPlace setup.cfg \ + --replace "setup_requires=" "" \ + --replace "pytest-runner" "" + ''; + + propagatedBuildInputs = [ + h5py + numpy + six + wasserstein + ]; + + checkInputs = [ + pytestCheckHook + ]; + pytestFlagsArray = [ + "energyflow/tests" + ]; + disabledTestPaths = [ + "energyflow/tests/test_archs.py" # requires tensorflow + "energyflow/tests/test_emd.py" # requires "ot" + ]; + + pythonImportsCheck = [ "energyflow" ]; + + meta = with lib; { + description = "Python package for the EnergyFlow suite of tools"; + homepage = "https://energyflow.network/"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ veprbl ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 36826bff573f..b25cd878852e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2948,6 +2948,8 @@ in { enamlx = callPackage ../development/python-modules/enamlx { }; + energyflow = callPackage ../development/python-modules/energyflow { }; + enhancements = callPackage ../development/python-modules/enhancements { }; enlighten = callPackage ../development/python-modules/enlighten { };