I really don't get why redhat decided to kill SPICE. It was the only thing that got using a VM on open source virtualization (e.g. proxmox) close to the experience of using one on vmware.
VNC is truly the worst remote desktop protocol you can have. Bad latency, bad quality, bad integration.
I did all of my development for a couple years on my first startup in a VM on my proxmox server, connected through spice. Was extremely nice being able to just go from desktop to laptop to any other machine that I had available and have the same environment available everywhere.
It's been a few years and I haven't had a need for it recently, but it's sad to hear that they stopped supporting it.
Now that NoMachine 10 has no free option, I’ve decided that I should try to burn some tokens on making a good, performant remote desktop system. I’m targeting moonlight-like performance with Windows RDP-like user experience. Cross-platform.
I don’t need my particular repo to be the one where this gets solved, but now that coding agents are really good, we shouldn’t have to put up with paying for shit software anymore, IMO.
Did the same thing. Added the exact features I wanted/needed to FreeRDP and had Claude generate a lightweight server from scratch. Bye, bye, TeamViewer, Windows RDP, and VNC.
Not enough people want to pay for VDI basically, certainly compared to how much it costs to maintain it. SPICE at the time that we abandoned it "only" supported video compression, which is complicated enough, but everyone wanted 3D support which would have added another labyrinthine stack on top.
Also the code at the time was a massive security nightmare, written with no validation of fields in the network protocol. (I sincerely hope this has improved.)
With that said, I wish the project well. SPICE is a much better user experience than VNC.
As an irregular user of spice (via Proxmox PVE), I wish the stars would align for QEMU to gain support for sunlight/moonlight streaming directly in the hypervisor. That'd be a killer app for VDI-style infrastructure, now that accelerated guest graphics via Venus, VirtIO GPU, and Intel's support for SR-IOV is finally coming together.
> I wish the stars would align for QEMU to gain support for sunlight/moonlight streaming directly in the hypervisor.
I didn't know I wanted it until you said it.
I have a few QEMU VMs where I use PCI-passthrough of a whole GPU and a USB controller, and wire the display and USB outputs physically into a KVM switch - works great, but not having to fiddle with the KVM (and run out of physical ports) would be - indeed, killer app.
This would be ideal. I've been reading about Moonlight a lot lately, and it's many children. I'm building a new home theater set up and will be trying it soon.
It's possible and I have a very early E2E test. A modification of the sunshine backend itself to be able to connect to qemu. In the future it's definitely possible to have this directly in qemu but it would require reimplementing the whole sunshine protocol
You need a HW encoder per VM, which means vGPU/SR-IOV for anything multi-tenant. But it would work similar to qemu-rdp (which is a better codebase and really, the successor to SPICE): -display dbus can get the framebuffer to any external process, so a Moonlight-protocol server could attach there. Nobody's done it that I can find.
Probably not everyone's thing, but nice layout and color choice! I like the way how it slightly overlaps the surrounding text, but doesn't make it unreadable.
I would never call a software project SPICE; I use a fucking search engine when naming things to avoid the cringe of ignorantly landing on a dupe. (And also use SPICE in the LTSpice incarnation; I should give ngspice a spin one of these days.)
Agreed. The SPICE electronics simulator is over fifty years old, and is still very important to people who have to design electronics. It's inside many other electronics design tools. It's standard enough that when a manufacturer comes out with a new analog IC, they often provide a SPICE model for it. Otherwise nobody wants to design it into their circuit. Reusing the name for another program is like calling something new FORTRAN.
(I had nothing to do with SPICE, other than as a user. It's by Laurence Nagel, and I'm John Nagle. Not related.)
Any you spent more time writing that comment than it would have taken to click the "SPICE" link next to that pony image logo, wait the ~1 second it takes to load, and read the first sentence which would have told you what it is.
I know what SPICE is, but for anyone not knowing it, the first SPICE text is also a hyperlink. Clicking it brings the clicker to the homepage instantly.
This is how it should be done: Hyperlinking pages to prevent information duplication and inconsistencies, using libraries to not rewrite every piece of code when it's required.
It passes the sniff test, and a low-color palette of a pony reading a Red Hat checks out pretty nicely.
Maybe we should entertain ourselves sometimes. I don't care about people's choices as long as it's universally unethical or offending or... you get the idea.
Edit: BTW, That pony is the user's general avatar, it seems. Fun.
Once interviewed for an automotive embedded software position and they asked me if I was familiar with SPICE. Naturally assumed they meant the circuit simulator, answered yes and they did not dig deeper
Only later in the job I realized that they had meant Software Process Improvement and Capability Determination.
I guess I hadn't been paying attention. Is this just the Windows SPICE client that Red Hat has abandoned, or are they moving toward dropping SPICE altogether? Does Red Hat no longer have a VDI product? (I'm sure they did at one point.)
I used to use x2goserver which was and still is awesome.
These days I prefer docker-based KASM Workspaces, or if you just want a nice GUI over your "bare-metal" VM or server then KasmVNC is great and easy to setup (not that KASM Workspaces is hard to setup)
SPICE is not in any danger of dying; it's the thing every analog EE uses to simulate their circuits, and has been for 40 years. This remote desktop thing needs to change its name.
The page doesn't make what SPICE is for obvious, aside from linking to other pages, but they are not talking about the circuit simulation tool. (It appears to be some sort of tool for accessing desktops of virtual machines remotely.)
I have the impression that you could also use it for accessing desktops of real machines remotely, too, but that's only because I keep running into it when I'm looking for information about the real SPICE, a 50-year-old open-source program used to design every computer you've ever used and for which the IEEE awarded Donald Pedersen the Medal of Honor.
I wish somebody would build a C version of xpra which does only has the client side for latency hiding and manages the remote caching using X11 messages only.
58 comments
[ 0.18 ms ] story [ 4.6 ms ] threadVNC is truly the worst remote desktop protocol you can have. Bad latency, bad quality, bad integration.
It's been a few years and I haven't had a need for it recently, but it's sad to hear that they stopped supporting it.
https://github.com/x3haloed/ascry
I don’t need my particular repo to be the one where this gets solved, but now that coding agents are really good, we shouldn’t have to put up with paying for shit software anymore, IMO.
Also the code at the time was a massive security nightmare, written with no validation of fields in the network protocol. (I sincerely hope this has improved.)
With that said, I wish the project well. SPICE is a much better user experience than VNC.
I didn't know I wanted it until you said it.
I have a few QEMU VMs where I use PCI-passthrough of a whole GPU and a USB controller, and wire the display and USB outputs physically into a KVM switch - works great, but not having to fiddle with the KVM (and run out of physical ports) would be - indeed, killer app.
Follow along https://anvil.fangorn.io/fangorn/sunshine-qemu and https://blog.fangorn.io (there isn't anything here yet)
Edit: great work on this fork, by the way.
Using it often. Mostly via ngspice nowadays: https://en.wikipedia.org/wiki/Ngspice
Ngspice is okay but it's a bit clumsy switching between it and xschem.
(I had nothing to do with SPICE, other than as a user. It's by Laurence Nagel, and I'm John Nagle. Not related.)
This is how it should be done: Hyperlinking pages to prevent information duplication and inconsistencies, using libraries to not rewrite every piece of code when it's required.
It passes the sniff test, and a low-color palette of a pony reading a Red Hat checks out pretty nicely.
Maybe we should entertain ourselves sometimes. I don't care about people's choices as long as it's universally unethical or offending or... you get the idea.
Edit: BTW, That pony is the user's general avatar, it seems. Fun.
Only later in the job I realized that they had meant Software Process Improvement and Capability Determination.
Regardless, thanks for picking this up, OP.
These days I prefer docker-based KASM Workspaces, or if you just want a nice GUI over your "bare-metal" VM or server then KasmVNC is great and easy to setup (not that KASM Workspaces is hard to setup)
https://hub.docker.com/r/linuxserver/kasm https://github.com/kasmtech/KasmVNC
x11rdp has been good to me.
I wish op all the best, it's a tough journey
https://bugzilla.redhat.com/show_bug.cgi?id=2030592