From bddff58799c11c7f52684022c4c012eeb5ddc355 Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 7 Apr 2023 17:56:51 +0200 Subject: [PATCH] python3.pkgs.django-payments: init at 2.0.0 --- .../django-payments/default.nix | 73 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 75 insertions(+) create mode 100644 pkgs/development/python-modules/django-payments/default.nix diff --git a/pkgs/development/python-modules/django-payments/default.nix b/pkgs/development/python-modules/django-payments/default.nix new file mode 100644 index 000000000000..577a2ca5132e --- /dev/null +++ b/pkgs/development/python-modules/django-payments/default.nix @@ -0,0 +1,73 @@ +{ lib +, buildPythonPackage +, braintree +, cryptography +, django +, django-phonenumber-field +, fetchFromGitHub +, mercadopago +, pythonOlder +, requests +, setuptools-scm +, sphinx-rtd-theme +, stripe +, xmltodict +}: + +buildPythonPackage rec { + pname = "django-payments"; + version = "2.0.0"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "jazzband"; + repo = "django-payments"; + rev = "refs/tags/v${version}"; + hash = "sha256-6WPV08CV+rko/tRnsT5GyTGYaJbiIKTvpisfRwizBIo="; + }; + + postPatch = '' + substituteInPlace setup.py \ + --replace "django-phonenumber-field[phonenumberslite]" "django-phonenumber-field" + ''; + + env.SETUPTOOLS_SCM_PRETEND_VERSION = version; + + nativeBuildInputs = [ + setuptools-scm + ]; + + propagatedBuildInputs = [ + django + django-phonenumber-field + requests + ] ++ django-phonenumber-field.optional-dependencies.phonenumbers; + + # require internet connection + doCheck = false; + + pythonImportsCheck = [ + "payments" + ]; + + passthru.optional-dependencies = { + all = [ braintree /* suds-community */ mercadopago cryptography xmltodict stripe ]; + braintree = [ braintree ]; + cybersource = [ /* suds-community */ ]; + docs = [ sphinx-rtd-theme ]; + mercadopago = [ mercadopago ]; + sagepay = [ cryptography ]; + sofort = [ xmltodict ]; + stripe = [ stripe ]; + }; + + meta = with lib; { + description = "Universal payment handling for Django."; + homepage = "https://github.com/jazzband/django-payments/"; + changelog = "https://github.com/jazzband/django-payments/releases/tag/v${version}"; + license = licenses.bsd3; + maintainers = with maintainers; [ derdennisop ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 136f5bb2cc43..1d09b2970961 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2681,6 +2681,8 @@ self: super: with self; { django-pattern-library = callPackage ../development/python-modules/django-pattern-library { }; + django-payments = callPackage ../development/python-modules/django-payments { }; + django-pglocks = callPackage ../development/python-modules/django-pglocks { }; django-phonenumber-field = callPackage ../development/python-modules/django-phonenumber-field { };