[pkg-nvidia-devel] Bug#558464: Please don't put libvdpau1 in contrib
josh at joshtriplett.org
Sun Nov 29 06:25:09 UTC 2009
libvdpau exists as a portable way to use VDPAU without depending on any
particular vendor's implementation. In particular, libvdpau also
supports *optional* use of VDPAU: a program can link to libvdpau, try to
use VDPAU, and find out via the VDP_STATUS_NO_IMPLEMENTATION error that
no VDPAU support exists.
This seems very similar to requesting an X extension from the X server
and finding that it doesn't exist; the client library for that extension
shouldn't inherently go in contrib just because the server-side
extension support doesn't exist in main yet.
As it stands, putting libvdpau1 in contrib makes it impossible for a
package in main to compile with optional VDPAU support.
I realize that at first glance libvdpau doesn't look particularly useful
without a backend implementation. However, libvdpau *exists* to serve
precisely two functions: ship the VDPAU headers for applications to
build against, and provide functionality to dlopen a VDPAU backend
implementation. If applications provided the dlopen functionality
themselves, and dlopened the backend library at runtime themselves, that
wouldn't make those applications move to contrib, as long as they worked
if they didn't find the backend library. libvdpau just wraps this
functionality in a small library, and ships it together with header
Now, if any application built against libvdpau fails to run if it gets
VDP_STATUS_NO_IMPLEMENTATION, that might prove a reasonable basis to put
that application in contrib until some free VDPAU backend exists.
However, any application which has optional VDPAU support and works even
if no backend library exists could remain in main.
Thus, please move libvdpau1, libvdpau-dev, and libvdpau-doc into main,
and change libvdpau1 to Suggests libvdpau-driver. Any package which
absolutely needs a libvdpau backend driver and fails without one could
add a Depends on libvdpau-driver (and move to contrib).
- Josh Triplett
More information about the Pkg-nvidia-devel