diff --git a/pkgs/tools/misc/yt-dlp/default.nix b/pkgs/by-name/yt/yt-dlp/package.nix similarity index 90% rename from pkgs/tools/misc/yt-dlp/default.nix rename to pkgs/by-name/yt/yt-dlp/package.nix index 4e88175b9aa7..f61baab5e190 100644 --- a/pkgs/tools/misc/yt-dlp/default.nix +++ b/pkgs/by-name/yt/yt-dlp/package.nix @@ -1,18 +1,9 @@ { lib -, buildPythonPackage +, python3Packages , fetchPypi -, brotli -, hatchling -, certifi -, ffmpeg +, ffmpeg-headless , rtmpdump , atomicparsley -, pycryptodomex -, websockets -, mutagen -, requests -, secretstorage -, urllib3 , atomicparsleySupport ? true , ffmpegSupport ? true , rtmpSupport ? true @@ -20,7 +11,7 @@ , update-python-libraries }: -buildPythonPackage rec { +python3Packages.buildPythonApplication rec { pname = "yt-dlp"; # The websites yt-dlp deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported @@ -34,13 +25,14 @@ buildPythonPackage rec { hash = "sha256-dYeqJeI2z3sUvbk3i7//9RIC2QGwQgK+DPYsu1bTtSw="; }; - build-system = [ + build-system = with python3Packages; [ hatchling ]; - dependencies = [ + dependencies = with python3Packages; [ brotli certifi + curl-cffi mutagen pycryptodomex requests @@ -57,7 +49,7 @@ buildPythonPackage rec { let packagesToBinPath = [] ++ lib.optional atomicparsleySupport atomicparsley - ++ lib.optional ffmpegSupport ffmpeg + ++ lib.optional ffmpegSupport ffmpeg-headless ++ lib.optional rtmpSupport rtmpdump; in lib.optionals (packagesToBinPath != []) [ ''--prefix PATH : "${lib.makeBinPath packagesToBinPath}"'' ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2a64931c538f..2d419ef217aa 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -35306,9 +35306,11 @@ with pkgs; youki = callPackage ../applications/virtualization/youki { }; - yt-dlp = with python3Packages; toPythonApplication yt-dlp; - - yt-dlp-light = with python3Packages; toPythonApplication yt-dlp-light; + yt-dlp-light = yt-dlp.override { + atomicparsleySupport = false; + ffmpegSupport = false; + rtmpSupport = false; + }; youtube-viewer = perlPackages.WWWYoutubeViewer; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 53e7cd1eaa10..70739a13e773 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17634,15 +17634,13 @@ self: super: with self; { yoyo-migrations = callPackage ../development/python-modules/yoyo-migrations { }; - yt-dlp = callPackage ../tools/misc/yt-dlp { - ffmpeg = pkgs.ffmpeg-headless; - }; + yt-dlp = toPythonModule (pkgs.yt-dlp.override { + python3Packages = self; + }); - yt-dlp-light = callPackage ../tools/misc/yt-dlp { - atomicparsleySupport = false; - ffmpegSupport = false; - rtmpSupport = false; - }; + yt-dlp-light = toPythonModule (pkgs.yt-dlp-light.override { + python3Packages = self; + }); youtube-search = callPackage ../development/python-modules/youtube-search { };