Bug 1249280 - qt5-qtbase-gui: missing Requires: mesa-dri-drivers
qt5-qtbase-gui: missing Requires: mesa-dri-drivers
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: qt5-qtbase (Show other bugs)
22
i686 Unspecified
unspecified Severity high
: ---
: ---
Assigned To: Ngo Than
Fedora Extras Quality Assurance
https://bugs.kde.org/show_bug.cgi?id=...
:
Depends On: qt-5.5
Blocks:
  Show dependency treegraph
 
Reported: 2015-08-01 05:10 EDT by Felix Miata
Modified: 2015-08-13 07:53 EDT (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2015-08-13 07:52:48 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
lspci, dmesg, Xorg.0.log (90.85 KB, text/plain)
2015-08-01 05:10 EDT, Felix Miata
no flags Details


External Trackers
Tracker ID Priority Status Summary Last Updated
KDE Software Compilation 350853 None None None Never

  None (edit)
Description Felix Miata 2015-08-01 05:10:45 EDT
Created attachment 1058243 [details]
lspci, dmesg, Xorg.0.log

upstream bug from DrKonqi https://bugs.kde.org/show_bug.cgi?id=350853

(P4 host gx27b; IceWM session works, and runs Konsole5, KSnapshot, systemsettings5, KCalc, etc.)

To reproduce:
1-try to start KDE session from greeter

Actual behavior:
1-repeated plasmashell and krunner crashes

Expected behavior:
1-working K* session
Comment 1 Kevin Kofler 2015-08-01 07:35:43 EDT
So, the problem (as also pointed out by upstream) is that you have hardware that only supports OpenGL 1 (1.3, to be precise – I have the same hardware, but I'm still running Fedora 21).

Our Qt packaging includes this script:
http://pkgs.fedoraproject.org/cgit/qt5-qtbase.git/tree/10-qt5-check-opengl2.sh
which installs to /etc/X11/xinit/xinitrc.d/10-qt5-check-opengl2.sh . This should result in QT_XCB_FORCE_SOFTWARE_OPENGL getting set and, as a result, llvmpipe being used in all Qt 5 applications using QtGui OpenGL classes instead of the OpenGL-1-only hardware driver. (What Qt does if QT_XCB_FORCE_SOFTWARE_OPENGL is set is that it sets LIBGL_ALWAYS_SOFTWARE, the difference is that QT_XCB_FORCE_SOFTWARE_OPENGL does not affect non-Qt applications, so you should still be able to use OpenGL games that work with OpenGL 1.)

Can you verify that QT_XCB_FORCE_SOFTWARE_OPENGL is getting set correctly? Can you also test whether using LIBGL_ALWAYS_SOFTWARE instead makes any difference? (It shouldn't.)
Comment 2 Kevin Kofler 2015-08-01 07:59:34 EDT
Another important question: How (from what display manager) are you starting your session? That may make a difference for the /etc/X11/xinit/xinitrc.d scripts.
Comment 3 Kevin Kofler 2015-08-01 08:04:26 EDT
As I wrote, I have an rv200 myself, so I'm very interested in getting this fixed before the F21 EOL.

I'm currently running F21, with KDM as the display manager, and with Qt 5 packages installed. I get QT_XCB_FORCE_SOFTWARE_OPENGL=1 correctly set in the environment, and at least the Qt Quick demos (e.g. /usr/lib/qt5/examples/quick/particles/emitters/emitters from qt5-qtdeclarative-examples) work for me. (Of course the particle demos are slow and jumpy, that's sadly to be expected from llvmpipe on a P4. But they don't crash!)
Comment 4 Felix Miata 2015-08-01 13:42:23 EDT
# set | grep OPENGL
QT_XCB_FORCE_SOFTWARE_OPENGL=1

LIBGL_ALWAYS_SOFTWARE: howto?

sddm and lightdm lack important kdm features, so I use either kdm-4.11.20-2.fc22.i686 or startx, more often the latter.

I have multiple rv200s in use, though only this machine attempts to run plasma5. Its F23 exhibited this same bug until I manually selected installation of mesa-dri-drivers and copied ~/.config/kwinrc from the F22 installation.
Comment 5 Kevin Kofler 2015-08-02 21:58:00 EDT
> LIBGL_ALWAYS_SOFTWARE: howto?

The easiest way is to just search&replace it in the script (/etc/X11/xinit/xinitrc.d/10-qt5-check-opengl2.sh) and see what happens. (Note that this is only for testing. QT_XCB_FORCE_SOFTWARE_OPENGL should work.)

But I'm still waiting for answers to:
https://bugs.kde.org/show_bug.cgi?id=350853#c16
Comment 6 Felix Miata 2015-08-03 00:22:25 EDT
I'm unable to relate what you want WRT LIBGL_ALWAYS_SOFTWARE to the actual content of 10-qt5-check-opengl2.sh:

#!/bin/sh
OPENGL_VERSION=`LANG=C glxinfo | grep '^OpenGL version string: ' | sed -e 's/^OpenGL version string: \([0-9]\).*$/\1/g'`
if [ "$OPENGL_VERSION" -lt 2 ]; then
  QT_XCB_FORCE_SOFTWARE_OPENGL=1
  export QT_XCB_FORCE_SOFTWARE_OPENGL
fi
Comment 7 Rex Dieter 2015-08-03 06:24:26 EDT
Replace the piece that says:

  QT_XCB_FORCE_SOFTWARE_OPENGL=1
  export QT_XCB_FORCE_SOFTWARE_OPENGL

with

  LIBGL_ALWAYS_SOFTWARE=1
  export LIBGL_ALWAYS_SOFTWARE
Comment 8 Kevin Kofler 2015-08-03 06:37:04 EDT
And this is obsolete anyway, if installing mesa-dri-drivers made this crash go away. (It's not a problem of QT_XCB_FORCE_SOFTWARE_OPENGL not working, but of you not having had OpenGL support installed. Even the llvmpipe (%{_libdir}/gallium-pipe/pipe_swrast.so) is in mesa-dri-drivers.)

I guess qt5-qtbase-gui should have a Requires: mesa-dri-drivers?
Comment 9 Rex Dieter 2015-08-03 08:58:22 EDT
fyi, base-x comps group includes mesa-dri-drivers (among other low-level drivers)... if you don't have that group installed, you're in for fair amounts of problems anyway.  Just sayin.
Comment 10 Felix Miata 2015-08-03 13:39:37 EDT
(In reply to Rex Dieter from comment #7)
> Replace the piece that says:

>   QT_XCB_FORCE_SOFTWARE_OPENGL=1
>   export QT_XCB_FORCE_SOFTWARE_OPENGL
 
> with
 
>   LIBGL_ALWAYS_SOFTWARE=1
>   export LIBGL_ALWAYS_SOFTWARE

Having done that, Plasma seems to start normally, and possibly faster.

(In reply to Rex Dieter from comment #9)
> fyi, base-x comps group includes mesa-dri-drivers (among other low-level
> drivers)... if you don't have that group installed, you're in for fair
> amounts of problems anyway.  Just sayin.

If that group is required, why doesn't whatever requires it require it?
Comment 11 Rex Dieter 2015-08-03 13:41:54 EDT
individual packagers cannot depend on groups, but installations (like spins) can and do use these package groups.

In short, how did you install fedora 22 and end up with a system without all of the @base-x group?  (the kde spin should definitely include all those at least)
Comment 12 Felix Miata 2015-08-03 14:41:53 EDT
(In reply to Rex Dieter from comment #11)
> In short, how did you install fedora 22 and end up with a system without all
> of the @base-x group?  (the kde spin should definitely include all those at
> least)

This particular installation is the result of yum and dnf upgrades dating back 38 months. I don't remember specifics, but my usual installation procedure is minimal X via HTTP, then using yum/dnf to add various necessaries that will pull in sufficient deps to make Xorg and KDE do what I need to do with them. One of the occasional results of what I do is discover broken or missing dependencies that neither automated nor spin testing discover.
Comment 13 Rex Dieter 2015-08-03 14:59:31 EDT
ok, interesting, mesa-dri-drivers has been in the base-x group going back at leaste as far as fedora 18.  no idea how it ended up missing for you.

Regardless, wouldn't be a bad idea to do:

dnf install @base-x

to (re)install any other possible missing pieces.
Comment 14 Felix Miata 2015-08-03 16:03:41 EDT
(In reply to Rex Dieter from comment #13)

> Regardless, wouldn't be a bad idea to do:
 
> dnf install @base-x
 
> to (re)install any other possible missing pieces.

I tried this on a different F22 host, kt400 with rv250 - not a good idea. Most of my test installations are on 4.8G real partitions, making space somewhat precious. Thus I try to keep them svelte as possible, minimizing both space consumption and bandwidth at updates time. @base-x wants to install several drivers that would unlikely ever be used here: xorg-x11-drv-geode, xorg-x11-drv-openchrome, xorg-x11-drv-qxl, xorg-x11-drv-synaptics, xorg-x11-drv-wacom, xorg-x11-drv-freedreno, xorg-x11-drv-armsoc and xorg-x11-drv-omap, plus more plymouth-*.
Comment 15 Rex Dieter 2015-08-13 07:52:48 EDT
* Mon Aug 03 2015 Helio Chissini de Castro <helio@kde.org> - 5.5.0-11
- Add mesa-dri-drivers as recommends on gui package as reported by Kevin Kofler
- Reference https://bugzilla.redhat.com/1249280

Will come to f21/f22 when qt-5.5 does (soonish)
Comment 16 Rex Dieter 2015-08-13 07:53:29 EDT
sorry, meant currentrelease (not notabug resolution)

Note You need to log in before you can comment on or make changes to this bug.