diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix index ed0be6738fd6..d18678b9f5cd 100644 --- a/pkgs/development/libraries/qt-6/default.nix +++ b/pkgs/development/libraries/qt-6/default.nix @@ -27,10 +27,11 @@ let mirror = "mirror://qt"; }; - addPackages = self: with self; + addPackages = self: let callPackage = self.newScope ({ - inherit qtModule srcs python3; + inherit (self) qtModule; + inherit srcs python3; stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv; }); in @@ -61,7 +62,9 @@ let ]; }; env = callPackage ./qt-env.nix { }; - full = env "qt-full-${qtbase.version}" ([ + full = callPackage ({ env, qtbase }: env "qt-full-${qtbase.version}" + # `with self` is ok to use here because having these spliced is unnecessary + ( with self;[ qt3d qt5compat qtcharts @@ -99,7 +102,7 @@ let qtwebengine qtwebsockets qtwebview - ] ++ lib.optionals (!stdenv.isDarwin) [ qtwayland libglvnd ]); + ] ++ lib.optionals (!stdenv.isDarwin) [ qtwayland libglvnd ])) { }; qt3d = callPackage ./modules/qt3d.nix { }; qt5compat = callPackage ./modules/qt5compat.nix { }; @@ -152,11 +155,11 @@ let GameController ImageCaptureCore LocalAuthentication MediaAccessibility MediaPlayer MetalKit Network OpenDirectory Quartz ReplayKit SecurityInterface Vision; - qtModule = qtModule.override { + qtModule = callPackage ({ qtModule }: qtModule.override { stdenv = if stdenv.isDarwin then overrideSDK stdenv { darwinMinVersion = "10.13"; darwinSdkVersion = "11.0"; } else stdenv; - }; + }) { }; xcbuild = buildPackages.xcbuild.override { productBuildVer = "20A2408"; }; @@ -166,21 +169,21 @@ let inherit (darwin.apple_sdk_11_0.frameworks) WebKit; }; - wrapQtAppsHook = makeSetupHook + wrapQtAppsHook = callPackage ({ makeBinaryWrapper }: makeSetupHook { name = "wrap-qt6-apps-hook"; - propagatedBuildInputs = [ buildPackages.makeBinaryWrapper ]; - } ./hooks/wrap-qt-apps-hook.sh; + propagatedBuildInputs = [ makeBinaryWrapper ]; + } ./hooks/wrap-qt-apps-hook.sh) { }; - qmake = makeSetupHook + qmake = callPackage ({ qtbase }: makeSetupHook { name = "qmake6-hook"; - propagatedBuildInputs = [ self.qtbase.dev ]; + propagatedBuildInputs = [ qtbase.dev ]; substitutions = { inherit debug; fix_qmake_libtool = ./hooks/fix-qmake-libtool.sh; }; - } ./hooks/qmake-hook.sh; + } ./hooks/qmake-hook.sh) { }; } // lib.optionalAttrs config.allowAliases { # Convert to a throw on 03-01-2023 and backport the change. # Warnings show up in various cli tool outputs, throws do not.