@@ -0,0 +1,46 @@
1+{ lib
2+, buildPythonPackage
3+, pythonOlder
4+, fetchFromGitHub
5+, aiohttp
6+, pydantic
7+, freezegun
8+, pytest-aiohttp
9+, pytest-asyncio
10+, pytestCheckHook
11+}:
12+
13+buildPythonPackage rec {
14+ pname = "gcal-sync";
15+ version = "0.7.1";
16+
17+ disabled = pythonOlder "3.9";
18+
19+ src = fetchFromGitHub {
20+ owner = "allenporter";
21+ repo = "gcal_sync";
22+ rev = version;
23+ hash = "sha256-NOB74P+5i63FEeHJsPXRdRgY6iyIUEn7BogbVKm8P5M=";
24+ };
25+
26+ propagatedBuildInputs = [
27+ aiohttp
28+ pydantic
29+ ];
30+
31+ checkInputs = [
32+ freezegun
33+ pytest-aiohttp
34+ pytest-asyncio
35+ pytestCheckHook
36+ ];
37+
38+ pythonImportsCheck = [ "gcal_sync" ];
39+
40+ meta = {
41+ description = "Python library for syncing Google Calendar to local storage";
42+ homepage = "https://github.com/allenporter/gcal_sync";
43+ license = lib.licenses.asl20;
44+ maintainers = with lib.maintainers; [ dotlambda ];
45+ };
46+}