Step 1: Add copr repo
sudo curl -L -o /etc/yum.repos.d/lizardbyte-beta-fedora-43.repo https://copr.fedorainfracloud.org/coprs/lizardbyte/beta/repo/fedora-43/lizardbyte-beta-fedora-43.repo
Step 2: Refresh
sudo rpm-ostree refresh-md
Step 3: Install
sudo rpm-ostree install Sunshine
sudo systemctl reboot
sudo firewall-cmd --permanent --add-port=47984/tcp
sudo firewall-cmd --permanent --add-port=47989/tcp
sudo firewall-cmd --permanent --add-port=47990/tcp
sudo firewall-cmd --permanent --add-port=48010/tcp
sudo firewall-cmd --permanent --add-port=47998-48000/udp
# Apply the changes
sudo firewall-cmd --reload
Step 1: Add autostart script
# Create the necessary directory
mkdir -p ~/.config/autostart/
# Create the autostart desktop file using a heredoc
cat <<EOF > ~/.config/autostart/sunshine.desktop
[Desktop Entry]
Type=Application
Name=Sunshine
Comment=Start the Gamestreaming Server
Exec=/usr/bin/env systemctl start --u sunshine
X-GNOME-Autostart-enabled=true
EOF
Step 2: Enable autologin for lightdm
AUTOLOGIN_USER=$(whoami) sudo sed -i -e "s/^\(#\s*\)?autologin-user=.*/autologin-user=$AUTOLOGIN_USER/" -e "s/^\(#\s*\)?autologin-session=.*/autologin-session=budgie-desktop/" /etc/lightdm/lightdm.conf
Step 4: Reboot
Because rpm-ostree install creates a new, separate "deployment" (a new OS image), the old one is saved and is your immediate rollback point.
-
Perform the Rollback: This command will mark your previous system state (the one before you installed the COPR and Sunshine) as the default to boot into.
sudo rpm-ostree rollback -
Reboot: You must reboot to switch to the previous, clean system image.
systemctl rebootAfter rebooting, the package (Sunshine) and the COPR repository (lizardbyte/stable.repo) will be completely gone from your operating system, and your system will be exactly as it was before the initial install command.
If you have other layered packages you want to keep and only want to remove Sunshine and the lizardbyte/stable COPR repository, you need to uninstall both the application and the repository file itself.
-
Find the Exact Repository Package Name: Since you installed the COPR using a URL to a .repo file, you need to find the name of the installed repository package. COPRs often use a naming convention like
copr-rpm-lizardbyte-stable. First, check your layered packages:rpm-ostree statusLook under the LayeredPackages section for sunshine and the name of the COPR repo package (it will likely look like copr-rpm-lizardbyte-stable).
-
Uninstall the Package and Repository: Use rpm-ostree uninstall for all layered packages you want to remove.
sudo rpm-ostree uninstall sunshine copr-rpm-lizardbyte-stable(Note: Adjust the copr-rpm-lizardbyte-stable name if your rpm-ostree status output gave a different package name for the COPR repo file).
-
Reboot: You must reboot to apply the removal of the layered packages.
systemctl reboot