01 / Polaris · Linux host
Linux game streamingthat answers to you.
Choose where a session runs, then play through Nova, Moonlight, or another compatible client. Polaris shows the real capture and encoder path instead of making you reverse-engineer it from logs.
- Linux only
- Local first
- GPLv3 open source

The host console
Everything your host is doing. Finally visible.
Polaris is not a daemon with a settings page stapled on. Its web console follows the whole session—from imported library and pairing to live operations, recovery, and the exact capture path that survived.
CONTROL PLANE
Mission Control
Start with a cockpit that answers the questions Linux stream hosts usually leave in logs: what launched, where it runs, how frames move, which encoder is active, who is connected, and what the host will do next.
- Runtime and capture-path truth
- Live health and quality signals
- Safer host-affecting actions
Ready and live, in one Mission Control
This short silent capture from the exact tagged CUDA artifact follows Mission Control from ready for clients into a live Control Ultimate Edition session with real telemetry and Doctor evaluation.
Read the visual transcript
- 00:00.000Mission Control waits ready for clients with launch checks green.
- 00:06.500An Android Handheld connects and the dashboard flips to a live Control Ultimate Edition session with real telemetry and Doctor evaluation.
Mission Control, standing by
One paired Android Handheld is ready while launch checks, GPU vitals, and host controls remain visible.
Mission Control, streaming
The same surface becomes an operations view with live FPS, latency, loss, Doctor status, viewer identity, and the GPU-native runtime path.
Control leads the Library
Artwork and launch health share one readable surface, with Control Ultimate Edition ready beside other representative titles.
The same screen, four visual choices
Aurora leads. Alternate themes stay first-class.
Each comparison uses the same ready Mission Control screen from the exact release, so color and contrast—not different content—tell the story.
The host model
Your desktop is not disposable.
Traditional Linux hosts often treat mode switches, broken layouts, portal prompts, and post-session cleanup as your problem. Polaris takes the game out of your desktop instead of taking your desktop away from you.
Isolated by default
Private Headless Stream launches games inside a dedicated compositor instead of rearranging your KDE, GNOME, or wlroots desktop.
Runtime truth, not vibes
Mission Control exposes the active runtime, capture path, encoder, clients, stream health, and host actions in one cockpit.
GPU-aware capture
Polaris prefers GPU-native paths when the hardware supports them and reports the real fallback when it does not.
How the stream moves
A private runtime, from launch to last frame.
The important distinction is not “headless” as a checkbox. It is the ownership boundary: the game gets a controlled Linux environment, your physical desktop keeps its own state, and the host reports every downgrade between request and reality.
- INTENT
Launch request
Polaris receives an explicit app and launch intent from its library, Nova, or a Moonlight-compatible client.
- ISOLATED
Private Wayland runtime
The game, Steam, Wine, and XWayland stay inside a dedicated labwc compositor instead of spilling onto your desktop.
- VISIBLE
Capture and encode
Polaris prefers GPU-resident DMA-BUF capture, reports SHM fallback honestly, then selects NVENC, VAAPI, or software encode.
- DIRECT
Nova or Moonlight
The compatible client receives the stream while Polaris keeps owner, viewer, health, and shutdown state authoritative on the host.
Capability contract
Useful depth, without the mystery meat.
Polaris keeps the lower layers legible so “it works” never has to mean “please do not ask how.”
- Runtime
- Isolated labwc Wayland compositor
A stream-only environment that is not tied to KDE, GNOME, Sway, or Hyprland.
- Display
- Owner and viewer session roles
A second compatible client can watch without silently stealing control or changing the active profile.
- Capture
- DMA-BUF preferred with truthful SHM fallback
Requested and effective frame paths stay visible in Mission Control and support data.
- Encode
- NVENC, VAAPI, and software encode
NVIDIA is the most exercised path; AMD and Intel VAAPI remain first-class, visible options.
- Game stack
- Steam, Lutris, and Heroic imports
Bring existing libraries into one host console with per-title launch behavior.
- Clients
- Standard Moonlight client compatibility
Use Nova for the richest host contract or keep the Moonlight client you already trust.
Launch intent
One host. Three honest launch modes.
“Play” can mean very different things on a Linux machine. Polaris names the choice before it changes the host.
| Mode | Best for | Host effect | Availability / status |
|---|---|---|---|
| Private Headless Stream | Launch into the isolated Polaris runtime. Your physical displays and desktop layout stay out of the blast radius. | Keeps physical displays and desktop layout unchanged. | Recommended |
| Host Virtual Display | Use a separate display-like host path when you want display semantics without taking over a physical monitor. | Avoids taking over a physical monitor when the host exposes the path. | When available |
| Mirror Desktop | Stream the existing host session only when seeing or controlling the real desktop is exactly what you intend. | Uses the real desktop session and its current state. | Deliberate choice |
Linux is the product
Built for Linux. Full stop.
Polaris is not a cross-platform host with a Linux checkbox. Fedora and Arch are the strongest package paths, Wayland is treated as a first-class runtime, and NVIDIA plus AMD capture paths stay visible instead of being flattened into a generic “works here” badge.
- GPUNVIDIA / NVENC is most validatedAMD and Intel Mesa VAAPI are supported with expanding real-hardware coverage.
- DesktopKDE Plasma Wayland is most exercisedThe private labwc runtime is not KDE-specific and does not reuse your desktop compositor.
- ClientNova on Android is the fullest experienceStandard Moonlight clients remain compatible for pairing, launch, input, and streaming.
HOST SUPPORT / CURRENT
- RecommendedFedora 44 · Arch Linux · CachyOS
- Versioned packageSteamOS 3.8 · Desktop Mode install and startup
- Tester pathsBazzite · Ubuntu 24.04
- Build from sourceopenSUSE Tumbleweed · other Linux distributions
Linux-only by design. Windows and macOS host ports are not on the roadmap.
Your host, your keys
No cloud account between you and your game.
Pairing keys, permissions, library state, stream settings, and web credentials live on your host. Core streaming stays direct. Optional AI tuning uses only the provider you choose—including a local endpoint—or remains off.
- CORE STREAMDirect and account-free
- PAIRINGCertificates and permissions stay local
- LINEAGEGPLv3 · Apollo · Sunshine · Moonlight compatible
- The menu starts the service
- Launching Polaris from the application menu now starts the same user service that autostart and headless boot use. A desktop launch used to replace the running service with a second copy, and closing that window left the host with no Polaris until the next login.
- Setup that fails closed
- A privileged setup run no longer treats root's own access to the input devices as proof that your desktop account is ready. A missing input group is reported instead of passed.
- Bazzite through rpm-ostree
- The Fedora 44 RPM through rpm-ostree stays the supported Bazzite path. The experimental system extension remains withdrawn, and a fail-closed validation receipt now runs before release artifacts are bound.
- Four packages, matched client
- Fedora 44, Arch and CachyOS, Ubuntu 24.04, and SteamOS 3.8 packages, verified with Nova 1.4.4 on a Retroid Pocket 6.
Start on solid ground
From package to first stream.
Choose the honest support lane for your distro, run one explicit host setup, and verify the resulting runtime in the web console. No cloud onboarding funnel. No HDMI dummy-plug scavenger hunt. Fancy that.
- 01
Install for your distro
Add the package repository, or download a release package when one exists. Either way you get Polaris, the web console, desktop metadata, and the user service file.
RPM · PKG.TAR.ZST · DEB · SOURCE - 02
Set up the Linux host
Run the explicit host integration once, start Polaris, then create your local web-console account in the first-run wizard.
sudo -H polaris --setup-host - 03
Pair, launch, and verify
Pair Nova or Moonlight, start a game, and confirm the active runtime, capture transport, and encoder in Mission Control.
https://localhost:47990/#/welcome
Before you move your library
Good questions. Honest answers.
Polaris is opinionated about Linux, but it is not interested in hiding the edges. Here are the answers that should be clear before you install anything.
Q01Do I need an NVIDIA GPU?
No. NVIDIA and NVENC are the most heavily tested release path, but AMD and Intel Mesa VAAPI are supported, with software encode available as a fallback and diagnostic path. Polaris reports the capture and encoder path it actually used.
Q02Will my existing Moonlight client work?
Yes. Standard Moonlight clients can pair, browse apps, launch, send input, and stream. Nova adds the richest Polaris-specific experience: launch-mode guidance, watch and resume state, live tuning, and deeper session health.
Q03Do I need to uninstall Sunshine?
No. Polaris keeps its host configuration separate. Stop Sunshine while trying Polaris because both hosts can collide on the same default GameStream ports and discovery records, then switch back whenever you want.
Q04Is Headless Stream tied to KDE?
No. KDE Plasma Wayland is the most exercised daily-driver setup, but Headless Stream creates its own labwc Wayland instance. It does not depend on the host desktop being KDE, GNOME, Sway, or Hyprland.
Q05Is AI required?
No. Core streaming, pairing, library management, and diagnostics work without AI or a cloud account. Optional Auto Quality runs only when you enable it and uses the provider you configure, including a local OpenAI-compatible endpoint.
Q06What does SteamOS support cover?
Polaris v1.4.4 ships a dedicated SteamOS 3.8 x86_64 package. Release validation covers installation and startup in Desktop Mode. It does not yet claim physical Steam Deck gameplay, Game Mode, OLED 90 Hz presentation, suspend and resume, or persistence across SteamOS operating-system updates; those updates may remove installed packages. Use the SteamOS package, not the rolling Arch package.
Q07What about HDR?
Polaris separates 10-bit SDR from true HDR. Main10 can work when the client, runtime, and encoder support it. True HDR is advertised only when the active capture path provides real HDR display metadata; headless sessions remain honestly SDR until they can do that.
Start private. Stay in control.
Install a release package, run the host setup once, and pair Nova or the Moonlight-compatible client you already use.



