60 lines
1.3 KiB
Nix
60 lines
1.3 KiB
Nix
{ lib, python3 }:
|
|
|
|
let
|
|
py = python3.override {
|
|
packageOverrides = self: super: {
|
|
loguru = super.loguru.overridePythonAttrs (oldAttrs: rec {
|
|
version = "0.4.0";
|
|
src = oldAttrs.src.override {
|
|
inherit version;
|
|
sha256 = "0j47cg3gi8in4z6z4w3by6x02mpkkfl78gr85xjn5rg0nxiz7pfm";
|
|
};
|
|
});
|
|
};
|
|
};
|
|
|
|
in
|
|
|
|
with py.pkgs;
|
|
|
|
buildPythonApplication rec {
|
|
pname = "google-music-scripts";
|
|
version = "4.5.0";
|
|
|
|
src = fetchPypi {
|
|
inherit pname version;
|
|
sha256 = "0apwgj86whrc077dfymvyb4qwj19bawyrx49g4kg364895v0rbbq";
|
|
};
|
|
|
|
# pendulum pinning was to prevent PEP517 from trying to build from source
|
|
postPatch = ''
|
|
substituteInPlace setup.py \
|
|
--replace "tomlkit>=0.5,<0.6" "tomlkit" \
|
|
--replace "pendulum>=2.0,<=3.0,!=2.0.5,!=2.1.0" "pendulum"
|
|
'';
|
|
|
|
propagatedBuildInputs = [
|
|
appdirs
|
|
audio-metadata
|
|
google-music
|
|
google-music-proto
|
|
google-music-utils
|
|
loguru
|
|
pendulum
|
|
natsort
|
|
tomlkit
|
|
];
|
|
|
|
# No tests
|
|
checkPhase = ''
|
|
$out/bin/gms --help >/dev/null
|
|
'';
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/thebigmunch/google-music-scripts";
|
|
description = "A CLI utility for interacting with Google Music";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ jakewaksbaum ];
|
|
};
|
|
}
|