Missing dependency

Bug #660299 reported by Bartosz Radaczyński
54
This bug affects 7 people
Affects Status Importance Assigned to Milestone
gpodder (Ubuntu)
Fix Released
Low
Thomas Perl

Bug Description

Binary package hint: gpodder

After update to Kubuntu Maverick, gpodder would not start:

** Message: pygobject_register_sinkfunc is deprecated (GstObject)
Plugin loaded: gpodder.soundcloud
Creating new from file gPodder
Traceback (most recent call last):
  File "/usr/bin/gpodder", line 193, in <module>
    gui.main(options)
  File "/usr/lib/pymodules/python2.6/gpodder/gui.py", line 3798, in main
    gp = gPodder(bus_name, config)
  File "/usr/lib/pymodules/python2.6/gpodder/gui.py", line 164, in __init__
    BuilderWidget.__init__(self, None)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/interface/common.py", line 56, in __init__
    GtkBuilderWidget.__init__(self, gpodder.ui_folders, gpodder.textdomain, **kwargs)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/base.py", line 70, in __init__
    self.new()
  File "/usr/lib/pymodules/python2.6/gpodder/gui.py", line 282, in new
    self.show_hide_tray_icon()
  File "/usr/lib/pymodules/python2.6/gpodder/gui.py", line 3066, in show_hide_tray_icon
    self.tray_icon = GPodderStatusIcon(self, gpodder.icon_file, self.config)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/desktop/trayicon.py", line 67, in __init__
    self.__icon = gtk.icon_theme_get_default().load_icon(gtk.STOCK_DIALOG_QUESTION, 30, 30)
glib.GError: Icon 'gtk-dialog-question' not present in theme

It seems that installing librsvg2-common resolved the startup issue, but when running gpodder from console, I still get:

Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 484, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/pymodules/python2.6/gpodder/gui.py", line 2275, in do_update_episode_list_model
    self.episode_list_model.add_from_channel(self.active_channel, *additional_args)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/model.py", line 192, in add_from_channel
    generate_thumbnails, reload_from_db=False)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/model.py", line 331, in update_by_iter
    show_padlock, show_missing, icon_size, status_icon_to_build_from_file)
  File "/usr/lib/pymodules/python2.6/gpodder/gtkui/model.py", line 407, in _get_tree_icon
    icon = icon_theme.load_icon(gtk.STOCK_DIALOG_QUESTION, icon_size, 0)
GError: Icon 'gtk-dialog-question' not present in theme

and the gui does not refresh the way it should (e.g. the downloads tab refreshes only when changing the tabs, I cannot see the list of episodes in each podcast etc.). It seems that librsvg2-common is not the only missing dependency...

ProblemType: Bug
DistroRelease: Ubuntu 10.10
Package: gpodder 2.6-1
ProcVersionSignature: Ubuntu 2.6.35-22.34-generic 2.6.35.4
Uname: Linux 2.6.35-22-generic x86_64
Architecture: amd64
Date: Thu Oct 14 07:23:07 2010
PackageArchitecture: all
ProcEnviron:
 LANGUAGE=
 LANG=en_CA.utf8
 SHELL=/bin/bash
SourcePackage: gpodder

Revision history for this message
Bartosz Radaczyński (radaczynski) wrote :
Revision history for this message
Gard Spreemann (gspreemann) wrote :

The root of this problem seems to be that gtkui/model.py tries to load the icon specified by gtk.STOCK_DIALOG_QUESTION if a given icon cannot be found in the current theme. As far as I understand (I've never worked with GTK), this tends to refer to the icon named 'dialog-question' (see the Freedesktop naming convention [1]). However, in at least two popular icon themes, Oxygen and Tango, this icon is presently *not implemented* [2]. Thus load_icon throws an exception that isn't handled, and the program hangs.

I don't know what the nicest solution to this is, but the gPodder devs themselves suggest in their FAQ that one should simply install the Gnome icon theme and force usage of that [3]. This doesn't sound like a very nice approach to me; I mean, half the reason the Freedesktop icon conventions are around is precisely so programs can just refer to icons by their description, leaving it to the desktop environment to provide a consistent look and feel.

I've attached two patches that I think take care of the problem in a nicer way. However, I have no experience with GTK or the gPodder code in general, so things should perhaps be done differently.

PS: Should this bug perhaps be renamed? If one adds an extra icon theme dependency, users still have to force the use of it according to [3], which gives an inconsistent look (in the case of KDE a *very* inconsistent one).

[1] http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
[2] http://techbase.kde.org/Projects/Oxygen/namingSpec/status
[3] http://wiki.gpodder.org/wiki/FAQs#Missing_icons_on_the_gpodder_interface

Revision history for this message
Gard Spreemann (gspreemann) wrote :

Forgot to add the patches.

Revision history for this message
Gard Spreemann (gspreemann) wrote :

Oops, sorry, the previous one was a dpatch.

Revision history for this message
Gard Spreemann (gspreemann) wrote :

Second patch. This one isn't strictly related to the bug, but it changes the names of some other icons to be consistent with the Freedesktop naming convention. It should give more consistent behaviour when using different icon themes.

Revision history for this message
Gard Spreemann (gspreemann) wrote :

I've uploaded a patched version of gPodder to my PPA [1].

The patches fix the bug for me, without having to install or force the usage of any extra icon themes.

[1] https://launchpad.net/~gspreemann/+archive/ppa

Revision history for this message
Bartosz Radaczyński (radaczynski) wrote :

Gard,

your patched version worked fine for me. Thanks!

tags: added: patch
Revision history for this message
Pepe Barrascout Ortiz (pepe-quechilero) wrote :

Hi Gard,

I have Kubuntu 10.10 and gPodder 2.6.

I have the same problem.

I installed the version of your repository, almost everything works fine. But I can not add new feeds. No matter which feed it, the error is the same. "You can not add a new feed."

Any suggestions?

Greetings.

Revision history for this message
Gard Spreemann (gspreemann) wrote :

Hi Pepe,

I don't think what you're experiencing is related to this bug. At least adding a new feed works fine here. I'd recommend starting gpodder from a terminal so that you can watch for any error messages. Alternatively, I'd try working with a fresh config file (just rename ~/.config/gpodder so that you can rename it back after testing) to see if that changes anything.

If not even the last option works, you should file a new bug, perhaps at bugs.gpodder.org.

Revision history for this message
Thomas Perl (thp) wrote :
Revision history for this message
platypuss72 (luke-platypuss) wrote :

hi gard

thanks for finding a way to sort this but please can you help me with your patch

i am a newish newbie ... and not that good with command line ...

so not too sure what i am supposed to save the patches ??? and then how to run them ???

i have tried the ppa .. and reinstalled my gpodder from this but still getting the "gtk-dialog-question" error on couple of my feeds ..

many thanks luke

Revision history for this message
Gard Spreemann (gspreemann) wrote :

@platypuss72: I'd be happy to help. If you have added my PPA then you should be getting the patched version without having to apply the patch yourself. You can check that by running "aptitude show gpodder" (or find it somewhere in your favorite graphical package manager).

If the Version field says 2.6-1ubuntu0gspr1, you have my patched version. In that case I must have missed some icon somewhere, and it would be nice if you could run gpodder from a terminal and show the output here. Hopefully I can then extend my patch.

If the Version field does not end with "gspr1", then you don't have the correct version, and we should take the rest over private e-mail (see my Launchpad profile) so at not to annoy the others.

Revision history for this message
Pepe Barrascout Ortiz (pepe-quechilero) wrote :

Hi Gard.

Icons don't work =(

See attachment

Revision history for this message
Thomas Perl (thp) wrote :

This bug will be fixed in the next gPodder release, and Ubuntu users should use the gPodder PPA (linked from the gpodder.org download page), as we can't get new releases of gPodder into the Ubuntu Repositories (gPodder's development cycle is ~ 1 month, and Ubuntu lags ~ 9 months behind [release cycle + Debian import freeze] in the worst case). Just to let you know and to avoid the proliferation of custom builds/packages floating around the web ;) gPodder 2.9 is the current version, version 2.6 was released in May 2010.

Revision history for this message
Gard Spreemann (gspreemann) wrote :

Pepe: That's very strange. Maybe your theme is also missing the fallback icon I set in the first patch, a case I apparently didn't test well enough for. I'll see if I can find time to look into it.

Thomas: Well, that's always the situation with any non-rolling release distro. If the changes aren't too invasive, how about creating a maintenance version "2.6.1" as well, changing nothing except fixing the icon problem? Surely that'll make it into Maverick-updates?

Changed in gpodder (Ubuntu):
importance: Undecided → Low
Revision history for this message
Pepe Barrascout Ortiz (pepe-quechilero) wrote :

Hi Gard, your PPA now works well. Thanks.

Revision history for this message
Thomas Perl (thp) wrote :

Fixed upstream in commit http://gpodder.org/commit/717b417d. This commit has not yet been included in any gPodder release, but it will be included in the next release of the 2.x release series.

Changed in gpodder (Ubuntu):
assignee: nobody → Thomas Perl (thp)
status: New → Fix Committed
Revision history for this message
Dave Walker (davewalker) wrote :

This is fixed in 2.16. Sync bug #811735, considering this Fix Released in Oneiric / Current development version.

Changed in gpodder (Ubuntu):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.