Skip to content

refactor(sunshine): change to stable via external copr#4515

Open
PVermeer wants to merge 2 commits intoublue-os:unstablefrom
PVermeer:add_sunshine_stable
Open

refactor(sunshine): change to stable via external copr#4515
PVermeer wants to merge 2 commits intoublue-os:unstablefrom
PVermeer:add_sunshine_stable

Conversation

@PVermeer
Copy link
Copy Markdown
Contributor

Motivation

Due to numerous ignored issues about their stable repo I created my own COPR test repo to see why stable isn't built. I found numerous issues that would prevent a solid build on all targets. I suggested a new build and package setup for COPR to the sunshine maintainer where stable could be build on all targets without issues. The maintainer however has no intention of rebuilding stable every 6 months for the major Fedora update. So this is a dead end.

The only solution, to keep Sunshine on Bazzite, is with an external build COPR so I did.

New COPR

I transfered my work to a new COPR and this Github repo.

Packages

  • sunshine: This is the stable release and my CI will notify me if there is a new release or Fedora has been forked so I can review the changes and warn / update Bazzite before releasing.
  • sunshine-beta: CI will check once a week for beta updates and update the beta package. No warnings here since it's rolling.

Testing

Vaapi

Vaapi encoder has been tested by me and has no issues.

Nvidia needs testing!

Nvidia I could not test since I have no recent hardware for it. This package uses a different strategy to build the cuda parts to support encoding on Nvidia hardware. I don't expect any issue since the code compiles fine, but I would like for someone to test it before releasing this PR.

Nvidia

Right now i'm using the latest nvcc cuda compilers because it's easy to maintain. The cuda parts of the code will only work with a compatible driver / hardware. Right now it must be 580 or higher. I know Bazzite is using recent drivers so this would be no issue.

However, I would like to know if there are Bazzite images that use a lower nvidia driver version (<580) and/or supports the GTX 10** or lower?

If so, I will set the cuda compiler to a lower version. The cuda compiler is forwards compatible so it will support newer drivers but drops off older drivers (and hardware). The range it should currently support is RTX 20xx - RTX 50xx >. If the GTX 10xx is still supported on Bazzite I will switch it to a lower version.

Changes with Sunshine COPR

Removed a lot of unnecessary code so it builds on all targets, including:

  • Testing suites, code is already tested. Testing can cause issues in different chroots and is not needed for packaging.
  • Compiler switching on targets because of gcc - cuda compatibility. This is fixed with a conda package that has all the necessary compilers to compile the cuda files. Sunshine itself is build with the host compiler for max compatibility and the cuda part is linked with.
  • Removed unneeded build packages.
  • Removed all runtime dependencies. rpmbuild can sort this out automatically. This also reduced the total packages install size.

Removing all this complexity resulted in a reduction of 289 lines in the spec file.

To do

  • compile with -Werror on: One dependency will give warnings but It's harmless. The next stable build will fix it or I will patch it soon.

Changes to Bazzite

  • Reverted the removal of LizardByte/Sunshine
  • Updated to my copr: pvermeer/sunshine
  • Updated install Sunshine to sunshine (no capital)
  • Removed the setcap. The RPM is already doing this or does this not work when building the container...?
  • Service is sunshine.service again

I've added my own copr here but I would be great if Bazzite can fork this, or create it's own copr builds using this spec. I intend to maintain this for as long as Sunshine doesn't build stable properly.

Conclusion

I think it's a shame for Bazzite to loose Sunshine because of these issues. It's a great project and one of reasons I moved to Bazzite, long ago. I understand dealing with these issues can be frustrating. Issues arising with this build can now be directed to me. Also new stable builds will personally be checked by me before releasing.

https://copr.fedorainfracloud.org/coprs/pvermeer/sunshine
https://github.com/PVermeer/copr_sunshine

…erous ignored issues about their stable repo not supporting Fedora 43 these last 6 months."

This reverts commit 079fa8a.
@PVermeer PVermeer marked this pull request as ready for review March 31, 2026 17:28
@KyleGospo KyleGospo force-pushed the unstable branch 4 times, most recently from 5776b9c to e054b24 Compare April 6, 2026 08:22
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.

1 participant