diff --git a/pkgs/development/python-modules/salmon-mail/default.nix b/pkgs/development/python-modules/salmon-mail/default.nix index 02ed82ac640f..72df3f89e3b9 100644 --- a/pkgs/development/python-modules/salmon-mail/default.nix +++ b/pkgs/development/python-modules/salmon-mail/default.nix @@ -1,39 +1,45 @@ { - stdenv, lib, buildPythonPackage, - fetchPypi, + fetchFromGitHub, + setuptools, dnspython, chardet, - lmtpd, python-daemon, - six, jinja2, - mock, click, + unittestCheckHook, }: buildPythonPackage rec { pname = "salmon-mail"; - version = "3.2.0"; - format = "setuptools"; + version = "3.3.0"; + pyproject = true; - src = fetchPypi { - inherit pname version; - sha256 = "0q2m6xri1b7qv46rqpv2qfdgk2jvswj8lpaacnxwjna3m685fhfx"; + src = fetchFromGitHub { + owner = "moggers87"; + repo = "salmon"; + rev = "refs/tags/${version}"; + hash = "sha256-ysBO/ridfy7YPoTsVwAxar9UvfM/qxrx2dp0EtDNLvE="; }; nativeCheckInputs = [ jinja2 - mock + unittestCheckHook ]; - propagatedBuildInputs = [ + + build-system = [ setuptools ]; + + dependencies = [ chardet - dnspython - lmtpd - python-daemon - six click + dnspython + python-daemon + ]; + + pythonImportsCheck = [ + "salmon" + "salmon.handlers" ]; # Darwin tests fail without this. See: @@ -42,15 +48,13 @@ buildPythonPackage rec { # The tests use salmon executable installed by salmon itself so we need to add # that to PATH - checkPhase = '' - # tests fail and pytest is not supported - rm tests/server_tests.py - PATH=$out/bin:$PATH python setup.py test + preCheck = '' + export PATH=$out/bin:$PATH ''; meta = with lib; { - broken = stdenv.isDarwin; homepage = "https://salmon-mail.readthedocs.org/"; + changelog = "https://github.com/moggers87/salmon/blob/${src.rev}/CHANGELOG.rst"; description = "Pythonic mail application server"; mainProgram = "salmon"; license = licenses.gpl3Only;