about summary refs log tree commit diff
path: root/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
diff options
context:
space:
mode:
authorFrederik Rietdijk <fridh@fridh.nl>2020-04-25 07:52:04 +0200
committerFrederik Rietdijk <fridh@fridh.nl>2020-04-25 07:52:04 +0200
commit5c70040db2dd2123f7728f1bdcd40d5018de0ef9 (patch)
treeaaca4dc14216c2ba38374a2568045213407ac329 /pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
parentcff0669a4884bd6d0af19964c3589d13b2ea7a2b (diff)
parente7460e94124757249515c68a36a7ffdc57a8464d (diff)
downloadnixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar.gz
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar.bz2
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar.lz
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar.xz
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.tar.zst
nixlib-5c70040db2dd2123f7728f1bdcd40d5018de0ef9.zip
Merge master into staging-next
Diffstat (limited to 'pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch')
-rw-r--r--pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch26
1 files changed, 26 insertions, 0 deletions
diff --git a/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
new file mode 100644
index 000000000000..9f14a304eb34
--- /dev/null
+++ b/pkgs/applications/networking/browsers/ungoogled-chromium/patches/dont-use-ANGLE-by-default.patch
@@ -0,0 +1,26 @@
+A field trial currently enables the passthrough command decoder, which causes
+gl_factory.cc to try kGLImplementationEGLANGLE first, which causes Chromium to fail
+to load libGLESv2.so on NixOS.  It somehow does not try kGLImplementationDesktopGL,
+and so there is no GL support at all.
+
+Revert to using the validating command decoder, which prevents gl_factory.cc
+from touching allowed_impls, allowing it to successfully use kGLImplementationDesktopGL.
+
+diff --git a/ui/gl/gl_utils.cc b/ui/gl/gl_utils.cc
+index 697cbed5fe2d..8419bdb21a2f 100644
+--- a/ui/gl/gl_utils.cc
++++ b/ui/gl/gl_utils.cc
+@@ -71,9 +71,10 @@ bool UsePassthroughCommandDecoder(const base::CommandLine* command_line) {
+   } else if (switch_value == kCmdDecoderValidatingName) {
+     return false;
+   } else {
+-    // Unrecognized or missing switch, use the default.
+-    return base::FeatureList::IsEnabled(
+-        features::kDefaultPassthroughCommandDecoder);
++    // Ignore the field trial that enables it; disable it until
++    // gl_factory.cc kGLImplementationEGLANGLE issues are sorted
++    // out on NixOS.
++    return false;
+   }
+ }
+ }