depot/third_party/nixpkgs/pkgs/development/libraries/ffmpegthumbnailer/default.nix

64 lines
1.7 KiB
Nix
Raw Normal View History

{
lib,
stdenv,
fetchFromGitHub,
cmake,
pkg-config,
ffmpeg-headless,
libpng,
libjpeg,
}:
stdenv.mkDerivation rec {
pname = "ffmpegthumbnailer";
version = "unstable-2024-01-04";
src = fetchFromGitHub {
owner = "dirkvdb";
repo = "ffmpegthumbnailer";
rev = "1b5a77983240bcf00a4ef7702c07bcd8f4e5f97c";
hash = "sha256-7SPRQMPgdvP7J3HCf7F1eXxZjUH5vCYZ9UOwTUFMLp0=";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
ffmpeg-headless
libpng
libjpeg
];
cmakeFlags = [ "-DENABLE_THUMBNAILER=ON" ];
# https://github.com/dirkvdb/ffmpegthumbnailer/issues/215
postPatch = ''
substituteInPlace libffmpegthumbnailer.pc.in \
--replace '$'{exec_prefix}/@CMAKE_INSTALL_LIBDIR@ @CMAKE_INSTALL_FULL_LIBDIR@
'';
postInstall = ''
substituteInPlace $out/share/thumbnailers/ffmpegthumbnailer.thumbnailer \
--replace-fail '=ffmpegthumbnailer' "=$out/bin/ffmpegthumbnailer"
'';
meta = with lib; {
description = "Lightweight video thumbnailer";
longDescription = "FFmpegthumbnailer is a lightweight video
thumbnailer that can be used by file managers to create thumbnails
for your video files. The thumbnailer uses ffmpeg to decode frames
from the video files, so supported videoformats depend on the
configuration flags of ffmpeg.
This thumbnailer was designed to be as fast and lightweight as possible.
The only dependencies are ffmpeg and libpng/libjpeg.
";
homepage = "https://github.com/dirkvdb/ffmpegthumbnailer";
license = licenses.gpl2Plus;
maintainers = [ maintainers.jagajaga ];
platforms = platforms.unix;
mainProgram = "ffmpegthumbnailer";
};
}