Thank you for the feedback! I managed to make foot terminal working in my setup -- the issue was in lack of compositor ( weston in my case) on the guest, looks like it's the common issue for wayland programs, so now I have competitive advantage over virtio-gpu setup :) I also think that having socket-only approach in Spectrum is not a bad idea cause it is enabling remote access and networking easy for virtual machines and applications. On Wed, Nov 30, 2022 at 10:51 AM Alyssa Ross <alyssa.ross@unikie.com> wrote:
On Wed, Nov 30, 2022 at 09:12:50AM +0200, Vadim Likholetov wrote:
This patchset enables forwarding Wayland connections from appVM to the host with the help of waypipe tool.
It doesn't reqire major changes in Spectrum and tries to utilise existing packages and solutions. Main idea is to create VSOCK virtual device on the start of appVM and use this virtual socket to connect host and guest.
On the host side I implement vm-start-way tool that is based on vm-start, but does necessary preparations for wayland forwarfing.
The guest VM is appvm-hello-waypipe and described in hello-waypipe.nix file.
To test it boot the Spectrum and do 'vm-start-way appvm-hello-waypipe'. Be patient and in couple of seconds will appear a terminal window from appVM.
This patches are for test the concept, so possibly redisign is needed for production use.
Thanks for sharing these!
You've done a great job fitting it into the Spectrum codebase.
Since you mentioned in your previous email that the same applications are broken with Waypipe and virtio-gpu, I think that virtio-gpu still looks like the way to go, since it would allow optimisations like shared memory between guest and host that wouldn't be possible with a pure socket-based approach like Waypipe.
But lots of people come to Spectrum looking for advice and inspiration for their own custom Wayland-in-VM setups, and often they're more interested in Waypipe, so it'll be great to be able to point them here.
ps sorry for mess in the mailing list
No worries. :)