{"repo":"slooock-dev/podstage","free":true,"listed":false,"github":"https://github.com/slooock-dev/podstage","clone":"git clone https://github.com/slooock-dev/podstage.git","description":"Headless Steam Big Picture in a rootless Podman container, streamed to a Steam Deck or any Moonlight client. Shares your game library, not your desktop.","language":"Python","stars":18,"topics":["amd","game-streaming","gamescope","linux-gaming","moonlight","nvidia","podman","self-hosted","steam","steam-big-picture"],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"podstage Play a game streamed to your Steam Deck (or any moonlight client) while your desktop keeps doing its own thing. podstage runs each stream as a headless, isolated Steam Big Picture session inside a rootless container: its own display, audio, Steam login and settings, but shared game downloads with your main install. The game renders on a nested gamescope display, and a streaming backend captures and encodes only that session: sunshine or moonshine. Your monitors, your sound and your Steam config stay untouched. A PyQt6 GUI on the host handles setup, sandboxes and sessions. Every step is also a CLI command, including the first Steam login, so a machine without a desktop works the same way. Why podstage The idea came on the couch: my gaming PC playing YouTube on the TV while I played on the Steam Deck, graphics down, fan roaring. The powerful machine sat idle while the little one did the work. Steam Remote Play and a plain sunshine install mirror your desktop session: streaming takes over the screen you are sitting at, grabs the audio, and shares one Steam config and one logged-in account. podstage spins up a separate, invisible session instead: - The desktop keeps its monitors, audio and Steam settings, and stays usable while someone streams. (Desktop Steam closes on session start by default; a Setup toggle keeps it running, e.g. for a second account.) - Input from the client stays inside the session, in both directions. - Sandboxes sit side by side, each with its own ","default_branch":null,"files":null,"tree":[],"storefront":"/r/slooock-dev","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/slooock-dev/podstage/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}