View Issue Details

IDProjectCategoryView StatusLast Update
0005132Kali LinuxFeature Requestspublic2021-07-07 15:17
Reporterrhertzog Assigned Torhertzog  
PrioritynormalSeverityminorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Version2018.4 
Fixed in Version2021.2 
Summary0005132: Ensure Qt can use OpenGL ES drivers for hardware acceleration on arm64
Description

Qt offers a build time configuration between using an OpenGL stack or an OpenGL ES stack. In Debian, it uses the OpenGL stack everywhere except on armel and armhf. We would like it to use OpenGL ES on arm64 too because arm64 has many embedded/mobile boards that support only OpenGL ES (either as a hardware restriction or, more frequently, as a restriction of the (proprietary) drivers shipped by the vendor).

When Qt is built for OpenGL and when the drivers only support OpenGL ES, the user is effectively stuck with no hardware acceleration at all and the 3D rendering falls back to the CPU and it's much slower, leading to a poor desktop experience.

This request has been brought to Debian in the following bug: https://bugs.debian.org/881333
The maintainers seemed to agree and then started a discussion on debian-devel to ensure that the community was in agreement with that change: https://lists.debian.org/debian-devel/2018/11/thrd2.html#00457
In the discussion, they seemed to have changed their mind and will now only do the change if the Debian technical committee believes that it's the best outcome.

At the same time, the discussion showed that it should be not too hard to build two versions of the Qt libraries and it might be that Dmitry Shachnev will implement this. However it's quite clear that it's a poor design decision from Qt to require the user to make that choice at build time and it turns out that for Windows it's possible to make that choice at runtime:
http://doc.qt.io/qt-5/windows-requirements.html#dynamically-loading-graphics-drivers

So ideally the best outcome would be to have a similar feature for Linux and with Dmitry we have requested this to the Qt developers through a bug report and a mailing list discussion:
https://bugreports.qt.io/browse/QTBUG-72128
https://lists.qt-project.org/pipermail/development/2018-November/034394.html

Activities

rhertzog

rhertzog

2019-01-02 14:23

administrator   ~0010136

Dmitry started to work on this: https://salsa.debian.org/mitya57/qtbase/commits/gles/master
He's waiting review from the other co-maintainers in Debian.

rhertzog

rhertzog

2019-01-10 15:35

administrator   ~0010195

The package has been uploaded to Debian experimental: qtbase-opensource-src-gles but it's currently stuck in the NEW review queue.

rhertzog

rhertzog

2019-01-14 09:40

administrator   ~0010204

Dmitry queried the Debian release team about updating packages to get the new dependency allowing to switch between the GL and GLES variant of Qt:
https://bugs.debian.org/919218

rhertzog

rhertzog

2019-11-29 16:23

administrator   ~0011489

The -gles variant of Qt is now available in testing and kali but many packages still have to be rebuilt to get the new dependency:
https://release.debian.org/transitions/html/libqt5gui5-gles.html

Dmitry also mentioned that qtdeclarative5-gles still needs to be created.

rhertzog

rhertzog

2021-07-07 15:17

administrator   ~0014899

The change is finished on the Debian side.

Issue History

Date Modified Username Field Change
2018-11-30 07:52 rhertzog New Issue
2018-11-30 07:52 rhertzog Assigned To => rhertzog
2018-11-30 07:54 rhertzog Description Updated
2019-01-02 14:23 rhertzog Note Added: 0010136
2019-01-10 15:35 rhertzog Note Added: 0010195
2019-01-14 09:40 rhertzog Note Added: 0010204
2019-11-29 16:23 rhertzog Note Added: 0011489
2021-07-07 15:17 rhertzog Status assigned => resolved
2021-07-07 15:17 rhertzog Resolution open => fixed
2021-07-07 15:17 rhertzog Fixed in Version => 2021.2
2021-07-07 15:17 rhertzog Note Added: 0014899