From d22d8c267b012729b6b84142def2a30ca4691d7a Mon Sep 17 00:00:00 2001 From: SulfurNitride Date: Fri, 20 Feb 2026 23:53:26 -0600 Subject: Fix AppImage plugin loading, save timestamps, and INI corruption - 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 --- libs/nak_ffi/src/lib.rs | 2 ++ 1 file changed, 2 insertions(+) (limited to 'libs/nak_ffi/src') diff --git a/libs/nak_ffi/src/lib.rs b/libs/nak_ffi/src/lib.rs index fe18cf3..65592fa 100644 --- a/libs/nak_ffi/src/lib.rs +++ b/libs/nak_ffi/src/lib.rs @@ -212,6 +212,7 @@ pub struct NakKnownGame { pub name: *const c_char, pub steam_app_id: *const c_char, pub gog_app_id: *const c_char, // null if none + pub epic_app_id: *const c_char, // null if none pub my_games_folder: *const c_char, pub appdata_local_folder: *const c_char, pub appdata_roaming_folder: *const c_char, @@ -236,6 +237,7 @@ static KNOWN_GAMES_FFI: std::sync::LazyLock = std::sync::LazyLock name: leak_str(kg.name), steam_app_id: leak_str(kg.steam_app_id), gog_app_id: leak_str_opt(kg.gog_app_id), + epic_app_id: leak_str_opt(kg.epic_app_id), my_games_folder: leak_str_opt(kg.my_games_folder), appdata_local_folder: leak_str_opt(kg.appdata_local_folder), appdata_roaming_folder: leak_str_opt(kg.appdata_roaming_folder), -- cgit v1.3.1