Installation Guide

From download to first stream.

Install Umbra on each gaming PC, then Eclipse on the display device. Start with one working stream before adding the second host.

Choose the right component.

Gaming PC → Umbra

Windows x64 or Linux host. Install once for ordinary streaming, or on two PCs for co-op. On Linux, co-op needs KDE Plasma or GNOME on Wayland. The game runs here. Already using Vibepollo? Umbra (Vibepollo) keeps your settings.

Screen device → Eclipse

LG webOS, Windows x64 or Linux x86_64 client. Install the package matching the device where you will view and control the stream.

Download an attached file under Assets, not GitHub’s automatically generated Source code (zip) or Source code (tar.gz). Those are developer archives, not installable apps. Use the latest compatible stable release. If no package is attached for your platform, that download is not available.

Pairing · First co-op session · Troubleshooting and logs · Tested hardware

1A. Umbra on Windows

Umbra host web interface showing the installed version, Apollo base and separate update-check results.
Umbra’s web interface after setup, showing its version and update checks. Captured on 8 October 2026. View the full-size panel.
Umbra Windows x64 releases

Open the latest release, expand Assets and choose the package described below. If no release is listed, that package has not been published.

Using Vibepollo? Install Umbra (Vibepollo) instead; it keeps your Vibepollo settings. These steps describe the Apollo-based Umbra.

Package: the Windows x64 installer Umbra-windows-x64.exe attached to an Umbra release, not an Eclipse client ZIP. You need a Windows gaming PC, a supported GPU and current driver, administrator access for installation, and the games you intend to run already installed. Windows 11 x64 is the tested host OS.

  1. Open the Umbra release, read its compatibility notes and expand Assets. Download the Windows x64 installer and matching checksum if supplied. Compare its SHA-256 hash with Get-FileHash in PowerShell before opening it.
  2. Back up any existing host configuration and pairings. Umbra replaces Apollo in place, using the same Apollo installation folder and registry identity; installing Apollo again replaces Umbra. Do not expect them to run side by side. If Sunshine is installed separately, stop its service before starting Umbra to avoid competing for network ports or display resources. When upgrading from Apollo or an older Umbra, if setup stops making progress for more than a minute, end reg.exe in Task Manager (Details tab) and setup continues.
  3. Run the installer and approve the Windows administrator prompt. The installer is unsigned for now, so Windows SmartScreen may warn; check the checksum first, then choose More info → Run anyway. Install the bundled virtual-display and controller/device components offered by the installer; there is no separate device-bridge installation step.
  4. Allow host access on your trusted private network when Windows asks. Open the host’s web interface using its installed shortcut or tray action, create the local administrator login and review the available game/desktop entries.
  5. Keep the client-driven display defaults. Pair Eclipse, approve its PIN in Umbra and test an ordinary Desktop or game session before adding another host.

For co-op, install the same compatible Umbra release on the second Windows PC. Co-op-specific defaults are separate from ordinary streaming settings. The Co-op Pane is built in and requested automatically by Eclipse, rather than created in the host’s editable Applications list. You should not create application entries, copy host IDs or tune encoder settings by hand.

Umbra (Vibepollo) on Windows

Umbra (Vibepollo) Windows x64 releases

Open the latest release, expand Assets and choose the package described below. If no release is listed, that package has not been published.

Package: the Windows x64 installer Umbra-Vibepollo-windows-x64.exe attached to the latest Umbra (Vibepollo) release. It is built on Vibepollo instead of Apollo and carries the same additions for Eclipse; compare the two versions.

  1. Download the installer and compare its SHA-256 hash with Get-FileHash in PowerShell before opening it. It is unsigned for now, so Windows SmartScreen may warn; check the hash, then choose More info → Run anyway.
  2. Installing over Vibepollo keeps your settings. Umbra (Vibepollo) upgrades a Vibepollo installation in place, the same way Vibepollo upgrades itself: your configuration, applications and paired devices stay. The installer shows Switch to Umbra (Vibepollo). Installing over Apollo or the Apollo-based Umbra also keeps settings and pairings; the installer removes the old program first. Back up your host configuration before switching anyway.
  3. Keep the bundled virtual-display and virtual gamepad drivers selected. Until code signing is set up, the gamepad driver is signed with Umbra’s own certificate, which the installer adds to the PC’s trusted certificates.
  4. Open the host’s web interface from the Start menu or tray, sign in, pair Eclipse and test an ordinary Desktop stream before co-op. For co-op, install a compatible Umbra on the second PC as well.
  5. Switching back to Vibepollo: run Vibepollo’s own installer. It replaces Umbra (Vibepollo) in place and keeps the same settings, without the Umbra additions Eclipse uses for co-op.

1B. Umbra on Linux

Umbra for Linux release

Open the Umbra for Linux release and expand Assets. If no release is listed, that package has not been published.

Package: Umbra-<version>-linux-x86_64.flatpak, one Flatpak bundle for x86_64 Linux. You need KDE Plasma or GNOME on Wayland (an X11 desktop gives ordinary streaming only), an NVIDIA or AMD GPU with its current driver, and the games you intend to run already installed. It has been tested on Ubuntu 26.04 with KDE Plasma and with GNOME, on an NVIDIA RTX 2060 SUPER and an AMD Radeon RX Vega.

If you installed the earlier Ubuntu .deb (Umbra 0.5.0), remove it first with systemctl --user disable --now sunshine and sudo apt remove umbra. The Flatpak keeps its own settings, so pair Eclipse with it again.

  1. Install Flatpak and add Flathub if you have not already (Ubuntu does not include Flatpak by default):
sudo apt install flatpak
flatpak remote-add --user --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
  1. Download the .flatpak and its .sha256 from the release’s Assets into one folder, check it and install it:
sha256sum -c Umbra-<version>-linux-x86_64.flatpak.sha256
flatpak install --user Umbra-<version>-linux-x86_64.flatpak
  1. Flatpak fetches the Freedesktop runtime and, on NVIDIA, the driver extension matching your installed driver. Start Umbra from the applications menu.
  2. Accept Input Setup when it is offered. It installs the input rule that streamed controllers, mouse and keyboard need, through your desktop’s administrator prompt, and can start Umbra whenever you sign in. You can reopen it from the applications menu. If the desktop asks to allow screen sharing, allow it.
  3. Open https://localhost:47990 in a browser on that PC, create the local administrator login and review the game/desktop entries. If a firewall is enabled, allow the host on your trusted private network.
  4. Keep the client-driven display defaults. Pair Eclipse, approve its PIN in Umbra and test an ordinary Desktop or game session before adding another host.
Linux desktops in Umbra 0.5.1
DesktopStreamingOwn virtual display per streamCo-opHDR
KDE Plasma on Wayland (tested: Ubuntu 26.04, KWin 6.6.6)YesYesYesWith the KDE HDR extra
GNOME on Wayland (tested: Ubuntu 26.04, Mutter 50.1)YesYesYesWith the GNOME HDR extra; a physical HDR monitor streams HDR without it
X11 desktops (Cinnamon, Xfce, MATE …)Yes (tested during development on Linux Mint 22.3)NoNoNo
Sway, Hyprland and other wlroots desktops, COSMICNot supported

Other distributions running KDE Plasma or GNOME on Wayland are expected to behave like those rows but have not been tested. An X11 desktop has no way to create a display while it runs, so there the host streams the desktop but never offers co-op or HDR.

GPUs. NVIDIA (tested: RTX 2060 SUPER, driver 595) and AMD (tested: Radeon RX Vega) both encode on the GPU. The only AMD card available for testing is a Radeon RX Vega from 2017: its video encoder reaches about 60 fps at 4K and 165 fps only at 1080p, its co-op panes run at about 35 fps, and it has no 10-bit encoder, so its ordinary streams are SDR. The same card hit the same 4K limit on Windows (62 fps), so its age, not Umbra, is the likely limit; newer AMD cards could not be tested. Intel GPUs and PCs with more than one GPU are untested.

Co-op. A Linux host and a Windows host can share one co-op session (tested with Umbra 0.5.0 on Windows). Two Linux hosts together are untested.

HDR extras (optional)

Stock KWin and Mutter keep the virtual displays Umbra streams SDR. Two optional extras add HDR virtual displays and 10-bit screen capture: a small patch to KWin 6.6.6 for KDE Plasma and one to Mutter 50.1 for GNOME. Umbra detects them by itself. Like the Flatpak, they were tested on Ubuntu 26.04, which ships those versions. Both patches apply unchanged to KDE’s and GNOME’s own 6.6.6 and 50.1 releases, so other distributions shipping KWin 6.6.6 or Mutter 50.1 are expected to work but are untested. Other KWin or Mutter versions need the patch adapted.

  1. Check your version: kwin_wayland --version must print kwin 6.6.6 (KDE Plasma), or gnome-shell --version must print GNOME Shell 50.1 (GNOME, which runs on Mutter 50.1).
  2. Ubuntu 26.04: the release carries prebuilt packages, Umbra-HDR-KDE-ubuntu26.04.tar.gz and Umbra-HDR-GNOME-ubuntu26.04.tar.gz, built from Ubuntu’s own kwin and mutter packages. Download the one for your desktop, unpack it, check it and install it (KDE shown; the GNOME one is the same with GNOME in its name):
tar -xzf Umbra-HDR-KDE-ubuntu26.04.tar.gz
cd Umbra-HDR-KDE-ubuntu26.04
sha256sum -c SHA256SUMS
sudo dpkg -i *.deb
  1. Other distributions: add the KWin patch or the Mutter patch to your distribution’s own kwin or mutter package, rebuild that package with its usual tools and install it.
  2. Log out and back in, then make Umbra check the desktop again before starting it from the applications menu:
flatpak kill io.github.PreceptorOfMagic.Umbra
rm -f ~/.var/app/io.github.PreceptorOfMagic.Umbra/config/sunshine/*_virtual_hdr
  1. Check that Umbra offers HDR: curl -s http://localhost:47989/serverinfo | grep -o '<UmbraCoopHdr>[01]' prints <UmbraCoopHdr>1. Then turn HDR on for this host in Eclipse.

The extras replace your desktop’s compositor packages. A distribution update of KWin or Mutter replaces them again and streams return to SDR; do not reinstall a patched build over a newer version. To undo an extra, reinstall your distribution’s own package; for the Ubuntu packages, each extra’s README.txt has the one-line rollback. The patches and the Ubuntu source packages are published with the release.

To remove Umbra, run flatpak run --command=remove-additional-install.sh io.github.PreceptorOfMagic.Umbra to remove the input rule and sign-in start, then flatpak uninstall --user io.github.PreceptorOfMagic.Umbra.

2A. Eclipse on LG webOS

LG webOS home screen with Eclipse’s purple split-screen icon selected in the app row, beside Developer Mode.
After installation, choose Eclipse’s purple split-screen icon in the TV’s app row. Shown on LG G5 / webOS 26.
LG webOS releases

Open the latest release, expand Assets and choose the package described below. If no release is listed, that package has not been published.

Package: the standard com.aurora.gamestream_<version>_arm.ipk asset. The inherited package ID is intentional; do not choose a separate beta-app package. You need a supported LG webOS TV, an LG Developer account, a computer and a shared network. Current physical coverage is the LG G5 on webOS 26.

  1. On the TV, install Developer Mode from Apps, sign in with your LG Developer account, enable Dev Mode Status and reboot when requested. Follow LG’s official Developer Mode guide.
  2. On your computer, get webOS Dev Manager: Windows x64 MSI, macOS DMG or Linux AppImage/DEB as appropriate. Install and open it.
  3. Open Developer Mode on the TV and enable Key Server. Add the TV in Dev Manager using the address and case-sensitive passphrase displayed by the TV. Keep both devices on the same reachable network.
  4. Download Eclipse’s .ipk asset to the computer. In Dev Manager, select the TV, open Apps, choose Install and select that file.
  5. Launch Eclipse from the TV’s app list, then pair an Umbra PC. To update, install the newer .ipk the same way; settings and pairings are kept. After an update, close and reopen Eclipse.

Keep Developer Mode active and extend its session before it expires. LG removes development-installed apps when Developer Mode is disabled. This installation method does not require rooting your TV.

2B. Eclipse on Windows

Eclipse running in a normal Windows window after launch, showing a paired PC’s apps.
Eclipse on Windows after launch, with a paired PC’s apps.
Windows x64 releases

Open the latest release, expand Assets and choose the package described below. If no release is listed, that package has not been published.

Package: the installer eclipse-windows-x64-setup-unsigned.exe, or the portable eclipse-windows-x64-unsigned.zip, each with its adjacent .sha256 file. Windows 11 x64 is tested; the source minimum is Windows 10 version 1803, which has not received the same physical testing. An up-to-date GPU driver with compatible D3D11VA hardware decoding is required. Windows ARM is not a tested target.

  1. Download the installer and its checksum from the same Eclipse release. In PowerShell run Get-FileHash ./eclipse-windows-x64-setup-unsigned.exe -Algorithm SHA256 and compare the hash with the downloaded checksum.
  2. Run the installer as your normal Windows user. It installs Eclipse for your user only, without administrator access, and adds Start menu entries and an Apps & features uninstaller. Installing a newer version over an older one keeps your settings and pairings.
  3. The current build is unsigned, so Windows may show a SmartScreen warning. Check the repository, release and checksum before deciding whether to run it; do not disable Windows security globally.
  4. For portable use instead, right-click the ZIP and choose Extract All to a folder you intend to keep, then run moonlight-tv.exe from it. The inherited executable name is expected. Do not run the app from inside the ZIP or move its executable away from the supplied DLLs, data and notices.
  5. Pair your host. To remove Eclipse, use Apps & features; the uninstaller lets you keep your settings.

2C. Eclipse on Linux

Eclipse running in a Linux desktop window, showing a paired PC’s apps.
Eclipse on Linux, started with ./eclipse, with a paired PC’s apps.
Linux x86_64 releases

Open the latest release, expand Assets and choose the package described below. If no release is listed, that package has not been published.

Package: eclipse-linux-x86_64.tar.gz. Use an x86_64 Linux desktop with glibc 2.35 or newer (Ubuntu 22.04 baseline), a graphical session and working GPU drivers. Bundled application libraries do not replace your graphics driver. Current testing is in WSL Linux environments, not broad native-Linux certification.

  1. Download the portable archive and, when supplied, its matching SHA-256 file from the same release. Compare sha256sum eclipse-linux-x86_64.tar.gz with that checksum.
  2. Extract and install from a terminal:
tar -xzf eclipse-linux-x86_64.tar.gz
cd eclipse-linux-x86_64
./install.sh
  1. install.sh installs Eclipse for your user, without a password, and adds it to the applications menu; the downloaded folder can then be deleted. Installing a newer version the same way keeps your settings and pairings.
  2. For portable use instead, run ./eclipse from the extracted folder and keep the folder together; ./install-desktop-entry.sh adds that copy to the menu. Then pair the host. To remove an installed copy, run ~/.local/share/eclipse/app/uninstall.sh (add --keep-settings to keep your settings and pairings).
  3. If hardware decoding fails, update the relevant NVIDIA or Mesa/VAAPI driver and include the exact driver and desktop session in a report. Native AMD/Intel VAAPI still needs validation; the WSL VAAPI test path has known instability.

Use the portable archive instructions for Ubuntu, Fedora and Arch-style systems meeting these requirements. Do not substitute an ARM package or assume a source archive is a distro installer.

3. Pair and play one PC.

  1. Put the Eclipse device and host on the same trusted network for first setup; wired Ethernet is strongly recommended for two simultaneous streams.
  2. Open Eclipse. Select the discovered PC, or add the host’s local address if discovery does not find it.
  3. Request pairing in Eclipse, then enter its displayed PIN in Umbra’s pairing page on that PC. The first device paired with a PC gets full permissions. For any later device, allow Launch Apps and Controller Input under PIN → Device Management, or starting a game is refused with “403 Permission denied”.
  4. Choose a game or desktop from that host’s app list. Confirm picture, audio and controls in a normal one-PC session.
  5. Connect your controllers to the client device (or use its keyboard/mouse). Start with a resolution and frame rate both ends support; increase quality after the connection is working.

For remote access outside your home, establish a trusted private connection between the devices first. Do not expose the host’s administration interface to the public internet.

4. Add the second PC.

Co-op session dialog with two PCs selected, the Vertical layout chosen, Primary and Secondary sides, and the Start co-op and Start, monitors off buttons.
The co-op dialog: two PCs, a layout and which side is Player 1.
  1. Pair two distinct Umbra PCs and verify a normal stream from each one.
  2. In Eclipse choose Co-op, select the two hosts, choose side-by-side or stacked, and choose the primary/Player 1 side.
  3. Assign each controller to its player and select the desired audio behaviour. Start the session; the client and hosts negotiate compatible stream and encoder settings. The first time, Eclipse asks once which graphics card make each PC has.
  4. Launch the games on their respective PCs. Each game still has its own session, accounts and multiplayer requirements.

The normal install flow uses working co-op defaults. Eclipse requests the built-in Co-op Pane when needed; it does not need to appear in Umbra’s editable Applications list. Disconnect pauses the co-op session so it can be resumed; Quit ends the session on both hosts. If an older build asks for manual setup, check the matching release notes instead of copying hidden settings from a development guide.

Settings → Co-op → Play shared sounds once (Accurate by default) plays a sound both games make, such as narration or music, only once. Some games choose their music at random on each PC, so the two PCs play different tracks the filter cannot merge; if music sounds doubled or messy, turn the game’s music off on one PC.

If Eclipse is running on one of the gaming PCs, controls for that PC can behave differently: its local game reads its controller directly. Keyboard/mouse focus and virtual-display placement remain areas of active testing. A TV or separate client avoids that local-host focus complication.

Something not working?

  1. In Eclipse open Settings → About → Keep diagnostic logs, enable it, then restart the app.
  2. Reproduce the problem and return to Share logs….
  3. On Windows use Open folder and attach logs/eclipse-logs.txt. Linux offers the saved bundle and a local-network sharing page. On webOS, open the displayed sharing address on another device and download everything as one file (all.txt), then stop sharing.
  4. Review logs for hostnames, addresses and other personal details before sharing. Include app versions, OS/firmware, GPU and driver, layout, resolution/frame rate, steps to reproduce and whether a normal stream works.

Post in Eclipse issues, Umbra issues, or reply to the social-media thread where you found the project. Link related reports rather than losing the context across two places.