1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 anyqt,
6 cachecontrol,
7 commonmark,
8 dictdiffer,
9 docutils,
10 filelock,
11 lockfile,
12 numpy,
13 pytest-qt,
14 pytestCheckHook,
15 qasync,
16 qt5,
17 requests-cache,
18}:
19
20buildPythonPackage rec {
21 pname = "orange-canvas-core";
22 version = "0.1.35";
23 format = "setuptools";
24
25 src = fetchPypi {
26 inherit pname version;
27 hash = "sha256-xLCwjeNDx9RqxlNkIWMo0Pcrg7akGuu4Rv9oRDgOK18=";
28 };
29
30 propagatedBuildInputs = [
31 anyqt
32 cachecontrol
33 commonmark
34 dictdiffer
35 docutils
36 filelock
37 lockfile
38 numpy
39 qasync
40 requests-cache
41 ];
42
43 pythonImportsCheck = [ "orangecanvas" ];
44
45 preCheck = ''
46 export HOME=$(mktemp -d)
47 export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
48 export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins";
49 export QT_QPA_PLATFORM=offscreen
50 '';
51
52 nativeCheckInputs = [
53 pytest-qt
54 pytestCheckHook
55 ];
56
57 disabledTestPaths = [ "orangecanvas/canvas/items/tests/test_graphicstextitem.py" ];
58
59 meta = {
60 description = "Orange framework for building graphical user interfaces for editing workflows";
61 homepage = "https://github.com/biolab/orange-canvas-core";
62 license = [ lib.licenses.gpl3 ];
63 maintainers = [ lib.maintainers.lucasew ];
64 };
65}