1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, aiofiles 5, aiohttp 6, pytestCheckHook 7, python-dateutil 8, python-slugify 9, pythonOlder 10, requests 11, setuptools 12, sortedcontainers 13}: 14 15buildPythonPackage rec { 16 pname = "blinkpy"; 17 version = "0.22.3"; 18 pyproject = true; 19 20 disabled = pythonOlder "3.8"; 21 22 src = fetchFromGitHub { 23 owner = "fronzbot"; 24 repo = "blinkpy"; 25 rev = "refs/tags/v${version}"; 26 hash = "sha256-J9eBZv/uizkZz53IX1ZfF7IeMOnBonyMD2c5DphW8BQ="; 27 }; 28 29 postPatch = '' 30 substituteInPlace pyproject.toml \ 31 --replace ', "wheel~=0.40.0"' "" 32 ''; 33 34 nativeBuildInputs = [ 35 setuptools 36 ]; 37 38 propagatedBuildInputs = [ 39 aiofiles 40 aiohttp 41 python-dateutil 42 python-slugify 43 requests 44 sortedcontainers 45 ]; 46 47 nativeCheckInputs = [ 48 pytestCheckHook 49 ]; 50 51 pythonImportsCheck = [ 52 "blinkpy" 53 "blinkpy.api" 54 "blinkpy.auth" 55 "blinkpy.blinkpy" 56 "blinkpy.camera" 57 "blinkpy.helpers.util" 58 "blinkpy.sync_module" 59 ]; 60 61 meta = with lib; { 62 description = "Python library for the Blink Camera system"; 63 homepage = "https://github.com/fronzbot/blinkpy"; 64 changelog = "https://github.com/fronzbot/blinkpy/blob/${src.rev}/CHANGES.rst"; 65 license = licenses.mit; 66 maintainers = with maintainers; [ dotlambda ]; 67 }; 68}