at master 1.3 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 certifi, 5 click, 6 fetchFromGitHub, 7 fido2, 8 keyring, 9 keyrings-alt, 10 pytest-mock, 11 pytest-socket, 12 pytestCheckHook, 13 pythonAtLeast, 14 requests, 15 setuptools, 16 setuptools-scm, 17 srp, 18 tzlocal, 19}: 20 21buildPythonPackage rec { 22 pname = "pyicloud"; 23 version = "2.1.0"; 24 pyproject = true; 25 26 src = fetchFromGitHub { 27 owner = "timlaing"; 28 repo = "pyicloud"; 29 tag = version; 30 hash = "sha256-bGS5yAizdaZUdwKNoZPKP/DSpJs5XI70hyTLfJg9QmI="; 31 }; 32 33 build-system = [ 34 setuptools 35 setuptools-scm 36 ]; 37 38 dependencies = [ 39 certifi 40 click 41 fido2 42 keyring 43 keyrings-alt 44 requests 45 srp 46 tzlocal 47 ]; 48 49 nativeCheckInputs = [ 50 pytest-mock 51 pytest-socket 52 pytestCheckHook 53 ]; 54 55 pythonImportsCheck = [ "pyicloud" ]; 56 57 disabledTests = lib.optionals (pythonAtLeast "3.12") [ 58 # https://github.com/picklepete/pyicloud/issues/446 59 "test_storage" 60 ]; 61 62 meta = with lib; { 63 description = "Module to interact with iCloud webservices"; 64 mainProgram = "icloud"; 65 homepage = "https://github.com/timlaing/pyicloud"; 66 changelog = "https://github.com/timlaing/pyicloud/releases/tag/${src.tag}"; 67 license = licenses.mit; 68 maintainers = [ maintainers.mic92 ]; 69 }; 70}