Failed to authenticate. API Error: 401 Invalid authentication credentials
[2026-05-16] vault sync
This commit is contained in:
@@ -7,56 +7,76 @@
|
||||
## 1. Switch Эмулятор — Текущий Landscape (2026)
|
||||
|
||||
### Ситуация
|
||||
Nintendo подала в суд: **оригинальный Ryujinx закрылся** (октябрь 2024), **Yuzu закрылся** раньше. Оба форка живы:
|
||||
Nintendo подала в суд: **оригинальный Ryujinx закрылся** (октябрь 2024), **Yuzu закрылся** раньше. Живые форки:
|
||||
|
||||
| Эмулятор | Основа | Статус | Для чего |
|
||||
|----------|--------|--------|----------|
|
||||
| **Ryujinx (GreemDev)** | Ryujinx | ✅ Активно, GitHub | Десктоп (Win/Linux/macOS) |
|
||||
| **Eden** | Yuzu | ✅ Активно, eden-emu.dev | Android + десктоп |
|
||||
| **Ryujinx (Ryubing/GreemDev)** | Ryujinx | ✅ Активно, Flatpak `io.github.ryubing.Ryujinx` | Десктоп (Win/Linux/macOS) |
|
||||
| **Eden** | Yuzu | ✅ Активно | Android (в основном) |
|
||||
| Citron | Yuzu | Активно | Альтернатива |
|
||||
| Suyu/Sudachi | Yuzu | Менее активны | Эксперименты |
|
||||
|
||||
**Для HTPC (Bazzite/Linux десктоп): рекомендован Ryujinx (GreemDev fork).**
|
||||
Eden больше ориентирован на Android, хотя DKC Tropical Freeze на нём тоже работает.
|
||||
**Для HTPC: Ryujinx (Ryubing) v1.3.3 через Flatpak.**
|
||||
|
||||
### EmuDeck — правильный способ установки
|
||||
EmuDeck автоматически ставит Ryujinx, настраивает пути, добавляет в Steam ROM Manager.
|
||||
### ✅ Установлено на HTPC (16.05.2026)
|
||||
|
||||
```bash
|
||||
# В KDE Desktop Mode (не gamescope):
|
||||
curl -L https://raw.githubusercontent.com/dragoonDorise/EmuDeck/main/install.sh | bash
|
||||
flatpak install -y --user flathub io.github.ryubing.Ryujinx
|
||||
# Версия: 1.3.3 stable
|
||||
```
|
||||
|
||||
Ryujinx после установки через EmuDeck:
|
||||
- Бинарь: `/home/bazzite/Applications/publish/Ryujinx`
|
||||
- Конфиг: `~/.config/Ryujinx/`
|
||||
- **Keys: `~/Emulation/bios/ryujinx/keys/`** (не `~/.config/Ryujinx/system/`)
|
||||
- ROMs: `~/Emulation/roms/switch/`
|
||||
- Saves: `~/Emulation/saves/ryujinx/saves/`
|
||||
**Пути на HTPC:**
|
||||
```
|
||||
# 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/
|
||||
```
|
||||
|
||||
**Статус:** Ryujinx установлен, директория `system/` создана — нужны только prod.keys + firmware + ROM.
|
||||
|
||||
### Запуск из Gaming Mode
|
||||
После установки keys и ROM запустить Steam ROM Manager (через EmuDeck или вручную) — добавит игры в Steam с обложками. Либо запустить Ryujinx напрямую из Desktop Mode.
|
||||
|
||||
---
|
||||
|
||||
## 2. prod.keys — Где взять
|
||||
|
||||
`prod.keys` — ключи шифрования Nintendo Switch. Технически: дамп из реального Switch через Hekate/Lockpick_RCM.
|
||||
`prod.keys` — ключи шифрования Nintendo Switch.
|
||||
|
||||
### Практика (common knowledge)
|
||||
Ключи широко распространены в community-источниках:
|
||||
- **Rutracker**: поиск "Nintendo Switch prod.keys" или "switch firmware keys"
|
||||
- **4PDA**: раздел эмуляторов Switch
|
||||
- **Archive.org**: публичные архивы с firmware дампами
|
||||
- Telegram-каналы по Switch эмуляции
|
||||
### Источники
|
||||
|
||||
**GitHub THZoria/NX_Firmware** ⭐ 4k — самый известный публичный репо с firmware + prod.keys:
|
||||
- `prod.keys`: https://github.com/THZoria/NX_Firmware/blob/main/prod.keys
|
||||
- Releases (firmware zip): https://github.com/THZoria/NX_Firmware/releases/latest
|
||||
- Актуальная версия: **22.1.0** (апр. 2026)
|
||||
|
||||
**4PDA — тема с ROM'ами (упоминает firmware):**
|
||||
- Nintendo Switch Ромы: https://4pda.to/forum/index.php?showtopic=1050842
|
||||
- Eden/Yuzu/Citron (там же ссылки на firmware в шапке): https://4pda.to/forum/index.php?showtopic=1070467
|
||||
- Шапка темы содержит ссылки на Firmware (THZoria) и prod.keys
|
||||
|
||||
**Rutracker:** rutracker.org/forum/viewforum.php?f=1605 — раздел Switch игр, в шапке тем часто есть и ключи
|
||||
|
||||
### Версионность
|
||||
`prod.keys` должны соответствовать или быть новее firmware. Рекомендуется брать свежую связку keys + firmware одной версии (17.0.0+).
|
||||
prod.keys должны соответствовать или быть новее firmware. Брать связкой одной версии.
|
||||
|
||||
### Куда класть (Ryujinx Flatpak на HTPC)
|
||||
|
||||
### Установка
|
||||
```
|
||||
~/Emulation/bios/ryujinx/keys/prod.keys
|
||||
~/Emulation/bios/ryujinx/keys/title.keys # опционально, нужны для некоторых игр
|
||||
# Путь для keys (Ryujinx Flatpak):
|
||||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/prod.keys
|
||||
~/.var/app/io.github.ryubing.Ryujinx/data/Ryujinx/system/title.keys
|
||||
|
||||
# Firmware ставится через GUI:
|
||||
# Ryujinx → Tools → Install Firmware → Install from ZIP
|
||||
```
|
||||
|
||||
Firmware ставится через GUI: Ryujinx → `Tools → Install Firmware → Install from XCI or ZIP`
|
||||
Директория уже создана на HTPC, пустая — ждёт файлов.
|
||||
|
||||
---
|
||||
|
||||
@@ -81,50 +101,69 @@ Firmware ставится через GUI: Ryujinx → `Tools → Install Firmwar
|
||||
|
||||
## 4. qBittorrent на HTPC
|
||||
|
||||
### Установка (Flatpak, без rpm-ostree)
|
||||
### Sonarr/Radarr интеграция
|
||||
**Да, qBittorrent нативно поддерживается как download client в Sonarr и Radarr.**
|
||||
Sonarr/Radarr → Settings → Download Clients → Add → qBittorrent:
|
||||
- Host: `192.168.1.86` (или адрес где запущен qBittorrent)
|
||||
- Port: `8080`
|
||||
- Username/Password
|
||||
- Sonarr/Radarr будут автоматически добавлять торренты и отслеживать прогресс
|
||||
|
||||
Это полноценный медиа-стек: **Prowlarr** (индексеры) → **Sonarr/Radarr** (автозагрузка по критериям) → **qBittorrent** (скачка) → **Jellyfin** (просмотр).
|
||||
|
||||
Для игр/ROM: проще использовать напрямую через API (Jackett + qBittorrent), т.к. Sonarr/Radarr заточены под сериалы и фильмы.
|
||||
|
||||
### ✅ Установлено и настроено (16.05.2026)
|
||||
|
||||
```bash
|
||||
ssh -i ~/.ssh/id_rsa bazzite@192.168.1.86 \
|
||||
"flatpak install -y flathub com.qbittorrent.qBittorrent"
|
||||
flatpak install -y --user flathub org.qbittorrent.qBittorrent
|
||||
# Версия: 5.2.0 stable
|
||||
```
|
||||
|
||||
### Настройка Web UI
|
||||
В GUI: Tools → Options → Web UI:
|
||||
- Enable Web UI: ✅
|
||||
- Port: **8080**
|
||||
- Authentication: задать логин/пароль
|
||||
- IP: 0.0.0.0 (все интерфейсы)
|
||||
**Пути (Flatpak):**
|
||||
```
|
||||
Config: ~/.var/app/org.qbittorrent.qBittorrent/config/qBittorrent/qBittorrent.conf
|
||||
Данные: ~/.var/app/org.qbittorrent.qBittorrent/data/qBittorrent/BT_backup/
|
||||
```
|
||||
|
||||
Или через SSH после запуска — конфиг в `~/.var/app/com.qbittorrent.qBittorrent/config/qBittorrent/qBittorrent.conf`.
|
||||
**Настройки:**
|
||||
- Download dir: `/run/media/bazzite/Data/downloads/complete`
|
||||
- Incomplete dir: `/run/media/bazzite/Data/downloads/incomplete`
|
||||
- Web UI: http://192.168.1.86:8080 — логин `admin` / пароль `adminadmin` (**сменить при первом входе**)
|
||||
- Порт BitTorrent: 6881
|
||||
|
||||
После настройки: `http://192.168.1.86:8080`
|
||||
**Sonarr/Radarr интеграция:**
|
||||
Settings → Download Clients → Add → qBittorrent:
|
||||
- Host: `192.168.1.86`, Port: `8080`
|
||||
- Username: `admin`, Password: (свой)
|
||||
|
||||
### API — как Eagle/Кракен добавляет торрент
|
||||
**Бэкап:**
|
||||
- Скрипт: `~/.config/scripts/backup-qbittorrent.sh`
|
||||
- Запускается: systemd user timer, ежедневно
|
||||
- Бэкапит в: `/run/media/bazzite/Data/backups/qbittorrent/`
|
||||
- Включает: config (настройки, Web UI) + `BT_backup/` (торрент-файлы, resume)
|
||||
|
||||
### API — Eagle/Кракен добавляет торрент
|
||||
|
||||
```bash
|
||||
# 1. Логин — получаем SID cookie
|
||||
# 1. Логин
|
||||
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=[^;]*')
|
||||
|
||||
# 2. Добавить магнет-ссылку
|
||||
curl -s \
|
||||
--cookie "$SID" \
|
||||
--data-urlencode "urls=magnet:?xt=urn:btih:HASH&dn=..." \
|
||||
# 2. Добавить магнет
|
||||
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
|
||||
|
||||
# 3. Проверить статус
|
||||
# 3. Статус
|
||||
curl -s --cookie "$SID" \
|
||||
"http://192.168.1.86:8080/api/v2/torrents/info?filter=all" | jq '.[].name'
|
||||
"http://192.168.1.86:8080/api/v2/torrents/info" | jq '.[].name'
|
||||
```
|
||||
|
||||
Полный API: cookie-based, `/api/v2/torrents/add` принимает:
|
||||
- `urls` — магнет или URL торрент-файла
|
||||
- `savepath` — куда сохранить
|
||||
- `category` — категория
|
||||
|
||||
---
|
||||
|
||||
## 5. Jackett на Кракене — Поиск по трекерам
|
||||
|
||||
Reference in New Issue
Block a user