GNU bug report logs - #43446
Qt Apps cant make use of qtwayland due to QT_PLUGIN_PATH '= wrapping

Previous Next

Package: guix;

Reported by: Brendan Tildesley <mail <at> brendan.scot>

Date: Wed, 16 Sep 2020 11:18:01 UTC

Severity: normal

Done: Hartmut Goebel <h.goebel <at> crazy-compilers.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 43446 in the body.
You can then email your comments to 43446 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-guix <at> gnu.org:
bug#43446; Package guix. (Wed, 16 Sep 2020 11:18:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Brendan Tildesley <mail <at> brendan.scot>:
New bug report received and forwarded. Copy sent to bug-guix <at> gnu.org. (Wed, 16 Sep 2020 11:18:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Brendan Tildesley <mail <at> brendan.scot>
To: bug-guix <at> gnu.org
Subject: Qt Apps cant make use of qtwayland due to QT_PLUGIN_PATH '= wrapping
Date: Wed, 16 Sep 2020 21:16:50 +1000
[Message part 1 (text/plain, inline)]
qt-build-system wraps variables such as QT_PLUGIN_PATH  with  '= instead 
of prefix, so when qtwayland is installed in a profile or included in 
the environment, the application fails to see it. Programs run with 
export QT_QPA_PLATFORM=wayland-egl will fail to launch.

We could:

1. Use 'prefix so that the parent environment's variables are appended
   and users have to manually install qtwayland them selves.
2. Include qtwayland as an input to every qt package somehow. Can the
   build system do that? Considering that Wayland seems to be the
   future, I feel that Qt GUI applications should support it by
   default. I mean, wayland is in the closure of qtbase anyway.
3. Both? Why is '= used anyway?

How should this be done?



[Message part 2 (text/html, inline)]

Information forwarded to bug-guix <at> gnu.org:
bug#43446; Package guix. (Sun, 04 Oct 2020 10:47:02 GMT) Full text and rfc822 format available.

Message #8 received at 43446 <at> debbugs.gnu.org (full text, mbox):

From: "Raghav Gururajan" <raghavgururajan <at> disroot.org>
To: 43446 <at> debbugs.gnu.org
Subject: EGL-Wayland
Date: Sun, 04 Oct 2020 10:46:20 +0000
Hello Brendan!

I think you are missing 'egl-wayland'.
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=8d82df1376f50bb1e32fa82e943b0f5c837658b6

Not sure if, Qt packages or Qt apps or both, requires rebuilding with egl-wayland as input.

Regards,
RG.




Information forwarded to bug-guix <at> gnu.org:
bug#43446; Package guix. (Sun, 04 Oct 2020 11:25:02 GMT) Full text and rfc822 format available.

Message #11 received at 43446 <at> debbugs.gnu.org (full text, mbox):

From: Brendan Tildesley <mail <at> brendan.scot>
To: 43446 <at> debbugs.gnu.org
Subject: [PATCH] guix: qt-build-system: Fix search-path wrapping.
Date: Sun, 4 Oct 2020 22:23:44 +1100
[Message part 1 (text/plain, inline)]

[0001-guix-qt-build-system-Fix-search-path-wrapping.patch (text/x-patch, attachment)]

Information forwarded to bug-guix <at> gnu.org:
bug#43446; Package guix. (Sun, 04 Oct 2020 12:42:02 GMT) Full text and rfc822 format available.

Message #14 received at 43446 <at> debbugs.gnu.org (full text, mbox):

From: Ricardo Wurmus <rekado <at> elephly.net>
To: Brendan Tildesley <mail <at> brendan.scot>
Cc: 43446 <at> debbugs.gnu.org
Subject: Re: bug#43446: Qt Apps cant make use of qtwayland due to
 QT_PLUGIN_PATH '= wrapping
Date: Sun, 04 Oct 2020 14:43:08 +0200
Brendan Tildesley <mail <at> brendan.scot> writes:

> qt-build-system wraps variables such as QT_PLUGIN_PATH  with  '=
> instead of prefix, so when qtwayland is installed in a profile or
> included in the environment, the application fails to see it. Programs
> run with export QT_QPA_PLATFORM=wayland-egl will fail to launch.
>
> We could:
>
> 1. Use 'prefix so that the parent environment's variables are appended
>    and users have to manually install qtwayland them selves.
> 2. Include qtwayland as an input to every qt package somehow. Can the
>    build system do that? Considering that Wayland seems to be the
>    future, I feel that Qt GUI applications should support it by
>    default. I mean, wayland is in the closure of qtbase anyway.
> 3. Both? Why is '= used anyway?

I can’t say why the Qt build system does this, but in other cases we
know that 'prefix causes problems because the application may end up
loading incompatible binaries leading to a crash.  That’s especially the
case on foreign distros, e.g. when the Guix-installed graphical
application loads a plugin from the system’s XDG_* directories.

-- 
Ricardo




Information forwarded to bug-guix <at> gnu.org:
bug#43446; Package guix. (Mon, 05 Oct 2020 06:40:01 GMT) Full text and rfc822 format available.

Message #17 received at 43446 <at> debbugs.gnu.org (full text, mbox):

From: Brendan Tildesley <mail <at> brendan.scot>
To: Ricardo Wurmus <rekado <at> elephly.net>
Cc: 43446 <at> debbugs.gnu.org
Subject: Re: bug#43446: Qt Apps cant make use of qtwayland due to
 QT_PLUGIN_PATH '= wrapping
Date: Mon, 5 Oct 2020 17:39:28 +1100
On 4/10/20 10:43 pm, Ricardo Wurmus wrote:
> Brendan Tildesley <mail <at> brendan.scot> writes:
>
>> qt-build-system wraps variables such as QT_PLUGIN_PATH  with  '=
>> instead of prefix, so when qtwayland is installed in a profile or
>> included in the environment, the application fails to see it. Programs
>> run with export QT_QPA_PLATFORM=wayland-egl will fail to launch.
>>
>> We could:
>>
>> 1. Use 'prefix so that the parent environment's variables are appended
>>     and users have to manually install qtwayland them selves.
>> 2. Include qtwayland as an input to every qt package somehow. Can the
>>     build system do that? Considering that Wayland seems to be the
>>     future, I feel that Qt GUI applications should support it by
>>     default. I mean, wayland is in the closure of qtbase anyway.
>> 3. Both? Why is '= used anyway?
> I can’t say why the Qt build system does this, but in other cases we
> know that 'prefix causes problems because the application may end up
> loading incompatible binaries leading to a crash.  That’s especially the
> case on foreign distros, e.g. when the Guix-installed graphical
> application loads a plugin from the system’s XDG_* directories.
>
Thanks for pointing that out. But, currently a Guix Qt program is unable 
to see plugins available in the environment/profile even if the variable 
is set because the wrapper just deletes that in its local environment. 
It can only see what's in it's inputs. How else can that be fixed?

cat `which nheko`|grep QT;

export 
QT_PLUGIN_PATH="/gnu/store/swqnld90m4gmmc1qaf4lg1psvf6q0rr0-qttools-5.14.2/lib/qt5/plugins:/gnu/store/j0b10r3djln34avx4qxh1kxzg70fn04r-qtbase-5.14.2/lib/qt5/plugins:/gnu/store/lh2yq7dlw3cfaf613h787drpy6f146n3-qtdeclarative-5.14.2/lib/qt5/plugins:/gnu/store/cz6lfbphrdqvgrbhgdq0hd7a50015i5h-qtmultimedia-5.14.2/lib/qt5/plugins:/gnu/store/r4h7w3zw02nc33bi7bjlqbl9b8kilh9r-qtsvg-5.14.2/lib/qt5/plugins"






Reply sent to Hartmut Goebel <h.goebel <at> crazy-compilers.com>:
You have taken responsibility. (Mon, 11 Jan 2021 16:09:01 GMT) Full text and rfc822 format available.

Notification sent to Brendan Tildesley <mail <at> brendan.scot>:
bug acknowledged by developer. (Mon, 11 Jan 2021 16:09:02 GMT) Full text and rfc822 format available.

Message #22 received at 43446-close <at> debbugs.gnu.org (full text, mbox):

From: Hartmut Goebel <h.goebel <at> crazy-compilers.com>
To: 43446-close <at> debbugs.gnu.org
Subject: Re: [PATCH] guix: qt-build-system: Wrapped executables honor user's
 envvars.
Date: Mon, 11 Jan 2021 17:08:02 +0100
This should be fixed by http://issues.guix.gnu.org/45784 and following, 
esp. http://issues.guix.gnu.org/45785






bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 09 Feb 2021 12:24:09 GMT) Full text and rfc822 format available.

This bug report was last modified 3 years and 75 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.