From 761efd2a2e484adc7890b34791e44a822fd09bf3 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Fri, 28 Jun 2024 13:29:56 +0300 Subject: [PATCH 1/3] python311Packages.pyqtgraph: don't propagate pyqt5 --- pkgs/applications/radio/gnuradio/3.9.nix | 1 + pkgs/applications/radio/gnuradio/default.nix | 1 + pkgs/development/python-modules/binwalk/default.nix | 2 ++ pkgs/development/python-modules/enamlx/default.nix | 2 ++ pkgs/development/python-modules/orange3/default.nix | 2 ++ pkgs/development/python-modules/pyqtgraph/default.nix | 7 ++++++- 6 files changed, 14 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/radio/gnuradio/3.9.nix b/pkgs/applications/radio/gnuradio/3.9.nix index 606681b1d6c8..b6a8ebd2dd8e 100644 --- a/pkgs/applications/radio/gnuradio/3.9.nix +++ b/pkgs/applications/radio/gnuradio/3.9.nix @@ -154,6 +154,7 @@ let pythonRuntime = with python.pkgs; [ scipy pyqtgraph + pyqt5 ]; }; gr-analog = { diff --git a/pkgs/applications/radio/gnuradio/default.nix b/pkgs/applications/radio/gnuradio/default.nix index de851c24fa28..9d05e1151bd8 100644 --- a/pkgs/applications/radio/gnuradio/default.nix +++ b/pkgs/applications/radio/gnuradio/default.nix @@ -156,6 +156,7 @@ let pythonRuntime = with python.pkgs; [ scipy pyqtgraph + pyqt5 ]; }; gr-analog = { diff --git a/pkgs/development/python-modules/binwalk/default.nix b/pkgs/development/python-modules/binwalk/default.nix index 0f3d10d2b306..d3ebcbe91e37 100644 --- a/pkgs/development/python-modules/binwalk/default.nix +++ b/pkgs/development/python-modules/binwalk/default.nix @@ -19,6 +19,7 @@ nose, pycrypto, pyqtgraph, + pyqt5, visualizationSupport ? false, }: @@ -61,6 +62,7 @@ buildPythonPackage rec { ++ lib.optionals visualizationSupport [ matplotlib pyqtgraph + pyqt5 ] ++ lib.optionals (!stdenv.isDarwin) [ cramfsprogs diff --git a/pkgs/development/python-modules/enamlx/default.nix b/pkgs/development/python-modules/enamlx/default.nix index 2cc2522c0d9d..4d181fab7032 100644 --- a/pkgs/development/python-modules/enamlx/default.nix +++ b/pkgs/development/python-modules/enamlx/default.nix @@ -4,6 +4,7 @@ fetchFromGitHub, enaml, pyqtgraph, + pyqt5, pythonocc-core, typing-extensions, }: @@ -24,6 +25,7 @@ buildPythonPackage rec { enaml # Until https://github.com/inkcut/inkcut/issues/105 perhaps pyqtgraph + pyqt5 pythonocc-core typing-extensions ]; diff --git a/pkgs/development/python-modules/orange3/default.nix b/pkgs/development/python-modules/orange3/default.nix index e59e2a5dfaad..a235fef5f044 100644 --- a/pkgs/development/python-modules/orange3/default.nix +++ b/pkgs/development/python-modules/orange3/default.nix @@ -29,6 +29,7 @@ pytestCheckHook, pytest-qt, pyqtgraph, + pyqt5, pyqtwebengine, python, python-louvain, @@ -113,6 +114,7 @@ let xlsxwriter httpx pyqtgraph + pyqt5 orange-widget-base keyrings-alt pyyaml diff --git a/pkgs/development/python-modules/pyqtgraph/default.nix b/pkgs/development/python-modules/pyqtgraph/default.nix index 718b0be18477..14c4ad1fbc5c 100644 --- a/pkgs/development/python-modules/pyqtgraph/default.nix +++ b/pkgs/development/python-modules/pyqtgraph/default.nix @@ -34,10 +34,15 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy - pyqt5 scipy pyopengl ]; + buildInputs = [ + # Not propagating it so that every consumer of this package will be able to + # use any of the upstream supported Qt Library, See: + # https://pyqtgraph.readthedocs.io/en/pyqtgraph-0.13.7/getting_started/how_to_use.html#pyqt-and-pyside + pyqt5 + ]; nativeCheckInputs = [ pytestCheckHook ]; From 29deee58097c05c06ffadceb6ca85008d2d266a6 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Fri, 28 Jun 2024 14:17:03 +0300 Subject: [PATCH 2/3] python312Packages.pyqtgraph: unbreak by using pyqt6 The symptom that caused it to be broken with Python 3.12 and PyQt5 was similar to this: https://github.com/moosepy/curvefitgui/issues/2 However we won't put any effort into fixing it, because PyQt5 and PySide2 are close to EOL since Qt5 is close to EOL. --- pkgs/development/python-modules/pyqtgraph/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/pyqtgraph/default.nix b/pkgs/development/python-modules/pyqtgraph/default.nix index 14c4ad1fbc5c..401b1ef4080e 100644 --- a/pkgs/development/python-modules/pyqtgraph/default.nix +++ b/pkgs/development/python-modules/pyqtgraph/default.nix @@ -5,9 +5,9 @@ fetchFromGitHub, scipy, numpy, - pyqt5, + pyqt6, pyopengl, - qt5, + qt6, pytestCheckHook, freefont_ttf, makeFontsConf, @@ -41,13 +41,13 @@ buildPythonPackage rec { # Not propagating it so that every consumer of this package will be able to # use any of the upstream supported Qt Library, See: # https://pyqtgraph.readthedocs.io/en/pyqtgraph-0.13.7/getting_started/how_to_use.html#pyqt-and-pyside - pyqt5 + pyqt6 ]; nativeCheckInputs = [ pytestCheckHook ]; preCheck = '' - export QT_PLUGIN_PATH="${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}" + export QT_PLUGIN_PATH="${lib.getBin qt6.qtbase}/${qt6.qtbase.qtPluginPrefix}" export QT_QPA_PLATFORM=offscreen export DYLD_FRAMEWORK_PATH=/System/Library/Frameworks export FONTCONFIG_FILE=${fontsConf} @@ -75,7 +75,6 @@ buildPythonPackage rec { homepage = "https://www.pyqtgraph.org/"; changelog = "https://github.com/pyqtgraph/pyqtgraph/blob/master/CHANGELOG"; license = licenses.mit; - broken = lib.versionAtLeast python.version "3.12"; platforms = platforms.unix; maintainers = with maintainers; [ koral ]; }; From 0c9de7154b6c0cad1a399a640ffb3cd631067634 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Fri, 28 Jun 2024 14:17:59 +0300 Subject: [PATCH 3/3] python312Packages.pyqtgraph: cleanup; add doronbehar to maintainers --- pkgs/development/python-modules/pyqtgraph/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/development/python-modules/pyqtgraph/default.nix b/pkgs/development/python-modules/pyqtgraph/default.nix index 401b1ef4080e..6bfa11c30fcb 100644 --- a/pkgs/development/python-modules/pyqtgraph/default.nix +++ b/pkgs/development/python-modules/pyqtgraph/default.nix @@ -12,7 +12,6 @@ freefont_ttf, makeFontsConf, setuptools, - python, }: let @@ -70,12 +69,12 @@ buildPythonPackage rec { "test_rescaleData" ]; - meta = with lib; { + meta = { description = "Scientific Graphics and GUI Library for Python"; homepage = "https://www.pyqtgraph.org/"; changelog = "https://github.com/pyqtgraph/pyqtgraph/blob/master/CHANGELOG"; - license = licenses.mit; - platforms = platforms.unix; - maintainers = with maintainers; [ koral ]; + license = lib.licenses.mit; + platforms = lib.platforms.unix; + maintainers = with lib.maintainers; [ koral doronbehar ]; }; }