Evgeniy Khramtsov writes: > When starting Firefox in a terminal emulator, it complains about libpci > missing for glxtest. > > According to the source, Firefox dlopens libpci.so.3: > https://searchfox.org/mozilla-central/source/toolkit/xre/glxtest.cpp#250 > > devel/libpci provides this library and installing it resolves the > warning. Should this library be added as a runtime dependency for gecko? > > Note that this was tested on mozilla-central Firefox > (hg tagname 9d30cff8f9d48403530819099b36b36f41acb845).
Upstream added libpci due to lack of GLX_EXT_query_renderer under Wayland but it seems to help enabling WebRender by default under Xorg. https://cgit.FreeBSD.org/ports/commit/?id=f079b462f891b1e5c2cec31ac1190c73c17b0054 $ env -u WAYLAND_DISPLAY firefox about:support --- about:support default as of 89.0_1,2 +++ about:support after installing libpci @@ -283,23 +283,20 @@ }, "graphics": { "numTotalWindows": 1, - "numAcceleratedWindows": 0, - "windowLayerManagerType": "Basic", + "numAcceleratedWindows": 1, + "windowLayerManagerType": "WebRender", "windowLayerManagerRemote": true, "windowUsingAdvancedLayers": false, - "numAcceleratedWindowsMessage": { - "key": "" - }, "adapterDescription": "Mesa Intel(R) HD Graphics 530 (SKL GT2)", "adapterVendorID": "0x8086", - "adapterDeviceID": "Mesa Intel(R) HD Graphics 530 (SKL GT2)", + "adapterDeviceID": "0x1912", "adapterRAM": 0, "adapterDrivers": "", "driverVendor": "mesa/iris", "driverVersion": "20.2.3.0", "driverDate": "", - "adapterVendorID2": "", - "adapterDeviceID2": "", + "adapterVendorID2": "0x10de", + "adapterDeviceID2": "0x0fc1", "isGPU2Active": false, "usesTiling": false, "contentUsesTiling": false, @@ -332,71 +329,49 @@ "DisplayCount": 1, "Display0": "3840x2160 default" }, - "failures": [ - "[GFX1-]: glxtest: libpci missing" - ], - "indices": [ - 0 - ], "featureLog": { "features": [ { "name": "HW_COMPOSITING", "description": "Compositing", - "status": "blocked", + "status": "available", "log": [ { "type": "default", "status": "available" - }, - { - "type": "env", - "status": "blocked", - "message": "Acceleration blocked by platform" } ] }, { "name": "OPENGL_COMPOSITING", "description": "OpenGL Compositing", - "status": "unavailable", + "status": "available", "log": [ { "type": "default", - "status": "unavailable", - "message": "Hardware compositing is disabled" + "status": "available" } ] }, { "name": "WEBRENDER", "description": "WebRender", - "status": "disabled", + "status": "available", "log": [ { "type": "default", "status": "available" - }, - { - "type": "env", - "status": "disabled", - "message": "Not qualified" } ] }, { "name": "WEBRENDER_QUALIFIED", "description": "WebRender qualified", - "status": "denied", + "status": "available", "log": [ { "type": "default", "status": "available" - }, - { - "type": "env", - "status": "denied", - "message": "Not on allowlist" } ] }, @@ -413,35 +388,36 @@ ] }, { + "name": "WEBRENDER_PARTIAL", + "description": "WebRender partial present", + "status": "available", + "log": [ + { + "type": "default", + "status": "available" + } + ] + }, + { "name": "WEBRENDER_SHADER_CACHE", "description": "WebRender shader disk cache", - "status": "unavailable", + "status": "disabled", "log": [ { "type": "default", "status": "disabled", "message": "Disabled by default" - }, - { - "type": "runtime", - "status": "unavailable", - "message": "WebRender disabled" } ] }, { "name": "WEBRENDER_OPTIMIZED_SHADERS", "description": "WebRender optimized shaders", - "status": "unavailable", + "status": "available", "log": [ { "type": "default", "status": "available" - }, - { - "type": "runtime", - "status": "unavailable", - "message": "WebRender disabled" } ] }, @@ -518,7 +494,7 @@ { "name": "WEBGPU", "description": "WebGPU", - "status": "unavailable-no-webrender", + "status": "blocked", "log": [ { "type": "default", @@ -527,8 +503,8 @@ }, { "type": "runtime", - "status": "unavailable-no-webrender", - "message": "WebGPU can't present without WebRender" + "status": "blocked", + "message": "WebGPU can only be enabled in nightly" } ] },