diff --git a/pkgs/development/python-modules/brevo-python/default.nix b/pkgs/development/python-modules/brevo-python/default.nix new file mode 100644 index 000000000000..965fcdfee708 --- /dev/null +++ b/pkgs/development/python-modules/brevo-python/default.nix @@ -0,0 +1,46 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + certifi, + python-dateutil, + six, + urllib3, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "brevo-python"; + version = "1.1.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "getbrevo"; + repo = "brevo-python"; + tag = "v${version}"; + hash = "sha256-XOUFyUrqVlI7Qr4uzeXr6GJuQ+QTVhsueT1xxVQMm14="; + }; + + build-system = [ setuptools ]; + + dependencies = [ + certifi + python-dateutil + six + urllib3 + ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pythonImportsCheck = [ "brevo_python" ]; + + meta = { + description = "Fully-featured Python API client to interact with Brevo"; + homepage = "https://github.com/getbrevo/brevo-python"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ soyouzpanda ]; + }; +} diff --git a/pkgs/development/python-modules/june-analytics-python/default.nix b/pkgs/development/python-modules/june-analytics-python/default.nix new file mode 100644 index 000000000000..11866121c9bb --- /dev/null +++ b/pkgs/development/python-modules/june-analytics-python/default.nix @@ -0,0 +1,50 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + dateutils, + requests, + monotonic, + backoff, + unittestCheckHook, +}: + +buildPythonPackage { + pname = "june-analytics-python"; + version = "unstable-2022-07-26"; + pyproject = true; + + src = fetchFromGitHub { + owner = "juneHQ"; + repo = "analytics-python"; + rev = "462b523a617fbadc016ace45e6eec5762a8ae45f"; + hash = "sha256-9IcikYQW1Q3aAyjIZw6UltD6cYFE+tBK+/EMQpRGCoQ="; + }; + + pythonRelaxDeps = true; + + build-system = [ setuptools ]; + + dependencies = [ + dateutils + requests + monotonic + backoff + ]; + + nativeCheckInputs = [ + unittestCheckHook + ]; + + unittestFlagsArray = [ "june" ]; + + pythonImportsCheck = [ "june" ]; + + meta = { + description = "Hassle-free way to integrate analytics into any python application"; + homepage = "https://github.com/juneHQ/analytics-python"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ soyouzpanda ]; + }; +} diff --git a/pkgs/development/python-modules/livekit-api/default.nix b/pkgs/development/python-modules/livekit-api/default.nix new file mode 100644 index 000000000000..6a95357173bd --- /dev/null +++ b/pkgs/development/python-modules/livekit-api/default.nix @@ -0,0 +1,53 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + pyjwt, + aiohttp, + protobuf, + livekit-protocol, + pytestCheckHook, +}: + +buildPythonPackage rec { + pname = "livekit-api"; + version = "1.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "livekit"; + repo = "python-sdks"; + tag = "api-v${version}"; + hash = "sha256-QFUCMqRshEid08IbNjyvJvJSVhYfVJRjvXjSTlNlzlU="; + }; + + pypaBuildFlags = [ "livekit-api" ]; + + build-system = [ setuptools ]; + + dependencies = [ + pyjwt + aiohttp + protobuf + livekit-protocol + ]; + + pythonRemoveDeps = [ "types-protobuf" ]; + + nativeCheckInputs = [ + pytestCheckHook + ]; + + pytestFlagsArray = [ "livekit-api/tests" ]; + + pythonImportsCheck = [ "livekit" ]; + + meta = { + description = "LiveKit real-time and server SDKs for Python"; + homepage = "https://github.com/livekit/python-sdks/"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ soyouzpanda ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/development/python-modules/livekit-protocol/default.nix b/pkgs/development/python-modules/livekit-protocol/default.nix new file mode 100644 index 000000000000..14aa92d3e9d0 --- /dev/null +++ b/pkgs/development/python-modules/livekit-protocol/default.nix @@ -0,0 +1,42 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + protobuf, +}: + +buildPythonPackage rec { + pname = "livekit-protocol"; + version = "1.0.2"; + pyproject = true; + + src = fetchFromGitHub { + owner = "livekit"; + repo = "python-sdks"; + tag = "protocol-v${version}"; + hash = "sha256-1La7XYTo9onQFNx84CwabPM6N6LXIn/7swH50hFQvB8="; + }; + + pypaBuildFlags = [ "livekit-protocol" ]; + + build-system = [ setuptools ]; + + dependencies = [ + protobuf + ]; + + pythonRemoveDeps = [ "types-protobuf" ]; + + doCheck = false; # no tests + + pythonImportsCheck = [ "livekit" ]; + + meta = { + description = "LiveKit real-time and server SDKs for Python"; + homepage = "https://github.com/livekit/python-sdks/"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ soyouzpanda ]; + platforms = lib.platforms.all; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index eb4894a661e1..e55fc8f1efc8 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2045,6 +2045,8 @@ self: super: with self; { brelpy = callPackage ../development/python-modules/brelpy { }; + brevo-python = callPackage ../development/python-modules/brevo-python { }; + brian2 = callPackage ../development/python-modules/brian2 { }; bring-api = callPackage ../development/python-modules/bring-api { }; @@ -7187,6 +7189,8 @@ self: super: with self; { julius = callPackage ../development/python-modules/julius { }; + june-analytics-python = callPackage ../development/python-modules/june-analytics-python { }; + junit-xml = callPackage ../development/python-modules/junit-xml { }; junit2html = callPackage ../development/python-modules/junit2html { }; @@ -8029,6 +8033,10 @@ self: super: with self; { littleutils = callPackage ../development/python-modules/littleutils { }; + livekit-api = callPackage ../development/python-modules/livekit-api { }; + + livekit-protocol = callPackage ../development/python-modules/livekit-protocol { }; + livelossplot = callPackage ../development/python-modules/livelossplot { }; livereload = callPackage ../development/python-modules/livereload { };