diff --git a/pkgs/development/python-modules/snakemake-interface-scheduler-plugins/default.nix b/pkgs/development/python-modules/snakemake-interface-scheduler-plugins/default.nix new file mode 100644 index 000000000000..ccad1ca6f6a2 --- /dev/null +++ b/pkgs/development/python-modules/snakemake-interface-scheduler-plugins/default.nix @@ -0,0 +1,42 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + hatchling, + snakemake-interface-common, +}: + +let + version = "2.0.1"; + + src = fetchFromGitHub { + owner = "snakemake"; + repo = "snakemake-interface-scheduler-plugins"; + tag = "v${version}"; + hash = "sha256-Z/rJGkby9AcYB+Gil00xhbrySChqEIEOtzLyzQPhObk="; + }; +in +buildPythonPackage { + pname = "snakemake-interface-scheduler-plugins"; + inherit version src; + pyproject = true; + + build-system = [ hatchling ]; + + dependencies = [ snakemake-interface-common ]; + + pythonImportsCheck = [ "snakemake_interface_scheduler_plugins" ]; + + # test_scheduler: No module named 'snakemake' + # nativeCheckInputs = [ pytestCheckHook ]; + + # enabledTestPaths = [ "tests/tests.py" ]; + + meta = { + description = "Provides a stable interface for interactions between Snakemake and its scheduler plugins"; + homepage = "https://github.com/snakemake/snakemake-interface-scheduler-plugins"; + changelog = "https://github.com/snakemake/snakemake-interface-scheduler-plugins/blob/${src.rev}/CHANGELOG.md"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ kyehn ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 17d4e0e52f13..88e15d4effa3 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17013,6 +17013,10 @@ self: super: with self; { callPackage ../development/python-modules/snakemake-interface-report-plugins { }; + snakemake-interface-scheduler-plugins = + callPackage ../development/python-modules/snakemake-interface-scheduler-plugins + { }; + snakemake-interface-storage-plugins = callPackage ../development/python-modules/snakemake-interface-storage-plugins { };