- disable on unsupported Python releases - relax yoyo-migrations - add pythonImportsCheck - ignore deprecation warning
117 lines
2.4 KiB
Nix
117 lines
2.4 KiB
Nix
{ lib
|
|
, stdenv
|
|
, apscheduler
|
|
, bitstring
|
|
, buildPythonPackage
|
|
, cffi
|
|
, ecdsa
|
|
, fetchFromGitHub
|
|
, monero
|
|
, poetry-core
|
|
, pypng
|
|
, pyqrcode
|
|
, pyramid
|
|
, pyramid_jinja2
|
|
, pysocks
|
|
, pytestCheckHook
|
|
, pythonOlder
|
|
, pythonRelaxDepsHook
|
|
, requests
|
|
, tzlocal
|
|
, waitress
|
|
, webtest
|
|
, yoyo-migrations
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "cypherpunkpay";
|
|
version = "1.0.16";
|
|
format = "pyproject";
|
|
|
|
disabled = pythonOlder "3.7";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "CypherpunkPay";
|
|
repo = "CypherpunkPay";
|
|
rev = "refs/tags/v${version}";
|
|
hash = "sha256-X0DB0PVwR0gRnt3jixFzglWAOPKBMvqTOG6pK6OJ03w=";
|
|
};
|
|
|
|
pythonRelaxDeps = [
|
|
"bitstring"
|
|
"cffi"
|
|
"ecdsa"
|
|
"pypng"
|
|
"tzlocal"
|
|
"yoyo-migrations"
|
|
];
|
|
|
|
nativeBuildInputs = [
|
|
poetry-core
|
|
pythonRelaxDepsHook
|
|
];
|
|
|
|
propagatedBuildInputs = [
|
|
apscheduler
|
|
bitstring
|
|
cffi
|
|
ecdsa
|
|
monero
|
|
pypng
|
|
pyqrcode
|
|
pyramid
|
|
pyramid_jinja2
|
|
pysocks
|
|
requests
|
|
tzlocal
|
|
waitress
|
|
yoyo-migrations
|
|
];
|
|
|
|
nativeCheckInputs = [
|
|
pytestCheckHook
|
|
webtest
|
|
];
|
|
|
|
pytestFlagsArray = [
|
|
"-W"
|
|
"ignore::DeprecationWarning"
|
|
];
|
|
|
|
disabledTestPaths = [
|
|
# performance test
|
|
"tests/unit/tools/pbkdf2_test.py"
|
|
# tests require network connection
|
|
"tests/network/explorers/bitcoin"
|
|
"tests/network/monero/monero_address_transactions_db_test.py"
|
|
"tests/network/net/http_client"
|
|
"tests/network/prices"
|
|
# tests require bitcoind running
|
|
"tests/network/full_node_clients"
|
|
# tests require lnd running
|
|
"tests/network/ln"
|
|
# tests require tor running
|
|
"tests/network/monero/monero_test.py"
|
|
"tests/network/net/tor_client"
|
|
"tests/network/usecases/calc_monero_address_credits_uc_test.py"
|
|
"tests/network/usecases/fetch_monero_txs_from_open_node_uc_test.py"
|
|
# tests require the full environment running
|
|
"tests/acceptance/views"
|
|
"tests/acceptance/views_admin"
|
|
"tests/acceptance/views_donations"
|
|
"tests/acceptance/views_dummystore"
|
|
];
|
|
|
|
pythonImportsCheck = [
|
|
"cypherpunkpay"
|
|
];
|
|
|
|
meta = with lib; {
|
|
description = "Modern self-hosted software for accepting Bitcoin";
|
|
homepage = "https://github.com/CypherpunkPay/CypherpunkPay";
|
|
changelog = "https://github.com/CypherpunkPay/CypherpunkPay/releases/tag/v${version}";
|
|
license = with licenses; [ mit /* or */ unlicense ];
|
|
maintainers = with maintainers; [ prusnak ];
|
|
};
|
|
}
|