gnome-app-install crashed with AttributeError in itemIsInstalled()

Bug #389749 reported by Cody A.W. Somerville
192
This bug affects 35 people
Affects Status Importance Assigned to Milestone
gnome-app-install (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

Binary package hint: gnome-app-install

In Firefox, I clicked Tools > Add-ons and then clicked "Get Ubuntu Extensions". An interface similar to install/remove popped up and then apport popped up reporting this crash. The "Install/Remove Extensions" remained but the loading dialogue is frozen and says "Loading System...".

ProblemType: Crash
Architecture: amd64
Date: Fri Jun 19 21:18:17 2009
DistroRelease: Ubuntu 9.10
ExecutablePath: /usr/bin/gnome-app-install
InterpreterPath: /usr/bin/python2.6
NonfreeKernelModules: wl nvidia
Package: gnome-app-install 0.5.30-0ubuntu1
PackageArchitecture: all
ProcCmdline: /usr/bin/python /usr/bin/gnome-app-install --xul-extensions=firefox
ProcEnviron:
 LANG=en_CA.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.30-9.10-generic
PythonArgs: ['/usr/bin/gnome-app-install', '--xul-extensions=firefox']
SourcePackage: gnome-app-install
Title: gnome-app-install crashed with AttributeError in itemIsInstalled()
Uname: Linux 2.6.30-9-generic x86_64
UserGroups: adm admin audio cdrom dialout fuse kvm lpadmin netdev plugdev sambashare

Revision history for this message
Cody A.W. Somerville (cody-somerville) wrote :
description: updated
visibility: private → public
tags: removed: need-duplicate-check
Revision history for this message
MedO (smaxein) wrote :

This happens for me as well: When I try to open an mp3 file with Totem, it wants to search for a codec to play the file. If I allow that, a progress dialog appears ("Nach geeigneten Codecs wird gesucht"), and the app-install window comes up. The progress bar reaches 100% but the progress dialog does not disappear, instead the crash report dialog shows up to report an error with the same title as this bug report. The app-install window is unresponsive (though it does redraw itself) and can't be closed normally, so I shot it with xkill.

Revision history for this message
MedO (smaxein) wrote :

Repeating the steps of the original reporter causes the same bug for me as well. My machine is an Eee PC 901 (x86-32), 2GB Ram, karmic alpha with recent packets (updated 1hr ago) installed on an SDHC card.

Revision history for this message
miegiel (nix-miegiel) wrote :

It has no relation to firefox as far as I can tell. I'm getting the error multiple times running "add/remove" from the applications menu. Each section (accessories, graphics, internet, etc.) produces an error as the "gnome-app-install" window's progress bar progresses.

I guess I'll just use "sudo apt-get" in a terminal for now : )

Revision history for this message
miegiel (nix-miegiel) wrote :

Some aditional info:

I started it from the CLI "/usr/bin/gnome-app-install" and that spat out a nice list of repeating errors :

Traceback (most recent call last):
  File "/usr/lib/python2.6/dist-packages/AppInstall/Menu.py", line 243, in _visible_filter
    self.itemIsInstalled(item):
  File "/usr/lib/python2.6/dist-packages/AppInstall/Menu.py", line 419, in itemIsInstalled
    return (self.cache.has_key(item.pkgname) and
AttributeError: 'NoneType' object has no attribute 'has_key'

to end with :

/usr/lib/python2.6/dist-packages/AppInstall/AppInstall.py:1248: GtkWarning: gtk_tree_model_sort_set_sort_column_id: assertion `tree_model_sort->default_sort_func != NULL' failed
  item.applications.set_sort_column_id(-1, sort_type)

I took a look at /usr/lib/python2.6/dist-packages/AppInstall/Menu.py which made me realise something. The last time I ran "Add /Remove" (software) from the gnome menu I selected the filter to show only installed programs. This filter is used again the next time gnome-app-install is run and is where I think things go wrong.

lines 224 to 256 from /usr/lib/python2.6/dist-packages/AppInstall/Menu.py (added >>here>> at line 243)
    def _visible_filter(self, model, iter):
        item = model.get_value(iter, COL_ITEM)
        #print "_visible_filter: ", item
        if item:
            # check for the various view settings
            if not self.activationStyle.isApproved(
               item.component, item.pkgname):
                return False
            if self.filter == SHOW_ONLY_MAIN and item.component != "main":
                return False
            if self.filter == SHOW_ONLY_SUPPORTED and item.supported != True:
                return False
            if self.filter == SHOW_ONLY_FREE and item.free == False:
                return False
            if self.filter == SHOW_ONLY_PROPRIETARY and item.free == True:
                return False
            if self.filter == SHOW_ONLY_THIRD_PARTY and item.thirdparty != True:
                return False
            if self.filter == SHOW_ONLY_INSTALLED and not \
>>here>> self.itemIsInstalled(item):
                return False
            # Allow to only show a subset by the activation filter
            if (self.activationStyle.selectFilter is not None and
                not self._activationStyleFilter(item)):
                return False
            # if we search, do the ranking updates
            if len(self.searchTerms) > 0:
                rank = self._filterAndRank(item)
                if rank == None:
                    return False
                else:
                    item.rank = rank
        return True

I hope this helps : )

Revision history for this message
miegiel (nix-miegiel) wrote :

For others who are confronted with this bug :

In http://ubuntuforums.org/showthread.php?p=7722188#post7722188 wayne_cat provided me with a solution to get gnome-app-install working again.

Run "gconf-editor"
Go to "apps > gnome-app-install"
Change the value of "filter_applications" from 6 to 0

Revision history for this message
DaLONS (liamg-reverse) wrote : Re: [Bug 389749] Re: gnome-app-install crashed with AttributeError in itemIsInstalled()
Download full text (4.2 KiB)

I will have to learn tousand things. English of course too.
But I don't have much time. This is my problem.
Thx

2009/8/2 miegiel <email address hidden>:
> Some aditional info:
>
> I started it from the CLI "/usr/bin/gnome-app-install" and that spat out
> a nice list of repeating errors :
>
> Traceback (most recent call last):
>  File "/usr/lib/python2.6/dist-packages/AppInstall/Menu.py", line 243, in _visible_filter
>    self.itemIsInstalled(item):
>  File "/usr/lib/python2.6/dist-packages/AppInstall/Menu.py", line 419, in itemIsInstalled
>    return (self.cache.has_key(item.pkgname) and
> AttributeError: 'NoneType' object has no attribute 'has_key'
>
> to end with :
>
> /usr/lib/python2.6/dist-packages/AppInstall/AppInstall.py:1248: GtkWarning: gtk_tree_model_sort_set_sort_column_id: assertion `tree_model_sort->default_sort_func != NULL' failed
>  item.applications.set_sort_column_id(-1, sort_type)
>
> I took a look at /usr/lib/python2.6/dist-packages/AppInstall/Menu.py
> which made me realise something. The last time I ran "Add /Remove"
> (software) from the gnome menu I selected the filter to show only
> installed programs. This filter is used again the next time gnome-app-
> install is run and is where I think things go wrong.
>
> lines 224 to 256 from /usr/lib/python2.6/dist-packages/AppInstall/Menu.py (added >>here>> at line 243)
>    def _visible_filter(self, model, iter):
>        item = model.get_value(iter, COL_ITEM)
>        #print "_visible_filter: ", item
>        if item:
>            # check for the various view settings
>            if not self.activationStyle.isApproved(
>               item.component, item.pkgname):
>                return False
>            if self.filter == SHOW_ONLY_MAIN and item.component != "main":
>                return False
>            if self.filter == SHOW_ONLY_SUPPORTED and item.supported != True:
>                return False
>            if self.filter == SHOW_ONLY_FREE and item.free == False:
>                return False
>            if self.filter == SHOW_ONLY_PROPRIETARY and item.free == True:
>                return False
>            if self.filter == SHOW_ONLY_THIRD_PARTY and item.thirdparty != True:
>                return False
>            if self.filter == SHOW_ONLY_INSTALLED and not \
>>>here>>               self.itemIsInstalled(item):
>                return False
>            # Allow to only show a subset by the activation filter
>            if (self.activationStyle.selectFilter is not None and
>                not self._activationStyleFilter(item)):
>                return False
>            # if we search, do the ranking updates
>            if len(self.searchTerms) > 0:
>                rank = self._filterAndRank(item)
>                if rank == None:
>                    return False
>                else:
>                    item.rank = rank
>        return True
>
> I hope this helps : )
>
> --
> gnome-app-install crashed with AttributeError in itemIsInstalled()
> https://bugs.launchpad.net/bugs/389749
> You received this bug notification because you are a direct subscriber
> of the bug.
>
> Status in “gnome-app-install” package in Ubuntu: New
>
> Bug description:
> Binary p...

Read more...

tags: added: iso-testing
Revision history for this message
Robert Roth (evfool) wrote :

Thank you for reporting this bug to Ubuntu. Karmic reached EOL on April 30, 2011.
Please see this document for currently supported Ubuntu releases:
https://wiki.ubuntu.com/Releases

I've tried recreating this bug with Oneiric and was unable to, given the information you've provided. Please either a) upgrade and test or b) increase the verbosity of the steps to recreate it so we can try again.

Please feel free to report any other bugs you may find.

Changed in gnome-app-install (Ubuntu):
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for gnome-app-install (Ubuntu) because there has been no activity for 60 days.]

Changed in gnome-app-install (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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