flathub / org.gnome.Epiphany

5 stars 10 forks source link

Vulkan required from Web 47? #77

Closed philipstewart closed 1 month ago

philipstewart commented 1 month ago

Hello,

Is a Vulkan compatible driver now a requirement from Web 47 onwards?

$ flatpak run org.gnome.Epiphany 

(epiphany:2): Gdk-CRITICAL **: 18:04:30.858: Vulkan: ../src/nouveau/vulkan/nvkmd/nouveau/nvkmd_nouveau_pdev.c:76: VK_ERROR_INCOMPATIBLE_DRIVER

Admittedly this is old (c. 2009), but generally usable, hardware:

# lspci -v
...
02:00.0 VGA compatible controller: NVIDIA Corporation C79 [GeForce 9400M] (rev b1) (prog-if 00 [VGA controller])
    Subsystem: Apple Inc. C79 [GeForce 9400M]
    Flags: bus master, fast devsel, latency 0, IRQ 28
    Memory at d2000000 (32-bit, non-prefetchable) [size=16M]
    Memory at c0000000 (64-bit, prefetchable) [size=256M]
    Memory at d0000000 (64-bit, prefetchable) [size=32M]
    I/O ports at 1000 [size=128]
    Expansion ROM at d3000000 [disabled] [size=128K]
    Capabilities: [60] Power Management version 2
    Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Kernel driver in use: nouveau
    Kernel modules: nouveau
...

Debian 12.7; GNOME 43.9; Flatpak 1.14.10

TingPing commented 1 month ago

Epiphany doesn't. GTK4 recently switched to it by default.

You can override it with flatpak override --user --env=GSK_RENDERER=gl org.gnome.Epiphany

I'm not certain but this is worth reporting to GTK, it may be able to fallback to GL in the case you hit.

philipstewart commented 1 month ago

Thanks @TingPing, alas the override merely delays the critical error to a short time after Epiphany appears (with or without any interaction)

Sounds like reporting it to GTK is the best path - I'll close this with a link to the issue when done.

mcatanzaro commented 1 month ago

Agree. Take to the GTK issue tracker; the developers will either implement a fallback, or not. Panfrost users are hitting the same problem.

mcatanzaro commented 1 month ago

Thanks @TingPing, alas the override merely delays the critical error to a short time after Epiphany appears (with or without any interaction)

Huh, why is it giving a Vulkan error if it's using GL instead of Vulkan? That's weird.

Another option is flatpak override --user --env=G_DEBUG= org.gnome.Epiphany (empty G_DEBUG environment variable) to make criticals non-fatal, but I imagine it would fail to render properly.

TingPing commented 1 month ago

Huh, why is it giving a Vulkan error if it's using GL instead of Vulkan? That's weird.

It is weird, being delayed sounds like the problem was moved to the WebProcess, but it should pull in the same env.

philipstewart commented 1 month ago
$ flatpak override --user --env=GSK_RENDERER=gl org.gnome.Epiphany
$ flatpak run org.gnome.Epiphany 

(epiphany:2): Gdk-CRITICAL **: 19:05:51.202: Vulkan: ../src/nouveau/vulkan/nvkmd/nouveau/nvkmd_nouveau_pdev.c:76: VK_ERROR_INCOMPATIBLE_DRIVER
$ flatpak override --user --env=G_DEBUG= org.gnome.Epiphany
$ flatpak run org.gnome.Epiphany 

(epiphany:2): Gdk-CRITICAL **: 19:07:07.730: Vulkan: ../src/nouveau/vulkan/nvkmd/nouveau/nvkmd_nouveau_pdev.c:76: VK_ERROR_INCOMPATIBLE_DRIVER

but yes, the rendering of a web page looks off to me:

Screenshot from 2024-09-19 19-08-35

vs Firefox 115.15.0esr:

Screenshot from 2024-09-19 19-11-43

philipstewart commented 1 month ago

https://gitlab.gnome.org/GNOME/gtk/-/issues/7020