FS#41333 - [libva-vdpau-driver] demote libva to a makedep

Attached to Project: Arch Linux
Opened by Emil (xexaxo) - Thursday, 24 July 2014, 21:10 GMT
Last edited by Maxime Gauduin (Alucryd) - Sunday, 06 December 2020, 09:57 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Maxime Gauduin (Alucryd)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

This package is a vdpau based libva backend. As such it never links/calls back to its loader (libva).
Can we demote the libva the dependency to makedep ? As an added bonus we'll remove the circular dependency (libva correctly optdep on this package).

Cheers
Emil
This task depends upon

Closed by  Maxime Gauduin (Alucryd)
Sunday, 06 December 2020, 09:57 GMT
Reason for closing:  Implemented
Additional comments about closing:  0.7.4-5
Comment by Ionut Biru (wonder) - Friday, 25 July 2014, 13:54 GMT
how do you want to use this backend without having libva? since the library loads the backend,
Comment by Emil (xexaxo) - Friday, 25 July 2014, 14:23 GMT
Your argument is like saying "libva depends on mplayer. otherwise how would you use libva?" or "the knife depends on the bread". Also if the library loads the backend, then the library should (opt)depend on the backend, not the other way around.

Or perhaps I'm day dreaming ?
-Emil
Comment by Emil (xexaxo) - Friday, 25 July 2014, 22:14 GMT
Glad to see that I'm not dreaming (this time) - libreoffice-common & libreoffice-langpack is a nice example of what I have in mind. On the other hand firefox and it's language packs follow the libva/libva-vdpau-driver (which I believe is) incorrect behaviour.

Perhaps there isn't an common ground amongst Arch developers on the topic. IMHO the libreoffice is the preferred approach but if you feel against it I would not object :)

Cheers
-Emil
Comment by Bartłomiej Piotrowski (Barthalion) - Saturday, 26 July 2014, 12:13 GMT
Language packs aren't really a good example of that. libreoffice-common require at least one language pack and we decided it will be en-US langpack packaged from the main tarball (libreoffice-fresh includes en-US as well). It makes other languages completely optional. In the same manner libva-vdpau-driver is useless without libva, because the former doesn't provide its own libva library.
Comment by Emil (xexaxo) - Wednesday, 17 September 2014, 18:49 GMT
OK the language pack was not the best example.
How about
- phonon-qt4
Requires: phonon-qt4-backend
Provided by: phonon-qt4-vlc/phonon-qt4-gstreamer

or perhaps
- apitrace,mpv,sdl2,dosbox...
Requires: libgl
Provided by: mesa-libgl/nvidia-libgl

Afaict the following approach will preserve the sanity check and addresses my concerns.

package: libva
depends: libva-backend

package: libva-vdpau-driver
provides: libva-backend

Cheers,
Emil
Comment by Emil (xexaxo) - Friday, 24 October 2014, 20:11 GMT
Guys does any of the above make sense, or am I (un)officially in the ignore list :)
Comment by Andreas Radke (AndyRTR) - Thursday, 28 July 2016, 12:41 GMT
From the linking side it seems correct to drop the dep. But how do you get the loader installed when you only install the certain backend and there's no dependency
on the loader lib? That way the dependency seems fine to me here.
Comment by Emil (xexaxo) - Thursday, 28 July 2016, 14:24 GMT
That's simple imho:
You know that application/package X has optional support for VAAPI as the said package already has it listed. Thus one should really be installing the actual dependency - libva.

Afaict some packages in Arch follow this approach while others, go in the inverse direction. IMHO the former provides clearer link between the components, while the latter is somewhat confusing from dependency POV.

Although yes, I have to agree with you - proposed solution might be a bit picky, depending on one's current state of mind. Ideally we'll have something like the Debian's "Suggests" tag/section, where the backend will list the frontend/loader.

What do you think, does it make sense ?
Comment by Emil (xexaxo) - Thursday, 26 March 2020, 23:59 GMT
  • Field changed: Percent Complete (100% → 0%)
Can we get this fixed please? Logic and all examples are correct to this date.
Comment by Emil (xexaxo) - Saturday, 28 November 2020, 13:47 GMT
Humble ping?

I can prepare some patches if people prefer.
Comment by Maxime Gauduin (Alucryd) - Sunday, 06 December 2020, 09:57 GMT
Finally going through my backlog. The libva-mesa-driver package already does that, so I don't see why not. Just pushed a new package.

Loading...