diff options
-rw-r--r-- | pkgs/tools/misc/qt5ct/default.nix | 5 | ||||
-rw-r--r-- | pkgs/tools/misc/qt5ct/wayland.patch | 22 |
2 files changed, 27 insertions, 0 deletions
diff --git a/pkgs/tools/misc/qt5ct/default.nix b/pkgs/tools/misc/qt5ct/default.nix index 9069821fe354c..fbb56b98be77b 100644 --- a/pkgs/tools/misc/qt5ct/default.nix +++ b/pkgs/tools/misc/qt5ct/default.nix @@ -15,6 +15,11 @@ mkDerivation rec { buildInputs = [ qtbase ]; + # Wayland needs to know the desktop file name in order to show the app name and icon. + # Patch has been upstreamed and can be removed in the future. + # See: https://sourceforge.net/p/qt5ct/code/549/ + patches = [ ./wayland.patch ]; + qmakeFlags = [ "LRELEASE_EXECUTABLE=${getDev qttools}/bin/lrelease" ]; diff --git a/pkgs/tools/misc/qt5ct/wayland.patch b/pkgs/tools/misc/qt5ct/wayland.patch new file mode 100644 index 0000000000000..fe186cfa4692d --- /dev/null +++ b/pkgs/tools/misc/qt5ct/wayland.patch @@ -0,0 +1,22 @@ +--- a/src/qt5ct/main.cpp ++++ b/src/qt5ct/main.cpp +@@ -29,14 +29,18 @@ + #include <QApplication> + #include <QLibraryInfo> + #include <QLocale> +-#include "qt5ct.h" ++#include <QtGlobal> + #include <QTranslator> + #include <QtDebug> ++#include "qt5ct.h" + #include "mainwindow.h" + + int main(int argc, char **argv) + { + QApplication app(argc, argv); ++#if (QT_VERSION >= QT_VERSION_CHECK(5, 7, 0)) ++ QGuiApplication::setDesktopFileName("qt5ct.desktop"); ++#endif + QTranslator translator; + QString locale = Qt5CT::systemLanguageID(); + translator.load(QString(":/qt5ct_") + locale); \ No newline at end of file |