Skip to content

Instantly share code, notes, and snippets.

@k3karthic
Last active October 20, 2025 13:56
Show Gist options
  • Select an option

  • Save k3karthic/696ba721105278304732139bfff7cb5c to your computer and use it in GitHub Desktop.

Select an option

Save k3karthic/696ba721105278304732139bfff7cb5c to your computer and use it in GitHub Desktop.
Fedora Budgie Atomic - Sunshine

Install

Step 1: Add copr repo

sudo curl -L -o /etc/yum.repos.d/lizardbyte-stable-fedora-42.repo https://copr.fedorainfracloud.org/coprs/lizardbyte/stable/repo/fedora-42/lizardbyte-stable-fedora-42.repo

Step 2: Refresh

sudo rpm-ostree refresh-md

Step 3: Install

sudo rpm-ostree install Sunshine
sudo systemctl reboot

Firewall

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

Autostart

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

Uninstall

Option 1: Rollback (The Easiest and Safest Revert)

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 reboot

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

Option 2: Targeted Uninstall

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 status

    Look 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
controller = disabled
fps = 15
vaapi_strict_rc_buffer = enabled
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment