1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 hatchling,
6 snakemake-interface-common,
7}:
8
9let
10 version = "2.0.1";
11
12 src = fetchFromGitHub {
13 owner = "snakemake";
14 repo = "snakemake-interface-scheduler-plugins";
15 tag = "v${version}";
16 hash = "sha256-Z/rJGkby9AcYB+Gil00xhbrySChqEIEOtzLyzQPhObk=";
17 };
18in
19buildPythonPackage {
20 pname = "snakemake-interface-scheduler-plugins";
21 inherit version src;
22 pyproject = true;
23
24 build-system = [ hatchling ];
25
26 dependencies = [ snakemake-interface-common ];
27
28 pythonImportsCheck = [ "snakemake_interface_scheduler_plugins" ];
29
30 # test_scheduler: No module named 'snakemake'
31 # nativeCheckInputs = [ pytestCheckHook ];
32
33 # enabledTestPaths = [ "tests/tests.py" ];
34
35 meta = {
36 description = "Provides a stable interface for interactions between Snakemake and its scheduler plugins";
37 homepage = "https://github.com/snakemake/snakemake-interface-scheduler-plugins";
38 changelog = "https://github.com/snakemake/snakemake-interface-scheduler-plugins/blob/${src.rev}/CHANGELOG.md";
39 license = lib.licenses.mit;
40 maintainers = with lib.maintainers; [ kyehn ];
41 };
42}