Files
nixpkgs/pkgs/applications/video/kodi/build-kodi-binary-addon.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

67 lines
1.5 KiB
Nix

{
stdenv,
toKodiAddon,
addonDir,
cmake,
kodi,
kodi-platform,
libcec_platform,
}:
{
name ? "${attrs.pname}-${attrs.version}",
namespace,
version,
extraNativeBuildInputs ? [ ],
extraBuildInputs ? [ ],
extraRuntimeDependencies ? [ ],
extraCMakeFlags ? [ ],
extraInstallPhase ? "",
...
}@attrs:
toKodiAddon (
stdenv.mkDerivation (
{
name = "kodi-" + name;
dontStrip = true;
nativeBuildInputs = [ cmake ] ++ extraNativeBuildInputs;
buildInputs = [
kodi
kodi-platform
libcec_platform
]
++ extraBuildInputs;
inherit extraRuntimeDependencies;
# disables check ensuring install prefix is that of kodi
cmakeFlags = [
"-DOVERRIDE_PATHS=1"
]
++ extraCMakeFlags;
# kodi checks for addon .so libs existence in the addon folder (share/...)
# and the non-wrapped kodi lib/... folder before even trying to dlopen
# them. Symlinking .so, as setting LD_LIBRARY_PATH is of no use
installPhase =
let
n = namespace;
in
''
runHook preInstall
make install
[[ -f $out/lib/addons/${n}/${n}.so ]] && ln -s $out/lib/addons/${n}/${n}.so $out${addonDir}/${n}/${n}.so || true
[[ -f $out/lib/addons/${n}/${n}.so.${version} ]] && ln -s $out/lib/addons/${n}/${n}.so.${version} $out${addonDir}/${n}/${n}.so.${version} || true
${extraInstallPhase}
runHook postInstall
'';
}
// attrs
)
)