Prerequisites
- A Proxmox VE 7.x or 8.x host that will run the Beagle control plane
- A target VM that will run Sunshine
- An endpoint with at least 2 GB RAM and an 8 GB USB stick
- A network with at least 100 Mbit LAN, Gigabit recommended
This guide follows the real Beagle provisioning path: install the control plane on Proxmox, prepare Sunshine inside the target VM, create a VM-specific USB artifact, boot the endpoint, and optionally pre-register Moonlight.
Clone the repository on the Proxmox node and run the full setup. This installs the Beagle control plane, UI integration, artifact hosting, and reverse proxy configuration.
git clone https://github.com/meinzeug/beagle-os.git
cd beagle-os
./scripts/setup-proxmox-host.shInside the target VM, prepare Sunshine. Beagle keeps the target explicit: one VM, one generated profile, one endpoint path.
./scripts/configure-sunshine-guest.shOpen the VM in the Proxmox UI and download the VM-specific artifact. The script downloads the host-served payload and embeds the VM profile directly into the medium.
./pve-thin-client-live-usb-vm-100.sh
./pve-thin-client-usb-installer-vm-100.shBoot the endpoint from the generated medium. The Beagle endpoint OS comes up in runtime mode and starts Moonlight against the assigned Sunshine VM.
If you want to pre-register the endpoint with Sunshine before first use, run the Moonlight registration helper.
./scripts/register-moonlight-client-on-sunshine.shRun the host health check and fix host-side dependencies before creating artifacts.
./scripts/check-proxmox-host.shRe-run the Sunshine guest preparation script inside the VM.
Create a fresh VM-specific USB script from the correct VM. Beagle is VM-centric by design.
Verify that the control plane and VM assignment are correct, then use the Proxmox UI or API attach flow.
Recreate the medium from the host so the VM profile and endpoint identity data are embedded again.