From 4317964bb0e5c760ec50c9b47a9a6af71a21ea25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?F=C3=A9lix=20Baylac-Jacqu=C3=A9?= Date: Thu, 21 Oct 2021 19:30:09 +0200 Subject: [PATCH] mpv: use yt-dlp instead of youtube-dl youtube-dl has been abandoned and is now unusable to stream a youtube.com video. The mpv team decided to move on with the yt-dlp fork[1]. However, they did not cut a new mpv release yet. Backporting the relevant commit and updating the wrapper to expose yt-dlp instead of youtube-dl. [1] https://github.com/mpv-player/mpv/pull/9209 --- pkgs/applications/video/mpv/default.nix | 9 +++++++++ pkgs/applications/video/mpv/wrapper.nix | 4 ++-- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/video/mpv/default.nix b/pkgs/applications/video/mpv/default.nix index 93c3b2203b7..12ca0dfe4cb 100644 --- a/pkgs/applications/video/mpv/default.nix +++ b/pkgs/applications/video/mpv/default.nix @@ -112,6 +112,15 @@ in stdenv.mkDerivation rec { url = "https://github.com/mpv-player/mpv/commit/7c4465cefb27d4e0d07535d368febdf77b579566.patch"; sha256 = "1yfc6220ak5kc5kf7zklmsa944nr9q0qaa27l507pgrmvcyiyzrx"; }) + # TOREMOVE when > 0.33.1 + # youtube-dl has been abandonned and is now unusable w/ + # youtube.com. Mpv migrated to yt-dlp since the 0.33.1 but did not + # cut a new release yet. See + # https://github.com/mpv-player/mpv/pull/9209 + (fetchpatch { + url = "https://github.com/mpv-player/mpv/commit/d1c92bfd79ef81ac804fcc20aee2ed24e8d587aa.patch"; + sha256 = "1dwxzng3gsrx0gjljm5jmfcjz3pzdss9z2l0n25rmmb4nbcrcx1f"; + }) ]; postPatch = '' diff --git a/pkgs/applications/video/mpv/wrapper.nix b/pkgs/applications/video/mpv/wrapper.nix index 5225197772c..984623ed778 100644 --- a/pkgs/applications/video/mpv/wrapper.nix +++ b/pkgs/applications/video/mpv/wrapper.nix @@ -3,7 +3,7 @@ , lib , symlinkJoin , makeWrapper -, youtube-dl +, yt-dlp }: # the unwrapped mpv derivation - 1st argument to `wrapMpv` @@ -25,7 +25,7 @@ let binPath = lib.makeBinPath ([ mpv.luaEnv ] ++ lib.optionals youtubeSupport [ - youtube-dl + yt-dlp ] ++ lib.optionals mpv.vapoursynthSupport [ mpv.vapoursynth.python3 ]);