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

Re: zlib1g-dev: version 1:1.2.7.dfsg-7 requires an uninstallable dependency (zlib1g (= 1:1.2.7.dfsg-4))



retitle 673939 apt: please be smarter about resuming after an interrupted/failed unpack
# difficult
severity 673939 wishlist
reassign 673939 apt 0.9.3
reopen 673939
quit

Sophoklis Goumas wrote:

> Allrighty then:

Excellent, thanks for the log.  The story starts here:

> Log started: 2012-05-21  08:03:11
[...]
> Preparing to replace zlib1g:i386 1:1.2.7.dfsg-4 (using .../zlib1g_1%3a1.2.7.dfsg-5_i386.deb) ...
> Unpacking replacement zlib1g:i386 ...
> Setting up zlib1g:i386 (1:1.2.7.dfsg-5) ...
[...]
> Unpacking replacement ffmpeg-doc ...
> dpkg: error processing /var/cache/apt/archives/ffmpeg-doc_7%3a0.10.3-dmo1_all.deb (--unpack):
> trying to overwrite '/usr/share/doc-base/ffmpeg-doc', which is also in package libav-doc 6:0.8.2-2
[...]
> Errors were encountered while processing:
>  /var/cache/apt/archives/ffmpeg-doc_7%3a0.10.3-dmo1_all.deb
> Log ended: 2012-05-21  08:05:14

At this point, the updated zlib1g has been unpacked, but not updated
zlib1g-dev, and apt encounters an error during the unpack procedure.
It stops to let the sysadmin take care of it, and then the next apt
command begins its work with "dpkg --configure -a":

> Log started: 2012-05-21  18:27:08
[...]
> Setting up libogg-dev (1.3.0-1) ...
> dpkg: dependency problems prevent configuration of zlib1g-dev:i386:
>  zlib1g-dev:i386 depends on zlib1g (= 1:1.2.7.dfsg-4); however:
>   Version of zlib1g:i386 on system is 1:1.2.7.dfsg-5.

And it is unable to recover.  A smarter package manager would realize
it is time to download and unpack either the updated versions of
zlib1g-dev and zlib1g-dbg (in effect continuing the interrupted
upgrade) or the previous version of zlib1g (in effect rolling it back)
or print some advice help the human operator to do so.

Roughly speaking: imagine three packages A, B, and D.  The new version
of A depends on D.  The package B is utterly broken.  The sysadmin
tries:

	$ apt-get install A B D
	Unpacking replacement A...
	Unpacking B...
	(breaks)
	$ dpkg --purge B; # Hopefully this will let me recover.
	$ apt-get install; # Back to a sane state?
	Setting up A...
	dpkg: dependency problems prevent configuration of A:
	 A depends on B; however:
	  Package B is not installed.
	$ ???; # Guess not.

Reassigning to apt.

Thanks,
Jonathan


Reply to: