diff options
Diffstat (limited to 'pkgs/applications/video')
-rw-r--r-- | pkgs/applications/video/avidemux/default.nix | 201 | ||||
-rw-r--r-- | pkgs/applications/video/avidemux/wrapper.nix | 17 | ||||
-rw-r--r-- | pkgs/applications/video/avxsynth/default.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/video/bomi/default.nix | 11 | ||||
-rw-r--r-- | pkgs/applications/video/clipgrab/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/video/dvd-slideshow/default.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/video/gnash/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/video/kazam/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/video/kodi/default.nix | 16 | ||||
-rw-r--r-- | pkgs/applications/video/miro/default.nix | 4 | ||||
-rw-r--r-- | pkgs/applications/video/mpv/default.nix | 7 | ||||
-rw-r--r-- | pkgs/applications/video/shotcut/default.nix | 6 | ||||
-rw-r--r-- | pkgs/applications/video/vlc/default.nix | 5 |
13 files changed, 149 insertions, 134 deletions
diff --git a/pkgs/applications/video/avidemux/default.nix b/pkgs/applications/video/avidemux/default.nix index 177f3d1b20c9..96017a7ba19c 100644 --- a/pkgs/applications/video/avidemux/default.nix +++ b/pkgs/applications/video/avidemux/default.nix @@ -1,7 +1,9 @@ { stdenv, lib, fetchurl, cmake, pkgconfig, lndir -, zlib, gettext, libvdpau, libva, libXv, sqlite, x265 -, yasm, fribidi, gtk3, qt4 +, zlib, gettext, libvdpau, libva, libXv, sqlite +, yasm, freetype, fontconfig, fribidi, gtk3, qt4 +, withX265 ? true, x265 , withX264 ? true, x264 +, withXvid ? true, xvidcore , withLAME ? true, lame , withFAAC ? false, faac , withVorbis ? true, libvorbis @@ -11,8 +13,7 @@ , withVPX ? true, libvpx }: -stdenv.mkDerivation rec { - name = "avidemux-${version}"; +let version = "2.6.12"; src = fetchurl { @@ -20,96 +21,108 @@ stdenv.mkDerivation rec { sha256 = "0nz52yih8sff53inndkh2dba759xjzsh4b8xjww419lcpk0qp6kn"; }; - nativeBuildInputs = [ cmake pkgconfig yasm lndir ]; - buildInputs = [ zlib gettext libvdpau libva libXv sqlite x265 fribidi gtk3 qt4 ] - ++ lib.optional withX264 x264 - ++ lib.optional withLAME lame - ++ lib.optional withFAAC faac - ++ lib.optional withVorbis libvorbis - ++ lib.optional withPulse libpulseaudio - ++ lib.optional withFAAD faad2 - ++ lib.optional withOpus libopus - ++ lib.optional withVPX libvpx - ; - - enableParallelBuilding = false; - - outputs = [ "out" "cli" "gtk" "qt4" ]; - - patches = [ ./dynamic_install_dir.patch ]; - - buildCommand = '' - unpackPhase - cd "$sourceRoot" - patchPhase - - export cmakeFlags="$cmakeFlags -DAVIDEMUX_SOURCE_DIR=$(pwd)" - - function buildOutput() { - ( plugin_ui="$1" - output_dir="$2" - shift 2 - export cmakeFlags="$cmakeFlags -DPLUGIN_UI=$plugin_ui -DCMAKE_INSTALL_PREFIX=$output_dir" - for i in "$@" avidemux_plugins; do - ( cd "$i" - cmakeConfigurePhase - buildPhase - installPhase - ) - done - rm -rf avidemux_plugins/build - ) - } - - function buildUi() { - plugin_ui="$1" - output_dir="$2" - shift 2 - - # Hack to split builds properly - mkdir -p $output_dir - lndir $out $output_dir - buildOutput $plugin_ui $output_dir "$@" - } - - function fixupUi() { - output_dir="$1" - shift - - find $output_dir -lname $out\* -delete - find $output_dir -type f | while read -r f; do - rpath="$(patchelf --print-rpath $f 2>/dev/null)" || continue - new_rpath="" - IFS=':' read -ra old_rpath <<< "$rpath" - for p in "''${old_rpath[@]}"; do - new_rpath="$new_rpath:$p" - if [[ $p = $output_dir* ]]; then - new_rpath="$new_rpath:$out/''${p#$output_dir}" - fi - done - patchelf --set-rpath "$new_rpath" $f - patchelf --shrink-rpath $f + common = { + inherit version src; + + patches = [ ./dynamic_install_dir.patch ]; + + enableParallelBuilding = false; + + nativeBuildInputs = [ cmake pkgconfig yasm ]; + buildInputs = [ zlib gettext libvdpau libva libXv sqlite fribidi fontconfig freetype ] + ++ lib.optional withX264 x264 + ++ lib.optional withX265 x265 + ++ lib.optional withXvid xvidcore + ++ lib.optional withLAME lame + ++ lib.optional withFAAC faac + ++ lib.optional withVorbis libvorbis + ++ lib.optional withPulse libpulseaudio + ++ lib.optional withFAAD faad2 + ++ lib.optional withOpus libopus + ++ lib.optional withVPX libvpx + ; + + meta = { + homepage = http://fixounet.free.fr/avidemux/; + description = "Free video editor designed for simple video editing tasks"; + maintainers = with stdenv.lib.maintainers; [ viric abbradar ]; + platforms = with stdenv.lib.platforms; linux; + license = stdenv.lib.licenses.gpl2; + }; + }; + + core = stdenv.mkDerivation (common // { + name = "avidemux-${version}"; + + preConfigure = '' + cd avidemux_core + ''; + }); + + buildPlugin = args: stdenv.mkDerivation (common // { + name = "avidemux-${args.pluginName}-${version}"; + + buildInputs = (args.buildInputs or []) ++ common.buildInputs ++ [ lndir ]; + + cmakeFlags = [ "-DPLUGIN_UI=${args.pluginUi}" ]; + + passthru.isUi = args.isUi or false; + + buildCommand = '' + unpackPhase + cd "$sourceRoot" + patchPhase + + mkdir $out + lndir ${core} $out + + export cmakeFlags="$cmakeFlags -DAVIDEMUX_SOURCE_DIR=$(pwd)" + + for i in ${toString (args.buildDirs or [])} avidemux_plugins; do + ( cd "$i" + cmakeConfigurePhase + buildPhase + installPhase + ) done - } - - buildOutput COMMON $out avidemux_core - buildOutput SETTINGS $out - buildUi CLI $cli avidemux/cli - buildUi GTK $gtk avidemux/gtk - buildUi QT4 $qt4 avidemux/qt4 - - fixupPhase - - fixupUi $cli - fixupUi $gtk - fixupUi $qt4 - ''; - - meta = { - homepage = http://fixounet.free.fr/avidemux/; - description = "Free video editor designed for simple video editing tasks"; - maintainers = with stdenv.lib.maintainers; [ viric abbradar ]; - platforms = with stdenv.lib.platforms; linux; - license = stdenv.lib.licenses.gpl2; + + fixupPhase + ''; + }); + +in { + avidemux_core = core; + + avidemux_cli = buildPlugin { + pluginName = "cli"; + pluginUi = "CLI"; + isUi = true; + buildDirs = [ "avidemux/cli" ]; + }; + + avidemux_qt4 = buildPlugin { + pluginName = "qt4"; + buildInputs = [ qt4 ]; + pluginUi = "QT4"; + isUi = true; + buildDirs = [ "avidemux/qt4" ]; + }; + + avidemux_gtk = buildPlugin { + pluginName = "gtk"; + buildInputs = [ gtk3 ]; + pluginUi = "GTK"; + isUi = true; + buildDirs = [ "avidemux/gtk" ]; + }; + + avidemux_common = buildPlugin { + pluginName = "common"; + pluginUi = "COMMON"; + }; + + avidemux_settings = buildPlugin { + pluginName = "settings"; + pluginUi = "SETTINGS"; }; } diff --git a/pkgs/applications/video/avidemux/wrapper.nix b/pkgs/applications/video/avidemux/wrapper.nix index ad41f56d39d2..1d1c66cb9fe5 100644 --- a/pkgs/applications/video/avidemux/wrapper.nix +++ b/pkgs/applications/video/avidemux/wrapper.nix @@ -1,15 +1,18 @@ -{ buildEnv, avidemux, makeWrapper +{ buildEnv, avidemux_unwrapped, makeWrapper # GTK version is broken upstream, see https://bugzilla.redhat.com/show_bug.cgi?id=1244340 , withUi ? "qt4" }: -let - ui = builtins.getAttr withUi avidemux; +let ui = builtins.getAttr "avidemux_${withUi}" avidemux_unwrapped; in -in buildEnv { - name = "avidemux-${withUi}-" + avidemux.version; +assert ui.isUi; - paths = [ avidemux ui ]; +buildEnv { + name = "avidemux-${withUi}-" + ui.version; + + paths = [ ui avidemux_unwrapped.avidemux_common avidemux_unwrapped.avidemux_settings ]; + + ignoreCollisions = true; buildInputs = [ makeWrapper ]; @@ -26,4 +29,6 @@ in buildEnv { wrapProgram $i --set ADM_ROOT_DIR $out done ''; + + meta = ui.meta; } diff --git a/pkgs/applications/video/avxsynth/default.nix b/pkgs/applications/video/avxsynth/default.nix index d8ec715a38cb..06dcaf31b443 100644 --- a/pkgs/applications/video/avxsynth/default.nix +++ b/pkgs/applications/video/avxsynth/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { "--enable-subtitle" "--enable-ffms2" (enableFeature avxeditSupport "avxedit") - "--with-jpeg=${libjpeg}/lib" + "--with-jpeg=${libjpeg.out}/lib" ]; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/pkgs/applications/video/bomi/default.nix b/pkgs/applications/video/bomi/default.nix index f1a999e5554e..f9301781fc10 100644 --- a/pkgs/applications/video/bomi/default.nix +++ b/pkgs/applications/video/bomi/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, perl, python, which, makeWrapper +{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, perl, python, which, makeQtWrapper , libX11, libxcb, mesa , qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras , ffmpeg @@ -27,9 +27,6 @@ assert pulseSupport -> libpulseaudio != null; assert cddaSupport -> libcdda != null; assert youtubeSupport -> youtube-dl != null; -let qtPath = makeSearchPath "lib/qt5/qml" [ qtdeclarative qtquickcontrols ]; -in - stdenv.mkDerivation rec { name = "bomi-${version}"; version = "0.9.11"; @@ -56,6 +53,7 @@ stdenv.mkDerivation rec { libvdpau libva libbluray + qtdeclarative qtquickcontrols ] ++ optional jackSupport jack @@ -74,8 +72,7 @@ stdenv.mkDerivation rec { ''; postInstall = '' - wrapProgram $out/bin/bomi \ - --set QML2_IMPORT_PATH ${qtPath} \ + wrapQtProgram $out/bin/bomi \ ${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"} ''; @@ -87,7 +84,7 @@ stdenv.mkDerivation rec { ++ optional cddaSupport "--enable-cdda" ; - nativeBuildInputs = [ pkgconfig perl python which qttools makeWrapper ]; + nativeBuildInputs = [ pkgconfig perl python which qttools makeQtWrapper ]; enableParallelBuilding = true; diff --git a/pkgs/applications/video/clipgrab/default.nix b/pkgs/applications/video/clipgrab/default.nix index 961471cd9b36..e634a0caa3f4 100644 --- a/pkgs/applications/video/clipgrab/default.nix +++ b/pkgs/applications/video/clipgrab/default.nix @@ -14,8 +14,8 @@ stdenv.mkDerivation rec { postPatch = stdenv.lib.optionalString (ffmpeg != null) '' substituteInPlace converter_ffmpeg.cpp \ - --replace '"ffmpeg"' '"${ffmpeg}/bin/ffmpeg"' \ - --replace '"ffmpeg ' '"${ffmpeg}/bin/ffmpeg ' + --replace '"ffmpeg"' '"${ffmpeg.bin}/bin/ffmpeg"' \ + --replace '"ffmpeg ' '"${ffmpeg.bin}/bin/ffmpeg ' ''; configurePhase = '' diff --git a/pkgs/applications/video/dvd-slideshow/default.nix b/pkgs/applications/video/dvd-slideshow/default.nix index fe95c2c6d7d8..040a7a2e7a69 100644 --- a/pkgs/applications/video/dvd-slideshow/default.nix +++ b/pkgs/applications/video/dvd-slideshow/default.nix @@ -4,7 +4,7 @@ let wrapper = writeScript "dvd-slideshow.sh" '' #!/bin/bash # wrapper script for dvd-slideshow programs - export PATH=${cdrtools}/bin:${dvdauthor}/bin:${ffmpeg}/bin:${imagemagick}/bin:${lame}/bin:${mjpegtools}/bin:${sox}/bin:${transcode}/bin:${vorbis-tools}/bin:$PATH + export PATH=${cdrtools}/bin:${dvdauthor}/bin:${ffmpeg.bin}/bin:${imagemagick}/bin:${lame}/bin:${mjpegtools}/bin:${sox}/bin:${transcode}/bin:${vorbis-tools}/bin:$PATH dir=`dirname "$0"` exe=`basename "$0"` diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix index f53ce93328bf..0200b0c70f4e 100644 --- a/pkgs/applications/video/gnash/default.nix +++ b/pkgs/applications/video/gnash/default.nix @@ -34,7 +34,7 @@ stdenv.mkDerivation rec { for lib in $libs; do echo -n "$lib " >> macros/libslist done - echo -n "${stdenv.glibc}/lib" >> macros/libslist + echo -n "${stdenv.glibc.out}/lib" >> macros/libslist # Make sure to honor $TMPDIR, for chroot builds. for file in configure gui/Makefile.in Makefile.in @@ -65,7 +65,7 @@ stdenv.mkDerivation rec { preConfigure = '' configureFlags=" \ - --with-sdl-incl=${SDL}/include/SDL \ + --with-sdl-incl=${SDL.dev}/include/SDL \ --with-npapi-plugindir=$out/plugins \ --enable-media=gst \ --without-gconf diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix index 7217f4746c8f..22b47c532e5f 100644 --- a/pkgs/applications/video/kazam/default.nix +++ b/pkgs/applications/video/kazam/default.nix @@ -34,9 +34,9 @@ python3Packages.buildPythonApplication rec { preFixup = '' wrapProgram $out/bin/kazam \ --prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \ - --prefix LD_LIBRARY_PATH ":" "${gtk3}/lib:${gst_all_1.gstreamer}/lib:${keybinder}/lib" \ + --prefix LD_LIBRARY_PATH ":" "${gtk3.out}/lib:${gst_all_1.gstreamer}/lib:${keybinder}/lib" \ --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \ - --prefix XDG_DATA_DIRS : "${gtk3}/share" \ + --prefix XDG_DATA_DIRS : "${gtk3.out}/share" \ --set GST_REGISTRY "/tmp/kazam.gstreamer.registry"; ''; diff --git a/pkgs/applications/video/kodi/default.nix b/pkgs/applications/video/kodi/default.nix index c2b3914f8502..6b21f0f65165 100644 --- a/pkgs/applications/video/kodi/default.nix +++ b/pkgs/applications/video/kodi/default.nix @@ -1,7 +1,7 @@ { stdenv, lib, fetchurl, makeWrapper , pkgconfig, cmake, gnumake, yasm, pythonFull , boost, avahi, libdvdcss, lame, autoreconfHook -, gettext, pcre, yajl, fribidi, which +, gettext, pcre-cpp, yajl, fribidi, which , openssl, gperf, tinyxml2, taglib, libssh, swig, jre , libX11, xproto, inputproto, libxml2 , libXt, libXmu, libXext, xextproto @@ -56,7 +56,7 @@ in stdenv.mkDerivation rec { makeWrapper libxml2 gnutls pkgconfig cmake gnumake yasm pythonFull boost libmicrohttpd autoreconfHook - gettext pcre yajl fribidi libva + gettext pcre-cpp yajl fribidi libva openssl gperf tinyxml2 taglib libssh swig jre libX11 xproto inputproto which libXt libXmu libXext xextproto @@ -110,15 +110,9 @@ in stdenv.mkDerivation rec { --prefix PATH ":" "${pythonFull}/bin" \ --prefix PATH ":" "${glxinfo}/bin" \ --prefix PATH ":" "${xdpyinfo}/bin" \ - --prefix LD_LIBRARY_PATH ":" "${curl}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${systemd}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${libmad}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${libvdpau}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${libcec}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${libcec_platform}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${libass}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${rtmpdump}/lib" \ - --prefix LD_LIBRARY_PATH ":" "${SDL2}/lib" + --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath + [ curl systemd libmad libvdpau libcec libcec_platform rtmpdump libass SDL2 ] + }" done ''; diff --git a/pkgs/applications/video/miro/default.nix b/pkgs/applications/video/miro/default.nix index 66f249b8e4a5..07d60fe4764b 100644 --- a/pkgs/applications/video/miro/default.nix +++ b/pkgs/applications/video/miro/default.nix @@ -33,7 +33,7 @@ buildPythonApplication rec { sed -i -e 's|/usr/bin/||' -e 's|/usr||' \ -e 's/BUILD_TIME[^,]*/BUILD_TIME=0/' setup.py - sed -i -e 's|default="/usr/bin/ffmpeg"|default="${ffmpeg}/bin/ffmpeg"|' \ + sed -i -e 's|default="/usr/bin/ffmpeg"|default="${ffmpeg.bin}/bin/ffmpeg"|' \ plat/options.py sed -i -e 's|/usr/share/miro/themes|'"$out/share/miro/themes"'|' \ @@ -64,7 +64,7 @@ buildPythonApplication rec { mv "$out/bin/miro.real" "$out/bin/miro" wrapProgram "$out/bin/miro" \ --prefix GST_PLUGIN_SYSTEM_PATH : "$GST_PLUGIN_SYSTEM_PATH" \ - --prefix GIO_EXTRA_MODULES : "${glib_networking}/lib/gio/modules" \ + --prefix GIO_EXTRA_MODULES : "${glib_networking.out}/lib/gio/modules" \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH:$out/share" ''; diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix index 7fb62a5e1acc..dd5f25d3a6c6 100644 --- a/pkgs/applications/video/mpv/default.nix +++ b/pkgs/applications/video/mpv/default.nix @@ -1,5 +1,6 @@ { stdenv, fetchurl, docutils, makeWrapper, perl, pkgconfig, python, which , ffmpeg, freefont_ttf, freetype, libass, libpthreadstubs, lua, lua5_sockets +, libuchardet, rubberband , x11Support ? true, libX11 ? null, libXext ? null, mesa ? null, libXxf86vm ? null , xineramaSupport ? true, libXinerama ? null , xvSupport ? true, libXv ? null @@ -59,11 +60,11 @@ in stdenv.mkDerivation rec { name = "mpv-${version}"; - version = "0.16.0"; + version = "0.17.0"; src = fetchurl { url = "https://github.com/mpv-player/mpv/archive/v${version}.tar.gz"; - sha256 = "1fiqxx85s418qynq2fp0v7cpzrz8j285hwmc4fqgn5ny1vg1jdpw"; + sha256 = "0vms3viwqcwl1mrgmf2yy4c69fvv7xpbkyrl693l6zpwynqd4b30"; }; patchPhase = '' @@ -89,7 +90,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ docutils makeWrapper perl pkgconfig python which ]; buildInputs = [ - ffmpeg freetype libass libpthreadstubs lua lua5_sockets + ffmpeg freetype libass libpthreadstubs lua lua5_sockets libuchardet rubberband ] ++ optionals x11Support [ libX11 libXext mesa libXxf86vm ] ++ optional alsaSupport alsaLib ++ optional xvSupport libXv diff --git a/pkgs/applications/video/shotcut/default.nix b/pkgs/applications/video/shotcut/default.nix index 74f9c1604b22..d2400475a0b3 100644 --- a/pkgs/applications/video/shotcut/default.nix +++ b/pkgs/applications/video/shotcut/default.nix @@ -11,7 +11,11 @@ stdenv.mkDerivation rec { buildInputs = [ SDL frei0r gettext makeWrapper mlt pkgconfig qtbase ]; - configurePhase = "qmake PREFIX=$out"; + configurePhase = '' + runHook preConfigure + qmake PREFIX=$out + runHook postConfigure + ''; postInstall = '' mkdir -p $out/share/shotcut diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix index a84f24a303a2..a23bb9a1a942 100644 --- a/pkgs/applications/video/vlc/default.nix +++ b/pkgs/applications/video/vlc/default.nix @@ -9,13 +9,13 @@ , libvdpau, libsamplerate, live555, fluidsynth , onlyLibVLC ? false , qt4 ? null -, withQt5 ? false, qtbase ? null +, withQt5 ? false, qtbase ? null, qtx11extras ? null , jackSupport ? false }: with stdenv.lib; -assert (withQt5 -> qtbase != null); +assert (withQt5 -> qtbase != null && qtx11extras != null); assert (!withQt5 -> qt4 != null); stdenv.mkDerivation rec { @@ -43,6 +43,7 @@ stdenv.mkDerivation rec { fluidsynth ] ++ [(if withQt5 then qtbase else qt4)] + ++ optional withQt5 qtx11extras ++ optional jackSupport libjack2; nativeBuildInputs = [ pkgconfig ]; |