diff --git a/pkgs/development/python-modules/python-fluent/fluent-runtime.nix b/pkgs/development/python-modules/python-fluent/fluent-runtime.nix new file mode 100644 index 000000000000..1a011956ecce --- /dev/null +++ b/pkgs/development/python-modules/python-fluent/fluent-runtime.nix @@ -0,0 +1,61 @@ +{ + buildPythonPackage, + fetchFromGitHub, + lib, + pytestCheckHook, + setuptools, + + # dependencies + attrs, + babel, + fluent-syntax, + pytz, + typing-extensions, +}: + +let + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "projectfluent"; + repo = "python-fluent"; + rev = "fluent.runtime@${version}"; + hash = "sha256-Crg6ybweOZ4B3WfLMOcD7+TxGEZPTHJUxr8ItLB4G+Y="; + }; +in +buildPythonPackage { + pname = "fluent-runtime"; + inherit version; + pyproject = true; + + inherit src; + sourceRoot = "${src.name}/fluent.runtime"; + + build-system = [ setuptools ]; + + dependencies = [ + attrs + babel + fluent-syntax + pytz + typing-extensions + ]; + + nativeCheckInputs = [ pytestCheckHook ]; + + disabledTests = [ + # https://github.com/projectfluent/python-fluent/pull/203 + "test_timeZone" + ]; + + pythonImportsCheck = [ "fluent.runtime" ]; + + meta = { + changelog = "https://github.com/projectfluent/python-fluent/blob/${src.rev}/fluent.runtime/CHANGELOG.rst"; + description = "Localization library for expressive translations"; + downloadPage = "https://github.com/projectfluent/python-fluent/releases/tag/${src.rev}"; + homepage = "https://projectfluent.org/python-fluent/fluent.runtime/${version}"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ getpsyched ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e617ab3d21cd..c9061f0a9097 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4510,6 +4510,8 @@ self: super: with self; { fluent-logger = callPackage ../development/python-modules/fluent-logger { }; + fluent-runtime = callPackage ../development/python-modules/python-fluent/fluent-runtime.nix { }; + fluent-syntax = callPackage ../development/python-modules/python-fluent/fluent-syntax.nix { }; flufl-bounce = callPackage ../development/python-modules/flufl/bounce.nix { };