Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 aiohttp,
4 aresponses,
5 buildPythonPackage,
6 certifi,
7 fetchFromGitHub,
8 poetry-core,
9 pytest-aiohttp,
10 pytest-asyncio,
11 pytestCheckHook,
12 yarl,
13}:
14
15buildPythonPackage rec {
16 pname = "pytile";
17 version = "2024.12.0";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "bachya";
22 repo = "pytile";
23 tag = version;
24 hash = "sha256-6vcFGMj7E1xw01yHOq/WDpqMxd7OIiRBCmw5LForAR0=";
25 };
26
27 nativeBuildInputs = [ poetry-core ];
28
29 propagatedBuildInputs = [
30 aiohttp
31 certifi
32 yarl
33 ];
34
35 nativeCheckInputs = [
36 aresponses
37 pytest-aiohttp
38 pytest-asyncio
39 pytestCheckHook
40 ];
41
42 disabledTestPaths = [
43 # Ignore the examples as they are prefixed with test_
44 "examples/"
45 ];
46
47 pythonImportsCheck = [ "pytile" ];
48
49 __darwinAllowLocalNetworking = true;
50
51 meta = {
52 description = "Python API for Tile Bluetooth trackers";
53 longDescription = ''
54 pytile is a simple Python library for retrieving information on Tile
55 Bluetooth trackers (including last location and more).
56 '';
57 homepage = "https://github.com/bachya/pytile";
58 changelog = "https://github.com/bachya/pytile/releases/tag/${version}";
59 license = with lib.licenses; [ mit ];
60 maintainers = with lib.maintainers; [ fab ];
61 };
62}