diff options
Diffstat (limited to 'nixpkgs/pkgs/applications/video/kodi/plugins.nix')
-rw-r--r-- | nixpkgs/pkgs/applications/video/kodi/plugins.nix | 76 |
1 files changed, 56 insertions, 20 deletions
diff --git a/nixpkgs/pkgs/applications/video/kodi/plugins.nix b/nixpkgs/pkgs/applications/video/kodi/plugins.nix index 196852933a98..29fbf79c662c 100644 --- a/nixpkgs/pkgs/applications/video/kodi/plugins.nix +++ b/nixpkgs/pkgs/applications/video/kodi/plugins.nix @@ -1,13 +1,14 @@ { stdenv, callPackage, fetchurl, fetchFromGitHub, unzip -, cmake, kodiPlain, libcec_platform, tinyxml +, cmake, kodiPlain, libcec_platform, tinyxml, rapidxml , steam, libusb, pcre-cpp, jsoncpp, libhdhomerun, zlib -, python2Packages }: +, python2Packages, expat, glib, nspr, nss }: with stdenv.lib; let self = rec { pluginDir = "/share/kodi/addons"; + rel = "Leia"; kodi = kodiPlain; @@ -54,6 +55,8 @@ let self = rec { dontStrip = true; + extraRuntimeDependencies = [ ]; + installPhase = '' ${if isNull sourceDir then "" else "cd $src/$sourceDir"} d=$out${pluginDir}/${namespace} @@ -64,7 +67,8 @@ let self = rec { ''; } // args)); - mkKodiABIPlugin = { plugin, namespace, version, extraBuildInputs ? [], ... }@args: + mkKodiABIPlugin = { plugin, namespace, version, extraBuildInputs ? [], + extraRuntimeDependencies ? [], extraInstallPhase ? "", ... }@args: toKodiPlugin (stdenv.mkDerivation (rec { name = "kodi-plugin-${plugin}-${version}"; @@ -73,6 +77,8 @@ let self = rec { buildInputs = [ cmake kodiPlain kodi-platform libcec_platform ] ++ extraBuildInputs; + inherit extraRuntimeDependencies; + # disables check ensuring install prefix is that of kodi cmakeFlags = [ "-DOVERRIDE_PATHS=1" @@ -84,6 +90,7 @@ let self = rec { installPhase = let n = namespace; in '' make install ln -s $out/lib/addons/${n}/${n}.so.${version} $out${pluginDir}/${n}/${n}.so.${version} + ${extraInstallPhase} ''; } // args)); @@ -212,14 +219,14 @@ let self = rec { joystick = mkKodiABIPlugin rec { namespace = "peripheral.joystick"; - version = "1.3.2"; + version = "1.4.7"; plugin = namespace; src = fetchFromGitHub { - owner = "kodi-game"; + owner = "xbmc"; repo = namespace; - rev = "96171dd32899553ffe8fc775fca66e8df5ff5cf1"; - sha256 = "18m61v8z9fbh4imvzhh4g9629r9df49g2yk9ycaczirg131dhfbh"; + rev = "v${version}"; + sha256 = "03gsp4kg41s3n4ib4wsv7m3krfipgwc2z07i4mnd5zvg0c4xrmap"; }; meta = { @@ -282,14 +289,14 @@ let self = rec { steam-controller = mkKodiABIPlugin rec { namespace = "peripheral.steamcontroller"; - version = "0.9.0"; + version = "0.10.0"; plugin = namespace; src = fetchFromGitHub { owner = "kodi-game"; repo = namespace; - rev = "76f640fad4f68118f4fab6c4c3338d13daca7074"; - sha256 = "0yqlfdiiymb8z6flyhpval8w3kdc9qv3mli3jg1xn5ac485nxsxh"; + rev = "ea345392ab5aa4485f3a48d2037fa8a8e8ab82de"; + sha256 = "1hbd8fdvn7xkr9csz1g9wah78nhnq1rkazl4zwa31y70830k3279"; }; extraBuildInputs = [ libusb ]; @@ -355,13 +362,13 @@ let self = rec { plugin = "pvr-hts"; namespace = "pvr.hts"; - version = "3.4.16"; + version = "4.4.14"; src = fetchFromGitHub { owner = "kodi-pvr"; repo = "pvr.hts"; - rev = "b39e4e9870d68841279cbc7d7214f3ad9b27f330"; - sha256 = "0pmlgqr4kd0gvckz77mj6v42kcx6lb23anm8jnf2fbn877snnijx"; + rev = "${version}-${rel}"; + sha256 = "1bcwcwd2yjhw85yk6lyhf0iqiclrsz7r7vpbxgc650fwqbb146gr"; }; meta = { @@ -377,13 +384,13 @@ let self = rec { plugin = "pvr-hdhomerun"; namespace = "pvr.hdhomerun"; - version = "2.4.7"; + version = "3.5.0"; src = fetchFromGitHub { owner = "kodi-pvr"; repo = "pvr.hdhomerun"; - rev = "60d89d16dd953d38947e8a6da2f8bb84a0f764ef"; - sha256 = "0dvdv0vk2q12nj0i5h51iaypy3i7jfsxjyxwwpxfy82y8260ragy"; + rev = "${version}-${rel}"; + sha256 = "1zrkvfn0im2qmvqm93pa3cg8xkxv61sxlj8nsz4r5z9v9nhqadf6"; }; meta = { @@ -401,13 +408,13 @@ let self = rec { plugin = "pvr-iptvsimple"; namespace = "pvr.iptvsimple"; - version = "2.4.14"; + version = "3.5.7"; src = fetchFromGitHub { owner = "kodi-pvr"; repo = "pvr.iptvsimple"; - rev = "2a649d7e21b64c4fa4a8b14c2cc139261eebc7e8"; - sha256 = "1f1im2gachrxnr3z96h5cg2c13vapgkvkdwvrbl4hxlnyp1a6jyz"; + rev = "${version}-${rel}"; + sha256 = "17znib7c491h2ii4gagxradh0jyvgga0d548gbk4yjj2nc9qqc6d"; }; meta = { @@ -418,7 +425,7 @@ let self = rec { license = licenses.gpl2Plus; }; - extraBuildInputs = [ zlib ]; + extraBuildInputs = [ zlib rapidxml ]; }; osmc-skin = mkKodiPlugin rec { @@ -470,4 +477,33 @@ let self = rec { }; }); + inputstream-adaptive = mkKodiABIPlugin rec { + + plugin = "inputstream-adaptive"; + namespace = "inputstream.adaptive"; + version = "2.3.12"; + + src = fetchFromGitHub { + owner = "peak3d"; + repo = "inputstream.adaptive"; + rev = "${version}"; + sha256 = "09d9b35mpaf3g5m51viyan9hv7d2i8ndvb9wm0j7rs5gwsf0k71z"; + }; + + extraBuildInputs = [ expat ]; + + extraRuntimeDependencies = [ glib nspr nss stdenv.cc.cc.lib ]; + + extraInstallPhase = let n = namespace; in '' + ln -s $out/lib/addons/${n}/libssd_wv.so $out/${pluginDir}/${n}/libssd_wv.so + ''; + + meta = { + homepage = https://github.com/peak3d/inputstream.adaptive; + description = "Kodi inputstream addon for several manifest types"; + platforms = platforms.all; + maintainers = with maintainers; [ sephalon ]; + }; + }; + }; in self |