Bug#591881: vlc-nox: package fails to upgrade properly from lenny

Reinhard Tartler siretart at tauware.de
Sat Aug 7 13:53:05 UTC 2010


On Sat, Aug 07, 2010 at 08:11:02 (EDT), Julian Andres Klode wrote:

> If you move the Breaks from libavformat52 to libavcodec52 and depend on
> the libavcodec52 with that breaks, it will work.

That would be this patch:

commit 898820f21f6e25e71d9effb059183e0c2f275ff5
Author: Reinhard Tartler <siretart at tauware.de>
Date:   Sat Aug 7 09:47:56 2010 -0400

    Move breaks declaration from libavformat to libavcodec to help the apt solver, Closes: #591881

diff --git a/debian/control b/debian/control
index 6ca949f..260932e 100644
--- a/debian/control
+++ b/debian/control
@@ -92,6 +92,7 @@ Architecture: any
 Depends: ${shlibs:Depends},
          ${misc:Depends}
 Replaces: ffmpeg (<< 4:0.5.1-1)
+Breaks: libavcodec51 (<< 3:0.svn20090303-1)
 Description: ffmpeg codec library
  This is the codec library from the ffmpeg project. It supports most existing
  encoding formats (MPEG, DivX, MPEG4, AC3, DV...).
@@ -113,7 +114,6 @@ Package: libavformat52
 Architecture: any
 Depends: ${shlibs:Depends},
          ${misc:Depends}
-Breaks: libavcodec51 (<< 3:0.svn20090303-1)
 Description: ffmpeg file format library
  This is the demuxer library from the ffmpeg project. It supports most
  existing file formats (AVI, MPEG, OGG, Matroska, ASF...).

The ffmpeg packages ensures "strict" internal dependencies anyway, so
AFAIUI, this should work.

> On the APT side, this patch can fix it; but I am not sure whether it
> will break other cases of Breaks:
>
> === modified file 'apt-pkg/algorithms.cc'
> --- apt-pkg/algorithms.cc	2010-06-09 09:51:21 +0000
> +++ apt-pkg/algorithms.cc	2010-08-07 12:05:04 +0000
> @@ -992,11 +992,12 @@ bool pkgProblemResolver::Resolve(bool Br
>  
>  	       /* Try to fix the package under consideration rather than
>  	          fiddle with the VList package */
> -	       if (Scores[I->ID] <= Scores[Pkg->ID] ||
> +	       if ((Scores[I->ID] <= Scores[Pkg->ID] ||
>  		   ((Cache[Start] & pkgDepCache::DepNow) == 0 &&
>  		    End->Type != pkgCache::Dep::Conflicts &&
>  		    End->Type != pkgCache::Dep::DpkgBreaks &&
> -		    End->Type != pkgCache::Dep::Obsoletes))
> +		    End->Type != pkgCache::Dep::Obsoletes)) &&
> +		    End->Type != pkgCache::Dep::DpkgBreaks )
>  	       {
>  		  // Try a little harder to fix protected packages..
>  		  if ((Flags[I->ID] & Protected) == Protected)

Lucas told me yesterday that this affects ~80 other packages as well, is
that correct? Can we expect to see this patch in squeeze, or shall I
move the breaks as outlined above?

CC'ing the release list for input, since we are in freeze now.

-- 
Gruesse/greetings,
Reinhard Tartler, KeyID 945348A4





More information about the pkg-multimedia-maintainers mailing list