defaulting to qt5 does not work siunce QT_SELECT=qt4 is in the environment by default.

Bug #1299920 reported by Søren Holm on 2014-03-30
This bug affects 1 person
Affects Status Importance Assigned to Milestone
kde-workspace (Ubuntu)
Rohan Garg

Bug Description

qt5-default should make Qt5 development tools default. The problem is just that QT_SELECT=qt4 is set by something in KDE. So when Qt5 is installed the Qt4 tools will be executed no matter what.

Unsetting QT_SELECT makes Qt5 tools default as intended.

This bug also affect the current livecd.

ProblemType: Bug
DistroRelease: Ubuntu 14.04
Package: qt5-default 5.2.1+dfsg-1ubuntu10
ProcVersionSignature: Ubuntu 3.13.0-20.42-lowlatency 3.13.7
Uname: Linux 3.13.0-20-lowlatency i686
ApportVersion: 2.13.3-0ubuntu1
Architecture: i386
CurrentDesktop: KDE
Date: Mon Mar 31 00:10:21 2014
InstallationDate: Installed on 2013-12-24 (96 days ago)
InstallationMedia: Kubuntu 14.04 LTS "Trusty Tahr" - Alpha i386 (20131224)
SourcePackage: qtbase-opensource-src
UpgradeStatus: No upgrade log present (probably fresh install)

Søren Holm (sgh) wrote :
Timo Jyrinki (timo-jyrinki) wrote :

There is a bug #1180196 about this issue but it was recently claimed to be fixed in kde-workspace. The problem fixed though was that KDE set the PATH so that the Qt4 binary dir came before /usr/bin/, therefore preventing qtchooser from working. But if it's still not fixed, I'm not sure where's the problem point now ie what's setting QT_SELECT.

Søren Holm (sgh) wrote :

Ok - for a standard user usecase QT_VERSION should afaik not be set. It is only uset by qtchooser to bind the correct development tool.

Timo Jyrinki (timo-jyrinki) wrote :

Yes, QT_SELECT shouldn't be set by default as it overrides the qt[4,5]-default package. It's just possible KDE people not only overrode PATH (which was now removed) but also set QT_SELECT somewhere else to force the selection, which also should not be needed anymore thanks to the fixes in Qt 4 and 5 packaging.

The reason KDE wanted to set the Qt 'development' settings is that they use qdbus, and it's also handled by qtchooser despite not being strictly development only tool.

I'd reassign this bug to some KDE package since I don't think there's anything to be done in qtbase, but then again I don't know if it's kde-workspace or something else that is setting the QT_SELECT now.

Timo Jyrinki (timo-jyrinki) wrote :

To add to the above, yes KDE should probably use se 'qdbus -qt4' (which equals to setting QT_SELECT=qt4 before calling 'qdbus') to continue to use Qt4's qdbus if the user installs qt5-default or sets QT_DEFAULT, but KDE shouldn't be setting the QT_DEFAULT variable by default since it affects user's experience.

AFAIK Qt4 and Qt5 implementations of qdbus are compatible, so KDE ideally
should depend on one of the packages (i.e. Depends: qdbus-qt4 | qdbus-qt5),
use just 'qdbus', and qtchooser should fall back to the non-default
implementation if the default one is not available.

Søren Holm (sgh) wrote :

rreassigning to kde-workspace since QT_SELECT is problably set by some kde software.

affects: qtbase-opensource-src (Ubuntu) → kde-workspace (Ubuntu)
Philip Muškovac (yofel) on 2014-04-01
Changed in kde-workspace (Ubuntu):
assignee: nobody → Rohan Garg (rohangarg)
importance: Undecided → Medium
status: New → Triaged
Rohan Garg (rohangarg) on 2014-04-02
Changed in kde-workspace (Ubuntu):
status: Triaged → Fix Committed
Søren Holm (sgh) wrote :

Works - great. Thanks for the quick response.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package kde-workspace - 4:4.11.8-0ubuntu2

kde-workspace (4:4.11.8-0ubuntu2) trusty; urgency=medium

  * Don't set QT_SELECT, qdbus from Qt5 is compatible with qdbus from
    Qt4 (LP: #1299920)
 -- Rohan Garg <email address hidden> Wed, 02 Apr 2014 11:30:17 +0200

Changed in kde-workspace (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers