Tiny Core Linux

Tiny Core Extensions => TCE Bugs => Topic started by: kangkang on November 16, 2009, 07:43:16 AM

Title: bug with gtk2
Post by: kangkang on November 16, 2009, 07:43:16 AM
I replaced gtk2.tczl with gtk2.tcel, then some icons in pidgin can't be displayed.
When I switch back to gtk2.tcel, pidgin works well again. Could someone fix it? Thanks.
And in gtk2.tcel, gtk.immodules is missing, though it's not an important problem.
Title: Re: bug with gtk2
Post by: bmarkus on November 16, 2009, 07:47:27 AM
Which TC version are you using? .tce extensions are dropped and not supported by current 2.5 release.

Usually there are two reasons of missing icons, either gnome-icon-theme.tcz or shared-mime-info.tcz is not installed (or both).
Title: Re: bug with gtk2
Post by: Juanito on November 16, 2009, 07:38:53 PM
Usually there are two reasons of missing icons, either gnome-icon-theme.tcz or shared-mime-info.tcz is not installed (or both).

I wonder if there isn't more too it than that - even with both of these extensions installed, rhythmbox is missing icons. Maybe some programs are hard coded to look in /usr/share/icons or something similar?
Title: Re: bug with gtk2
Post by: kangkang on November 17, 2009, 07:48:34 PM
Tiny core Linux 2.5.
Though tce support is dropped, the tce packages work well. :-)
The missing icons are not build in gtk2, they are all in pidgin.
Which TC version are you using? .tce extensions are dropped and not supported by current 2.5 release.

Usually there are two reasons of missing icons, either gnome-icon-theme.tcz or shared-mime-info.tcz is not installed (or both).
Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 01:51:34 PM
I will rebuild gtk2 and check to see if any graphic support is missing.

Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 02:07:51 PM
Actually, as I remember watching this gtk2 build carefully and doing several rebuilds, I started reading up on gtk 2.18 and have found that a change in gdk windows is causing error in some apps.  One workaround I saw was to use this command before launching apps:

export GDK_NATIVE_WINDOWS=true


This may or may not have anything to do with the icon situation but I will try it out tonight.
Title: Re: bug with gtk2
Post by: perthie on November 18, 2009, 03:24:01 PM
It looks like this variable solves the problem with ROX-filer where the focus on an object is not released.

Where is the best place to define it? In .profile?

[Edit] I put it in .profile and the ROX problem is solved.
Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 04:56:05 PM
Adding this to .profile does seem like the easiest and least intrusive solution for those that want that variable applied to all apps. 
Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 05:04:00 PM
gtk2 seems to have been built without svg support.  Somehow that slipped by me.  I will rebuild and enable it, that is what is causing some rhythmbox icons not to appear.
Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 06:45:58 PM
Seems there is no --enable/disable-svg in gtk2.  And svg icons were showing fine before the gtk2 update without librsvg. 

I will investigate further.
Title: Re: bug with gtk2
Post by: Jason W on November 18, 2009, 07:53:47 PM
Using this check, gtk shows svg support:

gdk-pixbuf-query-loaders | grep svg

output:

"/usr/local/lib/gtk-2.0/2.10.0/loaders/svg_loader.so"
"svg" 2 "gtk20" "Scalable Vector Graphics" "LGPL"
"image/svg+xml" "image/svg" "image/svg-xml" "image/vnd.adobe.svg+xml" "text/xml-svg" "image/svg+xml-compressed" ""
"svg" "svgz" "svg.gz" ""
" <svg" "*    " 100
" <!DOCTYPE svg" "*             " 100

I don't think a gtk rebuild will help, seems like some apps are a casualty of the changes in the latest gtk like the gdk window thing.
Title: Re: bug with gtk2
Post by: Juanito on November 19, 2009, 01:38:42 AM
I replaced gtk2.tczl with gtk2.tcel, then some icons in pidgin can't be displayed.
When I switch back to gtk2.tcel, pidgin works well again.

Since (apparently) the tcel package works, maybe this is something to do with an index or similar that needs to be rebuilt and cannot be as it is read-only in the tczl version of the extension?
Title: Re: bug with gtk2
Post by: bmarkus on November 19, 2009, 01:40:43 AM
I replaced gtk2.tczl with gtk2.tcel, then some icons in pidgin can't be displayed.
When I switch back to gtk2.tcel, pidgin works well again.

Since (apparently) the tcel package works, maybe this is something to do with an index or similar that needs to be rebuilt and cannot be as it is read-only in the tczl version of the extension?

What happens when the tczl is no mounted but loaded into RAM, is there a difference?
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 02:28:21 AM
I think kangkang was talking about gtk-2.14.7 when he was talking about the tcel, and upgrading to the tcz was going to 2.18.3.  But of course correct me if I am wrong.

I will try the copy to system method and see if read only status is affecting anything, as well as see what other current distros are having to do to use gtk 2.18.
Title: Re: bug with gtk2
Post by: Juanito on November 19, 2009, 04:51:54 AM
after loading all the gtk2 stuff to ram and re-building the icon-cache for both hicolor and gnome and loading shared-mime-info and, and, and...

rhythmbox is still missing half the icons, but maybe that's a rythmbox problem...
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 05:26:37 AM
I rebuilt rhythmox, installed to ram/system, installed the gnome icon stuff, shared mime info, compiled and installed hicolor icons, updated icon cache, and a few other things.  The icon issue is also mentioned here:

http://forums.droplinegnome.org/viewtopic.php?t=5619

and here:

http://bbs.archlinux.org/viewtopic.php?id=26505

Though none of the fixes seemed to work.  For now, it seems rhythmbox specific, though t2 linux uses rhythmbox and gtk 2.18.3 with no special setup, but more dependencies.
Title: Re: bug with gtk2
Post by: Juanito on November 19, 2009, 05:41:45 AM
yeah - I'd seen those - at least google gets the same results in different parts of the world  :)

if the issue only shows up on rhythmbox, let's drop it - it looks more like a rhythmbox problem.
Title: Re: bug with gtk2
Post by: jls on November 19, 2009, 11:57:34 AM
I had problems with tucan and svg, infact I had 2 change the images to png, and so change also the python code
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 04:36:51 PM
With an added dependency, svg icons in tucan and rhythmbox work fine with gtk 2.18.

I will post it shortly, libgsf, it seems pygtk specific, and can be added to relevant extensions.
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 06:15:16 PM
I see libgsf is in the repo.  By build has the python and gnome stuff and dependencies are many.  I will see how the libgsf works for this in the repo.
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 06:25:45 PM
Actually, I am using rhythmbox and tucan complete with icons, with only existing extensions installed from the repo.  I did a "make install" on libgsf and a reboot erased it, but the icons still work.

So with a missing dependency, icons work.  I won't try to find which dep now as there are several extensions to post and little time, but at least the support is there.
Title: Re: bug with gtk2
Post by: Jason W on November 19, 2009, 06:54:20 PM
Actually it is under Xfce that tucan and rhytmbox icons work.  Icons don't work when the same set of extensions is used with flwm or other WM that does not set gnome themes.  So use of gnome icons/themes is a workaround.
Title: Re: bug with gtk2
Post by: Juanito on November 19, 2009, 09:28:45 PM
Icons don't work when the same set of extensions is used with flwm or other WM that does not set gnome themes.  So use of gnome icons/themes is a workaround.

I'm not exactly sure what is meant by that - could you expain the workaround further?
Title: Re: bug with gtk2
Post by: Juanito on November 19, 2009, 11:40:00 PM
After re-compiling libgsf, I see it makes a libgsf-gnome if you have all the deps loaded - using flwm, it still does not produce the missing rhythmbox icons. Odd that I get "play", "previous" and "next", but not "repeat", "shuffle" and "browse". See attached.

Note that this is with gtk2_prefs, gtk-engines, gnome-icon-themes, hicolor-icon-themes, icon-naming-tools and shared-mime-info loaded (and with the clearlooks theme installed).

I guess it should be possible to have an extension libgsf-gnome, which depends on libgsf as long as I use the same version of the libgsf package?
Title: Re: bug with gtk2
Post by: Juanito on November 20, 2009, 07:26:45 AM
ha - got it - if I link hicolor -> gnome in /usr/local/share/icons then I get all of the icons in rhythmbox.

I don't know much about gtk2, but I guess there must be setting for this somewhere - .gtkrc maybe?
Title: Re: bug with gtk2
Post by: bmarkus on November 20, 2009, 07:32:21 AM
This is my /home/tc/.gtkrc-2.0 file:

Quote
gtk-icon-theme-name="gnome"

Changing "gnome" to "hicolor" may work, I did't try.
Title: Re: bug with gtk2
Post by: Juanito on November 22, 2009, 02:10:03 PM
For interests sake (or not...), here's what I found with rhythmbox


load gnome-icon-utils
.gtkrc-2.0 file: gtk-icon-theme-name="gnome"

no icons at all

.gtkrc-2.0 file: gtk-icon-theme-name="hicolor"

play, previous, next OK - no repeat, shuffle, browse

load shared-mime-info
.gtkrc-2.0 file: gtk-icon-theme-name="hicolor"
play, previous, next OK - no repeat, shuffle, browse

.gtkrc-2.0 file: gtk-icon-theme-name="gnome"
play, previous, next, repeat, shuffle, browse OK

Even with this, some of the small icons are missing - to get all icons, delete /usr/local/share/icons/hicolor and link hicolor -> gnome
Title: Re: bug with gtk2
Post by: Jason W on November 22, 2009, 02:17:44 PM
Since it appears that rhythmbox and a few other apps were caught by surprise with the latest gtk changes, hopefully they will have worked things out and be in sync with the latest gtk in their next release.  Before we change much in the icon-theme or other extensions, perhaps we should see what the next releases of the affected apps bring.
Title: Re: bug with gtk2
Post by: bmarkus on November 22, 2009, 02:44:27 PM
I struggled a lot with missing icons when ported Xfce4 to TC. Simply I forgot it working on LXDE and of course the problem returned :) hicolor icons are not displayed.

Reason is missing index.theme in /usr/local/share/icons/hicolor

Xfce4base.tczl installs it if missing. It is just 22k and do not need to create dinamycally. I will add it to LXDE. However it is not the bussieness of the application, I think (similar to ~/gtkrc-2.0) just a hacking. I do not know, what would be the best solution to add it.

For testing, just extract it from Xfce4base.tczl and check your missing icons.

For details see http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html

Title: Re: bug with gtk2
Post by: Jason W on November 22, 2009, 03:00:26 PM
The hicolor theme seems to be part of the gnome-media extension.  Not sure if it should be there or it's own extension as it is a source unto itself.  Either way, that index file should be created and place in the extension that contains the hicolor icons, using the gtk-update-icon-cache command.

EDIT:  It seems only the relevant icons from gnome-media are in the hicolor directory.  Perhaps a hicolor icon extension will fix the issue.
Title: Re: bug with gtk2
Post by: bmarkus on November 22, 2009, 10:26:26 PM

Either way, that index file should be created and place in the extension that contains the hicolor icons, using the gtk-update-icon-cache command.


No, index file is not created by gtk-update-icon-cache, only the cache which is optional and not a must heve.:

Quote
It expects to be given the path to a icon theme directory containing an index.theme, e.g. /usr/share/icons/hicolor, and writes a icon-theme.cache containing cached information about the icons in the directory tree below the given directory.

GTK+ can use the cache files created by gtk-update-icon-cache to avoid a lot of system call and disk seek overhead when the application starts. Since the format of the cache files allows them to be mmap()ed shared between multiple applications, the overall memory consumption is reduced as well.

Adding index.theme without cache works fine.

See http://library.gnome.org/devel/gtk/unstable/gtk-update-icon-cache.html

EDIT:

Tested rhytmbox, adding the index.theme few more icons are visible in its menu.
Title: Re: bug with gtk2
Post by: bmarkus on November 23, 2009, 01:01:39 AM
The hicolor theme seems to be part of the gnome-media extension.  Not sure if it should be there or it's own extension as it is a source unto itself.  Either way, that index file should be created and place in the extension that contains the hicolor icons, using the gtk-update-icon-cache command.

EDIT:  It seems only the relevant icons from gnome-media are in the hicolor directory.  Perhaps a hicolor icon extension will fix the issue.

The hicolor icon theme itself is a placeholder for the default fallback theme, filled by applications like gnome-media and others. I will submit it shortly as an independent extension, which also contains the index file. It will solve the problem.

Regarding missing .gtkrc-2.0 default can go to the gnome-icon-theme extension as it refers to it. Normally it is not edited manually but by gtk theme changer programs. As it is in the home directory, changes saved automatically with backup. Backup is restored after extensions loaded and startup scripts executed, default value will be overwritten from backup so no any harm to have it.

As an icon theme changer, lxappearance works fine. It is desktop independent, no need LXDE to use.
Title: Re: bug with gtk2
Post by: jls on November 13, 2010, 03:29:44 AM
Using this check, gtk shows svg support:

gdk-pixbuf-query-loaders | grep svg

output:

"/usr/local/lib/gtk-2.0/2.10.0/loaders/svg_loader.so"
"svg" 2 "gtk20" "Scalable Vector Graphics" "LGPL"
"image/svg+xml" "image/svg" "image/svg-xml" "image/vnd.adobe.svg+xml" "text/xml-svg" "image/svg+xml-compressed" ""
"svg" "svgz" "svg.gz" ""
" <svg" "*    " 100
" <!DOCTYPE svg" "*             " 100

I don't think a gtk rebuild will help, seems like some apps are a casualty of the changes in the latest gtk like the gdk window thing.
tucan doesn't start anymore:
Code: [Select]
Couldn't recognize the image file format for file '/mnt/hda3/jls/estensioni/tucan/tmp/usr/local/share/tucan/media/tucan.svg'
Code: [Select]
tc@box1:~$ gdk-pixbuf-query-loaders | grep svg
tc@box1:~$
Title: Re: bug with gtk2
Post by: Jason W on November 13, 2010, 04:20:28 AM
Thanks, I will look into it tonight.
Title: Re: bug with gtk2
Post by: Jason W on November 13, 2010, 05:49:37 AM
The dep files and startup scripts of the related extensions - gtk2, gdk-pixbuf2, and librsvg - seem to be right.  But I read a similar issue with Arch Linux and the latest gtk2, and there the fix was to update librsvg to the latest version 2.32.0.   I have a hunch that may be the issue here.  I am not on a Linux box to test it now, but librsvg could use an update anyway.  I will see tonight if that fixes it.
Title: Re: bug with gtk2
Post by: Jason W on November 13, 2010, 05:21:49 PM
Confirmed, an update of librsvg to it's latest stable release fixes the issue.
Title: Re: bug with gtk2
Post by: Juanito on November 13, 2010, 07:50:35 PM
I should be able to update librsvg in the next couple of days
Title: Re: bug with gtk2
Post by: Juanito on November 14, 2010, 09:15:55 PM
updated librsvg posted