Skip to main content
  1. Posts/

Jellyfin But For Game Emulation: Myth or Frontier?

·5 mins

The Dream: Tap, Browse, Emulate #

Imagine this: a multi-user, web-accessible platform for retro game emulation. You hook into it from any device, game up on your big TV or a crusty tablet from 2013. Profiles track your saved states, achievement hunting, and hours sunk into more Super Metroid. Sounds like Jellyfin but for gaming, right? Here’s the thing: it doesn’t really exist. Not in any polished, plug-and-play sense. But there are parts of it—disparate tools, half-working proof-of-concepts, and some wildly ambitious projects. If you’re willing to experiment (and break things), you can get close to this fantasy. Just don’t expect a single Docker container that makes it all magical.

RetroArch Netplay and Its Aggravating Limits #

RetroArch is the obvious first mention. It’s the Swiss army knife for game emulation. It has a web version (sort of). And the Netplay feature is technically multi-user because you can invite friends for online co-op or versus. I stress “technically”—you’ll be SSH’ing into your server to mess with port-forwarding or firewall rules to make it work. Your grandma isn’t touching this with a 10-foot pole. It also doesn’t have game libraries searchable from a slick UI. You’re building your romsets manually. Playlist creation requires scripting or editing .lpl files—and managing a full library without duplication is a fast track to “rage quit.” Plus, you better pray your server’s specs can transcode video fast enough for remote streaming. Jellyfin this is not.

Playnite: Decent, But Desktop-Centric #

Maybe Playnite is more your style. It’s open-source and leagues better than manually wrangling rom folders. The launcher lets you neatly organize retro games alongside PC or modern ones, and it even has the option for Steam Big Picture-like couch gaming. But—and it’s a big one—it’s desktop-only. You can kinda-sorta install Playnite on a virtual desktop through Guacamole or some other remote desktop setup, but now you’re stacking inefficiency on top of inefficiency. I tested this with a Linode VM (8GB RAM, $20/month), and latency killed any immersion in fast-paced games. Fighting games? Forget it.

Enter RetroDECK and Its “Close Enough” Vibe #

RetroDECK is where it starts feeling closer to the Jellyfin analogy. This Steam Deck-centric app packages emulators into one cohesive interface. It piggybacks on EmulationStation, which does the heavy lifting for UI and library management. Throw RetroArch cores under the hood, and it’s a powerful Franken-tool. But here’s the catch: it’s totally tied to SteamOS and is a pain to port elsewhere. I saw Redditor u/nostalgiagamer69 claim success running it on a custom Arch setup, but when I tried the same thing on Ubuntu 22.04, half the dependencies threw errors about mismatched versions. Someone smarter with Flatpak/Pacman than me could probably solve it, but why bother? Jellyfin doesn’t require that level of system tinkering.

My Frankenstein Setup: Not For The Faint of Heart #

So here’s what I did. I mashed together EmulationStation frontend with DuckStation (PSX), Dolphin (GC/Wii), and Yuzu (Switch)—all hosted inside Docker containers. EmulationStation picked up the rom metadata like a champ (but you’ll need the skraper.py plugin for box art). I added a thin layer of nginx reverse proxy magic to serve it on my local network. Finally, I locked this mess behind a Tailscale VPN for access outside the house. It worked! Kind of. Lag kicked my ass streaming games like Super Smash Bros. Melee, but slower RPGs like Chrono Trigger felt fine. CPU usage on my Ryzen 5600G peaked at ~60% under heavy load, and RAM hovered at 12GB, so don’t even think about this on budget VPS. And did I mention your friends won’t navigate this UI without a crash course? Yeah, it’s bad.

Why This Isn’t Jellyfin Yet #

The core issue? Emulation UX is way harder to streamline than media libraries. Games require different emulators, controller configs, save syncing, and real-time performance adjustments. You’re building a janky castle of Bash scripts and JSON files. Compare that to Jellyfin’s turnkey model—the devs nailed the harder problem of multi-format media libraries and let ffmpeg handle the rest. No one in the game emulation scene has wrapped this complexity into one solution yet. And honestly, most people just use their Decks, Mini PCs, or hacked Switches for the job.

Would I Recommend This? #

To 90% of folks? Absolutely not. It’s overkill, janky, and only kinda works even after days of tweaking. But if you’re part of that obsessive 10% (hi, Reddit), making this happen becomes its own joy. Just know it’s an ongoing project, not a polished ecosystem. If you want simple multi-user support today… maybe, uh, just buy everyone a Steam Deck.

FAQs #

Is there an easy way to self-host emulation? #

Not yet, unless your “easy” is a Steam Deck with RetroDECK or doing it all statically offline. The tools for seamless multi-user web access aren’t there yet.

Can I run this on a lightweight VPS? #

No. Even a 4-core/8GB VPS struggles for demanding games. Anything past SNES likely won’t run well unless you go big (and expensive).

What’s the best option for couch-friendly emulation? #

Use a Steam Deck or a Mini PC running RetroArch with a frontend like EmulationStation. Skip the remote angle unless you enjoy pain.