ZapZap - Whatsapp Desktop para Linux

O meu ZapZap parou de abrir aqui :frowning:

Estou usando no Pop OS 22.04

Clicando no ícone ele não da sinal de vida.

O que pode ser?

~$ flatpak run com.rtosta.zapzap 
setHighDpiScaleFactorRoundingPolicy must be called before creating the QGuiApplication instance
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
qt.glx: qglx_findConfig: Failed to finding matching FBConfig for QSurfaceFormat(version 2.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize -1, redBufferSize 1, greenBufferSize 1, blueBufferSize 1, alphaBufferSize -1, stencilBufferSize -1, samples -1, swapBehavior QSurfaceFormat::SingleBuffer, swapInterval 1, colorSpace QColorSpace(), profile  QSurfaceFormat::NoProfile)
Could not initialize GLX

Com os comandos abaixo, ele abre na bandeja, mas não abre a janela.

~$ export QT_XCB_GL_INTEGRATION=none
~$ flatpak run com.rtosta.zapzap 
setHighDpiScaleFactorRoundingPolicy must be called before creating the QGuiApplication instance
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
Qt: Session management error: Could not open network socket
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
WebEngineContext is used before QtWebEngineQuick::initialize() or OpenGL context creation failed.
qt.gui.imageio: libpng warning: iCCP: known incorrect sRGB profile
QPropertyAnimation: you're trying to animate the non-writable property width of your QObject
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget: Attempted to render scene with no rhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi
js: Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'attribution-reporting'.
js: Error with Permissions-Policy header: Unrecognized feature: 'bluetooth'.
js: Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'compute-pressure'.
js: Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'interest-cohort'.
js: Error with Permissions-Policy header: Unrecognized feature: 'otp-credentials'.
js: Error with Permissions-Policy header: Unrecognized feature: 'payment'.
js: Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'shared-storage'.
js: Error with Permissions-Policy header: Origin trial controlled feature not enabled: 'shared-storage-select-url'.
js: Error with Permissions-Policy header: Unrecognized feature: 'usb'.
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget: Attempted to render scene with no rhi
QQuickWidget: Attempted to render scene with no rhi
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create temporary context
QXcbIntegration: Cannot create platform offscreen surface, neither GLX nor EGL are enabled
QXcbIntegration: Cannot create platform OpenGL context, neither GLX nor EGL are enabled
QRhiGles2: Failed to create context
Failed to create QRhi for QBackingStoreRhiSupport
QQuickWidget: Failed to get a QRhi from the top-level widget's window
QQuickWidget::resizeEvent() no QRhi

Obrigado!

entre em contato com o desenvolvedor, mandando essa saída. “pode” ser alguma mudança no sistema operacional ou no zapzap que deu esse erro.

além de instalar o flatpak você instalou os aplicativos flatpak-xdg-utils, extra-xdg-menus, menu-xdg, node-xdg-basedir, xdg-desktop-portal e xdg-desktop-portal-gtk?

é bom instalá-los e reiniciar o pinguim depois de instalar os aplicativos. assim eles entram no $PATH do sistems.

1 curtida

não sei haha vou tentar aqui, obrigado

1 curtida

Cara, isso não está relacionado ao ZapZap. Provavelmente você fez algo em sua distro!

2 curtidas

O PopOS já vem com tudo do Flatpak instalado. Certeza que foi algo que ele fez!

2 curtidas

Não exatamente, eu particularmente não uso mas peguei como desafio, mas testando no Tiger OS numa sessão Wayland de teste, eu obtive um erro similar ao primeiro, então fui depurando até achar uma solução, como sou dev C++ e Qt eu sei que dependendo de como foi configurado o Qt dentro do Flatpak não consegue conversar com o Wayland a menos que Wayland seja especificado nas permissões, se ele tiver executando Wayland, baseado no manifesto, eu consegui rodar no Wayland com:

flatpak --device=dri --socket=wayland run com.rtosta.zapzap -platform wayland

Device --device=dri é necessário para aplicações Qt não parecerem uma carroça puxada por caracóis no wayland, o --socket=wayland habilita o suporte a Wayland e o -platform wayland força o Qt a usar o plugin wayland, com isso foi gg, abriu e rápido

Analisando o manifesto parece que você colocou para suportar X11 como fallback, ou seja, use Wayland se Wayland estiver disponível, se não use X11, isso vai funcionar se:

  • O sistema não rodar Wayland, aí ele tenta usar o socket do Wayland, falha e joga pro X11
  • O sistema usar XWayland, ele tenta usar Wayland, mas como você não deu suporte a Wayland o socket Wayland não está disponível então ele cai no X11

O problema é quando a pessoa tenta rodar em Wayland puro, no Wayland puro a coisa complica porque você não tem o socket Wayland e o fallback não está disponível (XWayland) e o Qt não tem acesso a renderização direta, então ele tenta desenhar, falha, nessa falha ele joga pro Wayland um estado quebrado mas o Wayland não tá lá, aí ele morre

4 curtidas

Esse manifesto não é funcional. O que está rodando no flatpak é o com.rtosta.zapzap.yaml.

O PopOS não vem SEM o XWayland, como a maioria das distros. Então, algo foi alterado pelo usuário.

Não uso o Wayland por padrão por causa de compatibilidade ou pela falta dela em desktop com NVidia e sem GPU integrada.

1 curtida

O manifesto que teoricamente é funcional tem o mesmo problema e ainda outros problemas, aliás, notei que vários problemas relatados tanto aqui quanto no GH se devem ao manifesto

Essa alteração em teoria é inofensiva, não tem porque não suportar, estou abrindo um PR com o suporte ativo no repositório principal e você espelha no repositório do Flathub

2 curtidas

Cara, você poderia fazer um PR com todas essas correções?
Sinta-se à vontade para contribuir. Obrigado!

3 curtidas

Olá, gente. Tudo bem com vocês?

Em breve, a versão 6.0 do ZapZap. Acesse e venham conferir:

3 curtidas

Alguém sabe empacotar em snap?

Alguém sabe quem é o mantenedor do Zapzap do AUR e tem o contato dele?

Já sei empacotar em AppImage. Porém precisa de revisão do script e preciso saber como colocar na loja.

Quem quiser ajudar nos formatos de empacotamento é só falar :handshake: