1{ lib 2, stdenv 3, buildPythonPackage 4, fetchPypi 5, pyqt5 6, pyqtwebengine 7, matplotlib 8, orange-canvas-core 9, pyqtgraph 10, typing-extensions 11, qt5 12, pytestCheckHook 13, pytest-qt 14, appnope 15}: 16 17buildPythonPackage rec { 18 pname = "orange-widget-base"; 19 version = "4.22.0"; 20 21 src = fetchPypi { 22 inherit pname version; 23 hash = "sha256-nV2aBPZzn7K+QECtCVoLLh5smG31zE2G9jFTKlxh9qM="; 24 }; 25 26 propagatedBuildInputs = [ 27 matplotlib 28 orange-canvas-core 29 pyqt5 30 pyqtgraph 31 pyqtwebengine 32 typing-extensions 33 ] ++ lib.optionals stdenv.isDarwin [ 34 appnope 35 ]; 36 37 pythonImportsCheck = [ "orangewidget" ]; 38 39 preCheck = '' 40 export HOME=$(mktemp -d) 41 export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}" 42 export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins"; 43 export QT_QPA_PLATFORM=offscreen 44 ''; 45 46 nativeCheckInputs = [ 47 pytest-qt 48 pytestCheckHook 49 ]; 50 51 disabledTestPaths = [ 52 "orangewidget/report/tests/test_report.py" 53 "orangewidget/tests/test_widget.py" 54 ]; 55 56 meta = { 57 description = "Implementation of the base OWBaseWidget class and utilities for use in Orange Canvas workflows"; 58 homepage = "https://github.com/biolab/orange-widget-base"; 59 license = [ lib.licenses.gpl3Plus ]; 60 maintainers = [ lib.maintainers.lucasew ]; 61 }; 62}