From 60c0ea26fe8dfc0524cac9352c748f97e8393f7a Mon Sep 17 00:00:00 2001 From: Alexey Martemyanov Date: Sat, 30 May 2026 14:32:14 +0600 Subject: [PATCH] [2026-05-30] merge noir+discworld into main proton doc, remove separate doc --- family/how-to/htpc-bazzite-proton.md | 43 ++++++++++ family/how-to/htpc-discworld-noir-nq.md | 109 ------------------------ family/how-to/htpc-system.md | 37 ++++++-- 3 files changed, 74 insertions(+), 115 deletions(-) delete mode 100644 family/how-to/htpc-discworld-noir-nq.md diff --git a/family/how-to/htpc-bazzite-proton.md b/family/how-to/htpc-bazzite-proton.md index 2d1f942e..a7230ba1 100644 --- a/family/how-to/htpc-bazzite-proton.md +++ b/family/how-to/htpc-bazzite-proton.md @@ -307,6 +307,49 @@ Systemd user service (`/etc/systemd/user/saves-backup.service`): - **Discworld (оригинал, скопирован 2026-05-29):** `/run/media/bazzite/Data/downloads/DISCWORLD.iso` (ISO, 434MB) — с TrueNAS `/mnt/RED_2TB/backup/Downloads/Distr/games/DISCWORLD.iso` - FFX settings: `/run/media/bazzite/Windows/Users/mallexxx/documents/square enix/...` +--- + +## Discworld Noir (NQ repack) — настроен ✅ + +**Статус:** работает — запускается, сейвы грузятся + +**Источник:** `Discworld Noir.isz` (Alcohol 120%, 1.1 GB) с Яндекс.Диска — пропатченный репак с фиксом "insert disk III" + +**Папка:** `/run/media/bazzite/Data/Games/discworld_noir_nq/` +- `tin3_dxd.exe` — оригинальный (560160 bytes, не Loma fix) +- `cd1/`, `cd2/` — оба диска (по 313 файлов, merged) +- `DN_Setting_*.exe`, `cw3220.dll`, `dwnoir.dll` + +**Proton prefix:** `compatdata/2973247222/pfx/` (unsigned от appid `-1321720074`) +**Symlink:** `C:\Discworld Noir` → `/run/media/bazzite/Data/Games/discworld_noir_nq/` +**Registry:** `[Software\Wow6432Node\Perfect Entertainment\Discworld Noir]` — все пути `C:\Discworld Noir` + +**Steam shortcut:** Index 108, Exe = Linux-путь напрямую, GE-Proton10-34 + +**Ключевой фикс — fstab монтирование:** +Сейвы не грузились (Load задизейблен, `sg.1` создавался но не читался). Решилось перемонтированием Data через `/etc/fstab`: +```fstab +UUID=01D99C23361E63D0 /run/media/bazzite/Data ntfs-3g uid=1000,gid=1000,fmask=113,dmask=002,noatime,exec 0 2 +``` +udisks2 давал неверные права для Proton I/O. После fstab NTFS стал регистрозависимым — `Games` с большой буквы, `Downloads` с большой буквы. + +**Что не сработало:** +- Loma fix — спиннер / кривая палитра +- Dolomite (`ddraw.dll`) — не влияет на меню + +## Original Discworld (ScummVM) — не работает ❌ + +**Статус:** `Unrecognized game 'dw1'` + +**Источник:** `DISCWORLD.iso` (434 MB) с TrueNAS → распакован в `/run/media/bazzite/Data/Downloads/discworld_iso/` + +**Steam shortcut:** Index 107, Exe = `scummvm.sh` → flatpak `org.scummvm.ScummVM`, CompatToolMapping не нужен (native Linux) + +**Правильный game ID:** `tinsel:dw` (определён через `scummvm --detect --recursive`) +**LaunchOptions:** `-f -p "/run/media/bazzite/Data/Downloads/discworld_iso" tinsel:dw` + +Ранее был прописан `dw1` — ScummVM 2026.2.0 его не знает. ID уже поправлен в shortcuts.vdf, Steam restart — требуется проверка. + ## Open Questions 1. Delete `pfx/` folders for still-broken GE-Proton games (Brawlhalla, Castle Crashers, Worms WMD/WP, Duck Game) 2. Atomic Bomberman: 32-bit Wineprefix outside Proton diff --git a/family/how-to/htpc-discworld-noir-nq.md b/family/how-to/htpc-discworld-noir-nq.md deleted file mode 100644 index 8449816f..00000000 --- a/family/how-to/htpc-discworld-noir-nq.md +++ /dev/null @@ -1,109 +0,0 @@ -# Discworld Noir (NQ) — установка и запуск - -## Структура - -- **Игра:** `/run/media/bazzite/Data/games/discworld_noir_nq/` - - `tin3_dxd.exe` — exe из NQ-репака (оригинал, md5: `962c76c5`) - - `cd1/` — 313 файлов - - `cd2/` — 313 файлов (мердж через `cp -an` из обоих CD) - - `cd3`→`cd1`, `cd4`→`cd1` ... `cd8`→`cd1` — симлинки - - `DN_Setting_*.exe` — конфигуратор - - `cw3220.dll`, `dwnoir.dll` - -- **Proton prefix:** `compatdata/2973247222/pfx/` (unsigned от appid `-1321720074`) -- **Symlink:** `C:\Discworld Noir` → `/run/media/bazzite/Data/games/discworld_noir_nq/` - -## Steam shortcut - -- **AppName:** «Discworld Noir (NQ)» (index 108) -- **AppID:** signed `-1321720074`, unsigned `2973247222` -- **Exe:** `/run/media/bazzite/Data/games/discworld_noir_nq/tin3_dxd.exe` -- **StartDir:** `/run/media/bazzite/Data/games/discworld_noir_nq` -- **CompatToolMapping:** `-1321720074` → `GE-Proton10-34` - -## Registry (system.reg) - -Секция `[Software\\Wow6432Node\\Perfect Entertainment\\Discworld Noir]` (в prefix `2973247222`): - -``` -"HD Path"="C:\\Discworld Noir" -"Install Path"="C:\\Discworld Noir" -"Install Type"="Typical" -"Installed Files"="14" -"Language"="English" -"Minimum"="49152" -"Music Volume"="100" -"No Sound"="No" -"Sample Path"="C:\\Discworld Noir\\cd1" -"SoundFX Volume"="100" -"Special"="xDM xEDS xPD xMPD NNT" -"Specify"="Yes" -"Start Windowed"="No" -"Subtitles"="No" -"Verbose"="No" -"Voice Volume"="100" -``` - -## Порядок настройки (если переустанавливать) - -1. Скопировать файлы игры в `/run/media/bazzite/Data/games/discworld_noir_nq/` -2. Удостовериться что в `cd1/` и `cd2/` по 313 файлов (если нет — скопировать все уникальные в обе папки) -3. Создать symlink: `ln -sfn /run/media/bazzite/Data/games/discworld_noir_nq $PFX/drive_c/Discworld Noir` -4. Через `shortcuts.vdf` добавить shortcut с Linux-путями (прямые пути, не `C:\...`) -5. Добавить `CompatToolMapping` в `config.vdf` для signed appid -6. Прописать registry entries в `{prefix}/system.reg` (секция Wow6432Node) - -## Важные моменты - -- **Пути в shortcuts.vdf должны быть Linux-путями** (напрямую к файлам через `/run/media/...`), не `C:\...`. Proton сам маппит их на `Z:\`. -- **Symlink** и **registry** на `C:\Discworld Noir` нужны для того, чтобы игра находила registry entries и CD-файлы внутри Proton-окружения. -- appid в shortcuts.vdf signed, а compatdata создаётся с unsigned значением — надо синхронизировать. -- Steam может перезаписывать `config.vdf` при старте, восстанавливая старые CompatToolMapping. Нужно удалять дублирующиеся unsigned записи. - -## Проблемы и решения - -### 1. Save/Load меню не работает (Load задизейблен) - -**Симптом:** `sg.1` создаётся физически (30KB, валидный), но меню Load не показывает слоты. Сохранение в новый слот (`sg.5`) не создаётся — перезаписывается `sg.1`. - -**Решение:** Перемонтировать NTFS-раздел Data через `/etc/fstab` с правильными опциями вместо `udisks2` авто-монтирования. - -Было (не работало): -```fstab -# записи не было — udisks2 монтировал автоматически с default_permissions -``` - -Стало (работает): -```fstab -UUID=01D99C23361E63D0 /run/media/bazzite/Data ntfs-3g uid=1000,gid=1000,fmask=113,dmask=002,noatime,exec 0 2 -``` - -**Почему:** ntfs-3g через udisks2 с `default_permissions` давал неправильные права для Proton/Wine эмуляции файлового ввода-вывода. Явные `uid=1000,gid=1000,fmask=113,dmask=002` исправили это. Также fstab-монтирование делает NTFS регистрозависимым — имена папок должны точно совпадать (`Downloads` vs `downloads`). - -### 2. `Cannot change directory to c:\Discworld Noir` - -**Симптом:** игра запускается в Steam, но падает до появления окна. - -**Причина:** сломанный symlink `C:\Discworld Noir` → `discworld_noir_nq/` в Proton prefix. Возникает при перемонтировании диска (путь меняется или symlink не резолвится после размонтирования). - -**Решение:** проверить и пересоздать symlink: -```bash -PFX=~/.steam/steam/steamapps/compatdata/2973247222/pfx/drive_c -rm "$PFX/Discworld Noir" -ln -sf /run/media/bazzite/Data/Games/discworld_noir_nq "$PFX/Discworld Noir" -``` -Обрати внимание на регистр — `Games` с большой буквы (как на NTFS при fstab-монтировании). - -### 3. Loma fix не работает под Proton - -**Симптом:** -- `tin3_dxd.exe` (Loma patched, 100864 байт) — спиннер Steam, игра не стартует -- `dn.exe` (Loma launcher) — запускается с кривой палитрой, падает на Continue - -**Решение:** откатить Loma fix, вернуть оригинальный `tin3_dxd.exe` (560160 байт). Бэкап оригинала: `tin3_dxd.exe.orig-backup` в папке игры. - -### 4. Dolomite (ddraw.dll) не чинит меню - -**Симптом:** `ddraw.dll` от nathan-baggs/dolomite v1.0.1 не влияет на работу меню Save/Load. - -**Вывод:** проблема с меню не в DirectDraw рендеринге, а в файловом вводе-выводе (см. п.1). diff --git a/family/how-to/htpc-system.md b/family/how-to/htpc-system.md index 480e2e47..7b142f14 100755 --- a/family/how-to/htpc-system.md +++ b/family/how-to/htpc-system.md @@ -281,18 +281,43 @@ XwaylandEisNoPrompt=true **PARTUUID:** `006fdb73-adc0-3620-239c-dd01e6b6df00` **Размер:** 5.5 TiB (2.9 TiB занято) -**Монтирование:** +### История монтирования + +#### ⚠️ Legacy: udisks2 (исходная конфигурация) - **Точка:** `/run/media/bazzite/Data` -- **Драйвер:** `ntfs-3g` через FUSE (`fuseblk`), **не** встроенный `ntfs3` -- **Метод:** автоматическое монтирование через `udisks2` (не fstab — записи в `/etc/fstab` нет) +- **Драйвер:** `ntfs-3g` через FUSE (`fuseblk`) +- **Метод:** автоматическое udisks2 (сессия пользователя) - **Опции:** `rw,nosuid,nodev,noatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096,uhelper=udisks2` +- **Проблема:** Steam Gaming Mode (gamescope) грузится до udisks2 → раздел не успевает смонтироваться → Steam Storage Manager не видит внешний диск + +#### Текущее: fstab +- **Точка:** `/run/media/bazzite/Data` +- **Драйвер:** `ntfs-3g` через FUSE (`fuseblk`) +- **Метод:** `/etc/fstab` — монтируется при старте systemd +- **Строка fstab:** `UUID=01D99C23361E63D0 /run/media/bazzite/Data ntfs-3g uid=1000,gid=1000,fmask=113,dmask=002,noatime,exec 0 2` +- **Проблема:** Steam на Bazzite ожидает разделы в `/run/media/system/` (системный udisks2 путь) или `/var/mnt/`. Steam Storage Manager не показывает раздел даже при корректном fstab-монтировании. См. [Bazzite issue #1027](https://github.com/ublue-os/bazzite/issues/1027) — известная проблема с `steam_exec_test.sh` на secondary drives. + +**Steam Library на Data:** +- Библиотека лежит в `/run/media/bazzite/Data/Steam/steamapps/` (не в корне точки монтирования!) +- 18 игр (appmanifest_*.acf) +- `libraryfolders.vdf` содержит запись `"1"` → `/run/media/bazzite/Data/Steam` +- `libraryfolder.vdf` (внутри Data/Steam) — есть, содержит `contentid` **Содержимое:** - `games/` — non-Steam игры и установки (Discworld Noir, discnoir, GTA V и др.) - `downloads/` — загрузки (ISO, торренты) +- `Steam/` — Steam библиотека Windows-наследия (18 игр) - `Windows/` — прошлая Windows-установка (read-only) -- Steam Library на этом разделе **отсутствует** — в `libraryfolders.vdf` зарегистрирована только дефолтная библиотека `~/.local/share/Steam` -**Важно:** NTFS-3G не поддерживает Windows ACLs и имеет ограниченную поддержку симлинков. Для Proton prefix'ов symlink'и в `drive_c/` могут работать некорректно. При появлении проблем — рассмотреть переход на `ntfs3` (встроенный драйвер ядра) или fstab-монтирование с `uid=1000,gid=1000,fmask=113,dmask=002`. +**Важно:** NTFS-3G не поддерживает Windows ACLs и имеет ограниченную поддержку симлинков. Для Proton prefix'ов symlink'и в `drive_c/` могут работать некорректно. При появлении проблем — рассмотреть переход на `ntfs3` (встроенный драйвер ядра). -**Steam Storage Manager** предлагает отформатировать этот раздел — это нормально, потому что на нём нет структуры Steam Library (`steamapps/`). Игнорировать. \ No newline at end of file +**Steam Storage Manager** предлагает отформатировать этот раздел — это нормально, потому что на нём нет структуры Steam Library в корне раздела (`steamapps/` в `/run/media/bazzite/Data/steamapps/`). + +### План исправления (pending) +Steam на Bazzite не видит раздел, примонтированный через fstab. Решение: +1. Перемонтировать через Gnome Disks (официальный способ Bazzite): + - Путь: `/run/media/system/Data` (системный udisks2 mount point) + - Опции: `user,exec` + - User Session Defaults = OFF, Mount at system startup = ON +2. Или настроить bind mount на `/var/mnt/Data` +3. Или форматировать в BTRFS с переносом данных \ No newline at end of file