-
-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Zenity takes too long to launch (aborts on Fedora Minimal) due to GTK trying EGL #9268
Zenity takes too long to launch (aborts on Fedora Minimal) due to GTK trying EGL #9268
Comments
There are a couple of options here:
|
Thanks Demi! I did not find how to force mesa to use llvmpipe, but I found LIBGL_ALWAYS_SOFTWARE: $ export LIBGL_ALWAYS_SOFTWARE=0; time zenity --question --title "title" --text "text" --timeout 1
libEGL warning: DRI2: failed to authenticate
MESA: error: ZINK: failed to choose pdev
libEGL warning: egl: failed to create dri2 screen
MESA: error: ZINK: failed to choose pdev
glx: failed to create drisw screen
failed to load driver: zink
real 0m5.136s
user 0m0.474s
sys 0m0.250s $ export LIBGL_ALWAYS_SOFTWARE=1; time zenity --question --title "title" --text "text" --timeout 1
real 0m3.611s
user 0m0.344s
sys 0m0.219s If you set it to true, it "uses" software rendering but does not try to detect it apparently. There is also RUSTICL_ENABLE and GALLIUM_DRIVER that has the option |
My Fedora qube stopped split-gpg2 from working due to a recent upgrade in zenity. As the $ dnf list installed zenity
Installed Packages
zenity.x86_64 4.0.1-2.fc40 @fedora
$ zenity --question --title title --text text
libEGL warning: DRI2: failed to authenticate
MESA: error: ZINK: failed to choose pdev
libEGL warning: egl: failed to create dri2 screen
Couldn't open libGLESv2.so.2: libGLESv2.so.2: cannot open shared object file: No such file or directory
Aborted (core dumped) Using what Demi recommended above ( $ env GSK_RENDERER=cairo zenity --question --title title --text text
libEGL warning: DRI2: failed to authenticate
MESA: error: ZINK: failed to choose pdev
libEGL warning: egl: failed to create dri2 screen But it is still checks for graphics acceleration which can make the dialog slow:
|
Oh, and it is not possible to switch to a Debian qube as the split-gpg2 server because them it breaks when Fedora is the client. A gpg2 client cannot be newer than the gpg-agent server, it breaks. The client emits a warning, but it should be an error, anyway, this is a GPG bug just to explain why it can't be a Debian gpg server. |
Modifying splitgpg2/init.py to use: if subprocess.call(['env', 'GSK_RENDERER=cairo', 'zenity', '--question', '--title', short_msg,
'--text', question, '--timeout', '30']) != 0: works in the meantime, but as per Demi's comment, it is not future-proof. |
@ben-grande can you report this to Fedora? That looks like a missing dependency, which indicates a packaging bug. In the future, I think we should move away from Zenity and towards XDG notifications. |
[user@disp3784 ~]$ sudo find /usr/lib /usr/lib64 -name "libGLESv2.so.2" 2>/dev/null
/usr/lib64/libGLESv2.so.2
[user@disp3784 ~]$ rpm -qf /usr/lib64/libGLESv2.so.2
libglvnd-gles-1.7.0-4.fc40.x86_64 True, my template is based on Fedora minimal and doesn't have [user@disp3784 ~]$ rpm -q --whatrequires libglvnd-gles
no package requires libglvnd-gles
[user@disp3784 ~]$ rpm -q --whatprovides libglvnd-gles
libglvnd-gles-1.7.0-4.fc40.x86_64
[user@disp3784 ~]$ rpm -q --whatrecommends libglvnd-gles
no package recommends libglvnd-gles
[user@disp3784 ~]$ rpm -q --whatsuggests libglvnd-gles
no package suggests libglvnd-gles Submitted report to upstream. |
Zenity is used on Qubes many times as an interactive dialog rather than a notification that can be dismissed. Although XDG notifications supports specific actions, they are still notifications, not dialogs. @DemiMarie Does it make sense to add to the file qubes-gui-agent-linux/appvm-scripts/etc/profile.d/qubes-gui.sh the following: export GSK_RENDERER=cairo LIBGL_ALWAYS_SOFTWARE=1 Edit: In "does it make sense", I mean, will it causes problem in the future or if user is using hardware acceleration with GPU passtrough? |
Automated announcement from builder-github The package
|
Automated announcement from builder-github The package
|
Automated announcement from builder-github The component
|
Automated announcement from builder-github The component
|
Automated announcement from builder-github The component
|
Automated announcement from builder-github The package
|
Automated announcement from builder-github The component
|
Automated announcement from builder-github The package
|
Automated announcement from builder-github The component
|
Automated announcement from builder-github The component
|
For: QubesOS/qubes-issues#9268 For: QubesOS/qubes-gui-agent-linux#214 (cherry picked from commit 8639ee4)
How to file a helpful issue
Qubes OS release
R4.2, Fedora 39.
Brief summary
Fedora 39 zenity takes too long to launch, it tests for hardware accelaration that are not present.
Ideally, these applications should be patched or an environment variable should be set to skip trying hardware acceleration when it is not available.
References:
Steps to reproduce
3.298s
0.873s
Expected behavior
GTK apps do not try hardware acceleration.
Actual behavior
GTK apps keeps trying hardware acceleration, taking much longer to launch applications.
The text was updated successfully, but these errors were encountered: