GNOME Bugzilla – Bug 105585
gnome-theme-manager can't find themes
Last modified: 2005-01-06 14:30:12 UTC
Hi, gnome-theme-manager reports: No themes could be found on your system. This probably means that your "Theme Preferences" dialog was improperly installed, or you haven't installed the "gnome-themes" package. I just reinstalled gnome2.2 source from scratch thinking that my old installs were causing it; but it still gives the same error. In /usr/local, I have: gtk+-2.2.1 gtk-engines-2.2.0 In /usr/gnome, I have: control-center-2.2.0.1 gnome-icon-theme-1.0 gnome-themes-2.2 ..and the rest of the Gnome 2.2 progs/libs gnome-theme-test shows: ./gnome-theme-test No meta themes were found. 13 icon themes were found: LowContrast Smokey-Red HighContrast LowContrastLargePrint Crux HighContrastLargePrint LargePrint Flat-Blue HighContrastInverse HighContrastLargePrintInverse Smokey-Blue Sandy Gnome No metacity themes were found. 8 gtk-2 themes were found: gnububble gnuAquaSE Metal AquaX ThinIce Redmond95 TransMetal Default 2 keybinding themes were found: Emacs Default ...then hangs indefinitely, so I have to ctrl-C it. It is weird that it didn't report any metacity themes because I can change the metacity theme in gconf-editor or display a theme in metacity-theme-viewer. I am able to change gtk2, icons & metacity themes using gconf-editor without specifying any paths. With the exception of a few gtk-2 themes, these are source installs with configure --prefix=/usr/gnome --enable-static=no --enable-shared=yes make; make install of all the standard gnome and themes packages. After reading a previous bug report, I have tried symlinking /usr/gnome/share/themes & /usr/gnome/share/icons to /usr/share, /usr/local/share and /usr/X11R6/share but gnome-theme-manager still reports no themes are found. Thanks! David
*** This bug has been marked as a duplicate of 104210 ***
I don't think it's a duplicate of 104210. I _do_ have metathemes installed. I have fully installed the gnome-themes/gnome-icon-themes/metacity packages, and even the real metatheme package just to try it out. Right now, I have the most recent 2.2.1-ish packages installed (via source); and still no luck. glib/pango/gtk+ in /usr/local gnome packages in /usr/gnome A quick check of my /usr/gnome/share/themes for index.theme shows: ./Crux/index.theme ./Grand-Canyon/index.theme ./HighContrast/index.theme ./HighContrastInverse/index.theme ./Smokey-Blue/index.theme ./Mist/index.theme ./LargePrint/index.theme ./Traditional/index.theme ./HighContrastLargePrint/index.theme ./HighContrastLargePrintInverse/index.theme ./LowContrast/index.theme ./LowContrastLargePrint/index.theme ./Ocean-Dream/index.theme ./Simple/index.theme What's weird is that I do have metacity themes, but gnome-theme-test is not reporting them (off /usr/gnome/share/themes): ./Crux/metacity-1 ./Mist/metacity-1 ./Smokey/metacity-1 ./Sandwish/metacity-1 ./AgingGorilla/metacity-1 ./AquaOS/metacity-1 ./Atlanta/metacity-1 ./Bright/metacity-1 ./Esco/metacity-1 ./Metabox/metacity-1 ./Simple/metacity-1 Anyways, I've tried wiping out my /usr/gnome and re-installed, but I still see the same error message. I guess I will stick with changing themes directly via the gconf-editor for now. Thanks, David
Hmm. You're right - I was thinking of bug 107856, but that's not right either, since the themes are installed in the same prefix as the control center.
I finally solved my problem and now am able to use the theme manager. Yeah! No more manual gconf-editor entries to change themes! Since I'm not really sure how to contribute patches, and I'm not sure if I'm the only one with the weird config, I'll just post my findings here. The following is based on control-center-2.3.1, though I think it's the same as previous versions because I'm got the same error then. My problem with gnome-theme-manager unable to find my theme is because my gtk is installed in base /usr/local and my gnome (including control-panel) is installed in base /usr/gnome. Looking at /control-center-2.x/capplets/common/gnome-theme-info.c: in gnome_theme_init(), for the themes part beginning at "/* $datadir/themes */" it only searches two directories for themes; namely gtk_rc_get_theme_dir() // which in my case is from /usr/local and g_get_home_dir()+".themes" // which is ~/.themes Since it never searches /usr/gnome/share/themes (perhaps via INSTALL_PREFIX), it can't find any themes on my system. So the root cause is, theme searching is only done in gtk-based share/themes directory, and not in control-panel's install-prefix's share/themes. As a test, I've added a hardcoded /usr/gnome/share/themes search by adding: top_theme_dir_uri = gnome_vfs_uri_new ("/usr/gnome/share/themes"); if (!gnome_vfs_uri_exists (top_theme_dir_uri)) gnome_vfs_make_directory_for_uri (top_theme_dir_uri, 0775); result = add_top_theme_dir_monitor (top_theme_dir_uri, &real_monitor_not_added, 0, NULL); gnome_vfs_uri_unref (top_theme_dir_uri); ... and this solved my problem. Don't know what should be done about this bug report now... Thanks! David
I'm going to close this since installing glib/gtk in one prefix and GNOME stuff in another is highly dubious and should be avoided at all costs. Please install all packages in the same prefix to avoid this kind of problem.