Crashes silently if /etc/apt/sources.list.d/ contains a malformed file

Bug #633626 reported by Matthew Paul Thomas
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
software-center (Ubuntu)
Triaged
Medium
Unassigned

Bug Description

Ubuntu Software Center 2.1.16.1, Ubuntu Maverick
Ubuntu Software Center 5.1.11, Ubuntu 12.04 beta 1

1. echo "deb http://ppa.launchpad.net/tualatrix/ppa/ubuntu main #Ubuntu Tweak Stable Source" | sudo tee /etc/apt/sources.list.d/ubuntu-tweak-stable.list
2. software-center

What happens:
------------
Traceback (most recent call last):
  File "/usr/share/software-center/softwarecenter/db/pkginfo_impl/aptcache.py", line 222, in open
    self._cache = apt.Cache(GtkMainIterationProgress())
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 102, in __init__
    self.open(progress)
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 145, in open
    self._cache = apt_pkg.Cache(progress)
SystemError: E:Malformed line 1 in source list /etc/apt/sources.list.d/ubuntu-tweak-stable.list (dist parse), E:The list of sources could not be read., E:The package lists or status file could not be parsed or opened.
2012-03-12 10:52:15,573 - softwarecenter.db.enquire - ERROR - _get_estimate_nr_apps_and_nr_pkgs failed
Traceback (most recent call last):
  File "/usr/share/software-center/softwarecenter/db/enquire.py", line 115, in _get_estimate_nr_apps_and_nr_pkgs
    tmp_matches = enquire.get_mset(0, len(self.db), None, xfilter)
  File "/usr/share/software-center/softwarecenter/db/appfilter.py", line 74, in __call__
    if (not pkgname in self.cache and
  File "/usr/share/software-center/softwarecenter/db/pkginfo_impl/aptcache.py", line 241, in __contains__
    return self._cache.__contains__(k)
AttributeError: 'NoneType' object has no attribute '__contains__'
Traceback (most recent call last):
  File "/usr/bin/software-center", line 176, in <module>
    app.run(args)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/app.py", line 1279, in run
    self.show_available_packages(args)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/app.py", line 1208, in show_available_packages
    self.view_manager.set_active_view(ViewPages.AVAILABLE)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/session/viewmanager.py", line 148, in set_active_view
    view_widget.init_view()
  File "/usr/share/software-center/softwarecenter/ui/gtk3/panes/availablepane.py", line 157, in init_view
    self.apps_filter)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/views/catview_gtk.py", line 234, in __init__
    self.build(desktopdir)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/views/catview_gtk.py", line 476, in build
    self._build_homepage_view()
  File "/usr/share/software-center/softwarecenter/ui/gtk3/views/catview_gtk.py", line 253, in _build_homepage_view
    self._append_whats_new()
  File "/usr/share/software-center/softwarecenter/ui/gtk3/views/catview_gtk.py", line 415, in _append_whats_new
    whats_new_cat = self._update_whats_new_content()
  File "/usr/share/software-center/softwarecenter/ui/gtk3/views/catview_gtk.py", line 404, in _update_whats_new_content
    docs = whats_new_cat.get_documents(self.db)
  File "/usr/share/software-center/softwarecenter/db/categories.py", line 120, in get_documents
    nonblocking_load=False)
  File "/usr/share/software-center/softwarecenter/db/enquire.py", line 316, in set_query
    self._blocking_perform_search()
  File "/usr/share/software-center/softwarecenter/db/enquire.py", line 211, in _blocking_perform_search
    matches = enquire.get_mset(0, self.limit, None, xfilter)
  File "/usr/share/software-center/softwarecenter/db/appfilter.py", line 74, in __call__
    if (not pkgname in self.cache and
  File "/usr/share/software-center/softwarecenter/db/pkginfo_impl/aptcache.py", line 241, in __contains__
    return self._cache.__contains__(k)
AttributeError: 'NoneType' object has no attribute '__contains__'
------------

What should happen: The malformed source is ignored, and Ubuntu Software Center opens ready for use.

Possibly this needs fixing in apt rather than in USC itself.

To recover:
3. sudo rm /etc/apt/sources.list.d/ubuntu-tweak-stable.list

The equivalent bug in Update Manager is bug 633316, and in Synaptic is bug 633630.

Related branches

Changed in software-center (Ubuntu):
assignee: nobody → Mohamed Amine IL Idrissi (ilidrissi.amine)
importance: Undecided → Medium
status: New → In Progress
description: updated
description: updated
Revision history for this message
Jean-Baptiste Lallement (jibel) wrote :

more than a year marked 'In progress' resetting status.

Changed in software-center (Ubuntu):
status: In Progress → Triaged
assignee: Mohamed Amine Ilidrissi (ilidrissi.amine) → nobody
Revision history for this message
David Pitkin (dpitkin) wrote :

My problem was a well formed line, copied from launchpad that returned a 404 it made Software Center not show any error when started it silently failed to launch, which is a second error, if it showed me the error I could have fixed it.

2012-01-26 15:43:58,292 - softwarecenter.ui.gtk3.em - INFO - EM's: 16 13 18
Traceback (most recent call last):
  File "/usr/bin/software-center", line 151, in <module>
    app = SoftwareCenterAppGtk3(datadir, xapian_base_path, options, args)
  File "/usr/share/software-center/softwarecenter/ui/gtk3/app.py", line 213, in __init__
    self.cache.open()
  File "/usr/share/software-center/softwarecenter/db/pkginfo_impl/aptcache.py", line 209, in open
    self._cache = apt.Cache(GtkMainIterationProgress())
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 93, in __init__
    self.open(progress)
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 140, in open
    self._list.read_main_list()
SystemError: E:Opening /etc/apt/sources.list.d/private-ppa.launchpad.net_commercial-ppa-uploaders_ubuntu-font-beta-testing.list - ifstream::ifstream (13: Permission denied)

Revision history for this message
David Pitkin (dpitkin) wrote :
description: updated
Revision history for this message
Rainer Rohde (rainer-rohde) wrote :

Fresh installation of Beta 1 -- USC won't even start.

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.