From 4cc4e8ebc596af14d0f3c92d128b462d5ca8e281 Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Thu, 28 May 2026 23:01:54 +0600 Subject: [PATCH] [2026-05-28] htpc-bazzite-proton: vk-login-helper replaces Lutris workaround, wiki sync timestamps refresh --- wiki/htpc-bazzite-proton.md | 45 +++++---------------- wiki/personal-os-catchup-plan-2026-04-27.md | 4 +- wiki/personal-os-schema.md | 4 +- wiki/personal-os-state-2026-04-27.md | 4 +- wiki/wiki-ingest-process.md | 4 +- 5 files changed, 19 insertions(+), 42 deletions(-) diff --git a/wiki/htpc-bazzite-proton.md b/wiki/htpc-bazzite-proton.md index 11d7e1c3..1c78bb80 100644 --- a/wiki/htpc-bazzite-proton.md +++ b/wiki/htpc-bazzite-proton.md @@ -119,7 +119,7 @@ VK Play версии игр запускаются через лаунчер VK Известно: - VK Play официально подтвердил совместимость Atomic Heart со Steam Deck/Proton. - Для авторизации используется `mycomgames://` URL-схема. На HTPC без Steam Deck API может потребоваться ручной ввод логина/пароля. -- Альтернатива: Lutris с конфигом из gist.github.com/keyCat (обработчик `mycomgames://` схемы). +- Для обработки `mycomgames://` редиректа используется `vk-login-helper` скрипт. - Перед первым запуском может понадобиться `protontricks -555655402 vcrun2019`. ### Как добавить VK Play игру @@ -128,52 +128,29 @@ VK Play версии игр запускаются через лаунчер VK 3. Установить игру через лаунчер (Atomic Heart уже установлен) 4. После авторизации игра появится в библиотеке VK Play -### Lutris login workaround (shared prefix with Steam/Proton) +### VK Play login через vk-login-helper (shared prefix with Steam/Proton) **Проблема:** Steam CEF browser не умеет обрабатывать `mycomgames://` URL-схему, необходимую для OAuth-логина VK Play. При клике "Login" — `ERR_NETWORK_IO_SUSPENDED`. -**Решение:** использовать Lutris для первичной авторизации, потом запускать игру через Steam/Proton. +**Решение:** запустить GameCenter напрямую через Proton с `STEAM_COMPAT_DATA_PATH`, а потом использовать Steam/Proton для запуска игр. `mycomgames://` редирект перехватывается `.desktop` MIME-обработчиком, который запускает `vk-login-helper`. -### Implementation status (2026-05-28) - -Все компоненты настроены через SSH (Kraken → HTPC). Последний шаг (логин) требует GUI-сеанса на HTPC. +### Implementation status (2026-05-28, updated) | Component | Status | Notes | |-----------|--------|-------| | `d:` dosdevices symlink (→ Data) | ✅ | `/run/media/bazzite/Data` | -| `handle-vkplay-scheme` script | ✅ | `~/.local/bin/` — обрабатывает `mycomgames://` через Proton 10.0 | -| `.desktop` → MIME `x-scheme-handler/mycomgames` | ✅ | Зарегистрирован на `Vkplay-scheme-handler.desktop` | -| Lutris flatpak | ✅ | `flathub net.lutris.Lutris` | -| Lutris game config (shared prefix) | ✅ | `~/.config/lutris/games/vk-play-shared.yml` | -| `start-vk.cmd` in Proton prefix | ✅ | `drive_c/VKPlay/gamecenter/start-vk.cmd` | +| `vk-login-helper` script | ✅ | `~/.local/bin/` — запускает GameCenter через Proton 10.0 в Steam prefix | +| `.desktop` → MIME `x-scheme-handler/mycomgames` | ✅ | Зарегистрирован на `Vkplay-scheme-handler.desktop`, исполняет `vk-login-helper` | | Steam shortcut VK GameCenter | ✅ | AppID=-1973339958, GE-Proton10-34 | | Steam shortcut Atomic Heart VK | ✅ | AppID=-1973339958 (через GameCenter) | | Atomic Heart installed (97GB) | ✅ | `/run/media/bazzite/Data/gamecenter/atomic heart/` | **Осталось сделать (на HTPC в десктоп-режиме):** -1. Открыть Lutris → VK Play Game Center → Login -2. Авторизоваться в браузере, разрешить `mycomgames://` -3. Вернуться в игровой режим -4. Запустить Atomic Heart через Steam → ожидать что токен в shared prefix работает - -1. Установить Lutris через flatpak: - ``` - flatpak install flathub net.lutris.Lutris - ``` - -2. Создать кастомный пресет VK GameCenter в Lutris, указав **тот же Wine prefix**, что использует Steam: - ``` - ~/.local/share/Steam/steamapps/compatdata/-1973339958/pfx/ - ``` - -3. Зарегистрировать `mycomgames://` protocol handler — поместить .desktop-файл, который ассоциирует схему с Lutris: - - Референс: https://gist.github.com/keyCat/a77b1d4d1e0f651b9d3a9818e7f739c5 - -4. Выполнить логин через Lutris — откроется внешний браузер, авторизация сработает, редирект `mycomgames://` попадёт в Lutris. - -5. После успешного логина запускать игру через Steam — токен уже лежит в shared prefix, `mycomgames://` больше не нужен. - -**Почему shared prefix:** игра (Atomic Heart, 97GB) НЕ копируется — она уже установлена в `/run/media/bazzite/Data/gamecenter/atomic heart/` через Steam-версию VK GameCenter. Lutris будет использовать тот же префикс, где уже есть dosdevices symlink `d:` → `/run/media/bazzite/Data` и все токены авторизации. +1. Открыть браузер → зайти на https://account.vkplay.ru/login/ +2. Авторизоваться — `mycomgames://` редирект попадёт в `vk-login-helper`, который запустит GameCenter +3. Закрыть GameCenter +4. Переключиться в игровой режим +5. Запустить Atomic Heart через Steam --- diff --git a/wiki/personal-os-catchup-plan-2026-04-27.md b/wiki/personal-os-catchup-plan-2026-04-27.md index 4bc52e44..5ae6f02e 100644 --- a/wiki/personal-os-catchup-plan-2026-04-27.md +++ b/wiki/personal-os-catchup-plan-2026-04-27.md @@ -1,8 +1,8 @@ --- source: raw/personal-os-catchup-plan-2026-04-27.md -content_hash: 5081ceb719104e1b7c6b5edd642c1daf38b3fd7cf1a96442a00516e7cdb15379 +content_hash: a394fdbc79a4d10d3eb7ce4bbfcfcb65d42365e21bf26f95e7452eaa774a38b7 namespace: work -last_synced: 2026-04-28 +last_synced: 2026-05-28 confidence: 0.8 tags: [personal-os, planning, catchup, executor, retrospector] --- diff --git a/wiki/personal-os-schema.md b/wiki/personal-os-schema.md index 0ab9e5bb..e264d4ea 100644 --- a/wiki/personal-os-schema.md +++ b/wiki/personal-os-schema.md @@ -1,8 +1,8 @@ --- source: raw/schema.sql -content_hash: 71b47e47b483834c887de14c76d5b16506d90ad64198d76a92a7b3731132dab8 +content_hash: e4b3c6d78750f66f349a40f4c571a5ea96a69b549ef7f34a227110255d50da94 namespace: work -last_synced: 2026-04-27 +last_synced: 2026-05-28 confidence: 0.9 tags: [schema, postgres, database, asana, wiki] --- diff --git a/wiki/personal-os-state-2026-04-27.md b/wiki/personal-os-state-2026-04-27.md index b7f798a2..a0080ed7 100644 --- a/wiki/personal-os-state-2026-04-27.md +++ b/wiki/personal-os-state-2026-04-27.md @@ -1,8 +1,8 @@ --- source: raw/personal-os-state-2026-04-27.md -content_hash: 1640cb63145b49263b9476e2c39fe443ac561fdf6c27faccc50cfc8568552614 +content_hash: d3948b6c5a50792eb0d406aa9f52988434ccbd0c18ebc958e3ae1cfbcf1b0b3e namespace: work -last_synced: 2026-04-28 +last_synced: 2026-05-28 confidence: 0.8 tags: [personal-os, state, executor, infrastructure] --- diff --git a/wiki/wiki-ingest-process.md b/wiki/wiki-ingest-process.md index 5e801b25..1aa43665 100644 --- a/wiki/wiki-ingest-process.md +++ b/wiki/wiki-ingest-process.md @@ -1,8 +1,8 @@ --- source: raw/wiki-ingest-prompt.md -content_hash: 29f6a0914d428cf62eeb2a832d6b3048edf3e1d16aa7714c09f686377394d128 +content_hash: f751c64c7b2b2fa39b9606303ac00f5069315c5688b7858b1c79c5d23db66f9b namespace: work -last_synced: 2026-04-27 +last_synced: 2026-05-28 confidence: 0.9 tags: [wiki, ingest, agent, prompt] ---