Merge pull request #260239 from NickCao/qt6

qt6: 6.5.3 -> 6.6.0
This commit is contained in:
Nick Cao 2023-10-13 00:39:56 -04:00 committed by GitHub
commit 9cbf22c3f4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
30 changed files with 427 additions and 261 deletions

View File

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch2
, cmake
, ninja
, extra-cmake-modules
@ -26,6 +27,15 @@ stdenv.mkDerivation rec {
hash = "sha256-aAmpFKIIFZLPWUaOcf4V1d/wVQ7xRcnXFsqFjROsabg=";
};
patches = [
# itemfakevim: fix build with qt 6.6.0
# https://github.com/hluk/CopyQ/pull/2508
(fetchpatch2 {
url = "https://github.com/hluk/CopyQ/commit/a20bfff0d78296b334ff8cabb047ab5d842b7311.patch";
hash = "sha256-F/6cQ8+O1Ttd4EFFxQas5ES6U+qxWdmYqUWRQLsVMa4=";
})
];
nativeBuildInputs = [
cmake
ninja

View File

@ -94,6 +94,13 @@ stdenv.mkDerivation rec {
url = "https://salsa.debian.org/debian/telegram-desktop/-/raw/09b363ed5a4fcd8ecc3282b9bfede5fbb83f97ef/debian/patches/Disable-register-custom-scheme.patch";
hash = "sha256-B8X5lnSpwwdp1HlvyXJWQPybEN+plOwimdV5gW6aY2Y=";
})
# lib_base: Add missing include for Qt 6.6
(fetchpatch {
url = "https://github.com/desktop-app/lib_base/commit/5ca91dbb811c84591780236abc31431e313faf39.patch";
stripLen = 1;
extraPrefix = "Telegram/lib_base/";
hash = "sha256-eZkyMnPaAmUFYXiCmPhLRTw2Xdx0lylY+UVOckCsiaA=";
})
];
postPatch = ''

View File

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch2
, obs-studio
, cmake
, zlib
@ -27,6 +28,16 @@ stdenv.mkDerivation (finalAttrs: {
fetchSubmodules = true;
};
patches = [
# fix build with qt 6.6.0
# treewide: replace deprecated qAsConst with std::as_const()
# https://github.com/univrsal/tuna/pull/176
(fetchpatch2 {
url = "https://github.com/univrsal/tuna/commit/0d570e771f8d8e6ae7c85bd2b86bbf59c264789e.patch";
hash = "sha256-A5idhMiM9funqhTm5XMIBqwy+FO1SaNPtgZjo+Vws6k=";
})
];
postInstall = ''
mkdir $out/lib $out/share
mv $out/obs-plugins/64bit $out/lib/obs-plugins

View File

@ -1,6 +1,7 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch2
, cmake
, extra-cmake-modules
, pkg-config
@ -30,6 +31,16 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-s1FaazHVtWE697BO0hIOgZVowdkq68R9x327ZnJRnlo=";
};
patches = [
# fix build with qt 6.6.0
# treewide: replace deprecated qAsConst with std::as_const()
# https://github.com/zealdocs/zeal/pull/1565
(fetchpatch2 {
url = "https://github.com/zealdocs/zeal/commit/d50a0115d58df2b222ede4c3a76b9686f4716465.patch";
hash = "sha256-Ub6RCZGpLSOjvK17Jrm+meZuZGXcC4kI3QYl5HbsLWU=";
})
];
postPatch = ''
substituteInPlace CMakeLists.txt \
--replace 'ZEAL_VERSION_SUFFIX "-dev"' 'ZEAL_VERSION_SUFFIX ""'

View File

@ -49,11 +49,11 @@ let
./patches/0004-qtbase-fix-locating-tzdir-on-NixOS.patch
./patches/0005-qtbase-deal-with-a-font-face-at-index-0-as-Regular-f.patch
./patches/0006-qtbase-qt-cmake-always-use-cmake-from-path.patch
./patches/0007-qtbase-find-qt-tools-in-QTTOOLSPATH.patch
./patches/0008-qtbase-allow-translations-outside-prefix.patch
./patches/0008-qtbase-find-qmlimportscanner-in-macdeployqt-via-environment.patch
./patches/0009-qtbase-check-in-the-QML-folder-of-this-library-does-actuall.patch
./patches/0010-qtbase-pass-to-qmlimportscanner-the-QML2_IMPORT_PATH.patch
./patches/0007-qtbase-find-tools-in-PATH.patch
./patches/0008-qtbase-pass-to-qmlimportscanner-the-QML2_IMPORT_PATH.patch
./patches/0009-qtbase-allow-translations-outside-prefix.patch
./patches/0010-qtbase-find-qmlimportscanner-in-macdeployqt-via-envi.patch
./patches/0011-qtbase-check-in-the-QML-folder-of-this-library-does-.patch
];
};
env = callPackage ./qt-env.nix { };
@ -65,6 +65,7 @@ let
qtdatavis3d
qtdeclarative
qtdoc
qtgraphs
qtgrpc
qthttpserver
qtimageformats
@ -105,15 +106,8 @@ let
qtdatavis3d = callPackage ./modules/qtdatavis3d.nix { };
qtdeclarative = callPackage ./modules/qtdeclarative.nix { };
qtdoc = callPackage ./modules/qtdoc.nix { };
qtgrpc = callPackage ./modules/qtgrpc.nix {
patches = [
(fetchpatch2 {
# fix compatibility with protobuf 23
url = "https://gitlab.archlinux.org/archlinux/packaging/packages/qt6-grpc/-/raw/5cfb8728ca626af41d5dc2b1f642d026c011ec56/protobuf-23.patch";
hash = "sha256-msVQEAt0DewOnZIgymGijJEpIXbfmMUkdbIyJ0ZNuok=";
})
];
};
qtgraphs = callPackage ./modules/qtgraphs.nix { };
qtgrpc = callPackage ./modules/qtgrpc.nix { };
qthttpserver = callPackage ./modules/qthttpserver.nix { };
qtimageformats = callPackage ./modules/qtimageformats.nix { };
qtlanguageserver = callPackage ./modules/qtlanguageserver.nix { };

View File

@ -1 +1 @@
WGET_ARGS=( https://download.qt.io/official_releases/qt/6.5/6.5.3/submodules/ -A '*.tar.xz' )
WGET_ARGS=( https://download.qt.io/official_releases/qt/6.6/6.6.0/submodules/ -A '*.tar.xz' )

View File

@ -0,0 +1,16 @@
{ qtModule
, qtbase
, qtdeclarative
, qtquick3d
, qtquicktimeline
}:
qtModule {
pname = "qtgraphs";
qtInputs = [
qtbase
qtdeclarative
qtquick3d
qtquicktimeline
];
}

View File

@ -3,12 +3,10 @@
, qtdeclarative
, protobuf
, grpc
, patches ? []
}:
qtModule {
pname = "qtgrpc";
qtInputs = [ qtbase qtdeclarative ];
buildInputs = [ protobuf grpc ];
inherit patches;
}

View File

@ -5,12 +5,12 @@
qtModule rec {
pname = "qtmqtt";
version = "6.5.3";
version = "6.6.0";
src = fetchFromGitHub {
owner = "qt";
repo = "qtmqtt";
rev = "v${version}";
hash = "sha256-F0rq72Cvnwy2cJmw3wUL9t8ZsnI61HBRMMWRwKdSEs8=";
hash = "sha256-rFi1w0Z4jLvHvhu0/VOIT0MWmKjy51jSK5M56qLs0gI=";
};
qtInputs = [ qtbase ];
}

View File

@ -5,6 +5,7 @@
, libmng
, zlib
, pkg-config
, fetchpatch2
}:
qtModule {
@ -12,4 +13,13 @@ qtModule {
qtInputs = [ qtbase ];
buildInputs = [ libwebp jasper libmng zlib ];
nativeBuildInputs = [ pkg-config ];
patches = [
# Fix nullptr dereference with invalid SVG
# https://bugreports.qt.io/projects/QTBUG/issues/QTBUG-117944
(fetchpatch2 {
name = "QTBUG-117944.patch";
url = "https://code.qt.io/cgit/qt/qtsvg.git/patch/?id=edc8ca7f";
hash = "sha256-kBQYlQqPb0QkRhatQyaGdxE1Y5zHd6/ZEd5zn0gRVoM=";
})
];
}

View File

@ -23,6 +23,13 @@ qtModule {
env.NIX_CFLAGS_COMPILE = toString [
"-DNIX_OUTPUT_OUT=\"${placeholder "out"}\""
];
postPatch = ''
substituteInPlace \
src/qdoc/catch/CMakeLists.txt \
src/qdoc/catch_generators/CMakeLists.txt \
src/qdoc/catch_conversions/CMakeLists.txt \
--replace ''\'''${CMAKE_INSTALL_INCLUDEDIR}' "$out/include"
'';
postInstall = ''
mkdir -p "$dev"
ln -s "$out/bin" "$dev/bin"

View File

@ -1,7 +1,7 @@
From 69d9faa9e4420d3cb0d1466c1b95ceadb2cd75f3 Mon Sep 17 00:00:00 2001
From afbe4002948e60ee3b27cb9be9e549ae416373f8 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Thu, 13 Apr 2023 23:42:29 +0800
Subject: [PATCH 1/6] qtbase: qmake: always use libname instead of absolute
Subject: [PATCH 01/11] qtbase: qmake: always use libname instead of absolute
path in qmake files
In generated qmake files, absolute paths to qt libraries are embedded
@ -46,5 +46,5 @@ index 3ffe354fd8d..441332d4582 100644
else()
list(APPEND out_list "${library_path}")
--
2.39.2
2.42.0

View File

@ -1,7 +1,7 @@
From 41e32c41f781261726722628122c924abb532575 Mon Sep 17 00:00:00 2001
From 8d3f5ee63ed29fe41927b904aa1e2b40f90c8ef4 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Fri, 14 Apr 2023 21:43:04 +0800
Subject: [PATCH 2/6] qtbase: qmake: fix mkspecs for darwin
Subject: [PATCH 02/11] qtbase: qmake: fix mkspecs for darwin
---
mkspecs/common/mac.conf | 2 +-
@ -26,7 +26,7 @@ index 61bea952b22..9909dae7260 100644
QMAKE_LFLAGS_REL_RPATH =
diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf
index 4acf3b19d5c..aadfce875e2 100644
index f364716717c..3b40328304d 100644
--- a/mkspecs/features/mac/default_post.prf
+++ b/mkspecs/features/mac/default_post.prf
@@ -1,9 +1,5 @@
@ -39,7 +39,7 @@ index 4acf3b19d5c..aadfce875e2 100644
contains(TEMPLATE, .*app) {
!macx-xcode:if(isEmpty(BUILDS)|build_pass) {
# Detect changes to the platform SDK
@@ -15,37 +11,6 @@ contains(TEMPLATE, .*app) {
@@ -15,269 +11,10 @@ contains(TEMPLATE, .*app) {
QMAKE_EXTRA_INCLUDES += $$shell_quote($$PWD/sdk.mk)
}
@ -77,9 +77,6 @@ index 4acf3b19d5c..aadfce875e2 100644
}
!no_objective_c:CONFIG += objective_c
@@ -73,234 +38,6 @@ qt {
}
}
-# Add the same default rpaths as Xcode does for new projects.
-# This is especially important for iOS/tvOS/watchOS where no other option is possible.
@ -486,5 +483,5 @@ index df191eb13c4..e69de29bb2d 100644
-
-load(toolchain)
--
2.39.2
2.42.0

View File

@ -1,17 +1,17 @@
From f52f3c2cb1703592eaeb43e80f585a24ce8402d7 Mon Sep 17 00:00:00 2001
From 8ce66fca339d9daf6bd132771c2ea582a461f31c Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Fri, 14 Apr 2023 09:34:46 +0800
Subject: [PATCH 3/6] qtbase: qmake: fix includedir in generated pkg-config
Subject: [PATCH 03/11] qtbase: qmake: fix includedir in generated pkg-config
---
qmake/generators/makefile.cpp | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp
index cc985a878b4..4e3b383d812 100644
index 11d2f0ff7df..c78ed0d3485 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
@@ -3403,8 +3403,7 @@ MakefileGenerator::writePkgConfigFile()
@@ -3412,8 +3412,7 @@ MakefileGenerator::writePkgConfigFile()
<< varGlue("QMAKE_PKGCONFIG_CFLAGS", "", " ", " ")
// << varGlue("DEFINES","-D"," -D"," ")
;
@ -22,5 +22,5 @@ index cc985a878b4..4e3b383d812 100644
&& libDir != QLatin1String("/Library/Frameworks")) {
t << " -F${libdir}";
--
2.39.2
2.42.0

View File

@ -1,18 +1,18 @@
From dd0dfc9cf87966f5d7493a943ec04c665be83cb6 Mon Sep 17 00:00:00 2001
From b1533ac42718835499ec633ffb3b1bed0d040719 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Fri, 14 Apr 2023 09:35:25 +0800
Subject: [PATCH 4/6] qtbase: fix locating tzdir on NixOS
Subject: [PATCH 04/11] qtbase: fix locating tzdir on NixOS
---
src/corelib/time/qtimezoneprivate_tz.cpp | 27 +++++++++++++++---------
1 file changed, 17 insertions(+), 10 deletions(-)
diff --git a/src/corelib/time/qtimezoneprivate_tz.cpp b/src/corelib/time/qtimezoneprivate_tz.cpp
index 960a0944185..a5186acbd91 100644
index e702a5d6b43..2ac88c1cd10 100644
--- a/src/corelib/time/qtimezoneprivate_tz.cpp
+++ b/src/corelib/time/qtimezoneprivate_tz.cpp
@@ -51,7 +51,11 @@ typedef QHash<QByteArray, QTzTimeZone> QTzTimeZoneHash;
// Parse zone.tab table, assume lists all installed zones, if not will need to read directories
@@ -56,7 +56,11 @@ static bool isTzFile(const QString &name);
// zone1970.tab).
static QTzTimeZoneHash loadTzTimeZones()
{
- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
@ -24,7 +24,7 @@ index 960a0944185..a5186acbd91 100644
if (!QFile::exists(path))
path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
@@ -730,18 +734,21 @@ QTzTimeZoneCacheEntry QTzTimeZoneCache::findEntry(const QByteArray &ianaId)
@@ -773,18 +777,21 @@ QTzTimeZoneCacheEntry QTzTimeZoneCache::findEntry(const QByteArray &ianaId)
if (!tzif.open(QIODevice::ReadOnly))
return ret;
} else {
@ -56,5 +56,5 @@ index 960a0944185..a5186acbd91 100644
}
}
--
2.39.2
2.42.0

View File

@ -1,7 +1,7 @@
From 4e8c14f1af9c332826e0454f4fd63e541edbaf5c Mon Sep 17 00:00:00 2001
From 880fe5653a86d8091f3f577977f8af93552c48fd Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 21 Mar 2023 15:48:49 +0800
Subject: [PATCH 5/6] qtbase: deal with a font face at index 0 as Regular for
Subject: [PATCH 05/11] qtbase: deal with a font face at index 0 as Regular for
Variable fonts
Reference: https://bugreports.qt.io/browse/QTBUG-111994
@ -22,5 +22,5 @@ index 474644b871f..c7a117fd134 100644
FcObjectSetDestroy(os);
FcPatternDestroy(pattern);
--
2.39.2
2.42.0

View File

@ -1,7 +1,7 @@
From 61ae6e04388dd40e11c214d56f22f8f2007bf35f Mon Sep 17 00:00:00 2001
From 7f573f00fb850a08017d9f1e3c73b4d7efeb84f2 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Wed, 12 Apr 2023 10:13:50 +0800
Subject: [PATCH 6/6] qtbase: qt-cmake: always use cmake from path
Subject: [PATCH 06/11] qtbase: qt-cmake: always use cmake from path
The generated qt-cmake scripts embeds the absolute path of cmake used
during the build of qtbase, bloating the runtime closure of qtbase.
@ -28,5 +28,5 @@ index f719257f602..571ffe788fa 100755
toolchain_path="$script_dir_path/@__GlobalConfig_relative_path_from_bin_dir_to_cmake_config_dir@/qt.toolchain.cmake"
--
2.39.2
2.42.0

View File

@ -1,7 +1,7 @@
From 31d808a7b0d52a01c3f2875202cd29410a94b39a Mon Sep 17 00:00:00 2001
From 95b6bc2a414d381fdeab0899a3b02499c43695e7 Mon Sep 17 00:00:00 2001
From: rewine <luhongxu@deepin.org>
Date: Wed, 29 Mar 2023 11:51:33 +0800
Subject: [PATCH] qtbase-find-tools-in-PATH
Subject: [PATCH 07/11] qtbase-find-tools-in-PATH
1. find qt's tools in `QTTOOLSPATH` env
qt assumes that all components use the same install prefix
@ -14,13 +14,12 @@ Subject: [PATCH] qtbase-find-tools-in-PATH
We can guarantee the build order of qt components in nixpkgs
tools in qttools always build before qtdoc
qdoc_bin is not a build target now, since we find it in `QTTOOLSPATH`
---
cmake/QtDocsHelpers.cmake | 11 ++++++++---
1 file changed, 8 insertions(+), 3 deletions(-)
diff --git a/cmake/QtDocsHelpers.cmake b/cmake/QtDocsHelpers.cmake
index 48ed5a32..9409d22d 100644
index 48ed5a324bf..91d8d41fb1f 100644
--- a/cmake/QtDocsHelpers.cmake
+++ b/cmake/QtDocsHelpers.cmake
@@ -47,9 +47,14 @@ function(qt_internal_add_docs)
@ -42,5 +41,5 @@ index 48ed5a32..9409d22d 100644
get_target_property(target_type ${target} TYPE)
if (NOT target_type STREQUAL "INTERFACE_LIBRARY")
--
2.38.1
2.42.0

View File

@ -1,19 +1,19 @@
From 39eb99dcd66f8ffb632fed6308a49896fe5ad2d3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Juan=20Pedro=20Bol=C3=ADvar=20Puente?= <raskolnikov@gnu.org>
Date: Thu, 10 Aug 2023 14:17:03 +0200
Subject: [PATCH 3/3] Pass to qmlimportscanner the QML2_IMPORT_PATH
From a5cbfb30fc53b3290578af4a87fe4c0463df4247 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 10:12:56 -0400
Subject: [PATCH 08/11] qtbase: pass to qmlimportscanner the QML2_IMPORT_PATH
---
src/tools/macdeployqt/shared/shared.cpp | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/src/tools/macdeployqt/shared/shared.cpp b/src/tools/macdeployqt/shared/shared.cpp
index 676d34d545..7908b07b3c 100644
index f637416cf22..77749506ccb 100644
--- a/src/tools/macdeployqt/shared/shared.cpp
+++ b/src/tools/macdeployqt/shared/shared.cpp
@@ -1297,6 +1297,13 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
argumentList.append(qmlImportsPath);
}
@@ -1293,6 +1293,13 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
argumentList.append( "-importPath");
argumentList.append(qmlImportsPath);
+ // In a modularized installation of qt as we have in Nix, instead, we will
+ // read the paths from the environment, as they are spread in multiple
@ -26,5 +26,5 @@ index 676d34d545..7908b07b3c 100644
QProcess qmlImportScanner;
qmlImportScanner.start(qmlImportScannerPath, argumentList);
--
2.26.2
2.42.0

View File

@ -1,5 +1,14 @@
From 28220453d157c0825669145c94ab86e9603265fa Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 10:14:40 -0400
Subject: [PATCH 09/11] qtbase: allow translations outside prefix
---
cmake/QtBuild.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cmake/QtBuild.cmake b/cmake/QtBuild.cmake
index b45ec1d208..05f69c131b 100644
index 1dc576d27af..4348eb97c37 100644
--- a/cmake/QtBuild.cmake
+++ b/cmake/QtBuild.cmake
@@ -30,7 +30,7 @@ function(qt_configure_process_path name default docstring)
@ -11,3 +20,6 @@ index b45ec1d208..05f69c131b 100644
message(FATAL_ERROR
"Path component '${name}' is outside computed install prefix: ${rel_path} ")
return()
--
2.42.0

View File

@ -1,7 +1,8 @@
From 505391a31aa353b8f1cc5d3feb9861582554d9f1 Mon Sep 17 00:00:00 2001
From bbd9cf61b686f68d5e5eb78fb0b96a74a8921cef Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Juan=20Pedro=20Bol=C3=ADvar=20Puente?= <raskolnikov@gnu.org>
Date: Wed, 9 Aug 2023 16:16:21 +0200
Subject: [PATCH 1/3] Find qmlimportscanner in macdeployqt via environment
Subject: [PATCH 10/11] qtbase: find qmlimportscanner in macdeployqt via
environment
The qmlimportscanner tool is provided by qtdeclarative. Because of the
modularized installation in Nix, it can not be found via the usual
@ -16,10 +17,10 @@ a workaround for users.
1 file changed, 4 insertions(+)
diff --git a/src/tools/macdeployqt/shared/shared.cpp b/src/tools/macdeployqt/shared/shared.cpp
index 643fe5390a..b8fcc9c9bd 100644
index 77749506ccb..48979195f40 100644
--- a/src/tools/macdeployqt/shared/shared.cpp
+++ b/src/tools/macdeployqt/shared/shared.cpp
@@ -1270,6 +1270,10 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
@@ -1273,6 +1273,10 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
if (!QFile::exists(qmlImportScannerPath))
qmlImportScannerPath = QCoreApplication::applicationDirPath() + "/qmlimportscanner";
@ -31,5 +32,5 @@ index 643fe5390a..b8fcc9c9bd 100644
if (!QFile::exists(qmlImportScannerPath)) {
LogError() << "qmlimportscanner not found at" << qmlImportScannerPath;
--
2.26.2
2.42.0

View File

@ -1,8 +1,8 @@
From 32df59bea18bebc18d6d308750e88be325522d2e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Juan=20Pedro=20Bol=C3=ADvar=20Puente?= <raskolnikov@gnu.org>
Date: Thu, 10 Aug 2023 14:15:34 +0200
Subject: [PATCH 2/3] Check in the QML folder of this library does actually
exist
From 617d27ee91aaa59c59c4f3a2cca7bab8167d9f5f Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 10:17:00 -0400
Subject: [PATCH 11/11] qtbase: check in the QML folder of this library does
actually exist
In a modularized installation, this folder will be the location where
`qtbase` itself is installed, but `qtbase` does not have any QML
@ -12,10 +12,10 @@ code, and `qmlimportscanner` will complain that it does not exist.
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/tools/macdeployqt/shared/shared.cpp b/src/tools/macdeployqt/shared/shared.cpp
index b8fcc9c9bd..676d34d545 100644
index 48979195f40..8415680ecda 100644
--- a/src/tools/macdeployqt/shared/shared.cpp
+++ b/src/tools/macdeployqt/shared/shared.cpp
@@ -1290,9 +1290,12 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
@@ -1293,9 +1293,12 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
}
for (const QString &importPath : qmlImportPaths)
argumentList << "-importPath" << importPath;
@ -28,8 +28,8 @@ index b8fcc9c9bd..676d34d545 100644
+ argumentList.append(qmlImportsPath);
+ }
// run qmlimportscanner
QProcess qmlImportScanner;
// In a modularized installation of qt as we have in Nix, instead, we will
// read the paths from the environment, as they are spread in multiple
--
2.26.2
2.42.0

View File

@ -1,13 +1,29 @@
From 2d561e0a80f2d123a7348187975ee845f9dcd9e0 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 11:12:27 -0400
Subject: [PATCH] qtdeclarative: disable qml disk cache
---
src/qml/jsruntime/qv4engine.cpp | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/src/qml/jsruntime/qv4engine.cpp b/src/qml/jsruntime/qv4engine.cpp
index 852cde9e..165f1b57 100644
index d1b4c4fff6..50f8a07420 100644
--- a/src/qml/jsruntime/qv4engine.cpp
+++ b/src/qml/jsruntime/qv4engine.cpp
@@ -2093,7 +2093,7 @@ void ExecutionEngine::registerModule(const QString &_name, const QJSValue &modul
bool ExecutionEngine::diskCacheEnabled() const
@@ -2232,11 +2232,7 @@ ExecutionEngine::DiskCacheOptions ExecutionEngine::diskCacheOptions() const
{
- return (!disableDiskCache() && !debugger()) || forceDiskCache();
+ return forceDiskCache();
if (forceDiskCache())
return DiskCache::Enabled;
- if (disableDiskCache() || debugger())
- return DiskCache::Disabled;
- static const DiskCacheOptions options = qmlGetConfigOption<
- DiskCacheOptions, transFormDiskCache>("QML_DISK_CACHE");
- return options;
+ return DiskCache::Disabled;
}
void ExecutionEngine::callInContext(QV4::Function *function, QObject *self,
--
2.42.0

View File

@ -1,10 +1,10 @@
diff --git a/src/3rdparty/chromium/media/gpu/mac/vt_video_encode_accelerator_mac.cc b/src/3rdparty/chromium/media/gpu/mac/vt_video_encode_accelerator_mac.cc
index 6a3a777..249d4cc 100644
index d4b0161b2e..e5a0eb1967 100644
--- a/src/3rdparty/chromium/media/gpu/mac/vt_video_encode_accelerator_mac.cc
+++ b/src/3rdparty/chromium/media/gpu/mac/vt_video_encode_accelerator_mac.cc
@@ -20,12 +20,6 @@
#include "media/base/media_log.h"
#include "media/base/video_frame.h"
@@ -29,12 +29,6 @@
#include "media/base/video_types.h"
#include "media/video/video_encode_accelerator.h"
-// This is a min version of macOS where we want to support SVC encoding via
-// EnableLowLatencyRateControl flag. The flag is actually supported since 11.3,
@ -15,21 +15,22 @@ index 6a3a777..249d4cc 100644
namespace media {
namespace {
@@ -150,8 +144,6 @@ VTVideoEncodeAccelerator::GetSupportedProfiles() {
profile.max_framerate_numerator = kMaxFrameRateNumerator;
profile.max_framerate_denominator = kMaxFrameRateDenominator;
profile.max_resolution = gfx::Size(kMaxResolutionWidth, kMaxResolutionHeight);
@@ -277,8 +271,6 @@ VTVideoEncodeAccelerator::GetSupportedH264Profiles() {
profile.rate_control_modes = VideoEncodeAccelerator::kConstantMode |
VideoEncodeAccelerator::kVariableMode;
profile.scalability_modes.push_back(SVCScalabilityMode::kL1T1);
- if (__builtin_available(macOS LOW_LATENCY_FLAG_AVAILABLE_VER, *))
- profile.scalability_modes.push_back(SVCScalabilityMode::kL1T2);
for (const auto& supported_profile : kSupportedProfiles) {
profile.profile = supported_profile;
profiles.push_back(profile);
@@ -595,13 +587,6 @@ bool VTVideoEncodeAccelerator::CreateCompressionSession(
kVTVideoEncoderSpecification_RequireHardwareAcceleratedVideoEncoder};
std::vector<CFTypeRef> encoder_values{kCFBooleanTrue};
if (VideoCodecProfileToVideoCodec(supported_profile) == VideoCodec::kH264) {
@@ -814,14 +806,6 @@ bool VTVideoEncodeAccelerator::CreateCompressionSession(
encoder_values.push_back(kCFBooleanFalse);
}
- if (__builtin_available(macOS LOW_LATENCY_FLAG_AVAILABLE_VER, *)) {
- if (require_low_delay_) {
- // Remove the validation once HEVC SVC mode is supported on macOS.
- if (require_low_delay_ && codec == VideoCodec::kH264) {
- encoder_keys.push_back(
- kVTVideoEncoderSpecification_EnableLowLatencyRateControl);
- encoder_values.push_back(kCFBooleanTrue);
@ -38,10 +39,10 @@ index 6a3a777..249d4cc 100644
base::ScopedCFTypeRef<CFDictionaryRef> encoder_spec =
video_toolbox::DictionaryWithKeysAndValues(
encoder_keys.data(), encoder_values.data(), encoder_keys.size());
@@ -669,19 +654,8 @@ bool VTVideoEncodeAccelerator::ConfigureCompressionSession() {
}
@@ -891,19 +875,8 @@ bool VTVideoEncodeAccelerator::ConfigureCompressionSession(VideoCodec codec) {
if (num_temporal_layers_ == 2) {
// Remove the validation once HEVC SVC mode is supported on macOS.
if (num_temporal_layers_ == 2 && codec_ == VideoCodec::kH264) {
- if (__builtin_available(macOS LOW_LATENCY_FLAG_AVAILABLE_VER, *)) {
- if (!session_property_setter.IsSupported(
- kVTCompressionPropertyKey_BaseLayerFrameRateFraction)) {

View File

@ -1,10 +1,24 @@
From da66a74e8b8e57b4a60b2cd0d18ef3bebb15509c Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 11:45:24 -0400
Subject: [PATCH 1/2] qtwebengine: link pulseaudio
---
src/core/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 4153ce180..e89f41798 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -341,6 +341,7 @@
devtools_fast_bundle=false
devtools_skip_typecheck=false
enable_jxl_decoder=false # temporarily because libjxl causes internal compiler error on armv7
@@ -340,6 +340,7 @@ foreach(arch ${archs})
use_static_angle=true
chrome_root_store_supported=false
trial_comparison_cert_verifier_supported=false
+ link_pulseaudio=true
)
extend_gn_list(gnArgArg
ARGS use_v8_context_snapshot v8_use_external_startup_data
--
2.42.0
extend_gn_list(gnArgArg

View File

@ -1,8 +1,18 @@
From 6f0068359f32d1e7ebaa32650c3b608c008a1127 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 11:46:28 -0400
Subject: [PATCH 2/2] qtwebengine: fix path to locales
---
src/core/api/CMakeLists.txt | 3 ++-
src/core/web_engine_library_info.cpp | 3 ++-
2 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/core/api/CMakeLists.txt b/src/core/api/CMakeLists.txt
index f860e0ba7..30e1a767a 100644
index a3cb53e17..fcb6d70c5 100644
--- a/src/core/api/CMakeLists.txt
+++ b/src/core/api/CMakeLists.txt
@@ -193,7 +193,8 @@ if(QT_FEATURE_framework)
@@ -190,7 +190,8 @@ if(QT_FEATURE_framework)
else()
install(FILES ${localeFiles}
@ -26,3 +36,6 @@ index c03c9a3b2..430fdfab2 100644
% QLatin1String("qtwebengine_locales");
candidatePaths << fallbackDir();
}
--
2.42.0

View File

@ -4,307 +4,315 @@
{
qt3d = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qt3d-everywhere-src-6.5.3.tar.xz";
sha256 = "1p7x70wnqynsvd7w4jkz31amf02hwh49gqsccv5hhlpx50h9ydhd";
name = "qt3d-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qt3d-everywhere-src-6.6.0.tar.xz";
sha256 = "0apwq6cqxn1xszhaawrz14yyy9akbmh6i5yys3v74kbz4537ma0d";
name = "qt3d-everywhere-src-6.6.0.tar.xz";
};
};
qt5compat = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qt5compat-everywhere-src-6.5.3.tar.xz";
sha256 = "0r34h35w0m17zyncxq2a0kichv5l4j01mximg6m5mqbifziakcpf";
name = "qt5compat-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qt5compat-everywhere-src-6.6.0.tar.xz";
sha256 = "1jlg3b3jn7m2gih892vcsv36rm430g86rz6bdlk15xr6c6vfv19x";
name = "qt5compat-everywhere-src-6.6.0.tar.xz";
};
};
qtactiveqt = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtactiveqt-everywhere-src-6.5.3.tar.xz";
sha256 = "1lawc0jq5w0jqjagkf7d0g9i8rrsdgrd4k34ylriy27djpd53b1j";
name = "qtactiveqt-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtactiveqt-everywhere-src-6.6.0.tar.xz";
sha256 = "17ks2sggvx7p7hmg128w494n06nzyf7r5i04nykhmhqlx71wnm6j";
name = "qtactiveqt-everywhere-src-6.6.0.tar.xz";
};
};
qtbase = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtbase-everywhere-src-6.5.3.tar.xz";
sha256 = "0imm0x9j7102ymcz7gl0dbnbi8qk2jmijb4gg7wh9sp41cillbyz";
name = "qtbase-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtbase-everywhere-src-6.6.0.tar.xz";
sha256 = "03lysc6lp17hyjrwvp0znw02bdysrff8rlsb0nlrfn6b58qm7783";
name = "qtbase-everywhere-src-6.6.0.tar.xz";
};
};
qtcharts = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtcharts-everywhere-src-6.5.3.tar.xz";
sha256 = "1n9fflfh47wm0fk1995dw56vyqfprwv5ialjfpcxxgzm187816sa";
name = "qtcharts-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtcharts-everywhere-src-6.6.0.tar.xz";
sha256 = "1x9c55j8yscb6q18haspqnnvbc6pcgdv5ljrhj0ijxqcqz6spgp6";
name = "qtcharts-everywhere-src-6.6.0.tar.xz";
};
};
qtconnectivity = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtconnectivity-everywhere-src-6.5.3.tar.xz";
sha256 = "0nrzpqs3cq0inwp3siskxz9yxxqkz15yaf9aicnggvvic2q328i4";
name = "qtconnectivity-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtconnectivity-everywhere-src-6.6.0.tar.xz";
sha256 = "04203igj3fnmw1i7k291j3p987qssss3hz58kjdz33n28xic4a8w";
name = "qtconnectivity-everywhere-src-6.6.0.tar.xz";
};
};
qtdatavis3d = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtdatavis3d-everywhere-src-6.5.3.tar.xz";
sha256 = "0qf07m3bplqpm7pkn3145l2k9h0npv9qbw9gcnydzp0qdsqc1dhi";
name = "qtdatavis3d-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtdatavis3d-everywhere-src-6.6.0.tar.xz";
sha256 = "17jrs6mh741vfgj8bgkahfzj2xaa7agw9s6q2xcv9s8bkxnryj60";
name = "qtdatavis3d-everywhere-src-6.6.0.tar.xz";
};
};
qtdeclarative = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtdeclarative-everywhere-src-6.5.3.tar.xz";
sha256 = "05fjb70n35y42dp7g0sd99rbvmn9133z08k6rlp8ifq6sb9dcka0";
name = "qtdeclarative-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtdeclarative-everywhere-src-6.6.0.tar.xz";
sha256 = "0cd3gxyklhscq2zymhmv6j4pzgrl0gpx8yyhgwqg1j0qm6q9nlqv";
name = "qtdeclarative-everywhere-src-6.6.0.tar.xz";
};
};
qtdoc = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtdoc-everywhere-src-6.5.3.tar.xz";
sha256 = "1k430zc8khakpcjbj7vmkgrdyrz0y6bfcfgw4dzc68gcvbwbq27g";
name = "qtdoc-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtdoc-everywhere-src-6.6.0.tar.xz";
sha256 = "07i6fxczbpma344jgmpcb1y24jlm136y7b698b57ipcvgbc38xnk";
name = "qtdoc-everywhere-src-6.6.0.tar.xz";
};
};
qtgraphs = {
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtgraphs-everywhere-src-6.6.0.tar.xz";
sha256 = "0zsyw5w15xzmaap0r396jpsz7synq5q2knl75807f6q3i7y4gqan";
name = "qtgraphs-everywhere-src-6.6.0.tar.xz";
};
};
qtgrpc = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtgrpc-everywhere-src-6.5.3.tar.xz";
sha256 = "10wbq5zcr263g1hi06xpyvh7y2advhhy07asx4aqwf56v9rpmgvf";
name = "qtgrpc-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtgrpc-everywhere-src-6.6.0.tar.xz";
sha256 = "14pdqwv0yw8dgr5nr04aw73fwkljwrg3yhkflfndwnf7mmgvkffs";
name = "qtgrpc-everywhere-src-6.6.0.tar.xz";
};
};
qthttpserver = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qthttpserver-everywhere-src-6.5.3.tar.xz";
sha256 = "0ivcaqf39k7mawd17wf2db3kn8ch2ajm4gqm6wl1iqkp45aqjm05";
name = "qthttpserver-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qthttpserver-everywhere-src-6.6.0.tar.xz";
sha256 = "0r9wwf239r3q7i633lld2mbmn98d7jqna1fgfxakri68x7bixbpm";
name = "qthttpserver-everywhere-src-6.6.0.tar.xz";
};
};
qtimageformats = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtimageformats-everywhere-src-6.5.3.tar.xz";
sha256 = "1jwc2gzlymxx82khwbaav83ma8y1rl2v593jq0jd13kkkb22dh29";
name = "qtimageformats-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtimageformats-everywhere-src-6.6.0.tar.xz";
sha256 = "11736il80bdcajz01l836z38g1f0k2am9ilmk203gqkn06sjqm71";
name = "qtimageformats-everywhere-src-6.6.0.tar.xz";
};
};
qtlanguageserver = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtlanguageserver-everywhere-src-6.5.3.tar.xz";
sha256 = "12i1g8inp667w95gx4ldc3shb3pjd65c1x74qhmr6k2mq1sc3h60";
name = "qtlanguageserver-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtlanguageserver-everywhere-src-6.6.0.tar.xz";
sha256 = "03j9kbmv80sj84lbz90692ckg7nd60i6mrbg41lkgxibhqck1jdf";
name = "qtlanguageserver-everywhere-src-6.6.0.tar.xz";
};
};
qtlocation = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtlocation-everywhere-src-6.5.3.tar.xz";
sha256 = "1k77ck556wkcjzly2z2p9da54hpf8x5mjhyjvn6039xzjzax232k";
name = "qtlocation-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtlocation-everywhere-src-6.6.0.tar.xz";
sha256 = "1507syiar3dv53km0hl2rf29518arwkk0h2b6fpj5gq8c7kqp5pm";
name = "qtlocation-everywhere-src-6.6.0.tar.xz";
};
};
qtlottie = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtlottie-everywhere-src-6.5.3.tar.xz";
sha256 = "08jpm4vhcwh0a72np6fmws79v9k3dpsji5gd3ws1rh04n62lcb1x";
name = "qtlottie-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtlottie-everywhere-src-6.6.0.tar.xz";
sha256 = "0kzq739ziyy8xhzdj57q220sdnjcwnwkgb67gcrsdfd40x8v960x";
name = "qtlottie-everywhere-src-6.6.0.tar.xz";
};
};
qtmultimedia = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtmultimedia-everywhere-src-6.5.3.tar.xz";
sha256 = "09zzl3wywhnz5a0ym3q7nbydjcq2vj2bz7gi5p8hrhlqpg9g6r7d";
name = "qtmultimedia-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtmultimedia-everywhere-src-6.6.0.tar.xz";
sha256 = "10l7sc8c7gwz47z77acvxz5wba14grwqgfpmnx0qh4gcldn26jxs";
name = "qtmultimedia-everywhere-src-6.6.0.tar.xz";
};
};
qtnetworkauth = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtnetworkauth-everywhere-src-6.5.3.tar.xz";
sha256 = "00m71302b1m4hjzn0hv222yz1d8dvm9n5djgyn38ikazb5smvd1n";
name = "qtnetworkauth-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtnetworkauth-everywhere-src-6.6.0.tar.xz";
sha256 = "0c48rk35qh4q9drs53jijgnhxk8adllnk63wy4rk7sq0disc1m90";
name = "qtnetworkauth-everywhere-src-6.6.0.tar.xz";
};
};
qtpositioning = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtpositioning-everywhere-src-6.5.3.tar.xz";
sha256 = "13vdklh87jz2p3miaifffi6r0ciw191b9ciaicwk0wry5fdhj6mb";
name = "qtpositioning-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtpositioning-everywhere-src-6.6.0.tar.xz";
sha256 = "0fd51wgxcir8b5n6ljcfhagrkv77w6kimjx7mqzd77km7kx20rcd";
name = "qtpositioning-everywhere-src-6.6.0.tar.xz";
};
};
qtquick3d = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtquick3d-everywhere-src-6.5.3.tar.xz";
sha256 = "0pffi1wcai6d5w18v39fdwp74za6ydjjcgbgn84y939h7xham0k6";
name = "qtquick3d-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtquick3d-everywhere-src-6.6.0.tar.xz";
sha256 = "1fkshfd0abnxd5ir8wsf57zms99cg1zhrnn40cmnr7g4jjrkxarp";
name = "qtquick3d-everywhere-src-6.6.0.tar.xz";
};
};
qtquick3dphysics = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtquick3dphysics-everywhere-src-6.5.3.tar.xz";
sha256 = "1fm4ll8cjbdjn35pbi4763sfxzj49gml2rkdr7mrzwrz4hfk149j";
name = "qtquick3dphysics-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtquick3dphysics-everywhere-src-6.6.0.tar.xz";
sha256 = "00vwzp5qwccjl65dda8s3lyf3dz1pgwhyls15qqgl338dxl5nfbl";
name = "qtquick3dphysics-everywhere-src-6.6.0.tar.xz";
};
};
qtquickeffectmaker = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtquickeffectmaker-everywhere-src-6.5.3.tar.xz";
sha256 = "19wwmal5k00l54ybb1ml2c40r4y5a1cwkd36zlri9jycs6x9nrxr";
name = "qtquickeffectmaker-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtquickeffectmaker-everywhere-src-6.6.0.tar.xz";
sha256 = "0zzps7wmjmnbkm37j60xc11jppk4g3nnh7qcn91q68mdqygkgjyp";
name = "qtquickeffectmaker-everywhere-src-6.6.0.tar.xz";
};
};
qtquicktimeline = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtquicktimeline-everywhere-src-6.5.3.tar.xz";
sha256 = "0nvv5v5dy3ga1c1whrqdwvicmkys0psb720jycq833yqazn4qgpv";
name = "qtquicktimeline-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtquicktimeline-everywhere-src-6.6.0.tar.xz";
sha256 = "145mkgcacjf9ak1ydfkrqfk6371zkjgjd2v264krkv9aaza537h7";
name = "qtquicktimeline-everywhere-src-6.6.0.tar.xz";
};
};
qtremoteobjects = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtremoteobjects-everywhere-src-6.5.3.tar.xz";
sha256 = "18g78q2b9iabc1a9sgbksxj2nsiizaq4lfmxqljjq2cbzd09x74d";
name = "qtremoteobjects-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtremoteobjects-everywhere-src-6.6.0.tar.xz";
sha256 = "0szpy60xdmw2spqaczib7mx7k1lnaid8micmy0jh4hmrbgir8496";
name = "qtremoteobjects-everywhere-src-6.6.0.tar.xz";
};
};
qtscxml = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtscxml-everywhere-src-6.5.3.tar.xz";
sha256 = "0ld7i84nxxzp3bm96v2ymg53kkb8fpws2vq8b5bibs2zq0m6gn7k";
name = "qtscxml-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtscxml-everywhere-src-6.6.0.tar.xz";
sha256 = "0hqhi9z9cbnpbc9dx22ci3a08javb1hi9cn46h1ks1lbbpdx1v2p";
name = "qtscxml-everywhere-src-6.6.0.tar.xz";
};
};
qtsensors = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtsensors-everywhere-src-6.5.3.tar.xz";
sha256 = "14y25lp296vddk3n4wpf8glshfww73dg47khhvw4s4l3b8rsgl8r";
name = "qtsensors-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtsensors-everywhere-src-6.6.0.tar.xz";
sha256 = "1624v0wwpdrcbz4x2jdrzb0r7qfh0qcac3k6pfikn45c9rfvxw18";
name = "qtsensors-everywhere-src-6.6.0.tar.xz";
};
};
qtserialbus = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtserialbus-everywhere-src-6.5.3.tar.xz";
sha256 = "13fhm8r0zp8rhbcn9i01s73kdng8afdvh5y0grqw8xqd2ncrav91";
name = "qtserialbus-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtserialbus-everywhere-src-6.6.0.tar.xz";
sha256 = "0k5r57fsdyplbcffq9lnl0bp1smsnqh93kpk3rn5r6gaa9qz1k0q";
name = "qtserialbus-everywhere-src-6.6.0.tar.xz";
};
};
qtserialport = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtserialport-everywhere-src-6.5.3.tar.xz";
sha256 = "1njfhj063gw7v05ynw4frgwisl2cnlkd4xk2yf22hhmiihwsvjwr";
name = "qtserialport-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtserialport-everywhere-src-6.6.0.tar.xz";
sha256 = "0ra0v8vc6y2s9y9irh30g1wnyhgd5xlgg6s0k9czyrvsqkqvpz7c";
name = "qtserialport-everywhere-src-6.6.0.tar.xz";
};
};
qtshadertools = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtshadertools-everywhere-src-6.5.3.tar.xz";
sha256 = "0wrm1yp90fdqwvw8chxd2diic8zl1akr1yyyqmw8w14z80x7n6r0";
name = "qtshadertools-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtshadertools-everywhere-src-6.6.0.tar.xz";
sha256 = "0xcqxwvkga11s150jha0b3iwnp4rvkvbfaxy0a0ln52hqmyk541n";
name = "qtshadertools-everywhere-src-6.6.0.tar.xz";
};
};
qtspeech = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtspeech-everywhere-src-6.5.3.tar.xz";
sha256 = "170bdch6hvmqkf4y3071ym9aqbmknn0mdbayh9rpw6lj9lng9hkr";
name = "qtspeech-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtspeech-everywhere-src-6.6.0.tar.xz";
sha256 = "174zpr582nfgj19qk7qdyf4l85q0gwsjx3qfv37z0238hbzxp6wn";
name = "qtspeech-everywhere-src-6.6.0.tar.xz";
};
};
qtsvg = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtsvg-everywhere-src-6.5.3.tar.xz";
sha256 = "1vsvbpwh8k863nb94lrl0l8phma176b1kcfl7i3q07yad5xw8hgw";
name = "qtsvg-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtsvg-everywhere-src-6.6.0.tar.xz";
sha256 = "1pkj7inw76klyld3sy24gcds785lgkjs6zjac9jga0hiypz2bnik";
name = "qtsvg-everywhere-src-6.6.0.tar.xz";
};
};
qttools = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qttools-everywhere-src-6.5.3.tar.xz";
sha256 = "0dsy82k7ds5yziy648mxwfz6nq2vq90g43cbnjxjarv97wmx74gw";
name = "qttools-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qttools-everywhere-src-6.6.0.tar.xz";
sha256 = "16ds0mclns7656hf4phv13pwhigc15z2ghqx7r2nxfrb2jyfx7sf";
name = "qttools-everywhere-src-6.6.0.tar.xz";
};
};
qttranslations = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qttranslations-everywhere-src-6.5.3.tar.xz";
sha256 = "1qs9x52fqnsgk1wzrvihnr6c5cigx8zimhk3dy1qxhprvh6lrd43";
name = "qttranslations-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qttranslations-everywhere-src-6.6.0.tar.xz";
sha256 = "13072ll3kwb9kvw3a6sjcdific12vf81xbp41zmi1f34dwirmn50";
name = "qttranslations-everywhere-src-6.6.0.tar.xz";
};
};
qtvirtualkeyboard = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtvirtualkeyboard-everywhere-src-6.5.3.tar.xz";
sha256 = "0bg678dirmw5b3d46abbidkch0p5hchmqgiwvcvxfh3928aqz01i";
name = "qtvirtualkeyboard-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtvirtualkeyboard-everywhere-src-6.6.0.tar.xz";
sha256 = "0yvpz8mm3g1lj5m3fk95cqw5magfdl4y0y8frsid7gqlym1xp117";
name = "qtvirtualkeyboard-everywhere-src-6.6.0.tar.xz";
};
};
qtwayland = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtwayland-everywhere-src-6.5.3.tar.xz";
sha256 = "17rnaap0xa0c6q8b0drm020qny0i3ia8nb0z66xq36zzny48aapp";
name = "qtwayland-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtwayland-everywhere-src-6.6.0.tar.xz";
sha256 = "1s5p0gfkw96nx4k2fp5s3v2rj8c05k8jc2kif0rwhl6hhlnxihrh";
name = "qtwayland-everywhere-src-6.6.0.tar.xz";
};
};
qtwebchannel = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtwebchannel-everywhere-src-6.5.3.tar.xz";
sha256 = "0jphdg711lhxbxg4dqrxnvkmfr2q9xzrd0h525zw94m7mfk8k7qj";
name = "qtwebchannel-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtwebchannel-everywhere-src-6.6.0.tar.xz";
sha256 = "077mlg2zqr002z7z6yqzl3jqc05g5ahz2m06az3zjhsqdn7b7p7x";
name = "qtwebchannel-everywhere-src-6.6.0.tar.xz";
};
};
qtwebengine = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtwebengine-everywhere-src-6.5.3.tar.xz";
sha256 = "1ra5hyyg4vymp8pgzv08smjc3fl1axdavnkpj1i5zxym1ndww513";
name = "qtwebengine-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtwebengine-everywhere-src-6.6.0.tar.xz";
sha256 = "105pag9a2q611ixn5bvc45kpylhrdz5wgw6bk6zssmrcbbq9zp6m";
name = "qtwebengine-everywhere-src-6.6.0.tar.xz";
};
};
qtwebsockets = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtwebsockets-everywhere-src-6.5.3.tar.xz";
sha256 = "1hx7qy7rgs46ggzifp249d8zz27bjwmbv7f960lwymjdb4bsxqh4";
name = "qtwebsockets-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtwebsockets-everywhere-src-6.6.0.tar.xz";
sha256 = "03pkgp854pb1rzjixhrbyz4ad174wfikjjisry2c90kf1ifb219f";
name = "qtwebsockets-everywhere-src-6.6.0.tar.xz";
};
};
qtwebview = {
version = "6.5.3";
version = "6.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/6.5/6.5.3/submodules/qtwebview-everywhere-src-6.5.3.tar.xz";
sha256 = "0jbiwwhjp4lz4r3ym3a4wr3s966d6imffmpb0jlvkah9ji6g276g";
name = "qtwebview-everywhere-src-6.5.3.tar.xz";
url = "${mirror}/official_releases/qt/6.6/6.6.0/submodules/qtwebview-everywhere-src-6.6.0.tar.xz";
sha256 = "14ikfl38ajgcv3611zjls7liscfyazf49y1plxk0pipsbndqv955";
name = "qtwebview-everywhere-src-6.6.0.tar.xz";
};
};
}

View File

@ -132,6 +132,9 @@ buildPythonPackage rec {
++ lib.optional withLocation "PyQt6.QtPositioning"
;
# fix build with qt 6.6
env.NIX_CFLAGS_COMPILE = "-fpermissive";
meta = with lib; {
description = "Python bindings for Qt6";
homepage = "https://riverbankcomputing.com/";

View File

@ -0,0 +1,36 @@
From c39637720109dd5d97750907c51e9c0fb8f43f0b Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Wed, 11 Oct 2023 22:51:23 -0400
Subject: [PATCH] launcher/translations: explicitly convert QVector iterators
to pointers
---
launcher/translations/TranslationsModel.cpp | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/launcher/translations/TranslationsModel.cpp b/launcher/translations/TranslationsModel.cpp
index 2763cca2..64c21dbd 100644
--- a/launcher/translations/TranslationsModel.cpp
+++ b/launcher/translations/TranslationsModel.cpp
@@ -524,7 +524,7 @@ Language * TranslationsModel::findLanguage(const QString& key)
}
else
{
- return found;
+ return &(*found);
}
}
@@ -655,8 +655,7 @@ QModelIndex TranslationsModel::selectedIndex()
auto found = findLanguage(d->m_selectedLanguage);
if(found)
{
- // QVector iterator freely converts to pointer to contained type
- return index(found - d->m_languages.begin(), 0, QModelIndex());
+ return index(found - &(*d->m_languages.begin()), 0, QModelIndex());
}
return QModelIndex();
}
--
2.42.0

View File

@ -42,7 +42,9 @@ rec {
sha256 = "sha256-RArg60S91YKp1Mt97a5JNfBEOf2cmuX4pK3VAx2WfqM=";
};
patches = lib.optionals stdenv.isDarwin [
patches = [
./0001-launcher-translations-explicitly-convert-QVector-ite.patch
] ++ lib.optionals stdenv.isDarwin [
# https://github.com/PrismLauncher/PrismLauncher/pull/1452
# These patches allow us to disable the Sparkle updater and cmake bundling
# TODO: remove these when updating to 8.0