1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, poetry-core
5, pytestCheckHook
6, pythonOlder
7, python-dotenv
8, pytz
9, requests
10, typing-extensions
11, yarl
12}:
13
14buildPythonPackage rec {
15 pname = "transmission-rpc";
16 version = "7.0.0";
17 format = "pyproject";
18
19 disabled = pythonOlder "3.8";
20
21 src = fetchFromGitHub {
22 owner = "Trim21";
23 repo = "transmission-rpc";
24 rev = "refs/tags/v${version}";
25 hash = "sha256-66TKUi4rNZDMWPncyxgHY6oW62DVOQLSWO1RevHG7EY=";
26 };
27
28 nativeBuildInputs = [
29 poetry-core
30 ];
31
32 propagatedBuildInputs = [
33 requests
34 typing-extensions
35 ];
36
37 nativeCheckInputs = [
38 python-dotenv
39 pytz
40 pytestCheckHook
41 yarl
42 ];
43
44 pythonImportsCheck = [
45 "transmission_rpc"
46 ];
47
48 disabledTests = [
49 # Tests require a running Transmission instance
50 "test_real"
51 ];
52
53 meta = with lib; {
54 description = "Python module that implements the Transmission bittorent client RPC protocol";
55 homepage = "https://github.com/Trim21/transmission-rpc";
56 changelog = "https://github.com/trim21/transmission-rpc/releases/tag/v${version}";
57 license = licenses.mit;
58 maintainers = with maintainers; [ eyjhb ];
59 };
60}