Steam Streaming This guide covers how to stream games from the headless server gaming stack to any thin client, laptop, mobile device, or TV. The host runs Sunshine on top of Steam-Headless, accelerated by the server's AMD Radeon AI PRO R9700 (hardware-accelerated AV1, HEVC, and H.264 video encoding via VA-API). Clients connect using the open-source Moonlight GameStream client. Server & Connection Details Hostname: sunshine.drheck.dev Internal IPv4: 10.0.0.112 Internal IPv6: [fd77:7777:5010:0:1337:f1ac:d00d:4799] Public IPv6: [2603:3001:626:9d40:1337:f1ac:d00d:4799] Sunshine Admin Web Portal: https://sunshine.drheck.dev (Authentik SSO protected, restricted to akadmin) Headless Desktop Web Viewer (noVNC): http://10.0.0.112:8083 (LAN access for initial Steam GUI login and 2FA) Universal Pairing Process Every Moonlight client connects via mutual TLS certificates authenticated once with a 4-digit PIN: Launch Moonlight on your client device. Click the + (Add Host) button (or select sunshine if discovered via mDNS). Enter sunshine.drheck.dev (or the internal IP 10.0.0.112 if on local LAN). Moonlight will display a random 4-digit PIN (e.g. 4821). Open a browser to https://sunshine.drheck.dev/pin and log in with your akadmin Authentik account. Enter the 4-digit PIN and give your client a friendly name. Click Send. The lock icon on Moonlight will turn into a green checkmark, showing your available applications ( Desktop, Steam Big Picture). Client Setup Instructions 1. Arch Linux (Desktop / Laptop / Handheld) Installation Moonlight is available in the official Arch repositories: sudo pacman -S moonlight-qt (Optional gamepad support packages): # For Xbox Wireless controllers over Bluetooth sudo pacman -S xpadneo-dkms # For PlayStation DualSense / DualShock controllers sudo pacman -S linux-firmware Configuration & Tuning Open Moonlight Settings (Gear Icon): Resolution: Match your monitor natively (e.g., 1920x1080, 2560x1440, or 3840x2160). Frame Rate: Set to 60 FPS or 120 FPS depending on your screen refresh rate. Video Bitrate: 1080p60: 20–30 Mbps 1440p60/120: 40–60 Mbps 4K60/120: 60–80 Mbps Video Codec: Choose Automatic or force HEVC / AV1 (the R9700 encodes AV1 and HEVC with ultra-low latency). Hardware Acceleration: Set to VA-API or VDPAU depending on your client GPU. 2. Android (Phones & Tablets) Installation Install Moonlight Game Streaming from the Google Play Store or F-Droid. Controller Support Connect any Bluetooth gamepad (Xbox Wireless, PS5 DualSense, 8BitDo, Razer Kishi, Backbone One). Android natively maps standard HID gamepads. On-screen virtual touchscreen controls are available if no gamepad is connected. Configuration & Tuning Open Settings in Moonlight: Display Resolution: Select Native resolution or 1080p. Framerate: Match your phone screen ( 60 FPS, 90 FPS, or 120 FPS for high-refresh AMOLED panels). Video Decoder: Set to Hardware decoding and enable Prefer HEVC/H.265. Stretch to fit: Enable if your phone has a 19.5:9 or 20:9 ultrawide aspect ratio and you want to eliminate black bars (or leave unchecked for pixel-perfect 16:9). Touch Mode: Select Trackpad Mode for desktop navigation or Touchscreen Mode for direct tap interactions. 3. iPad / iOS Installation Download Moonlight Game Streaming from the Apple App Store. Controller Support Connect any MFi, PlayStation (DualShock 4 / DualSense), or Xbox Series/One controller via Settings > Bluetooth. Full L3/R3 clickable thumbsticks and analog triggers are supported natively by iOS. iPad-Specific Tuning Open Moonlight on the iPad and tap Settings: Resolution: iPads have a 4:3 / 3:2 aspect ratio. You can pick: 1920x1080 or 2560x1440 (standard 16:9 with letterboxing). Custom Resolution: Enter your iPad's exact panel resolution (e.g. 2048x1536 or 2388x1668) for a full-screen, edge-to-edge experience without black bars. Frame Rate: If using an iPad Pro with ProMotion, select 120 FPS. HDR: If using an iPad Pro with an XDR Liquid Retina display, enable HDR in Moonlight settings for 10-bit color. Mouse & Keyboard: iPadOS supports Bluetooth mice and magic keyboards. Enable Optimize mouse for remote desktop in settings for zero mouse acceleration. 4. Google TV / Android TV (Chromecast, Shield TV, Smart TVs) Installation Open the Google Play Store on your Google TV / Android TV interface. Search for Moonlight Game Streaming and click Install. Controller Support Pair an Xbox or PlayStation controller directly to Google TV via Settings > Remotes & Accessories > Pair accessory. USB gamepads and 2.4GHz wireless dongles plugged into TV USB ports work out of the box. TV-Specific Optimizations Open Moonlight on your TV and open Settings: Resolution: Select 1080p (for Chromecast 4K or 1080p dongles) or 4K (for NVIDIA Shield or high-performance TV SoCs). Frame Rate: Set to 60 FPS. Frame Pacing: Set to Prefer smoothest video. This reduces micro-stutters caused by TV display buffer mismatches. Audio Configuration: Set to Stereo for TV speakers or soundbars. Set to 5.1 Surround Sound if your TV connects to an AV receiver or multi-channel eARC sound system. Network: For optimal results with 4K streaming on TVs, use a 5GHz Wi-Fi band or an Ethernet adapter. Available Applications App Entry Description Ideal For Steam Big Picture Launches Steam directly in controller-friendly Big Picture UI Gaming with Xbox / PS gamepads on TV or handheld Desktop Opens full Xfce Linux desktop on virtual display :55 Keyboard & mouse games, emulators, web apps To add custom games, scripts, or emulators, navigate to https://sunshine.drheck.dev/apps and click + Add. Essential Navigation Shortcuts Action Keyboard Shortcut Gamepad Shortcut Quit Stream Ctrl + Alt + Shift + Q Hold Start + Select + L1 + R1 for 3 seconds Toggle Fullscreen Ctrl + Alt + Shift + F11 — Capture / Release Mouse Ctrl + Alt + Shift + Z — Show Stream Stats (FPS, Ping, Loss) Ctrl + Alt + Shift + S — Send Ctrl+Alt+Del Ctrl + Alt + Shift + D —