@@ -0,0 +1,49 @@
1+{ lib, addonDir, buildKodiAddon, fetchFromGitHub, kodi, requests, dateutil, six, kodi-six, signals }:
2+let
3+ python = kodi.pythonPackages.python.withPackages (p: with p; [ pyyaml ]);
4+in
5+buildKodiAddon rec {
6+ pname = "jellyfin";
7+ namespace = "plugin.video.jellyfin";
8+ version = "0.7.1";
9+
10+ src = fetchFromGitHub {
11+ owner = "jellyfin";
12+ repo = "jellyfin-kodi";
13+ rev = "v${version}";
14+ sha256 = "0fx20gmd5xlg59ks4433qh2b3jhbs5qrnc49zi4rkqqr4jr4nhnn";
15+ };
16+
17+ nativeBuildInputs = [
18+ python
19+ ];
20+
21+ prePatch = ''
22+ substituteInPlace .config/generate_xml.py \
23+ --replace "'jellyfin-kodi/release.yaml'" "'release.yaml'" \
24+ --replace "'jellyfin-kodi/addon.xml'" "'addon.xml'"
25+ '';
26+
27+ buildPhase = ''
28+ ${python}/bin/python3 .config/generate_xml.py py3
29+ '';
30+
31+ postInstall = ''
32+ mv /build/source/addon.xml $out${addonDir}/${namespace}/
33+ '';
34+
35+ propagatedBuildInputs = [
36+ requests
37+ dateutil
38+ six
39+ kodi-six
40+ signals
41+ ];
42+
43+ meta = with lib; {
44+ homepage = "https://jellyfin.org/";
45+ description = "A whole new way to manage and view your media library";
46+ license = licenses.gpl3Only;
47+ maintainers = teams.kodi.members;
48+ };
49+}