about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSandro <sandro.jaeckel@gmail.com>2023-07-12 20:12:09 +0200
committerGitHub <noreply@github.com>2023-07-12 20:12:09 +0200
commit70c9ed6eded34574fc624c349705a2c675205cbb (patch)
tree4481e9ed5dbb76fd5038bef90ffa1ddaa287d83a
parentff6e67d2c2e9c8971a0fd8abb9b745e65bb17887 (diff)
parente9934b001662b5feccaff698937bf78aff6b2a35 (diff)
Merge pull request #243009 from dotlambda/spotdl-4.2.0
spotdl: 4.1.11 -> 4.2.0
-rw-r--r--pkgs/development/python-modules/bandcamp-api/default.nix47
-rw-r--r--pkgs/tools/audio/spotdl/default.nix6
-rw-r--r--pkgs/top-level/python-packages.nix2
3 files changed, 53 insertions, 2 deletions
diff --git a/pkgs/development/python-modules/bandcamp-api/default.nix b/pkgs/development/python-modules/bandcamp-api/default.nix
new file mode 100644
index 0000000000000..714f4aa6b4d7a
--- /dev/null
+++ b/pkgs/development/python-modules/bandcamp-api/default.nix
@@ -0,0 +1,47 @@
+{ lib
+, buildPythonPackage
+, fetchPypi
+, beautifulsoup4
+, demjson3
+, html5lib
+, lxml
+, requests
+}:
+
+buildPythonPackage rec {
+  pname = "bandcamp-api";
+  version = "0.1.15";
+
+  format = "setuptools";
+
+  src = fetchPypi {
+    pname = "bandcamp_api";
+    inherit version;
+    hash = "sha256-4pnUiAsOLX1BBQjOhUkjSyHnGyQ3rx3JAFFYgEMLpG4=";
+  };
+
+  postPatch = ''
+    substituteInPlace setup.py \
+      --replace bs4 beautifulsoup4
+  '';
+
+  propagatedBuildInputs = [
+    beautifulsoup4
+    demjson3
+    html5lib
+    lxml
+    requests
+  ];
+
+  pythonImportsCheck = [ "bandcamp_api" ];
+
+  # upstream has no tests
+  doCheck = false;
+
+  meta = {
+    description = "Obtains information from bandcamp.com";
+    homepage = "https://github.com/RustyRin/bandcamp-api";
+    license = lib.licenses.gpl3Only;
+    maintainers = with lib.maintainers; [ dotlambda ];
+  };
+}
diff --git a/pkgs/tools/audio/spotdl/default.nix b/pkgs/tools/audio/spotdl/default.nix
index abd96f56dc430..235ce6af4c3b7 100644
--- a/pkgs/tools/audio/spotdl/default.nix
+++ b/pkgs/tools/audio/spotdl/default.nix
@@ -20,7 +20,7 @@ let
   };
 in python.pkgs.buildPythonApplication rec {
   pname = "spotdl";
-  version = "4.1.11";
+  version = "4.2.0";
 
   format = "pyproject";
 
@@ -28,7 +28,7 @@ in python.pkgs.buildPythonApplication rec {
     owner = "spotDL";
     repo = "spotify-downloader";
     rev = "refs/tags/v${version}";
-    hash = "sha256-I/53JapzTo6VXss82/F0qO/Etwd4i6ZP9FPjaFRHwV0=";
+    hash = "sha256-miIDasbOKmfYESiEIlMxEUfPkLLBz4s1rX2eMz3MrzA=";
   };
 
   nativeBuildInputs = with python.pkgs; [
@@ -56,6 +56,8 @@ in python.pkgs.buildPythonApplication rec {
     pykakasi
     syncedlyrics
     typing-extensions
+    soundcloud-v2
+    bandcamp-api
     setuptools # for pkg_resources
   ] ++ python-slugify.optional-dependencies.unidecode;
 
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index db57e37fba1f5..36ef507e2ee23 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -1215,6 +1215,8 @@ self: super: with self; {
 
   banal = callPackage ../development/python-modules/banal { };
 
+  bandcamp-api = callPackage ../development/python-modules/bandcamp-api { };
+
   bandit = callPackage ../development/python-modules/bandit { };
 
   bangla = callPackage ../development/python-modules/bangla { };