diff --git a/pkgs/development/python-modules/einx/default.nix b/pkgs/development/python-modules/einx/default.nix new file mode 100644 index 000000000000..0f181b5051aa --- /dev/null +++ b/pkgs/development/python-modules/einx/default.nix @@ -0,0 +1,46 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + wheel, + numpy, + sympy, + frozendict, +}: + +buildPythonPackage rec { + pname = "einx"; + version = "0.3.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "fferflo"; + repo = "einx"; + rev = "v${version}"; + hash = "sha256-lbcf47h1tW1fj94NLG4iJPEs6ziGPkcX1Q+wn59PvS8="; + }; + + build-system = [ + setuptools + wheel + ]; + + dependencies = [ + numpy + sympy + frozendict + ]; + + pythonImportsCheck = [ + "einx" + ]; + + meta = { + description = "Universal Tensor Operations in Einstein-Inspired Notation for Python"; + homepage = "https://github.com/fferflo/einx"; + changelog = "https://github.com/fferflo/einx/blob/${src.rev}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ happysalada ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e89dababc806..f76e09765315 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3967,6 +3967,8 @@ self: super: with self; { einops = callPackage ../development/python-modules/einops { }; + einx = callPackage ../development/python-modules/einx { }; + eiswarnung = callPackage ../development/python-modules/eiswarnung { }; elgato = callPackage ../development/python-modules/elgato { };