This site is now 100% read-only, and retired.

which-pkg-broke my important application?

Posted by JoshTriplett on Wed 1 Nov 2006 at 13:32

Upgraded recently, and an important package broke? Not sure which of the upgrades to roll back to an earlier snapshot? Use which-pkg-broke, from the debian-goodies package.

When a package breaks after an upgrade, the most likely culprit resides somewhere in the dependency tree of the package. To figure out exactly which package, run which-pkg-broke $the-package-name. This will show you a list of all the packages in the dependency tree, sorted by the last time they got upgraded. For example, if network-manager started acting odd recently, you might run which-pkg-broke network-manager, and the upgrades in the last month look like:

debianutils                                            Sun Oct  1 19:36:49 2006
readline-common                                        Sun Oct  1 19:37:56 2006
libreadline5                                           Sun Oct  1 19:37:56 2006
libssl0.9.8                                            Wed Oct  4 01:07:09 2006
libglib2.0-0                                           Wed Oct  4 01:07:22 2006
wpasupplicant                                          Fri Oct  6 11:19:55 2006
usbutils                                               Tue Oct 10 18:50:38 2006
libx11-data                                            Sat Oct 14 10:55:50 2006
libx11-6                                               Sat Oct 14 10:55:51 2006
adduser                                                Sat Oct 14 10:55:56 2006
iputils-arping                                         Mon Oct 16 11:43:49 2006
libvolume-id0                                          Tue Oct 17 03:38:23 2006
udev                                                   Tue Oct 17 03:38:28 2006
dhcp3-client                                           Wed Oct 18 22:59:49 2006
dhcp3-common                                           Wed Oct 18 22:59:50 2006
ncurses-bin                                            Fri Oct 20 14:15:26 2006
libncurses5                                            Fri Oct 20 14:15:31 2006
libhal1                                                Fri Oct 20 14:17:35 2006
libhal-storage1                                        Fri Oct 20 14:17:35 2006
hal                                                    Fri Oct 20 14:17:36 2006
libnl1-pre6                                            Fri Oct 20 14:18:07 2006
x11-common                                             Sat Oct 21 14:11:23 2006
libsepol1                                              Sat Oct 21 14:11:29 2006
libselinux1                                            Sun Oct 22 00:52:59 2006
libc6                                                  Mon Oct 23 13:44:57 2006
login                                                  Mon Oct 23 13:45:46 2006
passwd                                                 Mon Oct 23 13:46:02 2006
This might suggest a problem with libnl1-pre6, hal, dhcp3-client, udev, or wpasupplicant, in about that order.

 

 


Re: which-pkg-broke my important application‽
Posted by Anonymous (83.98.xx.xx) on Wed 1 Nov 2006 at 22:15
Can you please explain why you picked the updates of Fri Oct 20
as the possible pkg breaker ?

[ Parent ]

Re: which-pkg-broke my important application‽
Posted by Anonymous (66.93.xx.xx) on Wed 1 Nov 2006 at 23:38
I looked back through the list and chose likely candidates in reverse order.

All the packages more recent than that seem like far less likely suspects. libc6 doesn't break often, and if it did, you would expect more packages to break than network-manager. selinux-related libraries seem unlikely if you don't run selinux. login and password seem unlikely to affect network-manager, and shouldn't break often.

[ Parent ]

Re: which-pkg-broke my important application‽
Posted by Anonymous (84.58.xx.xx) on Thu 2 Nov 2006 at 16:38
But notice that 'which-pkg-broke' isn't part of the stable branch of debian-goodies, it appears first in testing .

[ Parent ]

Re: which-pkg-broke debian-goodies
Posted by simonw (84.45.xx.xx) on Thu 2 Nov 2006 at 20:59
[ View Weblogs ]
# which-pkg-broke wallpaper-tray
File "/usr/bin/which-pkg-broke", line 20
if how in ('Depends', 'PreDepends'):
^
SyntaxError: invalid syntax

?? Surely "for" ?!

Am I having one of those "unstable" moments?

[ Parent ]

Re: which-pkg-broke debian-goodies
Posted by Anonymous (66.93.xx.xx) on Thu 2 Nov 2006 at 22:24
Looks like my recent patch to which-pkg-broke got applied incorrectly, introducing an extra space on that line (not present in my patch). Bug filed.

And no, that really should read "<code>if</code>"; python has an operator "<code>in</code>", meaning "element of", so <code>if how in ('Depends', 'PreDepends'):</code> means "if the tuple ('Depends', 'PreDepends') contains how, then...", a shorthand for <code>if how == 'Depends' or how == 'PreDepends':</code>.

- Josh Triplett

[ Parent ]

Re: which-pkg-broke debian-goodies
Posted by JoshTriplett (66.93.xx.xx) on Fri 3 Nov 2006 at 02:27
#396786, now fixed in debian-goodies 0.26.

[ Parent ]