I refuse to let SPICE die

(github.com)

87 points | by Nefarius 2 days ago ago

67 comments

  • IndrekR 2 days ago ago

    Major confusion for me, as SPICE is well known circuit simulator: https://en.wikipedia.org/wiki/SPICE

    Using it often. Mostly via ngspice nowadays: https://en.wikipedia.org/wiki/Ngspice

    • kazinator 2 days ago ago

      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.)

      • Animats 2 days ago ago

        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.)

      • rjsw 2 days ago ago

        We could speedrun this and just call every product "the thing".

      • kragen 2 days ago ago

        You're absolutely fucking right.

        Ngspice is okay but it's a bit clumsy switching between it and xschem.

    • weinzierl 2 days ago ago

      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.

      • hulitu 18 hours ago ago

        It is called ASPICE.

        • weinzierl 12 hours ago ago

          "The abbreviation SPICE stands for Software Process Improvement and Capability Determination. Automotive SPICE (also commonly abbreviated as ASPICE) combines a process reference model and a process assessment model in one standard"

          https://en.wikipedia.org/wiki/Automotive_SPICE

          In automotive it's known as SPICE, because the automotive is obvious.

      • classified 2 days ago ago

        dEtermination. Also quite confusing.

        • F3nd0 2 days ago ago

          They’re only concerned with capability determination, not name determination. Some people just have no SPINE when it comes to naming things.

    • chrisandchris 2 days ago ago

      People who work with virtualization on Linux will (hopefully) all know what SPICE is.

      Edit: typo

      • IndrekR 2 days ago ago

        > with visualization on Linux

        You mean ‘virtualization’ here, I guess.

      • nocman 2 days ago ago

        Nope. I work with virtualization on Linux every day, and have done so for many years (and many varieties of virtualization). I didn't recognize it by the name, and I don't remember hearing about it before.

      • Hizonner 2 days ago ago

        People who know what both of them are (hello) still won't know which one the headline is talking about.

        The circuit one is definitely older, probably has more users, and is just as relevant in this forum.

      • hulitu 18 hours ago ago

        Yes, a circuit simulator.

    • pjmlp 2 days ago ago

      Indeed, it was what we used in digital circuits lab exercises back in the 90's.

    • RobRivera 2 days ago ago

      I am happy I am not alone in this

  • c0l0 2 days ago ago

    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.

    • matja 2 days ago ago

      > 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.

    • colechristensen 2 days ago ago

      This is a great idea and perhaps not all that hard. I'm getting started on it.

      • colechristensen a day ago ago

        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

        Follow along https://anvil.fangorn.io/fangorn/sunshine-qemu and https://blog.fangorn.io (there isn't anything here yet)

        • woleium 18 hours ago ago

          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.

    • johng 2 days ago ago

      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.

  • franga2000 2 days ago ago

    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.

    • rwmj 2 days ago ago

      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 2D and 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. It was unmarshalling stuff off the network and sending it directly to X11 libs without even bounds checking. (I sincerely hope this has improved.)

      With that said, I wish the project well. SPICE is a much better user experience than VNC, especially if you're looking for something that supports audio, video and USB passthru.

    • x3haloed 2 days ago ago

      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.

      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.

      • CamperBob2 2 days ago ago

        Did the same thing. Added the exact features I wanted/needed to the FreeRDP client and had Claude generate a lightweight server from scratch. Bye, bye, TeamViewer, Windows RDP, and RealVNC.

      • Magniquick 2 days ago ago

        404 for me

      • indigodaddy 2 days ago ago

        404

    • Tostino 2 days ago ago

      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.

    • g8oz 2 days ago ago

      100% agree. VNC is well past its prime.

    • Daviey 2 days ago ago

      and insecure by default

  • indigodaddy 2 days ago ago

    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)

    https://hub.docker.com/r/linuxserver/kasm https://github.com/kasmtech/KasmVNC

  • bityard 2 days ago ago

    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.)

    Regardless, thanks for picking this up, OP.

    • rwmj 2 days ago ago

      Yes, Red Hat dropped SPICE support quite some time ago. Apparently in RHEL 8.3: https://access.redhat.com/solutions/5414901 It's definitely not part of any current Red Hat product. See my other reply for why this is.

      I don't think we have a VDI product as such, assuming you discount VNC which we do support but is hardly a full VDI solution.

  • danilocesar 2 days ago ago

    The major challenge is not keep it building and compatible. The major challenge is to keep up with security issues.

    I wish op all the best, it's a tough journey

  • gbraad 2 days ago ago

    Why the pony with the hat if they do not sponsor it.

    • Nefarius 2 days ago ago

      Because it's funny.

      • nannal 2 days ago ago

        Humor does appear to be rather subjective in this case.

        • F3nd0 2 days ago ago

          I think all humour is.

      • gbraad a day ago ago

        I think it gives the wrong impression, as they actually abandoned it.

  • uecker 2 days ago ago

    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.

  • valdiorn 2 days ago ago

    Who named this project? SPICE - the circuit emulator - is one of the oldest and most well known open source projects id all time.

    • cwillu a day ago ago

      That ship sailed 20 years ago.

  • seymon 2 days ago ago

    Is there a good alternative to SPICE beside VNC?

    • hulitu 18 hours ago ago

      Can you simulate circuits in VNC ?

  • woleium 2 days ago ago

    The lack of a decent SPICE client for mac is disappointing, it’s one if my greatest proxmox frustrations

    Edit: great work on this fork, by the way.

  • arisudesu 2 days ago ago

    I'd rather you refuse to let ViGEmBus die. :)

    • Nefarius 2 days ago ago

      I said all there is to say about it a while ago :P

  • IshKebab 2 days ago ago

    That is one creepy image.

    • KronisLV 2 days ago ago

      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.

    • hughes 2 days ago ago

      Yeah - was the brony/furry mascot original to the service or added by OP?

      • DaSHacka 2 days ago ago

        Its the OP's profile picture, edited with a Red Hat fedora.

      • hn92726819 2 days ago ago

        Specifically, this looks like a drawing of the character Fluttershy. If it is an OC mascot, that would be weird because it looks just like her.

        • Nefarius 2 days ago ago

          It is OC with an obvious, heavy influence.

          • F3nd0 2 days ago ago

            Mad Hattershy.

    • Nefarius 2 days ago ago

      SCNR :D

  • krautburglar a day ago ago

    Deprecation of SPICE was news to me. Issue thread on the removal:

    https://bugzilla.redhat.com/show_bug.cgi?id=2030592

  • krautburglar 2 days ago ago

    redhat spice driver was always touch and go — like every other linux well poisoning they do.

    x11rdp has been good to me.

    • rwmj 2 days ago ago

      You mean the closed source code that Red Hat acquired when we bought Qumranet for $100 million, then open sourced, maintained at a loss for many years, and is now (still) open source and available to everyone to use as they wish?

      • krautburglar 2 days ago ago

        Whether RH paid $100M for this well poisoning, or however much more/less it pays its staff developers to do the same (i.e. wayland, systemd...), the effect is the same: more churn & instability in the Linux space.

  • kragen 2 days ago ago

    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.

    • II2II 2 days ago ago

      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.)

      • kragen 2 days ago ago

        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.