orange{3,-{canvas-core,widget-base}}: drop
Parts depended on qt5 webengine, and the rest was unused libraries
This commit is contained in:
@@ -1,113 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
# build-system
|
||||
setuptools,
|
||||
trubar,
|
||||
|
||||
# dependencies
|
||||
anyqt,
|
||||
cachecontrol,
|
||||
commonmark,
|
||||
dictdiffer,
|
||||
docutils,
|
||||
filelock,
|
||||
lockfile,
|
||||
numpy,
|
||||
packaging,
|
||||
pip,
|
||||
qasync,
|
||||
requests,
|
||||
requests-cache,
|
||||
truststore,
|
||||
typing-extensions,
|
||||
|
||||
# tests
|
||||
qt5,
|
||||
pyqt5,
|
||||
pytest-qt,
|
||||
pytestCheckHook,
|
||||
|
||||
stdenv,
|
||||
gitUpdater,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "orange-canvas-core";
|
||||
version = "0.2.8";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "biolab";
|
||||
repo = "orange-canvas-core";
|
||||
tag = version;
|
||||
hash = "sha256-hrL8tVomTyQkk6Taz+RZ39gb7s1qpY0WsqIuvyml5Yw=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
setuptools
|
||||
trubar
|
||||
];
|
||||
|
||||
dependencies = [
|
||||
anyqt
|
||||
commonmark
|
||||
dictdiffer
|
||||
docutils
|
||||
filelock
|
||||
lockfile
|
||||
numpy
|
||||
packaging
|
||||
pip
|
||||
qasync
|
||||
requests
|
||||
requests-cache
|
||||
truststore
|
||||
typing-extensions
|
||||
];
|
||||
|
||||
pythonImportsCheck = [ "orangecanvas" ];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins";
|
||||
export QT_QPA_PLATFORM=offscreen
|
||||
'';
|
||||
|
||||
nativeCheckInputs = [
|
||||
pyqt5
|
||||
pytest-qt
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
disabledTests = [
|
||||
# Failed: CALL ERROR: Exceptions caught in Qt event loop
|
||||
"test_create_new_window"
|
||||
"test_dont_load_swp_on_new_window"
|
||||
"test_editlinksnode"
|
||||
"test_flattened"
|
||||
"test_links_edit"
|
||||
"test_links_edit_widget"
|
||||
"test_new_window"
|
||||
"test_toolbox"
|
||||
"test_tooltree_registry"
|
||||
"test_widgettoolgrid"
|
||||
];
|
||||
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
disabledTestPaths = [ "orangecanvas/canvas/items/tests/test_graphicstextitem.py" ];
|
||||
|
||||
meta = {
|
||||
description = "Orange framework for building graphical user interfaces for editing workflows";
|
||||
homepage = "https://github.com/biolab/orange-canvas-core";
|
||||
changelog = "https://github.com/biolab/orange-canvas-core/releases/tag/${src.tag}";
|
||||
license = [ lib.licenses.gpl3 ];
|
||||
maintainers = [ ];
|
||||
# Segmentation fault during tests
|
||||
broken = stdenv.hostPlatform.isDarwin;
|
||||
};
|
||||
}
|
||||
@@ -1,71 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
gitUpdater,
|
||||
stdenv,
|
||||
buildPythonPackage,
|
||||
setuptools,
|
||||
fetchFromGitHub,
|
||||
pyqt5,
|
||||
pyqtwebengine,
|
||||
matplotlib,
|
||||
orange-canvas-core,
|
||||
pyqtgraph,
|
||||
typing-extensions,
|
||||
qt5,
|
||||
pytestCheckHook,
|
||||
pytest-qt,
|
||||
appnope,
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "orange-widget-base";
|
||||
version = "4.27.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "biolab";
|
||||
repo = "orange-widget-base";
|
||||
tag = version;
|
||||
hash = "sha256-RTPzdeqz7HRyH726qXC0FMrAcwk6qZ8gmkXL7s5bl74=";
|
||||
};
|
||||
|
||||
build-system = [ setuptools ];
|
||||
|
||||
dependencies = [
|
||||
matplotlib
|
||||
orange-canvas-core
|
||||
pyqt5
|
||||
pyqtgraph
|
||||
pyqtwebengine
|
||||
typing-extensions
|
||||
]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ appnope ];
|
||||
|
||||
pythonImportsCheck = [ "orangewidget" ];
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins";
|
||||
export QT_QPA_PLATFORM=offscreen
|
||||
'';
|
||||
|
||||
nativeCheckInputs = [
|
||||
pytest-qt
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
disabledTestPaths = [
|
||||
"orangewidget/report/tests/test_report.py"
|
||||
"orangewidget/tests/test_widget.py"
|
||||
];
|
||||
|
||||
passthru.updateScript = gitUpdater { };
|
||||
|
||||
meta = {
|
||||
description = "Implementation of the base OWBaseWidget class and utilities for use in Orange Canvas workflows";
|
||||
homepage = "https://github.com/biolab/orange-widget-base";
|
||||
license = [ lib.licenses.gpl3Plus ];
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
@@ -1,230 +0,0 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
buildPythonPackage,
|
||||
fetchFromGitHub,
|
||||
|
||||
# build-system
|
||||
oldest-supported-numpy,
|
||||
setuptools,
|
||||
|
||||
# nativeBuildInputs
|
||||
copyDesktopItems,
|
||||
cython,
|
||||
qt5,
|
||||
recommonmark,
|
||||
sphinx,
|
||||
|
||||
# dependencies
|
||||
baycomp,
|
||||
bottleneck,
|
||||
catboost,
|
||||
chardet,
|
||||
httpx,
|
||||
joblib,
|
||||
keyring,
|
||||
keyrings-alt,
|
||||
matplotlib,
|
||||
numpy,
|
||||
openpyxl,
|
||||
opentsne,
|
||||
orange-canvas-core,
|
||||
orange-widget-base,
|
||||
pandas,
|
||||
pip,
|
||||
pyqt5,
|
||||
pyqtgraph,
|
||||
pyqtwebengine,
|
||||
python-louvain,
|
||||
pyyaml,
|
||||
qtconsole,
|
||||
requests,
|
||||
scikit-learn,
|
||||
scipy,
|
||||
serverfiles,
|
||||
xgboost,
|
||||
xlrd,
|
||||
xlsxwriter,
|
||||
|
||||
makeDesktopItem,
|
||||
|
||||
# passthru
|
||||
gitUpdater,
|
||||
python,
|
||||
pytest-qt,
|
||||
pytestCheckHook,
|
||||
}:
|
||||
|
||||
let
|
||||
self = buildPythonPackage rec {
|
||||
pname = "orange3";
|
||||
version = "3.40.0";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "biolab";
|
||||
repo = "orange3";
|
||||
tag = version;
|
||||
hash = "sha256-AOQGqOYaP3bPZtgjsVCxhA1T34Y9EIR5VeMwhZWmI88=";
|
||||
};
|
||||
|
||||
build-system = [
|
||||
oldest-supported-numpy
|
||||
setuptools
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace-fail 'cython>=3.0' 'cython'
|
||||
|
||||
# disable update checking
|
||||
echo -e "def check_for_updates():\n\tpass" >> Orange/canvas/__main__.py
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
copyDesktopItems
|
||||
cython
|
||||
qt5.wrapQtAppsHook
|
||||
recommonmark
|
||||
sphinx
|
||||
];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
pythonRelaxDeps = [ "scikit-learn" ];
|
||||
|
||||
dependencies = [
|
||||
baycomp
|
||||
bottleneck
|
||||
catboost
|
||||
chardet
|
||||
httpx
|
||||
joblib
|
||||
keyring
|
||||
keyrings-alt
|
||||
matplotlib
|
||||
numpy
|
||||
openpyxl
|
||||
opentsne
|
||||
orange-canvas-core
|
||||
orange-widget-base
|
||||
pandas
|
||||
pip
|
||||
pyqt5
|
||||
pyqtgraph
|
||||
pyqtwebengine
|
||||
python-louvain
|
||||
pyyaml
|
||||
qtconsole
|
||||
requests
|
||||
scikit-learn
|
||||
scipy
|
||||
serverfiles
|
||||
setuptools
|
||||
xgboost
|
||||
xlrd
|
||||
xlsxwriter
|
||||
];
|
||||
|
||||
# FIXME: ImportError: cannot import name '_variable' from partially initialized module 'Orange.data' (most likely due to a circular import) (/build/source/Orange/data/__init__.py)
|
||||
doCheck = false;
|
||||
|
||||
# FIXME: pythonRelaxDeps is not relaxing the scikit-learn version constraint, had to disable this
|
||||
dontCheckRuntimeDeps = true;
|
||||
|
||||
pythonImportsCheck = [
|
||||
"Orange"
|
||||
"Orange.data._variable"
|
||||
];
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "orange";
|
||||
exec = "orange-canvas";
|
||||
desktopName = "Orange Data Mining";
|
||||
genericName = "Data Mining Suite";
|
||||
comment = "Explore, analyze, and visualize your data";
|
||||
icon = "orange-canvas";
|
||||
mimeTypes = [ "application/x-extension-ows" ];
|
||||
categories = [
|
||||
"Science"
|
||||
"Education"
|
||||
"ArtificialIntelligence"
|
||||
"DataVisualization"
|
||||
"NumericalAnalysis"
|
||||
"Qt"
|
||||
];
|
||||
keywords = [
|
||||
"Machine Learning"
|
||||
"Scientific Visualization"
|
||||
"Statistical Analysis"
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/orange-canvas \
|
||||
"${"$"}{qtWrapperArgs[@]}"
|
||||
mkdir -p $out/share/icons/hicolor/{256x256,48x48}/apps
|
||||
cp distribute/icon-256.png $out/share/icons/hicolor/256x256/apps/orange-canvas.png
|
||||
cp distribute/icon-48.png $out/share/icons/hicolor/48x48/apps/orange-canvas.png
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gitUpdater { };
|
||||
tests.unittests = stdenv.mkDerivation {
|
||||
name = "${self.name}-tests";
|
||||
inherit (self) src;
|
||||
|
||||
preCheck = ''
|
||||
export HOME=$(mktemp -d)
|
||||
export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}"
|
||||
export QT_QPA_PLATFORM_PLUGIN_PATH="${qt5.qtbase.bin}/lib/qt-${qt5.qtbase.version}/plugins";
|
||||
export QT_QPA_PLATFORM=offscreen
|
||||
|
||||
rm Orange -rf
|
||||
cp -r ${self}/${python.sitePackages}/Orange .
|
||||
chmod +w -R .
|
||||
|
||||
substituteInPlace Orange/classification/tests/test_xgb_cls.py \
|
||||
--replace-fail test_learners mk_test_learners
|
||||
|
||||
substituteInPlace Orange/modelling/tests/test_xgb.py \
|
||||
--replace-fail test_learners mk_test_learners
|
||||
|
||||
substituteInPlace Orange/**/tests/*.py \
|
||||
--replace-fail test_filename filename_test
|
||||
|
||||
# TODO: debug why orange is crashing on GC, may be a upstream issue
|
||||
chmod +x Orange/__init__.py
|
||||
echo "import gc; gc.disable()" | tee -a Orange/__init__.py
|
||||
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [
|
||||
pytest-qt
|
||||
pytestCheckHook
|
||||
];
|
||||
|
||||
postCheck = ''
|
||||
touch $out
|
||||
'';
|
||||
|
||||
doBuild = false;
|
||||
doInstall = false;
|
||||
|
||||
buildInputs = [ self ];
|
||||
};
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Data mining and visualization toolbox for novice and expert alike";
|
||||
homepage = "https://orangedatamining.com/";
|
||||
changelog = "https://github.com/biolab/orange3/blob/${src.tag}/CHANGELOG.md";
|
||||
license = [ lib.licenses.gpl3Plus ];
|
||||
maintainers = [ ];
|
||||
mainProgram = "orange-canvas";
|
||||
};
|
||||
};
|
||||
in
|
||||
self
|
||||
@@ -362,6 +362,9 @@ mapAliases {
|
||||
openai-triton-no-cuda = throw "'openai-triton-no-cuda' has been renamed to/replaced by 'triton-no-cuda'"; # Converted to throw 2025-10-29
|
||||
openbabel-bindings = openbabel; # added 2025-09-17
|
||||
opsdroid_get_image_size = throw "'opsdroid_get_image_size' has been renamed to/replaced by 'opsdroid-get-image-size'"; # Converted to throw 2025-10-29
|
||||
orange3 = throw "'orange3' has been removed as it was unmaintained and depended on qt5 webengine"; # Added 2026-02-10
|
||||
orange-canvas-core = throw "'orange-canvas-core' has been removed as it was unmaintained and unused outside orange3"; # Added 2026-02-10
|
||||
orange-widgets-base = throw "'orange-widgets-base' has been removed as it was unmaintained and depended on qt5 webengine"; # Added 2026-02-10
|
||||
orderedset = throw "orderedset has been removed because it has been marked as broken since at least November 2024."; # Added 2025-10-04
|
||||
orm = throw "orm has been removed as it is unmaintained"; # added 2025-08-27
|
||||
paho-mqtt_2 = throw "'paho-mqtt_2' has been renamed to/replaced by 'paho-mqtt'"; # Converted to throw 2025-10-29
|
||||
|
||||
@@ -11873,12 +11873,6 @@ self: super: with self; {
|
||||
|
||||
oralb-ble = callPackage ../development/python-modules/oralb-ble { };
|
||||
|
||||
orange-canvas-core = callPackage ../development/python-modules/orange-canvas-core { };
|
||||
|
||||
orange-widget-base = callPackage ../development/python-modules/orange-widget-base { };
|
||||
|
||||
orange3 = callPackage ../development/python-modules/orange3 { };
|
||||
|
||||
oras = callPackage ../development/python-modules/oras { };
|
||||
|
||||
orbax-checkpoint = callPackage ../development/python-modules/orbax-checkpoint { };
|
||||
|
||||
Reference in New Issue
Block a user