diff options
author | Alyssa Ross <hi@alyssa.is> | 2023-08-08 16:04:42 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2023-08-13 06:35:37 +0000 |
commit | 12aaa58dac35800b5b7d77f81cf2a87c21ee55da (patch) | |
tree | be0add9e5c22a85d20b5d78206aa74f956eb2a1b /nixpkgs/pkgs/development/libraries/mlt | |
parent | 45892a5591202f75a1c2f1ca7c62a92c7566e3c5 (diff) | |
parent | 5a8e9243812ba528000995b294292d3b5e120947 (diff) | |
download | nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.gz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.bz2 nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.lz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.xz nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.tar.zst nixlib-12aaa58dac35800b5b7d77f81cf2a87c21ee55da.zip |
Merge branch 'nixos-unstable' of https://github.com/NixOS/nixpkgs
Conflicts: nixpkgs/pkgs/applications/window-managers/sway/default.nix nixpkgs/pkgs/build-support/go/module.nix nixpkgs/pkgs/build-support/rust/build-rust-package/default.nix nixpkgs/pkgs/development/libraries/mesa/default.nix nixpkgs/pkgs/servers/dict/dictd-db.nix Link: https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/-/issues/391
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/mlt')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/mlt/default.nix | 146 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/mlt/qt-5.nix | 95 |
2 files changed, 108 insertions, 133 deletions
diff --git a/nixpkgs/pkgs/development/libraries/mlt/default.nix b/nixpkgs/pkgs/development/libraries/mlt/default.nix index f57ac10468b7..a13b3655066b 100644 --- a/nixpkgs/pkgs/development/libraries/mlt/default.nix +++ b/nixpkgs/pkgs/development/libraries/mlt/default.nix @@ -1,65 +1,135 @@ -{ lib, stdenv, fetchFromGitHub, makeWrapper -, SDL, ffmpeg_4, frei0r, libjack2, libdv, libsamplerate, libexif -, libvorbis, libxml2, movit, pkg-config, sox, fftw, opencv4, SDL2 -, gtk2, gitUpdater, libebur128, rubberband -, jack2, ladspa-sdk, swig, which, ncurses -, enablePython ? false, python3 +{ config +, lib +, stdenv +, fetchFromGitHub +, cmake +, pkg-config +, which +, ffmpeg +, fftw +, frei0r +, libdv +, libjack2 +, libsamplerate +, libvorbis +, libxml2 +, makeWrapper +, movit +, opencv4 +, rtaudio +, rubberband +, sox +, vid-stab +, darwin +, cudaSupport ? config.cudaSupport +, cudaPackages ? { } +, enableJackrack ? stdenv.isLinux +, ladspa-sdk +, ladspaPlugins +, enablePython ? false +, python3 +, swig +, enableQt ? false +, libsForQt5 +, enableSDL1 ? stdenv.isLinux +, SDL +, enableSDL2 ? true +, SDL2 +, gitUpdater }: stdenv.mkDerivation rec { pname = "mlt"; - version = "6.26.0"; + version = "7.18.0"; src = fetchFromGitHub { owner = "mltframework"; repo = "mlt"; rev = "v${version}"; - sha256 = "FPXROiX7A6oB1VMipw3slyhk7q4fO6m9amohnC67lnA="; + hash = "sha256-3qvMuBr2w/gedTDIjG6ezatleXuQSnKX4SkBShzj6aw="; }; - buildInputs = [ - SDL ffmpeg_4 frei0r libjack2 libdv libsamplerate libvorbis libxml2.dev - movit sox libexif gtk2 fftw libebur128 opencv4 SDL2 jack2 - ladspa-sdk rubberband - ] ++ lib.optional enablePython ncurses; + nativeBuildInputs = [ + cmake + pkg-config + which + makeWrapper + ] ++ lib.optionals cudaSupport [ + cudaPackages.cuda_nvcc + ] ++ lib.optionals enablePython [ + python3 + swig + ] ++ lib.optionals enableQt [ + libsForQt5.wrapQtAppsHook + ]; - nativeBuildInputs = [ pkg-config makeWrapper which ] - ++ lib.optionals enablePython [ python3 swig ]; + buildInputs = [ + ffmpeg + fftw + frei0r + libdv + libjack2 + libsamplerate + libvorbis + libxml2 + movit + opencv4 + rtaudio + rubberband + sox + vid-stab + ] ++ lib.optionals stdenv.isDarwin [ + darwin.apple_sdk_11_0.frameworks.Accelerate + ] ++ lib.optionals cudaSupport [ + cudaPackages.cuda_cudart + ] ++ lib.optionals enableJackrack [ + ladspa-sdk + ladspaPlugins + ] ++ lib.optionals enableQt [ + libsForQt5.qtbase + libsForQt5.qtsvg + ] ++ lib.optionals enableSDL1 [ + SDL + ] ++ lib.optionals enableSDL2 [ + SDL2 + ]; - strictDeps = true; + outputs = [ "out" "dev" ]; - # Mostly taken from: - # http://www.kdenlive.org/user-manual/downloading-and-installing-kdenlive/installing-source/installing-mlt-rendering-engine - configureFlags = [ - "--avformat-swscale" "--enable-gpl" "--enable-gpl3" "--enable-opengl" - ] ++ lib.optional enablePython "--swig-languages=python"; + cmakeFlags = [ + # RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/ + "-DCMAKE_SKIP_BUILD_RPATH=ON" + "-DMOD_OPENCV=ON" + ] ++ lib.optionals enablePython [ + "-DSWIG_PYTHON=ON" + ]; - enableParallelBuilding = true; - outPythonPath = lib.optionalString enablePython "$(toPythonPath $out)"; + preFixup = '' + wrapProgram $out/bin/melt \ + --prefix FREI0R_PATH : ${frei0r}/lib/frei0r-1 \ + ${lib.optionalString enableJackrack "--prefix LADSPA_PATH : ${ladspaPlugins}/lib/ladspa"} \ + ${lib.optionalString enableQt "\${qtWrapperArgs[@]}"} - postInstall = '' - wrapProgram $out/bin/melt --prefix FREI0R_PATH : ${frei0r}/lib/frei0r-1 + ''; - # Remove an unnecessary reference to movit.dev. - s=${movit.dev}/include - t=$(for ((i = 0; i < ''${#s}; i++)); do echo -n X; done) - sed -i $out/lib/mlt/libmltopengl.so -e "s|$s|$t|g" - '' + lib.optionalString enablePython '' - mkdir -p ${outPythonPath}/mlt - cp -a src/swig/python/_mlt.so ${outPythonPath}/mlt/ - cp -a src/swig/python/mlt.py ${outPythonPath}/mlt/__init__.py - sed -i ${outPythonPath}/mlt/__init__.py -e "s|return importlib.import_module('_mlt')|return importlib.import_module('mlt._mlt')|g" + postFixup = '' + substituteInPlace "$dev"/lib/pkgconfig/mlt-framework-7.pc \ + --replace '=''${prefix}//' '=/' ''; + passthru = { + inherit ffmpeg; + }; + passthru.updateScript = gitUpdater { rev-prefix = "v"; }; meta = with lib; { description = "Open source multimedia framework, designed for television broadcasting"; - homepage = "https://www.mltframework.org"; - license = with licenses; [ gpl3Only gpl2Only lgpl21Only ]; - maintainers = with maintainers; [ peti ]; - platforms = platforms.linux; + homepage = "https://www.mltframework.org/"; + license = with licenses; [ lgpl21Plus gpl2Plus ]; + maintainers = [ maintainers.goibhniu ]; + platforms = platforms.unix; }; } diff --git a/nixpkgs/pkgs/development/libraries/mlt/qt-5.nix b/nixpkgs/pkgs/development/libraries/mlt/qt-5.nix deleted file mode 100644 index e993cfcf8ded..000000000000 --- a/nixpkgs/pkgs/development/libraries/mlt/qt-5.nix +++ /dev/null @@ -1,95 +0,0 @@ -{ lib -, fetchFromGitHub -, cmake -, SDL -, ffmpeg -, frei0r -, libjack2 -, libdv -, libsamplerate -, libvorbis -, libxml2 -, movit -, pkg-config -, sox -, qtbase -, qtsvg -, fftw -, vid-stab -, opencv4 -, ladspa-sdk -, gitUpdater -, ladspaPlugins -, rubberband -, mkDerivation -, which -}: - -mkDerivation rec { - pname = "mlt"; - version = "7.16.0"; - - src = fetchFromGitHub { - owner = "mltframework"; - repo = "mlt"; - rev = "v${version}"; - sha256 = "sha256-Ed9CHaeJ8Rkrvfq/dZVOn/5lhHLH7B6A1Qf2xOQfWik="; - }; - - buildInputs = [ - SDL - ffmpeg - frei0r - libjack2 - libdv - libsamplerate - libvorbis - libxml2 - movit - qtbase - qtsvg - sox - fftw - vid-stab - opencv4 - ladspa-sdk - ladspaPlugins - rubberband - ]; - - nativeBuildInputs = [ cmake which pkg-config ]; - - outputs = [ "out" "dev" ]; - - cmakeFlags = [ - # RPATH of binary /nix/store/.../bin/... contains a forbidden reference to /build/ - "-DCMAKE_SKIP_BUILD_RPATH=ON" - "-DMOD_OPENCV=ON" - ]; - - qtWrapperArgs = [ - "--prefix FREI0R_PATH : ${frei0r}/lib/frei0r-1" - "--prefix LADSPA_PATH : ${ladspaPlugins}/lib/ladspa" - ]; - - postFixup = '' - substituteInPlace "$dev"/lib/pkgconfig/mlt-framework-7.pc \ - --replace '=''${prefix}//' '=/' - ''; - - passthru = { - inherit ffmpeg; - }; - - passthru.updateScript = gitUpdater { - rev-prefix = "v"; - }; - - meta = with lib; { - description = "Open source multimedia framework, designed for television broadcasting"; - homepage = "https://www.mltframework.org/"; - license = licenses.gpl3; - maintainers = [ maintainers.goibhniu ]; - platforms = platforms.linux; - }; -} |