1{ lib, buildPythonPackage, fetchFromGitHub 2, pytest, isPy3k, pyqt5, pyqt ? pyqt5 3, fetchpatch 4}: 5 6buildPythonPackage rec { 7 pname = "quamash"; 8 version = "0.6.1"; 9 10 disabled = !isPy3k; 11 12 # No tests in PyPi tarball 13 src = fetchFromGitHub { 14 owner = "harvimt"; 15 repo = "quamash"; 16 rev = "version-${version}"; 17 sha256 = "117rp9r4lz0kfz4dmmpa35hp6nhbh6b4xq0jmgvqm68g9hwdxmqa"; 18 }; 19 20 patches = [ 21 # add 3.10 compatibility, merged remove on next update 22 (fetchpatch { 23 url = "https://github.com/harvimt/quamash/pull/126/commits/1e9047bec739dbc9d6ab337fc1a111a8b1090244.patch"; 24 hash = "sha256-6gomY82AOKkrt32SEBKnRugzhnC5FAyKDs6K5xaxnRM="; 25 }) 26 ]; 27 28 propagatedBuildInputs = [ pyqt ]; 29 30 nativeCheckInputs = [ pytest ]; 31 checkPhase = '' 32 pytest -k 'test_qthreadexec.py' # the others cause the test execution to be aborted, I think because of asyncio 33 ''; 34 35 meta = with lib; { 36 description = "Implementation of the PEP 3156 event-loop (asyncio) api using the Qt Event-Loop"; 37 homepage = "https://github.com/harvimt/quamash"; 38 license = licenses.bsd2; 39 maintainers = with maintainers; [ borisbabic ]; 40 }; 41}