Ah so this is where the influx of activity comes from..
Hi, creator of Moonshine here.
I'll try to answer some common questions here instead of replying the same thing everywhere:
What is it?
At it's core it's similar to Sunshine but with one important difference: Moonshine creates its own compositor and does not rely on an existing desktop environment. The benefits:
- You do not need a running desktop environment: it can run headless.
- The compositor is created with any resolution and any refresh rate, without requiring a dummy plug.
- Because Moonshine controls the compositor, it has HDR support out-of-the-box, even if your monitor does not support HDR (ongoing development, it works in the games I tested).
- If you do have a running desktop environment, you can keep using it while streaming a game at the same time.
On a more technical level: I like the narrow focus that Moonshine has. Only one encoder (Vulkan), only one OS supported (Linux), no GUI, no compatibility with old Moonlight clients. The codebase is intentionally "lean". Of course this also has disadvantages like requiring semi-recent GPUs & drivers, only working on Linux and newer Moonlight clients, but I can live with that.
Why create it?
The short answer: a lazy girlfriend and a stubborn Linux user.
The long answer: Moonshine is a hobby project that I've been working on for a few years (first commit goes back to 2022). It was (and still is) a fun exercise and helped me learn a lot, which if it never became functional would have been a nice outcome already. In fact, in earlier README's I advise people not to use it because at the time it did what Sunshine does but worse. I removed that section when I started adding features that made it different from Sunshine.
Should I use it?
Today I would say to a new user: use Sunshine, there's tons of guides and online information and it will likely work fine for you.
If you like tinkering and trying out new things: sure, why not :).
I think you're underselling this. Sunshine can't do any resolution on Linux. That's huge. :)
I discovered Moonshine last night [0] as a result of frustration with Sunshine's many flaws on Linux, and I'm loving it so far. Thank you for your work!
I played with it for 10 minutes, very impressive. Couldn't get vscode to work, will try again later with different apps. (vscode is not that important anyway as it has a remote mode)
I understand (well, "guess" more than understand when it comes to graphic stack in Linux) that it being it's own compositor probably means running a full desktop environment in it is infeasible, but a good way to run software remotely is painfully missing in Linux right now, even one app at a time. The built in servers in kde/gnome are problematic in general and require the monitor to be turned on.
The barrier to entry for tinkering on Linux is so much lower now for anyone with a $20 Claude/Codex plan. What might have been an hours/days of fruitless head-scratching can now be done in minutes while you grab a coffee.
While I haven't tried this yet, I do have a Bazzite box that would be a good fit. I wouldn't treat the rough edges as a deterrent the way we have in the past.