nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 fetchpatch,
6 setuptools,
7 aiohttp,
8 yarl,
9 aresponses,
10 pytest-asyncio,
11 pytestCheckHook,
12}:
13
14buildPythonPackage rec {
15 pname = "directv";
16 version = "0.4.0";
17 pyproject = true;
18
19 src = fetchFromGitHub {
20 owner = "ctalkington";
21 repo = "python-directv";
22 tag = version;
23 hash = "sha256-s4bE8ACFCfpNq+HGEO8fv3VCGPI4OOdR5A7RjY2bTKY=";
24 };
25
26 patches = [
27 # https://github.com/ctalkington/python-directv/pull/365
28 (fetchpatch {
29 name = "replace-async-timeout-with-asyncio.timeout.patch";
30 url = "https://github.com/ctalkington/python-directv/commit/a161454b09e144de15883d25378fbb13069e241b.patch";
31 hash = "sha256-jI+ALoQ0EDUQCSQp90SE+e3sGMWLwojNtLevAbgoScc=";
32 })
33 ];
34
35 build-system = [ setuptools ];
36
37 dependencies = [
38 aiohttp
39 yarl
40 ];
41
42 nativeCheckInputs = [
43 aresponses
44 pytest-asyncio
45 pytestCheckHook
46 ];
47
48 __darwinAllowLocalNetworking = true;
49
50 disabledTests = [
51 # ValueError: Host '#' cannot contain '#' (at position 0)
52 "test_client_error"
53 ];
54
55 pythonImportsCheck = [ "directv" ];
56
57 meta = {
58 changelog = "https://github.com/ctalkington/python-directv/releases/tag/${src.tag}";
59 description = "Asynchronous Python client for DirecTV (SHEF)";
60 homepage = "https://github.com/ctalkington/python-directv";
61 license = lib.licenses.mit;
62 maintainers = with lib.maintainers; [ dotlambda ];
63 };
64}