!UNVBThoJtlIiVwiDjU:nixos.org

Staging

187 Members
Staging merges | Running staging cycles: https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Astaging-next+head%3Astaging-next-24.05 | Review Reports: https://malob.github.io/nix-review-tools-reports/70 Servers

Load older messages


SenderMessageTime
18 Oct 2024
@k900:0upti.meK900Well nothing that would help you here09:33:01
@emilazy:matrix.orgemilyok wonderful09:33:01
@emilazy:matrix.orgemilythis build is horrifying09:36:56
@emilazy:matrix.orgemily

Marcus: this is probably going to require some trial and error, but here's my first attempt:

diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index c137bd5a1f..1c56916622 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -256,6 +256,10 @@
 
   preConfigure = ''
     export NINJAFLAGS="-j$NIX_BUILD_CORES"
+
+    cat >args.gn <<EOF
+    metal_internal_shader_compilation_supported=false
+    EOF
   '';
 
   meta = with lib; {
09:41:44
@k900:0upti.meK900 Don't we have args.gn somewhere already 09:44:26
@k900:0upti.meK900Idk 09:44:27
@k900:0upti.meK900Maybe it was in Chromium 09:44:31
@k900:0upti.meK900Speaking of Chromium 09:44:36
@k900:0upti.meK900Maybe I should go summon the other Emily 09:44:49
@emilazy:matrix.orgemilythe problem is that there's a layer of Qt CMake wrapping the Chromium build09:45:34
@emilazy:matrix.orgemilyif it was just Chromium I think I could figure it out09:45:39
@emilazy:matrix.orgemily Marcus: fwiw if the build fails with that patch there's like 3 things we can try instead. just a matter of figuring out how to pipe the setting through 3 layers of build 10:11:10
@marcusramberg:matrix.orgMarcus
In reply to @emilazy:matrix.org

Marcus: this is probably going to require some trial and error, but here's my first attempt:

diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index c137bd5a1f..1c56916622 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -256,6 +256,10 @@
 
   preConfigure = ''
     export NINJAFLAGS="-j$NIX_BUILD_CORES"
+
+    cat >args.gn <<EOF
+    metal_internal_shader_compilation_supported=false
+    EOF
   '';
 
   meta = with lib; {
I switched my devenv over from staging to staging-next to build more of it before going to lunch. Will try your patch once I get to the failure point again.
10:11:33
@reckenrode:matrix.orgRandy Eckenrode
In reply to @emilazy:matrix.org
also, this isn't very urgent because Qt 6 WebEngine was already broken on Darwin previously
I fixed it for Qt 6 and the rework, but upstream broke it again before it could even make it through staging-next to master. 😭
10:39:44
@emilazy:matrix.orgemilytbf they broke it by doing something entirely reasonable 😅10:43:56
@emilazy:matrix.orgemilyand have an option to turn it off10:44:01
@marcusramberg:matrix.orgMarcus
In reply to @emilazy:matrix.org
Marcus: fwiw if the build fails with that patch there's like 3 things we can try instead. just a matter of figuring out how to pipe the setting through 3 layers of build
Fails with the same error.
12:33:52
@emilazy:matrix.orgemilyok, I can come up with a more invasive patch that should hopefully confirm whether the basic approach is sound before trying to refine it12:34:25
@emilazy:matrix.orgemily

try this

diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index c137bd5a1f..c5f2a254dd 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -143,6 +143,8 @@
       --replace "AppleClang" "Clang"
     substituteInPlace cmake/Functions.cmake \
       --replace "/usr/bin/xcrun" "${xcbuild}/bin/xcrun"
+    substituteInPlace src/3rdparty/chromium/third_party/angle/src/libANGLE/renderer/metal/metal_backend.gni \
+      --replace-fail 'angle_has_build && !(is_ios && target_environment == "simulator")' 'false'
   '';
 
   cmakeFlags = [
12:36:01
@marcusramberg:matrix.orgMarcus
In reply to @emilazy:matrix.org

try this

diff --git a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
index c137bd5a1f..c5f2a254dd 100644
--- a/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
+++ b/pkgs/development/libraries/qt-6/modules/qtwebengine.nix
@@ -143,6 +143,8 @@
       --replace "AppleClang" "Clang"
     substituteInPlace cmake/Functions.cmake \
       --replace "/usr/bin/xcrun" "${xcbuild}/bin/xcrun"
+    substituteInPlace src/3rdparty/chromium/third_party/angle/src/libANGLE/renderer/metal/metal_backend.gni \
+      --replace-fail 'angle_has_build && !(is_ios && target_environment == "simulator")' 'false'
   '';
 
   cmakeFlags = [

       > ./media/PRESUBMIT_test.py: interpreter directive changed from "#!/usr/bin/env python" to "/nix/store/sgmh5fy4b2idsmy788cz747mjam4vrcp-python3-3.12.7-env/bin/python"
       > substituteStream() in derivation qtwebengine-6.8.0: WARNING: '--replace' is deprecated, use --replace-{fail,warn,quiet}. (file 'cmake/Functions.cmake')
       > substituteStream() in derivation qtwebengine-6.8.0: WARNING: pattern QLibraryInfo::path\(QLibraryInfo::TranslationsPath\) doesn't match anything in file 'src/core/web_engine_library_info.cpp'
       > substituteStream() in derivation qtwebengine-6.8.0: ERROR: pattern angle_has_build\ \&\&\ \!\(is_ios\ \&\&\ target_environment\ ==\ \"simulator\"\) doesn't match anything in file 'src/3rdparty/chromium/third_party/angle/src/libANGLE/renderer/metal/metal_backend.gni'
12:40:32
@emilazy:matrix.orgemilyokay, I ned to actually see what version it's at 😅12:40:49
@emilazy:matrix.orgemilywe might have to backport a patch12:40:51
@marcusramberg:matrix.orgMarcuswould getting the full build logs tell you?12:42:15
@emilazy:matrix.orgemilynah, I'm just cloning the Git repo12:42:56
@emilazy:matrix.orgemilyoh oops12:58:18
@emilazy:matrix.orgemily Marcus: use 'angle_has_build && !is_ios && target_os == host_os' for the string to replace instead 12:58:31
@emilazy:matrix.orgemilyI copied from the wrong revision12:58:34
@hexa:lossy.networkhexa
In reply to @emilazy:matrix.org
hexa: was it intentional to upgrade to the Sphinx we had issues with in python-updates?
I regularly forget which of the 500+ packages in python-updates had regressions and which didn't
13:03:37
@emilazy:matrix.orgemilyunderstandable13:03:49
@emilazy:matrix.orgemilyjust wanted to check if it was meant to be solved13:03:54

Show newer messages


Back to Room ListRoom Version: 6