1{
2 lib,
3 buildPythonPackage,
4 defusedxml,
5 fetchFromGitHub,
6 protobuf,
7 pycryptodomex,
8 pyogg,
9 pytestCheckHook,
10 pythonRelaxDepsHook,
11 requests,
12 websocket-client,
13 zeroconf,
14}:
15
16buildPythonPackage rec {
17 pname = "librespot";
18 version = "0.0.9";
19 format = "setuptools";
20
21 src = fetchFromGitHub {
22 owner = "kokarare1212";
23 repo = "librespot-python";
24 rev = "refs/tags/v${version}";
25 hash = "sha256-k9qVsxjRlUZ7vCBx00quiAR7S+YkfyoZiAKVnOOG4xM=";
26 };
27
28 pythonRelaxDeps = true;
29
30 nativeBuildInputs = [ pythonRelaxDepsHook ];
31
32 propagatedBuildInputs = [
33 defusedxml
34 protobuf
35 pycryptodomex
36 pyogg
37 requests
38 websocket-client
39 zeroconf
40 ];
41
42 # Doesn't include any tests
43 doCheck = false;
44
45 pythonImportsCheck = [ "librespot" ];
46
47 meta = with lib; {
48 description = "Open Source Spotify Client";
49 homepage = "https://github.com/kokarare1212/librespot-python";
50 changelog = "https://github.com/kokarare1212/librespot-python/releases/tag/v${version}";
51 license = licenses.asl20;
52 maintainers = with maintainers; [ onny ];
53 };
54}