Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DietPi-Software | Sunshine: Self-hosted game stream host for Moonlight #6340

Open
wants to merge 7 commits into
base: dev
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .meta/dietpi-survey_report
100755 → 100644
Original file line number Diff line number Diff line change
Expand Up @@ -661,6 +661,7 @@ shopt -s extglob
aSOFTWARE_NAME8_17[206]='openHAB'
aSOFTWARE_NAME8_17[207]='Moonlight (CLI)'
aSOFTWARE_NAME8_17[208]='Moonlight (GUI)'
aSOFTWARE_NAME8_17[209]='Sunshine'

# Pre-create software counter array so that we can see also software (available in newest version) with 0 installs
for i in "${aSOFTWARE_NAME8_17[@]}"
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ New software:
- openHAB | This long requested vendor and technology agnostic FLOSS home automation software has been finally added to DietPi. Many thanks to @just-jason and many others for requesting it and @MDAR for providing install instructions and valuable information: https://github.com/MichaIng/DietPi/issues/3857
- Moonlight (CLI) | This CLI game streaming client for Sunshine and NVIDIA GameStream has been added to our software catalogue. Many thanks to @mtekman for implementing it: https://github.com/MichaIng/DietPi/pull/6303
- Moonlight (GUI) | This GUI game streaming client for Sunshine and NVIDIA GameStream has been added to our software catalogue. Many thanks to @mtekman for implementing it: https://github.com/MichaIng/DietPi/pull/6339
- Sunshine | This self-hosted game stream host for Moonlight, an alternative to NVIDIA GameStream, has been added to our software catalogue. Many thanks to @mtekman for implementing it: https://github.com/MichaIng/DietPi/pull/6340

Enhancements:
- NanoPi R series | Updated udev rules for the Ethernet LEDs to not lid the LEDs of disabled Ethernet devices. If an Ethernet device has been detected by the kernel/udev already and an LED is configured to light on link (connected cable), it lights until the interface is set up and no link is detected. So for disabled interfaces, some LEDs remained lit. The udev rules have now been changed to quickly set up and down the interfaces for the LEDs to remain off until an interface has been successfully configured.
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -335,6 +335,7 @@ Links to hardware and software manufacturers, sources and build instructions use
- [openHAB](https://github.com/openhab)
- [Moonlight (CLI)](https://github.com/moonlight-stream/moonlight-embedded)
- [Moonlight (GUI)](https://github.com/moonlight-stream/moonlight-qt)
- [Sunshine](https://github.com/LizardByte/Sunshine)

---

Expand Down
29 changes: 29 additions & 0 deletions dietpi/dietpi-software
Original file line number Diff line number Diff line change
Expand Up @@ -992,6 +992,18 @@ Available commands:
aSOFTWARE_AVAIL_G_HW_ARCH[$software_id,1]=0
# No Bookworm packages yet and Bullseye packages depend on libssl1.1
aSOFTWARE_AVAIL_G_DISTRO[$software_id,7]=0
#------------------
software_id=209
aSOFTWARE_NAME[$software_id]='Sunshine'
aSOFTWARE_DESC[$software_id]='Self-hosted game stream host for Moonlight'
aSOFTWARE_CATX[$software_id]=5
aSOFTWARE_DOCS[$software_id]='https://dietpi.com/docs/software/gaming/#sunshine'
# x86_64 and ARMv8 only: https://github.com/LizardByte/Sunshine/releases
aSOFTWARE_AVAIL_G_HW_ARCH[$software_id,1]=0
aSOFTWARE_AVAIL_G_HW_ARCH[$software_id,2]=0
aSOFTWARE_AVAIL_G_HW_ARCH[$software_id,11]=0
# No Bookworm packages yet and Bullseye packages depend on libssl1.1
(( $G_DISTRO == 6 )) || aSOFTWARE_AVAIL_G_DISTRO[$software_id,$G_DISTRO]=0

# Social & Search
#--------------------------------------------------------------------------------
Expand Down Expand Up @@ -11212,6 +11224,13 @@ _EOF_
/boot/dietpi/func/dietpi-set_hardware rpi-codec 1
fi

if To_Install 209 # Sunshine
then
local arch=$(dpkg --print-architecture)
local fallback_url="https://github.com/LizardByte/Sunshine/releases/download/v0.19.1/sunshine-debian-$G_DISTRO_NAME-$arch.deb"
Download_Install "$(curl -sSfL 'https://api.github.com/repos/LizardByte/Sunshine/releases/latest' | mawk -F\" "/^ *\"browser_download_url\": \".*\/sunshine-debian-$G_DISTRO_NAME-$arch\.deb\"$/{print \$4}")"
fi

if To_Install 27 # TasmoAdmin
then
# Install required PHP modules
Expand Down Expand Up @@ -12859,6 +12878,16 @@ If no WireGuard (auto)start is included, but you require it, please do the follo
[[ -f '/etc/apt/trusted.gpg.d/dietpi-moonlight-qt.gpg' ]] && G_EXEC rm /etc/apt/trusted.gpg.d/dietpi-moonlight-qt.gpg
fi

if To_Uninstall 209 # Sunshine
then
G_AGP sunshine
G_EXEC rm -Rf /{root,home/*}/.config/{sunshine,systemd/user/xdg-desktop-autostart.target.wants/sunshine.service}
for i in /{root,home/*}/.config/systemd/user/xdg-desktop-autostart.target.wants
do
[[ -d $i ]] && G_EXEC rmdir -p --ignore-fail-on-non-empty "$i"
done
fi

if To_Uninstall 119 # CAVA
then
G_AGP cava
Expand Down