mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-30 10:53:11 +00:00
a8c851bd92
It's not actually needed as a library, only as a binary, and adding it leaks duplicate OpenCVs into the closure, which breaks rendering. Fixes #329747 Fixes #209941
127 lines
2.2 KiB
Nix
127 lines
2.2 KiB
Nix
{ mkDerivation
|
|
, substituteAll
|
|
, lib
|
|
, extra-cmake-modules
|
|
, breeze-icons
|
|
, breeze-qt5
|
|
, kdoctools
|
|
, kconfig
|
|
, kcrash
|
|
, kguiaddons
|
|
, kiconthemes
|
|
, ki18n
|
|
, kinit
|
|
, kdbusaddons
|
|
, knotifications
|
|
, knewstuff
|
|
, karchive
|
|
, knotifyconfig
|
|
, kplotting
|
|
, ktextwidgets
|
|
, mediainfo
|
|
, mlt
|
|
, shared-mime-info
|
|
, libv4l
|
|
, kfilemetadata
|
|
, ffmpeg-full
|
|
, frei0r
|
|
, phonon-backend-gstreamer
|
|
, qtdeclarative
|
|
, qtmultimedia
|
|
, qtnetworkauth
|
|
, qtquickcontrols2
|
|
, qtscript
|
|
, rttr
|
|
, kpurpose
|
|
, kdeclarative
|
|
, wrapGAppsHook3
|
|
, glaxnimate
|
|
}:
|
|
|
|
let
|
|
mlt-full = mlt.override {
|
|
ffmpeg = ffmpeg-full;
|
|
};
|
|
in
|
|
mkDerivation {
|
|
pname = "kdenlive";
|
|
nativeBuildInputs = [
|
|
extra-cmake-modules
|
|
kdoctools
|
|
];
|
|
buildInputs = [
|
|
breeze-icons
|
|
breeze-qt5
|
|
kconfig
|
|
kcrash
|
|
kdbusaddons
|
|
kfilemetadata
|
|
kguiaddons
|
|
ki18n
|
|
kiconthemes
|
|
kinit
|
|
knotifications
|
|
knewstuff
|
|
karchive
|
|
knotifyconfig
|
|
kplotting
|
|
ktextwidgets
|
|
mediainfo
|
|
mlt-full
|
|
phonon-backend-gstreamer
|
|
qtdeclarative
|
|
qtmultimedia
|
|
qtnetworkauth
|
|
qtquickcontrols2
|
|
qtscript
|
|
shared-mime-info
|
|
libv4l
|
|
ffmpeg-full
|
|
frei0r
|
|
rttr
|
|
kpurpose
|
|
kdeclarative
|
|
wrapGAppsHook3
|
|
];
|
|
|
|
# Both MLT and FFMpeg paths must be set or Kdenlive will complain that it
|
|
# doesn't find them. See:
|
|
# https://github.com/NixOS/nixpkgs/issues/83885
|
|
patches = [
|
|
(
|
|
substituteAll {
|
|
src = ./dependency-paths.patch;
|
|
inherit mediainfo glaxnimate;
|
|
ffmpeg = ffmpeg-full;
|
|
mlt = mlt-full;
|
|
}
|
|
)
|
|
];
|
|
|
|
postPatch =
|
|
# Module Qt5::Concurrent must be included in `find_package` before it is used.
|
|
''
|
|
sed -i CMakeLists.txt -e '/find_package(Qt5 REQUIRED/ s|)| Concurrent)|'
|
|
'';
|
|
|
|
dontWrapGApps = true;
|
|
|
|
# Frei0r path needs to be set too or Kdenlive will complain. See:
|
|
# https://github.com/NixOS/nixpkgs/issues/83885
|
|
# https://github.com/NixOS/nixpkgs/issues/29614#issuecomment-488849325
|
|
qtWrapperArgs = [
|
|
"--set FREI0R_PATH ${frei0r}/lib/frei0r-1"
|
|
];
|
|
|
|
preFixup = ''
|
|
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
|
'';
|
|
|
|
meta = {
|
|
homepage = "https://apps.kde.org/kdenlive/";
|
|
description = "Video editor";
|
|
license = with lib.licenses; [ gpl2Plus ];
|
|
maintainers = with lib.maintainers; [ turion ];
|
|
};
|
|
}
|