64 lines
1.7 KiB
Nix
64 lines
1.7 KiB
Nix
|
{
|
||
|
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";
|
||
|
};
|
||
|
}
|