From f7e88d6ae191bea2aa9e8b9067b9f7822b2eb9a8 Mon Sep 17 00:00:00 2001 From: Justin Zobel Date: Sun, 1 Oct 2023 15:58:07 +1030 Subject: [PATCH 01/16] Update to 6.5.3 --- .gitignore | 1 + qt6-qtbase.spec | 9 ++++++--- sources | 1 + 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index f96fe9b..b7f5040 100644 --- a/.gitignore +++ b/.gitignore @@ -21,3 +21,4 @@ /qtbase-everywhere-src-6.5.0.tar.xz /qtbase-everywhere-src-6.5.1.tar.xz /qtbase-everywhere-src-6.5.2.tar.xz +/qt-everywhere-src-6.5.3.tar.xz diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 6a8b26c..d6f729e 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -37,8 +37,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components -Version: 6.5.2 -Release: 5%{?dist} +Version: 6.5.3 +Release: 1%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -411,7 +411,7 @@ translationdir=%{_qt6_translationdir} Name: Qt6 Description: Qt6 Configuration -Version: 6.5.2 +Version: 6.5.3 EOF # rpm macros @@ -824,6 +824,9 @@ make check -k ||: %changelog +* Sun Oct 01 2023 Justin Zobel - 6.5.3-1 +- new version + * Sun Sep 03 2023 LuK1337 - 6.5.2-5 - Unbreak CMake Qt6::ExampleIconsPrivate package diff --git a/sources b/sources index 5151a6f..d39e003 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ SHA512 (qtbase-everywhere-src-6.5.2.tar.xz) = 8d97029aae5b73a3e03624c9a8495dbf2fe54a4f5e992071c06f3d93935e64c80f2121b33eeb60a92d96ceb288cb25d74906a5bf47b45bb018d859d4a2d13f20 +SHA512 (qt-everywhere-src-6.5.3.tar.xz) = ca8ea3b81c121886636988275f7fa8ae6d19f7be02669e63ab19b4285b611057a41279db9532c25ae87baa3904b010e1db68b899cd0eda17a5a8d3d87098b4d5 From 1149fa7db3aa72204a8d11f0ae1326023404ee89 Mon Sep 17 00:00:00 2001 From: Justin Zobel Date: Sun, 1 Oct 2023 16:28:04 +1030 Subject: [PATCH 02/16] Fix sources --- .gitignore | 1 + sources | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index b7f5040..9731985 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,4 @@ /qtbase-everywhere-src-6.5.1.tar.xz /qtbase-everywhere-src-6.5.2.tar.xz /qt-everywhere-src-6.5.3.tar.xz +/qtbase-everywhere-src-6.5.3.tar.xz diff --git a/sources b/sources index d39e003..d7ead64 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -SHA512 (qtbase-everywhere-src-6.5.2.tar.xz) = 8d97029aae5b73a3e03624c9a8495dbf2fe54a4f5e992071c06f3d93935e64c80f2121b33eeb60a92d96ceb288cb25d74906a5bf47b45bb018d859d4a2d13f20 -SHA512 (qt-everywhere-src-6.5.3.tar.xz) = ca8ea3b81c121886636988275f7fa8ae6d19f7be02669e63ab19b4285b611057a41279db9532c25ae87baa3904b010e1db68b899cd0eda17a5a8d3d87098b4d5 +SHA512 (qtbase-everywhere-src-6.5.3.tar.xz) = 31c6c01d466f1e01f18d6dcee593360c08ee83ad0a6be495a8eba023faad628cf07ce7285426fabfd247db306319e9a64da329682c99a712a282e32f7493cdb9 From a0b5aa05f9321c0adeb01a86453899417ebd3486 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Tue, 10 Oct 2023 14:42:17 +0200 Subject: [PATCH 03/16] 6.6.0 --- .gitignore | 1 + qt6-qtbase.spec | 15 ++++++++++---- qtbase-gcc11.patch | 36 --------------------------------- qtbase-libxkbcommon-1.6.0.patch | 24 ++++++++++++++++++++++ sources | 2 +- 5 files changed, 37 insertions(+), 41 deletions(-) delete mode 100644 qtbase-gcc11.patch create mode 100644 qtbase-libxkbcommon-1.6.0.patch diff --git a/.gitignore b/.gitignore index 9731985..a8ef9d1 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,4 @@ /qtbase-everywhere-src-6.5.2.tar.xz /qt-everywhere-src-6.5.3.tar.xz /qtbase-everywhere-src-6.5.3.tar.xz +/qtbase-everywhere-src-6.6.0.tar.xz diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index d6f729e..66f2a85 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -37,7 +37,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components -Version: 6.5.3 +Version: 6.6.0 Release: 1%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 @@ -87,8 +87,9 @@ Patch56: qtbase-mysql.patch # fix FTBFS against libglvnd-1.3.4+ Patch58: qtbase-libglvnd.patch -# gcc-11 -Patch90: qtbase-gcc11.patch +# fix FTBS against libxkbcommon 1.6.0 +Patch59: qtbase-libxkbcommon-1.6.0.patch + %if 0%{?fedora} < 39 # Latest QGnomePlatform needs to be specified to be used @@ -354,6 +355,7 @@ export MAKEFLAGS="%{?_smp_mflags}" -DQT_FEATURE_enable_new_dtags=ON \ -DQT_FEATURE_journald=%{?journald:ON}%{!?journald:OFF} \ -DQT_FEATURE_openssl_linked=ON \ + -DQT_FEATURE_openssl_hash=ON \ -DQT_FEATURE_libproxy=ON \ -DQT_FEATURE_sctp=ON \ -DQT_FEATURE_separate_debug_info=OFF \ @@ -411,7 +413,7 @@ translationdir=%{_qt6_translationdir} Name: Qt6 Description: Qt6 Configuration -Version: 6.5.3 +Version: 6.6.0 EOF # rpm macros @@ -586,6 +588,7 @@ make check -k ||: %{_bindir}/qmake* %{_bindir}/qtpaths* %{_bindir}/qt-cmake +%{_bindir}/qt-cmake-create %{_bindir}/qt-configure-module %{_libdir}/qt6/bin/qmake6 %{_qt6_bindir}/androiddeployqt @@ -596,6 +599,7 @@ make check -k ||: %{_qt6_bindir}/qmake %{_qt6_bindir}/qtpaths* %{_qt6_bindir}/qt-cmake +%{_qt6_bindir}/qt-cmake-create %{_qt6_bindir}/qt-configure-module %{_qt6_libexecdir}/qt-cmake-private %{_qt6_libexecdir}/qt-cmake-standalone-test @@ -824,6 +828,9 @@ make check -k ||: %changelog +* Tue Oct 10 2023 Jan Grulich - 6.6.0-1 +- 6.6.0 + * Sun Oct 01 2023 Justin Zobel - 6.5.3-1 - new version diff --git a/qtbase-gcc11.patch b/qtbase-gcc11.patch deleted file mode 100644 index dfbd08f..0000000 --- a/qtbase-gcc11.patch +++ /dev/null @@ -1,36 +0,0 @@ -diff --git a/examples/corelib/tools/contiguouscache/randomlistmodel.h b/examples/corelib/tools/contiguouscache/randomlistmodel.h -index 1fabb0d9..393ebaa3 100644 ---- a/examples/corelib/tools/contiguouscache/randomlistmodel.h -+++ b/examples/corelib/tools/contiguouscache/randomlistmodel.h -@@ -50,6 +50,7 @@ - #ifndef RANDOMLISTMODEL_H - #define RANDOMLISTMODEL_H - -+#include - #include - #include - -diff --git a/src/corelib/text/qanystringview.h b/src/corelib/text/qanystringview.h -index a7606253..60747cf0 100644 ---- a/src/corelib/text/qanystringview.h -+++ b/src/corelib/text/qanystringview.h -@@ -39,6 +39,7 @@ - #ifndef QANYSTRINGVIEW_H - #define QANYSTRINGVIEW_H - -+#include - #include - #include - -diff --git a/src/corelib/text/qbytearray.h b/src/corelib/text/qbytearray.h -index 9f646aaa..a5af793c 100644 ---- a/src/corelib/text/qbytearray.h -+++ b/src/corelib/text/qbytearray.h -@@ -41,6 +41,7 @@ - #ifndef QBYTEARRAY_H - #define QBYTEARRAY_H - -+#include - #include - #include - #include diff --git a/qtbase-libxkbcommon-1.6.0.patch b/qtbase-libxkbcommon-1.6.0.patch new file mode 100644 index 0000000..a3eaabb --- /dev/null +++ b/qtbase-libxkbcommon-1.6.0.patch @@ -0,0 +1,24 @@ +diff --git a/src/gui/platform/unix/qxkbcommon.cpp b/src/gui/platform/unix/qxkbcommon.cpp +index d254aeec..fab21226 100644 +--- a/src/gui/platform/unix/qxkbcommon.cpp ++++ b/src/gui/platform/unix/qxkbcommon.cpp +@@ -239,10 +239,15 @@ static constexpr const auto KeyTbl = qMakeArray( + Xkb2Qt, + Xkb2Qt, + Xkb2Qt, +- Xkb2Qt, +- Xkb2Qt, +- Xkb2Qt, +- Xkb2Qt, ++ // These were removed in libxkbcommon 1.6.0 ++ // XK_dead_lowline ++ Xkb2Qt<0xfe90, Qt::Key_Dead_Lowline>, ++ // XK_dead_aboveverticalline ++ Xkb2Qt<0xfe91, Qt::Key_Dead_Aboveverticalline>, ++ // XK_dead_belowverticalline ++ Xkb2Qt<0xfe92, Qt::Key_Dead_Belowverticalline>, ++ // XK_dead_longsolidusoverlay ++ Xkb2Qt<0xfe93, Qt::Key_Dead_Longsolidusoverlay>, + + // Special keys from X.org - This include multimedia keys, + // wireless/bluetooth/uwb keys, special launcher keys, etc. diff --git a/sources b/sources index d7ead64..7a24734 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-6.5.3.tar.xz) = 31c6c01d466f1e01f18d6dcee593360c08ee83ad0a6be495a8eba023faad628cf07ce7285426fabfd247db306319e9a64da329682c99a712a282e32f7493cdb9 +SHA512 (qtbase-everywhere-src-6.6.0.tar.xz) = 4e85acefeddc0a3cd6ba615b4768f435c4e237a605172153a1777a10285dab83d9cf220c18ce6d723d051b8b432f3e92be94925b54c2eb972c2c1d9ace849e17 From d130b7be6ca3390983e26af63148435947be6988 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Sun, 15 Oct 2023 08:58:53 -0400 Subject: [PATCH 04/16] Add qtwayland weak dep to -gui subpackage and use arched weak deps --- qt6-qtbase.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 66f2a85..ca2d6ac 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -297,7 +297,8 @@ Requires: %{name}%{?_isa} = %{version}-%{release} %package gui Summary: Qt6 GUI-related libraries Requires: %{name}%{?_isa} = %{version}-%{release} -Recommends: mesa-dri-drivers +Recommends: mesa-dri-drivers%{?_isa} +Recommends: qt6-qtwayland%{?_isa} # for Source6: 10-qt6-check-opengl2.sh: # glxinfo Requires: glx-utils @@ -828,6 +829,9 @@ make check -k ||: %changelog +* Sun Oct 15 2023 Neal Gompa - 6.6.0-2 +- Add qtwayland weak dep to -gui subpackage and use arched weak deps + * Tue Oct 10 2023 Jan Grulich - 6.6.0-1 - 6.6.0 From 66655b0bf6963d82f619f402e101e095b1668943 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 23 Oct 2023 08:24:07 +0200 Subject: [PATCH 05/16] Do not use tslib on RHEL builds --- qt6-qtbase.spec | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index ca2d6ac..a8638d0 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 2%{?dist} +Release: 3%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -128,7 +128,9 @@ BuildRequires: libmng-devel BuildRequires: libtiff-devel BuildRequires: libzstd-devel BuildRequires: mtdev-devel +%if 0%{?fedora} || 0%{?epel} BuildRequires: tslib-devel +%endif BuildRequires: pkgconfig(alsa) # required for -accessibility BuildRequires: pkgconfig(atspi-2) @@ -791,7 +793,9 @@ make check -k ||: %{_qt6_plugindir}/generic/libqevdevtabletplugin.so %{_qt6_plugindir}/generic/libqevdevtouchplugin.so %{_qt6_plugindir}/generic/libqlibinputplugin.so +%if 0%{?fedora} || 0%{?epel} %{_qt6_plugindir}/generic/libqtslibplugin.so +%endif %{_qt6_plugindir}/generic/libqtuiotouchplugin.so # Imageformats %{_qt6_plugindir}/imageformats/libqico.so @@ -829,6 +833,9 @@ make check -k ||: %changelog +* Mon Oct 23 2023 Jan Grulich - 6.6.0-3 +- Do not use tslib on RHEL builds + * Sun Oct 15 2023 Neal Gompa - 6.6.0-2 - Add qtwayland weak dep to -gui subpackage and use arched weak deps From a19a7d36f9e516d2eda55ab4681b07d5d7cd6d9f Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 6 Nov 2023 09:14:27 +0100 Subject: [PATCH 06/16] Upstream backports - a11y - fix race condition on atspi startup on Wayland --- qt6-qtbase.spec | 7 +++- ...ondition-on-atspi-startup-on-wayland.patch | 37 +++++++++++++++++++ 2 files changed, 43 insertions(+), 1 deletion(-) create mode 100644 qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index a8638d0..2b192c5 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 3%{?dist} +Release: 4%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -97,6 +97,7 @@ Patch100: qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch %endif ## upstream patches +Patch200: qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch # Do not check any files in %%{_qt6_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -833,6 +834,10 @@ make check -k ||: %changelog +* Mon Nov 06 2023 Jan Grulich - 6.6.0-4 +- Upstream backports + - a11y - fix race condition on atspi startup on Wayland + * Mon Oct 23 2023 Jan Grulich - 6.6.0-3 - Do not use tslib on RHEL builds diff --git a/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch b/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch new file mode 100644 index 0000000..b948748 --- /dev/null +++ b/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch @@ -0,0 +1,37 @@ +From 197e5915585e8978e8b98a861f71f2d22b0d930e Mon Sep 17 00:00:00 2001 +From: Harald Sitter +Date: Tue, 01 Aug 2023 13:56:24 +0200 +Subject: [PATCH] a11y: fix race condition on atspi startup on Wayland + +This amends db346e711c9af50566c234cfc21199680e6cb499 . + +Previously we could race between dbus connecting and our "manual" +enabled call since we didn't take into account whether dbus is +connected or not. + +This lead to scenarios where opening an application (in particular under +Wayland) would result in the application not being able to register on +the a11y bus because registration was attempted too early. +By simply taking connectedness into account we'll make sure to not +run registration too early anymore. + +Pick-to: 6.5 +Change-Id: I46a3c0b57f8a0c83d3e5fae9e355c2061954031f +Reviewed-by: Liang Qi +(cherry picked from commit 918fed39156c90540a12557c7a6630ae3d7d841e) +Reviewed-by: Qt Cherry-pick Bot +--- + +diff --git a/src/gui/accessible/linux/qspiaccessiblebridge.cpp b/src/gui/accessible/linux/qspiaccessiblebridge.cpp +index f59d8be..8a3f82e 100644 +--- a/src/gui/accessible/linux/qspiaccessiblebridge.cpp ++++ b/src/gui/accessible/linux/qspiaccessiblebridge.cpp +@@ -38,7 +38,7 @@ + // But do that only on next loop, once dbus is really settled. + QTimer::singleShot( + 0, this, [this]{ +- if (dbusConnection->isEnabled()) ++ if (dbusConnection->isEnabled() && dbusConnection->connection().isConnected()) + enabledChanged(true); + }); + } From a44bfe9ca55a2a6d4c89571b35fe27d605608232 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Tue, 7 Nov 2023 15:55:23 +0100 Subject: [PATCH 07/16] Fix Qt not showing up emoji by handling emoji font family --- qt6-qtbase.spec | 7 ++- qtbase-cache-emoji-font.patch | 85 +++++++++++++++++++++++++++++++++++ 2 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 qtbase-cache-emoji-font.patch diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 2b192c5..cc72989 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 4%{?dist} +Release: 5%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -90,6 +90,8 @@ Patch58: qtbase-libglvnd.patch # fix FTBS against libxkbcommon 1.6.0 Patch59: qtbase-libxkbcommon-1.6.0.patch +# Bug 1954359 - Many emoji don't show up in Qt apps because qt does not handle 'emoji' font family +Patch60: qtbase-cache-emoji-font.patch %if 0%{?fedora} < 39 # Latest QGnomePlatform needs to be specified to be used @@ -834,6 +836,9 @@ make check -k ||: %changelog +* Tue Nov 07 2023 Jan Grulich - 6.6.0-5 +- Fix Qt not showing up emoji by handling emoji font family + * Mon Nov 06 2023 Jan Grulich - 6.6.0-4 - Upstream backports - a11y - fix race condition on atspi startup on Wayland diff --git a/qtbase-cache-emoji-font.patch b/qtbase-cache-emoji-font.patch new file mode 100644 index 0000000..2ec9a05 --- /dev/null +++ b/qtbase-cache-emoji-font.patch @@ -0,0 +1,85 @@ +diff --git a/src/gui/text/unix/qfontconfigdatabase.cpp b/src/gui/text/unix/qfontconfigdatabase.cpp +index 474644b8..f61e6e83 100644 +--- a/src/gui/text/unix/qfontconfigdatabase.cpp ++++ b/src/gui/text/unix/qfontconfigdatabase.cpp +@@ -592,6 +592,7 @@ void QFontconfigDatabase::populateFontDatabase() + ++f; + } + ++ cacheEmojiFontFamily(); + //QPA has very lazy population of the font db. We want it to be initialized when + //QApplication is constructed, so that the population procedure can do something like this to + //set the default font +@@ -735,6 +736,9 @@ QStringList QFontconfigDatabase::fallbacksForFamily(const QString &family, QFont + if (!pattern) + return fallbackFamilies; + ++ if (!m_cacheEmojiFontFamily.isEmpty()) ++ fallbackFamilies << m_cacheEmojiFontFamily; ++ + FcValue value; + value.type = FcTypeString; + const QByteArray cs = family.toUtf8(); +@@ -1016,4 +1020,47 @@ void QFontconfigDatabase::setupFontEngine(QFontEngineFT *engine, const QFontDef + engine->glyphFormat = format; + } + ++void QFontconfigDatabase::cacheEmojiFontFamily() ++{ ++ FcPattern *pattern; ++ pattern = FcPatternCreate(); ++ ++ FcValue value; ++ value.type = FcTypeString; ++ value.u.s = (const FcChar8 *)"emoji"; ++ FcPatternAdd(pattern,FC_FAMILY,value,true); ++ ++ FcLangSet *ls = FcLangSetCreate(); ++ FcLangSetAdd(ls, (const FcChar8*)"und-zsye"); ++ FcPatternAddLangSet(pattern, FC_LANG, ls); ++ ++ FcConfigSubstitute(nullptr, pattern, FcMatchPattern); ++ FcDefaultSubstitute(pattern); ++ ++ FcResult result = FcResultMatch; ++ FcFontSet *fontSet = FcFontSort(nullptr,pattern,FcTrue,nullptr,&result); ++ FcPatternDestroy(pattern); ++ ++ if (fontSet) { ++ for (int i = 0; i < fontSet->nfont; i++) { ++ FcChar8 *value = nullptr; ++ if (FcPatternGetString(fontSet->fonts[i], FC_FAMILY, 0, &value) != FcResultMatch) ++ continue; ++ ++ FcLangSet *rls = nullptr; ++ if (FcPatternGetLangSet(fontSet->fonts[i], FC_LANG, 0, &rls) != FcResultMatch) ++ continue; ++ ++ if (!FcLangSetContains(rls, ls)) ++ continue; ++ ++ m_cacheEmojiFontFamily = QString::fromUtf8((const char *)value); ++ break; ++ } ++ FcFontSetDestroy(fontSet); ++ } ++ ++ FcLangSetDestroy(ls); ++} ++ + QT_END_NAMESPACE +diff --git a/src/gui/text/unix/qfontconfigdatabase_p.h b/src/gui/text/unix/qfontconfigdatabase_p.h +index cf15306e..90b94087 100644 +--- a/src/gui/text/unix/qfontconfigdatabase_p.h ++++ b/src/gui/text/unix/qfontconfigdatabase_p.h +@@ -37,7 +37,10 @@ public: + QFont defaultFont() const override; + + private: ++ void cacheEmojiFontFamily(); + void setupFontEngine(QFontEngineFT *engine, const QFontDef &fontDef) const; ++ ++ QString m_cacheEmojiFontFamily; + }; + + QT_END_NAMESPACE From 469e3a88603915f204cb499018db310df6d6a1fd Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Thu, 9 Nov 2023 12:54:48 +0100 Subject: [PATCH 08/16] Revert: Fix Qt not showing up emoji by handling emoji font family --- qt6-qtbase.spec | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index cc72989..22e6287 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 5%{?dist} +Release: 6%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -91,7 +91,8 @@ Patch58: qtbase-libglvnd.patch Patch59: qtbase-libxkbcommon-1.6.0.patch # Bug 1954359 - Many emoji don't show up in Qt apps because qt does not handle 'emoji' font family -Patch60: qtbase-cache-emoji-font.patch +# FIXME: this change seems to completely break font rendering for some people +# Patch60: qtbase-cache-emoji-font.patch %if 0%{?fedora} < 39 # Latest QGnomePlatform needs to be specified to be used @@ -836,6 +837,9 @@ make check -k ||: %changelog +* Thu Nov 09 2023 Jan Grulich - 6.6.0-6 +- Revert: Fix Qt not showing up emoji by handling emoji font family + * Tue Nov 07 2023 Jan Grulich - 6.6.0-5 - Fix Qt not showing up emoji by handling emoji font family From 4d5e0869d8a958cf257643819b3d9316d44d43b5 Mon Sep 17 00:00:00 2001 From: Alessandro Astone Date: Fri, 10 Nov 2023 18:29:27 +0100 Subject: [PATCH 09/16] Add xkbcommon as a devel dependency Optional dev dependency of Qt6::Gui --- qt6-qtbase.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 22e6287..5a5c0df 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.0 -Release: 6%{?dist} +Release: 7%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -225,6 +225,8 @@ Requires: pkgconfig(gl) %if 0%{?vulkan} Requires: pkgconfig(vulkan) %endif +# Optional dev dependency of Qt6::Gui +Requires: pkgconfig(xkbcommon) Requires: qt6-rpm-macros %if 0%{?use_clang} Requires: clang >= 3.7.0 @@ -837,6 +839,9 @@ make check -k ||: %changelog +* Fri Nov 10 2023 Alessandro Astone - 6.6.0-7 +- Add xkbcommon as a devel dependency + * Thu Nov 09 2023 Jan Grulich - 6.6.0-6 - Revert: Fix Qt not showing up emoji by handling emoji font family From 0916bd3f34c920e843f0ff756f88a100537ccc18 Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Mon, 27 Nov 2023 14:57:46 +0100 Subject: [PATCH 10/16] 6.6.1 --- .gitignore | 1 + qt6-qtbase.spec | 13 +++---- ...ondition-on-atspi-startup-on-wayland.patch | 37 ------------------- qtbase-libxkbcommon-1.6.0.patch | 24 ------------ sources | 2 +- 5 files changed, 8 insertions(+), 69 deletions(-) delete mode 100644 qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch delete mode 100644 qtbase-libxkbcommon-1.6.0.patch diff --git a/.gitignore b/.gitignore index a8ef9d1..ea0a7b8 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,4 @@ /qt-everywhere-src-6.5.3.tar.xz /qtbase-everywhere-src-6.5.3.tar.xz /qtbase-everywhere-src-6.6.0.tar.xz +/qtbase-everywhere-src-6.6.1.tar.xz diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 5a5c0df..3ab528e 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -37,8 +37,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components -Version: 6.6.0 -Release: 7%{?dist} +Version: 6.6.1 +Release: 1%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -87,9 +87,6 @@ Patch56: qtbase-mysql.patch # fix FTBFS against libglvnd-1.3.4+ Patch58: qtbase-libglvnd.patch -# fix FTBS against libxkbcommon 1.6.0 -Patch59: qtbase-libxkbcommon-1.6.0.patch - # Bug 1954359 - Many emoji don't show up in Qt apps because qt does not handle 'emoji' font family # FIXME: this change seems to completely break font rendering for some people # Patch60: qtbase-cache-emoji-font.patch @@ -100,7 +97,6 @@ Patch100: qtbase-use-qgnomeplatform-as-default-platform-theme-on-gnome.patch %endif ## upstream patches -Patch200: qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch # Do not check any files in %%{_qt6_plugindir}/platformthemes/ for requires. # Those themes are there for platform integration. If the required libraries are @@ -422,7 +418,7 @@ translationdir=%{_qt6_translationdir} Name: Qt6 Description: Qt6 Configuration -Version: 6.6.0 +Version: 6.6.1 EOF # rpm macros @@ -839,6 +835,9 @@ make check -k ||: %changelog +* Mon Nov 27 2023 Jan Grulich - 6.6.1-1 +- 6.6.1 + * Fri Nov 10 2023 Alessandro Astone - 6.6.0-7 - Add xkbcommon as a devel dependency diff --git a/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch b/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch deleted file mode 100644 index b948748..0000000 --- a/qtbase-a11y-fix-race-condition-on-atspi-startup-on-wayland.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 197e5915585e8978e8b98a861f71f2d22b0d930e Mon Sep 17 00:00:00 2001 -From: Harald Sitter -Date: Tue, 01 Aug 2023 13:56:24 +0200 -Subject: [PATCH] a11y: fix race condition on atspi startup on Wayland - -This amends db346e711c9af50566c234cfc21199680e6cb499 . - -Previously we could race between dbus connecting and our "manual" -enabled call since we didn't take into account whether dbus is -connected or not. - -This lead to scenarios where opening an application (in particular under -Wayland) would result in the application not being able to register on -the a11y bus because registration was attempted too early. -By simply taking connectedness into account we'll make sure to not -run registration too early anymore. - -Pick-to: 6.5 -Change-Id: I46a3c0b57f8a0c83d3e5fae9e355c2061954031f -Reviewed-by: Liang Qi -(cherry picked from commit 918fed39156c90540a12557c7a6630ae3d7d841e) -Reviewed-by: Qt Cherry-pick Bot ---- - -diff --git a/src/gui/accessible/linux/qspiaccessiblebridge.cpp b/src/gui/accessible/linux/qspiaccessiblebridge.cpp -index f59d8be..8a3f82e 100644 ---- a/src/gui/accessible/linux/qspiaccessiblebridge.cpp -+++ b/src/gui/accessible/linux/qspiaccessiblebridge.cpp -@@ -38,7 +38,7 @@ - // But do that only on next loop, once dbus is really settled. - QTimer::singleShot( - 0, this, [this]{ -- if (dbusConnection->isEnabled()) -+ if (dbusConnection->isEnabled() && dbusConnection->connection().isConnected()) - enabledChanged(true); - }); - } diff --git a/qtbase-libxkbcommon-1.6.0.patch b/qtbase-libxkbcommon-1.6.0.patch deleted file mode 100644 index a3eaabb..0000000 --- a/qtbase-libxkbcommon-1.6.0.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff --git a/src/gui/platform/unix/qxkbcommon.cpp b/src/gui/platform/unix/qxkbcommon.cpp -index d254aeec..fab21226 100644 ---- a/src/gui/platform/unix/qxkbcommon.cpp -+++ b/src/gui/platform/unix/qxkbcommon.cpp -@@ -239,10 +239,15 @@ static constexpr const auto KeyTbl = qMakeArray( - Xkb2Qt, - Xkb2Qt, - Xkb2Qt, -- Xkb2Qt, -- Xkb2Qt, -- Xkb2Qt, -- Xkb2Qt, -+ // These were removed in libxkbcommon 1.6.0 -+ // XK_dead_lowline -+ Xkb2Qt<0xfe90, Qt::Key_Dead_Lowline>, -+ // XK_dead_aboveverticalline -+ Xkb2Qt<0xfe91, Qt::Key_Dead_Aboveverticalline>, -+ // XK_dead_belowverticalline -+ Xkb2Qt<0xfe92, Qt::Key_Dead_Belowverticalline>, -+ // XK_dead_longsolidusoverlay -+ Xkb2Qt<0xfe93, Qt::Key_Dead_Longsolidusoverlay>, - - // Special keys from X.org - This include multimedia keys, - // wireless/bluetooth/uwb keys, special launcher keys, etc. diff --git a/sources b/sources index 7a24734..8041d4c 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-6.6.0.tar.xz) = 4e85acefeddc0a3cd6ba615b4768f435c4e237a605172153a1777a10285dab83d9cf220c18ce6d723d051b8b432f3e92be94925b54c2eb972c2c1d9ace849e17 +SHA512 (qtbase-everywhere-src-6.6.1.tar.xz) = 93e77b9b077a3acd5607b643db282fdd7ed0bdfa07df74c3f0d2285afeb1672a6fa229a7e7a6c8a462701305fc22ffef20c212d906484e50fb5cdb706a7b72e1 From 8c8bebcc6b3c0bb8c3edaf9365d2ba3031366313 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Tue, 12 Dec 2023 16:23:32 +0100 Subject: [PATCH 11/16] Recommend qt6-qttranslations Required for some locales. See: https://pagure.io/fedora-kde/SIG/issue/311 --- qt6-qtbase.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 3ab528e..a208f4b 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.1 -Release: 1%{?dist} +Release: 2%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -303,6 +303,8 @@ Summary: Qt6 GUI-related libraries Requires: %{name}%{?_isa} = %{version}-%{release} Recommends: mesa-dri-drivers%{?_isa} Recommends: qt6-qtwayland%{?_isa} +# Required for some locales: https://pagure.io/fedora-kde/SIG/issue/311 +Recommends: qt6-qttranslations # for Source6: 10-qt6-check-opengl2.sh: # glxinfo Requires: glx-utils @@ -835,6 +837,9 @@ make check -k ||: %changelog +* Tue Dec 12 2023 Timothée Ravier - 6.6.1-2 +- Recommend qt6-qttranslations + * Mon Nov 27 2023 Jan Grulich - 6.6.1-1 - 6.6.1 From c095cdd4b65a4a0114fd0457df9f999306661499 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Timoth=C3=A9e=20Ravier?= Date: Tue, 12 Dec 2023 16:24:27 +0100 Subject: [PATCH 12/16] Minor whitespace fix --- qt6-qtbase.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index a208f4b..97257b0 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -195,7 +195,7 @@ Requires: %{name}-common = %{version}-%{release} %if 0%{?fedora} || 0%{?epel} %global ibase 1 %endif - + %description Qt is a software toolkit for developing applications. From 163ea650a8669a8a2a94d24e7ab0cd6af16d06d0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 09:57:36 +0000 Subject: [PATCH 13/16] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- qt6-qtbase.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 97257b0..f4dbe15 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.1 -Release: 2%{?dist} +Release: 3%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -837,6 +837,9 @@ make check -k ||: %changelog +* Mon Jan 22 2024 Fedora Release Engineering - 6.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Dec 12 2023 Timothée Ravier - 6.6.1-2 - Recommend qt6-qttranslations From 9617d2aec3c432567f13c1a5141fed76bcd61dec Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 14:16:13 +0000 Subject: [PATCH 14/16] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- qt6-qtbase.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index f4dbe15..8be1452 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.1 -Release: 3%{?dist} +Release: 4%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -837,6 +837,9 @@ make check -k ||: %changelog +* Fri Jan 26 2024 Fedora Release Engineering - 6.6.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Mon Jan 22 2024 Fedora Release Engineering - 6.6.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 9e6f9d15b82e7280ca0428351f286152cacc8b5d Mon Sep 17 00:00:00 2001 From: Pete Walter Date: Wed, 31 Jan 2024 20:12:18 +0000 Subject: [PATCH 15/16] Rebuild for ICU 74 --- qt6-qtbase.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index 8be1452..c5fca68 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -38,7 +38,7 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components Version: 6.6.1 -Release: 4%{?dist} +Release: 5%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -837,6 +837,9 @@ make check -k ||: %changelog +* Wed Jan 31 2024 Pete Walter - 6.6.1-5 +- Rebuild for ICU 74 + * Fri Jan 26 2024 Fedora Release Engineering - 6.6.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 7440c8d5f5bf80cb840162c798cfde8b30e7c38a Mon Sep 17 00:00:00 2001 From: Jan Grulich Date: Thu, 15 Feb 2024 10:20:53 +0100 Subject: [PATCH 16/16] 6.6.2 --- .gitignore | 1 + qt6-qtbase.spec | 9 ++++++--- sources | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index ea0a7b8..5b3b45f 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ /qtbase-everywhere-src-6.5.3.tar.xz /qtbase-everywhere-src-6.6.0.tar.xz /qtbase-everywhere-src-6.6.1.tar.xz +/qtbase-everywhere-src-6.6.2.tar.xz diff --git a/qt6-qtbase.spec b/qt6-qtbase.spec index c5fca68..b0767d8 100644 --- a/qt6-qtbase.spec +++ b/qt6-qtbase.spec @@ -37,8 +37,8 @@ BuildRequires: pkgconfig(libsystemd) Name: qt6-qtbase Summary: Qt6 - QtBase components -Version: 6.6.1 -Release: 5%{?dist} +Version: 6.6.2 +Release: 1%{?dist} License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0 Url: http://qt-project.org/ @@ -420,7 +420,7 @@ translationdir=%{_qt6_translationdir} Name: Qt6 Description: Qt6 Configuration -Version: 6.6.1 +Version: 6.6.2 EOF # rpm macros @@ -837,6 +837,9 @@ make check -k ||: %changelog +* Thu Feb 15 2024 Jan Grulich - 6.6.2-1 +- 6.6.2 + * Wed Jan 31 2024 Pete Walter - 6.6.1-5 - Rebuild for ICU 74 diff --git a/sources b/sources index 8041d4c..cd120ad 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (qtbase-everywhere-src-6.6.1.tar.xz) = 93e77b9b077a3acd5607b643db282fdd7ed0bdfa07df74c3f0d2285afeb1672a6fa229a7e7a6c8a462701305fc22ffef20c212d906484e50fb5cdb706a7b72e1 +SHA512 (qtbase-everywhere-src-6.6.2.tar.xz) = ea343bcf269779a4e078ed8baddfbe6c5ec4a34275c7d72b3f3928da60feece2ddc9ce4a380c6536a4e1654b483cee8918f8ad3038904725d2dd1c653ae83ece