{ lib , python3 , fetchFromGitHub , ffmpeg }: python3.pkgs.buildPythonApplication rec { pname = "spotdl"; version = "3.6.3"; src = fetchFromGitHub { owner = "spotDL"; repo = "spotify-downloader"; rev = "v${version}"; sha256 = "sha256-Ok8DOw+Joy35IqN7sNOQcUWYJS8tqBeQ5/I8fUSly7Q="; }; propagatedBuildInputs = with python3.pkgs; [ spotipy pytube rich rapidfuzz mutagen ytmusicapi tqdm beautifulsoup4 requests unidecode ]; checkInputs = with python3.pkgs; [ pytestCheckHook pytest-mock pytest-vcr pyfakefs pytest-subprocess ]; # requires networking doCheck = false; makeWrapperArgs = [ "--prefix" "PATH" ":" (lib.makeBinPath [ ffmpeg ]) ]; meta = with lib; { description = "Download your Spotify playlists and songs along with album art and metadata"; homepage = "https://github.com/spotDL/spotify-downloader"; license = licenses.mit; maintainers = with maintainers; [ dotlambda ]; }; }