A cross-platform desktop client for remotely accessing Shells™ virtual desktop instances.
A Shells™ account is required to use this application. You can create an account at shells.com.
- Remote desktop access to your Shells™ virtual machines
- Cross-platform support (Linux, macOS, Windows)
- SPICE protocol for high-performance display, keyboard, and mouse input
- Audio support via PortAudio and Opus codec
- Clipboard sharing between local and remote systems
- OAuth2 authentication with QR code support for thin clients
- Go 1.24 or later
- CGO enabled (required for audio and graphics dependencies)
Install the required development packages:
# Debian/Ubuntu
sudo apt-get install libgl1-mesa-dev libxcursor-dev libxrandr-dev \
libxinerama-dev libxi-dev libxxf86vm-dev libasound2-dev pkg-config
# Fedora
sudo dnf install mesa-libGL-devel libXcursor-devel libXrandr-devel \
libXinerama-devel libXi-devel libXxf86vm-devel alsa-lib-devel pkgconfigXcode command line tools are required:
xcode-select --installMSYS2 with MinGW64 toolchain is recommended for building on Windows.
go build -v .For producing portable binaries with statically linked audio libraries, add the following to go.mod:
replace github.com/gordonklaus/portaudio => github.com/KarpelesLab/static-portaudio v0.6.190600
replace github.com/hraban/opus => github.com/KarpelesLab/static-opus v0.9.152
SHELLS_FULLSCREEN=WIDTHxHEIGHT- Start in fullscreen mode with specified resolution (e.g.,1920x1080)SHELLS_LOGIN=thin- Use QR code login flow for thin client deployments
This software is proprietary to Shells™. See shells.com for terms of service.