From e449c6cd90b605264499aa2c20d78b3478d1f33b Mon Sep 17 00:00:00 2001 From: Dom Rodriguez Date: Mon, 14 Apr 2025 16:57:33 +0100 Subject: [PATCH] python3Packages.buildstream-plugins: init at 2.4.0 --- pkgs/by-name/bu/buildstream/package.nix | 8 +++- .../buildstream-plugins/default.nix | 39 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 3 files changed, 48 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/buildstream-plugins/default.nix diff --git a/pkgs/by-name/bu/buildstream/package.nix b/pkgs/by-name/bu/buildstream/package.nix index c78558047149..2ea655ec4a66 100644 --- a/pkgs/by-name/bu/buildstream/package.nix +++ b/pkgs/by-name/bu/buildstream/package.nix @@ -13,6 +13,9 @@ addBinToPathHook, gitMinimal, versionCheckHook, + + # Optional features + enableBuildstreamPlugins ? true, }: python3Packages.buildPythonApplication rec { @@ -53,7 +56,10 @@ python3Packages.buildPythonApplication rec { ruamel-yaml-clib tomlkit ujson - ]); + ]) + ++ lib.optionals enableBuildstreamPlugins [ + python3Packages.buildstream-plugins + ]; buildInputs = [ fuse3 diff --git a/pkgs/development/python-modules/buildstream-plugins/default.nix b/pkgs/development/python-modules/buildstream-plugins/default.nix new file mode 100644 index 000000000000..a96957161333 --- /dev/null +++ b/pkgs/development/python-modules/buildstream-plugins/default.nix @@ -0,0 +1,39 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + setuptools, + cython, +}: + +buildPythonPackage rec { + pname = "buildstream-plugins"; + version = "2.4.0"; + pyproject = true; + + src = fetchFromGitHub { + owner = "apache"; + repo = "buildstream-plugins"; + tag = version; + hash = "sha256-VAHDMy4DvNneWP1jhrIZzogZ5Gz5PS/GcFpOg2cGYvs="; + }; + + build-system = [ + cython + setuptools + ]; + + # Do not run pyTest, causes infinite recursion as `buildstream-plugins` + # depends on `Buildstream`, and vice-versa for tests. + # May be fixable by skipping certain tests? TODO. + + pythonImportsCheck = [ "buildstream_plugins" ]; + + meta = { + description = "BuildStream plugins"; + homepage = "https://github.com/apache/buildstream-plugins"; + platforms = lib.platforms.linux; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ shymega ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6c334e2c6269..afe436e1afa9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2170,6 +2170,8 @@ self: super: with self; { buildcatrust = callPackage ../development/python-modules/buildcatrust { }; + buildstream-plugins = callPackage ../development/python-modules/buildstream-plugins { }; + bump-my-version = callPackage ../development/python-modules/bump-my-version { }; bump2version = callPackage ../development/python-modules/bump2version { };