[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: libc4 upgrade -- Ouch!



David Engel writes ("Re: libc4 upgrade -- Ouch!"):
> > > Unpacking replacement libc4 ...
> > > rm: linux: is a directory
> > > dpkg: warning - old post-removal script returned error exit status 1
> > > dpkg - trying script from the new package instead ...
> > > dpkg: error processing /lump/deb/unbin/devel/libc4-4.6.27-13.deb (--install):
> > >  there is no script in the new version of the package - giving up
> 
> Hmm, this didn't happen to me.  I suppose I can make a new revision
> with a postrm that doesn't do anything.  That should work around the
> problem.
> 
> > The problem here is that the libc4 maintainer scripts are buggy.
> 
> One could argue that dpkg should not consider the absense of a postrm
> script in the new package as an error.

Well, the error was really a bug in the old postrm script.  If the old
postrm script fails dpkg tries the new one instaled, so that it is
possible to recover from packages with broken maintainer scripts.

When I wrote that code I decided that it probably wasn't safe to go
ahead with the installation (and effectively ignore the old postrm's
failure) if the new version of the package didn't have a postrm at
all.

Do you disagree with this ?

There were also a lot of messages from the old postinst script, which
was called to try to put things back when the installation failed.
These might be in part responsible for breaking the system, and in any
case caused the backoff to bomb out.

Ian.


Reply to: