Free & Open Source Remote Cooperative Gaming System โ Multi-Platform
Features โข Our Story โข Use Cases โข Installation โข How It Works โข Architecture โข Contributing โข License
Big Remote Play was born from a real story of friendship, determination, and the passion for Free Software.
Alessandro e Silva Xavier (known as Alessandro) and Alexasandro Pacheco Feliciano (known as Pacheco) wanted to play games together on BigLinux using a feature that only existed on proprietary platforms like Steam Remote Play and GeForce NOW. The problem? These systems are proprietary, locked to their own ecosystems. If a game wasn't available on their platform, it was nearly impossible to play remotely with friends.
Refusing to accept this limitation, Alessandro and Pacheco embarked on a journey of countless attempts and extensive research. After trying many different approaches, they finally found a working solution by combining multiple free software programs โ including Sunshine, Moonlight, scripts, and VPN tools. They had achieved what the proprietary platforms kept locked behind their walls, and the best part: it was Free Software and multi-platform!
Excited by their success, they started sharing their achievement during their live streams, which generated tremendous enthusiasm from the community. However, there was a catch โ the setup was complicated. It required configuring multiple separate solutions: Sunshine, Moonlight, custom scripts, VPN connections... it was a lot for anyone to handle.
That's when a friend decided to step in and help develop a unified application to simplify the entire process. And so, Big Remote Play was born! ๐
An all-in-one application that integrates everything you need for remote cooperative gaming โ no proprietary platforms, no restrictions, no limits on which games you can play.
- One-click server โ Start/stop the Sunshine streaming server directly from the UI
- Automatic game detection โ Detects games from Steam, Lutris, and Heroic Launcher automatically
- Steam Big Picture mode โ Launch Steam games directly in Big Picture mode with automatic session management
- Streaming settings โ Configure resolution, FPS, bitrate, codec (H.264/H.265/AV1), monitor selection, and GPU selection
- Audio management โ Hybrid audio streaming with simultaneous host + remote playback using PulseAudio
- PIN-based pairing โ Secure connection flow with PIN code authentication
- Performance monitor โ Real-time performance metrics dashboard
- Firewall configuration โ Automatic firewall setup for required ports
- Secure credentials โ Masked credential fields with copy-to-clipboard support
- Auto-discovery โ Automatically finds Sunshine hosts on the network using Avahi/mDNS
- Manual connection โ Connect by IP address with full IPv4 and IPv6 support
- PIN connection โ Quick connect using a short PIN code
- Adaptive streaming โ Automatic resolution and bitrate detection based on your device
- Moonlight integration โ Seamless connection through Moonlight-QT client
- Built-in VPN setup โ Create private networks using Headscale, Tailscale, or ZeroTier
- Step-by-step wizard โ Guided setup with progress indicators
- Domain integration โ Support for DigitalPlat Domain for easy domain setup
- Connection history โ Save, manage, and reconnect to previous networks
- Share credentials โ Export and share connection details with friends
- 29 languages supported including: English, Portuguese (BR), Spanish, German, French, Italian, Japanese, Korean, Chinese, Russian, and many more
- Automatic translation via gettext
- GTK 4 + Libadwaita โ Modern, native Linux desktop experience
- Dark/Light theme support โ Follows system preference or manual selection
- Responsive sidebar navigation โ Clean, organized interface
- Service status indicators โ Real-time status for all required services
Big Remote Play enables a variety of exciting scenarios:
| Scenario | Description |
|---|---|
| ๐ฎ Couch Co-op Online | Play with a friend (or more!) with only one copy of the game running on the host |
| ๐ฑ Play on Mobile | Stream your PC games to your Android or iOS phone/tablet |
| ๐ป Remote PC Gaming | Play your games from another computer anywhere in the world |
| ๐บ Play on TV | Stream games to your TV using any Moonlight-compatible device |
| ๐ LAN Party | Multiple friends connect to your PC over the local network |
| ๐ Internet Gaming | Play with friends over the internet using the built-in VPN |
| ๐ฒ Any Game, Any Platform | Works with Steam, Lutris, Heroic, GOG, Epic โ no restrictions! |
The package is available for Arch-based distributions:
# Clone the repository
git clone https://github.com/biglinux/big-remote-play.git
cd big-remote-play/pkgbuild
# Build and install
makepkg -si| Dependency | Purpose |
|---|---|
python |
Application runtime |
gtk4 |
GUI toolkit |
libadwaita |
GNOME/Adwaita widgets |
python-gobject |
Python GTK bindings |
python-cairo |
cairo graphics library bindings |
avahi |
Network service discovery (mDNS) |
curl |
HTTP requests (Sunshine API) |
iproute2 |
Network utilities |
sunshine-bin |
Game stream host server |
moonlight-qt |
Game stream client |
| Dependency | Purpose |
|---|---|
docker |
Private network (Headscale server) |
tailscale |
Private network VPN client |
zerotier-one |
Private network VPN client |
# Clone the repository
git clone https://github.com/biglinux/big-remote-play.git
cd big-remote-play
# Run directly (development mode)
python3 usr/share/big-remote-play/main.pyBig Remote Play acts as a unified interface that orchestrates multiple open-source technologies:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Big Remote Play (GTK4) โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Host View โ Guest View โ Private Network View โ
โโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Core Services โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โ๏ธ Sunshine โ ๐ Moonlight โ ๐ Headscale/Tailscale/ZeroTierโ
โ (Host) โ (Client) โ (VPN) โ
โโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโ
- Open Big Remote Play
- Navigate to Host Server
- Configure your streaming settings (resolution, FPS, codec)
- Select which games to share
- Click Start Server
- Share your PIN or IP with your friends!
- Open Big Remote Play
- Navigate to Connect to Server
- Either:
- Select a discovered host from the list
- Enter the host's IP address manually
- Use a PIN code for quick connection
- Pair with the host and start playing!
- Set up a Private Network using the built-in wizard
- Share the connection credentials with your friend
- Both connect to the private network
- Connect as Host/Guest as usual โ the VPN handles the rest!
big-remote-play/
โโโ ๐ usr/
โ โโโ ๐ bin/
โ โ โโโ big-remote-play # Shell launcher script
โ โโโ ๐ share/
โ โโโ ๐ applications/
โ โ โโโ big-remote-play.desktop # Desktop entry
โ โโโ ๐ big-remote-play/
โ โ โโโ main.py # Application entry point
โ โ โโโ ๐ ui/ # User Interface
โ โ โ โโโ main_window.py # Main window with sidebar nav
โ โ โ โโโ host_view.py # Host server configuration
โ โ โ โโโ guest_view.py # Guest client connection
โ โ โ โโโ private_network_view.py # VPN/Private network setup
โ โ โ โโโ performance_monitor.py # Real-time performance dashboard
โ โ โ โโโ sunshine_preferences.py # Sunshine advanced settings
โ โ โ โโโ moonlight_preferences.py # Moonlight advanced settings
โ โ โ โโโ preferences.py # General app preferences
โ โ โ โโโ installer_window.py # Dependency installer
โ โ โ โโโ style.css # Custom GTK4 styles
โ โ โโโ ๐ host/ # Host module
โ โ โ โโโ sunshine_manager.py # Sunshine server management
โ โ โโโ ๐ guest/ # Guest module
โ โ โ โโโ moonlight_client.py # Moonlight client wrapper
โ โ โโโ ๐ utils/ # Utility modules
โ โ โ โโโ audio.py # PulseAudio management
โ โ โ โโโ config.py # Configuration management
โ โ โ โโโ game_detector.py # Game detection (Steam/Lutris/Heroic)
โ โ โ โโโ i18n.py # Internationalization
โ โ โ โโโ icons.py # Icon utilities
โ โ โ โโโ logger.py # Logging system
โ โ โ โโโ network.py # Network discovery & tools
โ โ โ โโโ system_check.py # System dependency checker
โ โ โโโ ๐ scripts/ # Shell scripts
โ โ โ โโโ big-remoteplay-configure.sh
โ โ โ โโโ big-remoteplay-firewall.sh
โ โ โ โโโ big-remoteplay-install.sh
โ โ โ โโโ big-remoteplay-service.sh
โ โ โ โโโ configure_firewall.sh
โ โ โ โโโ create-network_headscale.sh
โ โ โ โโโ fix_sunshine_libs.sh
โ โ โ โโโ headscale_master.sh
โ โ โโโ ๐ icons/ # SVG/PNG icons
โ โโโ ๐ icons/ # System icon theme
โ โโโ ๐ locale/ # Compiled translations
โโโ ๐ locale/ # Translation source files (.po/.pot)
โโโ ๐ pkgbuild/ # Arch Linux packaging
โ โโโ PKGBUILD
โ โโโ pkgbuild.install
โโโ ๐ .github/
โ โโโ ๐ workflows/
โ โโโ translate-and-build-package.yml # CI/CD pipeline
โโโ COPYING # GPLv3 License
โโโ README.md # This file
| Component | Technology | Description |
|---|---|---|
| GUI Framework | GTK 4 + Libadwaita | Modern GNOME desktop UI |
| Language | Python 3 | Application logic |
| Streaming Host | Sunshine | High-performance game stream server |
| Streaming Client | Moonlight-QT | Open-source game stream client |
| Network Discovery | Avahi (mDNS) | Automatic host discovery on LAN |
| Audio | PulseAudio | Hybrid audio routing (host + remote) |
| VPN | Headscale / Tailscale / ZeroTier | Private network for internet play |
| Packaging | PKGBUILD (Arch) | Distribution packaging |
| CI/CD | GitHub Actions | Automated translation & packaging |
| Module | Responsibility |
|---|---|
SunshineHost |
Start/stop/configure Sunshine server, manage apps, send PINs, API communication |
MoonlightClient |
Connect/disconnect Moonlight, pairing, host probing, app listing |
GameDetector |
Scan Steam, Lutris, and Heroic Launcher for installed games |
AudioManager |
PulseAudio sink management, hybrid audio (host + guest), streaming audio routing |
NetworkDiscovery |
Avahi-based host discovery, PIN resolution, IPv4/IPv6 support |
PrivateNetworkView |
VPN setup wizard (Headscale, Tailscale, ZeroTier), connection management, credential sharing |
We welcome contributions from the community! Here's how you can help:
Found a bug? Please open an issue with:
- Steps to reproduce
- Expected vs actual behavior
- System info (distro, GTK version, Sunshine/Moonlight version)
Help us reach more people! Translation files are in the locale/ directory. We currently support 29 languages but always welcome improvements:
- Fork the repository
- Edit or create a
.pofile inlocale/ - Submit a Pull Request
The translation template is at locale/big-remote-play.pot.
- Fork the repository
- Create a branch:
git checkout -b feature/my-feature - Make your changes
- Test your changes locally:
python3 usr/share/big-remote-play/main.py
- Commit:
git commit -m 'Add my feature' - Push:
git push origin feature/my-feature - Open a Pull Request
Have an idea to make the project better? Open an issue tagged as Enhancement or start a Discussion!
- ๐ฌ Demo Video: Watch on YouTube
- ๐ Website: biglinux.com.br
| Name | Role | Contact |
|---|---|---|
| Rafael Ruscher | Lead Developer | rruscher@gmail.com |
| Alexasandro Pacheco Feliciano (Pacheco) | Co-Creator & Tester | @pachecogameroficial |
| Alessandro e Silva Xavier (Alessandro) | Co-Creator & Tester | @alessandro741 |
This project is licensed under the GNU General Public License v3.0 โ see the COPYING file for details.
Big Remote Play
Copyright (C) 2026 BigLinux
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
- Sunshine โ The amazing open-source game streaming host
- Moonlight โ The outstanding open-source game streaming client
- BigLinux โ The Linux distribution that inspired this project
- Headscale โ Self-hosted Tailscale control server
- DigitalPlat โ Domain services for the community
- The entire open-source gaming community for making this possible
We hope you enjoy it and help us by collaborating! ๐
Made with โค๏ธ by the community, for the community.
Free Software โ because gaming should have no walls.