aboutsummaryrefslogtreecommitdiff
path: root/libs/nak/src/game_finder
Commit message (Collapse)AuthorAgeFilesLines
* Remove NaK/Rust dependency, port remaining functionality to native C++SulfurNitride2026-04-087-1767/+0
| | | | | | | | | | | | | | | Replace NaK Rust crate and nak_ffi with native C++ implementations: - Game detection (Steam, Heroic, Bottles), VDF parser, icon extraction - Prefix symlinks, SLR manager, Steam path detection - Known games database Add FUSE VFS optimizations: zero-copy reads via fuse_reply_data, default_permissions mount option, FUSE_CAP_ASYNC_DIO, FUSE_CAP_EXPIRE_ONLY, lookup cache parent index, cached mode bits, increased I/O buffer sizes. Update build system, prefix setup, and various fixes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Search all Steam library folders for game compatdataSulfurNitride2026-03-281-18/+20
| | | | | | | | | | Steam can place a game's compatdata in a different library folder than the game itself (e.g. game on SD card, compatdata on internal storage). Previously we only looked in the same steamapps directory as the appmanifest, causing games to have no prefix_path and their Documents/My Games folders to not get symlinked during prefix setup. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Fix AppImage plugin loading, save timestamps, and INI corruptionSulfurNitride2026-02-203-20/+193
| | | | | | | | | | | | | | | | | | - Add AppConfig::pluginsPath()/dllsPath() that respect MO2_PLUGINS_DIR and MO2_DLLS_DIR env vars, fixing plugin discovery when plugins live inside read-only AppImage squashfs (#22, game plugin not found errors) - Preserve file modification times in save deploy/sync so games display correct save timestamps instead of all showing the same time (#17) - Replace QSettings INI reader in saves tab with direct line-by-line parser to avoid backslash-as-line-continuation corruption of sLocalSavePath=__MO_Saves\ (#22, saves tab showing wrong directory) - Add diagnostic logging to plugin symlink creation, save backup/restore operations to help diagnose silent failures through prefix symlinks - Fix Python SONAME mismatch in AppImage build (patch portable Python SONAME to match librunner.so DT_NEEDED, preventing dual libpython load) - Bundle PyQt6 Qt dependencies, improve RPATH for lib/ and plugins/ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* Add FUSE external mapping support, BG3/Oblivion Remastered fixes, fomod-plus ↵SulfurNitride2026-02-147-0/+1592
and NaK integration FUSE VFS now deploys non-data-dir mod mappings (Paks, OBSE, UE4SS, etc.) via real symlinks and injects file-level data-dir mappings (plugins.txt, loadorder.txt) into the VFS tree. Fixes game launches for Oblivion Remastered (Root Builder path resolution, script extender support) and BG3 (Wine prefix documents directory, file mapper symlinks on Linux). Vendors mo2-fomod-plus plugin and NaK crate for FOMOD installer and game finder/runtime support. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>