Installation Guide - LeGeRyChEeSe/Sunshine-AIO GitHub Wiki
Installation Guide
Detailed installation and configuration guide for Sunshine-AIO streaming setup.
๐ Prerequisites
System Requirements
Minimum:
- Windows 10 (1903+) or Windows 11
- 4GB RAM, DirectX 11 GPU
- 2GB storage space
- Administrator privileges
Recommended:
- Modern CPU (Intel i5/AMD Ryzen 5+)
- 8GB+ RAM, Hardware encoding GPU (NVIDIA GTX 1050+/AMD RX 400+)
- SSD storage, Wired network connection
Note: Python, Git, and all dependencies are installed automatically by the script.
๐ Installation Methods
Method 1: Automated Installation (Recommended)
One Command Setup:
# Run as Administrator
irm https://sunshine-aio.com/script.ps1 | iex
Automated Process:
- โ System compatibility check
- โ Install Python/Git if needed
- โ Download Sunshine-AIO from GitHub
- โ Setup virtual environment
- โ Interactive component selection
- โ Complete configuration
User Input Required:
- Installation directory selection
- Component choices (Sunshine, VDD, Playnite)
- Basic Sunshine configuration
Alternative: Development/Testing Mode
For developers only:
Note: There is no public download available. This method is only for developers who have direct repository access.
- Clone repository (developers only)
- Setup environment:
python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt
- Launch: Use development environment
Important: Regular users should use the automated PowerShell installation only.
Note: The above development mode replaces any manual installation methods. There are no public downloads or releases available for manual installation.
๐๏ธ Component Selection
Core Components
๐ Sunshine (Required)
Function: Main streaming server for screen capture and transmission
Installation includes:
- Official Sunshine installer
- Windows service setup
- Firewall configuration
- Web UI (https://localhost:47990)
Default configuration:
- Port: 47989 (streaming)
- Port: 47990 (web interface)
- Auto-generated certificates
๐ฅ๏ธ Virtual Display Driver (Recommended)
Function: Creates virtual monitors for independent streaming
Benefits:
- Stream without affecting main display
- Custom resolutions per client
- Multiple virtual displays
- HDR support
Uses: Microsoft IDD Sample Driver (free, open-source)
Optional Components
๐ฑ Sunshine Virtual Monitor (Advanced)
Function: Advanced display management through PowerShell automation
Features:
- Automatic resolution matching
- HDR switching
- Multi-monitor support
- Client-specific configurations
Includes: PowerShell scripts, Multi Monitor Tool, VSync Toggle
๐ฎ Playnite (Game Library)
Function: Universal game library manager
Supported Platforms:
- Steam, Epic Games, GOG, Xbox Game Pass
- Origin, Uplay, emulators
- Custom game additions
Optimized for streaming with fullscreen mode and controller support
๐๏ธ Playnite Watcher (Stream Integration)
Function: Enhances Playnite for streaming
Features:
- Automatic game import
- Session monitoring
- Performance tracking
- Stream integration helpers
โ๏ธ Installation Configuration
Interactive Setup Options
Component Selection Screen:
Select components to install:
[X] Sunshine (Required)
[X] Virtual Display Driver (Recommended)
[ ] Sunshine Virtual Monitor (Advanced)
[ ] Playnite (Optional)
[ ] Playnite Watcher (Optional)
Advanced Options:
- Custom installation directories
- Service configuration
- Network settings
- Display preferences
Note: Silent installation mode is not currently available - all installation requires user interaction through the PowerShell script.
๐ง Post-Installation Configuration
1. Sunshine Web UI Setup
Access the Web Interface:
- Open browser:
https://localhost:47990
- Accept certificate warning (self-signed)
- Create admin account
- Configure basic settings
Essential Settings:
Username: [your-choice]
Password: [secure-password]
Output Resolution: Auto (or match your display)
FPS: 60
Bitrate: 20000 (adjust for network)
2. Add Applications
Desktop Streaming:
{
"name": "Desktop",
"cmd": "cmd /C",
"working-dir": "C:\\"
}
Steam Big Picture:
{
"name": "Steam Big Picture",
"cmd": "C:\\Program Files (x86)\\Steam\\steam.exe",
"args": "-bigpicture",
"working-dir": "C:\\Program Files (x86)\\Steam"
}
Individual Game:
{
"name": "Game Name",
"cmd": "C:\\Games\\YourGame\\game.exe",
"working-dir": "C:\\Games\\YourGame",
"prep-cmd": ["taskkill /f /im explorer.exe"],
"detached": ["explorer.exe"]
}
3. Network Configuration
Automatic (Recommended):
- UPnP will configure port forwarding
- mDNS enables auto-discovery
- Certificate generation is automatic
Manual Configuration:
Router Port Forwarding:
- Internal Port: 47989 (TCP/UDP)
- External Port: 47989 (TCP/UDP)
- Internal IP: [Your PC IP]
Firewall Rules:
- Allow Sunshine through Windows Firewall
- Allow port 47989 inbound/outbound
4. Virtual Display Setup
Verify Installation:
# Check for virtual display
Get-PnpDevice -Class "Display" | Where-Object {$_.FriendlyName -like "*Virtual*"}
# Should show: IDD HDR (Virtual Display)
Configure Resolutions:
- Right-click Desktop โ Display Settings
- Virtual display should appear as secondary
- Set desired resolution and position
- Apply changes
๐งช Testing Your Installation
Basic Functionality Test
1. Service Status:
Get-Service -Name "SunshineService"
# Should show: Running
2. Web UI Access:
- Navigate to
https://localhost:47990
- Should load Sunshine configuration page
- No certificate errors after accepting
3. Virtual Display:
- Check display settings for virtual monitor
- Should see additional display available
- Test resolution changes
Streaming Test
1. Install Moonlight Client:
- Download from: https://moonlight-stream.org
- Install on target device
- Ensure same network as host PC
2. Pairing Process:
1. Launch Moonlight on client
2. Scan for PC (should auto-detect)
3. Enter pairing PIN from Sunshine Web UI
4. Successful pairing confirmation
3. Stream Test:
1. Launch "Desktop" application from Moonlight
2. Should see your PC screen on client
3. Test mouse/keyboard input
4. Verify audio streaming
๐ ๏ธ Troubleshooting Installation
Common Installation Errors
PowerShell Execution Policy Error:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Python Not Found:
# Install Python 3.8+ from python.org
# Or use Microsoft Store version
# Verify with: python --version
Admin Privileges Required:
Right-click PowerShell/Command Prompt
Select "Run as Administrator"
Re-run installation command
Component-Specific Issues
Sunshine Service Won't Start:
# Check Windows Event Viewer
eventvwr.msc
# Navigate to: Applications and Services โ Sunshine
# Look for error messages
Virtual Display Driver Failed:
# Manual driver installation
cd "tools\VDD Control"
.\VDD Control.exe
# Click "Install Driver" button
# Restart if prompted
Playnite Installation Issues:
# Check if Visual C++ Redistributable is installed
# Download from Microsoft if missing
# Retry Playnite installation
๐ Installation Directories
Default Locations:
Sunshine: C:\Program Files\Sunshine
VDD Control: [project]\tools\VDD Control
Playnite: C:\Program Files\Playnite
SVM Tools: [project]\tools\sunshine-virtual-monitor-main
Config Data: C:\ProgramData\Sunshine
Log Files:
Installation: [project]\logs\installation.log
Sunshine: C:\ProgramData\Sunshine\sunshine.log
System Events: Windows Event Viewer โ Sunshine
๐ Updating Sunshine-AIO
Update Process
Method 1 (Easiest):
- Launch: Use the "Sunshine-AIO" shortcut in the installation folder
- Update: Select update option from the main menu
- Automatic: Tool will update itself automatically
Method 2 (PowerShell):
# From inside the Sunshine-AIO folder (recommended)
cd "path\to\Sunshine-AIO"
irm https://sunshine-aio.com/script.ps1 | iex
# OR from anywhere - you'll be prompted for the installation path
irm https://sunshine-aio.com/script.ps1 | iex
๐จ Security Best Practices
Essential Security
- Set strong passwords in Sunshine Web UI
- Enable authentication for remote access
- Keep Windows updated
- Monitor firewall logs
Network Security
- Use VPN for internet streaming
- Change default ports if exposing to internet
- Regular certificate updates
- Monitor access attempts
For advanced configuration options, see Architecture Overview and API Reference.