connman-gtk: fix FTBFS with GCC-14 (incompatible pointer types) (#376077)
[NixPkgs.git] / pkgs / applications / video / kodi / addons / jellycon / default.nix
blob591202c1620695320b386d1cffbb1eb78c95ab53
2   lib,
3   addonDir,
4   buildKodiAddon,
5   fetchFromGitHub,
6   kodi,
7   requests,
8   dateutil,
9   six,
10   kodi-six,
11   signals,
12   websocket,
14 let
15   python = kodi.pythonPackages.python.withPackages (p: with p; [ pyyaml ]);
17 buildKodiAddon rec {
18   pname = "jellycon";
19   namespace = "plugin.video.jellycon";
20   version = "0.8.0";
22   src = fetchFromGitHub {
23     owner = "jellyfin";
24     repo = pname;
25     rev = "v${version}";
26     sha256 = "sha256-60my7Y60KV5WWALQiamnmAJZJi82cV21rIGYPiV7T+A=";
27   };
29   nativeBuildInputs = [
30     python
31   ];
33   prePatch = ''
34     # ZIP does not support timestamps before 1980 - https://bugs.python.org/issue34097
35     substituteInPlace build.py \
36       --replace "with zipfile.ZipFile(f'{target}/{archive_name}', 'w') as z:" "with zipfile.ZipFile(f'{target}/{archive_name}', 'w', strict_timestamps=False) as z:"
37   '';
39   buildPhase = ''
40     ${python}/bin/python3 build.py --version=py3
41   '';
43   postInstall = ''
44     cp -v addon.xml $out${addonDir}/$namespace/
45   '';
47   propagatedBuildInputs = [
48     requests
49     dateutil
50     six
51     kodi-six
52     signals
53     websocket
54   ];
56   meta = with lib; {
57     homepage = "https://github.com/jellyfin/jellycon";
58     description = "Lightweight Kodi add-on for Jellyfin";
59     longDescription = ''
60       JellyCon is a lightweight Kodi add-on that lets you browse and play media
61       files directly from your Jellyfin server within the Kodi interface. It can
62       easily switch between multiple user accounts at will.
63     '';
64     license = licenses.gpl2Only;
65     maintainers = teams.kodi.members;
66   };