Apt cache repair "In Progress" text is "Repairing broken deps"

Bug #635138 reported by Matthew Paul Thomas
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Aptdaemon
Fix Released
Undecided
Matthew Paul Thomas
software-center (Ubuntu)
Invalid
Low
Matthew Paul Thomas

Bug Description

Ubuntu Software Center 2.1.18, Ubuntu Maverick
software-center trunk r2261, Ubuntu 11.10 beta 1

Based on test case sc-017 <https://wiki.ubuntu.com/SoftwareCenter#broken-catalog>:

1. sudo apt-get install 4g8 && sudo dpkg --force-depends -r libnet1
2. Launch Ubuntu Software Center.
3. Choose "Repair", and authenticate.
4. Quickly navigate to "In Progress".

What you see: "Repairing broken deps".
What you should see: 'In “In Progress”, a software catalog rebuild task should have the Ubuntu Software Center icon as its icon, and the primary text “Rebuilding software catalog”.'

Related branches

Changed in aptdaemon:
importance: Undecided → Low
status: New → Invalid
importance: Low → Undecided
Changed in software-center (Ubuntu):
importance: Undecided → Low
Changed in software-center (Ubuntu):
status: New → In Progress
assignee: nobody → Mohamed Amine IL Idrissi (ilidrissi.amine)
Revision history for this message
Sebastian Heinlein (glatzor) wrote :

This isn't just a non-dangerous rebuild of the cache/catalog. This can be an invasive action on the system - it includes installing and removing software. E.g. "Repairing installed software" would be a better one.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

Thanks, I didn't know that it involved installing or removing software. "Reparing installed software" is a great suggestion.

I don't think this is important enough to break existing translations for Maverick.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

Was I confused, then, in writing <https://wiki.ubuntu.com/SoftwareCenter#broken-catalog>? Is there a "cache broken" problem, which can be repaired non-invasively, that is separate from the problem caused by "sudo apt-get install 4g8 && sudo dpkg --force-depends -r libnet1"? Or are they one and the same situation as far as apt is concerned?

See also bug 635101.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

It would still be helpful to have an answer to my question of a year ago. :-) Sebastian? Michael?

Changed in software-center (Ubuntu):
assignee: Mohamed Amine Ilidrissi (ilidrissi.amine) → Matthew Paul Thomas (mpt)
status: In Progress → Confirmed
description: updated
Revision history for this message
Sebastian Heinlein (glatzor) wrote :

Indead:

1. The dependencies are unsatisfied/broken (this is the case which you described originally)

2. The installation of package failed and is incomplete

3. The "binary" cache which gets build from the dpkg status and the Package lists from the repositories is damaged.

Revision history for this message
Sebastian Heinlein (glatzor) wrote :

I could add a property on the daemon dbus interface of aptdaemon "CacheBroken". But you also have got a package cache instance in software center which also provides this information. So the question is if you want to show the error outside of software center as a kind of error dialog or only to show this in software center.

If there are broken dependencies you should call the FixBrokenDepends of aptdaemon. But this action can result in installing or removing a lot of packages. Especially in the case of mixed or third party repositories. So you should show the changes to the user beforehand.

Aptdaemon tries to recover from cancelled or failed installations on every install/remove/upgrade transaction. So this is handled automatically. But if the recover action fails an error message gets shown even if the secondary installation was successful.

Revision history for this message
Matthew Paul Thomas (mpt) wrote :

Thanks, Sebastian. I suppose any of those three errors could occur when USC isn't even running, right? For example, as the result of using --force-depends at the terminal, or if the computer loses power during an update, or something like that.

Therefore, any prompt for fixing any of those problems (e.g. listing which packages need to be installed or removed), and the progress bar showing them being fixed, should really be in its own aptdaemon dialog, outside of USC. For example, you might need to do it before installing software updates in Update Manager.

While that dialog is up, as long as USC has understandable "Waiting for repairs" text for any *other* tasks, I don't think the repairs themselves should show in USC's Progress screen at all (and nor should Update Manager updates). But that can be fixed separately, and in the meantime, using the string "Repairing installed software" is a minimal fix. I've pushed a branch to fix it.

Changed in aptdaemon:
assignee: nobody → Matthew Paul Thomas (mpt)
status: Invalid → In Progress
Changed in software-center (Ubuntu):
status: Confirmed → Invalid
Changed in aptdaemon:
status: In Progress → Fix Released
Revision history for this message
Matthew Paul Thomas (mpt) wrote :

I've now proposed a design for problem #1 (from Sebastian's list) at <https://wiki.ubuntu.com/SoftwarePackageOperations#broken>, and problems #2 and #3 at <https://wiki.ubuntu.com/SoftwarePackageOperations#general>. I'm sure I've made some mistakes, and Sebastian can correct me when he has some time. But in the meantime, this specific bug with the wording has been fixed.

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.