diff options
Diffstat (limited to 'pkgs/applications/video/vlc/default.nix')
-rw-r--r-- | pkgs/applications/video/vlc/default.nix | 46 |
1 files changed, 31 insertions, 15 deletions
diff --git a/pkgs/applications/video/vlc/default.nix b/pkgs/applications/video/vlc/default.nix index 7706c425f2bc4..a5e65480b2bf1 100644 --- a/pkgs/applications/video/vlc/default.nix +++ b/pkgs/applications/video/vlc/default.nix @@ -10,7 +10,7 @@ , avahi , dbus , faad2 -, ffmpeg +, ffmpeg_4 , flac , fluidsynth , freefont_ttf @@ -62,16 +62,14 @@ , systemd , taglib , unzip -, wayland -, wayland-protocols , xorg , zlib - , chromecastSupport ? true, libmicrodns, protobuf , jackSupport ? false , onlyLibVLC ? false , skins2Support ? !onlyLibVLC, freetype -, withQt5 ? true, qtbase, qtsvg, qtx11extras, wrapQtAppsHook +, waylandSupport ? true, wayland, wayland-protocols +, withQt5 ? true, qtbase, qtsvg, qtwayland, qtx11extras, wrapQtAppsHook }: # chromecastSupport requires TCP port 8010 to be open for it to work. @@ -102,7 +100,7 @@ stdenv.mkDerivation rec { avahi dbus faad2 - ffmpeg + ffmpeg_4 flac fluidsynth fribidi @@ -148,8 +146,6 @@ stdenv.mkDerivation rec { srt systemd taglib - wayland - wayland-protocols zlib ] ++ (with xorg; [ @@ -159,11 +155,18 @@ stdenv.mkDerivation rec { xcbutilkeysyms xlibsWrapper ]) - ++ optional (!hostIsAarch) live555 + ++ optional (!hostIsAarch && !onlyLibVLC) live555 ++ optional jackSupport libjack2 ++ optionals chromecastSupport [ libmicrodns protobuf ] - ++ optionals skins2Support (with xorg; [ freetype libXext libXinerama libXpm ]) - ++ optionals withQt5 [ qtbase qtsvg qtx11extras ]; + ++ optionals skins2Support (with xorg; [ + freetype + libXext + libXinerama + libXpm + ]) + ++ optionals waylandSupport [ wayland wayland-protocols ] + ++ optionals withQt5 [ qtbase qtsvg qtx11extras ] + ++ optional (waylandSupport && withQt5) qtwayland; nativeBuildInputs = [ autoreconfHook @@ -172,7 +175,8 @@ stdenv.mkDerivation rec { removeReferencesTo unzip ] - ++ optionals withQt5 [ wrapQtAppsHook ]; + ++ optionals withQt5 [ wrapQtAppsHook ] + ++ optionals waylandSupport [ wayland wayland-protocols ]; enableParallelBuilding = true; @@ -188,6 +192,16 @@ stdenv.mkDerivation rec { url = "https://raw.githubusercontent.com/archlinux/svntogit-packages/4250fe8f28c220d883db454cec2b2c76a07473eb/trunk/vlc-3.0.11.1-srt_1.4.2.patch"; sha256 = "53poWjZfwq/6l316sqiCp0AtcGweyXBntcLDFPSokHQ="; }) + # patches to build with recent live555 + # upstream issue: https://code.videolan.org/videolan/vlc/-/issues/25473 + (fetchpatch { + url = "https://code.videolan.org/videolan/vlc/uploads/3c84ea58d7b94d7a8d354eaffe4b7d55/0001-Get-addr-by-ref.-from-getConnectionEndpointAddress.patch"; + sha256 = "171d3qjl9a4dm13sqig3ra8s2zcr76wfnqz4ba4asg139cyc1axd"; + }) + (fetchpatch { + url = "https://code.videolan.org/videolan/vlc/uploads/eb1c313d2d499b8a777314f789794f9d/0001-Add-lssl-and-lcrypto-to-liblive555_plugin_la_LIBADD.patch"; + sha256 = "0kyi8q2zn2ww148ngbia9c7qjgdrijf4jlvxyxgrj29cb5iy1kda"; + }) ]; postPatch = '' @@ -210,9 +224,11 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-srt" # Explicit enable srt to ensure the patch is applied. "--with-kde-solid=$out/share/apps/solid/actions" - ] ++ optional onlyLibVLC "--disable-vlc" - ++ optional skins2Support "--enable-skins2" - ++ optionals chromecastSupport [ + ] + ++ optional onlyLibVLC "--disable-vlc" + ++ optional skins2Support "--enable-skins2" + ++ optional waylandSupport "--enable-wayland" + ++ optionals chromecastSupport [ "--enable-sout" "--enable-chromecast" "--enable-microdns" |