Bug 200046 - net-mgmt/virt-viewer spice support
Summary: net-mgmt/virt-viewer spice support
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Jason Helfman
Depends on:
Reported: 2015-05-08 06:29 UTC by Alexandr Krivulya
Modified: 2015-05-14 00:04 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (jgh)

spice-protocol port (2.75 KB, application/x-shar)
2015-05-12 18:32 UTC, Jason Helfman
no flags Details
virt-viewer patch (1.10 KB, patch)
2015-05-12 20:29 UTC, Jason Helfman
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Alexandr Krivulya 2015-05-08 06:29:13 UTC
Currently net-mgmt/virt-viewer compiles without spice protocol support. Since we have deskutils/spice-gtk in ports tree I think it could be build with libspice-client-gtk-3.0.so and libspice-client-glib-2.0.so but removing --without-spice-gtk in Makefile dont help.
Comment 1 Ting-Wei Lan 2015-05-09 01:35:39 UTC
spice-gtk needs libusb-1.0 >= 1.0.16 on systems not supporting udev, but we only have libusb-1.0 1.0.9 on FreeBSD 10.1.
Comment 2 Jason Helfman freebsd_committer 2015-05-11 23:37:07 UTC
Can you please clarify the extend of this "not working"? This may be an upstream bug, as well, so any logs or screenshots may help.

Comment 3 Alexandr Krivulya 2015-05-12 10:11:14 UTC
I have deskutils/spice-gtk installed and libspice-client-gtk* and libspice-client-glib* libs are both present. I have removed --without-spice-gtk from /usr/ports/net-mgmt/virt-viewer/Makefile and successfully rebuild the port. But virt-viewer is not configured with spice support:

 checking for SPICE_GTK... no

shurik@thinkpad:~> ldd /usr/local/bin/virt-viewer |grep spice

The same on linux box:
user@linux-lfzk:~> ldd /usr/bin/virt-viewer |grep spice
        libspice-client-gtk-3.0.so.4 => /usr/lib/libspice-client-gtk-3.0.so.4 (0xb7102000)
        libspice-client-glib-2.0.so.8 => /usr/lib/libspice-client-glib-2.0.so.8 (0xb64dc000)

So, adding spice support to net-mgmt/virt-viewer is not trivial and requires something more?(as Ting-Wei Lan points)
Comment 4 Jason Helfman freebsd_committer 2015-05-12 17:16:26 UTC
I am looking into this, as it seems it is a matter of pointing to the correct libraries and pkgdata path. I'll also engage upstream during the process for any questions. The config.log is noting it can't find spice-protocol.pc, and it isn't part of the one in our tree. So this could be a version issue with spice, as well.
Comment 5 Jason Helfman freebsd_committer 2015-05-12 18:32:36 UTC
Created attachment 156722 [details]
spice-protocol port

I was able to get this to build, and attach to spice-gtk with some modifications.
I will add this to the port, however after doing a:

pkg install openssl spice-gtk, and then rebuilding virt-viewer as is, I was able to get it to build with spice-gtk support (and add --with-spice-gtk).

(I will modify the virt-viewer port appropriately to bring everything it needs in)

[helfman@its-helfman03 ~/workspace/ports/net-mgmt/virt-viewer]$ ldd /usr/local/bin/virt-viewer |grep spice
	libspice-client-gtk-3.0.so.4 => /usr/local/lib/libspice-client-gtk-3.0.so.4 (0x801b9e000)
	libspice-client-glib-2.0.so.8 => /usr/local/lib/libspice-client-glib-2.0.so.8 (0x80417a000)

Additionally, I needed to add another port, which I will attach (untested, not built on pourdiere, yet, either)
Comment 6 Jason Helfman freebsd_committer 2015-05-12 20:29:22 UTC
Created attachment 156729 [details]
virt-viewer patch

Here is the update to virt-viewer. Again, not yet build tested.
Comment 7 Alexandr Krivulya 2015-05-13 07:37:14 UTC
I have successfully build virt-viewer port with your patches and connect to vm spice console (oVirt). All works great. Thank you, jgh!
Comment 8 commit-hook freebsd_committer 2015-05-13 20:54:12 UTC
A commit references this bug:

Author: jgh
Date: Wed May 13 20:53:40 UTC 2015
New revision: 386266
URL: https://svnweb.freebsd.org/changeset/ports/386266

  Add new port: devel/spice-protocol

  Spice protocol defines a set of protocol messages for accessing,
  controlling, and receiving inputs from remote computing devices
  (e.g., keyboard, video, mouse) across networks, and sending output
  to them. A controlled device can reside on either side, client
  and/or server.

  WWW: http://www.spice-space.org

  PR:		200046 (to support fixing)

Comment 9 commit-hook freebsd_committer 2015-05-14 00:04:32 UTC
A commit references this bug:

Author: jgh
Date: Thu May 14 00:04:20 UTC 2015
New revision: 386280
URL: https://svnweb.freebsd.org/changeset/ports/386280

  - add spice support
  - bump portrevision

  PR:		200046
  Reported by:	shuriku@shurik.kiev.ua