Files

63 lines
1.5 KiB
Nix

{
lib,
buildPythonPackage,
fetchFromGitLab,
gitUpdater,
nixosTests,
setuptools,
setuptools-scm,
# Optional plugin dependencies, matching upstream's pyproject.toml extras.
arpy,
dulwich,
packaging,
requests,
tomlkit,
}:
buildPythonPackage (finalAttrs: {
pname = "buildstream-plugins-community";
version = "2.4.0";
pyproject = true;
src = fetchFromGitLab {
owner = "buildstream";
repo = "buildstream-plugins-community";
tag = finalAttrs.version;
hash = "sha256-bwcVwYgC2cRHjZwHEwFfz8VMxi9qJ0uPq7QWQcbMpv8=";
};
build-system = [
setuptools
setuptools-scm
];
dependencies = [
arpy
dulwich
packaging
requests
tomlkit
];
# Loaded by `bst` at runtime via pluginbase, so `buildstream` is always
# present when imported; drop it here instead of propagating a second
# `buildstream` closure into consumers that already bundle one.
pythonRemoveDeps = [ "buildstream" ];
pythonImportsCheck = [ "buildstream_plugins_community" ];
passthru = {
updateScript = gitUpdater { };
tests.pytest = nixosTests.buildstream-plugins-community;
};
meta = {
changelog = "https://gitlab.com/BuildStream/buildstream-plugins-community/-/blob/${finalAttrs.src.tag}/NEWS";
description = "BuildStream community plugins";
homepage = "https://gitlab.com/buildstream/buildstream-plugins-community";
platforms = lib.platforms.linux;
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ shymega ];
};
})