Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
bluefish - insane cpu usage with gtk+3
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Desktop Environments
View previous topic :: View next topic  
Author Message
i92guboj
Moderator
Moderator


Joined: 30 Nov 2004
Posts: 10207
Location: Córdoba (Spain)

PostPosted: Mon Feb 23, 2015 8:36 am    Post subject: bluefish - insane cpu usage with gtk+3 Reply with quote

Hi.

I have been blocking gtk+3 for a while, because it gave me no end of troubles. So I just masked >=gtk+-3 and solved the problem for good.

However I wanted to give a new bluefish version a try and unmasked gtk3 just to try. Supposedly, all the bug fixing and shinny new stuff is in that code path.

I update bluefish to 2.2.6 and when I ran it I remembered all of a sudden why the hell I'm still using the gtk2 branch. The cpu goes mad and I can barely move the cursor.

And yes, I have tried many gtk3 themes, so that's not it.

So, once more I am back to editing the bluefish ebuild to remove gtk3 and add --with-gtk2 to the econf line. It works beautifully as it always did.

I am not looking for a solution as much as I am writing this as a reminder. But I also feel curious if I am the only one experiencing this, since I have found no relevant info on the net.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
ElleStone
Tux's lil' helper
Tux's lil' helper


Joined: 12 Mar 2013
Posts: 98

PostPosted: Wed Feb 25, 2015 12:47 pm    Post subject: Reply with quote

This is in my package.mask:

Code:
#latest gtk sucks
>x11-libs/gtk+-3.4.4
>=x11-misc/spacefm-0.9.3
>=app-editors/bluefish-2.2.3


Bluefish plus gtk3 sends the cpu constantly to 100%, making bluefish unusable.
Spacefm plus gkt3 removes the functionality that made me choose spacefm over dolphin.
Eventually I suppose I'll switch back to dolphin. I'm looking for a replacement for bluefish.
I use my computer for image editing and I don't know what I'll do when GIMP switches to gtk3.

Elle
Back to top
View user's profile Send private message
i92guboj
Moderator
Moderator


Joined: 30 Nov 2004
Posts: 10207
Location: Córdoba (Spain)

PostPosted: Wed Feb 25, 2015 1:27 pm    Post subject: Reply with quote

So I am not alone. Thanks for dropping a note.

Just for your info, you can continue upgrading bluefish, at least for the time being (not that there's much new stuff to see, but still...).

All you need to do is to copy the latest ebuild in your local overlay, and then remove the gtk+-3 and gucharmap dependencies. Then add this somewhere in the middle of the econf block:

Code:
                --with-gtk2 \


And you will be happy again.

In any case it's indubitable that gtk+2.x will go the way of the dodo soon enough. So, yes, we will definitely migrate to something else. Probably Qt based since they at least don't screw everything with each new update. I might as well go back to vim, I don't know. Migrating away from an editor you've used for more than a decade is almost as painful as getting your dearest pet killed by a truck. But this is getting unusable.

As for gimp I really can't offer an alternative. There's krita /ugh/ and a few others but nothing serious as far as I know. No alternative for inkscape either.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
ElleStone
Tux's lil' helper
Tux's lil' helper


Joined: 12 Mar 2013
Posts: 98

PostPosted: Wed Feb 25, 2015 2:20 pm    Post subject: Reply with quote

Thanks! for the "how to". You are right - adapting to a new text editor isn't easy. I use geany for writing code and bluefish for writing html. Both are gtk. Over the last couple of years I've looked for alternatives and haven't yet found one.

I don't want to learn vim or emacs.
I don't want a mono- or java-based application, though jedit looks promising.
I don't want a "complete coding environment".
I just want a simple text editor that highlights the tags, comments, defines and such, and makes it easy to locate closing tags.

There seem to be several qt-based text editors out there that might be worth checking into, given that gtk2 is soon to be history.

Quote:
As for gimp I really can't offer an alternative. There's krita /ugh/ and a few others but nothing serious as far as I know. No alternative for inkscape either.

Krita used to be unstable on my machine. Since 2.8 and esp. Krita 2.9 it's a lot more stable and is actually pretty awesome for digital painting, though it's not a substitute for a photographic editing application.
Back to top
View user's profile Send private message
i92guboj
Moderator
Moderator


Joined: 30 Nov 2004
Posts: 10207
Location: Córdoba (Spain)

PostPosted: Wed Feb 25, 2015 2:59 pm    Post subject: Reply with quote

The problem is that all the new stuff goes to the gtk3 branch.

I don't follow their mailing, but surely gtk2 code path will, eventually, be scheduled for removal. We can probably keep and old version time enough, though. But even that will only get harder as gtk2 gets deprecated.

Geany would be ok, if it only had proper css support.

The right way to solve this would be a qt port of bluefish :lol:
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
Ant P.
Advocate
Advocate


Joined: 18 Apr 2009
Posts: 2932
Location: UK

PostPosted: Wed Feb 25, 2015 3:10 pm    Post subject: Reply with quote

Bah, at least this *has* a working --with-gtk2 option, even if some idiot gentoo dev tried denying users the choice.

I'm currently stuck without graphical volume controls - kmix won't work because my qt4's completely broken, pavucontrol advertises a gtk2 ./configure flag that doesn't compile, and no way in hell am I installing gtkmm-3 or kdelibs-5 (with mandatory polkit!) for this minor thing...
_________________
runit-init howto | Overlay - gtk2 stuff
Back to top
View user's profile Send private message
ElleStone
Tux's lil' helper
Tux's lil' helper


Joined: 12 Mar 2013
Posts: 98

PostPosted: Thu Mar 19, 2015 12:42 pm    Post subject: Reply with quote

Ant P. wrote:
Bah, at least this *has* a working --with-gtk2 option, even if some idiot gentoo dev tried denying users the choice.

I'm currently stuck without graphical volume controls - kmix won't work because my qt4's completely broken, pavucontrol advertises a gtk2 ./configure flag that doesn't compile, and no way in hell am I installing gtkmm-3 or kdelibs-5 (with mandatory polkit!) for this minor thing...

A funny thing happened when I tried to "emerge --update". A bunch of new software wanted to install itself, and all of it was pulled in by Bluefish:
Code:
gentoo ~ # emerge -pv --update bluefish
/usr/lib64/python3.3/site-packages/portage/_sets/files.py:154: BytesWarning: Comparison between bytes and string
  if d[:1] == '.':

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] dev-libs/libyaml-0.1.6  USE="-doc -examples -static-libs {-test}" 0 KiB
[ebuild  N     ] virtual/awk-1  0 KiB
[ebuild  N     ] dev-util/itstool-2.0.2  PYTHON_TARGETS="python2_7" 0 KiB
[ebuild  NS    ] app-text/docbook-xml-dtd-4.3-r1:4.3 [4.1.2-r6:4.1.2, 4.2-r2:4.2, 4.4-r2:4.4, 4.5-r1:4.5] 0 KiB
[ebuild  N     ] net-libs/libproxy-0.4.11-r2  USE="-gnome -kde -mono -networkmanager -perl -python -spidermonkey {-test} -webkit" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild  N     ] gnome-extra/yelp-xsl-3.14.0  0 KiB
[ebuild  N     ] app-text/yelp-tools-3.14.1  0 KiB
[ebuild  N     ] net-libs/glib-networking-2.42.1  USE="libproxy ssl -gnome -smartcard {-test}" 0 KiB
[ebuild  N     ] net-libs/libsoup-2.48.1:2.4  USE="ssl -debug -introspection -samba {-test}" 0 KiB
[ebuild  N     ] dev-libs/appstream-glib-0.3.4:0/7  USE="-introspection -nls" 0 KiB
[ebuild  N     ] dev-util/appdata-tools-0.1.8-r1  0 KiB
[ebuild  N     ] gnome-extra/gucharmap-3.14.2:2.90  USE="-cjk -debug -introspection {-test} -vala" 0 KiB
[ebuild  N     ] app-editors/bluefish-2.2.6  USE="-nls -python -spell" PYTHON_TARGETS="python2_7" 3,705 KiB

I don't want any of that new software installed on my system for any reason, period. So I uninstalled Bluefish from Gentoo.

Bluefish 2.7 defaults to html5 and has better support for html5 than previous versions, and my website (http://ninedegreesbelow.com, devoted to color management and free/libre image editing) is an html5 website. So I downloaded the sourcecode for bluefish 2.7 and installed it using the "--with-gtk2" configure option, which for some reason Gentoo doesn't provide as an option to the user. Bluefish 2.7 installed from source without requiring *any* of the packages that Gentoo wants to install in order to update to Bluefish 2.6.

Why doesn't Gentoo provide the Bluefish "--with-gtk2" option to Gentoo users? Why should Gentoo users who use Bluefish be required to put up with GTK3 and all the unwanted dependencies that updating Bluefish through Gentoo would pull in? At present there are only two Gnome libraries on my system: gnome-base/libglade required by Zim (I'm looking for a replacement note-keeper) and gnome-base/librsvg required by darktable, which doesn't provide a flag to not pull in svg support but eventually I'll try hacking the source code.

I don't want any more Gnome software on my system than is already there. The reason I switched to Gentoo was to avoid policykit, consolekit, systemd, Gnome software, and other such nonsense, and I was extremely grateful to find a version of Linux that made this possible. The day that I can't upgrade the software that I use for image editing and writing code without also installing policykit, consolekit, Gnome this and that, and systemd, is probably the day I'll switch back to Debian or OpenSuse (at which point I would steadfastly refuse to notice the unwanted software running in the background).

Elle
Back to top
View user's profile Send private message
i92guboj
Moderator
Moderator


Joined: 30 Nov 2004
Posts: 10207
Location: Córdoba (Spain)

PostPosted: Thu Mar 19, 2015 1:06 pm    Post subject: Reply with quote

If you want to use bluefish you can just put a modified ebuild in your local overlay. That's what I do for bluefish and several other packages.

All it takes to convert the bluefish ebuild to gtk2 is this:

Code:
$ diff -U3 /usr/portage/app-editors/bluefish/bluefish-2.2.6.ebuild /usr/local/portage/app-editors/bluefish/bluefish-2.2.7.ebuild
--- /usr/portage/app-editors/bluefish/bluefish-2.2.6.ebuild     2015-02-10 11:31:03.000000000 +0100
+++ /usr/local/portage/app-editors/bluefish/bluefish-2.2.7.ebuild       2015-02-23 23:18:03.362230267 +0100
@@ -20,8 +20,7 @@
 IUSE="nls python spell"
 
 RDEPEND="
-       x11-libs/gtk+:3
-       gnome-extra/gucharmap:2.90
+       x11-libs/gtk+:2
        sys-libs/zlib
        python? ( ${PYTHON_DEPS} )
        spell? ( app-text/enchant )"
@@ -53,6 +52,7 @@
                --disable-dependency-tracking \
                --disable-update-databases \
                --disable-xml-catalog-update \
+               --with-gtk2 \
                $(use_enable nls) \
                $(use_enable spell spell-check) \
                $(use_enable python)

_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
ElleStone
Tux's lil' helper
Tux's lil' helper


Joined: 12 Mar 2013
Posts: 98

PostPosted: Thu Mar 19, 2015 4:21 pm    Post subject: Reply with quote

Quote:
If you want to use bluefish you can just put a modified ebuild in your local overlay. That's what I do for bluefish and several other packages.

Hmm, I could if I wanted to learn how to use a local overlay, but I don't. The quickest way for me, personally, to avoid Gentoo's version of Bluefish is to install Bluefish from source. I already install a lot of software from source, and installing one more makes no difference one way or the other. Also, overlays and installations from source aren't solutions for everyone. It seems to me that Gentoo could easily provide flags for Bluefish for Gentoo users who aren't ready for GTK3, as Bluefish itself already makes such provision.

Putting the issue of Bluefish with GTK 2 vs 3 to one side, why does updating to Bluefish 2.6 through Gentoo also pulls in all those other packages? glib-networking? libsoup? yelp-tools? what gives?
Back to top
View user's profile Send private message
i92guboj
Moderator
Moderator


Joined: 30 Nov 2004
Posts: 10207
Location: Córdoba (Spain)

PostPosted: Thu Mar 19, 2015 4:48 pm    Post subject: Reply with quote

ElleStone wrote:
Quote:
If you want to use bluefish you can just put a modified ebuild in your local overlay. That's what I do for bluefish and several other packages.

Hmm, I could if I wanted to learn how to use a local overlay, but I don't. The quickest way for me, personally, to avoid Gentoo's version of Bluefish is to install Bluefish from source. I already install a lot of software from source, and installing one more makes no difference one way or the other.


There's the difference that portage knows nothing about them, which could and will cause trouble when it comes to libraries, drivers and the like. But, you are free to do as you wish, of course. I hope that you are, at the very least, keeping the source trees for uninstall and installing to /usr/local or something.

Quote:
Also, overlays and installations from source aren't solutions for everyone. It seems to me that Gentoo could easily provide flags for Bluefish for Gentoo users who aren't ready for GTK3, as Bluefish itself already makes such provision.


Even more: it used to be that way. But then, once upon a time we also had flags for gtk1 and gtk2, which eventually were also eliminated as all the gtk1 legacy applications went the way of the dodo (I clearly remember that war as if it was yesterday).

I also wish gtk2 was receiving more love than it does in portage nowadays, but, remember that at the end of the day, this is free software and developers choose what to work on. I, myself, opened bugs about this same issue in bugzilla, but they just don't want to maintain that branch any more than necessary. If you want to change that, become a developer and work to keep gtk2 alive in Gentoo.

You could also look at it the opposite way: they could tell us to just shut up and fix the damn bluefish/gtk3 bug, and we would, rightfully, answer that we don't care about gtk3 related stuff. The same that they tell us that they don't care about gtk2 ones since gtk2 is being phased out. The agony will be much longer this time, though, since the gimp and some key programs haven't migrated to gtk3 still, and some others are utterly buggy such as bluefish and evince. Libreoffice has, only recently, become usable, I think. Haven't tested it myself though.

Quote:
Putting the issue of Bluefish with GTK 2 vs 3 to one side, why does updating to Bluefish 2.6 through Gentoo also pulls in all those other packages? glib-networking? libsoup? yelp-tools? what gives?


That's how dependencies work. If you want to know what exactly pushes this or that, use the -t parameter to emerge, which will produce a more-or-less tree-like output.

Both versions only differ in gucharmap and gtk3, so, anything else that comes in the merge, comes only as a sub-dependency of either of these. Note that USE flags can affect the dep-tree to a great extent.
_________________
Gentoo Handbook | My website
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Desktop Environments All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum