From 578b04cd1da289b03feb9d3cd7f2b87baf53759b Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:27:46 -0400 Subject: [PATCH 1/8] qt5.qtbase: build with the 14.4 SDK MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per upstream’s supported Darwin versions, built with the 14.4 SDK (corresponding to Xcode 15) and a 10.14 deployment target. To ensure that users of Qt have a compatible SDK and deployment target, propagate the 10.14 SDK and a 10.14 minimum version. Users that need a newer version can opt into using it by adding the SDK package to their build inputs. aarch64-darwin uses 11.0 and 11.3 because those are the oldest supported SDK and deployment target on that platform. Note: upstream actually supports 10.13, but 10.14 was chosen as the minimum and SDK because it ensures that automatic dark mode switching works for x86_64-darwin users. --- .../libraries/qt-5/modules/qtbase.nix | 33 ++++++++++--------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/pkgs/development/libraries/qt-5/modules/qtbase.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix index 7aef466b7937..0dadaeeaf916 100644 --- a/pkgs/development/libraries/qt-5/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix @@ -4,8 +4,7 @@ , coreutils, bison, flex, gdb, gperf, lndir, perl, pkg-config, python3 , which # darwin support -, libiconv, libobjc, xcbuild, AGL, AppKit, ApplicationServices, AVFoundation, Carbon, Cocoa, CoreAudio, CoreBluetooth -, CoreLocation, CoreServices, DiskArbitration, Foundation, OpenGL, MetalKit, IOKit +, darwinMinVersionHook, apple-sdk, apple-sdk_10_14, apple-sdk_14, xcbuild , dbus, fontconfig, freetype, glib, harfbuzz, icu, libdrm, libX11, libXcomposite , libXcursor, libXext, libXi, libXrender, libinput, libjpeg, libpng , libxcb @@ -38,6 +37,13 @@ let if isLinux then "linux-generic-g++" else throw "Please add a qtPlatformCross entry for ${plat.config}"; + + # Per https://doc.qt.io/qt-5/macos.html#supported-versions: deployment target = 10.13, build SDK = 14.x. + # Note that Qt propagates the 10.14 SDK instead of the 10.13 SDK to make sure that applications linked to Qt + # support automatic dark mode on x86_64-darwin (see: https://developer.apple.com/documentation/appkit/nsappearancecustomization/choosing_a_specific_appearance_for_your_macos_app). + propagatedAppleSDK = if lib.versionOlder (lib.getVersion apple-sdk) "10.14" then apple-sdk_10_14 else apple-sdk; + propagatedMinVersionHook = darwinMinVersionHook "10.13"; + buildAppleSDK = apple-sdk_14; in stdenv.mkDerivation (finalAttrs: ({ @@ -56,10 +62,8 @@ stdenv.mkDerivation (finalAttrs: ({ pcre2 ] ++ ( if stdenv.hostPlatform.isDarwin then [ - # TODO: move to buildInputs, this should not be propagated. - AGL AppKit ApplicationServices AVFoundation Carbon Cocoa CoreAudio CoreBluetooth - CoreLocation CoreServices DiskArbitration Foundation OpenGL - libobjc libiconv MetalKit IOKit + propagatedAppleSDK + propagatedMinVersionHook ] else [ dbus glib udev @@ -80,6 +84,7 @@ stdenv.mkDerivation (finalAttrs: ({ [ libinput ] ++ lib.optional withGtk3 gtk3 ) + ++ lib.optional stdenv.isDarwin buildAppleSDK ++ lib.optional developerBuild gdb ++ lib.optional (cups != null) cups ++ lib.optional (mysqlSupport) libmysqlclient @@ -141,15 +146,13 @@ stdenv.mkDerivation (finalAttrs: ({ patchShebangs ./bin '' + ( if stdenv.hostPlatform.isDarwin then '' - sed -i \ - -e 's|/usr/bin/xcode-select|xcode-select|' \ - -e 's|/usr/bin/xcrun|xcrun|' \ - -e 's|/usr/bin/xcodebuild|xcodebuild|' \ - -e 's|QMAKE_CONF_COMPILER=`getXQMakeConf QMAKE_CXX`|QMAKE_CXX="clang++"\nQMAKE_CONF_COMPILER="clang++"|' \ - ./configure - substituteInPlace ./mkspecs/common/mac.conf \ - --replace "/System/Library/Frameworks/OpenGL.framework/" "${OpenGL}/Library/Frameworks/OpenGL.framework/" \ - --replace "/System/Library/Frameworks/AGL.framework/" "${AGL}/Library/Frameworks/AGL.framework/" + substituteInPlace configure \ + --replace-fail '/usr/bin/xcode-select' '${lib.getBin xcbuild}/bin/xcode-select' \ + --replace-fail '/usr/bin/xcrun' '${lib.getBin xcbuild}/bin/xcrun' \ + --replace-fail '/System/Library/Frameworks/Cocoa.framework' "$SDKROOT/System/Library/Frameworks/Cocoa.framework" + substituteInPlace ./mkspecs/common/mac.conf \ + --replace-fail "/System/Library/Frameworks/OpenGL.framework/" "$SDKROOT/System/Library/Frameworks/OpenGL.framework/" \ + --replace-fail "/System/Library/Frameworks/AGL.framework/" "$SDKROOT/System/Library/Frameworks/AGL.framework/" '' else lib.optionalString libGLSupported '' sed -i mkspecs/common/linux.conf \ -e "/^QMAKE_INCDIR_OPENGL/ s|$|${lib.getDev libGL}/include|" \ From 4bb131ec6b9a2ba58d51973ffb3622b56ed24767 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:27:46 -0400 Subject: [PATCH 2/8] qt5: build Qt 5 modules with the 14.4 SDK This change ensures all Qt modules build with the latest SDK. --- .../libraries/qt-5/5.15/default.nix | 33 ++--------- .../libraries/qt-5/modules/qtconnectivity.nix | 4 +- .../libraries/qt-5/modules/qtgamepad.nix | 5 +- .../libraries/qt-5/modules/qtpurchasing.nix | 10 +--- .../libraries/qt-5/modules/qtwebengine.nix | 56 +------------------ .../libraries/qt-5/modules/qtwebkit.nix | 4 +- .../libraries/qt-5/modules/qtwebview.nix | 6 +- pkgs/development/libraries/qt-5/qtModule.nix | 6 ++ 8 files changed, 21 insertions(+), 103 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix index 2f57b1c62de4..0827b7f4238b 100644 --- a/pkgs/development/libraries/qt-5/5.15/default.nix +++ b/pkgs/development/libraries/qt-5/5.15/default.nix @@ -250,23 +250,15 @@ let inherit bison cups harfbuzz libGL; withGtk3 = !stdenv.hostPlatform.isDarwin; inherit dconf gtk3; inherit developerBuild decryptSslTraffic; - inherit (darwin.apple_sdk_11_0.frameworks) AGL AppKit ApplicationServices AVFoundation Carbon Cocoa CoreAudio CoreBluetooth - CoreLocation CoreServices DiskArbitration Foundation OpenGL MetalKit IOKit; - libobjc = darwin.apple_sdk_11_0.objc4; - xcbuild = darwin.apple_sdk_11_0.xcodebuild; }; qt3d = callPackage ../modules/qt3d.nix {}; qtcharts = callPackage ../modules/qtcharts.nix {}; - qtconnectivity = callPackage ../modules/qtconnectivity.nix { - inherit (darwin.apple_sdk_11_0.frameworks) IOBluetooth; - }; + qtconnectivity = callPackage ../modules/qtconnectivity.nix { }; qtdatavis3d = callPackage ../modules/qtdatavis3d.nix {}; qtdeclarative = callPackage ../modules/qtdeclarative.nix {}; qtdoc = callPackage ../modules/qtdoc.nix {}; - qtgamepad = callPackage ../modules/qtgamepad.nix { - inherit (darwin.apple_sdk_11_0.frameworks) GameController; - }; + qtgamepad = callPackage ../modules/qtgamepad.nix { }; qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {}; qtimageformats = callPackage ../modules/qtimageformats.nix {}; qtlocation = callPackage ../modules/qtlocation.nix {}; @@ -278,9 +270,7 @@ let qtnetworkauth = callPackage ../modules/qtnetworkauth.nix {}; qtpim = callPackage ../modules/qtpim.nix {}; qtpositioning = callPackage ../modules/qtpositioning.nix {}; - qtpurchasing = callPackage ../modules/qtpurchasing.nix { - inherit (darwin.apple_sdk_11_0.frameworks) Foundation StoreKit; - }; + qtpurchasing = callPackage ../modules/qtpurchasing.nix { }; qtquick1 = null; qtquick3d = callPackage ../modules/qtquick3d.nix { }; qtquickcontrols = callPackage ../modules/qtquickcontrols.nix {}; @@ -313,24 +303,13 @@ let let stdenv' = if stdenv.cc.isClang then overrideLibcxx llvmPackages_15.stdenv else stdenv; in if stdenv'.hostPlatform.isDarwin then overrideSDK stdenv' "11.0" else stdenv'; inherit (srcs.qtwebengine) version; + inherit (darwin) bootstrap_cmds; python = python3; - inherit (darwin) xnu; - inherit (darwin.apple_sdk_11_0) libpm libunwind; - inherit (darwin.apple_sdk_11_0.libs) sandbox; - inherit (darwin.apple_sdk_11_0.frameworks) ApplicationServices AVFoundation Foundation ForceFeedback GameController AppKit - ImageCaptureCore CoreBluetooth IOBluetooth CoreWLAN Quartz Cocoa LocalAuthentication - MediaPlayer MediaAccessibility SecurityInterface Vision CoreML OpenDirectory Accelerate; - libobjc = darwin.apple_sdk_11_0.objc4; }; qtwebglplugin = callPackage ../modules/qtwebglplugin.nix {}; - qtwebkit = callPackage ../modules/qtwebkit.nix { - inherit (darwin) ICU; - inherit (darwin.apple_sdk_11_0.frameworks) OpenGL; - }; + qtwebkit = callPackage ../modules/qtwebkit.nix { }; qtwebsockets = callPackage ../modules/qtwebsockets.nix {}; - qtwebview = callPackage ../modules/qtwebview.nix { - inherit (darwin.apple_sdk_11_0.frameworks) CoreFoundation WebKit; - }; + qtwebview = callPackage ../modules/qtwebview.nix { }; qtx11extras = callPackage ../modules/qtx11extras.nix {}; qtxmlpatterns = callPackage ../modules/qtxmlpatterns.nix {}; diff --git a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix index d61619613eba..77f1fa38c300 100644 --- a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix +++ b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix @@ -1,4 +1,4 @@ -{ qtModule, lib, stdenv, qtbase, qtdeclarative, bluez, IOBluetooth }: +{ qtModule, lib, stdenv, qtbase, qtdeclarative, bluez }: qtModule { pname = "qtconnectivity"; @@ -6,8 +6,6 @@ qtModule { propagatedBuildInputs = [ qtbase qtdeclarative - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - IOBluetooth ]; outputs = [ "out" "dev" "bin" ]; } diff --git a/pkgs/development/libraries/qt-5/modules/qtgamepad.nix b/pkgs/development/libraries/qt-5/modules/qtgamepad.nix index c83e41be2af8..09fd6490eeb4 100644 --- a/pkgs/development/libraries/qt-5/modules/qtgamepad.nix +++ b/pkgs/development/libraries/qt-5/modules/qtgamepad.nix @@ -1,9 +1,8 @@ -{ lib, stdenv, qtModule, qtbase, qtdeclarative, GameController, pkg-config }: +{ qtModule, qtbase, qtdeclarative, pkg-config }: qtModule { pname = "qtgamepad"; - propagatedBuildInputs = [ qtbase qtdeclarative ] - ++ lib.optional stdenv.hostPlatform.isDarwin GameController; + propagatedBuildInputs = [ qtbase qtdeclarative ]; nativeBuildInputs = [ pkg-config ]; outputs = [ "out" "dev" "bin" ]; } diff --git a/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix b/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix index 3c1661c7b000..10df01285a4f 100644 --- a/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix +++ b/pkgs/development/libraries/qt-5/modules/qtpurchasing.nix @@ -1,14 +1,6 @@ -{ stdenv -, lib -, qtModule -, qtbase -, qtdeclarative -, StoreKit -, Foundation -}: +{ qtModule, qtbase, qtdeclarative }: qtModule { pname = "qtpurchasing"; propagatedBuildInputs = [ qtbase qtdeclarative ]; - buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ Foundation StoreKit ]; } diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix index 787c0632ea0c..38ad37fc0364 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix @@ -20,11 +20,7 @@ , systemd , enableProprietaryCodecs ? true , gn -, cctools, libobjc, libpm, libunwind, sandbox, xnu -, ApplicationServices, AVFoundation, Foundation, ForceFeedback, GameController, AppKit -, ImageCaptureCore, CoreBluetooth, IOBluetooth, CoreWLAN, Quartz, Cocoa, LocalAuthentication -, MediaPlayer, MediaAccessibility, SecurityInterface, Vision, CoreML, OpenDirectory, Accelerate -, cups, openbsm, xcbuild, writeScriptBin +, cctools, cups, bootstrap_cmds, xcbuild, writeScriptBin , ffmpeg ? null , lib, stdenv , version ? null @@ -65,7 +61,7 @@ qtModule ({ pkgsBuildBuild.pkg-config (lib.getDev pkgsBuildTarget.targetPackages.qt5.qtquickcontrols) pkg-config-wrapped-without-prefix - ] ++ lib.optional stdenv.hostPlatform.isDarwin xcbuild; + ] ++ lib.optional stdenv.hostPlatform.isDarwin [ bootstrap_cmds xcbuild ]; doCheck = true; outputs = [ "bin" "dev" "out" ]; @@ -158,22 +154,6 @@ qtModule ({ substituteInPlace src/buildtools/config/mac_osx.pri \ --replace 'QMAKE_CLANG_DIR = "/usr"' 'QMAKE_CLANG_DIR = "${stdenv.cc}"' - # Following is required to prevent a build error: - # ninja: error: '/nix/store/z8z04p0ph48w22rqzx7ql67gy8cyvidi-SDKs/MacOSX10.12.sdk/usr/include/mach/exc.defs', needed by 'gen/third_party/crashpad/crashpad/util/mach/excUser.c', missing and no known rule to make it - substituteInPlace src/3rdparty/chromium/third_party/crashpad/crashpad/util/BUILD.gn \ - --replace '$sysroot/usr' "${xnu}" - - # Apple has some secret stuff they don't share with OpenBSM - substituteInPlace src/3rdparty/chromium/base/mac/mach_port_rendezvous.cc \ - --replace "audit_token_to_pid(request.trailer.msgh_audit)" "request.trailer.msgh_audit.val[5]" - substituteInPlace src/3rdparty/chromium/third_party/crashpad/crashpad/util/mach/mach_message.cc \ - --replace "audit_token_to_pid(audit_trailer->msgh_audit)" "audit_trailer->msgh_audit.val[5]" - - # ld: warning: directory not found for option '-L/nix/store/...-xcodebuild-0.1.2-pre/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX11.0.sdk/usr/lib' - # ld: fatal warning(s) induced error (-fatal_warnings) - substituteInPlace src/3rdparty/chromium/build/config/compiler/BUILD.gn \ - --replace "-Wl,-fatal_warnings" "" - # Use system ffmpeg echo "gn_args += use_system_ffmpeg=true" >> src/core/config/mac_osx.pri echo "LIBS += -lavformat -lavcodec -lavutil" >> src/core/core_common.pri @@ -257,40 +237,10 @@ qtModule ({ # FIXME These dependencies shouldn't be needed but can't find a way # around it. Chromium pulls this in while bootstrapping GN. - ++ lib.optionals stdenv.hostPlatform.isDarwin [ - libobjc - cctools - - # frameworks - ApplicationServices - AVFoundation - Foundation - ForceFeedback - GameController - AppKit - ImageCaptureCore - CoreBluetooth - IOBluetooth - CoreWLAN - Quartz - Cocoa - LocalAuthentication - MediaPlayer - MediaAccessibility - SecurityInterface - Vision - CoreML - OpenDirectory - Accelerate - - openbsm - libunwind - ]; + ++ lib.optionals stdenv.hostPlatform.isDarwin [ cctools.libtool ]; buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ cups - libpm - sandbox # `sw_vers` is used by `src/3rdparty/chromium/build/config/mac/sdk_info.py` # to get some information about the host platform. diff --git a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix index 3382bca0f982..555635c79522 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebkit.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix @@ -3,7 +3,6 @@ , fontconfig, libwebp, libxml2, libxslt , sqlite, systemd, glib, gst_all_1, cmake , bison, flex, gdb, gperf, perl, pkg-config, python3, ruby -, ICU, OpenGL }: let @@ -24,8 +23,7 @@ qtModule { pname = "qtwebkit"; propagatedBuildInputs = [ qtbase qtdeclarative qtlocation qtsensors qtwebchannel ] ++ lib.optional stdenv.hostPlatform.isDarwin qtmultimedia; - buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base hyphen ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ ICU OpenGL ]; + buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base hyphen ]; nativeBuildInputs = [ bison flex gdb gperf perl pkg-config python3 ruby cmake ]; cmakeFlags = [ "-DPORT=Qt" ] diff --git a/pkgs/development/libraries/qt-5/modules/qtwebview.nix b/pkgs/development/libraries/qt-5/modules/qtwebview.nix index 9b1a290ece01..0ff65fa676ca 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebview.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebview.nix @@ -1,12 +1,8 @@ -{ lib, stdenv, qtModule, qtdeclarative, qtwebengine, CoreFoundation, WebKit }: +{ lib, stdenv, qtModule, qtdeclarative, qtwebengine }: qtModule { pname = "qtwebview"; propagatedBuildInputs = [ qtdeclarative qtwebengine ]; - buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ - CoreFoundation - WebKit - ]; outputs = [ "out" "dev" "bin" ]; NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-framework CoreFoundation -framework WebKit"; } diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix index c2e329b1f11f..2bf32e0a153a 100644 --- a/pkgs/development/libraries/qt-5/qtModule.nix +++ b/pkgs/development/libraries/qt-5/qtModule.nix @@ -2,6 +2,7 @@ , stdenv , buildPackages , mkDerivation +, apple-sdk_14 , perl , qmake , patches @@ -23,6 +24,11 @@ mkDerivation (args // { inherit pname version src; patches = (args.patches or []) ++ (patches.${pname} or []); + buildInputs = + args.buildInputs or [ ] + # Per https://doc.qt.io/qt-5/macos.html#supported-versions + ++ lib.optionals stdenv.isDarwin [ apple-sdk_14 ]; + nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ perl qmake From ab80059a1b36a2578471b5df16b6fc32ed95f4fb Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:27:46 -0400 Subject: [PATCH 3/8] qt5.qtwebengine: drop overrideSDK Qt is using the new Darwin SDK, which no longer requires overrideSDK to change the SDK version or set the deployment target. --- pkgs/development/libraries/qt-5/5.15/default.nix | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix index 0827b7f4238b..240e914241ed 100644 --- a/pkgs/development/libraries/qt-5/5.15/default.nix +++ b/pkgs/development/libraries/qt-5/5.15/default.nix @@ -299,9 +299,7 @@ let # starting with clang 16. Patches are available upstream that can be backported. # Because the first error is non-trivial to fix and suppressing it risks future breakage, # clang is pinned to clang 15. That also makes fixing the second set of errors unnecessary. - stdenv = - let stdenv' = if stdenv.cc.isClang then overrideLibcxx llvmPackages_15.stdenv else stdenv; - in if stdenv'.hostPlatform.isDarwin then overrideSDK stdenv' "11.0" else stdenv'; + stdenv = if stdenv.cc.isClang then overrideLibcxx llvmPackages_15.stdenv else stdenv; inherit (srcs.qtwebengine) version; inherit (darwin) bootstrap_cmds; python = python3; From 61d0e51c9c9ea8c8a7a9fa0a5d21e71ed825bb12 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Tue, 24 Sep 2024 08:32:50 -0400 Subject: [PATCH 4/8] qt5.qtwebengine: use the 13.3 SDK because the 14.4 SDK does not work While the 14.4 SDK works to build the rest of Qt 5, building Qt WebEngine fails with errors like the following: In file included from gen/base/base_jumbo_37.cc:14: In file included from ./../../3rdparty/chromium/base/mac/mach_port_rendezvous.cc:16: In file included from ../../3rdparty/chromium/base/mac/foundation_util.h:34: In file included from /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/ApplicationServices.framework/Headers/ApplicationServices.h:39: In file included from /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CoreText.h:26: In file included from /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTFramesetter.h:21: In file included from /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTTypesetter.h:20: /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreText.framework/Headers/CTLine.h:138:5: error: unknown type name 'CFAttributedStringRef'; did you mean 'CFMutableStringRef'? CFAttributedStringRef attrString ) CT_AVAILABLE(macos(10.5), ios(3.2), watchos(2.0), tvos(9.0)); ^ /nix/store/sfdyfscmykycv7nfscn551lyl3gf4n27-apple-sdk-14.4/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CFBase.h:500:70: note: 'CFMutableStringRef' declared here typedef struct CF_BRIDGED_MUTABLE_TYPE(NSMutableString) __CFString * CFMutableStringRef; ^ --- pkgs/development/libraries/qt-5/modules/qtwebengine.nix | 5 +++-- pkgs/development/libraries/qt-5/qtModule.nix | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix index 38ad37fc0364..18d9d7459feb 100644 --- a/pkgs/development/libraries/qt-5/modules/qtwebengine.nix +++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix @@ -20,7 +20,7 @@ , systemd , enableProprietaryCodecs ? true , gn -, cctools, cups, bootstrap_cmds, xcbuild, writeScriptBin +, apple-sdk_13, cctools, cups, bootstrap_cmds, xcbuild, writeScriptBin , ffmpeg ? null , lib, stdenv , version ? null @@ -51,7 +51,8 @@ let in -qtModule ({ +# Override the SDK because Qt WebEngine doesn’t seem to build using the 14.4 SDK. +(qtModule.override { apple-sdk_for_qt = apple-sdk_13; }) ({ pname = "qtwebengine"; nativeBuildInputs = [ bison flex git gperf ninja pkg-config (python.withPackages(ps: [ ps.html5lib ])) which gn nodejs diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix index 2bf32e0a153a..ee59ee76d9e9 100644 --- a/pkgs/development/libraries/qt-5/qtModule.nix +++ b/pkgs/development/libraries/qt-5/qtModule.nix @@ -3,6 +3,7 @@ , buildPackages , mkDerivation , apple-sdk_14 +, apple-sdk_for_qt ? apple-sdk_14 , perl , qmake , patches @@ -27,7 +28,7 @@ mkDerivation (args // { buildInputs = args.buildInputs or [ ] # Per https://doc.qt.io/qt-5/macos.html#supported-versions - ++ lib.optionals stdenv.isDarwin [ apple-sdk_14 ]; + ++ lib.optionals stdenv.isDarwin [ apple-sdk_for_qt ]; nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ From 830b9fe572fa374c4b7c31aac506003f1d8dfd5c Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:41:13 -0400 Subject: [PATCH 5/8] qt6.qtbase: build with the 14.4 SDK MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Per upstream’s supported Darwin versions, built with the 14.4 SDK (corresponding to Xcode 15) and a 11.0 deployment target. To ensure that users of Qt have a compatible SDK and deployment target, propagate the 11.3 SDK and a 11.0 minimum version. Users that need a newer version can opt into using it by adding the SDK package to their build inputs. --- .../libraries/qt-6/modules/qtbase.nix | 27 ++++++------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/pkgs/development/libraries/qt-6/modules/qtbase.nix b/pkgs/development/libraries/qt-6/modules/qtbase.nix index f9c36c4311e9..c6ba346565b3 100644 --- a/pkgs/development/libraries/qt-6/modules/qtbase.nix +++ b/pkgs/development/libraries/qt-6/modules/qtbase.nix @@ -67,15 +67,10 @@ , unixODBCDrivers # darwin , moveBuildTree +, apple-sdk_11 +, apple-sdk_14 +, darwinMinVersionHook , xcbuild -, AGL -, AVFoundation -, AppKit -, Contacts -, CoreBluetooth -, EventKit -, GSS -, MetalKit # mingw , pkgsBuildBuild # optional dependencies @@ -162,14 +157,8 @@ stdenv.mkDerivation rec { xorg.xcbutilcursor libepoxy ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - AGL - AVFoundation - AppKit - Contacts - CoreBluetooth - EventKit - GSS - MetalKit + apple-sdk_14 + (darwinMinVersionHook "11.0") ] ++ lib.optionals libGLSupported [ libGL ] ++ lib.optionals stdenv.hostPlatform.isMinGW [ @@ -181,9 +170,9 @@ stdenv.mkDerivation rec { at-spi2-core ] ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform libinput) [ libinput - ] ++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [ - AppKit - CoreBluetooth + ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ + apple-sdk_11 + (darwinMinVersionHook "11.0") ] ++ lib.optional withGtk3 gtk3 ++ lib.optional (libmysqlclient != null && !stdenv.hostPlatform.isMinGW) libmysqlclient From 4ad6c7f19d682a8e26930e94f1e5f01428753909 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:41:13 -0400 Subject: [PATCH 6/8] qt6: build Qt 6 modules with the 14.4 SDK This change ensures all Qt modules build with the latest SDK. --- pkgs/development/libraries/qt-6/default.nix | 43 ++------------ .../libraries/qt-6/modules/qtconnectivity.nix | 5 -- .../libraries/qt-6/modules/qtmultimedia.nix | 4 +- .../libraries/qt-6/modules/qtspeech.nix | 4 +- .../libraries/qt-6/modules/qtwebengine.nix | 58 +------------------ .../libraries/qt-6/modules/qtwebview.nix | 4 +- pkgs/development/libraries/qt-6/qtModule.nix | 6 +- 7 files changed, 14 insertions(+), 110 deletions(-) diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix index 1ee93acfe485..00b57472488b 100644 --- a/pkgs/development/libraries/qt-6/default.nix +++ b/pkgs/development/libraries/qt-6/default.nix @@ -42,8 +42,6 @@ let qtbase = callPackage ./modules/qtbase.nix { withGtk3 = !stdenv.hostPlatform.isMinGW; inherit (srcs.qtbase) src version; - inherit (darwin.apple_sdk_12_3.frameworks) - AGL AVFoundation AppKit Contacts CoreBluetooth EventKit GSS MetalKit; patches = [ ./patches/0001-qtbase-qmake-always-use-libname-instead-of-absolute-.patch ./patches/0002-qtbase-qmake-fix-mkspecs-for-darwin.patch @@ -55,14 +53,6 @@ let ./patches/0008-qtbase-find-qmlimportscanner-in-macdeployqt-via-envi.patch ./patches/0009-qtbase-check-in-the-QML-folder-of-this-library-does-.patch ./patches/0010-qtbase-derive-plugin-load-path-from-PATH.patch - # Revert "macOS: Silence warning about supporting secure state restoration" - # fix build with macOS sdk < 12.0 - (fetchpatch2 { - url = "https://github.com/qt/qtbase/commit/fc1549c01445bb9c99d3ba6de8fa9da230614e72.patch"; - revert = true; - hash = "sha256-cjB2sC4cvZn0UEc+sm6ZpjyC78ssqB1Kb5nlZQ15M4A="; - }) - # Backport patch for https://bugs.kde.org/show_bug.cgi?id=493116 # FIXME: remove for 6.8.1 (fetchpatch2 { @@ -119,9 +109,7 @@ let qt3d = callPackage ./modules/qt3d.nix { }; qt5compat = callPackage ./modules/qt5compat.nix { }; qtcharts = callPackage ./modules/qtcharts.nix { }; - qtconnectivity = callPackage ./modules/qtconnectivity.nix { - inherit (darwin.apple_sdk_12_3.frameworks) IOBluetooth PCSC; - }; + qtconnectivity = callPackage ./modules/qtconnectivity.nix { }; qtdatavis3d = callPackage ./modules/qtdatavis3d.nix { }; qtdeclarative = callPackage ./modules/qtdeclarative.nix { }; qtdoc = callPackage ./modules/qtdoc.nix { }; @@ -134,7 +122,6 @@ let qtlottie = callPackage ./modules/qtlottie.nix { }; qtmultimedia = callPackage ./modules/qtmultimedia.nix { inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-good gst-libav gst-vaapi; - inherit (darwin.apple_sdk_12_3.frameworks) VideoToolbox; }; qtmqtt = callPackage ./modules/qtmqtt.nix { }; qtnetworkauth = callPackage ./modules/qtnetworkauth.nix { }; @@ -143,9 +130,7 @@ let qtserialbus = callPackage ./modules/qtserialbus.nix { }; qtserialport = callPackage ./modules/qtserialport.nix { }; qtshadertools = callPackage ./modules/qtshadertools.nix { }; - qtspeech = callPackage ./modules/qtspeech.nix { - inherit (darwin.apple_sdk_12_3.frameworks) Cocoa; - }; + qtspeech = callPackage ./modules/qtspeech.nix { }; qtquick3d = callPackage ./modules/qtquick3d.nix { }; qtquick3dphysics = callPackage ./modules/qtquick3dphysics.nix { }; qtquickeffectmaker = callPackage ./modules/qtquickeffectmaker.nix { }; @@ -159,30 +144,10 @@ let qtwayland = callPackage ./modules/qtwayland.nix { }; qtwebchannel = callPackage ./modules/qtwebchannel.nix { }; qtwebengine = callPackage ./modules/qtwebengine.nix { - inherit (darwin) autoSignDarwinBinariesHook bootstrap_cmds xnu; - inherit (darwin.apple_sdk_12_3) libpm libunwind; - inherit (darwin.apple_sdk_12_3.libs) sandbox; - inherit (darwin.apple_sdk_12_3.frameworks) - AGL AVFoundation Accelerate Cocoa CoreLocation CoreML ForceFeedback - GameController ImageCaptureCore LocalAuthentication - MediaAccessibility MediaPlayer MetalKit Network OpenDirectory Quartz - ReplayKit SecurityInterface Vision; - qtModule = callPackage - ({ qtModule }: qtModule.override { - stdenv = - if stdenv.hostPlatform.isDarwin - then overrideSDK stdenv { darwinMinVersion = "11.0"; darwinSdkVersion = "11.0"; } - else stdenv; - }) - { }; - xcbuild = buildPackages.xcbuild.override { - productBuildVer = "20A2408"; - }; + inherit (darwin) autoSignDarwinBinariesHook bootstrap_cmds; }; qtwebsockets = callPackage ./modules/qtwebsockets.nix { }; - qtwebview = callPackage ./modules/qtwebview.nix { - inherit (darwin.apple_sdk_12_3.frameworks) WebKit; - }; + qtwebview = callPackage ./modules/qtwebview.nix { }; wrapQtAppsHook = callPackage ({ makeBinaryWrapper }: makeSetupHook diff --git a/pkgs/development/libraries/qt-6/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-6/modules/qtconnectivity.nix index 126920dd5051..8a48c8490435 100644 --- a/pkgs/development/libraries/qt-6/modules/qtconnectivity.nix +++ b/pkgs/development/libraries/qt-6/modules/qtconnectivity.nix @@ -5,8 +5,6 @@ , qtdeclarative , bluez , pkg-config -, IOBluetooth -, PCSC }: qtModule { @@ -16,8 +14,5 @@ qtModule { propagatedBuildInputs = [ qtbase qtdeclarative - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - IOBluetooth - PCSC ]; } diff --git a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix index 8cdabc32b657..519bec8c37ae 100644 --- a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix +++ b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix @@ -21,7 +21,6 @@ , elfutils , libunwind , orc -, VideoToolbox , pkgsBuildBuild }: @@ -34,8 +33,7 @@ qtModule { ++ lib.optionals (lib.meta.availableOn stdenv.hostPlatform elfutils) [ elfutils ]; propagatedBuildInputs = [ qtbase qtdeclarative qtsvg qtshadertools ] ++ lib.optionals (!stdenv.hostPlatform.isMinGW) [ qtquick3d ] - ++ lib.optionals stdenv.hostPlatform.isLinux [ gstreamer gst-plugins-base gst-plugins-good gst-libav gst-vaapi ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ VideoToolbox ]; + ++ lib.optionals stdenv.hostPlatform.isLinux [ gstreamer gst-plugins-base gst-plugins-good gst-libav gst-vaapi ]; patches = [ ../patches/fix-qtgui-include-incorrect-case.patch diff --git a/pkgs/development/libraries/qt-6/modules/qtspeech.nix b/pkgs/development/libraries/qt-6/modules/qtspeech.nix index 3fbfa6e5d90d..828f34bb72b9 100644 --- a/pkgs/development/libraries/qt-6/modules/qtspeech.nix +++ b/pkgs/development/libraries/qt-6/modules/qtspeech.nix @@ -7,13 +7,11 @@ , flite , alsa-lib , speechd-minimal -, Cocoa }: qtModule { pname = "qtspeech"; nativeBuildInputs = [ pkg-config ]; buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ flite alsa-lib speechd-minimal ]; - propagatedBuildInputs = [ qtbase qtmultimedia ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ Cocoa ]; + propagatedBuildInputs = [ qtbase qtmultimedia ]; } diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix index 11a70e53bfcd..c137bd5a1f68 100644 --- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix +++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix @@ -21,6 +21,7 @@ , libXtst , libxshmfence , libXi +, cups , fontconfig , freetype , harfbuzz @@ -64,31 +65,6 @@ , bootstrap_cmds , cctools , xcbuild -, AGL -, AVFoundation -, Accelerate -, Cocoa -, CoreLocation -, CoreML -, ForceFeedback -, GameController -, ImageCaptureCore -, LocalAuthentication -, MediaAccessibility -, MediaPlayer -, MetalKit -, Network -, OpenDirectory -, Quartz -, ReplayKit -, SecurityInterface -, Vision -, openbsm -, libunwind -, cups -, libpm -, sandbox -, xnu }: qtModule { @@ -167,8 +143,6 @@ qtModule { --replace "AppleClang" "Clang" substituteInPlace cmake/Functions.cmake \ --replace "/usr/bin/xcrun" "${xcbuild}/bin/xcrun" - substituteInPlace src/3rdparty/chromium/third_party/crashpad/crashpad/util/BUILD.gn \ - --replace "\$sysroot/usr" "${xnu}" ''; cmakeFlags = [ @@ -197,7 +171,7 @@ qtModule { ] ++ lib.optionals enableProprietaryCodecs [ "-DQT_FEATURE_webengine_proprietary_codecs=ON" ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - "-DCMAKE_OSX_DEPLOYMENT_TARGET=${stdenv.hostPlatform.darwinSdkVersion}" + "-DCMAKE_OSX_DEPLOYMENT_TARGET=11.0" # Per Qt 6’s deployment target (why doesn’t the hook work?) ]; propagatedBuildInputs = [ @@ -272,36 +246,10 @@ qtModule { libkrb5 mesa - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - AGL - AVFoundation - Accelerate - Cocoa - CoreLocation - CoreML - ForceFeedback - GameController - ImageCaptureCore - LocalAuthentication - MediaAccessibility - MediaPlayer - MetalKit - Network - OpenDirectory - Quartz - ReplayKit - SecurityInterface - Vision - - openbsm - libunwind ]; buildInputs = [ cups - ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ - libpm - sandbox ]; requiredSystemFeatures = [ "big-parallel" ]; @@ -316,7 +264,5 @@ qtModule { # This build takes a long time; particularly on slow architectures # 1 hour on 32x3.6GHz -> maybe 12 hours on 4x2.4GHz timeout = 24 * 3600; - # Not compatible with macOS 11 without massive patching - broken = stdenv.hostPlatform.isDarwin && lib.versionOlder stdenv.hostPlatform.darwinMinVersion "12"; }; } diff --git a/pkgs/development/libraries/qt-6/modules/qtwebview.nix b/pkgs/development/libraries/qt-6/modules/qtwebview.nix index dfc2da1df555..149ccc2a7ea1 100644 --- a/pkgs/development/libraries/qt-6/modules/qtwebview.nix +++ b/pkgs/development/libraries/qt-6/modules/qtwebview.nix @@ -3,12 +3,10 @@ , qtModule , qtdeclarative , qtwebengine -, WebKit }: qtModule { pname = "qtwebview"; propagatedBuildInputs = [ qtdeclarative ] - ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ qtwebengine ] - ++ lib.optionals stdenv.hostPlatform.isDarwin [ WebKit ]; + ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ qtwebengine ]; } diff --git a/pkgs/development/libraries/qt-6/qtModule.nix b/pkgs/development/libraries/qt-6/qtModule.nix index ef5aa994ce90..bb2243318a10 100644 --- a/pkgs/development/libraries/qt-6/qtModule.nix +++ b/pkgs/development/libraries/qt-6/qtModule.nix @@ -1,5 +1,6 @@ { lib , stdenv +, apple-sdk_14 , cmake , ninja , perl @@ -19,7 +20,10 @@ stdenv.mkDerivation (args // { inherit pname version src; patches = args.patches or patches.${pname} or [ ]; - buildInputs = args.buildInputs or [ ]; + buildInputs = + args.buildInputs or [ ] + # Per https://doc.qt.io/qt-6/macos.html#supported-versions + ++ lib.optionals stdenv.isDarwin [ apple-sdk_14 ]; nativeBuildInputs = (args.nativeBuildInputs or [ ]) ++ [ cmake ninja perl ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ moveBuildTree ]; propagatedBuildInputs = From 4ec83510956bb7e1304516dee74854cfc4d889ea Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:41:13 -0400 Subject: [PATCH 7/8] qt6.qtmultimedia: drop old SDK compatibility patch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Qt Multimediate is being built with a newer SDK that has the new definition, so don’t bother to patch it out anymore. The symbol is defined in a backwards compatible way, so it will still work on older releases that don’t have it in their SDKs. --- .../libraries/qt-6/modules/qtmultimedia.nix | 2 - ...n-revert-replace-deprecated-constant.patch | 50 ------------------- 2 files changed, 52 deletions(-) delete mode 100644 pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch diff --git a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix index 519bec8c37ae..ae02112475f0 100644 --- a/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix +++ b/pkgs/development/libraries/qt-6/modules/qtmultimedia.nix @@ -37,8 +37,6 @@ qtModule { patches = [ ../patches/fix-qtgui-include-incorrect-case.patch - # Remove new constants since macOS 12+, since we build Qt with the macOS 11 SDK - ../patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch ] ++ lib.optionals stdenv.hostPlatform.isMinGW [ ../patches/qtmultimedia-windows-no-uppercase-libs.patch ../patches/qtmultimedia-windows-resolve-function-name.patch diff --git a/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch b/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch deleted file mode 100644 index 3196a6e4158c..000000000000 --- a/pkgs/development/libraries/qt-6/patches/qtmultimedia-darwin-revert-replace-deprecated-constant.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff --git a/src/multimedia/darwin/qdarwinmediadevices.mm b/src/multimedia/darwin/qdarwinmediadevices.mm -index b0a108935..881066928 100644 ---- a/src/multimedia/darwin/qdarwinmediadevices.mm -+++ b/src/multimedia/darwin/qdarwinmediadevices.mm -@@ -42,7 +42,7 @@ static AudioDeviceID defaultAudioDevice(QAudioDevice::Mode mode) - const AudioObjectPropertyAddress propertyAddress = { - selector, - kAudioObjectPropertyScopeGlobal, -- kAudioObjectPropertyElementMain, -+ kAudioObjectPropertyElementMaster, - }; - - if (auto audioDevice = getAudioObject(kAudioObjectSystemObject, propertyAddress, -@@ -77,7 +77,7 @@ static QList availableAudioDevices(QAudioDevice::Mode mode) - - const AudioObjectPropertyAddress audioDevicesPropertyAddress = { - kAudioHardwarePropertyDevices, kAudioObjectPropertyScopeGlobal, -- kAudioObjectPropertyElementMain -+ kAudioObjectPropertyElementMaster - }; - - if (auto audioDevices = getAudioData( -@@ -130,11 +130,11 @@ static OSStatus audioDeviceChangeListener(AudioObjectID id, UInt32, - - static constexpr AudioObjectPropertyAddress listenerAddresses[] = { - { kAudioHardwarePropertyDefaultInputDevice, kAudioObjectPropertyScopeGlobal, -- kAudioObjectPropertyElementMain }, -+ kAudioObjectPropertyElementMaster }, - { kAudioHardwarePropertyDefaultOutputDevice, kAudioObjectPropertyScopeGlobal, -- kAudioObjectPropertyElementMain }, -+ kAudioObjectPropertyElementMaster }, - { kAudioHardwarePropertyDevices, kAudioObjectPropertyScopeGlobal, -- kAudioObjectPropertyElementMain } -+ kAudioObjectPropertyElementMaster } - }; - - static void setAudioListeners(QDarwinMediaDevices &instance) -diff --git a/src/multimedia/darwin/qmacosaudiodatautils_p.h b/src/multimedia/darwin/qmacosaudiodatautils_p.h -index 8cc2f8440..5cd6fced2 100644 ---- a/src/multimedia/darwin/qmacosaudiodatautils_p.h -+++ b/src/multimedia/darwin/qmacosaudiodatautils_p.h -@@ -44,7 +44,7 @@ void printUnableToReadWarning(const char *logName, AudioObjectID objectID, const - - inline static AudioObjectPropertyAddress - makePropertyAddress(AudioObjectPropertySelector selector, QAudioDevice::Mode mode, -- AudioObjectPropertyElement element = kAudioObjectPropertyElementMain) -+ AudioObjectPropertyElement element = kAudioObjectPropertyElementMaster) - { - return { selector, - mode == QAudioDevice::Input ? kAudioDevicePropertyScopeInput From 0725c33a50ad2df7fe87e75a0e6dd3aeb37c3301 Mon Sep 17 00:00:00 2001 From: Randy Eckenrode Date: Mon, 23 Sep 2024 18:41:13 -0400 Subject: [PATCH 8/8] qt6.stdenv: drop overrideSDK Qt is using the new Darwin SDK, which no longer requires overrideSDK to change the SDK version or set the deployment target. --- pkgs/development/libraries/qt-6/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix index 00b57472488b..f7bdfc98a313 100644 --- a/pkgs/development/libraries/qt-6/default.nix +++ b/pkgs/development/libraries/qt-6/default.nix @@ -26,11 +26,7 @@ let let callPackage = self.newScope ({ inherit (self) qtModule; - inherit srcs python3; - stdenv = - if stdenv.hostPlatform.isDarwin - then overrideSDK stdenv { darwinMinVersion = "11.0"; darwinSdkVersion = "12.3"; } - else stdenv; + inherit srcs python3 stdenv; }); in {