GTK/Gnome integration of Qt apps from Anaconda

0 views
Skip to first unread message

pierre.etie...@gmail.com

unread,
Oct 3, 2013, 5:35:09 AM10/3/13
to anac...@continuum.io
Hi,

I've posted on StackOverflow (http://stackoverflow.com/questions/19141940/enable-gnome-gtk-integration-of-ipython-qtconsole-from-anaconda), but maybe it's more appropriate to ask here :

I'm starting to play with Ananconda on my Debian testing system. Things works pretty well but I noticed the poor appearance of Qt applications (IPython Qtconsole and matplotlib figure windows) under my Gnome Desktop. It seems that the Qt shipped with Anaconda doesn't get the same nice GTK/Gnome integration as the system's Qt does (because the Qtconsole from Debian do looks nice).

There are several discussions on forums about Qt themes (like https://wiki.archlinux.org/index.php/Uniform_Look_for_Qt_and_GTK_Applications#Qt4_styles) but it seems that many nicely working solutions are based on KDE's `systemsettings`. Maybe Anaconda's Qt should chat with the system's KDE ?

I'll glad to hear any ideas about this (small)  issue.

best,
Pierre

pierre.etie...@gmail.com

unread,
Oct 3, 2013, 7:54:55 AM10/3/13
to anac...@continuum.io
As a side note, I tried to see how it looks under KDE, and I ran accross the "Cannot mix incompatible Qt library" error (https://groups.google.com/a/continuum.io/forum/#!msg/anaconda/YzzgzXq3QHo/uk8nUhAzPHEJ) reported some days ago.

best,
Pierre

Aaron Meurer

unread,
Oct 3, 2013, 7:02:40 PM10/3/13
to pierre.etie...@gmail.com, anaconda
The way QT works is that it looks for whatever libraries it can find
when it is compiled, and whatever it doesn't find, it doesn't compile
support for, so likely we just need to install some KDE or GNOME
libraries on the computer we use to compile QT. That might not be the
issue, though, but it definitely has been the source of QT issues in
the past.

I guess one thing you can try is to "conda build" the qt recipe from
https://github.com/continuumio/conda-recipes, and see if that version
works for you. If it does, that's a good indication that there is
something on your computer that needs to be on the Continuum build
machine.

Aaron Meurer
> --
> Anaconda Community Support Group Brought to you by Continuum Analytics
> ---
> You received this message because you are subscribed to the Google Groups
> "Anaconda" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to anaconda+u...@continuum.io.
> To post to this group, send email to anac...@continuum.io.
> Visit this group at http://groups.google.com/a/continuum.io/group/anaconda/.

pierre.etie...@gmail.com

unread,
Oct 4, 2013, 4:11:08 AM10/4/13
to anac...@continuum.io, pierre.etie...@gmail.com, aaron....@continuum.io
Thanks for the feedback !

I've cloned the conda-recipes repo and installed the recommanded Debian packages suggested in notes.md.

However, I must have missed something because I get this error when running $conda build qt

       /home/pierre/anaconda/conda-recipes-github/qt/build.sh: line 4: read acceptance: command not found

The thing, I'm not a bash script guru, so I don't fully get what this line 4 is doing :


    $REPLACE "read acceptance" "acceptance=yes" configure

--
Pierre

Aaron Meurer

unread,
Oct 4, 2013, 6:10:27 PM10/4/13
to Pierre Haessig, anaconda
Hmm, I guess REPLACE is a variable only defined in the Anaconda build
environment, not the conda one. What it is supposed to do is replace
the text "read acceptance" with "acceptance=yes" in the qt configure
script (the configure script stops and asks you if you accept the
license agreements and by default you have to enter yes to continue,
which doesn't work so well for an automated build like conda build).

You should be able to just delete that line, because the
acceptance.patch does the same thing. I can't test it right now
because I'm on Mac OS X (and also I'm hitting some unrelated bug in
conda build), but I just pushed a change that does just that, so see
if it works now.

Aaron Meurer

pierre.etie...@gmail.com

unread,
Oct 7, 2013, 8:12:51 AM10/7/13
to anac...@continuum.io, Pierre Haessig, aaron....@continuum.io
Hi,

Commenting the line with $REPLACE in build.sh indeed enabled the compilation script to proceed. Apparently it worked.

The only thing is I'm ignorant of what happens next.
Does the "home baked qt" overrides the binary provided by Anaconda ? I've launched the IPython Qtconsole and nothing has changed on that front (regarding the GTK theme integration). How can I tell which Qt version it is using ?

best,
Pierre

Aaron Meurer

unread,
Oct 7, 2013, 6:07:39 PM10/7/13
to Pierre Haessig, anaconda
No, you have to install it. `conda install
~/anaconda/conda-bld/linux-64/qt-4.8.5-0.tar.bz2`. Or if you uploaded
it to binstar and you have your binstar repo in your .condarc, you can
just conda install qt.

At any rate, conda list qt will tell you what is installed.

Aaron Meurer

pierre.etie...@gmail.com

unread,
Oct 8, 2013, 10:08:53 AM10/8/13
to anac...@continuum.io, Pierre Haessig, aaron....@continuum.io
I've installed the compiled Qt, and I also compiled Shiboken and PySide since you mentionned a risk of ABI change on  http://stackoverflow.com/questions/19141940/enable-gnome-gtk-integration-of-ipython-qtconsole-from-anaconda

Now everything seems to run *as before*. No better GTK theme integration, but nothing broken either :-)
Since you mentionned that Qt compilation is affected by its environment, I've also installed the kde-workspace-dev Debian package and recompiled. I don't know whether it did affect the compilation, but the GTK theme issue is unchanged.

Coming back to `conda list qt`, the problem is that the output is not verbose enough to make the difference between qt 4.8.5 from original Anaconda's build and qt 4.8.5 from my build.

Anyway, thanks a lot for your help and for dealing with my complete ignorance of the conda CLI. Since this GTK theme issue is not so problematic, I don't think we should spend more time on it...

best,
Pierre


Aaron Meurer

unread,
Oct 8, 2013, 2:14:47 PM10/8/13
to Pierre Haessig, anaconda
Sorry for not connecting you with this, but I think the solution for
your problem is actually outlined at
https://github.com/ContinuumIO/conda-recipes/issues/22.

Aaron Meurer

pierre.etie...@gmail.com

unread,
Oct 8, 2013, 4:44:08 PM10/8/13
to anac...@continuum.io, Pierre Haessig, aaron....@continuum.io
Thanks for the pointer!

I've launched a new compilation... I'll see the result tomorrow !

Pierre

aldomann...@gmail.com

unread,
Apr 30, 2017, 9:41:20 PM4/30/17
to Anaconda - Public, pierre.etie...@gmail.com, aaron....@continuum.io
The URL is broken. Is there any documentation somewhere else on how to get GTK decorations for Qt apps from Anaconda (such as Spyder)?

Ray Donnelly

unread,
May 1, 2017, 7:46:17 AM5/1/17
to Anaconda - Public
It is not possible at present.

--
Anaconda Community Support Group Brought to you by Continuum Analytics
---
You received this message because you are subscribed to the Google Groups "Anaconda - Public" group.
To unsubscribe from this group and stop receiving emails from it, send an email to anaconda+unsubscribe@continuum.io.

To post to this group, send email to anac...@continuum.io.

Kafran

unread,
Mar 20, 2018, 8:07:43 AM3/20/18
to Anaconda - Public, pierre.etie...@gmail.com
Does someone found a solution for this?
Reply all
Reply to author
Forward
0 new messages