[Multiarch-devel] Proper upgrade path for lib32v4l-{0,dev}?

Gregor Jasny gjasny at googlemail.com
Sun Jul 1 20:27:34 UTC 2012


Hello,

On 7/1/12 10:01 PM, Sven Joachim wrote:
 > [ CC'ing ia32-libs maintainers for their opinion. ]

Is the 20120616 or 20120701 version of ia32-libs supposed to go into Wheezy?

> On 2012-07-01 16:04 +0200, Gregor Jasny wrote:
>> currently my source package v4l-utils builds lib32v4l-0 and
>> lib32v4l-dev packages on amd64. I'd like to get rid of them sooner
>> than later and provide a proper upgrade path to multiarch
>> packages. What's the best way to achieve this?
>
> Getting rid of reverse dependencies so these packages can be removed as
> unused, I think.

The 'fat' ia32-libs was the last dependency. According to apt-cache 
rdepends nothing depends on lib32v4l* anymore.

>> Or should I change the packages from:
>>
>> Package: lib32v4l-0
>> Section: libs
>> Architecture: amd64
>> Depends: libv4l-0 (= ${binary:Version}),
>>           ${shlibs:Depends},
>>           ${misc:Depends}
>>
>> to virtual transition packages:
>>
>> Package: lib32v4l-0
>> Section: oldlibs
>> Architecture: i386
>> Pre-Depends: multiarch-support
>> Depends: libv4l-0 (= ${binary:Version}),
>>           ${misc:Depends}
>
> The Pre-Depends: multiarch-support is not necessary, but you would need
> to mark lib32v4l-0 as "Multi-Arch: foreign".

So it would read:

Package: lib32v4l-0
Section: oldlibs
Architecture: i386
Multi-Arch: foreign
Depends: libv4l-0 (= ${binary:Version}),
          ${misc:Depends}

> However, since lib32v4l-0 is usually installed because ia32-libs depends
> on it, and the skype-debian_4.0.0.7-1_amd64.deb package I downloaded
> from Skype's website depends on ia32-libs but not lib32v4l-0: maybe a
> better upgrade path would be given by letting ia32-libs-i386 depend on
> libv4l-0?
>
> The ia32-libs-i386 package depends on all libraries formerly included in
> ia32-libs (well, as far as they are still available), but not on the
> i386 counterparts of the various lib32* packages ia32-libs depended
> upon.  This seems like a bug to me.

I suppose lib32v4l was only pulled into ia32-libs due to being a 
gstreamer dependency. And libv4l isn't necessary to run Skype on most 
systems. You'd only need it if our camera supports just non-YUV/RGB 
output formats or is built in upside down like on most ASUS notebooks.
In both cases one has to do the LD_PRELOAD trick (with changed preload 
paths for multiarch).

So to me the most appealing solution would be to drop the lib32v4l 
packages altogether and let those users that need the conversion install 
and configure these packages by hand.

Thanks,
Gregor



More information about the Multiarch-devel mailing list