Cleaning up after defective updates

On 22 June at about 14:30 UTC I installed some updates, including gtk2, using the openSUSE Updater applet (on 2 systems running openSUSE 10.3). To make a long story short the version of gtk2 that Updater grabbed was defective.

Questions:

  • Is there an easier method of cleaning up defective updates?
  • Does a log exist that shows update packages that have been withdrawn?
  • Does a log exist that describes the contents of the updates offered by Updater?

Now the long story:

After updating gtk2, Firefox would not start. The error was “firefox-bin: symbol lookup error: /usr/lib/libgtk-x11-2.0.so.0: undefined symbol: g_dpgettext”

Upon investigation, I found that I had installed gtk2-2.12.9-36.1, which I thought was odd, since the same Updater selection (gtk2 5312-0) had yielded gtk2-2.12.0-5.8 when installed on another 10.3 system the week before.

When I attempted to download the appropriate version from my favorite mirror, I found that only the defective version was available. I downloaded and installed gtk2-2.12.0-5 from the distribution directory. This solved my Firefox issue.

Then I discovered that Software.openSUSE.org has all updates, not just the latest, so I was able to download and install gtk2-2.12.0-5.8. Now system A had the intended version of gtk2 installed.

(I’m simplifying here: packages gtk2-devel, gtk2-lang and gtk2-branding-upstream also were involved.)

Now for system B. This system is a different platform than A, so
I needed to download again. This was at about 16:00 UTC. By this time someone apparently had discovered his/her error, and gtk2-2.12.9-36.1 had been removed from download.opensuse.org and the mirrors.

This time I tried saving a step by downgrading directly to gtk2-2.12.0-5.8. This turned out to be a mistake, as this package did not revert a symbolic link, as was needed. I was able to fix the link by downgrading to gtk2-2.12.0-5, then upgrading again to gtk2-2.12.0-5.8.

There has to be an easier way, right?