166 lines
5.4 KiB
Markdown
166 lines
5.4 KiB
Markdown
---
|
||
title: HTPC — Steam, Эмуляторы, Геймпады
|
||
namespace: personal
|
||
created: '2026-05-17'
|
||
updated: '2026-05-20'
|
||
last_synced: '2026-05-20'
|
||
type: reference
|
||
tags:
|
||
- htpc
|
||
- steam
|
||
- emulators
|
||
- gamepads
|
||
- bazzite
|
||
confidence: 0.9
|
||
---
|
||
# HTPC — Steam, Эмуляторы, Геймпады
|
||
|
||
## Critical Rules — Steam
|
||
|
||
1. **НИКОГДА не убивать Steam через SSH** — вешает (gamescope = системный процесс)
|
||
2. **SRM** — только Desktop Mode GUI
|
||
3. **shortcuts.vdf** писать только когда Steam **закрыт** (иначе перезапишет кэшем)
|
||
|
||
## Обязательные exe в shortcuts.vdf
|
||
|
||
- RetroArch: `flatpak run org.libretro.RetroArch`
|
||
- Dolphin: `flatpak run org.DolphinEmu.dolphin-emu`
|
||
|
||
## Saves rsync — Kraken ← HTPC
|
||
|
||
| Игра | Путь |
|
||
|------|------|
|
||
| Dolphin Wii | `~/.var/app/org.DolphinEmu.dolphin-emu/data/dolphin-emu/Wii/` |
|
||
| Dolphin GC | `~/.var/app/org.DolphinEmu.dolphin-emu/data/dolphin-emu/GC/` |
|
||
| Steam | `~/.var/app/com.valvesoftware.Steam/data/Steam/userdata/` |
|
||
|
||
## Геймпады
|
||
|
||
- 2× Xbox 360 (USB)
|
||
- 2× 8BitDo (Xbox-схема, X-режим)
|
||
- Dolphin: SDL-маппинг, Classic Controller
|
||
- DKC Returns: X = Roll+Shake
|
||
|
||
## Switch Эмуляция — Ryujinx (Ryubing)
|
||
|
||
Оригинальный Ryujinx и Yuzu закрыты (Nintendo судится). Живые форки:
|
||
|
||
| Эмулятор | Основа | Статус | Платформа |
|
||
|----------|--------|--------|-----------|
|
||
| **Ryujinx (Ryubing/GreemDev)** | Ryujinx | ✅ Активно | Flatpak `io.github.ryubing.Ryujinx` |
|
||
| Eden | Yuzu | ✅ Активно | Android |
|
||
| Citron | Yuzu | Активно | Альтернатива |
|
||
|
||
**Для HTPC: Ryujinx (Ryubing) v1.3.3 через Flatpak.**
|
||
|
||
### Установка (✅ 2026-05-16)
|
||
|
||
```bash
|
||
flatpak install -y --user flathub io.github.ryubing.Ryujinx
|
||
```
|
||
|
||
**Пути (Flatpak):**
|
||
```
|
||
# Keys:
|
||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/prod.keys
|
||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/title.keys
|
||
|
||
# ROMs:
|
||
~/Emulation/roms/switch/ (Steam ROM Manager подхватит)
|
||
|
||
# Saves:
|
||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/bis/user/save/
|
||
```
|
||
|
||
### prod.keys — Источники
|
||
|
||
- **GitHub THZoria/NX_Firmware** ⭐ — актуальная версия firmware + keys (22.1.0, апр. 2026)
|
||
- **4PDA** — тема Switch ROM'ов, в шапке ссылки на firmware/keys
|
||
- **Rutracker** — раздел `/f=1605`, в шапках тем часто есть keys
|
||
|
||
**Firmware** устанавливается через GUI: Ryujinx → Tools → Install Firmware → Install from ZIP
|
||
Keys и firmware должны быть одной версии.
|
||
|
||
### ROMs форматы
|
||
- `.nsp` — предпочтительный (Nintendo Submission Package)
|
||
- `.xci` — картридж-дамп, тоже работает
|
||
|
||
### DKC Tropical Freeze — совместимость
|
||
Подтверждено: работает на схожем железе (i5-6500 + GTX 1050 Ti). HTPC (i7-6800K + RX 570, Vulkan) — ожидается Playable–Perfect.
|
||
|
||
## qBittorrent на HTPC (✅ 2026-05-16)
|
||
|
||
```bash
|
||
flatpak install -y --user flathub org.qbittorrent.qBittorrent
|
||
# Версия 5.2.0
|
||
```
|
||
|
||
| Настройка | Значение |
|
||
|-----------|----------|
|
||
| Web UI | http://192.168.1.86:8080 |
|
||
| BitTorrent port | 6881 |
|
||
| Download dir | `/run/media/bazzite/Data/downloads/complete` |
|
||
| Incomplete dir | `/run/media/bazzite/Data/downloads/incomplete` |
|
||
|
||
**Sonarr/Radarr интеграция:** Settings → Download Clients → Add → qBittorrent (host: `192.168.1.86`, port: `8080`).
|
||
|
||
### API — добавить торрент
|
||
|
||
```bash
|
||
# Логин
|
||
SID=$(curl -s -i --header 'Referer: http://192.168.1.86:8080' \
|
||
--data 'username=admin&password=PASSWORD' \
|
||
http://192.168.1.86:8080/api/v2/auth/login \
|
||
| grep -i 'set-cookie' | grep -o 'SID=[^;]*')
|
||
|
||
# Добавить магнет
|
||
curl -s --cookie "$SID" \
|
||
--data-urlencode "urls=magnet:?xt=urn:btih:HASH..." \
|
||
--data "savepath=/home/bazzite/Emulation/roms/switch/" \
|
||
http://192.168.1.86:8080/api/v2/torrents/add
|
||
```
|
||
|
||
## Jackett на Кракене — Поиск ROM/торрентов
|
||
|
||
```yaml
|
||
# /srv/.../docker/jackett/docker-compose.yml
|
||
services:
|
||
jackett:
|
||
image: lscr.io/linuxserver/jackett:latest
|
||
container_name: jackett
|
||
environment:
|
||
- PUID=1000
|
||
- PGID=1000
|
||
- TZ=Asia/Bishkek
|
||
volumes:
|
||
- ./config:/config
|
||
- ./downloads:/downloads
|
||
ports:
|
||
- 9117:9117
|
||
restart: unless-stopped
|
||
```
|
||
|
||
Web UI: `http://kraken:9117`
|
||
Поддерживает RuTracker (нужна учётка). API: Torznab endpoint.
|
||
|
||
```bash
|
||
# Поиск игры
|
||
curl "http://192.168.1.14:9117/api/v2.0/indexers/rutracker/results/torznab/?apikey=***&t=search&q=Donkey+Kong+Tropical+Freeze+Switch&cat=8000"
|
||
```
|
||
|
||
## Целевой Flow: Агент ищет и качает ROM
|
||
|
||
```
|
||
Eagle/Кракен → Jackett API (Кракен :9117) → RuTracker
|
||
→ Выбор лучшего torrent (seeders, формат NSP/XCI)
|
||
→ qBittorrent API (HTPC :8080) — magnet + savepath=/Emulation/roms/switch/
|
||
→ Steam ROM Manager → игра в Gaming Mode
|
||
```
|
||
|
||
## See Also
|
||
|
||
- [[tech/htpc-kodi-layout]] — Kodi, NFO, симлинки, медиа-структура
|
||
- [[tech/kraken-network]] — сеть, WireGuard, топология
|
||
- [[tech/arr-stack-kraken]] — Prowlarr/Radarr/Sonarr на Кракене
|
||
|