depot/third_party/nixpkgs/pkgs/development/python-modules/gradient/default.nix

83 lines
1.7 KiB
Nix

{
lib,
attrs,
boto3,
buildPythonPackage,
click-completion,
click-didyoumean,
click-help-colors,
colorama,
fetchPypi,
gradient-statsd,
gradient-utils,
gql,
halo,
marshmallow,
progressbar2,
pyopenssl,
pyyaml,
requests,
requests-toolbelt,
terminaltables,
websocket-client,
}:
buildPythonPackage rec {
pname = "gradient";
version = "2.0.6";
format = "setuptools";
src = fetchPypi {
inherit pname version;
hash = "sha256-pqyyNzx2YPP3qmWQbzGd3q2HzCkrWlIVSJZeFrGm9dk=";
};
postPatch = ''
substituteInPlace setup.py \
--replace 'attrs<=' 'attrs>=' \
--replace 'colorama==' 'colorama>=' \
--replace 'gql[requests]==3.0.0a6' 'gql' \
--replace 'PyYAML==5.*' 'PyYAML' \
--replace 'marshmallow<' 'marshmallow>=' \
--replace 'websocket-client==0.57.*' 'websocket-client'
'';
propagatedBuildInputs = [
attrs
boto3
click-completion
click-didyoumean
click-help-colors
colorama
gql
gradient-statsd
gradient-utils
halo
marshmallow
progressbar2
pyopenssl
pyyaml
requests
requests-toolbelt
terminaltables
websocket-client
];
# Tries to use /homeless-shelter to mimic container usage, etc
doCheck = false;
# marshmallow.exceptions.StringNotCollectionError: "only" should be a collection of strings.
# Support for marshmallow > 3
# pythonImportsCheck = [
# "gradient"
# ];
meta = with lib; {
description = "Command line interface for Gradient";
mainProgram = "gradient";
homepage = "https://github.com/Paperspace/gradient-cli";
license = licenses.isc;
platforms = platforms.unix;
maintainers = with maintainers; [ thoughtpolice ];
};
}