diff options
author | Alyssa Ross <hi@alyssa.is> | 2020-05-12 14:45:39 +0000 |
---|---|---|
committer | Alyssa Ross <hi@alyssa.is> | 2020-05-12 14:56:01 +0000 |
commit | eb7dadee9c0f903f1152f8dd4165453bfa48ccf4 (patch) | |
tree | a6bd66dcbec895aae167465672af08a1ca70f089 /nixpkgs/pkgs/applications/video | |
parent | 3879b925f5dae3a0eb5c98b10c1ac5a0e4d729a3 (diff) | |
parent | 683c68232e91f76386db979c461d8fbe2a018782 (diff) | |
download | nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.gz nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.bz2 nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.lz nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.xz nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.tar.zst nixlib-eb7dadee9c0f903f1152f8dd4165453bfa48ccf4.zip |
Merge commit '683c68232e91f76386db979c461d8fbe2a018782'
Diffstat (limited to 'nixpkgs/pkgs/applications/video')
18 files changed, 268 insertions, 125 deletions
diff --git a/nixpkgs/pkgs/applications/video/bomi/default.nix b/nixpkgs/pkgs/applications/video/bomi/default.nix index 7ba37936c686..d812ac488742 100644 --- a/nixpkgs/pkgs/applications/video/bomi/default.nix +++ b/nixpkgs/pkgs/applications/video/bomi/default.nix @@ -1,7 +1,7 @@ -{ config, stdenv, fetchFromGitHub +{ mkDerivation, config, stdenv, fetchFromGitHub , fetchpatch, pkgconfig, perl, python, which , libX11, libxcb, libGLU, libGL -, qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras, qmake, makeWrapper +, qtbase, qtdeclarative, qtquickcontrols, qttools, qtx11extras, qmake , libchardet , ffmpeg @@ -29,7 +29,7 @@ assert pulseSupport -> libpulseaudio != null; assert cddaSupport -> libcdda != null; assert youtubeSupport -> youtube-dl != null; -stdenv.mkDerivation rec { +mkDerivation rec { pname = "bomi"; version = "0.9.11"; @@ -90,8 +90,9 @@ stdenv.mkDerivation rec { patchShebangs build-mpv ''; + dontWrapQtApps = true; postInstall = '' - wrapProgram $out/bin/bomi \ + wrapQtApp $out/bin/bomi \ ${optionalString youtubeSupport "--prefix PATH ':' '${youtube-dl}/bin'"} ''; @@ -105,7 +106,7 @@ stdenv.mkDerivation rec { ++ optional cddaSupport "--enable-cdda" ; - nativeBuildInputs = [ makeWrapper pkgconfig perl python which qttools qmake ]; + nativeBuildInputs = [ pkgconfig perl python which qttools qmake ]; meta = with stdenv.lib; { description = "Powerful and easy-to-use multimedia player"; diff --git a/nixpkgs/pkgs/applications/video/catt/default.nix b/nixpkgs/pkgs/applications/video/catt/default.nix index 027c156be35d..b3df290bfb09 100644 --- a/nixpkgs/pkgs/applications/video/catt/default.nix +++ b/nixpkgs/pkgs/applications/video/catt/default.nix @@ -8,11 +8,11 @@ buildPythonApplication rec { pname = "catt"; - version = "0.10.3"; + version = "0.11.0"; src = fetchPypi { inherit pname version; - sha256 = "08rjimcy9n7nvh4dz9693gjmkq6kaq5pq1nmjjsdrb7vb89yl53i"; + hash = "sha256:1vq1wg79b7855za6v6bsfgypm0v3b4wakap4rash45mhzbgjj0kq"; }; propagatedBuildInputs = [ diff --git a/nixpkgs/pkgs/applications/video/ffmpeg-normalize/default.nix b/nixpkgs/pkgs/applications/video/ffmpeg-normalize/default.nix index 4fad80c27ab1..c2259ce83794 100644 --- a/nixpkgs/pkgs/applications/video/ffmpeg-normalize/default.nix +++ b/nixpkgs/pkgs/applications/video/ffmpeg-normalize/default.nix @@ -7,11 +7,11 @@ buildPythonApplication rec { pname = "ffmpeg-normalize"; - version = "1.15.8"; + version = "1.19.0"; src = fetchPypi { inherit pname version; - sha256 = "01lx1ki1iglg1dz6x99ciqx5zqlbj7hvfb12ga9m68ypjm0fcphl"; + sha256 = "18dpck9grnr3wgbjvdh4mjlx0zfwcxpy4rnpmc39in0yk3w7li2x"; }; propagatedBuildInputs = [ ffmpeg tqdm ]; diff --git a/nixpkgs/pkgs/applications/video/jftui/default.nix b/nixpkgs/pkgs/applications/video/jftui/default.nix index 82774ada09eb..eb572bac4e34 100644 --- a/nixpkgs/pkgs/applications/video/jftui/default.nix +++ b/nixpkgs/pkgs/applications/video/jftui/default.nix @@ -1,32 +1,27 @@ -{ stdenv, fetchFromGitHub, fetchpatch, clang, - pkg-config, curl, mpv, yajl }: +{ stdenv +, fetchFromGitHub +, pkg-config +, curl +, mpv +, yajl +}: stdenv.mkDerivation rec { pname = "jftui"; - version = "0.2.2"; + version = "0.3.0"; src = fetchFromGitHub { owner = "Aanok"; repo = pname; rev = "v${version}"; - sha256 = "0g93w8ahyh2v0cv2fyj5a7v6qyznavwk0dcxx1qw4kczdgmlxnkx"; + sha256 = "1az737q5i24ylvkx4g3xlq8k48ni91nz5hhbif97g4nlhwl5cqb6"; }; - patches = [ - # Remove this patch with next version - (fetchpatch { - name = "curl-capability-check-fix"; - url = "https://github.com/Aanok/jftui/commit/d63996b8bc0d2ac4b04c5de4169bc7f8ec9b2a30.patch"; - sha256 = "1d595mkzgx3carq2cykxpvmf5klgdlyaq94fk9wj8812yswqlsr7"; - }) - ]; - nativeBuildInputs = [ pkg-config ]; buildInputs = [ - clang curl mpv yajl diff --git a/nixpkgs/pkgs/applications/video/kodi/default.nix b/nixpkgs/pkgs/applications/video/kodi/default.nix index d13dd3201a32..e4da20c84879 100644 --- a/nixpkgs/pkgs/applications/video/kodi/default.nix +++ b/nixpkgs/pkgs/applications/video/kodi/default.nix @@ -4,22 +4,20 @@ , boost, avahi, lame, autoreconfHook , gettext, pcre-cpp, yajl, fribidi, which , openssl, gperf, tinyxml2, taglib, libssh, swig, jre -, libX11, xorgproto, libxml2 -, libXt, libXmu, libXext -, libXinerama, libXrandr -, libXtst, libXfixes, systemd +, libxml2, systemd , alsaLib, libGLU, libGL, glew, fontconfig, freetype, ftgl , libjpeg, libpng, libtiff , libmpeg2, libsamplerate, libmad , libogg, libvorbis, flac, libxslt , lzo, libcdio, libmodplug, libass, libbluray , sqlite, libmysqlclient, nasm, gnutls, libva, libdrm -, curl, bzip2, zip, unzip, glxinfo, xdpyinfo +, curl, bzip2, zip, unzip, glxinfo , libcec, libcec_platform, dcadec, libuuid , libcrossguid, libmicrohttpd -, bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1, libXdmcp +, bluez, doxygen, giflib, glib, harfbuzz, lcms2, libidn, libpthreadstubs, libtasn1 , libplist, p11-kit, zlib, flatbuffers, fmt, fstrcmp, rapidjson , lirc +, x11Support ? true, libX11, xorgproto, libXt, libXmu, libXext, libXinerama, libXrandr, libXtst, libXfixes, xdpyinfo, libXdmcp , dbusSupport ? true, dbus ? null , joystickSupport ? true, cwiid ? null , nfsSupport ? true, libnfs ? null @@ -27,11 +25,12 @@ , rtmpSupport ? true, rtmpdump ? null , sambaSupport ? true, samba ? null , udevSupport ? true, udev ? null -, usbSupport ? false, libusb ? null +, usbSupport ? false, libusb-compat-0_1 ? null , vdpauSupport ? true, libvdpau ? null , useWayland ? false, wayland ? null, wayland-protocols ? null , waylandpp ? null, libxkbcommon ? null , useGbm ? false, mesa ? null, libinput ? null +, buildPackages }: assert dbusSupport -> dbus != null; @@ -40,7 +39,7 @@ assert pulseSupport -> libpulseaudio != null; assert rtmpSupport -> rtmpdump != null; assert sambaSupport -> samba != null; assert udevSupport -> udev != null; -assert usbSupport -> libusb != null && ! udevSupport; # libusb won't be used if udev is avaliable +assert usbSupport -> libusb-compat-0_1 != null && ! udevSupport; # libusb-compat-0_1 won't be used if udev is avaliable assert vdpauSupport -> libvdpau != null; assert useWayland -> wayland != null && wayland-protocols != null && waylandpp != null && libxkbcommon != null; @@ -94,10 +93,18 @@ let sha256 = "1krsjlr949iy5l6ljxancza1yi6w1annxc5s6k283i9mb15qy8cy"; preConfigure = '' cp ${kodi_src}/tools/depends/target/ffmpeg/{CMakeLists.txt,*.cmake} . + sed -i 's/ --cpu=''${CPU}//' CMakeLists.txt + sed -i 's/--strip=''${CMAKE_STRIP}/--strip=''${CMAKE_STRIP} --ranlib=''${CMAKE_RANLIB}/' CMakeLists.txt ''; - buildInputs = [ gnutls libidn libtasn1 p11-kit zlib libva ] + cmakeFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ + "-DCROSSCOMPILING=ON" + "-DCPU=${stdenv.hostPlatform.parsed.cpu.name}" + "-DOS=${stdenv.hostPlatform.parsed.kernel.name}" + "-DPKG_CONFIG_EXECUTABLE=pkgconfig" + ]; + buildInputs = [ libidn libtasn1 p11-kit zlib libva ] ++ lib.optional vdpauSupport libvdpau; - nativeBuildInputs = [ cmake nasm pkgconfig ]; + nativeBuildInputs = [ cmake nasm pkgconfig gnutls ]; }; # We can build these externally but FindLibDvd.cmake forces us to build it @@ -152,38 +159,42 @@ in stdenv.mkDerivation { buildInputs = [ gnutls libidn libtasn1 nasm p11-kit - libxml2 yasm python2Packages.python + libxml2 python2Packages.python boost libmicrohttpd gettext pcre-cpp yajl fribidi libva libdrm - openssl gperf tinyxml2 taglib libssh swig jre - libX11 xorgproto libXt libXmu libXext - libXinerama libXrandr libXtst libXfixes - alsaLib libGL libGLU glew fontconfig freetype ftgl + openssl gperf tinyxml2 taglib libssh + alsaLib libGL libGLU fontconfig freetype ftgl libjpeg libpng libtiff libmpeg2 libsamplerate libmad libogg libvorbis flac libxslt systemd lzo libcdio libmodplug libass libbluray sqlite libmysqlclient avahi lame - curl bzip2 zip unzip glxinfo xdpyinfo + curl bzip2 zip unzip glxinfo libcec libcec_platform dcadec libuuid libgcrypt libgpgerror libunistring - libcrossguid cwiid libplist - bluez giflib glib harfbuzz lcms2 libpthreadstubs libXdmcp + libcrossguid libplist + bluez giflib glib harfbuzz lcms2 libpthreadstubs ffmpeg flatbuffers fmt fstrcmp rapidjson lirc # libdvdcss libdvdnav libdvdread ] + ++ lib.optional x11Support [ + libX11 xorgproto libXt libXmu libXext libXdmcp + libXinerama libXrandr libXtst libXfixes + ] ++ lib.optional dbusSupport dbus - ++ lib.optionals joystickSupport [ cwiid ] + ++ lib.optional joystickSupport cwiid ++ lib.optional nfsSupport libnfs ++ lib.optional pulseSupport libpulseaudio ++ lib.optional rtmpSupport rtmpdump ++ lib.optional sambaSupport samba ++ lib.optional udevSupport udev - ++ lib.optional usbSupport libusb + ++ lib.optional usbSupport libusb-compat-0_1 ++ lib.optional vdpauSupport libvdpau ++ lib.optionals useWayland [ - wayland waylandpp + wayland + waylandpp.dev + wayland-protocols # Not sure why ".dev" is needed here, but CMake doesn't find libxkbcommon otherwise libxkbcommon.dev ] @@ -200,7 +211,15 @@ in stdenv.mkDerivation { which pkgconfig gnumake autoconf automake libtool # still needed for some components. Check if that is the case with 19.0 - ] ++ lib.optionals useWayland [ wayland-protocols ]; + jre yasm gettext python2Packages.python flatbuffers + + # for TexturePacker + giflib zlib libpng libjpeg lzo + ] ++ lib.optionals useWayland [ wayland-protocols waylandpp.bin ]; + + depsBuildBuild = [ + buildPackages.stdenv.cc + ]; cmakeFlags = [ "-Dlibdvdcss_URL=${libdvdcss.src}" @@ -210,9 +229,14 @@ in stdenv.mkDerivation { "-DENABLE_EVENTCLIENTS=ON" "-DENABLE_INTERNAL_CROSSGUID=OFF" "-DENABLE_OPTICAL=ON" + "-DLIRC_DEVICE=/run/lirc/lircd" + "-DSWIG_EXECUTABLE=${buildPackages.swig}/bin/swig" + "-DFLATBUFFERS_FLATC_EXECUTABLE=${buildPackages.flatbuffers}/bin/flatc" + "-DPYTHON_EXECUTABLE=${buildPackages.python2Packages.python}/bin/python" ] ++ lib.optional useWayland [ "-DCORE_PLATFORM_NAME=wayland" "-DWAYLAND_RENDER_SYSTEM=gl" + "-DWAYLANDPP_SCANNER=${buildPackages.waylandpp}/bin/wayland-scanner++" ] ++ lib.optional useGbm [ "-DCORE_PLATFORM_NAME=gbm" "-DGBM_RENDER_SYSTEM=gles" @@ -224,6 +248,16 @@ in stdenv.mkDerivation { # I'm guessing there is a thing waiting to time out doCheck = false; + # Need these tools on the build system when cross compiling, + # hacky, but have found no other way. + preConfigure = lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' + CXX=c++ LD=ld make -C tools/depends/native/JsonSchemaBuilder + cmakeFlags+=" -DWITH_JSONSCHEMABUILDER=$PWD/tools/depends/native/JsonSchemaBuilder/bin" + + CXX=c++ LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker + cmakeFlags+=" -DWITH_TEXTUREPACKER=$PWD/tools/depends/native/TexturePacker/bin" + ''; + postPatch = '' substituteInPlace xbmc/platform/linux/LinuxTimezone.cpp \ --replace 'usr/share/zoneinfo' 'etc/zoneinfo' @@ -232,9 +266,11 @@ in stdenv.mkDerivation { postInstall = '' for p in $(ls $out/bin/) ; do wrapProgram $out/bin/$p \ - --prefix PATH ":" "${lib.makeBinPath [ python2Packages.python glxinfo xdpyinfo ]}" \ + --prefix PATH ":" "${lib.makeBinPath ([ python2Packages.python glxinfo ] ++ lib.optional x11Support xdpyinfo)}" \ --prefix LD_LIBRARY_PATH ":" "${lib.makeLibraryPath - ([ curl systemd libmad libvdpau libcec libcec_platform rtmpdump libass ] ++ lib.optional nfsSupport libnfs)}" + ([ curl systemd libmad libvdpau libcec libcec_platform libass ] + ++ lib.optional nfsSupport libnfs + ++ lib.optional rtmpSupport rtmpdump)}" done substituteInPlace $out/share/xsessions/kodi.desktop \ diff --git a/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix b/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix index 2e97505f3f16..7db27888782a 100644 --- a/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix +++ b/nixpkgs/pkgs/applications/video/mkvtoolnix/default.nix @@ -13,13 +13,13 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "mkvtoolnix"; - version = "45.0.0"; + version = "46.0.0"; src = fetchFromGitLab { owner = "mbunkus"; repo = "mkvtoolnix"; rev = "release-${version}"; - sha256 = "1m9ih6bgl3nrjgr0rxvfbvw8s9ska7ps1ypc2ynvyxba4gjkkyyf"; + sha256 = "1vyfvpsllnzhzaaz3s9lqlnkmnqchyhxj2d47bfyizs982r5kg24"; }; nativeBuildInputs = [ diff --git a/nixpkgs/pkgs/applications/video/mpv/scripts/convert.nix b/nixpkgs/pkgs/applications/video/mpv/scripts/convert.nix index a89b4ec0889a..ce0695203328 100644 --- a/nixpkgs/pkgs/applications/video/mpv/scripts/convert.nix +++ b/nixpkgs/pkgs/applications/video/mpv/scripts/convert.nix @@ -2,7 +2,8 @@ , yad, mkvtoolnix-cli, libnotify }: stdenv.mkDerivation { - name = "mpv-convert-script-2016-03-18.lua"; + pname = "mpv-convert-script"; + version = "2016-03-18"; src = fetchgit { url = "https://gist.github.com/Zehkul/25ea7ae77b30af959be0"; rev = "f95cee43e390e843a47e8ec9d1711a12a8cd343d"; @@ -24,8 +25,10 @@ stdenv.mkDerivation { dontBuild = true; installPhase = '' - cp convert_script.lua $out + mkdir -p $out/share/mpv/scripts + cp convert_script.lua $out/share/mpv/scripts ''; + passthru.scriptName = "convert_script.lua"; meta = { description = "Convert parts of a video while you are watching it in mpv"; diff --git a/nixpkgs/pkgs/applications/video/mpv/scripts/mpris.nix b/nixpkgs/pkgs/applications/video/mpv/scripts/mpris.nix index e318c7afa676..f19db554d045 100644 --- a/nixpkgs/pkgs/applications/video/mpv/scripts/mpris.nix +++ b/nixpkgs/pkgs/applications/video/mpv/scripts/mpris.nix @@ -1,28 +1,39 @@ -{ stdenv, fetchFromGitHub, pkgconfig, gobject-introspection, mpv }: +{ stdenv, fetchpatch, fetchFromGitHub, pkgconfig, glib, mpv }: stdenv.mkDerivation rec { - name = "mpv-mpris-${version}.so"; - version = "0.4"; + pname = "mpv-mpris"; + version = "0.5"; src = fetchFromGitHub { owner = "hoyon"; repo = "mpv-mpris"; rev = version; - sha256 = "1fr3jvja8s2gdpx8qyk9r17977flms3qpm8zci62nd9r5wjdvr5i"; + sha256 = "07p6li5z38pkfd40029ag2jqx917vyl3ng5p2i4v5a0af14slcnk"; }; + patches = [ + # Enables to "make SCRIPTS_DIR=... install" https://github.com/hoyon/mpv-mpris/pull/38 + (fetchpatch { + url = "https://github.com/hoyon/mpv-mpris/commit/f1482350868bf20e4575f923943ec998469b255e.patch"; + sha256 = "1lqy867wpmj6hv3zgi6g679a7x3dv5skpw24hwd05b28galnyd4l"; + }) + ]; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ gobject-introspection mpv ]; + buildInputs = [ glib mpv ]; - installPhase = '' - cp mpris.so $out - ''; + installFlags = [ "SCRIPTS_DIR=$(out)/share/mpv/scripts" ]; + + # Otherwise, the shared object isn't `strip`ped. See: + # https://discourse.nixos.org/t/debug-why-a-derivation-has-a-reference-to-gcc/7009 + stripDebugList = [ "share/mpv/scripts" ]; + passthru.scriptName = "mpris.so"; meta = with stdenv.lib; { description = "MPRIS plugin for mpv"; homepage = "https://github.com/hoyon/mpv-mpris"; license = licenses.mit; + platforms = platforms.linux; maintainers = with maintainers; [ jfrankenau ]; }; } diff --git a/nixpkgs/pkgs/applications/video/mpv/wrapper.nix b/nixpkgs/pkgs/applications/video/mpv/wrapper.nix index 624c06414fd3..53def80e7dab 100644 --- a/nixpkgs/pkgs/applications/video/mpv/wrapper.nix +++ b/nixpkgs/pkgs/applications/video/mpv/wrapper.nix @@ -9,6 +9,6 @@ symlinkJoin { postBuild = '' wrapProgram $out/bin/mpv \ - --add-flags "${stdenv.lib.concatMapStringsSep " " (x: "--script=" + x) scripts}" + --add-flags "${stdenv.lib.concatMapStringsSep " " (x: "--script=${x}/share/mpv/scripts/${x.scriptName}") scripts}" ''; } diff --git a/nixpkgs/pkgs/applications/video/obs-studio/0001-find-ObsPluginHelpers.cmake-in-the-obs-src.patch b/nixpkgs/pkgs/applications/video/obs-studio/0001-find-ObsPluginHelpers.cmake-in-the-obs-src.patch deleted file mode 100644 index b642fbc3ada9..000000000000 --- a/nixpkgs/pkgs/applications/video/obs-studio/0001-find-ObsPluginHelpers.cmake-in-the-obs-src.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 5798a2691467604e89fd9fb1cd5289ebd1b1d7b8 Mon Sep 17 00:00:00 2001 -From: Graham Christensen <graham@grahamc.com> -Date: Fri, 20 Mar 2020 22:32:02 -0400 -Subject: [PATCH] find ObsPluginHelpers.cmake in the obs src - ---- - external/FindLibObs.cmake | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/external/FindLibObs.cmake b/external/FindLibObs.cmake -index ab0a3de..53a46b8 100644 ---- a/external/FindLibObs.cmake -+++ b/external/FindLibObs.cmake -@@ -95,7 +95,7 @@ if(LIBOBS_FOUND) - - set(LIBOBS_INCLUDE_DIRS ${LIBOBS_INCLUDE_DIR} ${W32_PTHREADS_INCLUDE_DIR}) - set(LIBOBS_LIBRARIES ${LIBOBS_LIB} ${W32_PTHREADS_LIB}) -- include(${LIBOBS_INCLUDE_DIR}/../cmake/external/ObsPluginHelpers.cmake) -+ include(${OBS_SRC}/cmake/external/ObsPluginHelpers.cmake) - - # allows external plugins to easily use/share common dependencies that are often included with libobs (such as FFmpeg) - if(NOT DEFINED INCLUDED_LIBOBS_CMAKE_MODULES) --- -2.25.0 - diff --git a/nixpkgs/pkgs/applications/video/obs-studio/v4l2sink.nix b/nixpkgs/pkgs/applications/video/obs-studio/v4l2sink.nix index 19cfbf14076e..97eae68b6e72 100644 --- a/nixpkgs/pkgs/applications/video/obs-studio/v4l2sink.nix +++ b/nixpkgs/pkgs/applications/video/obs-studio/v4l2sink.nix @@ -1,42 +1,55 @@ -{ stdenv, fetchFromGitHub -, cmake, pkgconfig, wrapQtAppsHook -, obs-studio }: +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, cmake +, qtbase +, obs-studio +}: -stdenv.mkDerivation { - pname = "obs-v4l2sink-unstable"; - version = "20181012"; +stdenv.mkDerivation rec { + pname = "obs-v4l2sink"; + version = "0.1.0"; src = fetchFromGitHub { owner = "CatxFish"; repo = "obs-v4l2sink"; - rev = "1ec3c8ada0e1040d867ce567f177be55cd278378"; - sha256 = "03ah91cm1qz26k90mfx51l0d598i9bcmw39lkikjs1msm4c9dfxx"; + rev = version; + sha256 = "0l4lavaywih5lzwgxcbnvdrxhpvkrmh56li06s3aryikngxwsk3z"; }; - nativeBuildInputs = [ cmake pkgconfig wrapQtAppsHook ]; - buildInputs = [ obs-studio ]; + nativeBuildInputs = [ cmake ]; + buildInputs = [ qtbase obs-studio ]; patches = [ - ./0001-find-ObsPluginHelpers.cmake-in-the-obs-src.patch + # Fixes the segfault when stopping the plugin + (fetchpatch { + url = "https://github.com/CatxFish/obs-v4l2sink/commit/6604f01796d1b84a95714730ea51a6b8ac0e450b.diff"; + sha256 = "0crcvw02dj0aqy7hnhizjdsnhiw03zmg6cbdkasxz2mrrbyc3s88"; + }) ]; - cmakeFlags = [ - "-DLIBOBS_INCLUDE_DIR=${obs-studio}/include/obs" - "-DLIBOBS_LIBRARIES=${obs-studio}/lib" - "-DCMAKE_CXX_FLAGS=-I${obs-studio.src}/UI/obs-frontend-api" - "-DOBS_SRC=${obs-studio.src}" + cmakeFlags = with lib; [ + "-DLIBOBS_INCLUDE_DIR=${obs-studio.src}/libobs" ]; - installPhase = '' - mkdir -p $out/share/obs/obs-plugins/v4l2sink/bin/64bit - cp ./v4l2sink.so $out/share/obs/obs-plugins/v4l2sink/bin/64bit/ + # obs-studio expects the shared object to be located in bin/32bit or bin/64bit + # https://github.com/obsproject/obs-studio/blob/d60c736cb0ec0491013293c8a483d3a6573165cb/libobs/obs-nix.c#L48 + postInstall = let + pluginPath = { + i686-linux = "bin/32bit"; + x86_64-linux = "bin/64bit"; + }.${stdenv.targetPlatform.system} or (throw "Unsupported system: ${stdenv.targetPlatform.system}"); + in '' + mkdir -p $out/share/obs/obs-plugins/v4l2sink/${pluginPath} + ln -s $out/lib/obs-plugins/v4l2sink.so $out/share/obs/obs-plugins/v4l2sink/${pluginPath} ''; - meta = with stdenv.lib; { + meta = with lib; { description = "obs studio output plugin for Video4Linux2 device"; homepage = "https://github.com/CatxFish/obs-v4l2sink"; - maintainers = with maintainers; [ colemickens ]; + maintainers = with maintainers; [ colemickens peelz ]; license = licenses.gpl2; - platforms = [ "x86_64-linux" ]; + platforms = [ "x86_64-linux" "i686-linux" ]; }; } diff --git a/nixpkgs/pkgs/applications/video/p2pvc/default.nix b/nixpkgs/pkgs/applications/video/p2pvc/default.nix index 219954ff9f20..91468ea1ee60 100644 --- a/nixpkgs/pkgs/applications/video/p2pvc/default.nix +++ b/nixpkgs/pkgs/applications/video/p2pvc/default.nix @@ -1,10 +1,10 @@ -{ stdenv, pkgconfig, fetchFromGitHub, opencv, ncurses, portaudio }: +{ stdenv, pkgconfig, fetchFromGitHub, opencv2, ncurses, portaudio }: stdenv.mkDerivation { name = "p2pvc"; nativeBuildInputs = [ pkgconfig ]; - buildInputs = [ opencv ncurses portaudio ]; + buildInputs = [ opencv2 ncurses portaudio ]; enableParallelBuilding = true; diff --git a/nixpkgs/pkgs/applications/video/plex-mpv-shim/default.nix b/nixpkgs/pkgs/applications/video/plex-mpv-shim/default.nix index df72e200e62a..268905e3a4c0 100644 --- a/nixpkgs/pkgs/applications/video/plex-mpv-shim/default.nix +++ b/nixpkgs/pkgs/applications/video/plex-mpv-shim/default.nix @@ -2,13 +2,13 @@ buildPythonApplication rec { pname = "plex-mpv-shim"; - version = "1.7.14"; + version = "1.7.16"; src = fetchFromGitHub { owner = "iwalton3"; repo = pname; rev = "v${version}"; - sha256 = "1rjifqvs59w2aacfird02myqfd34qadhacj9zpy5xjz25x410zza"; + sha256 = "1pnbdxaqnliwqfvv08gi7gdcvflg5vcbgk4g0fw75prgw54vnd9a"; }; propagatedBuildInputs = [ mpv requests python-mpv-jsonipc ]; diff --git a/nixpkgs/pkgs/applications/video/qmediathekview/default.nix b/nixpkgs/pkgs/applications/video/qmediathekview/default.nix index 160066688462..7556727a80d3 100644 --- a/nixpkgs/pkgs/applications/video/qmediathekview/default.nix +++ b/nixpkgs/pkgs/applications/video/qmediathekview/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchFromGitHub, qtbase, qttools, xz, boost, qmake, pkgconfig }: +{ mkDerivation, stdenv, fetchFromGitHub, qtbase, qttools, xz, boost, qmake, pkgconfig }: -stdenv.mkDerivation rec { +mkDerivation rec { pname = "QMediathekView"; version = "2019-01-06"; diff --git a/nixpkgs/pkgs/applications/video/qstopmotion/default.nix b/nixpkgs/pkgs/applications/video/qstopmotion/default.nix index e2243797a3bc..98af60c49379 100644 --- a/nixpkgs/pkgs/applications/video/qstopmotion/default.nix +++ b/nixpkgs/pkgs/applications/video/qstopmotion/default.nix @@ -1,8 +1,28 @@ -{ stdenv, fetchurl, qt5, ffmpeg, guvcview, cmake, ninja, libxml2 -, gettext, pkgconfig, libgphoto2, gphoto2, v4l-utils, libv4l, pcre -, qwt, extra-cmake-modules }: +{ stdenv +, mkDerivation +, fetchurl +, qtbase +, qtmultimedia +, qtquickcontrols +, qtimageformats +, qtxmlpatterns +, ffmpeg +, guvcview +, cmake +, ninja +, libxml2 +, gettext +, pkgconfig +, libgphoto2 +, gphoto2 +, v4l-utils +, libv4l +, pcre +, qwt +, extra-cmake-modules +}: -stdenv.mkDerivation rec { +mkDerivation rec { pname = "qstopmotion"; version = "2.4.1"; @@ -11,11 +31,31 @@ stdenv.mkDerivation rec { sha256 = "03r6jxyq0bak2vsy2b78nk27m7fm96hnl8cx11l3l17704j4iglh"; }; - buildInputs = with qt5; [ v4l-utils libv4l pcre qtbase qtmultimedia ffmpeg guvcview - qwt qtquickcontrols qtimageformats qtxmlpatterns ]; + buildInputs = [ + qtbase + qtmultimedia + qtquickcontrols + qtimageformats + qtxmlpatterns + v4l-utils + libv4l + pcre + ffmpeg + guvcview + qwt + ]; - nativeBuildInputs = [ pkgconfig cmake extra-cmake-modules ninja - gettext libgphoto2 gphoto2 libxml2 libv4l ]; + nativeBuildInputs = [ + pkgconfig + cmake + extra-cmake-modules + ninja + gettext + libgphoto2 + gphoto2 + libxml2 + libv4l + ]; patchPhase = '' substituteInPlace CMakeLists.txt \ @@ -36,6 +76,7 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.gpl2Plus; maintainers = [ maintainers.leenaars ]; + broken = stdenv.isAarch64; platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux; }; } diff --git a/nixpkgs/pkgs/applications/video/shotcut/default.nix b/nixpkgs/pkgs/applications/video/shotcut/default.nix index b3c058186382..9c0435a351c8 100644 --- a/nixpkgs/pkgs/applications/video/shotcut/default.nix +++ b/nixpkgs/pkgs/applications/video/shotcut/default.nix @@ -8,13 +8,13 @@ assert stdenv.lib.versionAtLeast mlt.version "6.18.0"; mkDerivation rec { pname = "shotcut"; - version = "20.04.01"; + version = "20.04.12"; src = fetchFromGitHub { owner = "mltframework"; repo = "shotcut"; rev = "v${version}"; - sha256 = "10svbhsd5q8z1k055kcfibil97qifwzn3xmnf5b9sxa7ky4bkmqr"; + sha256 = "05yyv9192f722j8fhfjrphxadgp3crvbq4pi23ln560zh9s1m8r4"; }; patches = [ ./0001-encodedock.cpp-connect-to-VAAPI-via-DRM-not-X11.patch ]; diff --git a/nixpkgs/pkgs/applications/video/streamlink/default.nix b/nixpkgs/pkgs/applications/video/streamlink/default.nix index a12d08458901..782b81cc2380 100644 --- a/nixpkgs/pkgs/applications/video/streamlink/default.nix +++ b/nixpkgs/pkgs/applications/video/streamlink/default.nix @@ -1,14 +1,14 @@ { stdenv, pythonPackages, fetchFromGitHub, rtmpdump, ffmpeg }: pythonPackages.buildPythonApplication rec { - version = "1.3.1"; + version = "1.4.1"; pname = "streamlink"; src = fetchFromGitHub { owner = "streamlink"; repo = "streamlink"; rev = version; - sha256 = "0scc0mzvy56b1l6iyvrzb28l8vzrxpfkn4lcwr8nnyjb7ams2xms"; + sha256 = "1q3h48qwf7vs2wnbkwv0xnm6s65mkcyqdz7z6z3vrsmif2sb19l2"; }; checkInputs = with pythonPackages; [ pytest mock requests-mock freezegun ]; diff --git a/nixpkgs/pkgs/applications/video/tartube/default.nix b/nixpkgs/pkgs/applications/video/tartube/default.nix new file mode 100644 index 000000000000..ae222ae05a79 --- /dev/null +++ b/nixpkgs/pkgs/applications/video/tartube/default.nix @@ -0,0 +1,68 @@ +{ stdenv +, lib +, fetchFromGitHub +, gdk-pixbuf +, gobject-introspection +, gtk3 +, libnotify +, pango +, python3Packages +, wrapGAppsHook +, youtube-dl +, glib +}: + +python3Packages.buildPythonApplication rec { + pname = "tartube"; + version = "2.0.016"; + + src = fetchFromGitHub { + owner = "axcore"; + repo = "tartube"; + rev = "v${version}"; + sha256 = "1y77ykihyi4v6xlsm5xldbs9lzq229l574rxz6qfvrjcbbwajfj9"; + }; + + nativeBuildInputs = [ + gobject-introspection + wrapGAppsHook + ]; + + strictDeps = false; + + propagatedBuildInputs = with python3Packages; [ + moviepy + pygobject3 + pyxdg + requests + ]; + + buildInputs = [ + gdk-pixbuf + gtk3 + glib + libnotify + pango + ]; + + postInstall = '' + mkdir -p $out/share/{man/man1,applications,pixmaps} + cp pack/tartube.1 $out/share/man/man1 + cp pack/tartube.desktop $out/share/applications + cp pack/tartube.{png,xpm} $out/share/pixmaps + ''; + + doCheck = false; + + makeWrapperArgs = [ + "--prefix PATH : ${stdenv.lib.makeBinPath [ youtube-dl ]}" + ]; + + meta = with lib; { + description = "A GUI front-end for youtube-dl"; + license = licenses.gpl3; + platforms = platforms.linux; + maintainers = with maintainers; [ mkg20001 luc65r ]; + homepage = "https://tartube.sourceforge.io/"; + }; +} |