python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / tools / audio / spotdl / default.nix
blob32dc47f5318844752b9d1c091ecf0c7fa4e30e0b
1 { lib
2 , python3
3 , fetchFromGitHub
4 , ffmpeg
5 }:
7 python3.pkgs.buildPythonApplication rec {
8   pname = "spotdl";
9   version = "3.9.6";
11   src = fetchFromGitHub {
12     owner = "spotDL";
13     repo = "spotify-downloader";
14     rev = "refs/tags/v${version}";
15     hash = "sha256-JoeNVMuEslz7A7G4ZvikimZrG75YrH5Mx3Oamtfy4cM=";
16   };
18   propagatedBuildInputs = with python3.pkgs; [
19     spotipy
20     pytube
21     rich
22     rapidfuzz
23     mutagen
24     ytmusicapi
25     yt-dlp
26     beautifulsoup4
27     requests
28     unidecode
29     setuptools
30   ];
32   checkInputs = with python3.pkgs; [
33     pytestCheckHook
34     pytest-mock
35     pytest-vcr
36     pyfakefs
37     pytest-subprocess
38   ];
40   # requires networking
41   doCheck = false;
43   makeWrapperArgs = [
44     "--prefix" "PATH" ":" (lib.makeBinPath [ ffmpeg ])
45   ];
47   meta = with lib; {
48     description = "Download your Spotify playlists and songs along with album art and metadata";
49     homepage = "https://github.com/spotDL/spotify-downloader";
50     license = licenses.mit;
51     maintainers = with maintainers; [ dotlambda ];
52   };