Swiftshader is manually disabled in Debian's chromium package. It's one of those legacy patches that I've long meant to look at (and remove if conditions allow it), but I haven't gotten to yet: https://salsa.debian.org/chromium-team/chromium/-/commit/84db0501b0d6cb055fe9f22057cd129fdefac710

It wasn't documented *why* swiftshader was disabled. Maybe related to non-DFSG third party libs (see https://bugs.debian.org/909156)? In order to reenable it, I need to poke around and see if I can figure out why it was disabled in the first place.


On 2/22/24 10:32, Charles Samuels wrote:
Package: chromium
Version: 121.0.6167.160-1~deb12u1
Severity: normal
X-Debbugs-Cc: char...@derkarl.org

Dear Maintainer,

I'd like to use Chromium's webgl support in headless mode. However, If I don't
have an X-server running, and I try to access a website that uses webgl, the
browser simply doesn't support webgl, which forces me to use a non-Debian
Chromium.

I can reproduce this problem with:
$ unset DISPLAY
$ chromium --headless=new --enable-webgl --screenshot https://get.webgl.org

Then Chromium outputs messages like:

[843245:843245:0222/035252.118199:ERROR:gl_display.cc(520)] EGL Driver message
(Critical) eglInitialize: Could not open the default X display.

In theory, I should be able to run Chromium, per their documentation:

$ chromium --headless=new --use-gl=swiftshader --enable-webgl --screenshot
https://get.webgl.org

But it indicates that that is not supported.

In order to support swiftshader, a clone of
<https://github.com/google/swiftshader.git> must be present in third_party/
and the debian/rules should set the features: enable_swiftshader=true
dawn_use_swiftshader=true . It might also make sense to use
enable_swiftshader_vulkan=true as well

Thank you for your attention and the efforts you put into Debian.

cs


-- System Information:
Debian Release: 12.4
   APT prefers stable-updates
   APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500,
'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.1.0-17-amd64 (SMP w/16 CPU threads; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=C
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages chromium depends on:
pn  chromium-common                                     <none>
ii  libasound2                                          1.2.8-1+b1
ii  libatk-bridge2.0-0                                  2.46.0-5
ii  libatk1.0-0                                         2.46.0-5
ii  libatomic1                                          12.2.0-14
ii  libatspi2.0-0                                       2.46.0-5
ii  libbrotli1                                          1.0.9-2+b6
ii  libc6                                               2.36-9+deb12u3
ii  libcairo2                                           1.16.0-7
ii  libcups2                                            2.4.2-3+deb12u5
ii  libdbus-1-3                                         1.14.10-1~deb12u1
ii  libdouble-conversion3                               3.2.1-1
ii  libdrm2                                             2.4.114-1+b1
ii  libevent-2.1-7                                      2.1.12-stable-8
ii  libexpat1                                           2.5.0-1
ii  libflac12                                           1.4.2+ds-2
ii  libfontconfig1                                      2.14.1-4
ii  libfreetype6                                        2.12.1+dfsg-5
ii  libgbm1                                             22.3.6-1+deb12u1
ii  libgcc-s1                                           12.2.0-14
ii  libglib2.0-0                                        2.74.6-2
ii  libgtk-3-0                                          3.24.38-2~deb12u1
ii  libjpeg62-turbo                                     1:2.1.5-2
ii  libjsoncpp25                                        1.9.5-4
ii  liblcms2-2                                          2.14-2
ii  libminizip1                                         1.1-8+deb12u1
ii  libnspr4                                            2:4.35-1
ii  libnss3                                             2:3.87.1-1
ii  libopenh264-7                                       1:2.3.1-dmo1
ii  libopenjp2-7                                        2.5.0-2
ii  libopus0                                            1.3.1-3
ii  libpango-1.0-0                                      1.50.12+ds-1
ii  libpng16-16                                         1.6.39-2
ii  libpulse0                                           16.1+dfsg1-2+b1
ii  libsnappy1v5                                        1.1.9-3
ii  libstdc++6                                          12.2.0-14
ii  libwebp7                                            1.2.4-0.2+deb12u1
ii  libwebpdemux2                                       1.2.4-0.2+deb12u1
ii  libwebpmux3                                         1.2.4-0.2+deb12u1
ii  libwoff1                                            1.0.2-2
ii  libx11-6                                            2:1.8.4-2+deb12u2
ii  libxcb1                                             1.15-1
ii  libxcomposite1                                      1:0.4.5-1
ii  libxdamage1                                         1:1.1.6-1
ii  libxext6                                            2:1.3.4-1+b1
ii  libxfixes3                                          1:6.0.0-2
ii  libxkbcommon0                                       1.5.0-1
ii  libxml2
2.9.14+dfsg-1.3~deb12u1
ii  libxnvctrl0                                         525.85.05-3~deb12u1
ii  libxrandr2                                          2:1.5.2-2+b1
ii  libxslt1.1                                          1.1.35-1
ii  xdg-desktop-portal-gtk [xdg-desktop-portal-backend  1.14.1-1
     ]
ii  xdg-desktop-portal-kde [xdg-desktop-portal-backend  5.27.5-2
     ]
ii  zlib1g                                              1:1.2.13.dfsg-1

Versions of packages chromium recommends:
pn  chromium-sandbox  <none>

Versions of packages chromium suggests:
pn  chromium-driver  <none>
pn  chromium-l10n    <none>
pn  chromium-shell   <none>

Attachment: OpenPGP_0x645D0247C36E7637.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to