3.4 KiB
title, created, updated, type, namespace, tags, sources, related
| title | created | updated | type | namespace | tags | sources | related | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| HTPC Steam & Emulators | 2026-05-23 | 2026-05-29 | tech | family |
|
|
|
HTPC Steam & Emulators
Bazzite HTPC at 192.168.1.86. See htpc-bazzite-proton for Proton
game compatibility details.
Hardware
- CPU: Intel Core i7-6800K, RAM: 32 GB, GPU: AMD Radeon RX 570
- TV: LG webOS at
192.168.1.75(HDMI) - OS: Bazzite 44 (Fedora-based, immutable OSTree,
bazzite-deckvariant)
Gamepads — 8BitDo Ultimate (2 dongles)
Critical: both 8BitDo Ultimate dongles (2dc8:3106) must be on
separate physical USB ports, not sharing a USB hub. If both share
the Huasheng USB2.0 HUB on port 006, the second dongle fails to
enumerate (#Ifs=0 Cfg#=0) and creates no /dev/input/js.
Working USB layout:
- Port 005 (direct xHCI, no hub) → 8BitDo #1 (
E417D8D87F0C) - Port 006 → Hub Port 001 → 8BitDo #2 (
E417D8C197E4) - Port 006 → Hub Port 004 → Xbox 360 Wireless Receiver
Symptoms of wrong layout: lsusb shows both but second has #Ifs=0;
only one /dev/input/js; Steam sees one controller.
Rules
- Game save paths: managed per-emulator; see emulator config in Bazzite
- Gamepad config: stored in Steam controller profiles, backed up to
~/controller-profiles/ - Steam shortcuts for non-Steam Windows games: use Proton Experimental
EmuDeck Save Paths (Flatpak)
| Emulator | Save path |
|---|---|
| RetroArch | ~/.var/app/org.libretro.RetroArch/config/retroarch/saves/ |
| Dolphin (GC/Wii) | ~/.var/app/org.DolphinEmu.dolphin-emu/data/dolphin-emu/ |
| Citra / Lime3DS | ~/.var/app/org.citra_emu.citra/ |
| PCSX2 (PS2) | ~/.var/app/net.pcsx2.PCSX2/config/PCSX2/memcards/ |
| RPCS3 (PS3) | ~/.var/app/net.rpcs3.RPCS3/config/rpcs3/dev_hdd0/ |
| PPSSPP (PSP) | ~/.var/app/org.ppsspp.PPSSPP/config/ppsspp/PSP/SAVEDATA/ |
| melonDS (NDS) | ~/.var/app/net.kuribo64.melonDS/ |
| Ryujinx (Switch) | ~/.var/app/org.ryujinx.Ryujinx/config/Ryujinx/bis/user/save/ |
| Steam | ~/.steam/steam/userdata/ |
ROM Symlinks (Data partition → EmuDeck)
Emulators expect ROMs at ~/Emulation/roms/<system>/. Symlinks from
the Data partition (/run/media/bazzite/Data/):
ln -s "/run/media/bazzite/Data/n64 roms" ~/Emulation/roms/n64
ln -s "/run/media/bazzite/Data/snes roms" ~/Emulation/roms/snes
ln -s "/run/media/bazzite/Data/gba roms" ~/Emulation/roms/gba
ln -s "/run/media/bazzite/Data/3ds roms" ~/Emulation/roms/3ds
ln -s "/run/media/bazzite/Data/ps2 roms" ~/Emulation/roms/ps2
ln -s "/run/media/bazzite/Data/dolphin roms" ~/Emulation/roms/wii
ln -s "/run/media/bazzite/Data/cemu roms" ~/Emulation/roms/wiiu
ln -s "/run/media/bazzite/Data/mame roms" ~/Emulation/roms/mame
ln -s "/run/media/bazzite/Data/sega roms" ~/Emulation/roms/genesis
ln -s "/run/media/bazzite/Data/nes" ~/Emulation/roms/nes
After symlinking, run Steam ROM Manager (EmuDeck) from Desktop Mode to import ROMs into Steam with cover art.
Non-Steam Windows Games
/run/media/bazzite/Data/games/ — 38 pre-installed games (Bayonetta,
Cuphead, GTA V, Witcher 3, etc.). Add as Non-Steam games with
Proton Experimental.
/run/media/bazzite/Data/steam/steamapps/common/ — already-Steam games
(Gang Beasts, Shovel Knight, etc.). Add as a second Steam library path.