1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5
6 # build system
7 hatchling,
8 hatch-vcs,
9
10 # dependencies
11 ghome-foyer-api,
12 gpsoauth,
13 grpcio,
14 requests,
15 simplejson,
16 zeroconf,
17
18 # test dependencies
19 pytestCheckHook,
20 faker,
21}:
22
23buildPythonPackage rec {
24 pname = "glocaltokens";
25 version = "0.7.6";
26 pyproject = true;
27
28 src = fetchFromGitHub {
29 owner = "leikoilja";
30 repo = "glocaltokens";
31 tag = "v${version}";
32 hash = "sha256-+7HpyZUumu1r/UXM4awckjTkpVbCz7MsAJOp2JiJzho=";
33 };
34
35 build-system = [
36 hatchling
37 hatch-vcs
38 ];
39
40 dependencies = [
41 ghome-foyer-api
42 gpsoauth
43 grpcio
44 requests
45 simplejson
46 zeroconf
47 ];
48
49 nativeCheckInputs = [
50 pytestCheckHook
51 faker
52 ];
53
54 pythonImportsCheck = [
55 "glocaltokens"
56 "glocaltokens.client"
57 "glocaltokens.scanner"
58 ];
59
60 meta = {
61 description = "Library to extract google home devices local authentication tokens from google servers";
62 homepage = "https://github.com/leikoilja/glocaltokens";
63 changelog = "https://github.com/leikoilja/glocaltokens/releases/tag/${src.tag}";
64 license = lib.licenses.mit;
65 maintainers = with lib.maintainers; [
66 hensoko
67 ];
68 };
69}