Re: Question regarding suitability of Spice for my workplace

2024-08-02 Thread Victor Toso
On Fri, Jul 19, 2024 at 03:03:56PM GMT, David Counter wrote:
> Good Afternoon
> 
> Quick question - is it possible to stream video from two separate sources to
> two instances of the Spice client program on the desktop of a thin client? I'm
> looking to display Windows and Linux concurrently on two monitors attached to
> my Wyse 5070.

Yes, just by running two spice clients.

> 
> Thanks in advance,
> 
> David Counter
> 
> Systems Support Technician | Union County Emergency Services 
> 
> C: (941) 953-6282
> E: davidjcoun...@gmail.com


signature.asc
Description: PGP signature


Re: vdagent drag and drop question

2024-05-28 Thread Victor Toso
Hi,

On Mon, May 27, 2024 at 12:22:54PM GMT, ToddAndMargo wrote:
> On 5/27/24 08:07, Victor Toso wrote:
> > On Wed, May 22, 2024 at 12:58:41AM GMT, ToddAndMargo wrote:
> > > Hi All,
> > > 
> > > Host:
> > > Fedora 39
> > > spice-server-0.15.1-3.fc39.x86_64
> > > spice-glib-0.42-3.fc39.x86_64
> > > spice-gtk3-0.42-3.fc39.x86_64
> > > spice-vdagent-0.22.1-6.fc39.x86_64
> > > qemu-kvm-8.1.3-5.fc39.x86_64
> > > 
> > > VM:
> > > Windows 11 23H2
> > > Virtio-win-driver-installer 0.1.240
> > > Virtio-win-guest-tools  0.1.240
> > > 
> > > I can drag and drop a file from my Linux host to a
> > > qemu-kvm Windows 11 virtual machine but I can not
> > > do it in reverse
> > > 
> > > What am I doing wrong?
> > 
> >  From Guest to Client, drag-and-drop does not work.
> >  From Client to Guest, it should. The data of the file is copied
> > by the client (e.g: spice-gtk) and provided to the guest agent
> > which creates the file with the contents.
> 
> That explains it.  Thank you.
> 
> Is there a file sharing option somewhere (other
> that Samba)?

In SPICE? We have also webdav channel, it requires spice-webdavd
daemon running in the guest plus the client being build with
phodav option enabled.

Other than that, it depends on what you are using to manage the
VM. QEMU has quite a few options, the most popular nowadays is
virtiofs I think

https://libvirt.org/kbase/virtiofs.html

Cheers,
Victor


signature.asc
Description: PGP signature


Re: High delay of video-streams

2024-05-27 Thread Victor Toso
Hi,

On Tue, Apr 16, 2024 at 12:59:50PM GMT, Michael Scherle wrote:
> Hello,
> 
> Thanks for your changesets, they definitely reduce the delay significantly
> (to a similar level as our provosoric fixes, but yours are much cleaner).
> 
> On the client side (spice-gtk) I looked at the problem with the high
> decoding time (2 frames buffering) and was able to find a simple fix with
> the help of the gstreamer community:
> 
> ---
>  src/channel-display-priv.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/channel-display-priv.h b/src/channel-display-priv.h
> index 1a7590a..a2af1a7 100644
> --- a/src/channel-display-priv.h
> +++ b/src/channel-display-priv.h
> @@ -177,7 +177,7 @@ static const struct {
>   * (hardcoded in spice-server), let's add it here to avoid the warning.
>   */
>  { SPICE_DISPLAY_CAP_CODEC_H264, "h264",
> -  "h264parse ! avdec_h264", "video/x-h264,stream-format=byte-stream" },
> +  "h264parse ! avdec_h264",
> "video/x-h264,stream-format=byte-stream,alignment=au" },
> 
>  /* SPICE_VIDEO_CODEC_TYPE_VP9 */
>  { SPICE_DISPLAY_CAP_CODEC_VP9, "vp9",
> @@ -185,7 +185,7 @@ static const struct {
> 
>  /* SPICE_DISPLAY_CAP_CODEC_H265 */
>  { SPICE_DISPLAY_CAP_CODEC_H265, "h265",
> -  "h265parse ! avdec_h265", "video/x-h265,stream-format=byte-stream" },
> +  "h265parse ! avdec_h265",
> "video/x-h265,stream-format=byte-stream,alignment=au" },

jfyi, this was discussed in the past. It depends how spice server
was configured too, no? I'm not sure, it has been awhile. What I
mean is, what/who is doing h264 encoding. We had a
spice-streaming-agent that wrapped guest's GPU h264 encoding and
sent to the client, with the same protocol depending how it
is configured, the stream-format was important I think. Again,
not 100% sure.

> 
>  };
> 
> -- 
> 2.40.1
> 
> However, this change should probably still be tested on different setups.
> Since I don't know whether they are always au aligned, I should probably
> find out about that.
> 
> Also I have made other experiments, such as removing decoding_queue in
> channel-display-gst.c and adding the SpiceGstFrame to the metadata of the
> gstBuffer instead, as well as completely ignoring the display time of a
> frame and instead displaying them immediately. With that i got down to
> 60-80ms delay.

If you send patches about this one, feel free to tag me. This
looks cool.
 
> Do you know if your changes or similar ones that reduce the
> delay will go upstream soon?
> 
> While looking through the source code, I found
> SPICE_KEYPRESS_DELAY, which is not mentioned anywhere. Is this
> the only use to save some network traffic? Is there any reason
> not to always set this to 0 in today's network environments?
> (And maybe set the default to 0?)

Introduced in c03e002152dc0c, commit log says:

 > widget: add keypress-delay property
 >
 > The delay before the press event is sent to the server if the key is
 > kept pressed. If the key is released within that time, that delay is
 > ignored and a single key-press-release event will be sent.

Introduced in 2012. I'm pretty sure there were reasons for it.
Not sure if worth to remove it.

Cheers,
Victor

> Michael
> 
> On 03.04.24 21:22, Frediano Ziglio wrote:
> > Frediano
> > 
> > Il giorno mar 2 apr 2024 alle ore 15:27 Michael Scherle
> >  ha scritto:
> > > 
> > > Hi Frediano,
> > > 
> > > thank you very much for your detailed answer.
> > > 
> > > 
> > > On 02.04.24 14:13, Frediano Ziglio wrote:
> > > 
> > > > Really short explanation: Lipsync.
> > > > 
> > > > Less cryptic explanation: video streaming was added much time ago when
> > > > desktops used 2D graphic drawings, like lines, fillings, strings and
> > > > so on. At that time networks were more unreliable, latency bigger, and
> > > > with high probability a continuous bitblt on the same big area was a
> > > > video playing. So the idea of detecting the video playing and
> > > > optimizing to sync audio and video was a good idea.
> > > 
> > > ok this explains a lot.
> > > 
> > > > Now starts my opinionated ideas. The idea of continuous bitblt being
> > > > only a video stream is wrong, nowadays desktops do use large bitblt
> > > > for everything, or better they use 3D cards a lot and compose the
> > > > various windows on the screen which appears to us as just bitblt,
> > > > often contiguous. So the delay should just be removed optimizing for
> > > > real time video streaming. As you realize the algorithm also keeps
> > > > increasing the delay for every glitch found which is not improving the
> > > > user experience. I have different changesets removing entirely all
> > > > these delays (it's possible to get this just by changing the server
> > > > part), the result is much less delay, the audio/video sync (watching a
> > > > movie) is, with nowadays networks, acceptable.
> > > 
> > > 
> > > Would it be possible to get your changesets, so that I could try them
> > > out? I would be intere

Re: USB mouse on MacOS arm64 client

2024-05-27 Thread Victor Toso
On Mon, May 20, 2024 at 06:52:34PM GMT, Andreas Yankopolus wrote:
> All—
> 
> I’m on an M1 MacBook Pro accessing VMs running on an amd86
> Linux server.
> 
> Is there a way to connect a USB device on the Mac to a VM?

That's the use case for USB redirection. Spice has spice-usbredir
channel which uses the usbredir library to do USB over tcp from
your client to remote QEMU.

As far as I know, usbredir works on Mac but I don't have one at
hand to test. If you are using spice-gtk, the client needs to be
built with that enabled.

> I’m not able to install additional software on the VMs and am
> trying to sort out mouse tracking, which is very laggy using
> the VirtIO Tablet device. Passing the mouse between MacOS and
> the VM seemed worth trying.
> 
> Maybe there’s another option?

If you are allowed to change QEMU command line arguments, you can
use setup usb device over a network port, that uses usbredir
protocol too. Then, you can use usbredirect binary (from usbredir
library) to redirect the local device.

All suggestions considering that usbredir works in your platform.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: vdagent drag and drop question

2024-05-27 Thread Victor Toso
On Wed, May 22, 2024 at 12:58:41AM GMT, ToddAndMargo wrote:
> Hi All,
> 
> Host:
>Fedora 39
>spice-server-0.15.1-3.fc39.x86_64
>spice-glib-0.42-3.fc39.x86_64
>spice-gtk3-0.42-3.fc39.x86_64
>spice-vdagent-0.22.1-6.fc39.x86_64
>qemu-kvm-8.1.3-5.fc39.x86_64
> 
> VM:
>Windows 11 23H2
>Virtio-win-driver-installer 0.1.240
>Virtio-win-guest-tools  0.1.240
> 
> I can drag and drop a file from my Linux host to a
> qemu-kvm Windows 11 virtual machine but I can not
> do it in reverse
> 
> What am I doing wrong?

From Guest to Client, drag-and-drop does not work.
From Client to Guest, it should. The data of the file is copied
by the client (e.g: spice-gtk) and provided to the guest agent
which creates the file with the contents.


signature.asc
Description: PGP signature


Re: Audio through spice

2024-05-10 Thread Victor Toso
Hi Dorothy,

On Sat, Apr 27, 2024 at 12:57:49PM GMT, Dorothy Calhoon wrote:
> Hi!
> 
> I use spice to redirect the usb ports from my POPos host to my
> Mac Catalina operating system in my QEMU virtual machine which
> was set up using quickemu and now is accessed via quickgui.
> Spice works fine for redirecting the keyboard, mouse, wifi and
> printer. Now I need it for audio.

SPICE supports playback and record audio channels. Playback is
audio coming from the Guest to your Client and Record is client's
microphone to redirect to the guest.

If you already uses usbredir channel, chances are that your spice
client already supports playback/record too. Which spice client
are you using?

> I know that audio has been a problem in virtual machines with
> Mac operating systems later than Catalina, but it is supposed
> to work in Catalina. 

If you are using spice-gtk, the audio backend should be gstreamer
and the right plugins need to be installed

> I have a small speaker that plugs into the guest via a usb port
> but it is not recognized. I also tried headphones in the audio
> out ports and still Preferences show nothing for sound and
> there is none.
> 
> I understand that spice can allow the audio sound card from the
> host to pass through to the guest. How do I implement that
> feature? Somewhere I read that inputting the following into the
> host terminal would do it: QEMU_AUDIO_DRV= spice. However,
> terminal did nothing and just wanted more instructions. The
> directions I had found said that after this command you could
> then use -soundhw hda options. However, terminal does not
> recognize soundhw and I wasn’t sure exactly what the “options"
> were.
> 
> I also tried -audiodev spice,id=id[,prop[=value][,….]] and the
> terminal said that the audiodev command was not found.

I'm not familiar with quickemu nor quickgui, but again, if you
are already using some spice channels, I'd guess the problem is
on the client-side.
 
> It appears that there are just a couple of commands that would
> allow the audio passthrough feature of spice to work, but I
> don’t know exactly what they are. I am new to using terminal so
> I need very precise instructions. I would appreciate your help
> in this. 
> 
> Thanking you in advance.
> 
> Dorothy

Cheers,
Victor


signature.asc
Description: PGP signature


Re: Mouse Back and Forward button

2024-02-16 Thread Victor Toso
On Tue, Feb 06, 2024 at 08:16:44PM +, Jason Chen wrote:
> Hi Devs,
> 
> Thank you very much for making Spice.  It is 100% faster than any other
> software I have used.
> 
> The only problem I have with the software is my mouse.  My back/forward button
> on my mouse (Logitech G502) is registered as a scroll input.  My scroll weeks
> is working as intended.  Windows RDP works flawlessly in this respect.
> 
> Is there something I'm missing?  I haven't been able to figure it out and this
> great affects the way I navigate.
> 
> Can you please help?  Thank you very much.

Someone worked on extra mouse buttons in spice-protocol v0.14.3
https://gitlab.freedesktop.org/spice/spice-protocol/-/merge_requests/22

This seems to be implemented in spice-gtk v0.40 and Linux
spice-vdagent 0.22.0. It doesn't seem to be implemented in
Windows agent.

Not much we can help atm. If you have the right components with
the right versions, it should work otherwise it is a bug.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: usb passtrough

2023-12-13 Thread Victor Toso
Hi,

On Wed, Dec 13, 2023 at 01:14:12PM -0800, John Paul Morrison wrote:
> Which spice client?
> 
> The windows spice client has separate usb drivers that need to installed

It us UsbDk
https://github.com/daynix/UsbDk/releases
 
> It's been a while since I used it but not all features are enabled in the
> Windows builds and downgrading may help.
 
> On Wed, Dec 13, 2023 at 8:47 AM Fabio  wrote:
> 
> Ciao, scusa se ti disturbo ma la tua guida non mi è chiara.
> Io devo fare collegare una penna USB al client ed usarlo come se fosse
> collegato alla mia macchina virtuale di windows in RDP.
> il tuo software  però non funziona

RDP is not SPICE. If you are using windows build of virt-viewer,
that does have USB redirection but need the above mentioned
drivers installed in the Windows machine (Client/local, not
Guest/remote).

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] [PATCH spice-gtk 1/2] Update spice-common submodule

2023-11-06 Thread Victor Toso
Hi,

On Thu, Nov 02, 2023 at 05:11:37PM +, Frediano Ziglio wrote:
> This brings in the following changes:
> 
> Vivek Kasireddy (1):
>   common: Add a udev helper to identify GPU Vendor

Sure,
Acked-by: Victor Toso 

> 
> Signed-off-by: Frediano Ziglio 
> ---
>  subprojects/spice-common | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/subprojects/spice-common b/subprojects/spice-common
> index 58d375e5..bb8f6698 16
> --- a/subprojects/spice-common
> +++ b/subprojects/spice-common
> @@ -1 +1 @@
> -Subproject commit 58d375e5eadc6fb9e587e99fd81adcb95d01e8d6
> +Subproject commit bb8f66983af6b7f38dc80efa6b6ca8f34c2ab85e
> -- 
> 2.41.0
> 


signature.asc
Description: PGP signature


Re: [Spice-devel] spice protocal connection issue

2023-10-12 Thread Victor Toso
On Wed, Oct 11, 2023 at 04:31:56PM +0800, 王雪松 wrote:
> Hi:
> I have a question. Within the same local area network, I can
> freely access the virtual machine using Spice, but other
> machines often fail to connect.

This should be a matter of can or cannot. You either have access
to the host:port from where spice server is running, or you
don't.

> It takes dozens of attempts sometimes to successfully establish
> a connection. I'd like to know the reason behind this.

Me too. Do you run behind a proxy? Any other devices in between
that might be doing something with the network?

> Could it be due to a caching mechanism or some restrictions
> that limit other people's login access? Thank you.

Not really. If a user is logged in and a second one tries to log,
the second one gets access while the first one is disconnected.

I don't remember any settings that would change that behavior.

> Looking forward to your reply.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] [PATCH 2/4] channel-display-gst: Add "byte-stream" as the stream format for h264

2023-09-15 Thread Victor Toso
Hi,

On Fri, Sep 15, 2023 at 05:51:14PM +0100, Frediano Ziglio wrote:
> Il giorno ven 15 set 2023 alle ore 01:33 Vivek Kasireddy
>  ha scritto:
> >
> > Adding the string "stream-format=byte-stream" to decoder capabilities
> > (dec_caps) for h264/h265 codecs stops Gstreamer from complaining
> > about missing stream format.
> >
> > Cc: Frediano Ziglio 
> > Cc: Dongwon Kim 
> > Cc: Jin Chung Teng 
> > Cc: Hazwan Arif Mazlan 
> > Signed-off-by: Vivek Kasireddy 
> > ---
> >  src/channel-display-priv.h | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/src/channel-display-priv.h b/src/channel-display-priv.h
> > index 66c9cff..1a7590a 100644
> > --- a/src/channel-display-priv.h
> > +++ b/src/channel-display-priv.h
> > @@ -177,7 +177,7 @@ static const struct {
> >   * (hardcoded in spice-server), let's add it here to avoid the warning.
> >   */
> >  { SPICE_DISPLAY_CAP_CODEC_H264, "h264",
> > -  "h264parse ! avdec_h264", "video/x-h264" },
> > +  "h264parse ! avdec_h264", "video/x-h264,stream-format=byte-stream" },
> >
> >  /* SPICE_VIDEO_CODEC_TYPE_VP9 */
> >  { SPICE_DISPLAY_CAP_CODEC_VP9, "vp9",
> > @@ -185,7 +185,7 @@ static const struct {
> >
> >  /* SPICE_DISPLAY_CAP_CODEC_H265 */
> >  { SPICE_DISPLAY_CAP_CODEC_H265, "h265",
> > -  "h265parse ! avdec_h265", "video/x-h265" },
> > +  "h265parse ! avdec_h265", "video/x-h265,stream-format=byte-stream" },
> >
> >  };
> >
> 
> Hi,
>I agree with this change. Specifically I'm getting the warning too
> even if my system is pretty updated.
> 
> This setting was removed by commit
> https://gitlab.freedesktop.org/spice/spice-gtk/-/commit/c9129ed202b00f4a74ea7a55de19150194257e77
> but the explanation about it was removed is not really clear to me.

Yes, I've put the chat with tim and slomo because it was tricky.

The important point imho could be:

 | toso  slomo: right, my point was that I would like to list the
 | h264 decoders that are available and I was using `video/x-h264,
 | stream-format=3Dbyte-stream` as input for
 | gst_element_factory_list_filter() .. and avdec_h264 is the one
 | not showing because it needs the aligment

So, the problem I had at that time was exactly that using
stream-format would prevent loading avdec_h264 as viable option.

> Personally I think this commit should be applied in any case, it makes
> sense independently of the series. Vivek, do you agree?
> 
> Victor, do you agree to this change?

If you test this and it lists & works with avdec_h264, I think it
is fine too.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Oracle Linux 9 support

2023-08-23 Thread Victor Toso
Hi,

On Tue, Aug 22, 2023 at 08:47:58AM +, Maxim Iacob wrote:
> Hello,
> 
> I'm looking to install spice-gtk to Oracle Linux 9.2 distribution, based on 
> Red
> Hat Enterprise Linux release 9.2 (Plow).
> 
> Somehow this is not possible due to error:
> 
> ==
> $sudo dnf builddep spice-gtk
> 
> enabling proxyt-source repository
> enabling slacktechnologies_slack-source repository
> proxyt
> source
>   
> 
> 817  B/s | 1.6 kB 00:02
> slacktechnologies_slack   
>   
>
> 803  B/s | 1.8 kB 00:02
> slacktechnologies_slack-source
>   
>
> 414  B/s | 951  B 00:02
> no package matched: spice-gtk
> Error: Some packages could not be found.

RHEL 9.2 does not have spice-gtk. You should raise this request
to Oracle Linux 9.2 and see if they want to support it.

> ==
> 
> Kindly let me know if there is any possible workaround to
> install it on Oracle Linux 9. I'm looking to access A Proxmox
> virtual machine via Virt-viewer and it looks spice-gtk is
> needed, otherwise I get "Unsupported graphic type 'spice'"
> error.
> 
> Appreciate any direction to make this work. :)

I'd recommend fetching rpm sources (e.g: from fedora) and doing
the build + installation.

Not much more I can help you with it, sadly.

Ah, using some flatpak with SPICE would be another alternative.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Need simple spice copy and past device (for terminal use)

2023-06-04 Thread Victor Toso
Hi,

Not sure if you are asking for help, suggesting a feature or
interested in implementing this.

On Sun, Jun 04, 2023 at 07:04:54AM +0100, Serle Shuman wrote:
> Assuming that the host is a windows based environment and the
> guest is s qemu based linux terminal only environment e.g
> ubuntu server without x11, then there are currently no features
> targeted specifically at exposing a character device in the
> terminal that one can redirect text to and from the host's
> clipboard. e.g.

With SPICE you can't do it. SPICE copies the clipboard data from
the client, transfer it to spice-vdagent which transfer it to
guest's clipboard (x11 only, no wayland support)

> 1. from host -> guest (via spice clipboard)
> host: copy from cheetsheet to clipboard
> guest shell: dev/cb >  # redirect from clipboard device to
> standard out
> 
> 2. from guest -> host (via spice clipboard)
> guest:  > dev/cb  # redirect standard out to the
> clipboard device
> host:
>   a. graphical paste menu item in some application
>   b. dev/cb > command  # redirect from spice cb
> device on host to another command

You could hack spice-vdagent to interact with something else
other than x11's clipboard if that's something you are interested
in.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] About the website download error

2023-05-30 Thread Victor Toso
Hi,

On Mon, May 29, 2023 at 05:47:17PM +0100, Frediano Ziglio wrote:
> > > I would personally add configuration to the server, MSI files are
> > > probably used by Windows users.
> >
> > Could you try adding the download attribute (by changing the html
> > first and then trying to download the file), just to see if that
> > as a workaround works?
> 
> I could try to reproduce the issue using another server but our
> HTML pages are generated so we would need to change the
> generator, so we will also need to change the system. It would
> take me some time, I don't use Apache every day. Do you think
> it's worth doing?

What I meant was to edit the html in the browser (e.g: both
firefox and chrome support right click > inspect plus edit)

If that works out, we might not need to touch the server, only
the generation of the HTML by adding the download attribute.

By all means, we can wait to see if the mime.types change can be
done first.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] About the website download error

2023-05-29 Thread Victor Toso
Hi,

On Mon, May 29, 2023 at 04:40:38PM +0100, Frediano Ziglio wrote:
> Il giorno lun 29 mag 2023 alle ore 14:13 Victor Toso
>  ha scritto:
> >
> > Hi,
> >
> > On Sun, May 28, 2023 at 08:15:43AM +0100, Frediano Ziglio wrote:
> > > Il giorno dom 28 mag 2023 alle ore 07:38 Frediano Ziglio
> > >  ha scritto:
> > > >
> > > > Hi,
> > > >as a workaround click on the link with the right mouse button and 
> > > > click on download.
> > > >
> > > > It's just a server configuration that sends back the file as something 
> > > > to display instead of something to save.
> > > >
> > > > But strangely it worked correctly for me. Which browser and version are 
> > > > you using?
> > > >
> > > > Regards,
> > > >Frediano
> > > >
> > > >
> > >
> > > This is the results trying to download the file
> > >
> > > HTTP/1.1 200 OK
> > > Date: Sun, 28 May 2023 07:08:45 GMT
> > > Server: Apache
> > > X-Content-Type-Options: nosniff
> > > X-Frame-Options: SAMEORIGIN
> > > Referrer-Policy: same-origin
> > > Permissions-Policy: camera=(), fullscreen=(), geolocation=(),
> > > microphone=(), payment=(), usb=()
> > > Strict-Transport-Security: max-age=2592000; includeSubDomains
> > > Last-Modified: Wed, 03 Aug 2022 09:06:09 GMT
> > > ETag: "c7c200-5e5528b37f99a"
> > > Accept-Ranges: bytes
> > > Content-Length: 13091328
> > > Keep-Alive: timeout=5, max=100
> > > Connection: Keep-Alive
> > >
> > > It seems the mime type is missing. Now if we want to fix that we need
> > > to change mime type configuration on the server. I found this link
> > > https://mediatemple.net/community/products/dv/204403964/mime-types
> >
> > It works here as well. It is not like the browser should try to
> > open a content as text if it doesn't know what it is.  Another
> > alternative is to use download attribute.
> >
> > https://www.w3schools.com/tags/att_a_download.asp
> >
> > Cheers,
> > Victor
> 
> Hi,
>   I got it reproduced. I should have tried a Windows browser (Edge,
> Windows 10), I should have known that on Windows resource extensions
> are taken much more into consideration.
> I tried with 
> https://releases.pagure.org/virt-viewer/virt-viewer-x86-11.0-1.0.msi
> which is downloaded correctly and the reply is (wget -v -nv -d XXX)
> 
> HTTP/1.1 200 OK
> Date: Mon, 29 May 2023 15:33:19 GMT
> Server: Apache/2.4.37 (Red Hat Enterprise Linux) OpenSSL/1.1.1k
> mod_wsgi/4.6.4 Python/3.6
> X-Xss-Protection: 1; mode=block
> X-Content-Type-Options: nosniff
> Referrer-Policy: same-origin
> X-Frame-Options: ALLOW-FROM https://pagure.io/
> Upgrade: h2,h2c
> Connection: Upgrade, Keep-Alive
> Last-Modified: Tue, 23 Nov 2021 16:05:18 GMT
> ETag: "50e1a00-5d176e85cad62"
> Accept-Ranges: bytes
> Content-Length: 84810240
> Keep-Alive: timeout=5, max=100
> Content-Type: application/octet-stream
> 
> I would personally add configuration to the server, MSI files are
> probably used by Windows users.

Could you try adding the download attribute (by changing the html
first and then trying to download the file), just to see if that
as a workaround works?

This project is the one running the infrastructure:
https://gitlab.com/osci/community-cage-infra-ansible

I only have sftp access to folder related to SPICE. I'll follow
up with someone to see if we can update the mime-types.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] About the website download error

2023-05-29 Thread Victor Toso
Hi,

On Sun, May 28, 2023 at 08:15:43AM +0100, Frediano Ziglio wrote:
> Il giorno dom 28 mag 2023 alle ore 07:38 Frediano Ziglio
>  ha scritto:
> >
> > Hi,
> >as a workaround click on the link with the right mouse button and click 
> > on download.
> >
> > It's just a server configuration that sends back the file as something to 
> > display instead of something to save.
> >
> > But strangely it worked correctly for me. Which browser and version are you 
> > using?
> >
> > Regards,
> >Frediano
> >
> >
> 
> This is the results trying to download the file
> 
> HTTP/1.1 200 OK
> Date: Sun, 28 May 2023 07:08:45 GMT
> Server: Apache
> X-Content-Type-Options: nosniff
> X-Frame-Options: SAMEORIGIN
> Referrer-Policy: same-origin
> Permissions-Policy: camera=(), fullscreen=(), geolocation=(),
> microphone=(), payment=(), usb=()
> Strict-Transport-Security: max-age=2592000; includeSubDomains
> Last-Modified: Wed, 03 Aug 2022 09:06:09 GMT
> ETag: "c7c200-5e5528b37f99a"
> Accept-Ranges: bytes
> Content-Length: 13091328
> Keep-Alive: timeout=5, max=100
> Connection: Keep-Alive
> 
> It seems the mime type is missing. Now if we want to fix that we need
> to change mime type configuration on the server. I found this link
> https://mediatemple.net/community/products/dv/204403964/mime-types

It works here as well. It is not like the browser should try to
open a content as text if it doesn't know what it is.  Another
alternative is to use download attribute.

https://www.w3schools.com/tags/att_a_download.asp

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] how to build usbredirect-x64-0.13.0.msi

2023-04-06 Thread Victor Toso
Hi,

I'm CC'ing spice-devel mailing list.

On Thu, Apr 06, 2023 at 11:47:29AM +0800, 李皆俊 wrote:
> Hi, l want to build usbredirect-x64-0.13.0.msi in centos8 stream;
> follw the doc 
> https://github.com/freedesktop/spice-usbredir/blob/master/docs/how_to_release.md
>   
> 
> Generate the MSI installer
> On the usbredir srcdir mkdir build-win64 && cd build-win64
> mingw64-meson
> DESTDIR=./install-root ninja install
> DESTDIR=./install-root ninja data/usbredirect-x64-$version.msi
> The MSI installer is then located at build-win64/data
> 
> when i run DESTDIR=./install-root ninja install is good and
> usbredirect.exe is in tools dir; and then run

...

> DESTDIR=./install-root ninja data/usbredirect-x64-$version.msi
> have some error:[ninja: error: unknown target 'data/usbredirect-x64.msi'];

We used $version in the docs because it changes, so it is a
variable. Try:

DESTDIR=./install-root ninja data/usbredirect-x64-0.13.0.msi

This process calls msitools binaries and uses its wxi data to
assembly the msi installer.

> so i want some help: how to build usbredirect-x64-0.13.0.msi in centos8 stream
> 
> think you very mach.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Problem using Spice in combination with SSH tunnel

2023-03-06 Thread Victor Toso
Hi Thomas,

On Thu, Mar 02, 2023 at 01:32:10PM +, Thomas Semmler wrote:
> Hello everyone,
> 
> I encountered a problem I can't make heads or tails of. I have
> a server running KVM/libvirt as a virtualization host. The
> virtual machines on this server are setup to use the spice
> protocol. When using the servers desktop environement I can use
> virt-manager or remmina to connect to the virtual machine's
> spice server(s) without a problem. The spice server is
> listening on localhost only. 
> 
> I wanted to connect from a remote client to the server via a
> ssh tunnel and then connect to spice over the tunnel. I tried
> with both virt- manager (which has an integrates ssh tunnel
> option) and remmina (which also has an integrated setting to
> create a tunnel) on the client to establish a connection, but
> it is not working as intended.
> 
> While I can see a video output of the desktop, the video output
> does not resize to the window width and hight and none of the
> input methods are working. I can not send keypresses or mouse
> movements the the virtual machine on the server.

I've never tested this so I'm not sure how it should work.

Every SPICE channel is a TCP socket that is established after the
initial handshake. IIRC, the first connection is kept for the
graphics (which you can use) but the connection of others seemed
to fail over your ssh tunnel. I'd guess the proxying over ssh
tunnel needs more tweaks.

I see that oVirt has some how-to with this, perhaps that can be
helpful to you:

https://ovirt-infra-docs.readthedocs.io/en/latest/Phoenix_Lab/Ssh_Spice_Tunnel/index.html

> I started virt-manager on the client with the debug option
> (--dubug) and attached the resulting output, containing a few
> spice errors, to this email.
> 
> In case you require more information please let me know.
> 
> Thanks,
> Thomas

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Compiling SPICE in /usr/local

2023-02-28 Thread Victor Toso
Hi,

On Mon, Feb 27, 2023 at 10:28:27PM +0200, kap tam wrote:
> Hello, I've tried getting this to work for about a day but I can not get
> past spice ./configure step assuming spice-protocol header files are
> installed in /usr/local/include/spice-1/spice. I tried setting the
> SPICE_PROTOCOL_CFLAGS
> to "-I/usr/local/include/spice-1/spice -I/usr/local/include/spice-1
> -I/usr/local/include" (capital I not lowercase L by the way). although I
> think the 2nd and 3rd should work, I'm desperate so I tried everything.
> Could I get some help please?

Have you tried setting PKG_CONFIG_PATH to have the pkgconfig
folder in /usr/local ?

Something like
export PKG_CONFIG_PATH=/usr/local/pkgconfig:$PKG_CONFIG_PATH
./configure

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] [PATCH] reset qxl to vga mode

2023-02-14 Thread Victor Toso
Hi Freddy,

On Tue, Feb 14, 2023 at 11:08:21AM +, Frediano Ziglio wrote:
> Il giorno mar 14 feb 2023 alle ore 10:50 qi zhou 
> ha scritto:
> >
> > > Hi,
> > >   It looks good to me. Why it was QXL_IO_MEMSLOT_ADD I don't know. On
> > > Linux is QXL_IO_RESET too.
> >
> > May be a typo ?, here you can use sysinternal's notmyfault to test this bug.
> > 1. launch qemu use legacy bios mode. make sure qxl driver is active, then 
> > open notmyfault64.exe click on crash button. It will trigger a bsod
> > 2. without reset/patch, we cannot see bluescreen shown
> >
> > before qxl revision 5, even DodResetDevice does nothing, the qemu will do 
> > reset after detect qxl mode mismatch. see 
> > https://github.com/qemu/qemu/blob/ed71c09ffd6fbd01c2a487d47291ae57b08671ea/hw/display/qxl.c#L1315
> >
> > But qxl revison 5+ requires explicit reset
> >
> > reference:
> > not myfault: 
> > https://learn.microsoft.com/en-us/sysinternals/downloads/notmyfault
> > DXGKDDI_RESET_DEVICE : 
> > https://learn.microsoft.com/en-us/windows-hardware/drivers/ddi/dispmprt/nc-dispmprt-dxgkddi_reset_device#remarks
> 
> Merged.
> 
> Now the question is about release and build.
> 
> Uri, Victor, should we pack a new release?

I'm not sure how to release it. We used to bundle it in
spice-guest-tools but there was a signing process too.

I see that virtio-win also bundles spice-guest-tools so, they
ship our ancient release... I see something in preinst for
amd64/w8 on qxldod [0]. Vadim, does virtio-win build/sign qxldod for
some Windows releases with fixes?

[0] 
https://fedorapeople.org/groups/virt/unattended/drivers/preinst/virtio-win/0.1.225/amd64/w8/

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] How to compile spice-vd_agent?

2023-02-07 Thread Victor Toso
Hi,

On Tue, Feb 07, 2023 at 05:10:53PM +0800, 王正浩 wrote:
> Hi Team,
> I'd like to build my own spice-vd_agent(for windows 10). Is
> there any guide to build it?  I failed to build it with
> mingw64 on ubuntu 20.04 and vs2019 on win10. 
> On windows it blocked by " LNK1181: cannot open input file
> zlibwapi.lib", and  on ubuntu it shows "configure: error:
> Package requirements (libpng) were not met:"

That means you need to install libpng mingw version.

> If I shouldn't ask this question here, Plz tell me the correct mail list.
> Thx a lot. 

You can ask, no problem.

In my Fedora 37 box, as of now, I had to install
mingw64-libpng-static and mingw64-zlib-static. Build steps:

$ autoreconf -if
$ mingw64-configure
...
vdagent-win 0.10.0.68-5017


prefix:   /usr/x86_64-w64-mingw32/sys-root/mingw
datadir:  /usr/x86_64-w64-mingw32/sys-root/mingw/share
compiler: x86_64-w64-mingw32-g++
cxxflags: -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions 
--param=ssp-buffer-size=4
cppflags:

   $ mingw64-make
...
   $ ll *.xe
.rwxr-xr-x@ 605k toso  7 Feb 13:45   -I  vdagent.exe*
.rwxr-xr-x@ 210k toso  7 Feb 13:45   -I  vdservice.exe*

   $ make msi
...
GEN  spice-vdagent-x64-0.10.0.68-5017.msi


Feel free to submit a documentation patch for build process ;)

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] In spicy, how to change shft-F12 to ungrab the mouse ?

2023-01-03 Thread Victor Toso
Hi,

On Tue, Jan 03, 2023 at 09:51:42AM +0100, Pierre Couderc wrote:
> Thank you very much.
> 
> But it does not work I get :
> 
> option parsing failed: Unknown option --hotkeys=release-cursor=ctrl+alt
> 
> Moreover,I find nowhere a :
> 
> man spicy

Spicy is not really meant to be used by final users. It is a
testing tool. It works but you should consider using
virt-viewer/remote-viewer instead.

> Le 1/3/23 à 09:06, Xiaodai Wang a écrit :
> > '--hotkeys' could do that. You may see the man page for the usage.
> > 
> > e.g.
> > --hotkeys=release-cursor=ctrl+alt
> > 
> > On Wed, Dec 28, 2022 at 5:11 PM Pierre Couderc  wrote:
> > 
> > Is is possible ? how ?

spicy runs a restore_configuration() function that loads a
settings file in $XDG_CONFIG_HOME/spicy/settings -- it might work
to just add, under "general" the grab-sequence="ctrl+alt"

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] spice-gtk: New v0.42 tag

2022-12-08 Thread Victor Toso
Hi Fabio,

On Wed, Dec 07, 2022 at 10:55:02AM -0300, Fabio Estevam wrote:
> Hi,
> 
> When is the v0.42 tag of the spice-gtk repo planned to be released?
> 
> I am asking because I would like to know if I add the following commit:
> 
> https://gitlab.freedesktop.org/spice/spice-gtk/-/commit/4dbe0da23f0f4d581f61798ec2a8eee92afd1779
> 
> as a patch to the v0.41 recipe in OpenEmbedded or if I wait until v0.42 is 
> out.
> 
> Please advise.

I'll cut a release before the end of next week. I'll see if I can
address some other issues the next few days first.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Vdagent not working on a Debian guest

2022-11-23 Thread Victor Toso
Hi,

On Tue, Oct 18, 2022 at 06:40:22PM +0100, Frediano Ziglio wrote:
> Il giorno mar 18 ott 2022 alle ore 01:04 Carlos González
>  ha scritto:
> >
> > Were you able to find something by chance? Thanks.
> >
>
> Hi Carlos,
>my main curiosity was about the need of the agent for resize.
> I did some tests and with both Windows and Linux it appears that the
> agent is needed.

Just to clarify, setting arbitrary resolution works through
client <-> guest agent messages. When the guest has the
capability (since RHEL7), spice-server reacts to that message,
pass it along to QEMU which interrupts the guest' kernel with the
resolution change.

IIRC, windows guest agent is the one to set the resolution
indeed.

Either way, for both Win and Linux guests, the agent is needed
indeed.

Cheers,
Victor

> At this point I would try looking at the agent logs.
> Is your system using Xorg or Wayland ?
> 
> Regards,
>Frediano
> 
> > El sáb, 15 oct 2022 a las 9:22, Frediano Ziglio () 
> > escribió:
> >>
> >> Il giorno ven 14 ott 2022 alle ore 16:11 Carlos González
> >>  ha scritto:
> >> >
> >> > As soon as spice-vdagent package is installed, so is the spice-vdagentd 
> >> > daemon and it also starts running. Yet I always need to manually run 
> >> > spice-vdagent command...
> >> >
> >>
> >> Maybe you would need to logout and login again from the graphic
> >> session. Or manually start it, not sure.
> >>
> >> > How do I specify an output directory for the agent to file transfer?
> >> >
> >>
> >> See "spice-vdagent --help", specifically -f and -o options.
> >>
> >> > I don't think it's remote-viewer's fault, because I also tested with a 
> >> > Windows guest. With all SPICE stuff properly installed, everything works 
> >> > out of the box: clipboard, resizing, file transfer from host to guest. 
> >> > With "properly installed" I mean: installed SPICE drivers manually from 
> >> > virtio-win ISO by loading them since the Windows installation 
> >> > beforehand, then once booted into Windows downloaded the vdagent ZIP 
> >> > from spice-space website and manually installed the service according to 
> >> > instructions.
> >> >
> >>
> >> I'll check, maybe is not handled by driver but agent
> >>
> >> > As additional detail, in QEMU I use the option "-display spice-app", 
> >> > which automatically starts remote-viewer; though curiously it doesn't 
> >> > seem to create a virt-viewer directory inside ~/.config unlike when 
> >> > running remote-viewer manually...
> >> >
> >> > Thanks again.
> >> >
> >> > El vie, 14 oct 2022 a las 12:41, Frediano Ziglio () 
> >> > escribió:
> >> >>
> >> >> Il giorno gio 13 ott 2022 alle ore 16:58 Carlos González
> >> >>  ha scritto:
> >> >> >
> >> >> > Hello.
> >> >> >
> >> >> > I'm trying a virtual machine with a live CD distribution called AntiX 
> >> >> > Linux, which is directly based on Debian.
> >> >> >
> >> >> > I'm using direct QEMU commands.
> >> >> > In the VM configuration I have this for SPICE configuration:
> >> >> > "-vga qxl -device virtio-serial-pci -spice 
> >> >> > unix=on,addr=path/to/vm_spice.socket,disable-ticketing=on -chardev 
> >> >> > spicevmc,id=spicechannel0,name=vdagent -device 
> >> >> > virtserialport,chardev=spicechannel0,name=com.redhat.spice.0 \"
> >> >> > Then I boot the live ISO, double check that QXL driver is installed 
> >> >> > -which normally always is-, and install spice-vdagent package 
> >> >> > (version 20 here). I'm using remote-viewer (virt-viewer) to visualize 
> >> >> > the VM.
> >> >> >
> >> >> > Up to this point, clipboard sharing with host still doesn't work, and 
> >> >> > trying to drag a file from host to guest results in an error "The 
> >> >> > agent is not connected".
> >> >> >
> >> >>
> >> >> This error is normal if the agent is stopped.
> >> >>
> >> >> > So I manually run "spice-vdagent" command, and clipboard sharing now 
> >> >> > works, but trying to drag file from host to guest gives "File 
> >> >> > transfer is disabled". Also, automatic resolution change with window 
> >> >> > resizing doesn't work either.
> >> >> >
> >> >>
> >> >> The fact that in this way the clipboard is running indicates that the
> >> >> agent is now working. You need to specify an output directory to the
> >> >> agent in order to get file transfer working.
> >> >> About the resolution change that's weird, I think that feature on
> >> >> Linux does not even require the agent running. Is it possible that the
> >> >> client (remove-viewer) is not set up to send resize to the guest
> >> >> automatically, there are some options on the menu.
> >> >>
> >> >> > Certainly, this live distro doesn't come with any spice-related 
> >> >> > packages installed by default, except for the QXL package.
> >> >> >
> >> >> > Am I missing something here? Could someone help please?
> >> >> > Thanks beforehand.
> >> >>
> >> >> Frediano
> 


signature.asc
Description: PGP signature


Re: [Spice-devel] Vdagent not working on a Debian guest

2022-11-23 Thread Victor Toso
Hi,

On Mon, Oct 31, 2022 at 11:52:15PM +, Carlos González wrote:
> After trying it yet again, quoting myself:
> >>As already mentioned, the -f and -o options are serving of absolutely
> nothing
>
> Repeat: *absolutely nothing*
> Same any other directory
>
> Spice-vdagent's logs say nothing at all.
>
> The only ones saying something are remote-viewer and qemu-monitor: "file
> transfer is disabled".
>
> Will you ask me to repeat myself some more times?
> Thanks for that

...

> El jue, 27 oct 2022 a las 16:55, Uri Lublin () escribió:
> >>> Now, could we focus on the nasty bug with file
> >>> transferring? As already mentioned, the -f and -o options
> >>> are serving of absolutely nothing...

Just to clarify, the file transfer process is a client <-> guest
message, that means that you could be having a problem in your
client machine and/or in the guest machine.

I recall reading that you had an agent not connected type of
error in the client, which means any feature needing the agent
would not work. I assume that this is been solved, otherwise you
wouldn't get arbitrary resolution working.

Could you please check what remote-viewer --spice-debug outputs
when you try to drag a file in the client machine?

At the same time, if you could have both logs from spice-vdagentd
(which receives spice client's messages) and spice-vdagent (which
is the one that copies the data to destination, that should
either be glib's G_USER_DIRECTORY_DESKTOP or
G_USER_DIRECTORY_DOWNLOAD), that would make it easy to pinpoint
the issue.

From the other threads, I see that you can run the agent's with
debug command line option. The only other thing that I'd mention
is that permissions/paths play their own role in making things
work, but the logs should point to the right direction.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] 答复: 答复: The second client cannot redirect USB

2022-11-23 Thread Victor Toso
Hi,

On Wed, Nov 23, 2022 at 01:19:10PM +, 韩雪峰 wrote:
> Hi Victor,
>
> Thanks for your solution. I just find 'usbredirtestclient' in
> usbredir project, the client has the feature connect to
> server(QEMU),  and it could connect to server successfully, but
> I cannot find how to redirect usb device from client to VM. It
> seems that I need to write some code to redirect USB with
> usbredir, right ?

usbredirtestclient is a testing client, not what you want.

Try usbredirect binary from usbredir-tools package (Fedora 37):
https://koji.fedoraproject.org/koji/buildinfo?buildID=2088721

Or just compile usbredir project and test it out:

$ git clone https://gitlab.freedesktop.org/spice/usbredir.git
$ cd usbredir
$ meson . build -Dtools=enabled
$ ninja -C build
$ sudo ./build/tools/usbredirect --to localhost:5550 --device 8644:8003

Cheers,
Victor

>
> Thanks and Regards,
> Xuefeng
> 
> 
> -邮件原件-
> 发件人: Victor Toso  
> 发送时间: 2022年11月22日 16:45
> 收件人: 韩雪峰 
> 抄送: Frediano Ziglio ; spice-devel@lists.freedesktop.org
> 主题: Re: [Spice-devel] 答复: The second client cannot redirect USB
> 
> Hi,
> 
> On Mon, Nov 21, 2022 at 08:44:49AM +, 韩雪峰 wrote:
> > Hi,
> > Thanks for your reply. But If I want to support multiple channels for 
> > USB redirection when multiple clients connect to a same VM,  do you 
> > know which project includes the code about USB
> > channels ?   Spice ? or QEMU?
> 
> As Frediano pointed out, USB redirection with SPICE is bounded to the first 
> connected SPICE client.
> 
> You can reconfigure your VM to have a TCP backend for your USB devices, the 
> libvirt change would look like this:
> 
> 
> 
> 
> 
> 
> 
> And then, you can use usbredirect (from usbredir project) to redirect USB 
> devices from multiple clients.
> 
> Note that this is will use plain usbredir protocol over TCP, it isn't secure 
> channel like what SPICE provides.
> 
> Cheers,
> Victor
> 
> > Thanks and Regards,
> > Xuefeng
> >
> > 发件人: Frediano Ziglio 
> > 发送时间: 2022年11月18日 20:52
> > 收件人: 韩雪峰 
> > 抄送: spice-devel@lists.freedesktop.org
> > 主题: Re: [Spice-devel] The second client cannot redirect USB
> >
> > Il giorno ven 18 nov 2022 alle ore 10:21 韩雪峰 
> > mailto:hanxuef...@360.cn>> ha scritto:
> > Hello,
> >
> >When I used two client to connect to a same one VM by spice
> >with setting “SPICE_DEBUG_ALLOW_MC=1”, the two clients
> >worked, and the first client could redirect USB. However,
> >the second client could not redirect USB device, It shows
> >like the picture: [cid:image001.png@01D8FDC6.C4D82080]
> > 
> > I’m sure that there’re enough channels for USB redirection.
> > 
> > Is this a problem? Or Is there any way that could resolve the second 
> > client’s USB redirection problem?
> > 
> > Thanks and Regards,
> > 
> > Xuefeng
> > 
> > Currently all character device channels (including USB one) do not support 
> > multiple channels, so the first client takes them all.
> > 
> > Frediano
> 
> 


signature.asc
Description: PGP signature


Re: [Spice-devel] 答复: The second client cannot redirect USB

2022-11-22 Thread Victor Toso
Hi,

On Mon, Nov 21, 2022 at 08:44:49AM +, 韩雪峰 wrote:
> Hi,
> Thanks for your reply. But If I want to support multiple
> channels for USB redirection when multiple clients connect to a
> same VM,  do you know which project includes the code about USB
> channels ?   Spice ? or QEMU?

As Frediano pointed out, USB redirection with SPICE is bounded to
the first connected SPICE client.

You can reconfigure your VM to have a TCP backend for your USB
devices, the libvirt change would look like this:







And then, you can use usbredirect (from usbredir project) to
redirect USB devices from multiple clients.

Note that this is will use plain usbredir protocol over TCP, it
isn't secure channel like what SPICE provides.

Cheers,
Victor

> Thanks and Regards,
> Xuefeng
>
> 发件人: Frediano Ziglio 
> 发送时间: 2022年11月18日 20:52
> 收件人: 韩雪峰 
> 抄送: spice-devel@lists.freedesktop.org
> 主题: Re: [Spice-devel] The second client cannot redirect USB
>
> Il giorno ven 18 nov 2022 alle ore 10:21 韩雪峰 
> mailto:hanxuef...@360.cn>> ha scritto:
> Hello,
>
>When I used two client to connect to a same one VM by spice
>with setting “SPICE_DEBUG_ALLOW_MC=1”, the two clients
>worked, and the first client could redirect USB. However,
>the second client could not redirect USB device, It shows
>like the picture: [cid:image001.png@01D8FDC6.C4D82080]
> 
> I’m sure that there’re enough channels for USB redirection.
> 
> Is this a problem? Or Is there any way that could resolve the second client’s 
> USB redirection problem?
> 
> Thanks and Regards,
> 
> Xuefeng
> 
> Currently all character device channels (including USB one) do not support 
> multiple channels, so the first client takes them all.
> 
> Frediano




signature.asc
Description: PGP signature


Re: [Spice-devel] Userquestion - remote-viewer connection fails with "Connection type could not be determined by URI"

2022-11-18 Thread Victor Toso
; > At a loss for words,
> > >> >
> > >> > Stefan
> > >> >
> > >>
> > >> Well, problem solved :-)
> > >>
> > >> I would check with a command like "history | grep spice | hexdump -C"
> > >> (you can post the output) for some weird input. The errors you
> > >> reported are basically (or at least they should) parsing errors for
> > >> the URI you passed.
> > >>
> > >> Frediano
> > >>
> > >>
> > >>
> > >> > Am Do., 17. Nov. 2022 um 10:30 Uhr schrieb Stefan Silberstein <
> > linuxst...@gmail.com>:
> > >> >>
> > >> >> Some details:
> > >> >> Operating System: Kubuntu 22.04
> > >> >> KDE Plasma Version: 5.24.6
> > >> >> KDE Frameworks Version: 5.92.0
> > >> >> Qt Version: 5.15.3
> > >> >> Kernel Version: 5.15.0-53-generic (64-bit)
> > >> >> Graphics Platform: X11
> > >> >> Processors: 8 × AMD Ryzen 5 1500X Quad-Core Processor
> > >> >> Memory: 15.6 GiB of RAM
> > >> >> Graphics Processor: NVIDIA GeForce GTX 1050 Ti/PCIe/SSE2
> > >> >>
> > >> >> Opening a Konsole "bash":
> > >> >>
> > >> >> Konsole
> > >> >> Version 21.12.3
> > >> >>
> > >> >>
> > >> >> Locale:
> > >> >>
> > >> >> stony@Aperture-Science:~$ locale LANG=de_DE.UTF-8 LANGUAGE=
> > LC_CTYPE="de_DE.UTF-8" LC_NUMERIC="de_DE.UTF-8" LC_TIME="de_DE.UTF-8"
> > LC_COLLATE="de_DE.UTF-8" LC_MONETARY="de_DE.UTF-8"
> > LC_MESSAGES="de_DE.UTF-8" LC_PAPER="de_DE.UTF-8" LC_NAME="de_DE.UTF-8"
> > LC_ADDRESS="de_DE.UTF-8" LC_TELEPHONE="de_DE.UTF-8"
> > LC_MEASUREMENT="de_DE.UTF-8" LC_IDENTIFICATION="de_DE.UTF-8" LC_ALL=
> > >> >>
> > >> >> I will try to open it today at noon - during my lunch break.
> > >> >> (ATM I am glad it works because i gotta work from home and this
> > windows-machine is the only way to connect to the Server in my company for
> > me)
> > >> >>
> > >> >> I will get back to you in approximately two hours.
> > >> >>
> > >> >> Stefan
> > >> >>
> > >> >> Am Do., 17. Nov. 2022 um 10:18 Uhr schrieb Frediano Ziglio <
> > fredd...@gmail.com>:
> > >> >>>
> > >> >>> Il giorno gio 17 nov 2022 alle ore 09:13 Stefan Silberstein
> > >> >>>  ha scritto:
> > >> >>> >
> > >> >>> > Hi,
> > >> >>> >
> > >> >>> > no this is the normal forward-slash with "shift+7" on the german
> > keyboard - googlemail messed it up translating it to something else.
> > >> >>> > The URL  is normally typed.
> > >> >>> >
> > >> >>> > This is really weird and I will try to help you as much as I can
> > to get to the bottom of it.
> > >> >>> >
> > >> >>> > Stefan
> > >> >>> >
> > >> >>>
> > >> >>> That's pretty weird. That code has been there for ages. I tried but
> > no
> > >> >>> problems for me.
> > >> >>> This operating system and version are you using?
> > >> >>> Which shell?
> > >> >>> Maybe it's the locale? Try launching something like "LANG=C
> > >> >>> remote-viewer spice://192.168.178.51:5900" (LANG environment
> > change)
> > >> >>>
> > >> >>> Frediano
> > >> >>>
> > >> >>> > Am Do., 17. Nov. 2022 um 10:08 Uhr schrieb Frediano Ziglio <
> > fredd...@gmail.com>:
> > >> >>> >>
> > >> >>> >> Il giorno gio 17 nov 2022 alle ore 07:57 Stefan Silberstein
> > >> >>> >>  ha scritto:
> > >> >>> >> >
> > >> >>> >> > Hello again,
> > >> >>> >> >
> > >> >>> >> > so - yesterday I worked from home - as I wrote I was able to
> > connect by specifying the user root wit

Re: [Spice-devel] Agent crashes on Alpine Linux guest due to lack of /dev/uinput

2022-11-17 Thread Victor Toso
Hi,

Sorry the delay, I've been away :)

On Sun, Nov 06, 2022 at 07:02:12AM +, let-me-use-copy-and-paste wrote:
> I installed Alpine Linux 3.16 virtual machine edition on
> QEMU/KVM using Virt-Manager. I installed XFCE on it. I wanted
> to enable copy-and-paste, so I tried to install spice-vdagent
> on it, but it kept crashing. I checked the output using the
> "-x" parameter, and basically, it crashed due to the lack of
> /dev/uinput. The screenshot is
> at https://i.imgur.com/9WKaVG8.png
>
> I do not know Linux much, so I am not sure if /dev/uinput is
> not present due to the settings of the virtual machine or
> because I have not installed something on Alpine Linux. I tried
> the standard edition of Alpine, and right after the
> installation, /dev/uinput was not present.
>
> In case that Alpine Linux indeed does not support /dev/uinput,
> can't the spice service run anyway? All I want is text
> copy-and-paste between the host and the guest, and does that
> feature need /dev/uinput?


Well, seems that they do build uinput.ko


https://pkgs.alpinelinux.org/contents?file=uinput.ko&path=&name=linux-vanilla&branch=v3.4&repo=main&arch=x86_64

It might be a matter of installing the right package and/or
modprobe uinput

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Userquestion - remote-viewer connection fails with "Connection type could not be determined by URI"

2022-11-16 Thread Victor Toso
On Wed, Nov 16, 2022 at 09:27:21AM +0100, Stefan Silberstein wrote:
> I appreciate the time to answer me.
>
> In the meantime (out of desperation because i needed the virtualmachine for
> work) I gave it a go with specifying root as user and not the servers
> username "server".
>
> I was able to connect to the virtual Windows10 installation with
>
> remote-viewer spice://root@192.168.178.51:5900

Cool

> But again - then I dont unterstand why it worked as user and
> later on with specifying the user later on (which doesn't work
> right now anymore)
>
> So it is a permissions problem on my side and I successfully
> wasted your time. :/
>
> Sorry about that.

Don't worry about that. Happy to hear it worked.

>
> This happens when "users" try to play with the big boys toys :D
>
> Have a nice day you all and thanks for your time.

You too.
Cheers,

>
> Stefan
> 
> Am Mi., 16. Nov. 2022 um 09:21 Uhr schrieb Victor Toso <
> victort...@redhat.com>:
> 
> > Hi Stefan,
> >
> > On Tue, Nov 15, 2022 at 09:53:05PM +0100, Stefan Silberstein wrote:
> > > Hello developers,
> > >
> > > I can imagine that this will be an annoying question for you -
> > > so I apologize in advance.
> > >
> > > I am a user - with a longer history with linux BUT i am
> > > completely new to virtualization.
> > > Due to the fact that I got a server donated to me I wanted to
> > > give it a go and it worked like a charm.
> > >
> > > Installed virt-manager, installed Windows10  connected with
> > > virt-manager - absolutely no problem.
> > >
> > > Due to the fact that I need dual monitors I learned that I
> > > could add another display and connect with spice - and it
> > > worked immediately.
> > >
> > > BUT - without me changing anything (consciously) I wasn't able
> > > to connect to the virtual machine the next week.
> > >
> > > It refuses with "Verbindungstyp konnte nicht von URI ermittelt werden"
> > > (Connection type could not be determined by URI)
> > >
> > > Then i tried to connect with sudo and specifying the user in
> > > the command line and it once again connected:
> > >
> > > sudo remote-viewer  spice:⁄⁄server@192.168.178.51:5900
> >
> > Perhaps the URL is the problem. If the IP is 192.168.178.51 and
> > the port for the VM is 5900, then try
> >
> > remote-viewer spice://192.168.178.51:5900
> >
> > If server is a dns that can be resolved, should be fine to use it
> > instead of ip address
> >
> > remote-viewer spice://server:5900
> >
> >
> > > And now - again without changing anything - it doesn't connect
> > > with that command as well.
> > >
> > > I have sadly NO clue whatsoever where to even search for a
> > > solution - the internet didn't help me here...
> > >
> > > Do you have any hint at all what I might do wrong here?
> > >
> > > The machine is available - the port is open and visible
> > > PORT STATE SERVICE
> > > 22/tcp   open  ssh
> > > 80/tcp   open  http
> > > 3389/tcp open  ms-wbt-server
> > > 5900/tcp open  vnc
> > >
> > > ufw on the server is shut down.
> > >
> > > ANY help would be greatly appreciated.
> >
> > You can get more verbose information of issues with --spice-debug
> > command line option too.
> >
> > Cheers,
> > Victor
> >


signature.asc
Description: PGP signature


Re: [Spice-devel] Userquestion - remote-viewer connection fails with "Connection type could not be determined by URI"

2022-11-16 Thread Victor Toso
Hi Stefan,

On Tue, Nov 15, 2022 at 09:53:05PM +0100, Stefan Silberstein wrote:
> Hello developers,
>
> I can imagine that this will be an annoying question for you -
> so I apologize in advance.
>
> I am a user - with a longer history with linux BUT i am
> completely new to virtualization.
> Due to the fact that I got a server donated to me I wanted to
> give it a go and it worked like a charm.
>
> Installed virt-manager, installed Windows10  connected with
> virt-manager - absolutely no problem.
>
> Due to the fact that I need dual monitors I learned that I
> could add another display and connect with spice - and it
> worked immediately.
>
> BUT - without me changing anything (consciously) I wasn't able
> to connect to the virtual machine the next week.
>
> It refuses with "Verbindungstyp konnte nicht von URI ermittelt werden"
> (Connection type could not be determined by URI)
>
> Then i tried to connect with sudo and specifying the user in
> the command line and it once again connected:
>
> sudo remote-viewer  spice:⁄⁄server@192.168.178.51:5900

Perhaps the URL is the problem. If the IP is 192.168.178.51 and
the port for the VM is 5900, then try

remote-viewer spice://192.168.178.51:5900

If server is a dns that can be resolved, should be fine to use it
instead of ip address

remote-viewer spice://server:5900


> And now - again without changing anything - it doesn't connect
> with that command as well.
>
> I have sadly NO clue whatsoever where to even search for a
> solution - the internet didn't help me here...
>
> Do you have any hint at all what I might do wrong here?
>
> The machine is available - the port is open and visible
> PORT STATE SERVICE
> 22/tcp   open  ssh
> 80/tcp   open  http
> 3389/tcp open  ms-wbt-server
> 5900/tcp open  vnc
>
> ufw on the server is shut down.
>
> ANY help would be greatly appreciated.

You can get more verbose information of issues with --spice-debug
command line option too.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] spice webdav proxy

2022-10-04 Thread Victor Toso
Hi,

On Fri, Sep 30, 2022 at 11:38:12AM +, Yury A. Produnov wrote:
> Hello.
> I installed spice-webdavd-latest inside the guest.
> Everything works and the drive connects with the letter Z:/
> But I need to change the letter to W:/
> If I use the map-drive.bat script I get two identical drives with different 
> letters.
> Please help me to configure it.
>
> Best regards,
> Yuriy Produnov

If I recall correctly [0], the latest spice-webdavd should map to the
next letter available (since v2.1).

Looking briefly at `REG ADD` [1] of map-drive.bat, not sure what
is the correct argument to chose a target driver name, if
possible... I think you would need another command to map "Spice
client" to a "W:/".

[0] 
https://gitlab.gnome.org/GNOME/phodav/-/commit/13151735cb97bc4e95deb72597c1024d139504e3
[1] 
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/reg-add

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] [PATCH] unhide cursor if pos_x is negative

2022-09-09 Thread Victor Toso
Hi,

On Tue, Sep 06, 2022 at 08:37:15AM +0100, Frediano Ziglio wrote:
> Il giorno mar 6 set 2022 alle ore 06:03 qi zhou  ha 
> scritto:
> >
> > From e1cb184f71e698509c5ae50c20c687130325da52 Mon Sep 17 00:00:00 2001
> > From: Qi Zhou 
> > Date: Tue, 6 Sep 2022 12:14:49 +0800
> > Subject: [PATCH] unhide cursor if pos_x is negative
> >
> > It is valid if position of cursor is negative(not hotspot coordinates). for
> > example: precision section, resize, move, north east arrow...
> >
> > Signed-off-by: Qi Zhou 
> > ---
> >  qxldod/QxlDod.cpp | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/qxldod/QxlDod.cpp b/qxldod/QxlDod.cpp
> > index 341518e..f498115 100755
> > --- a/qxldod/QxlDod.cpp
> > +++ b/qxldod/QxlDod.cpp
> > @@ -4920,7 +4920,7 @@ NTSTATUS QxlDevice::SetPointerPosition(_In_ CONST 
> > DXGKARG_SETPOINTERPOSITION* pS
> >  return STATUS_INSUFFICIENT_RESOURCES;
> >  }
> >
> > -if (pSetPointerPosition->X < 0 || !pSetPointerPosition->Flags.Visible) 
> > {
> > +if (!pSetPointerPosition->Flags.Visible) {
> >  cursor_cmd->type = QXL_CURSOR_HIDE;
> >  } else {
> >  cursor_cmd->type = QXL_CURSOR_MOVE;
> > --
> > 2.32.0.windows.2
> >
> Hi,
>merged.
>
> Now the issue is getting it compiled and signed. Uri, Victor,
> can somebody do it?

Sorry, I don't know the process but I hope it is still doable (to
get it signed).

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] qxldod driver for Windows 11

2022-09-03 Thread Victor Toso
t; and options for Windows 95/98/XP. Yes, you read well, Windows XP...
> > which was declared unsupported 12 years ago! At that time OSes relay
> > to the GPU plenty of complex 2D commands. Nowadays most OSes (if not
> > all but surely Linux, Windows and Mac) use 3D commands for everything,
> > and many brushes, raster operations and similars are long since gone.
> > Taken all that into account, with a modern OS the commands QXL and
> > virtio-gpu use are basically the same.
> >
> > > Thanks for killing the project.
> > >
> >
> > Now let's get back to the less technical.
> > Beside reiterating that pointing fingers to Victor is not fair nor kind...
> > Yes, SPICE was, company wise, well founded and supported by Red Hat
> > (which _had_ a specific team for it). After RedHat was acquired by IBM
> > some investments were moved from desktop side to the cloud. More or
> > less RedHat/IBM thinks that spending money on Linux desktop is not
> > worth much. That includes SPICE, Virgl and Windows drivers but others.
> >
> > Regards,
> >   Frediano
> >
> > > El vie, 2 sept 2022 a las 6:53, Victor Toso ()
> > escribió:
> > >>
> > >> Hi Carlos,
> > >>
> > >> On Fri, Sep 02, 2022 at 12:08:04AM +, Carlos González wrote:
> > >> > I downloaded latest virtio-win ISO, and by browsing it I
> > >> > noticed that, unlike the other drivers, for the qxldod one
> > >> > there's only up to win10, and no explicit win11 versions.
> > >> >
> > >> > Does this mean that there are no drivers for Windows 11, and no
> > >> > possibility of setting up a VM with full SPICE support?
> > >> >
> > >> > Thanks beforehand.
> > >>
> > >> You are correct, the last cycle of development was focused for
> > >> windows 10.
> > >>
> > >> I expect windows 11 to maintain some compatibility with windows
> > >> 10 so the drivers should work to some extent but I did not test
> > >> it.
> > >>
> > >> I'd not hope for further development on qxl unless there is
> > >> someone interested in investing time on it (and it would take
> > >> some time).
> > >>
> > >> I'd instead switch to virtio-vga / virtio-gpu as this seems to
> > >> have an active community.
> > >>
> > >> https://github.com/virtio-win/kvm-guest-drivers-windows
> > >>
> > >> Cheers,
> > >> Victor
> >


signature.asc
Description: PGP signature


Re: [Spice-devel] qxldod driver for Windows 11

2022-09-03 Thread Victor Toso
Hi Carlos,

On Fri, Sep 02, 2022 at 09:23:35PM +, Carlos González wrote:
> So the "rumors" are true: you (in general) really did
> discontinue/kill the qxl drivers, if not the entire SPICE
> project soon. Was it because IBM?  Since being sold to them the
> first one to die was Centos, now this...

This sums up the rationale:
https://bugzilla.redhat.com/show_bug.cgi?id=2030592#c4

> FYI:
> https://gist.github.com/pojntfx/b860e123e649504bcd298aa6e92c4043#file-main-sh-L32
> https://lists.freedesktop.org/archives/virglrenderer-devel/2021-January/001897.html
> virtio-gpu implies virgl, and currently only works on Linux guests;

Ah, yes you are correct.

> RedHat people explicitly deemed the Windows work "not worthy".

Well, I know for a fact that was not true for SPICE. Specifically
talking about virgl you can see Marek's talk to get a rough idea:

Virgil and Windows: A True Romance - DevConf.CZ 2020
https://www.youtube.com/watch?v=aBgYNDLXuyg

> Thanks for killing the project.

You can raise your concern to any company that might benefit
working on SPICE. It is open source. There are still people
interested to help and keep things working, but not quite to an
enterprise level (at the moment).

I'd honestly say that what kills an open source project is to not
have a healthy, diverse and collaborative community. I like to
think we have tried to have that.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] qxldod driver for Windows 11

2022-09-01 Thread Victor Toso
Hi Carlos,

On Fri, Sep 02, 2022 at 12:08:04AM +, Carlos González wrote:
> I downloaded latest virtio-win ISO, and by browsing it I
> noticed that, unlike the other drivers, for the qxldod one
> there's only up to win10, and no explicit win11 versions.
>
> Does this mean that there are no drivers for Windows 11, and no
> possibility of setting up a VM with full SPICE support?
>
> Thanks beforehand.

You are correct, the last cycle of development was focused for
windows 10.

I expect windows 11 to maintain some compatibility with windows
10 so the drivers should work to some extent but I did not test
it.

I'd not hope for further development on qxl unless there is
someone interested in investing time on it (and it would take
some time).

I'd instead switch to virtio-vga / virtio-gpu as this seems to
have an active community.

https://github.com/virtio-win/kvm-guest-drivers-windows

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] [PATCH x11spice] Call xf86SetDesiredModes() in DUMMYScreenInit().

2022-08-23 Thread Victor Toso
Hi,

On Tue, Aug 23, 2022 at 11:39:52AM +0200, Henri Verbeet wrote:
> Otherwise, we may end up with no mode (and thus no refresh rate) set if
> nothing else (like e.g. .xinitrc) sets a mode for us.
>
> Signed-off-by: Henri Verbeet 
> ---
>  spice-video-dummy/src/spicedummy_driver.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/spice-video-dummy/src/spicedummy_driver.c 
> b/spice-video-dummy/src/spicedummy_driver.c
> index 8d8ba48..0ed7f8c 100644
> --- a/spice-video-dummy/src/spicedummy_driver.c
> +++ b/spice-video-dummy/src/spicedummy_driver.c
> @@ -632,6 +632,8 @@ DUMMYScreenInit(SCREEN_INIT_ARGS_DECL)
>
>  if (!xf86CrtcScreenInit(pScreen))
>  return FALSE;
> +if (!xf86SetDesiredModes(pScrn))
> +return FALSE;
>
>  xf86DPMSInit(pScreen, xf86DPMSSet, 0);

My knowledge in this area is quite limited but as far as I can
see, this change looks fine.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Windows Spice Guest Tools Silent Install Found

2022-08-21 Thread Victor Toso
Hi,

On Fri, Aug 19, 2022 at 07:16:04PM +, Jonathon Bauer wrote:
> Hi Spice Devs,
>
> I figured out a way to run the Windows spice guest tools
> installer silently, enabling automated deployment. Just run the
> installer as System, and add the /S switch (case sensitive). I
> posted more details on Reddit here:
> https://www.reddit.com/r/qemu_kvm/comments/9ivlkp/spice_windows_guest_tools_silent_install/
>
> Please consider adding this to your documentation, so it's not
> so hard to find. Adding it to the Spice-Space download page,
> under the "Windows binaries" section may be a good place.

I think this is more useful when script unattended installations,
correct?

Feel free to drop a patch to our website's repo :)

https://gitlab.freedesktop.org/spice/spice-space-pages

Thanks,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] x11-spice equivalent for Windows

2022-08-21 Thread Victor Toso
Hi Jonathan,

On Fri, Aug 19, 2022 at 06:33:18PM +0200, Jonathan Winterflood wrote:
> Hello,
>
> We are using SPICE with Qemu with much success, but were
> wondering whether a solution similar to x11-spice exists for
> sharing an existing Windows system via SPICE (rather than then
> usual RDP/VNC, etc.), for use on e.g. bare metal, VirtualBox,
> Vmware, etc. that do not provide "normal" spice servers like
> Qemu does.

I'm not aware of anyone that has started such project. I think
that should be possible as spice-sever does build on windows and
can be enabled for windows build of QEMU.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] irc

2022-08-01 Thread Victor Toso
Hi,

CC'ing the list and Hans.

On Sat, Jul 30, 2022 at 02:55:53PM +0100, James Miller wrote:
> Hi Victor, thanks for getting back to me.
> Currently I have to echo 0 to the path under sys, and then
> manually select the device to redirect in virtmanager and then
> return to the terminal on the host and echo 1 to the same path.

Ah, okay, so it is a three-step process: echo 0 to $path, then
SPICE redirection, then echo 1 $path  if you want to do it
for several VMs for example, it should be very annoying.

> I don't mind this so much, but I have added the alias to the
> fedora help page on yubikeys, and was wondering if there is any
> programmatic way of achieving the redirection in the alias
> itself.  ie the alias would echo 0, handle the redirection, and
> then echo 1...

I don't have such device to test but I wonder why that is needed
at all. What is the path you have to echo? Perhaps that can be
achievable in a different way with with libusb or some specific
driver's config that will get called when SPICE's redirection
takes place.

Hans, have you tried this kind of device before?

> I wondered if spice exposed a useful set of commands to achieve
> this with, perhaps via the spice-vdagentd socket... (I
> obviously know virtually nothing about how spice works...)...

No, no API like that is exposed because for the set of devices
we redirect, it isn't needed. Let's see if we can workaround this
in the client OS first (e.g: configs) otherwise we can think
something in spice-gtk (probably QEMU too if you try to usb
pass through?)

Cheers,
Victor

> On Fri, 29 Jul 2022, 10:48 Victor Toso,  wrote:
>
> > Hi,
> >
> > On Fri, Jul 29, 2022 at 09:56:21AM +0100, James Miller wrote:
> > > Hi,  I wonder if the irc address on the website contact page (
> > > https://www.spice-space.org/contact.html) needs updating?
> > >
> > > I can't find irc.gnome.org - I think they now use matrix.
> > >
> > > I want to know if there is anyway to manage usb-redirection
> > > to a libvirt kvm vm from the command line.  In particular,
> > > I want to redirect a usb key (yubikey) to the virt-manager
> > > managed vm, from the command line, as I need to deauthorise
> > > the key (echoing 0 to a file under a path below sys) before
> > > redirecting it.
> >
> > Ah, interesting, never tried this kind of device.
> >
> > Wouldn't it simply work if you do echo 0 and the do the
> > redirection with virt-manager or remote-viewer's UI?
> >
> > Cheers,
> > Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] irc

2022-07-29 Thread Victor Toso
Hi,

On Fri, Jul 29, 2022 at 09:56:21AM +0100, James Miller wrote:
> Hi,  I wonder if the irc address on the website contact page (
> https://www.spice-space.org/contact.html) needs updating?
> 
> I can't find irc.gnome.org - I think they now use matrix.
> 
> I want to know if there is anyway to manage usb-redirection to a libvirt
> kvm vm from the command line.  In particular, I want to redirect a usb key
> (yubikey) to the virt-manager managed vm, from the command line, as I need
> to deauthorise the key (echoing 0 to a file under a path below sys) before
> redirecting it.

Ah, interesting, never tried this kind of device.

Wouldn't it simply work if you do echo 0 and the do the
redirection with virt-manager or remote-viewer's UI?

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Spice, VDAgent, and Clipboard

2022-07-11 Thread Victor Toso
Hi Nick,

On Tue, Jul 05, 2022 at 03:33:33PM -0400, Nick Couchman wrote:
> On Sun, Jul 3, 2022 at 2:40 PM Nick Couchman  wrote:
> 
> > Then, once the clipboard is settled on the client side, I call
> > guac_main_channel_clipboard_selection_notify() to send the data along,
> > followed by guac_main_channel_clipboard_selection_release() to release the
> > previously-called grab:
> >
> > --
> > /* Send via VNC only if finished connecting */
> > if (spice_client->main_channel != NULL) {
> >
> > spice_main_channel_clipboard_selection_notify(spice_client->main_channel,
> > VD_AGENT_CLIPBOARD_SELECTION_CLIPBOARD,
> > VD_AGENT_CLIPBOARD_UTF8_TEXT,
> > (const unsigned char*) input,
> > spice_client->clipboard->length);
> >
> > spice_main_channel_clipboard_selection_release(spice_client->main_channel,
> > VD_AGENT_CLIPBOARD_SELECTION_CLIPBOARD);
> > }
> > --
> >
> >
> To answer my own question, this was the issue - apparently the
> call to spice_main_channel_clipboard_selection_release()
> actually clears the clipboard. Removing this call allows the
> clipboard from client (Guacamole) to Spice server to function
> properly. I'm not sure if there's anything that needs to be
> done to "ungrab" the clipboard after sending the data, or if it
> is done automatically?

IIRC, the "ungrab" on client-side should happen when the Widget
is not on focus anymore. I think it is fine to keep the "grab"
while the widget has focus.

There are several scenarios around this, so it can be a bit
tricky to understand/debug, specially the differences between X11
and Wayland. For example, the comment in owner_change's callback:


https://gitlab.freedesktop.org/spice/spice-gtk/-/blob/master/src/spice-gtk-session.c#L721

In the past, we used to have some race conditions that I'd bet
you should be hitting with your dev environment but, if you are
not, it should be thanks to the fixes for 

https://gitlab.freedesktop.org/spice/spice-gtk/-/issues/82

Thanks for your interest in SPICE, I'm looking forward to testing
Guacamole (the food I already love!) :)

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] How to make QXL capture the whole desktop area?

2022-07-11 Thread Victor Toso
Hi,

On Tue, Jul 05, 2022 at 02:42:23PM +0100, Frediano Ziglio wrote:
> Il giorno lun 4 lug 2022 alle ore 18:35 Walter Mitty
>  ha scritto:
> >
> > Hi guys,
> >
> > QXL generates bitmap data which is the updated area. If I wanna  make it 
> > capture the whole desktop area, is it possible?
> >
> > Yours,
> > Walter
> 
> 
> Hi,
>   it's not clear which component you are talking about. Usually data
> is generated by some userspace tool, passed to QXL driver (OS one)
> which potentially creates a bitmap and passes to Qemu/SPICE QXL. Yes,
> you can use QXL also to capture but usually you just ask the desktop
> manager of your OS to do the capture in a system-independent way, you
> don't need to use QXL specific requests.
> 
> Regards,
>   Frediano

From the host side you can also use "screendump" from QEMU over
QMP or even simpler, virsh screenshot  if you use
libvirt.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Issue: About how to config the resolution of monitor in spice-server

2022-07-11 Thread Victor Toso
Hi,

On Tue, Jul 05, 2022 at 05:07:03PM +0800, yuyang...@163.com wrote:
> 
> HI,
> 
> I am a user of spice,  I have a issue  to request your help.
> that,  when debuging spice-server, I want to dynamic config the resolution of 
> monitor。
> I debug it in  fuction  reds_on_main_agent_monitors_config  of
> red.c,   and   operated  some  sentence as
> monitors_config->monitors[0].height = 600; but this
> configuration  was  changed  at the next time. 
>  
> so ,which function  in  spice-server  could help to  solve this
> problem , or how  operating the fuction in spice-server , I
> cloud  adjust the  resolution of monitor at will.
> 
> thank you, very much! 

Why do you want to hard code this on host side? Wouldn't it be
fine if you set the Display size from the Guest and disabling
SPICE Client's auto-resizing?

What usually happens is that auto-resizing is enabled
("resize-guest" property of spice-gtk's spice-widget) and every
time client's widget changes its size, it sends the new monitor
message with new display size/state. Disabling this (which is the
default for spice-gtk), should be enough.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] spice

2022-06-24 Thread Victor Toso
Hi,

On Fri, Jun 24, 2022 at 01:57:01PM +0800, yip...@nfs-hlj.com wrote:
> Hi,Victor!
> Thank you for your prompt reply. 
> I have a hardware device. Because its display is decoded by
> hardware and only supports H264 mode data stream, it does not
> support other modes. I want to use it to use the spice
> protocol. I have been learning about spice recently to see if
> spice can be run on this hardware device.

I understand you have h264 hw decoded. Your VM is remote or
running in the same machine? Your VM is Windows or Linux?

The hardware decoding to h264 is not hard. The hardware encoding
in h264 is harder. Might be better nowadays but I haven't tested
and for sure the code in spice-server needs tweaks for hardware
encoding.

Cheers,
Victor

> From: Victor Toso
> Date: 2022-06-23 19:16
> To: yip...@nfs-hlj.com
> CC: spice-devel
> Subject: Re: spice
> Hi,
>  
> On Thu, Jun 23, 2022 at 02:15:23PM +0800, yip...@nfs-hlj.com wrote:
> > Hi,Victor Toso!
> > I am learning spice code recently. I have some doubts about
> > spice display channel. I hope to get your reply.
>  
> You got it. I'm cc'ing spice-devel list which is the best place
> to ask for help related to Spice.
>  
> > 1. How does spice distinguish between video transmission and
> > picture transmission.
>  
> If the server is configured for streaming [0], it'll decide to
> start a video encoding based on how many updates it is getting
> from the Guest. We had a demo about it ages ago:
>  
> https://www.youtube.com/watch?v=VUQYs72hrbM
>  
> > 2. in the process of video transmission, is it the number of
> > frames of all videos or the changing part of the transmitted
> > video.
>  
> Not sure I understand the question. The streaming will happen
> based on the amount of updates in a specific region of the
> Display. Let's say that you are playing a 720x360 video in a 4K
> display, only that region of the video is being updating too much
> and will be converted to a video stream. If you had two 720x360
> videos playing, that's where the options all/filter would change
> the behavior, I think. With one, you would get two video streams,
> with the other it'd combine them in both.
>  
> I'm talking from memory, so I might be wrong with some details.
>  
> Note that with most recent Desktop environments like GNOME or
> windows 10, there is a lot of 3D happening which is full screen,
> that means it is interesting to stream the whole desktop.
>  
> > 3. whether the transmission display can be configured to H264
> > mode.
>  
> It can, but it is software encoding. The default is the mjpeg
> encoder. H264, vp8/vp9 is using gstreamer and the code would most
> definitely need tweaks and tests to be considered for
> production... This is a heads up.
>  
> What is your use case?
>  
> [0] If using libvirt, that means setting  (or
> filter). See host video encoding at:
> https://www.spice-space.org/spice-user-manual.html
>  
> Cheers,
> Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] spice

2022-06-23 Thread Victor Toso
Hi,

On Thu, Jun 23, 2022 at 02:15:23PM +0800, yip...@nfs-hlj.com wrote:
> Hi,Victor Toso!
> I am learning spice code recently. I have some doubts about
> spice display channel. I hope to get your reply.

You got it. I'm cc'ing spice-devel list which is the best place
to ask for help related to Spice.

> 1. How does spice distinguish between video transmission and
> picture transmission.

If the server is configured for streaming [0], it'll decide to
start a video encoding based on how many updates it is getting
from the Guest. We had a demo about it ages ago:

https://www.youtube.com/watch?v=VUQYs72hrbM

> 2. in the process of video transmission, is it the number of
> frames of all videos or the changing part of the transmitted
> video.

Not sure I understand the question. The streaming will happen
based on the amount of updates in a specific region of the
Display. Let's say that you are playing a 720x360 video in a 4K
display, only that region of the video is being updating too much
and will be converted to a video stream. If you had two 720x360
videos playing, that's where the options all/filter would change
the behavior, I think. With one, you would get two video streams,
with the other it'd combine them in both.

I'm talking from memory, so I might be wrong with some details.

Note that with most recent Desktop environments like GNOME or
windows 10, there is a lot of 3D happening which is full screen,
that means it is interesting to stream the whole desktop.

> 3. whether the transmission display can be configured to H264
> mode.

It can, but it is software encoding. The default is the mjpeg
encoder. H264, vp8/vp9 is using gstreamer and the code would most
definitely need tweaks and tests to be considered for
production... This is a heads up.

What is your use case?

[0] If using libvirt, that means setting  (or
filter). See host video encoding at:
https://www.spice-space.org/spice-user-manual.html

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Code confusion: the difference between video_stream_trace_update() and video_stream_maintenance()

2022-04-19 Thread Victor Toso
Hi,

On Wed, Apr 13, 2022 at 03:06:24PM +0800, Walter Mitty wrote:
> Hello,
> I am learning spice-server source code. And i'm confusing the 2
> functions in `video-stream.cpp`: video_stream_trace_update /
> video_stream_maintenance.
> 
> There is a todo about it.
> Any suggestions please?

I think the TODO is also to clarify if and when functions were
needed and how to properly use them. I'd need to dive into it to
check. If you understand them, I'd appreciate if you submit a
documentation patch about it, I'd be happy to review your
findings.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Is there a good way to estimate the latency of spice?

2022-04-19 Thread Victor Toso
Hi,

On Thu, Apr 14, 2022 at 05:08:47PM +0800, Walter Mitty wrote:
> Hello everyone,
> During my experience of SPICE, I feel it is not fluent. So I
> wanna know the latency about interactivity and rendering. From
> my understanding, It may be the time from the moment draging an
> app-window to the moment that client rendering changes.
> Any suggestions will be appreciated.

Are you using video streaming settings?

In the demo below, we used a GTK's environment variable to show
what was being rendered in the client-side when an update was
done in the guest:

https://www.youtube.com/watch?v=VUQYs72hrbM&t=612s

Sending only the diff of updates worked pretty well in the past,
but it doesn't with Desktop Environments moving forward to 3D
rendering.

So, if you latency is about that, you can try to optimize by
setting 3d rending off in the guest. Video streaming helps a bit
with chopping videos and overall data bandwidth but it adds
further latency due software encoding on the server side.

> Regards,
> Walter.

I hope this helps, let me know if you have further questions.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Does SPICE support long time single touch to trigger right click action?

2022-04-19 Thread Victor Toso
Hi,

On Mon, Apr 18, 2022 at 11:32:26AM +0800, Walter Mitty wrote:
> As we all know, on windows 10 touch device, user can long touch
> to trigger right click. I found that it does not work on SPICE.
> My question is: Is this a SPICE BUG or some hidden features
> that enabled by some params? 
> Thanks in advance.

Spice client sends the events to Spice sever which handles it out
to QEMU to do the emulation part on the guest. That is, client
sends mouse_press and eventually mouse_release.

If this is not working, you can consider it a bug. Needs to track
it down in which component it'd be.

> Regards,
> Walter.

Sorry long delays on replying here.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Following audio device changes

2022-01-29 Thread Victor Toso
Hi Neal,

On Fri, Jan 28, 2022 at 01:48:17PM -0700, Neal Piche wrote:
> I am on macOS. Most applications are able to accept changes to
> the audio device from the system and output sound to that
> device.
> 
> I use QEMU, and if I leave spice extensions disabled, the guest
> OS is able to accept changes to the audio device multiple
> times. When I turn on spice extensions, QEMU will try to
> continue outputting sound to the original device. No matter
> what I change the output device to, it will keep whatever it
> had originally. I don't know if it is QEMU using spice
> incorrectly, a misconfiguration, or a bug in one of the spice
> packages.

I'm not sure I understood either. It is either what Frediano
asked or you are saying that QEMU is ignoring the preference to
redirect audio through Spice.

Note that, as far as I know, this kind of setting needs a
shutdown + start again to the VM, in order to change the audio
driver.

Either way, it should help if you provide the qemu command line
(of the setting you think there is a bug) and information on
which spice client are you using.

> Oh, I have tried with a Debian bullseye and Whonix guest with
> the same results.
> 
> Has anyone found a workaround? Should I file a bug, and if so where?

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] phodav build/run on OSX

2021-10-27 Thread Victor Toso
Hi,

On Tue, Oct 26, 2021 at 02:45:23PM -0700, John Paul Morrison wrote:
> Hi
> 
> This change is for building phodav on OSX/Darwin
> 
> I am able to build and run spice-webdavd on Catalina/Xcode using brew for
> meson, glib etc.
> 
> - meson defaults to clang and it builds with a warning. Clang
> spice-webdav runs but there are more warnings with G_MESSAGES_DEBUG=all.
> After a few file/folder operations my Spice client  (Fedora 34,
> remote-viewer 9.0) crashed
> 
> - Using CC=gcc-11 (homebrew) for meson builds without warnings.
> gcc spice-webdav logs fewer warnings at runtime and also works better.  I
> can copy files, extract archives etc.  It seems more robust than the clang
> build but I got a timeout trying to clone a repository into the webdav
> folder.
> 
> John Paul
> 
> 
> https://gitlab.gnome.org/jpmorrison/phodav/-/commit/ae9ac98c1b3db26070111661aba02594c62d2cef

Thanks for the updates John!

Cheers,


signature.asc
Description: PGP signature


Re: [Spice-devel] vdagent, pho-dav for Darwin/OSX?

2021-10-18 Thread Victor Toso
Hi,

On Mon, Oct 18, 2021 at 11:40:49AM -0700, John Paul Morrison wrote:
> Hi
> 
> I'm looking into vdagent and pho-dave for OSX and was wondering
> if anyone had started anything.

Not that I'm aware of.

> I have virtio serial interfaces passed through to the qemu OSX
> guest:
> 
> crw-rw-rw-  1 root  wheel   18,   4 Oct 18 04:10 /dev/tty.com.redhat.spice.0
> crw-rw-rw-  1 root  wheel   18,   2 Oct 18 04:10
> /dev/tty.org.qemu.guest_agent.0
> crw-rw-rw-  1 root  wheel   18,   0 Oct 18 04:10
> /dev/tty.org.spice-space.webdav.0
> 
> /usr/libexec/AppleQEMUGuestAgent opens /dev/tty.org.qemu.guest_agent.0 by
> default.
> 
> There's activity on the other ttys. When tty.com.redhat.spice.0
> is opened, remote-viewer releases the mouse and sends data with
> mouse activity.
> 
> I'm not sure where to get started - I thought maybe I could
> test some things in XQuartz first.  Hoping this can be done in
> user space.

Are you building vdagent with gtk? With gtk, we might be able to
get some features like clipboard, I hope.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] No mouse with nvidia driver (spice-vdagent not working)

2021-08-23 Thread Victor Toso
Hi,

On Mon, Aug 23, 2021 at 05:14:00PM +0300, ole-kru...@yandex.ru wrote:
> - nvidia vGPU with proprietary driver is the only video
> adapter.

This is a know issue. NVIDIA driver does not provide a guest
cursor. You can probably verify it with VNC too.

The proper fix is to NVIDIA implement this feature, otherwise all
we have is workarounds.

You can try running a spice-gtk based client like remote-viewer
with SPICE_DEBUG_CURSOR=1 as that might give you something
rendered in the client side.

You could also try to set "HWCursor" "off" in the xorg
configuration file.

> - spice-vdagent v.0.20 and qemu-guest-agent are installed.

You should try v0.21 as I recall people were doing work around
testing NVDIA and Wayland based systems, although I can't
pinpoint something that would fix the logs I see.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] WIP: usbredir rust bindings

2021-08-04 Thread Victor Toso
Hi,

On Tue, Aug 03, 2021 at 02:46:51PM +0400, Marc-André Lureau wrote:
> Hi
> 
> Just to let you know that I started a usbredir binding to Rust:
> https://gitlab.freedesktop.org/elmarco/usbredir-rs
> 
> Atm, it compiles with a custom rusb. I have some MR there (
> https://github.com/a1ien/rusb/pull/97 &
> https://github.com/a1ien/rusb/pull/101)
> 
> See the example:
> https://gitlab.freedesktop.org/elmarco/usbredir-rs/-/blob/main/usbredirhost/examples/usbredir.rs

Awesome work!

I'm actually in favor of moving usbredir codebase to Rust in the
future as it is not that big ~ 6k lines of code (usbredirhost and
usbredirparser).

> Atm, I pass an open fd with bash for testing, ex:
> exec 3<>/dev/tcp/localhost/
> target/debug/examples/usbredir '1050:0407' --fd 3
> 
> Next, it could be extended this with [--tcp host:port], [--unix path],
> [-l|--listen]. Then I suppose it will be close to
> https://gitlab.freedesktop.org/spice/usbredir/-/blob/master/tools/usbredirect.c
> 
> (Note that the Rust code doesn't use poll(), since it isn't portable. See
> https://libusb.sourceforge.io/api-1.0/group__libusb__poll.html#libusb_pollmain.
> The libusb/usbredir APIs don't make it easy to handle events..)

Yes and I think it is fine.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Spice with H264/5

2021-07-30 Thread Victor Toso
Hi,

On Mon, Jun 21, 2021 at 05:04:59PM +0700, Noah O'Donoghue wrote:
> Hi all,
> 
> I'm trying to use gstreamer with spice to encode/decode video,
> as I think it will be much faster and smoother than MJPEG,
> 
> I've installed these packages on both client and server (Ubuntu 20.04)
> gstreamer1.0-plugins-base
> gstreamer1.0-plugins-good,
> 
> And with remote-viewer --spice-debug I can see that my
> client/server are advertising a range of protocols (including
> H264)..
> 
> But for some reason it only uses MJPEG..?
> 
> Any ideas?

You need configure the server to do the encoding, that is not
enable by default. You can see in the code [0] that spice:mjpeg
is preferred and gstreamer is only enabled if spice compiled with
gstreamer.

The second thing to keep in mind is how to set the preference of
video encoding with mjpeg. The application using spice should
use spice_server_set_video_codecs() introduced at [1] API but
QEMU never got to implement that so you are a bit limited to how
to configure that on the host side.

As you have mentioned, there is some support in the protocol to
configure the server based on client's requests. It was
implemented first as a testing tool, to exchange video-codec on
the fly and later it could be used to rank video-codec based on
client's capabilities for hw decoding. You can test that in spicy
testing tool, there is a radio button list that you can reach
from the Menu. Sadly, this feature did not reach the stage we
wanted in order to implement for other clients like virt-viewer.

[0] 
https://gitlab.freedesktop.org/spice/spice/-/blob/master/server/reds.cpp#L3425
[1] https://gitlab.freedesktop.org/spice/spice/-/commit/497fcbb0a

Sorry delay.

Cheers,
Victor


signature.asc
Description: PGP signature


Re: [Spice-devel] Inquiry

2021-05-25 Thread Victor Toso
Hi,

On Sun, May 16, 2021 at 9:29 PM Siva Prasad  wrote:
> I have installed gnome boxes in ubuntu 20.04 and have been accessing
> windows 10 from there. I tried install spice tools but still not able to
> share folders. Any help is much appreciated.

On the guest, you still need to install spice-webdavd [0]. I think
gnome-boxes already does the right configuration on the host side but
the details are hosted in Folder Sharing in the manual here [1].

[0] https://gitlab.gnome.org/GNOME/phodav/-/releases/v2.4
[1] https://www.spice-space.org/spice-user-manual.html

Cheers,
Victor

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] spice-gtk: Synchronized/duplicated input across multiple widgets

2021-03-30 Thread Victor Toso
Hi,

On Tue, Mar 30, 2021 at 11:41:59AM -0400, James Harvey wrote:
> I think a very useful addition to spice would be
> synchronized/duplicated input, so one physical input can be given
> simultaneously to multiple spice servers.
> 
> The most common use for this might be system administration.  An admin
> would be able to connect to multiple machines, and perform common
> tasks on all of them at once, such as upgrading software, manual
> malware scans, changing settings, etc.

That means that all VMs should be very similar, in the same
state... seems a bit error prone to me.

> This exists in a few other programs.  There are ssh clients that do
> this, but personally I use tmux's synchronized panes feature for this
> after I've started different ssh connections in them.  I'm not aware
> of any linux GUI remote clients with this feature, and the only
> Windows GUI remote clients I'm aware of with it are BlueStacks and
> Nox, which are android emulators built upon VM software.

ssh is a shell in the remote machine. It can have different
failures but the scope is smaller than spice, I think.

> Obviously, it is on the user to ensure input works as intended.
> If servers have different resolutions, layouts, icon
> placements, if one hasn't finished a previous task, etc,
> identical input may not have identical behavior in all clients.
> 
> Before understanding the extent of what spice-gtk handles, I
> approached the remmina developers, largely because one instance
> of their client can already handle multiple connections in tabs
> or separate windows.  Now understanding that spice-gtk receives
> the physical mouse input and sends it to the spice server, it
> looks to me by far that the easiest way to do this is make a
> chance in spice-gtk and then have the clients do whatever is
> necessary to inform the widgets to enter/exit this mode.
> 
> In tmux, the "setw synchronize-panes" command toggles
> synchronizing input among all panes in a window, so giving
> input to any of them is duplicated in the others.  There's no
> master pane that has to be typed into.
> 
> In the Windows android emulators BlueStacks and Nox, their
> synchronized input feature allows you on a remote connection
> window to select other running connections to receive
> synchronized input from that window.  The one you start from is
> the master window, which you have to give input to for it to be
> duplicated.  If you give input into one of the other windows
> you've selected to receive synchronization,
> the input is only given to that window, which is useful if a window
> becomes unsynchronized to easily bring it back to where the others are
> without needing to toggle the overall synchronization or turn
> including that window off.
> 
> I think it would be nice if a spice client could tell spice-gtk
> to enter/exit either of these modes: synchronized input among a
> group of spice-gtk widgets; or synchronized input made in a
> master spice-gtk widget to be given to a number of spice-gtk
> widgets.
> 
> I think a restriction that spice-gtk widgets can only
> synchronize with other widgets running on the same machine
> would simplify implementation and security concerns.  Perhaps
> the spice developers would want only widgets running within the
> same process to be able to synchronize.  In that case, remmina
> might be most easily able to implement this feature, but other
> clients could add the ability to run multiple connections
> within a single process to be able to implement it as well.
> 
> Is this something someone would like to implement?  If not, is
> it something that someone would be willing to mentor, giving me
> locations of existing code that likely need changes, etc?  And
> if I could get it working, that the feature would likely be
> accepted as a pull request rather than denied as an unwanted
> feature?

IMHO a better approach would be a guest component that handles
the operations that you are looking for. It might seem a bit
bigger project but spice already has a port channel that can make
client <-> guest communication such as we do with shared folder
feature.

Actually, I recall that this kind of project was explored before
by Fleet commander developers [0], not sure if that's what they
have done.

Anyway, spice-gtk tries to keep the same approach as any other
desktop application so that means spice-gtk only receive input
when the widget has the keyboard grabbed (like when you click on
it). Working around this would be bad in general, from security
POV or simply too hard (e.g: in Wayland).

I think the best way forward with your idea would be some sort of
multicast with usb redirection, so you can connect a usb keyboard
to multiple vms. You probably can work on some POC without spice,
by having two QEMU configured with usb-redir over tcp and connect
to them with usbredirect [1]. After you get that working (most
patches here would be in usbredir I think) it would be much
easier or even trival (no changes) in spice-gtk 

Re: [Spice-devel] Multiple monitors at 4K, in virt-manager?

2021-03-23 Thread Victor Toso
Hi,

On Tue, Mar 23, 2021 at 10:50:08AM +, Dr. Jennifer Nussbaum wrote:
>  On Tuesday, March 23, 2021, 04:04:27 AM EDT, Julien Rope  
> wrote:
>  
>  
>  > I still am offered only 2952 x 1781 in the guest. With those
>  > settings except 'heads="2"', it is exactly> > the same--that
>  > resolution, and only one display, "Virtual-0".> > > > As
>  > mentioned in my original message, when I use the Virtio
>  > instead of the QXL device, I do get 4K,> > though again
>  > choosing 'heads="2"' doesn't give me an additional display
>  > in the guest. (Curiously> > the one display I get is
>  > "Virtual-1" rather than "Virtual-0".) With this device
>  > there's no option for> > changing the video memory in the
>  > XML.> 
>  > 
> > The numbering (Virtual-0 vs Virtual-1) is expected - this is
> >not an issue.>   Do you actually get the choice of
> >additional displays in virt-viewer (not in the guest) ?> Under
> >the top menu "View -> Displays" you should have a list of
> >available displays. Do you see them ? Are they enabled or
> >grayed out ?

> Ah, that is some kind of progress!
> This is not visible in the integrated viewer in virt-manager,
> but when I launch virt-viewer on itsown, yes, I do get the
> option of two displays.

Although they might share some code, they are different
applications. Virt manager, AFAIK, never supported multi-monitor


> And enabling them both does allow me to launcha second display.
> I cannot then launch the display settings in the guest,
> however; it segfaults right away. I'll look into that.

The sefault happens ins virt-viewer? You can run with
--spice-debug to know what's going on and a backtrace and help
too.

> But xrandr does report two displays; the second one is 2135 x
> 1647, though. Not clear why Istill don't get a 4K option with
> QXL.

The whole multi-monitor + QXL works from the guest kernel
perspective as if another monitor is being plugged in (by QEMU) ~
so, what are you running in your Guest? The kernel version +
Desktop enviroment

> If I try this with the virtio device (instead of QXL) with two
> heads, it's similar: a separate virt-viewer instance allows me
> to launch two displays; in this case xrandr reports 4K
> displays. But as before, the display settings manager segfaults
> right away.  Exploring further.  Jen

Ah, it is the guest's display settings that segfaults. Quite odd!

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Multiple monitors at 4K, in virt-manager?

2021-03-22 Thread Victor Toso
Hi,

On Mon, Mar 22, 2021 at 01:46:08PM +, Dr. Jennifer Nussbaum wrote:
> I hope it's OK to ask a basic question on the -devel list, but
> this is what was listed in the Support section

Sure

> I'm using virt-manger, and its related suite of stuff, to run
> KVM/QEMU VM's on a Debian Bullseye host, which has two 4K
> monitors. I am unable to get dual-head working at all, and I
> can't get 4K resolution working in the way I'm apparently
> supposed to.

Can you share the vm's domain? virsh dumpxml $vm

> I have a Debian Bullseye guest, with spice-vdagent and the QXL
> video drivers installed in it. The Spice user manual suggests
> that multiple-monitor support is easy; you're supposed to use a
> Video QXL device and then everything should just work. But it
> doesn't. Even when I increase the video memory in the XML file
> (vgamem, I assume) to 64MB I am unable to get 4K on even a
> single monitor using Settings -> Display on the guest; it maxes
> out at some arbitrary-seeming thing a bit over 1980 x 1200. And
> regardless of resolution, I also do not have a second monitor
> available in the guest.

Are you accessing with virt-manager? I don't think there is
support for multi-monitor there? You should use virt-viewer or
remote-viewer instead.

> If I have a video device set to Virtio, then 4K works perfectly
> on the guest machine; if I go to Settings -> Display there, I
> can select 4096 x 2160, and I get lovely 4K video. However,
> dual-head does not work. If I try to edit the XML for the video
> device to 'heads="2"', there is no effect--at least, when I
> restart the guest and go to Settings -> Display, there isn't an
> option for selecting another monitor.  Could someone tell me
> what I'm supposed to be doing?  Thank you.

Just confirming, for Spice multi-monitor [0] in recent linux
guests, one qxl device is enough and you should set the heads to
2 (virsh edit $vm)

[0] https://www.spice-space.org/multiple-monitors.html

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] No Sound with RemoteViewer on OSX Client

2021-02-24 Thread Victor Toso
Hi,

On Tue, Feb 23, 2021 at 10:46:03PM +, Matthew Sienko wrote:
>  Thanks for the reply. I installed gst-plugins-good using brew
>  and I still can't get the sound to work. I attached the output
>  of remote viewer with the --spice-debug flag. I connected to a
>  running windows guest, tried to play a sound, then
>  disconnected.  Thanks, -Matt

You still lack some plugins in order to have the audio pipeline
working, this is the pipeline:

> (RemoteViewer-bin:17246): GSpice-DEBUG: spice-gstaudio.c:318 audio pipeline: 
> appsrc is-live=1 do-timestamp=0 
> caps="audio/x-raw-int,channels=2,rate=48000,signed=(boolean)true,width=16,depth=16,endianness=1234"
>  name="appsrc" ! queue ! audioconvert ! audioresample ! autoaudiosink 
> name="audiosink"
> 
> (RemoteViewer-bin:17246): GSpice-WARNING **: Failed to create pipeline: no 
> element "appsrc"

But it misses appsrc already. This is from the gst-plugins-base
package.

You can run gst-inspect-1.0 to see what you have in
plugins/elements in your path. I never tested macos but I'm sure
you will need an audio backend, perhaps osxaudio?
(gst-plugins-good)


https://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-good/html/gst-plugins-good-plugins-plugin-osxaudio.html

Cheers,
Victor

> (RemoteViewer-bin:17246): GStreamer-CRITICAL **: gst_element_query: assertion 
> `GST_IS_ELEMENT (element)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: gst_app_src_push_buffer_full: 
> assertion `GST_IS_APP_SRC (appsrc)' failed
> 
> ** (RemoteViewer-bin:17246): CRITICAL **: 

Re: [Spice-devel] [spice-devel]Clipboard can't work

2021-01-20 Thread Victor Toso
On Wed, Jan 20, 2021 at 10:24:29AM +0800, lx wrote:
> Hi all:
> I  test SPICE. I use Remote viewer on Windows10. And I install
> qemu-kvm/libvirt on Centos7, which run Windows10 in a virtual machine. I
> find I can't
> use Clipboard between my local Windows10 and Windows10 which in a virtual
> machine.   I'm a newbie in SPICE, How to debug this problem? Which log I
> should
> read?
>  Thank you
> 
> 
> Additionally info:
> libvirt-5.2.0, qemu-3.1.0, spice-0.14.0, spice-protocol-0.12.15,
> usbredir-0.8.0,spice-guest-tools-latest.exe

Can you confirm that you have installed
spice-guest-tools-latest.exe in your Windows10 Virtual Machine?

Configuration wise, it should work with defaults considering that
you are have installed the spice guest agent.

> virtual Machine Viewer 9.0-256

could you trying running remote-viewer.exe from the cmd with
--spice-debug? (you might need to set environment variable
G_MESSAGES_DEBUG to all)

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Data transfer guest to host/ folder sharing

2020-09-01 Thread Victor Toso
Hi,

On Tue, Sep 01, 2020 at 02:34:49PM +0200, Martin Filbrandt wrote:
> We use Spice on Proxmox VMs (Windows 10 guests). Clipboard
> sharing for files is perfect (from guest to host and vice
> versa). But transferring data works only in one direction, i.e.
> form host to guest/ not from guest to host.  To avoid that
> problem I tried to use folder sharing. But folder sharing is
> not supported by the windows version of virt-viewer (which is
> used on the local Windows machines).

On the Shared folder support for windows client, it is just
because there is no mingw-phodav library package which means that
at compile time the shared folder feature is disabled.

I recall doing some testing with shared folder on windows and
it worked quite well.

I saved the (old) installer at the time
https://people.freedesktop.org/~victortoso/unofficial/

> Is there any chance of getting data transfer working in both
> directions? Is anything like that planned for the future?
> 
> Kind regards
> 
> Martin Filbrandt
> Supportcenter
> HLA (Hessische Lehrkräfteakademie)

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Webdav on Windows XP

2020-07-30 Thread Victor Toso
Hi,

On Thu, Jul 30, 2020 at 01:38:54PM -0400, Koopa Koopa wrote:
> On 7/30/20, Frediano Ziglio  wrote:
> >>
> >> Hi all,
> >>
> >> I'm trying to setup a Windows XP SP3 virtual machine with SPICE folder
> >> sharing. The latest version, v2.4, fails to install, as the
> >> spice-webdavd service fails to start. Running spice-webdavd.exe
> >> manually yields the error message "The procedure entry point
> >> AcquireSRWLockExclusive could not be located in the dynamic link
> >> library KERNEL32.dll", which seems to be a deficiency in using XP [1].
> >> After some digging, I've determined that the cause of this is that,
> >> when starting the service, spice-webdavd calls g_mutex_lock from Glib
> >> [2], which had XP support removed a couple of years ago [3].
> >>
> >> Version v2.2, which comes from before the Glib change was made,
> >> successfully installs and runs. I have been able to map and somewhat
> >> use a network drive mapped to the share, but it has broken and I can't
> >> seem to get it working again; Windows just says that "The network path
> >> http://localhost:9843 could not be found." Strangely enough, when
> >> going to that address in Mypal, the share directory is displayed
> >> without any issues, and I can browse it.
> >>
> >
> > The purpose of spice-webdavd is to provide the port to be able to use
> > webdav from the guest. If another program is able to use it I would
> > try to understand why Windows cannot.
> >
> > Just to confirm, using netstat in the guest can you see the port (9843)
> > in listening state?
> 
> Yep, that port is in the listening state.
> 
> > Is the Windows XP service running?
> 
> Yes, it is, and I have tried restarting it.
> 
> In further testing, the share works perfectly fine with the free
> BitKinex client, but I still can't get it to work again as a mapped
> drive in Windows at all. Since it continues to work without any issues
> in the 3rd party programs I have tried, I'm inclined to believe that
> the issue is not at all with spice-webdavd. It seems like either an XP
> bug or misconfiguration of my (clean) installation. In any case, I'm
> exploring other options for host/guest file sharing, as I can't seem
> to resolve this.

Sorry if I missed in case you have done it before, but I think
you have to run the map-drive.bat script

https://gitlab.gnome.org/GNOME/phodav/-/blob/master/bin/map-drive.bat

> >> If this configuration is not supported, I totally understand. Part of
> >> why I want to point this out is so that, at the very least, this
> >> incompatibility could be added to the Spice User Manual [4]. Thanks!
> >>
> >
> > I would avoid it, Microsoft stopped supporting XP more than 6 years
> > ago. Windows XP is abandonware.
> 
> Yeah, I have a Windows 10 VM that I use for most things, it's just
> that I have a program which requires Windows XP in order to function.

:)


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Stuttering video playback on LAN

2020-07-30 Thread Victor Toso
Hi,

On Mon, Jul 27, 2020 at 09:40:27AM +0200, Felix Leimbach wrote:
> Hi Uri
> 
> I've succeeded in using h264 with spice-streaming-agent, but
> only with a linux client. The windows client does not seem to
> support anything besides mjpeg, even after installing and
> tinkering with gstreamer.  I've opened a bugreport:
> 
> https://gitlab.com/virt-viewer/virt-viewer/-/issues/5

For windows, we use gstreamer for audio playback/record. I'd be
surprised if the spice-gtk code base used for linux would work
out-of-the box for windows on video decoding. So, afaics:

1) Remote-viewer will need to ship some extra plugins to handle
   video decoding (even mjpeg if you want to use gstreamer for
   that, as by default there is a mjepg-decoder in spice-gtk)

2) Some tweaking in spice-gtk to handle video with gstreamer plus
   tweaks to handle windows pipelines

If you want to work with h264, I think the problem could be
around license & patents.


> Another drawback: spice-streaming-agent only works with the
> x264enc encoder, which does not support VAAPI based hardware
> acceleration with the Intel GPU I passed through with GVT-g.
> 
> The vaapih264enc codec claimed that it cannot produce a x-h264
> stream:
> 
> # ./spice-streaming-agent -d -c gst.h264=vaapih264enc
> ...
> spice-streaming-agent[266317]: Gstreamer plugin: Specified encoder named 
> 'vaapih264enc' cannot produce 'video/x-h264, 
> stream-format=(string)byte-stream, framerate=(fraction)25/1' streams. Make 
> sure that gst.CODEC=ENCODER is correctly specified and that the encoder is 
> available.
> spice-streaming-agent[266317]: Gstreamer plugin: 'x264enc' encoder plugin is 
> used
> 
> The avenc_h264 codec loaded but failed:
> 
> # ./spice-streaming-agent -c gst.h264=avenc_h264_omx:bitrate=10
> spice-streaming-agent[269477]: Gstreamer plugin: Looking for encoder plugins 
> which can produce a 'video/x-h264, stream-format=(string)byte-stream, 
> framerate=(fraction)25/1' stream
> spice-streaming-agent[269477]: Gstreamer plugin: 'vaapih264enc' plugin is 
> available
> spice-streaming-agent[269477]: Gstreamer plugin: 'x264enc' plugin is available
> spice-streaming-agent[269477]: Gstreamer plugin: 'avenc_h264_omx' plugin is 
> available
> spice-streaming-agent[269477]: Gstreamer plugin: 'avenc_h264_omx' encoder 
> plugin is used
> spice-streaming-agent[269477]: Gstreamer plugin: Trying to set encoder 
> property: 'bitrate = 10'
> ** (spice-streaming-agent:269477): CRITICAL **: 22:47:26.612: 
> gst_vaapi_display_lock: assertion 'display != NULL' failed
> ** (spice-streaming-agent:269477): CRITICAL **: 22:47:26.612: 
> gst_vaapi_display_unlock: assertion 'display != NULL' failed
> ** (spice-streaming-agent:269477): CRITICAL **: 22:47:26.617: 
> gst_vaapi_display_lock: assertion 'display != NULL' failed
> ** (spice-streaming-agent:269477): CRITICAL **: 22:47:26.617: 
> gst_vaapi_display_unlock: assertion 'display != NULL' failed
> spice-streaming-agent[269477]: No sample- EOS or state change
> 
> So I reverted back to using regular spice in qemu without
> spice-streaming-agent.
> I think it would be a huge improvement if the spice component
> in the qemu host process could leverage GPU based encoding with
> h264.

Yes,


https://gitlab.freedesktop.org/spice/spice/-/blob/master/server/gstreamer-encoder.c#L899

> We wouldn't need a guest agent, we wouldn't require GPU
> passthrough and have great performance for multimedia
> use-cases. Not sure were I would open a feature request for
> that, though.

There are always people interested on spice server doing
streaming but it is complicated to accommodate in regards to
resources (it does not scale well in a host with multi VM).

This is/was primarily used in Xspice and x11spice for accessing
bare-metal OS.

Patches to improve this would be welcomed indeed.

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Identifying and removing potentially divisive language

2020-07-01 Thread Victor Toso
Hi,

On Wed, Jul 01, 2020 at 10:03:10AM +0200, Kevin Pouget wrote:
> Hello SPICE community,
> 
> following Chris Wright (Red Hat CTO) blog post on "Making open
> source more inclusive by eradicating problematic language" [1],
> I would like to suggest that we have a look at SPICE source
> code to find out if/where such language is used and how to
> remove it.
> 
> To illustrate the motivations of this move, consider the phrase
> "the final solution". I am quite sure you would agree that
> these words cannot be used inside a project. You would agree
> because the WWII events are still in minds and not so ancient
> yet.  Git "master", or the "master/slave" pattern may not
> trigger similar thoughts if your ancestors didn't suffer
> slavery; "whitelist/blacklist" neither, if the color of your
> skin doesn't get you into trouble (white=allow, black=deny).
> Overall, I would advise, when thinking about these questions,
> not to forget on which side your history/country/skin
> color/sexual orientation sits you. If it's the oppressor side,
> you're not at the right place to say it's not relevant.
> 
> ---
> 
> I had a quick `grep` look at SPICE code base, searching for
> `blacklist/whitelist/slave` and I could only find very few
> occurrences of these words, which is nice. Can you find other
> problem words?
> 
> `master` is used for git default's branch, but not much
> elsewhere. Let's discuss if we could get rid of this one, for
> instance changing it to `main` (just a suggestion). I don't
> think that it can break that many things (only the CI comes to
> my mind, where the `master` branch may be treated differently)
> as git name default branch's name is often omitted in the usual
> workflows.
> 
> Please share your thoughts about this

Not a native english speaker but I've read a few discussions
around the user of master as git as in master copy instead of
master/slave. Another examples of the use of master from native
speakers included master as in school teacher or someone that is
in charge of something (the offense being where the subject of
control is the slave).

Still, I don't really mind to changing it to main, even more if
there are people that feel this can really be offensive in some
way..


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] About decisions and reviews

2020-05-12 Thread Victor Toso
Hi,

On Tue, May 12, 2020 at 10:08:46PM +0200, Francesco Giudici wrote:
> So, let's move forward... Frediano merged it, this is done.
> What would you propose to do now? Let's move the discussion on
> what to do now :-)

I agree that this is the best course of action.

My suggestion was to ping people that used to be involved in
Spice and are proficient in C++ and possibly would enjoy some
wine and/or chocolates as good incentive to make time to
review/test it (before the merge). So, options that come to mind
now:

1) Revert, wait review, reviewed, (merging again or not)
2) Revert, wait review, never reviewed, (cyber dust or a fork)
3) Revert and fork it.

I have a quite heavy trust in Frediano so my expectation of a
fork is that it would become quite hard to GObject server to stay
in parity with spice-cpp without new contributors.

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] spice-vdagent: how to enable additional mouse buttons?

2020-05-11 Thread Victor Toso
Hi,

On Tue, May 12, 2020 at 12:53:02AM +0200, br...@netc.fr wrote:
> 
> 
> Uri (and others),
> 
> I found the similar question in a few corners of the internet
> and I think adding at least the additional default mouse
> buttons should not be all that much work.

You can take a look at this proposal to adding horizontal wheel
support to Spice


https://lists.freedesktop.org/archives/spice-devel/2017-October/040558.html

> With some guidance I could probably do it myself, though the
> guidance would need to be quite substantial :)
> 
> The mouse and the main buttons is already forwarded and that is
> the main part.
> 
> with xev it is clear to see which buttons work on the host, but
> not on the guest.
> 
> Anyone with some spare time (which I know is always limited for
> everyone), but help me where to fix this in the code and i will
> write a patch - or give me a good start - or start yourself.
> 
> a semi working mouse in the guest is very annoying and can be
> one of the critical points why to use spice (or not) - at least
> i know it is in my case.
> 
> Thanks!!

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Spice Seamless Migration Sequence

2020-05-07 Thread Victor Toso
Hi,

On Thu, May 07, 2020 at 12:17:57PM +0200, ucontacti ss wrote:
> Dear Developers,
> 
> I am trying to reproduce the seamless migration capability of the Spice
> Protocol. But I get this error from Inputs and Display Channel when I tried
> to send back the migration data (server closes those sockets).
> "
> 2020-05-07T10:09:48.746002Z qemu-system-x86_64: warning: Spice: inputs:0
> (0x558ddee468a0): unexpected
> 2020-05-07T10:09:48.853621Z qemu-system-x86_64: warning: Spice: display:0
> (0x558ddee45940): unexpected
> "
> Is there any prerequisite before sending migration data to the new server?
> Thank in advance.

Can you share the qemu command line from source and target host
to see if something might be lacking there? How are you
triggering the migration? What version of qemu + spice-server are
you running?

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Kvm

2020-04-06 Thread Victor Toso
Hi,

On Thu, Apr 02, 2020 at 03:38:23PM +0200, Loïck CHOVET wrote:
> Greetings,
> 
> For my internship of Computer Science Engineer student, I have to realise a
> KVM.
> 
> The objective is to link embedded card (an Arduino mkr vidor
> 4000)  to a server and  to connect remotely from our computer
> to the card to access the server and control it remotely.
>
> My internship tutor recommended me to look at spice for this
> but I'm not sure because spice is more for VM.
> Do you think it will be possible to install a Spice server on
> such embedded system ?

Not sure. For a project that could be used in bare metal machines
+ spice, you can check:

https://gitlab.freedesktop.org/spice/x11spice

> Also, I have a tiny problem while trying spice on my own computer. I don't
> understand how to compile the last spice-protocol (
> https://gitlab.freedesktop.org/spice/spice-protocol) and spice 0.14 needs
> spice protocol >= 0.14

Spice-protocol is only headers but git master is using meson [0]
and should be as simple as running:

 cd spice-protocol
 meson . _build --prefix=/usr
 ninja -C _build install 

[0] https://mesonbuild.com/

PS: autotools was dropped after 0.14.1 at 3394652 "Remove
autotools files in favor of meson" in 2020-03-09

So you can also checkout to 0.14.1 and use it if you prefer,
should be fine for spice server.

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Can't activate share folding in virt-viewer

2020-04-06 Thread Victor Toso
Hi,

On Mon, Apr 06, 2020 at 09:17:19PM +0400, shiftag wrote:
> Hello,
> 
> I would to use share folder with a Windows 10 guest. I installed spice
> guest tool and spice webdav daemon in the guest operating system. Also,
> spice webdav is running as a service in windows guest. Then, I add
> "Channel spice-webdav" as hardware for the Windows virtual machine.
> 
> Finally, I would to like "share folding" in virt-viewer client but it's
> grey (screenshot attached).
> 
> Did I miss a step ?

The spice-gtk library used by remote-viewer must be built with
webdav enabled. If you are using a linux client, you can check if
phodav is linked with remote-viewer with:

$ ldd /usr/bin/remote-viewer | grep -i phodav
libphodav-2.0.so.0 => /lib64/libphodav-2.0.so.0

You can compare the configuration as mentioned in 'Folder
Sharing' section in:

https://www.spice-space.org/spice-user-manual.html

If you can't figure out, might need to add some --spice-debug and
share it.

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] How to monitor the Status of SPICE Connection

2020-03-19 Thread Victor Toso
On Thu, Mar 19, 2020 at 09:52:02AM +0800, 丁志坚 wrote:
> Hi, Spice Develop Team. I am a student of UESTC from China.
> 
> As titled, in my project, I want to develop a client program in
> the VM to monitor the spice connectin status and inform to
> background timely.

Which kind information do you want from the connection?

> 
> Any hints or ideas?
> 
> With my best regards.
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
> 


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] USB Redirection doesn't work on Windows 10

2020-03-10 Thread Victor Toso
Hi,

On Fri, Mar 06, 2020 at 10:43:41PM +0330, Armin Ranjbar wrote:
> Hello,
> 
> When attempting to attach a USB device to windows, remote-viewer reports:
> USB Redirection error: Could not redirect Transcend information, INC,
> JetFlash, Could not open usb device: Operation not supported or implemented
> on this platform [-12]
> 
> the full debug log is also attached:
> ii  libspice-client-glib-2.0-8:amd64 0.37-1
>  amd64GObject for communicating with Spice servers (runtime library)
> ii  libspice-client-gtk-3.0-5:amd64  0.37-1
>  amd64GTK3 widget for SPICE clients (runtime library)
> ii  libspice-server1:amd64   0.14.2-4
>  amd64Implements the server side of the SPICE protocol
> ii  qemu-system-x86  1:4.2-3
> amd64QEMU full system emulation binaries (x86)
> 
> Virt-viewer is version 8 for windows. oddly enough same version of
> virt-viewer is working fine under a client client.

Just to let you know that there is a bug filed for it in case you
want to follow it

https://gitlab.freedesktop.org/spice/spice-gtk/issues/104

> ---
> Armin ranjbar

> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.266: 
> ../../src/spice-session.c:280 New session (compiled from package spice-gtk 
> 0.35)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.266: 
> ../../src/spice-session.c:284 Supported channels: main, display, inputs, 
> cursor, playback, record, usbredir
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usbdk_api.c:62 UsbDk driver is installed.
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usbdk_api.c:86 Loading UsbDk API DLL
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usb-device-manager.c:504 auto-connect filter set to 
> 0x03,-1,-1,-1,0|-1,-1,-1,-1,1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usb-device-manager.c:1964 Auto-connect disabled, no hider setup 
> needed
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/usb-device-manager.c:967 device added 8564:1000 (049272F0)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/usb-device-manager.c:967 device added 8087:0a2b (04926E50)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-session.c:1765 no migration in progress
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-channel.c:141 main-1:0: spice_channel_constructed
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-session.c:2268 main-1:0: new main channel, switching
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-channel.c:2693 main-1:0: Open coroutine starting 
> 0496EB10
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-channel.c:2534 main-1:0: Started background coroutine 
> 0496E9B8
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2216 main-1:0: Using plain text, port 5900
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2147 open host HOSTADDRESS:5900
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2069 main-1:0: connecting 0A87FDE0...
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.204: 
> ../../src/spice-session.c:2053 main-1:0: connect ready
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.204: 
> ../../src/spice-channel.c:1368 main-1:0: channel type 1 id 0 num common caps 
> 1 num caps 1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1392 main-1:0: Peer version: 2:2
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1948 main-1:0: spice_channel_recv_link_msg: 2 caps
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1954 main-1:0: got remote common caps:
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1903  0:0xB
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1958 main-1:0: got remote channel caps:
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1903  0:0x9
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:2918 test cap 0 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:2918 test cap 1 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.570: 
> ../../src/spice-channel.c:2918 test cap 3 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.570: 
> ../../src/spice-channel.c:1990 main-1:0: use mini header: 1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.832: 
> ../../src/spice-channel.c:1296 main-1:0: channel up, state 3
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.832: 
> ../../src/spice-session.c:2377 set mm time: 1520718362
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.832: 
> ../../src/s

[Spice-devel] ANNOUNCE spice-protocol 0.14.1 release

2020-03-09 Thread Victor Toso
Hi all,

Spice-protocol 0.14.1 was released this last Saturday and
updating it would allow new features and fixes to arrive in other
components.

In case of bugs or requests, please file them at our issue
tracker:

  https://gitlab.freedesktop.org/groups/spice/-/issues

Release:
   https://www.spice-space.org/download/releases/spice-protocol-0.14.1.tar.bz2
   
https://www.spice-space.org/download/releases/spice-protocol-0.14.1.tar.bz2.sha256sum
   
https://www.spice-space.org/download/releases/spice-protocol-0.14.1.tar.bz2.sig

And also:
https://gitlab.freedesktop.org/spice/spice-protocol/-/tags/v0.14.1 

These releases are signed with GPG key:

 206D 3B35 2F56 6F3B 0E65  72E9 97D9 123D E37A 484F

Major changes in 0.14.1
===
* This is the last release with:
  * Autotools: Meson is now the only supported
  * foreign_menu_prot.h: Deprecated in this release
  * controller_prot.h: Deprecated in this release
* Add VD_AGENT_CAP_CLIPBOARD_NO_RELEASE_ON_REGRAB
* Add VD_AGENT_CAP_CLIPBOARD_GRAB_SERIAL
* Add SPICE_MSGC_MAIN_QUALITY_INDICATOR enum
* Add STREAM_TYPE_QUALITY_INDICATOR message
* Remove deprecated vdi_dev.h interface
* Remove deprecated VD_AGENT_CLIPBOARD_MAX_SIZE_DEFAULT
* Remove deprecated VD_AGENT_CLIPBOARD_MAX_SIZE_ENV
* Remove unused SPICE_GNUC_ macros
* qxl_dev: QXLReleaseInfo alignment fix
* Some documentation added in vd_agentd.h
* Now shipping a rpm spec file to easy deployment and testing

Kind regards,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] USB Redirection doesn't work on Windows 10

2020-03-07 Thread Victor Toso
Hi,

On Fri, Mar 06, 2020 at 10:43:41PM +0330, Armin Ranjbar wrote:
> Hello,
> 
> When attempting to attach a USB device to windows, remote-viewer reports:
> USB Redirection error: Could not redirect Transcend information, INC,
> JetFlash, Could not open usb device: Operation not supported or implemented
> on this platform [-12]
> 
> the full debug log is also attached:
> ii  libspice-client-glib-2.0-8:amd64 0.37-1
> 
>  amd64GObject for communicating with Spice servers (runtime library)
> ii  libspice-client-gtk-3.0-5:amd64  0.37-1

>From your logs:
(remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.266: 
../../src/spice-session.c:280 New session (compiled from package spice-gtk 
0.35) 

Are you sure you are running the 0.37 one?

>  amd64GTK3 widget for SPICE clients (runtime library)
> ii  libspice-server1:amd64   0.14.2-4
>  amd64Implements the server side of the SPICE protocol
> ii  qemu-system-x86  1:4.2-3
> amd64QEMU full system emulation binaries (x86)
> 
> Virt-viewer is version 8 for windows. oddly enough same version of
> virt-viewer is working fine under a client client.
> 
> ---
> Armin ranjbar

> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.266: 
> ../../src/spice-session.c:280 New session (compiled from package spice-gtk 
> 0.35)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.266: 
> ../../src/spice-session.c:284 Supported channels: main, display, inputs, 
> cursor, playback, record, usbredir
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usbdk_api.c:62 UsbDk driver is installed.
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usbdk_api.c:86 Loading UsbDk API DLL
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usb-device-manager.c:504 auto-connect filter set to 
> 0x03,-1,-1,-1,0|-1,-1,-1,-1,1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.548: 
> ../../src/usb-device-manager.c:1964 Auto-connect disabled, no hider setup 
> needed
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/usb-device-manager.c:967 device added 8564:1000 (049272F0)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/usb-device-manager.c:967 device added 8087:0a2b (04926E50)
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-session.c:1765 no migration in progress
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-channel.c:141 main-1:0: spice_channel_constructed
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.583: 
> ../../src/spice-session.c:2268 main-1:0: new main channel, switching
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-channel.c:2693 main-1:0: Open coroutine starting 
> 0496EB10
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-channel.c:2534 main-1:0: Started background coroutine 
> 0496E9B8
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2216 main-1:0: Using plain text, port 5900
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2147 open host HOSTADDRESS:5900
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:09.985: 
> ../../src/spice-session.c:2069 main-1:0: connecting 0A87FDE0...
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.204: 
> ../../src/spice-session.c:2053 main-1:0: connect ready
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.204: 
> ../../src/spice-channel.c:1368 main-1:0: channel type 1 id 0 num common caps 
> 1 num caps 1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1392 main-1:0: Peer version: 2:2
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1948 main-1:0: spice_channel_recv_link_msg: 2 caps
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1954 main-1:0: got remote common caps:
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1903  0:0xB
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1958 main-1:0: got remote channel caps:
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:1903  0:0x9
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:2918 test cap 0 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:10.464: 
> ../../src/spice-channel.c:2918 test cap 1 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.570: 
> ../../src/spice-channel.c:2918 test cap 3 in 0xB: yes
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.570: 
> ../../src/spice-channel.c:1990 main-1:0: use mini header: 1
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.832: 
> ../../src/spice-channel.c:1296 main-1:0: channel up, state 3
> (remote-viewer.exe:6384): GSpice-DEBUG: 19:00:11.832: 
> ../../src/spice-session.c:2377 set mm time: 1520718362
> (remot

Re: [Spice-devel] fast symbolic transfer function derivatives

2020-01-13 Thread Victor Toso
Hi,

On Mon, Jan 13, 2020 at 10:44:25AM +0100, Victor Toso wrote:
> On Mon, Jan 13, 2020 at 03:04:55PM +1100, Valeri Aronov wrote:
> > Dear all,
> > 
> > I trust that I have an excellent proposition for the theme in the subject
> > of this post. Using my algorithm for the evaluation of all the first and
> > second derivatives (by circuit parameters) of the symbolic transfer
> > function asymptotically approaches the time of the evaluation of transfer
> > function itself.
> > 
> > Using these derivatives allows substantially reduce the time of circuit
> > parameter optimization because of much better precision of the derivatives
> 
> Sounds interesting for SPICE as "Simulation Program with
> Integrated Circuit Emphasis" [0] while this is a different kind
> of SPICE list [1]
> 
> [0] https://en.wikipedia.org/wiki/SPICE
> [1] 
> https://en.wikipedia.org/wiki/Simple_Protocol_for_Independent_Computing_Environments
> 
> Cheers,
> Victor

Sorry for the noise, at the time I had not yet fetched the reply
from Frediano.

Cheers,


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] fast symbolic transfer function derivatives

2020-01-13 Thread Victor Toso
On Mon, Jan 13, 2020 at 03:04:55PM +1100, Valeri Aronov wrote:
> Dear all,
> 
> I trust that I have an excellent proposition for the theme in the subject
> of this post. Using my algorithm for the evaluation of all the first and
> second derivatives (by circuit parameters) of the symbolic transfer
> function asymptotically approaches the time of the evaluation of transfer
> function itself.
> 
> Using these derivatives allows substantially reduce the time of circuit
> parameter optimization because of much better precision of the derivatives

Sounds interesting for SPICE as "Simulation Program with
Integrated Circuit Emphasis" [0] while this is a different kind
of SPICE list [1]

[0] https://en.wikipedia.org/wiki/SPICE
[1] 
https://en.wikipedia.org/wiki/Simple_Protocol_for_Independent_Computing_Environments

Cheers,
Victor

> evaluation (in comparison with non-symbolic derivatives evaluation) and an
> opportunity to apply optimization methods using the second derivatives.
> 
> I am looking for discussing with or presenting this to ppl who implemented
> symbolic transfer function generation or interested in using the symbolic
> functions for parameter optimization or sensitivity evaluation.


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] spice-vdagent does not work on ubuntu18.04

2020-01-07 Thread Victor Toso
Hi,

On Fri, Dec 20, 2019 at 06:26:19AM -0500, Frediano Ziglio wrote:
> > hi, all,
> 
> > I install ubuntu 18.04 amd64 with virt-manager,
> 
> > the vdagent default installed is ok. the copy &paste and windows resize is
> > ok。
> 
> > but when I build the vdagent with the source code, it does not work.
> > and log has this error: "GetSeats failed: The name 
> > org.freedesktop.ConsoleKit

Hm, perhaps you want to use the systemd based one?

> > was not provided by any .service files"
> 
> > was I missing something ?
> 
> > all my build command here:
> > /
> > sudo apt-get install autoconf libtool libpixman-1-dev libjpeg-dev 
> > libopus-dev
> > python-pyparsing python-six
> > sudo apt-get install build-essential
> > sudo apt-get install pkg-config
> 
> > sudo apt-get install libperl-dev
> > sudo apt-get install libgtk2.0-dev
> > sudo apt install libasound2-dev
> > sudo apt-get install libdbus-1-dev
> > sudo apt-get install libdrm-dev
> > sudo apt-get install libpciaccess-dev
> 
> Last time I built a package on Debian based distro was too much ago but
> I remember I searched something like "debian rebuild deb package".
> For instance I found 
> https://raphaelhertzog.com/2010/12/15/howto-to-rebuild-debian-packages/
> The key is the command "apt-get build-dep" that will install all needed
> dependencies. Although you don't want to build a Debian package it will
> install the dependencies needed for the sources.
> One possible missing dependencies looking at error above is some systemd
> development package.
> 
> 
> > git clone https://gitlab.freedesktop.org/spice/spice-protocol.git
> > git checkout v0.14.0
> > ./autogen.sh --prefix=/usr
> > sudo make install
> 
> > git clone https://gitlab.freedesktop.org/spice/linux/vd_agent.git
> > git checkout spice-vdagent-0.17.0
> 
> > ./autogen.sh --prefix=/usr

Try adding --with-session-info=systemd and installing what is
needed for that to build and be used. Not that many WM using
ConsoleKit I think.

> > sudo make install
> > **/
> 
> Frediano
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel


Re: [Spice-devel] Using GitLab

2019-11-01 Thread Victor Toso
Hi,

On Thu, Oct 31, 2019 at 11:47:56AM -0500, Derek Lesho wrote:
> On 10/31/19 11:04 AM, Victor Toso wrote:
> 
> > Hi,
> > 
> > On Thu, Oct 31, 2019 at 10:56:59AM -0500, Jeremy White wrote:
> > > Hey Victor,
> > > 
> > > On 10/31/19 10:46 AM, Victor Toso wrote:
> > > > Hi list,
> > > > 
> > > > You might note that the Gitlab activity will increase a bit
> > > > from now on, hopefully. It was agreed within some SPICE
> > > > collaborators to give a serious try on using this
> > > > infrastructure that is available to us.
> > > > 
> > > > One potential great change and challenge is the usage of
> > > > merge requests in oppose to patch series over mailing list. I
> > > > hope the benefits outweigh the downsides in the long run.
> > > Derek has been working on a utility to integrate GitLab and a
> > > mailing list, for experimentation by Wine.
> > > 
> > > He's just gotten to the point of being ready to try a proof of
> > > concept.
> > > Would you guys be interested in this?
> > What does it do exactly?
> > 
> > Cheers,
> > Victor
> 
> Hi Victor,
> 
> The bridge sends all the commits from merge-requests in patch
> form to the mailing list, as well as any comments the MR
> receives.

Cool. It works with specific user in gitlab as sender? This seems
nice, somewhat similar to spice-commits. I'd say great to have
it.

> It also creates MRs from PATCH submissions to the mailing
> list.

Also seems fine but can be confusing. In regards to ownership,
the sender must have a Gitlab account or a generic user creates
the MR?

> The goal with this is to ensure the developers who are
> accustomed to using either system aren't isolated from
> developers using the other.  Optionally, the bridge can be
> configured to allow people to respond to the generated MRs and
> patch-sets, however this is disabled by default since it can be
> confusing based on the differences between email threads and
> GitLab discussions.

Personally, the patch review being done in Gitlab would be best
also for the sake of integration around it (e.g: one topic of
review is solved you have the 'resolve thread', the diff between
versions, probably more).

Having the comments of reviews being sent to mailing-list can
also be confusing if replying to that in email does not get
propagated back to Gitlab but if explicit says something like
"don't reply", it looks great as mentioned above.

But this is all just my opnion. The rationale for using more
Gitlab is for several reasons. If you like the idea and using
this seems a must, I'm all in to give it a try :)

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] Using GitLab

2019-10-31 Thread Victor Toso
Hi,

On Thu, Oct 31, 2019 at 10:56:59AM -0500, Jeremy White wrote:
> Hey Victor,
> 
> On 10/31/19 10:46 AM, Victor Toso wrote:
> > Hi list,
> > 
> > You might note that the Gitlab activity will increase a bit
> > from now on, hopefully. It was agreed within some SPICE
> > collaborators to give a serious try on using this
> > infrastructure that is available to us.
> > 
> > One potential great change and challenge is the usage of
> > merge requests in oppose to patch series over mailing list. I
> > hope the benefits outweigh the downsides in the long run.
> 
> Derek has been working on a utility to integrate GitLab and a
> mailing list, for experimentation by Wine.
> 
> He's just gotten to the point of being ready to try a proof of
> concept.
> Would you guys be interested in this?

What does it do exactly?

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] Using GitLab

2019-10-31 Thread Victor Toso
Hi list,

You might note that the Gitlab activity will increase a bit from
now on, hopefully. It was agreed within some SPICE collaborators
to give a serious try on using this infrastructure that is
available to us.

One potential great change and challenge is the usage of merge
requests in oppose to patch series over mailing list. I hope the
benefits outweigh the downsides in the long run.

I invite you to subscribe to notifications of the components you
might be interested, to discuss and review issues and merge
requests and improve different areas code integration, testing
and release.

https://gitlab.freedesktop.org/spice

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-protocol v4 4/5] build-sys: Allows spec file to build MingW packages

2019-10-23 Thread Victor Toso
Hi,

On Wed, Oct 23, 2019 at 11:06:31AM +0100, Frediano Ziglio wrote:
> Add MingW support. This allows to build MingW packages easily with a
> 
>   $ rpmbuild -ta spice-protocol-.tar.bz2
> 
> This is base on some work by Eduardo Lima adding MingW support to SPEC
> files.
> Part of dependencies, description and names came from Fedora SPEC file
> for mingw-spice-protocol package.
> 
> Signed-off-by: Frediano Ziglio 
> Signed-off-by: Victor Toso 

For the series,
Acked-by: Victor Toso 

> --
> Changes since v3:
> - add gitlab ci from Victor
> ---
>  .gitlab-ci.yml |  3 ++-
>  spice-protocol.spec.in | 32 
>  2 files changed, 34 insertions(+), 1 deletion(-)
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index a20776e..02406ca 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -4,9 +4,10 @@ variables:
>DEPS_COMMON: git libtool make python3 python3-six redhat-rpm-config
> python3-pyparsing meson ninja-build gtk-doc glib2-devel
> gettext gettext-devel bzip2 rpmlint rpm-build 
> python-unversioned-command
> +  DEPS_MINGW: mingw32-filesystem mingw64-filesystem
>  
>  before_script:
> -- dnf install -y $DEPS_COMMON
> +- dnf install -y $DEPS_COMMON $DEPS_MINGW
>  
>  fedora-autotools:
>script:
> diff --git a/spice-protocol.spec.in b/spice-protocol.spec.in
> index 49724c6..54aacfd 100644
> --- a/spice-protocol.spec.in
> +++ b/spice-protocol.spec.in
> @@ -8,21 +8,53 @@ License:BSD and LGPLv2+
>  URL:https://www.spice-space.org
>  Source0:
> https://www.spice-space.org/download/releases/%{name}-%{version}.tar.bz2
>  BuildArch:  noarch
> +BuildRequires:  mingw32-filesystem >= 95
> +BuildRequires:  mingw64-filesystem >= 95
>  
>  %description
>  Header files describing the spice protocol
>  and the para-virtual graphics card QXL.
>  
>  
> +%define mingw_files() \
> +%package -n %{1}-spice-protocol \
> +Summary:Spice protocol header files \
> +Requires:   pkgconfig \
> +\
> +%description -n %{1}-spice-protocol \
> +Header files describing the spice protocol \
> +and the para-virtual graphics card QXL. \
> +\
> +%files -n %{1}-spice-protocol \
> +%doc COPYING CHANGELOG.md \
> +%{expand:%%{%{1}_includedir}}/spice-1 \
> +%{expand:%%{%{1}_datadir}}/pkgconfig/spice-protocol.pc
> +
> +%mingw_files mingw32
> +%mingw_files mingw64
> +
> +
>  %prep
>  %setup -q
>  
>  %build
> +cp -rl . ../build_spice_protocol_tmp
> +mv ../build_spice_protocol_tmp build
> +pushd build
>  %configure
>  make %{?_smp_mflags}
> +popd
> +
> +%mingw_configure
> +%mingw_make %{?_smp_mflags} V=1
> +
>  
>  %install
> +pushd build
>  make DESTDIR=%{buildroot} install
> +popd
> +
> +%mingw_make install DESTDIR=%{buildroot}
>  
>  
>  %files
> -- 
> 2.21.0
> 


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [spice-protocol 2/2] fixup: gitlab-ci: to fix after mingw

2019-10-23 Thread Victor Toso
On Wed, Oct 23, 2019 at 05:52:09AM -0400, Frediano Ziglio wrote:
> > 
> > From: Victor Toso 
> > 
> > ---
> >  .gitlab-ci.yml | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> > index da4f512..c7028dd 100644
> > --- a/.gitlab-ci.yml
> > +++ b/.gitlab-ci.yml
> > @@ -4,9 +4,10 @@ variables:
> >DEPS_COMMON: git libtool make python3 python3-six redhat-rpm-config
> > python3-pyparsing meson ninja-build gtk-doc glib2-devel
> > gettext gettext-devel bzip2 rpmlint rpm-build
> > +  DEPS_MINGW: mingw32-filesystem mingw64-filesystem
> >  
> >  before_script:
> > -- dnf install -y $DEPS_COMMON
> > +- dnf install -y $DEPS_COMMON $DEPS_MINGW
> >  
> >  fedora-autotools:
> >script:
> 
> Is it useful to have a separate "DEPS_MINGW" ?
> 
> Frediano

I'm doing that for spice-gtk and spice so it would just be
somewhat a standard. Not too strong about it for now, feel free
to move it to DEPS_COMMON if you prefer.



signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [spice-protocol 0/2] add gitlabci check

2019-10-23 Thread Victor Toso
From: Victor Toso 

Hi, two patches to be squashed if you agree. Both for fedora-autotools
stage in gitlab-ci.

Victor Toso (2):
  fixup: gitlab-ci: to be added
  fixup: gitlab-ci: to fix after mingw

 .gitlab-ci.yml | 7 +--
 1 file changed, 5 insertions(+), 2 deletions(-)

-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [spice-protocol 2/2] fixup: gitlab-ci: to fix after mingw

2019-10-23 Thread Victor Toso
From: Victor Toso 

---
 .gitlab-ci.yml | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index da4f512..c7028dd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -4,9 +4,10 @@ variables:
   DEPS_COMMON: git libtool make python3 python3-six redhat-rpm-config
python3-pyparsing meson ninja-build gtk-doc glib2-devel
gettext gettext-devel bzip2 rpmlint rpm-build
+  DEPS_MINGW: mingw32-filesystem mingw64-filesystem
 
 before_script:
-- dnf install -y $DEPS_COMMON
+- dnf install -y $DEPS_COMMON $DEPS_MINGW
 
 fedora-autotools:
   script:
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [spice-protocol 1/2] fixup: gitlab-ci: to be added

2019-10-23 Thread Victor Toso
From: Victor Toso 

So we can check rpm is working fine.
---
 .gitlab-ci.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b3fad64..da4f512 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -3,7 +3,7 @@ image: fedora:latest
 variables:
   DEPS_COMMON: git libtool make python3 python3-six redhat-rpm-config
python3-pyparsing meson ninja-build gtk-doc glib2-devel
-   gettext gettext-devel bzip2
+   gettext gettext-devel bzip2 rpmlint rpm-build
 
 before_script:
 - dnf install -y $DEPS_COMMON
@@ -14,6 +14,8 @@ fedora-autotools:
 - ./autogen.sh
 - make
 - make distcheck
+- rpmlint spice-protocol.spec
+- rpmbuild -ta spice-protocol-*.tar.bz2
 
 fedora-meson:
   script:
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-server v2 1/7] smart-channel-client: Remove spicec client reference from comment

2019-10-21 Thread Victor Toso
Hi,

On Mon, Oct 14, 2019 at 10:22:11AM +0100, Frediano Ziglio wrote:
> spicec is an obsolete client.

Should be fine to remove the other last referece (that my grep
could find) in this commit too?

server/red-channel-client.c:1187: * after spicec disconnect
(but not with spice-gtk) repeatedly. */

> Signed-off-by: Frediano Ziglio 

Acked-by: Victor Toso 

> ---
>  server/smartcard-channel-client.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/server/smartcard-channel-client.c 
> b/server/smartcard-channel-client.c
> index 43df902f5..da472a2a7 100644
> --- a/server/smartcard-channel-client.c
> +++ b/server/smartcard-channel-client.c
> @@ -252,8 +252,7 @@ bool 
> smartcard_channel_client_handle_message(RedChannelClient *rcc,
>  SmartCardChannelClient *scc = SMARTCARD_CHANNEL_CLIENT(rcc);
>  
>  if (type != SPICE_MSGC_SMARTCARD_DATA) {
> -/* Handles seamless migration protocol. Also handles ack's,
> - * spicy sends them while spicec does not */
> +/* Handles seamless migration protocol. Also handles ack's */
>  return red_channel_client_handle_message(rcc, type, size, message);
>  }
>  
> -- 
> 2.21.0
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [PATCH] channel-webdav: avoid possible crash

2019-10-15 Thread Victor Toso
From: Victor Toso 

In case PhodavServer or SoupServer are NULL, we should stop and
return.

Signed-off-by: Victor Toso 
---

Rebased. Patch was related user report of crash in FlexVDI client [0].
Being careful in this not-hot path should be okay IMHO.

[0] https://lists.freedesktop.org/archives/spice-devel/2019-May/049070.html

 src/channel-webdav.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/channel-webdav.c b/src/channel-webdav.c
index fb25084..de2843e 100644
--- a/src/channel-webdav.c
+++ b/src/channel-webdav.c
@@ -361,12 +361,17 @@ static void start_client(SpiceWebdavChannel *self)
 GIOStream *peer = NULL;
 SpiceSession *session;
 SoupServer *server;
+PhodavServer* phodav_server;
 GSocketAddress *addr;
 GError *error = NULL;
 bool started;
 
 session = spice_channel_get_session(SPICE_CHANNEL(self));
-server = 
phodav_server_get_soup_server(spice_session_get_webdav_server(session));
+phodav_server = spice_session_get_webdav_server(session);
+g_return_if_fail(phodav_server != NULL);
+
+server = phodav_server_get_soup_server(phodav_server);
+g_return_if_fail(server != NULL);
 
 CHANNEL_DEBUG(self, "starting client %" G_GINT64_FORMAT, c->demux.client);
 
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-protocol 0/5] SPEC integration

2019-10-14 Thread Victor Toso
Hi,

On Mon, Oct 14, 2019 at 09:18:51AM -0400, Frediano Ziglio wrote:
> > 
> > Hi,
> > 
> > On Fri, Oct 11, 2019 at 10:56:24AM +0100, Frediano Ziglio wrote:
> > > This series is part from a former series.
> > > There's an initial import commit to better understand the changes.
> > > It contains some work from Eduardo for MingW packaging.
> > > Final patches are really minor.
> > 
> > Should I/we wait for Eduardo's review?
> > 
> 
> No idea what to suggest here. But surely I'd like some comments from
> him. Part of the implementation came from his job.

Ok, I'll try to give feedback later this week too.

> > > Frediano Ziglio (5):
> > >   build-sys: Import spec file from Fedora
> > >   build-sys: Provide spec file during build
> > >   build-sys: Allows spec file to build MingW packages
> > >   build-sys: Update URL in SPEC file
> > >   build-sys: Requires proper pkg-config for MingW
> > > 
> > >  Makefile.am|   1 +
> > >  configure.ac   |   1 +
> > >  spice-protocol.spec.in | 224 +
> > 
> > Let's add to meson too?
> > 
> 
> I didn't though about. All SPEC files I started with are using autoconf
> and I never tested distribution with Meson (I did instead with spice-gtk).
> But it seems a bit of a follow up at the moment, it would require some
> additional scripts to make Meson distribute processed files and other changes.
> Not considering that if the SPEC at the end is using autoconf a Meson
> build would have to add generated "configure" and other relative files
> which is a bit odd and complex.

As follow up is fine, not a huge issue.


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH v2 1/2] docs: include protocol and for-newbies documents

2019-10-14 Thread Victor Toso
Hi,

On Mon, Oct 14, 2019 at 08:55:21AM -0400, Frediano Ziglio wrote:
> > 
> > From: Victor Toso 
> > 
> > Only by building and sharing the documents we will be able to get them
> > up to date.
> > 
> 
> OT: is the page at www.spice-space.org updated manually based on these 
> changes?
> (https://www.spice-space.org/documentation.html)
> I suppose being them in PDF format the reply is no.
> 
> ... omissis ...

The repo for the website and its content is respectively:

https://gitlab.freedesktop.org/spice/spice-space

https://gitlab.freedesktop.org/spice/spice-space-pages

Shouldn't be too hard get latest docs from spice git master
instead of [0], if that's what is being in use, didn't check.

[0] 
https://gitlab.freedesktop.org/spice/spice-space/tree/master/content/static/docs

IMHO, I'm all in for updating website docs every spice release
(as the docs should match that/latest release) but I haven't
touched this for long time now.


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-gtk] spice-widget: Fix invalidate region in case of image is scaled

2019-10-14 Thread Victor Toso
Hi,

On Mon, Oct 14, 2019 at 11:54:43AM +0100, Frediano Ziglio wrote:
> In case the drawing on the screen is scaled the scaling required to
> invalidate a slightly bigger region.
> This is due to the interpolation done during the resize.
> So if scaling is performed invalidate also the adjacent pixels.
> 
> This fixes https://gitlab.freedesktop.org/spice/spice-gtk/issues/19.
> 
> Signed-off-by: Frediano Ziglio 
> ---
>  src/spice-widget.c | 8 
>  1 file changed, 8 insertions(+)
> 
> diff --git a/src/spice-widget.c b/src/spice-widget.c
> index d73e02f2..9d6899c0 100644
> --- a/src/spice-widget.c
> +++ b/src/spice-widget.c
> @@ -2847,6 +2847,14 @@ static void invalidate(SpiceChannel *channel,
>&display_x, &display_y,
>NULL, NULL);
>  
> +gint scale_factor = gtk_widget_get_scale_factor(GTK_WIDGET(display));
> +if (s * scale_factor > 1) {
> +rect.x -= 1;
> +rect.y -= 1;
> +rect.width += 2;
> +rect.height += 2;
> +}
> +

Ah, yes. I've tested this ages ago and it was fine. Thanks for
not missing it for any longer.

Acked-by: Victor Toso 

>  x1 = floor ((rect.x - d->area.x) * s);
>  y1 = floor ((rect.y - d->area.y) * s);
>  x2 = ceil ((rect.x - d->area.x + rect.width) * s);
> -- 
> 2.21.0
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [PATCH v2 1/2] docs: include protocol and for-newbies documents

2019-10-14 Thread Victor Toso
From: Victor Toso 

Only by building and sharing the documents we will be able to get them
up to date.

Signed-off-by: Victor Toso 
Acked-by: Frediano Ziglio 
---
 docs/meson.build | 14 ++
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/docs/meson.build b/docs/meson.build
index 82864bb8..ce0334c0 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,11 +1,17 @@
+asciidoc_files = ['spice_for_newbies',
+  'spice_protocol',
+  'spice_style',
+  'spice_threading_model',
+  'vd_interfaces']
+
 if get_option('manual')
   asciidoc = find_program('asciidoc', required : false)
   if asciidoc.found()
 asciidoc_args = ['-a', 'data-uri', '-a', 'icons', '-a', 'toc']
-foreach doc : ['style', 'threading_model']
-  custom_target('spice_@0@.html'.format(doc),
-input : 'spice_@0@.txt'.format(doc),
-output : 'spice_@0@.html'.format(doc),
+foreach doc : asciidoc_files
+  custom_target('@0@.html'.format(doc),
+input : '@0@.txt'.format(doc),
+output : '@0@.html'.format(doc),
 build_by_default: true,
 command : [asciidoc, '-n', asciidoc_args, '-o', 
'@OUTPUT@', '@INPUT@'])
 endforeach
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

[Spice-devel] [PATCH v2 2/2] docs: update Makefile to match meson dist

2019-10-14 Thread Victor Toso
From: Victor Toso 

Sort the files names in alphabetic order and include the .html
version for spice_for_newbies and spice_protocol

Signed-off-by: Victor Toso 
---
 .gitignore   |  3 +--
 docs/Makefile.am | 11 +++
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/.gitignore b/.gitignore
index bf618932..965e2df7 100644
--- a/.gitignore
+++ b/.gitignore
@@ -34,8 +34,7 @@ INSTALL
 .tarball-version
 docs/manual/manual.chunked/
 docs/manual/manual.html
-docs/spice_style.html
-docs/spice_threading_model.html
+docs/*.html
 .dirstamp
 .deps
 .libs
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 15fbbdc0..1c96bcae 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -3,13 +3,16 @@ ASCIIDOC_FLAGS = -a icons -a toc
 
 EXTRA_DIST =   \
meson.build \
+   spice_for_newbies.html  \
+   spice_for_newbies.txt   \
+   spice_protocol.html \
+   spice_protocol.txt  \
spice_style.html\
spice_style.txt \
spice_threading_model.html  \
spice_threading_model.txt   \
+   vd_interfaces.html  \
vd_interfaces.txt   \
-   spice_protocol.txt  \
-   spice_for_newbies.txt   \
images/newbies/g_cmd_flow.png   \
images/newbies/g_sub.png\
images/newbies/cli_bsc_stc.png  \
@@ -18,11 +21,11 @@ EXTRA_DIST =\
$(NULL)
 
 HTML_FILES = \
+   spice_for_newbies.html \
+   spice_protocol.html \
spice_style.html \
spice_threading_model.html \
vd_interfaces.html \
-   spice_protocol.html \
-   spice_for_newbies.html \
$(NULL)
 
 if BUILD_MANUAL
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-server] spice_protocol: Update many names

2019-10-14 Thread Victor Toso
On Mon, Oct 14, 2019 at 07:02:05AM -0400, Frediano Ziglio wrote:
> 
> > Hi,
> > 
> > On Thu, Oct 10, 2019 at 03:56:30PM +0100, Frediano Ziglio wrote:
> > > Using an old "renames" file found in spice-protocol repository
> > > I update some old names in the documentation protocol.
> > > Also updated some other names manually.
> > > I processed the file and fixed some code indentation.
> > > File looks much more up to date.
> > > 
> > > Signed-off-by: Frediano Ziglio 
> > 
> > I'd add doc: as prefix of shortlog to be clear that commit
> > purpose is on docs. I had a quick look and built and checked the
> > html, looks okay. I've also sent a patch to add this and others
> > in meson.build
> > 
> 
> So, better to change shortlog to:
> 
> docs: Update many names in spice_protocol.txt
> 
> ??

Sure

> > Acked-by: Victor Toso 
> > 
> > > ---
> > >  docs/spice_protocol.txt | 808 
> > >  1 file changed, 404 insertions(+), 404 deletions(-)
> > > 
> > > diff --git a/docs/spice_protocol.txt b/docs/spice_protocol.txt
> > > index 58bc01664..d191462d1 100644
> > > --- a/docs/spice_protocol.txt
> > > +++ b/docs/spice_protocol.txt
> > > @@ -51,10 +51,10 @@ is in little endian format.
> > >  .. UINT32 – 32 bits unsigned  integer
> > >  .. INT32 - 32 bits signed integer
> > >  .. UINT64 – 64 bits unsigned  integer
> > > -.. ADDRESS - 64 bits unsigned integer, value is the offset of the
> > > addressed
> > > +.. SPICE_ADDRESS - 64 bits unsigned integer, value is the offset of the
> > > addressed
> > >  data from the beginning of spice protocol message body (i.e., data
> > >  following
> > > -RedDataHeader or RedSubMessage).
> > > -.. FIXED28_4 – 32 bits fixed point number. 28 high bits are signed
> > > integer. Low
> > > +SpiceDataHeader or SpicedSubMessage).
> > > +.. SPICE_FIXED28_4 – 32 bits fixed point number. 28 high bits are signed
> > > integer. Low
> 
> ... omissis ...
> 
> Frediano


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-protocol 0/5] SPEC integration

2019-10-14 Thread Victor Toso
Hi,

On Fri, Oct 11, 2019 at 10:56:24AM +0100, Frediano Ziglio wrote:
> This series is part from a former series.
> There's an initial import commit to better understand the changes.
> It contains some work from Eduardo for MingW packaging.
> Final patches are really minor.

Should I/we wait for Eduardo's review?

> Frediano Ziglio (5):
>   build-sys: Import spec file from Fedora
>   build-sys: Provide spec file during build
>   build-sys: Allows spec file to build MingW packages
>   build-sys: Update URL in SPEC file
>   build-sys: Requires proper pkg-config for MingW
> 
>  Makefile.am|   1 +
>  configure.ac   |   1 +
>  spice-protocol.spec.in | 224 +

Let's add to meson too?

Cheers,
Victor


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-server] spice_protocol: Update many names

2019-10-14 Thread Victor Toso
Hi,

On Thu, Oct 10, 2019 at 03:56:30PM +0100, Frediano Ziglio wrote:
> Using an old "renames" file found in spice-protocol repository
> I update some old names in the documentation protocol.
> Also updated some other names manually.
> I processed the file and fixed some code indentation.
> File looks much more up to date.
> 
> Signed-off-by: Frediano Ziglio 

I'd add doc: as prefix of shortlog to be clear that commit
purpose is on docs. I had a quick look and built and checked the
html, looks okay. I've also sent a patch to add this and others
in meson.build

Acked-by: Victor Toso 

> ---
>  docs/spice_protocol.txt | 808 
>  1 file changed, 404 insertions(+), 404 deletions(-)
> 
> diff --git a/docs/spice_protocol.txt b/docs/spice_protocol.txt
> index 58bc01664..d191462d1 100644
> --- a/docs/spice_protocol.txt
> +++ b/docs/spice_protocol.txt
> @@ -51,10 +51,10 @@ is in little endian format.
>  .. UINT32 – 32 bits unsigned  integer
>  .. INT32 - 32 bits signed integer
>  .. UINT64 – 64 bits unsigned  integer
> -.. ADDRESS - 64 bits unsigned integer, value is the offset of the addressed
> +.. SPICE_ADDRESS - 64 bits unsigned integer, value is the offset of the 
> addressed
>  data from the beginning of spice protocol message body (i.e., data following
> -RedDataHeader or RedSubMessage).
> -.. FIXED28_4 – 32 bits fixed point number. 28 high bits are signed integer. 
> Low
> +SpiceDataHeader or SpicedSubMessage).
> +.. SPICE_FIXED28_4 – 32 bits fixed point number. 28 high bits are signed 
> integer. Low
>  4 bits is unsigned integer numerator of a fraction with denominator 16.
>  .. POINT
>  +
> @@ -75,12 +75,12 @@ INT32 right +
>  +
>  .. POINTFIX
>  +
> -FIXED28_4 x +
> -FIXED28_4 y +
> +SPICE_FIXED28_4 x +
> +SPICE_FIXED28_4 y +
>  +
>  . Protocol Magic number UINT8[4]
>  +
> -RED_MAGIC = { 0x52, 0x45, 0x44,  0x51}
> +SPICE_MAGIC = { 0x52, 0x45, 0x44,  0x51}
>  +
>  . Protocol version
>  +
> @@ -97,8 +97,8 @@ compatibility. It is  set to zero on  major protocol 
> version increment.
>  +
>  [source,c]
>  
> -RED_VERSION_MAJOR = 1
> -RED_VERSION_MINOR = 0
> +SPICE_VERSION_MAJOR = 1
> +SPICE_VERSION_MINOR = 0
>  
>  +
>  . Compatibility – UINT32[]
> @@ -117,49 +117,49 @@ expressed using one or more bits in the compatibilities 
> vector.
>  +
>  [source,c]
>  
> -RED_CHANNEL_MAIN = 1
> -RED_CHANNEL_DISPLAY  = 2
> -RED_CHANNEL_INPUTS   = 3
> -RED_CHANNEL_CURSOR   = 4
> -RED_CHANNEL_PLAYBACK = 5
> -RED_CHANNEL_RECORD   = 6
> +SPICE_CHANNEL_MAIN   = 1
> +SPICE_CHANNEL_DISPLAY= 2
> +SPICE_CHANNEL_INPUTS = 3
> +SPICE_CHANNEL_CURSOR = 4
> +SPICE_CHANNEL_PLAYBACK   = 5
> +SPICE_CHANNEL_RECORD = 6
>  
>  +
>  . Error codes UINT32
>  +
>  [source,c]
>  
> -RED_ERROR_OK = 0
> -RED_ERROR_ERROR  = 1
> -RED_ERROR_INVALID_MAGIC  = 2
> -RED_ERROR_INVALID_DATA   = 3
> -RED_ERROR_VERSION_MISMATCH   = 4
> -RED_ERROR_NEED_SECURED   = 5
> -RED_ERROR_NEED_UNSECURED = 6
> -RED_ERROR_PERMISSION_DENIED  = 7
> -RED_ERROR_BAD_CONNECTION_ID  = 8
> -RED_ERROR_CHANNEL_NOT_AVAILABLE  = 9
> +SPICE_LINK_ERR_OK= 0
> +SPICE_LINK_ERR_ERROR = 1
> +SPICE_LINK_ERR_INVALID_MAGIC = 2
> +SPICE_LINK_ERR_INVALID_DATA  = 3
> +SPICE_LINK_ERR_VERSION_MISMATCH  = 4
> +SPICE_LINK_ERR_NEED_SECURED  = 5
> +SPICE_LINK_ERR_NEED_UNSECURED= 6
> +SPICE_LINK_ERR_PERMISSION_DENIED = 7
> +SPICE_LINK_ERR_BAD_CONNECTION_ID = 8
> +SPICE_LINK_ERR_CHANNEL_NOT_AVAILABLE = 9
>  
>  +
>  . Warning codes
>  +
>  [source,c]
>  
> -RED_WARN_GENERAL = 0
> +SPICE_WARN_GENERAL   = 0
>  
>  +
>  . Information codes
>  +
>  [source,c]
>  
> -RED_INFO_GENERAL = 0
> +SPICE_INFO_GENERAL   = 0
>  
>  +
>  . public key buffer size.
>  +
>  [source,c]
>  
> -RED_TICKET_PUBKEY_BYTES = 162 /* size needed for holding 1024 bit RSA public
> +SPICE_TICKET_PUBKEY_BYTES = 162 /* size needed for holding 1024 bit RSA 
> public
>  key in X.509 SubjectPublicKeyInfo format. */
>  
>  +
> @@ -168,16 +168,16 @@ key in X.509 SubjectPublicKeyInfo format. */
>  .. Connection process
>  +
>  The channel connection process is initiated by the client. The client sends
> -RedLinkMess. In respons

[Spice-devel] [spice/docs] docs: include protocol and for-newbies documents

2019-10-14 Thread Victor Toso
From: Victor Toso 

Only by building and sharing the documents we will be able to get them
up to date.

Signed-off-by: Victor Toso 
---
 docs/meson.build | 14 ++
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/docs/meson.build b/docs/meson.build
index 82864bb8..ce0334c0 100644
--- a/docs/meson.build
+++ b/docs/meson.build
@@ -1,11 +1,17 @@
+asciidoc_files = ['spice_for_newbies',
+  'spice_protocol',
+  'spice_style',
+  'spice_threading_model',
+  'vd_interfaces']
+
 if get_option('manual')
   asciidoc = find_program('asciidoc', required : false)
   if asciidoc.found()
 asciidoc_args = ['-a', 'data-uri', '-a', 'icons', '-a', 'toc']
-foreach doc : ['style', 'threading_model']
-  custom_target('spice_@0@.html'.format(doc),
-input : 'spice_@0@.txt'.format(doc),
-output : 'spice_@0@.html'.format(doc),
+foreach doc : asciidoc_files
+  custom_target('@0@.html'.format(doc),
+input : '@0@.txt'.format(doc),
+output : '@0@.html'.format(doc),
 build_by_default: true,
 command : [asciidoc, '-n', asciidoc_args, '-o', 
'@OUTPUT@', '@INPUT@'])
 endforeach
-- 
2.21.0

___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-server] event-loop: Change internal core interface

2019-10-14 Thread Victor Toso
Hi,

On Thu, Oct 10, 2019 at 11:02:00AM +0100, Frediano Ziglio wrote:
> Allow to modify/cancel timers/watches without having to retrieve
> the code interface.
> This will make sure that you are not using the wrong interface.
> Simplify code to deal with timers/watches.

Yes

> Remove the requirement to have the core interface available
> for removing timers/watches.
> 
> Signed-off-by: Frediano Ziglio 
> Acked-by: Victor Toso 

Yes, ack :)


> ---
>  server/char-device.c|  28 ++---
>  server/event-loop.c | 206 
>  server/inputs-channel.c |   6 +-
>  server/main-dispatcher.c|   2 +-
>  server/red-channel-client.c |  43 +++
>  server/red-common.h |  15 ++-
>  server/red-stream-device.c  |   5 +-
>  server/red-stream.c |   2 +-
>  server/red-worker.c |   2 +-
>  server/reds.c   |  69 ++-
>  server/reds.h   |  12 --
>  server/tests/basic-event-loop.c |  35 +-
>  12 files changed, 211 insertions(+), 214 deletions(-)
> 
> diff --git a/server/char-device.c b/server/char-device.c
> index 03ac9907c..5c6f583b2 100644
> --- a/server/char-device.c
> +++ b/server/char-device.c
> @@ -187,7 +187,7 @@ static void red_char_device_client_free(RedCharDevice 
> *dev,
>  {
>  GList *l, *next;
>  
> -reds_core_timer_remove(dev->priv->reds, 
> dev_client->wait_for_tokens_timer);
> +red_timer_remove(dev_client->wait_for_tokens_timer);
>  dev_client->wait_for_tokens_timer = NULL;
>  
>  g_queue_free_full(dev_client->send_queue, 
> (GDestroyNotify)red_pipe_item_unref);
> @@ -273,8 +273,6 @@ static uint64_t 
> red_char_device_max_send_tokens(RedCharDevice *dev)
>  static void red_char_device_add_msg_to_client_queue(RedCharDeviceClient 
> *dev_client,
>  RedPipeItem *msg)
>  {
> -RedCharDevice *dev = dev_client->dev;
> -
>  if (g_queue_get_length(dev_client->send_queue) >= 
> dev_client->max_send_queue_size) {
>  red_char_device_handle_client_overflow(dev_client);
>  return;
> @@ -283,8 +281,8 @@ static void 
> red_char_device_add_msg_to_client_queue(RedCharDeviceClient *dev_cli
>  red_pipe_item_ref(msg);
>  g_queue_push_head(dev_client->send_queue, msg);
>  if (!dev_client->wait_for_tokens_started) {
> -reds_core_timer_start(dev->priv->reds, 
> dev_client->wait_for_tokens_timer,
> -  RED_CHAR_DEVICE_WAIT_TOKENS_TIMEOUT);
> +red_timer_start(dev_client->wait_for_tokens_timer,
> +RED_CHAR_DEVICE_WAIT_TOKENS_TIMEOUT);
>  dev_client->wait_for_tokens_started = TRUE;
>  }
>  }
> @@ -396,12 +394,12 @@ 
> red_char_device_send_to_client_tokens_absorb(RedCharDevice *dev,
>  }
>  
>  if (red_char_device_can_send_to_client(dev_client)) {
> -reds_core_timer_cancel(dev->priv->reds, 
> dev_client->wait_for_tokens_timer);
> +red_timer_cancel(dev_client->wait_for_tokens_timer);
>  dev_client->wait_for_tokens_started = FALSE;
>  red_char_device_read_from_device(dev_client->dev);
>  } else if (!g_queue_is_empty(dev_client->send_queue)) {
> -reds_core_timer_start(dev->priv->reds, 
> dev_client->wait_for_tokens_timer,
> -  RED_CHAR_DEVICE_WAIT_TOKENS_TIMEOUT);
> +red_timer_start(dev_client->wait_for_tokens_timer,
> +RED_CHAR_DEVICE_WAIT_TOKENS_TIMEOUT);
>  dev_client->wait_for_tokens_started = TRUE;
>  }
>  }
> @@ -462,7 +460,7 @@ static int red_char_device_write_to_device(RedCharDevice 
> *dev)
>  g_object_ref(dev);
>  
>  if (dev->priv->write_to_dev_timer) {
> -reds_core_timer_cancel(dev->priv->reds, 
> dev->priv->write_to_dev_timer);
> +red_timer_cancel(dev->priv->write_to_dev_timer);
>  }
>  
>  sif = spice_char_device_get_interface(dev->priv->sin);
> @@ -499,8 +497,8 @@ static int red_char_device_write_to_device(RedCharDevice 
> *dev)
>  if (dev->priv->running) {
>  if (dev->priv->cur_write_buf) {
>  if (dev->priv->write_to_dev_timer) {
> -reds_core_timer_start(dev->priv->reds, 
> dev->priv->write_to_dev_timer,
> -  CHAR_DEVICE_WRITE_TO_TIMEOUT);
> +red_timer_start(dev->priv->write_to_dev_timer,
> +CHAR_DEVICE_WRITE_TO_TIMEOUT);
>  }
>

Re: [Spice-devel] [PATCH spice-common] codegen: Document "chunk" attribute

2019-10-10 Thread Victor Toso
On Thu, Oct 10, 2019 at 12:38:33PM +0100, Frediano Ziglio wrote:
> Signed-off-by: Frediano Ziglio 
Acked-by: Victor Toso 

Thanks,
> ---
>  python_modules/ptypes.py | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/python_modules/ptypes.py b/python_modules/ptypes.py
> index 796a436..5aa6e18 100644
> --- a/python_modules/ptypes.py
> +++ b/python_modules/ptypes.py
> @@ -60,6 +60,9 @@ valid_attributes=set([
>  'outvar',
>  # C structure has an anonymous member (used in switch)
>  'anon',
> +# the C structure contains a pointer to a SpiceChunks structure.
> +# The SpiceChunks structure is allocated inside the demarshalled
> +# buffer and data will point to original message.
>  'chunk',
>  # this channel is contained in an #ifdef section
>  # the argument specifies the preprocessor define to check
> -- 
> 2.21.0
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-common v2] codegen: Check validity of array members

2019-10-10 Thread Victor Toso
Hi,

I was doing some tests, seems to work well :)

On Wed, Aug 14, 2019 at 06:08:24PM +0100, Frediano Ziglio wrote:
> Check that combination of fields for an array does not
> lead to unsafe code.
> check_valid method came from generate_c_declaration with
> some more check and it's use in demarshaller to validate
> the array if the structure is not generated.
> 
> Signed-off-by: Frediano Ziglio 
> ---
>  python_modules/demarshal.py |  2 ++
>  python_modules/ptypes.py| 31 ++-
>  2 files changed, 32 insertions(+), 1 deletion(-)
> 
> Changes since v1:
> - add comments to explain the checks done

Many thanks for the comments,
Acked-by: Victor Toso 
> 
> diff --git a/python_modules/demarshal.py b/python_modules/demarshal.py
> index acd4b6f..3736976 100644
> --- a/python_modules/demarshal.py
> +++ b/python_modules/demarshal.py
> @@ -315,6 +315,8 @@ def write_validate_pointer_item(writer, container, item, 
> scope, parent_scope, st
>  def write_validate_array_item(writer, container, item, scope, parent_scope, 
> start,
>want_nw_size, want_mem_size, want_extra_size):
>  array = item.type
> +if item.member:
> +array.check_valid(item.member)
>  is_byte_size = False
>  element_type = array.element_type
>  if array.is_bytes_length():
> diff --git a/python_modules/ptypes.py b/python_modules/ptypes.py
> index 311ce3d..ebe001c 100644
> --- a/python_modules/ptypes.py
> +++ b/python_modules/ptypes.py
> @@ -485,7 +485,36 @@ class ArrayType(Type):
>  def c_type(self):
>  return self.element_type.c_type()
>  
> +def check_valid(self, member):
> +# These attribute corresponds to specific structure size
> +if member.has_attr("chunk") or member.has_attr("as_ptr"):
> +return
> +# These attribute indicate that the array is stored in the structure
> +# as a pointer of the array. If there's no way to retrieve the length
> +# of the array give error, as the user has no way to do bound checks
> +if member.has_attr("to_ptr") or member.has_attr("ptr_array"):
> +if not (self.is_identifier_length() or 
> self.is_constant_length()):
> +raise Exception("Unsecure, no length of array")
> +return
> +# This attribute indicate that the array is store at the end
> +# of the structure, the user will compute the length from the
> +# entire message size
> +if member.has_end_attr():
> +return
> +# Avoid bug, the array has no length specified and no space
> +# would be allocated
> +if self.is_remaining_length():
> +raise Exception('C output array is not allocated')
> +# For constant length (like "foo[5]") the field is a sized array
> +# For identifier automatically a pointer to allocated data is store,
> +# in this case user can read the size using the other field specified
> +# by the identifier
> +if self.is_constant_length() or self.is_identifier_length():
> +return
> +raise NotImplementedError('unknown array %s' % str(self))
> +
>  def generate_c_declaration(self, writer, member):
> +self.check_valid(member)
>  name = member.name
>  if member.has_attr("chunk"):
>  return writer.writeln('SpiceChunks *%s;' % name)
> @@ -497,7 +526,7 @@ class ArrayType(Type):
>  return writer.writeln('%s *%s;' % (self.c_type(), name))
>  if member.has_attr("ptr_array"):
>  return writer.writeln('%s *%s[0];' % (self.c_type(), name))
> -if member.has_end_attr() or self.is_remaining_length():
> +if member.has_end_attr():
>  return writer.writeln('%s %s[0];' % (self.c_type(), name))
>  if self.is_constant_length():
>  return writer.writeln('%s %s[%s];' % (self.c_type(), name, 
> self.size))
> -- 
> 2.20.1
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

Re: [Spice-devel] [PATCH spice-common] codegen: Add 'chunk' to the output attributes

2019-10-10 Thread Victor Toso
Hi,

On Wed, Aug 14, 2019 at 06:08:25PM +0100, Frediano Ziglio wrote:
> Output attributes are the attributes that specify how to store
> that field in the C structure.
> There can be only one output type specified.

It misses documentation on valid_attributes in case you feel like
adding too

> Signed-off-by: Frediano Ziglio 

    Acked-by: Victor Toso 

> ---
>  python_modules/ptypes.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/python_modules/ptypes.py b/python_modules/ptypes.py
> index ebe001c..796a436 100644
> --- a/python_modules/ptypes.py
> +++ b/python_modules/ptypes.py
> @@ -98,7 +98,7 @@ def fix_attributes(attribute_list):
>  attrs[name] = lst
>  
>  # these attributes specify output format, only one can be set
> -output_attrs = set(['end', 'to_ptr', 'as_ptr', 'ptr_array', 'zero'])
> +output_attrs = set(['end', 'to_ptr', 'as_ptr', 'ptr_array', 'zero', 
> 'chunk'])
>  if len(output_attrs.intersection(attrs.keys())) > 1:
>  raise Exception("Multiple output type attributes specified %s" % 
> output_attrs)
>  
> -- 
> 2.20.1
> 
> ___
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel


signature.asc
Description: PGP signature
___
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/spice-devel

  1   2   3   4   5   6   7   8   9   10   >