1{ lib
2, aiohttp
3, buildPythonPackage
4, fetchFromGitHub
5, freezegun
6, ical
7, pydantic
8, pytest-aiohttp
9, pytest-asyncio
10, pytestCheckHook
11, pythonOlder
12}:
13
14buildPythonPackage rec {
15 pname = "gcal-sync";
16 version = "5.0.0";
17 format = "setuptools";
18
19 disabled = pythonOlder "3.10";
20
21 src = fetchFromGitHub {
22 owner = "allenporter";
23 repo = "gcal_sync";
24 rev = "refs/tags/${version}";
25 hash = "sha256-vlPAAGY6h/nV9bNOUXharm1aeKfaL7ImzbvAPlpMV5k=";
26 };
27
28 propagatedBuildInputs = [
29 aiohttp
30 ical
31 pydantic
32 ];
33
34 __darwinAllowLocalNetworking = true;
35
36 nativeCheckInputs = [
37 freezegun
38 pytest-aiohttp
39 pytest-asyncio
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [
44 "gcal_sync"
45 ];
46
47 meta = with lib; {
48 description = "Library for syncing Google Calendar to local storage";
49 homepage = "https://github.com/allenporter/gcal_sync";
50 changelog = "https://github.com/allenporter/gcal_sync/releases/tag/${version}";
51 license = licenses.asl20;
52 maintainers = with maintainers; [ dotlambda ];
53 };
54}