Files
nixpkgs/pkgs/development/libraries/libcec/default.nix
T
Ihar Hrachyshka 567e8dfd8e treewide: clean up 'meta = with' pattern
This commit was created by a combination of scripts and tools:
- an ast-grep script to prefix things in meta with `lib.`,
- a modified nixf-diagnose / nixf combination to remove unused `with
lib;`, and
- regular nixfmt.

Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2025-12-10 18:09:49 +01:00

54 lines
1.2 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
cmake,
pkg-config,
udev,
libcec_platform,
withLibraspberrypi ? false,
libraspberrypi,
}:
stdenv.mkDerivation rec {
pname = "libcec";
version = "7.1.1";
src = fetchFromGitHub {
owner = "Pulse-Eight";
repo = "libcec";
rev = "libcec-${version}";
sha256 = "sha256-t8GUQKWTcxjyaAlsTP4C+heYiVYowG7x+fmjHPND7As=";
};
# Fix dlopen path
postPatch = ''
substituteInPlace include/cecloader.h --replace "\"libcec." "\"$out/lib/libcec."
'';
nativeBuildInputs = [
pkg-config
cmake
];
buildInputs = [
libcec_platform
]
++ lib.optional stdenv.hostPlatform.isLinux udev
++ lib.optional withLibraspberrypi libraspberrypi;
cmakeFlags = [
"-DBUILD_SHARED_LIBS=1"
]
++ lib.optionals stdenv.hostPlatform.isLinux [
"-DHAVE_LINUX_API=1"
];
meta = {
description = "Allows you (with the right hardware) to control your device with your TV remote control using existing HDMI cabling";
homepage = "http://libcec.pulse-eight.com";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux ++ lib.platforms.darwin;
teams = [ lib.teams.kodi ];
};
}