about summary refs log tree commit diff
path: root/pkgs/development/python-modules/pyside2/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/pyside2/default.nix')
-rw-r--r--pkgs/development/python-modules/pyside2/default.nix49
1 files changed, 42 insertions, 7 deletions
diff --git a/pkgs/development/python-modules/pyside2/default.nix b/pkgs/development/python-modules/pyside2/default.nix
index aa92b81e2dde7..d66ef9a52257b 100644
--- a/pkgs/development/python-modules/pyside2/default.nix
+++ b/pkgs/development/python-modules/pyside2/default.nix
@@ -1,7 +1,6 @@
 {
   python,
   pythonAtLeast,
-  disabledIf,
   fetchurl,
   lib,
   stdenv,
@@ -13,18 +12,51 @@
 }:
 stdenv.mkDerivation rec {
   pname = "pyside2";
-  version = "5.15.11";
+  version = "5.15.14";
 
   src = fetchurl {
     url = "https://download.qt.io/official_releases/QtForPython/pyside2/PySide2-${version}-src/pyside-setup-opensource-src-${version}.tar.xz";
-    sha256 = "sha256-2lZ807eFTSegtK/j6J3osvmLem1XOTvlbx/BP3cPryk=";
+    hash = "sha256-MmURlPamt7zkLwTmixQBrSCH5HiaTI8/uGSehhicY3I=";
   };
 
-  patches = [ ./dont_ignore_optional_modules.patch ];
+  patches = [
+    ./nix_compile_cflags.patch
+    ./Final-details-to-enable-3.12-wheel-compatibility.patch
+    ./Python-3.12-Fix-the-structure-of-class-property.patch
+    ./Support-running-PySide-on-Python-3.12.patch
+    ./shiboken2-clang-Fix-and-simplify-resolveType-helper.patch
+    ./shiboken2-clang-Fix-build-with-clang-16.patch
+    ./shiboken2-clang-Fix-clashes-between-type-name-and-enumera.patch
+    ./shiboken2-clang-Record-scope-resolution-of-arguments-func.patch
+    ./shiboken2-clang-Remove-typedef-expansion.patch
+    ./shiboken2-clang-Suppress-class-scope-look-up-for-paramete.patch
+    ./shiboken2-clang-Write-scope-resolution-for-all-parameters.patch
+    ./dont_ignore_optional_modules.patch
+    ./Modify-sendCommand-signatures.patch
+  ];
 
-  postPatch = ''
-    cd sources/pyside2
-  '';
+  postPatch =
+    (lib.optionalString (pythonAtLeast "3.12") ''
+      substituteInPlace \
+        ez_setup.py \
+        build_scripts/main.py \
+        build_scripts/options.py \
+        build_scripts/utils.py \
+        build_scripts/wheel_override.py \
+        build_scripts/wheel_utils.py \
+        sources/pyside2/CMakeLists.txt \
+        --replace-fail "from distutils" "import setuptools; from distutils"
+      substituteInPlace \
+        build_scripts/config.py \
+        build_scripts/main.py \
+        build_scripts/options.py \
+        build_scripts/setup_runner.py \
+        build_scripts/utils.py \
+        --replace-fail "import distutils" "import setuptools; import distutils"
+    '')
+    + ''
+      cd sources/pyside2
+    '';
 
   cmakeFlags = [
     "-DBUILD_TESTS=OFF"
@@ -38,6 +70,7 @@ stdenv.mkDerivation rec {
     ninja
     qt5.qmake
     python
+    python.pkgs.setuptools
   ];
 
   buildInputs =
@@ -79,5 +112,7 @@ stdenv.mkDerivation rec {
     license = licenses.lgpl21;
     homepage = "https://wiki.qt.io/Qt_for_Python";
     maintainers = with maintainers; [ gebner ];
+    platforms = platforms.all;
+    broken = stdenv.isDarwin;
   };
 }