Skip to content

Add MoonDeck support#333

Draft
FozzieHi wants to merge 4 commits into
PierreBeucher:masterfrom
FozzieHi:moon-deck-buddy
Draft

Add MoonDeck support#333
FozzieHi wants to merge 4 commits into
PierreBeucher:masterfrom
FozzieHi:moon-deck-buddy

Conversation

@FozzieHi
Copy link
Copy Markdown

This PR adds support for MoonDeck (https://github.com/FrogTheFrog/moondeck) by installing MoonDeckBuddy in the Sunshine container. This could also work for Wolf, but MoonDeck specifically mentions Sunshine, and I haven't added it nor tested it for Wolf.

This opens up port 59999, but MoonDeck communicates securely over this port, and requires a pairing system similar to Moonlight (see screenshots below).

I have added a startup task to supervisord for MoonDeckBuddy, and have also added the systray plugin to XFCE, as it allows a simple way to close MoonDeckBuddy from the Desktop.

MoonDeckBuddy pairing UI Systray plugin

@FozzieHi FozzieHi marked this pull request as draft December 19, 2025 22:50
@PierreBeucher
Copy link
Copy Markdown
Owner

That's quite awesome, thanks ! I won't have time to look at this until January sorry, but from a quick glance it looks great how you installed it in Docker image and configured Supervisord. If you tested it and it works for nominal usage it's already a good step, I don't have a Steam Deck unfortunately (will try to find another way to test, or we can ask the community). You confirming it works is enough already to ship it as "experimental" at least. I also have a few non-blocking security concerns I'll develop further later (don't worry it's minor stuff)

One thing I can think of after quick read-through: can you make MoonDeck runtime optional ? eg. templating supervisord and opening ports as per some flags so it doesn't run by default on startup to avoid having an unused port open, and enable it with a flag (such as --moondeck-enable) and have a prompt ask for it. Since it's still experimental I think it's a better way to ship it.

@PierreBeucher
Copy link
Copy Markdown
Owner

Starting to review this :) Same point as for Prismlauncher addition: #337 (comment)

I fear adding more and more built-in components would make our base image too big - but possibility to install it later on-the-fly would be great ! A simple command or button to click and it would install everything, using most of the code you have here.

It's also an overall design decision for how to add programs and tools on-the-fly. I'll try to think of something ASAP

@FozzieHi
Copy link
Copy Markdown
Author

Thanks @PierreBeucher, yeah let me know what you come up with. Otherwise moving this into a script on the Desktop or something could be a quick change to do.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants