From e955d5d7ba3a0da4247290a5d26c47564fef4079 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Mon, 22 Aug 2022 00:04:32 +0800 Subject: [PATCH] qt6.qtbase: patch for loading libXcursor --- pkgs/development/libraries/qt-6/default.nix | 1 + .../libraries/qt-6/modules/qtbase.nix | 4 +++ .../qt-6/patches/0007-qtbase-xcursor.patch | 29 +++++++++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 pkgs/development/libraries/qt-6/patches/0007-qtbase-xcursor.patch diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix index 8c12cc2fb671..fde9534f0ae5 100644 --- a/pkgs/development/libraries/qt-6/default.nix +++ b/pkgs/development/libraries/qt-6/default.nix @@ -49,6 +49,7 @@ let withGtk3 = true; inherit (srcs.qtbase) src version; inherit bison cups harfbuzz libGL dconf gtk3 developerBuild cmake; + patches = [ ./patches/0007-qtbase-xcursor.patch ]; }; qt3d = callPackage ./modules/qt3d.nix { }; diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix index bf210633fc4f..7a4637eb8ecd 100644 --- a/pkgs/development/libraries/qt-6/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix @@ -201,6 +201,10 @@ stdenv.mkDerivation rec { "-DQT_FEATURE_openssl_linked=ON" ]; + NIX_CFLAGS_COMPILE = [ + ''-DNIXPKGS_LIBXCURSOR="${libXcursor.out}/lib/libXcursor"'' + ]; + outputs = [ "out" "dev" ]; postInstall = '' diff --git a/pkgs/development/libraries/qt-6/patches/0007-qtbase-xcursor.patch b/pkgs/development/libraries/qt-6/patches/0007-qtbase-xcursor.patch new file mode 100644 index 000000000000..6a92a9528303 --- /dev/null +++ b/pkgs/development/libraries/qt-6/patches/0007-qtbase-xcursor.patch @@ -0,0 +1,29 @@ +From cc953cc3f736fabef1f5c211964f30be719fb35e Mon Sep 17 00:00:00 2001 +From: Thomas Tuegel +Date: Tue, 17 Sep 2019 05:35:58 -0500 +Subject: [PATCH 07/10] qtbase-xcursor + +--- + src/plugins/platforms/xcb/qxcbcursor.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp +index fbadab4d50..c83ce0af5b 100644 +--- a/src/plugins/platforms/xcb/qxcbcursor.cpp ++++ b/src/plugins/platforms/xcb/qxcbcursor.cpp +@@ -317,10 +317,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen) + #if QT_CONFIG(xcb_xlib) && QT_CONFIG(library) + static bool function_ptrs_not_initialized = true; + if (function_ptrs_not_initialized) { +- QLibrary xcursorLib(QLatin1String("Xcursor"), 1); ++ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1); + bool xcursorFound = xcursorLib.load(); + if (!xcursorFound) { // try without the version number +- xcursorLib.setFileName(QLatin1String("Xcursor")); ++ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR)); + xcursorFound = xcursorLib.load(); + } + if (xcursorFound) { +-- +2.25.1 +