FS#66398 - [spice] inaccurate deps
Attached to Project:
Arch Linux
Opened by Toolybird (Toolybird) - Friday, 24 April 2020, 23:56 GMT
Last edited by Tobias Powalowski (tpowa) - Wednesday, 30 March 2022, 14:41 GMT
Opened by Toolybird (Toolybird) - Friday, 24 April 2020, 23:56 GMT
Last edited by Tobias Powalowski (tpowa) - Wednesday, 30 March 2022, 14:41 GMT
|
Details
This package lists qemu in makedepends. This creates a kind
of pseudo circular dep as qemu actually depends on spice.
After careful analysis (manually and also with namcap) I can confirm that the qemu dep brings in packages only relevant for the test suite (make check). Please amend the deps as follows: 1. remove qemu from makedepends 2. create checkdepends and add to it gdk-pixbuf2 and glib-networking While you're here, please also convert references to python2 which are simply unnecessary. Also, it might be a good idea to support the new streaming protocol by adding gst-plugins-base-libs to depends as per Fedora and Debian. Then add: optdepends=('gst-libav: GStreamer support for avenc_mjpeg video encoding' 'gst-plugins-good: GStreamer support for vp8enc and vp9enc video encoding' 'gst-plugins-ugly: GStreamer support for x264enc video encoding') Add lastly, please remove celt0.5.1 as it has been deprecated by upstream in favor of opus. I should probably supply a diff but have since moved over to the meson build upon updating to latest 0.14.3. I'll attach my personal PKGBUILD for reference. |
This task depends upon
Please reconsider this. On a headless server this pulls a lot of dependencies, which I'd prefer to have optional at most. Thanks!
It's a fair point. A quick test in a clean chroot shows 21 packages pulled in at 230MB installed size (mesa, etc).
Unfortunately it doesn't seem possible in the current build to support gstreamer and have it optional at runtime.
Reading the docs at:
https://www.spice-space.org/spice-user-manual.html#videostreaming
It seems to suggest there is built in support for MJPEG encoding (ie: without gstreamer). It also suggests streaming can be initiated via the server OR the guest.
If Arch decides to keep it minimal by removing dep on gst-plugins-base-libs, tacking `-D gstreamer=no' on to the end of arch-meson line will do the trick.
Thats a pity. No question, a lot of use-cases will require a full-featured package and shouldn't be declared invalid. On the other hand, the "headless host running headless guests"-scenario seems quite valid to me, too. I for myself prefer to have a minimalistic selection of packages installed for my kvm hosts due to various reasons.
How about two different flavours of this package? Like [qemu] and [qemu-headless] there could be a common [spice] with all bells and whistles, and a [spice-headless] with minimalistic dependencies.
> How about two different flavours of this package?
That's one possibility. But I would much more prefer to have an one spice package with optional 'gst' support. Maybe upstream can use dlopen('libgst...so') or some other way to remove the hard dependency to gst. Is anybody in contact with 'spice' upstream and can bring this idea to them?